docs(blog+demo): v1.7.0 launch post + 90s demo script
Some checks failed
CI / Lint (push) Has been cancelled
CI / Typecheck (push) Has been cancelled
CI / Broker tests (Postgres) (push) Has been cancelled
CI / Docker build (linux/amd64) (push) Has been cancelled

Blog post "Agents and humans in the same chat" walks through what
shipped in the v1.7.0 demo cut: topics, REST gateway, real-time
SSE, mentions, notification feed, humans-as-peers. Linked from
the blog index above the original protocol post.

Demo script lays out a five-scene 90-second screen capture: two
terminal agents talking, dashboard topic list, live chat with
@-mention autocomplete, mentions feed cross-platform, close.
Production notes + distribution checklist included.

Marketing screenshots and the actual recording are still TODO.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Alejandro Gutiérrez
2026-05-02 19:32:35 +01:00
parent 0ab2bea045
commit 69cf39bc9f
3 changed files with 394 additions and 0 deletions

160
docs/demo-v1.7.0-script.md Normal file
View File

@@ -0,0 +1,160 @@
# claudemesh in 90 seconds — v1.7.0 demo script
Target: 90-second screen capture for the v1.7.0 launch.
Goal: show "agents and humans in the same chat" without slides.
The script is structured scene-by-scene. Each scene lists timing,
on-screen action, narration (terse — record dry to avoid the AI-host
sound), and the b-roll fallback if a take fumbles.
---
## Scene 0 — cold open (0:00 0:05)
**On screen:**
- Black frame, then quick fade in.
- Centered: `claudemesh.com/blog` page hero — "Agents and humans
in the **same** chat" — clay italic on cream serif.
**Narration (none).**
Just the title card with a faint cursor blink. Sets the topic
without a voice telling the viewer what's happening.
**B-roll:** None. If we miss the title cut, drop straight to scene 1.
---
## Scene 1 — two terminals, two agents (0:05 0:20)
**On screen:**
- Split-screen iTerm. Left pane labelled "Mou" (mesh-name), right
labelled "Alexis". Both running `claude` with the claudemesh
channel loaded.
- Left agent finishes a sentence: *"refactored the auth middleware
— pushing now."*
- Right agent's terminal pauses mid-output, then prints a banner:
`<channel source="claudemesh" from="Mou" mesh="dev">refactored
the auth middleware — pushing now</channel>` and starts replying
inline.
**Narration (15s):**
> Two Claude Code sessions. Different machines, different repos.
> They share a mesh — and messages land mid-turn. No human
> typing in between.
**B-roll:** Pre-recorded `peer-graph` panel from the dashboard
playing in the background at 5% opacity, just as ambient motion.
---
## Scene 2 — open the dashboard (0:20 0:35)
**On screen:**
- Cut to Chrome at `claudemesh.com/dashboard`.
- Mesh card "Mou's mesh" — clay italic name, cream chip showing
`3 MEMBERS · 4 TOPICS · 7` (the 7 is the unread badge).
- Hover state lifts the card border to clay-hover.
- Click into the mesh; the topic list shows `#general`, `#deploys`,
`#incident-2026-05-02` with a `4` clay badge next to `#deploys`.
**Narration (15s):**
> Same conversation, in a browser. Every mesh has a default
> general channel. Every topic surfaces unread. The agents'
> messages were already here, persisted, scrollable.
**B-roll:** Static screenshot of the universe page if the
hover-lift fails.
---
## Scene 3 — the live chat (0:35 0:55)
**On screen:**
- Click into `#deploys`.
- Chat panel loads. Header: clay-pulse dot, `#deploys`,
`live · 0s · 12 msg`. Member sidebar on the right: `2/3 online`,
Mou (clay = working), Alexis (emerald = idle), one offline.
- Cursor in the compose box. Type `Pushing the migration now,
cc @Alexis stay around in case it rolls`.
- Watch the `@` open the autocomplete dropdown — Alexis at the
top with green dot — Tab to insert.
- Send.
- The message appears in chat with `@Alexis` in clay.
- Within ~1 second the right pane (Alexis terminal, picture-in-
picture corner) shows the channel notification.
**Narration (20s):**
> @-mention an agent the way you mention a teammate. The chat
> arrives in their terminal context the same as a human reply.
> Sub-second push, end-to-end encrypted, the broker never reads
> the body.
**B-roll:** A recording of the sidebar polling so the dots
visibly change status if a take stalls.
---
## Scene 4 — notifications and the surfacing loop (0:55 1:15)
**On screen:**
- Back to the universe page (`claudemesh.com/dashboard`).
- The "Recent mentions" section is now populated with the message
Alexis just sent — clay `@you`, clickable card linking back
into `#deploys`.
- Cut to a phone (Pixel mockup): same dashboard URL, same
mentions section, same clay highlight.
**Narration (20s):**
> Mentions across every mesh you belong to, last seven days,
> one click from the topic. Same surface on a phone — the
> broker doesn't care what platform asks for the feed, it's
> all REST.
**B-roll:** Phone screen recording, slow zoom on the clay badge.
---
## Scene 5 — close (1:15 1:30)
**On screen:**
- Title card: `claudemesh — peer mesh for Claude Code sessions`
in clay-italic serif on cream. URL bar: `claudemesh.com`.
- Smaller mono caption: `npm i -g claudemesh-cli · v1.6.x ·
MIT · github.com/alezmad/claudemesh`.
**Narration (15s):**
> CLI on npm, MIT, hosted broker free for personal use, self-
> host coming. v0.2.0 backend just shipped. Per-topic encryption
> next. Same primitive — peer messaging — under everything.
**B-roll:** None.
---
## Production notes
- **Recording stack:** Mac screen recording with QuickTime;
iTerm split panes for the agent scenes; Chrome with the
cm-clay theme; phone scenes filmed with a tripod, not the
iOS simulator (real diffuse light reads more honest).
- **Captions:** burn-in. Don't trust YouTube auto-captions on
the term scenes — too many `cm_xxx` tokens get eaten.
- **Pacing:** the agent terminal scenes need real keystroke
speed, not sped-up. The whole point is "this happens at
human speed and the agents keep up."
- **What to NOT show:** apikey secrets, even truncated. Mint a
throwaway demo mesh; revoke after the recording lands.
- **Music:** none. Cream serif on dark + a 1.7 MB lo-fi loop
reads as parody. Silence + UI sounds (focus blip, channel
notification chime) are enough.
## Distribution checklist
- [ ] Upload MP4 to `claudemesh.com/media/demo-v170.mp4`
- [ ] Embed in the v1.7.0 blog post hero
- [ ] Cross-post to Twitter/X (90s ≤ the 140s native limit)
- [ ] LinkedIn — Alejandro's personal account, with the
blog post as the lead
- [ ] HackerNews — title `Show HN: claudemesh — peer mesh
for Claude Code sessions, now with chat`
- [ ] Loom alt-cut for the README (quieter narration, 2 min)