README.md markdown
166 lines 7.6 KB
Raw
sha256:cb114a4ce48bc4c9f865774769ec9b6a3bb7ccb6a6f8792bbf5ae6f28b0a6f88 Add Episode 17 script (The Wire Protocol) and wire demo driver Sonnet 5 patch 2 hours ago

Build With Muse

A video series on Subnet Show about Muse — domain-agnostic version control — and MuseHub, its remote.

Premise: Git occupies one point in a much larger design space. Version control isn't fundamentally about files — it's about state changing through time. Muse generalizes the parts of Git that are actually timeless (content addressing, a commit DAG, branches, merges) and replaces the parts that were only ever about text (diff, merge, "what changed") with a pluggable domain model. Six methods teach Muse an arbitrary state space — code, MIDI, identity graphs, anything.

The series is not a product launch. It's an engineer showing another engineer something he built, episode by episode, receipt by receipt — actual CLI, actual source, actual structured diffs, actual MuseHub, actual merge behavior. See Production Philosophy below.


Season 1

Ep Video The question it answers
00 What Is Muse? Why does domain-agnostic version control need to exist?
01 Muse in 7 Minutes Can I see the whole thing actually work?
02 Inside a Muse Repository What actually exists inside .muse/?
03 Everything Is Content-Addressed Why SHA-256 objects, snapshots, and a commit DAG?
04 Identity Without Passwords How do Ed25519, MSign, and agent identity work?
05 The Six-Method Protocol How can six methods teach Muse an arbitrary state space?
06 Build a Domain Let's actually implement a tiny domain plugin.
07 Semantic Diff What does a diff mean when Muse understands the domain?
08 The Merge Engine How does Muse merge structured state?
09 Harmony What happens when a merge isn't trivial?
10 Muse Understands Code Symbols, blast radius, gravity, hotspots, coupling, etc.
11 Muse Understands Music Version-control MIDI as music rather than opaque binary data.
12 CRDT Primitives What makes concurrent structured state converge?
13 Agents Are First-Class Citizens What changes when software authors are agents?
14 Agent Coordination Claims, queues, sharding, reservations, and forecasting.
15 Shelves How does an agent checkpoint and hand work to another agent?
16 Muse + MCP How does an LLM actually interact with Muse?
17 The Wire Protocol What goes over the network during push/fetch?
18 MuseHub API How do I build something on top of MuseHub?
19 Identity Profiles Humans, agents, attestations, and genealogy.
20 Mist How do content-addressed artifacts become shareable objects?
21 Security Model What assumptions does Muse make, and what does it defend?
22 Build Something Weird With Muse Prove "∞ domains" isn't marketing copy.

This outline is tentative — episode order and scope may shift as earlier episodes reveal what later ones actually need to cover. Update this table as episodes are added, merged, split, or reordered; treat it as the current plan, not a locked contract.

Arc

Roughly four movements, though the boundaries are soft:

  • 00–04 — Foundations. Why Muse exists, what it feels like to use, and the primitives (objects, snapshots, commits, identity) everything else is built from.
  • 05–12 — The domain model. The six-method protocol that makes "∞ domains" a real mechanism rather than a slogan, then two proof points (code, music) plus the merge/CRDT machinery underneath.
  • 13–19 — Agents and the network. What changes when the primary author is an agent, not a human, and how Muse/MuseHub actually talk over a wire.
  • 20–22 — Surface area and payoff. Sharing, security, and a capstone that's supposed to make "you could version that?" land for real.

Repo Structure

Each episode gets its own directory once work on it starts:

build-with-muse/
├── README.md                                 ← this file
└── episode-NN/
    ├── muse-episode-NN-<slug>.md              ← script (see below)
    ├── make-<topic>-episodeNN-demo.sh         ← one or more demo scripts (note: no dash before NN)
    ├── <topic>-episodeNN/                     ← throwaway repo the demo script builds
    └── episode-NN-<slug>.mov                  ← final recorded video, once shot

(Matching episode-00's actual files: muse-episode-00-what-is-muse.md, make-muse-midi-episode00-demo.sh, muse-midi-episode00/, episode-00-what-is-muse.mov.)

Demo directories (<topic>-episodeNN/) are generated fresh by their make-*-demo.sh script every time — they're disposable scratch repos for recording, not hand-maintained content. Re-run the script rather than editing them directly; if a demo needs to change, change the script.

An episode can have more than one demo script if it needs more than one throwaway repo to make its point (episode-00's directory currently has demos for both a Muse/Git comparison and a content-addressing walkthrough, predating this season structure — expect some early cleanup as the season list above solidifies).

Script format

Scripts are timestamped shot lists, not prose essays — see episode-00/muse-episode-00-what-is-muse.md for the reference shape:

  • A working title, a thumbnail thought, and a target runtime up top.
  • Timestamped section headers (## [0:00–0:25] COLD OPEN) breaking the episode into beats.
  • Camera/beat direction in bracketed stage directions ([CAMERA], [beat], [TITLE CARD]) interleaved with GABRIEL: dialogue.
  • A production-notes section at the end (visual language, pacing, what the episode is trying to leave the viewer asking next).

Production Philosophy

Carried over from Episode 00's own production notes — these apply to the whole season, not just that episode:

  • Show real Muse constantly. The claims are audacious; every 30–60 seconds, back one up with something real — actual CLI output, actual source, actual structured diffs, actual MuseHub, actual merge behavior. The viewer should gradually realize: he actually built this.
  • Muse is not "a Git replacement." That framing is too small. Git is a familiar coordinate system for explaining the problem; the thesis is that Git occupies one point in a much larger design space.
  • Don't overproduce. Gabriel's face and voice, terminal captures, source code, Muse's existing visual language, a few purpose-built diagrams, and strong editing are enough. The feeling should be an engineer who discovered something he desperately wants to show another engineer — not a SaaS launch commercial.
  • Plant the seed, don't rush it. Every episode should leave the viewer asking a sharper question than the one they came in with. Episode 00's version: they arrive asking "What is Muse?" and should leave asking "Wait... what could I build with Muse?"

Status

Ep Script Demo(s) Recorded
00
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18–22

Update this table as episodes move through the pipeline. "Recorded" means a final .mov exists in the episode's directory, not just that a take was shot.

File History 8 commits
sha256:cb114a4ce48bc4c9f865774769ec9b6a3bb7ccb6a6f8792bbf5ae6f28b0a6f88 Add Episode 17 script (The Wire Protocol) and wire demo driver Sonnet 5 patch 2 hours ago
sha256:e1ceec85262dce5ebb3d317013964d640c04718f0757da58dd391c80ff1c6a93 Move Episode 16 script into place Sonnet 5 2 hours ago
sha256:197231ce41a2ad2f9228a5b0db1890d6539f72ee5c04e8803723ef8be1796ddb Move Episode 15 script into place Sonnet 5 2 hours ago
sha256:1914f63bd8eaff9cce725ad03a47af9a669b75bb0830b28597171475450df85e Move Episode 14 script into place Sonnet 5 3 hours ago
sha256:84ccdd881ba3ff1bdb272a59060db6d315e2a4cf2ae9a1fb34744f66d0a38534 Move Episode 13 script into place Sonnet 5 3 hours ago
sha256:b8284b9cc64d7c4b05eefabf364c68e052bd1a9cb6f9ce71d78bd7e5983b8e09 Move Episode 12 script into place at crdt-primitives.md Sonnet 5 3 hours ago
sha256:9b02439fb79adde6039e49901dda4747995a261a3314890c391aed0012e6fa6e Move Episode 11 script into place at muse-understands-music.md Sonnet 5 3 hours ago
sha256:9d1ea45a2011a260f572de8a1f3ba0a5da60dcd766fe2bdf42c83741ee7e7a37 Add placeholder script files for episodes 03-21 Sonnet 5 patch 5 hours ago