Agent Skills: bmorphism Video Archive Interleave

bmorphism Video Archive Interleave

UncategorizedID: plurigrid/asi/bmorphism-video-interleave

Install this agent skill to your local

pnpm dlx add-skill https://github.com/plurigrid/asi/tree/HEAD/skills/bmorphism-video-interleave

Skill Files

Browse the full folder contents for bmorphism-video-interleave.

Download Skill

Loading file tree…

skills/bmorphism-video-interleave/SKILL.md

Skill Metadata

Name
bmorphism-video-interleave
Description
'bmorphism Video Archive Interleave'

bmorphism Video Archive Interleave

Chromatic interleaving of bmorphism talk transcripts with skill corpus via GF(3)-conserved segment retrieval.

Archive Summary

| Video | Duration | Segments | Trit | Hue | |-------|----------|----------|------|-----| | AGI House Math Night | 65.9 min | 1,306 | ERGODIC (0) | 120° | | AI Agents on Aptos | 16.5 min | 154 | PLUS (+1) | 30° | | Plurigrid Energy | 72.2 min | 1,300 | MINUS (-1) | 240° | | TOTAL | 154.6 min | 2,760 | Σ = 0 ✓ | |

Database Schema (ACSet)

-- ~/bmorphism_talks.duckdb
videos(id, title, duration_seconds, youtube_url)
transcripts(id, video_id, segment_start, segment_end, text, confidence)
topics(id, name, color_hue)
video_topics(video_id, topic_id, trit)  -- GF(3) typed

Interleave Patterns

1. Skill-to-Transcript Bridge

Query transcripts relevant to a skill:

-- Find segments mentioning category theory concepts
SELECT v.title, t.segment_start, t.text
FROM transcripts t
JOIN videos v ON t.video_id = v.id
WHERE t.text ILIKE '%functor%'
   OR t.text ILIKE '%category%'
   OR t.text ILIKE '%morphism%'
ORDER BY t.segment_start;

2. GF(3) Conserved Retrieval

Retrieve balanced triads of segments:

;; Babashka query for balanced retrieval
(require '[babashka.pods :as pods])
(pods/load-pod 'org.babashka/go-sqlite3 "0.1.0")
(require '[pod.babashka.go-sqlite3 :as sqlite])

(defn balanced-segments [db topic]
  (let [minus (sqlite/query db
                "SELECT text FROM transcripts t
                 JOIN video_topics vt ON t.video_id = vt.video_id
                 WHERE vt.trit = -1 LIMIT 3")
        ergodic (sqlite/query db
                  "SELECT text FROM transcripts t
                   JOIN video_topics vt ON t.video_id = vt.video_id
                   WHERE vt.trit = 0 LIMIT 3")
        plus (sqlite/query db
               "SELECT text FROM transcripts t
                JOIN video_topics vt ON t.video_id = vt.video_id
                WHERE vt.trit = 1 LIMIT 3")]
    {:minus minus :ergodic ergodic :plus plus
     :conserved? (= 0 (mod (+ (count minus) (- (count plus))) 3))}))

3. Temporal Chromatic Walk

Walk through video segments by timestamp, coloring by Gay.jl hue:

(defn chromatic-walk [db video-id]
  (let [segments (sqlite/query db
                   "SELECT segment_start, text FROM transcripts
                    WHERE video_id = ? ORDER BY segment_start"
                   [video-id])]
    (map-indexed
      (fn [i seg]
        (let [hue (mod (* i 7) 360)]  ; Prime stride for coverage
          (assoc seg
            :hue hue
            :trit (cond (or (< hue 60) (>= hue 300)) :plus
                       (< hue 180) :ergodic
                       :else :minus))))
      segments)))

Topic Mapping

| Topic | Hue | Primary Video | Skills | |-------|-----|---------------|--------| | Category Theory | 240° | AGI House | acsets, algebraic-rewriting | | Blockchain/Aptos | 30° | AI Agents | aptos-agent, aptos-gf3-society | | Energy Systems | 120° | Plurigrid | anoma-intents, crdt | | Active Inference | 180° | AGI House | cognitive-superposition | | Compositional | 300° | All | bisimulation-game |

Commands

# Query specific topic
duckdb ~/bmorphism_talks.duckdb \
  "SELECT text FROM transcripts WHERE text ILIKE '%active inference%'"

# Get segment at timestamp
duckdb ~/bmorphism_talks.duckdb \
  "SELECT text FROM transcripts
   WHERE video_id = 1 AND segment_start BETWEEN 300 AND 360"

# Export for skill training
duckdb ~/bmorphism_talks.duckdb \
  "COPY (SELECT text FROM transcripts) TO 'corpus.txt'"

Integration with Skill Corpus

Semantic Bridge Queries

-- Find skills mentioned in transcripts
WITH skill_mentions AS (
  SELECT t.text, s.name as skill
  FROM transcripts t
  CROSS JOIN skills s  -- from skill_relations.duckdb
  WHERE t.text ILIKE '%' || s.name || '%'
)
SELECT skill, COUNT(*) as mentions
FROM skill_mentions
GROUP BY skill
ORDER BY mentions DESC;

Cross-Database Join (DuckDB)

ATTACH 'skill_relations.duckdb' AS skills_db;
ATTACH 'bmorphism_talks.duckdb' AS talks_db;

SELECT s.name, s.trit, COUNT(t.id) as segment_mentions
FROM skills_db.skills s
JOIN talks_db.transcripts t
  ON t.text ILIKE '%' || s.name || '%'
GROUP BY s.name, s.trit
ORDER BY segment_mentions DESC;

GF(3) Conservation Invariant

The archive maintains GF(3) balance:

AGI House (0) + AI Agents (+1) + Plurigrid (-1) = 0 ✓

When retrieving segments, always pull from all three videos proportionally to maintain conservation.

Cat# Integration

Trit: 0 (ERGODIC) - coordination role
Home: Prof (profunctor category)
Poly Op: ⊗ (tensor)
Kan Role: Adj (adjunction)
Color: #36E26C (hue 139°)

Triadic Composition

video-interleave (0) ⊗ chromatic-walk (+1) ⊗ sheaf-cohomology (-1) = 0 ✓

Files

  • ~/bmorphism_videos/ - 3 MP3s + 3 JSON transcripts
  • ~/bmorphism_talks.duckdb - ACSet database
  • ~/transcribe_videos.bb - Babashka transcription script