--- name: demo-producer license: MIT compatibility: "Claude Code 2.1.148+." description: "Universal demo video creator for skills, agents, plugins, tutorials, CLI commands, and code walkthroughs. Generates scripts, storyboards, VHS terminal recordings, and Remotion video compositions with task-tracked production phases. Use when producing video showcases, marketing content, or terminal recordings." argument-hint: "[topic-or-feature]" user-invocable: false allowed-tools: [AskUserQuestion, Bash, Read, Write, Edit, Grep, Glob, Task, TaskCreate, TaskUpdate, PushNotification] context: inherit version: 1.1.0 author: OrchestKit tags: [demo, video, marketing, vhs, remotion, terminal, showcase, tutorial] targets: - tool: "vhs" version: ">=0.11.0" - library: "remotion" version: ">=4.0.448" complexity: low persuasion-type: collaborative effort: low model: haiku metadata: category: document-asset-creation --- # Demo Producer Universal demo video creation for any content type. > **Tool versions (2026-Q2):** VHS >= 0.11, Remotion >= 4.0.448. VHS 0.11 added: > > - **`Wait` keyword** — supersedes `Sleep N` with a condition-based wait (`Wait "prompt>"` blocks until the given string appears). Use `Wait` over `Sleep` for any prompt that can appear at variable times. > - **`ScrollUp N` / `ScrollDown N`** — explicit scroll steps inside a recorded session; useful for demonstrating TUI apps and long `less`-style output. > > Keep existing `Sleep N` only for fixed visual pacing where no event is available. ## Quick Start ```bash /ork:demo-producer # Interactive mode - asks what to create /ork:demo-producer skill explore # Create demo for a skill /ork:demo-producer plugin ork # Create demo for a plugin /ork:demo-producer tutorial "Building a REST API" # Custom tutorial /ork:demo-producer --live 4 # Live preview via /ork:dev --live (4-hour public funnel) ``` ## --live mode (M127 #1565) `--live N` is a thin wrapper around `/ork:dev --live N`: it boots the dev stack behind `portless --funnel` (publicly exposed via Tailscale Funnel), records an expiry of `N` hours into `.claude/state/live-demos.jsonl`, and prints a public URL plus `