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. It 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 and their agent extracts the script, then recreates or forks the demo against their own product. View-source, for videos.
ffmpeg -i demo.mp4 -f ffmetadata - | grep voila-recipe
A full tour of this site, recorded by voila itself. It narrates in English, then switches to Spanish and French partway through. Sound on.
And here is a real product, 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.
Six languages from one 80MB model, running on your own machine. Set the voice per step and a single demo can switch language mid-sentence. No cloud, no keys, no per-platform tricks.
The model ships 54 voices, but its JavaScript port could only pronounce English: the bundled phonemizer had English data only. voila adds espeak-ng compiled to WebAssembly, so the other languages get real pronunciation on Linux, macOS and Windows alike.
Japanese and Mandarin voices exist too, but espeak mispronounces them, so voila refuses rather than shipping you a bad take. Plug in any engine with --tts-cmd for those.
One recording, four languages. 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."