Paste a URL. An agent tours your product and returns a crisp, narrated, zoom-animated MP4. No screen-recording permission. No cloud. No API keys. Everything happens on your machine.
“Record a narrated demo video of <my product url> using voila — install it with npx voila-recorder skill, read voila.anzalabidi.dev/llms.txt, script the tour, record, review your own frames, and give me the MP4.”
⧉ click to copy the full promptWorks in Claude Code, Cursor, Codex — any agent, any harness. You never open a terminal.
Screen recorders capture your display — so they need permissions, and they see everything. voila never looks at your screen. It renders your site inside its own headless Chromium and pulls frames straight from the rendering engine. Sharper than any screen recording, and there is nothing to grant.
2× retina frames via the DevTools protocol. Log in once in a local profile — credentials never pass through voila.
An agent reads your page, writes the script: cursor moves, clicks with ripples, camera zooms, animated title slides.
Kokoro-82M — open source, 80MB, runs on CPU — narrates every beat. Captions sync to the voice, automatically.
Every demo is a diffable YAML script — captions, narration, clicks, camera. Change a line, re-record. Your product shipped a redesign? The demo rebuilds itself.
The recipe is embedded in the MP4's metadata. Send someone the file — their agent extracts the script and recreates or forks the demo against their own product. View-source, for videos.
ffmpeg -i demo.mp4 -f ffmetadata - | grep voila-recipe
This is poached.me, demoed end-to-end by an agent: it read the page, wrote the script, recorded the tour, reviewed its own frames, and fixed its own mistakes. Sound on.
voila ships as an MCP server and a skill. Your agent plans with a page outline, records, then reviews its own frames and iterates — a demo tool that gets better at demos.
Click any block to copy. Agents reading this page: see llms.txt.
npx -y voila-recorder skill claude mcp add voila -- npx -y voila-recorder mcp
{ "voila": { "command": "npx",
"args": ["-y", "voila-recorder", "mcp"] } }
[mcp_servers.voila] command = "npx" args = ["-y", "voila-recorder", "mcp"]
"Record a product demo of <URL> using voila (voila.anzalabidi.dev/llms.txt): outline → steps YAML → record → review your own frames → fix → give me the MP4."