I asked Claude to build a fake tax app and demo it to me. Here's what happened:

Claims, Not Proof

When an agent finishes a task, it tells you it's done. You get a PR description, maybe some comments, a "I've completed the implementation" message.

So now you have to verify it. You read through the diff, trace the logic, mentally run through the user flow. Or you ask follow-up questions and now you're doing the work of proving it actually works.

The agent did the coding. You're doing the QA. And if the feature has a UI, you're probably also clicking through it yourself to make sure it feels right.

What if the agent showed you what it built, instead of just describing it?

Close the Loop

So I started asking for that. For UI features, I have the agent use the interface while explaining what it's doing. That way I hear what the agent thought I wanted. If it misunderstood my description, I know immediately because it'll narrate the wrong thing. The demo becomes a closed loop: the agent proves it understood, and code review becomes about quality, not functionality or intent.

Claude Code is already good at writing Playwright tests, so I built a TypeScript DSL on top of Playwright that synchronizes narration with browser actions. It's available as an npm package called demos-not-memos:

const demo = new NarratedDemo({
  baseUrl: 'https://example.com',
  voice: 'Rachel',
  output: './output/demo.mp4'
});

await demo.start();
await demo.narrate("This is a simple demo.");
await demo.page.locator('h1').scrollIntoViewIfNeeded();
await demo.narrate("The demo is now complete.");
await demo.finish();

I've packaged this into a Claude Code skill called narrated-demo. The tax app above was created with it.


Try It Yourself

The narrated-demo skill is available as a Claude Code plugin. Install it, point it at a feature, and ask Claude to demo it to you.

This is the first clean version of something I've been wrestling with for a while. Once I reframed it as "demo yourself as the output," Claude one-shot a working prototype, and I've been refining it since. Let me know what you build, or how to improve it.