{"slug":"video-factory","title":"Video Factory — Unified Video Pipeline","tags":["video-factory","fish-audio","playwright","agent-video"],"agent_summary":"5-mode video factory: page explainer (agent-video), video narrator (AI-auto-narrator), tool demo (demo-recorder), recall (screenpipe), and polish (screenarc).","trigger_phrases":["video factory","explain a webpage video","narrate a video automatically","tool demo recorder","fish audio voice clone","agent video tool","screen recorder playwright","video production modes"],"runnable":true,"markdown":"\n# Video Factory — Unified Video Pipeline\n\nModes for different video production scenarios.\n\n## Mode 1: Page Explainer (/video-factory explain <URL>)\nTool: agent-video (Fish Audio + no Mux)\nPath: D:/ClaudeDev/00_GITHUB/_working-on/Tools/agent-video/\nWhat: Give it a URL + persona -> Claude reads page -> Fish Audio narrates -> Playwright records synced scroll -> FFmpeg -> MP4\n\nRun:\n```bash\ncd D:/ClaudeDev/00_GITHUB/_working-on/Tools/agent-video\nnode mcp-server/index.js\n```\n\nOr use as MCP server:\n```bash\nclaude mcp add agent-video --transport stdio -- node D:/ClaudeDev/00_GITHUB/_working-on/Tools/agent-video/mcp-server/index.js\n```\n\n## Mode 2: Video Narrator (/video-factory narrate <video-path>)\nTool: AI-auto-narrator (Claude vision + Fish Audio)\nPath: D:/ClaudeDev/00_GITHUB/_working-on/Tools/AI-auto-narrator/\nWhat: Feed ANY video -> extract frames -> Claude analyzes -> Fish Audio narrates -> MoviePy merges -> MP4\n\nRun:\n```bash\ncd D:/ClaudeDev/00_GITHUB/_working-on/Tools/AI-auto-narrator\npip install -r requirements.txt\npython app.py\n```\nOpens Gradio UI at http://localhost:7860 (login: admin / admin)\n\n## Mode 3: Tool Demo (/video-factory demo <script.js>)\nTool: demo-recorder (Playwright + Fish Audio)\nPath: D:/ClaudeDev/00_GITHUB/_working-on/Tools/demo-recorder/\nWhat: Write a script of steps -> Playwright drives browser -> records video -> Fish Audio narrates -> FFmpeg merges -> MP4\n\nScript format:\n```javascript\nexport default {\n  title: \"My Demo\",\n  url: \"https://example.com\",\n  steps: [\n    { narration: \"What to say\", action: async (page) => { /* Playwright actions */ } },\n    { narration: \"Next step\", highlight: \"#button\", action: async (page) => { await page.click('#button'); } },\n  ]\n};\n```\n\n## Mode 4: Recall (/video-factory recall <query>)\nTool: screenpipe\nWhat: Always running -> \"what did I do at 3pm?\" -> AI searches OCR + audio -> returns answer\nRequires screenpipe app running in background.\nMCP: `claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcp`\n\n## Mode 5: Polish (/video-factory polish)\nTool: screenarc\nPath: D:/ClaudeDev/00_GITHUB/_working-on/Tools/screenarc/\nWhat: Takes raw recordings -> adds cinematic zoom on clicks, cursor tracking\nNote: GUI-only, no CLI automation yet\n\n## Shared Fish Audio Config\n\nAll tools use:\n- API Key: FISH_AUDIO_API_KEY in each tool's .env\n- Voice Ref: 3782f7b36e5d411fb9d70d1809b134a0 (Mike's voice clone)\n- Speed: 0.9 (slightly slower for clarity)\n- Bitrate: 192kbps MP3\n\nDependencies: FFmpeg + ffprobe (in PATH), Node.js 18+, Python 3.10+, Playwright (npx playwright install chromium), agent-browser CLI (for agent-video MCP mode)\n","html":"<h1>Video Factory — Unified Video Pipeline</h1>\n<p>Modes for different video production scenarios.</p>\n<h2>Mode 1: Page Explainer (/video-factory explain <URL>)</h2>\n<p>Tool: agent-video (Fish Audio + no Mux)\nPath: D:/ClaudeDev/00_GITHUB/_working-on/Tools/agent-video/\nWhat: Give it a URL + persona -> Claude reads page -> Fish Audio narrates -> Playwright records synced scroll -> FFmpeg -> MP4</p>\n<p>Run:</p>\n<pre><code class=\"language-bash\">cd D:/ClaudeDev/00_GITHUB/_working-on/Tools/agent-video\nnode mcp-server/index.js\n</code></pre>\n<p>Or use as MCP server:</p>\n<pre><code class=\"language-bash\">claude mcp add agent-video --transport stdio -- node D:/ClaudeDev/00_GITHUB/_working-on/Tools/agent-video/mcp-server/index.js\n</code></pre>\n<h2>Mode 2: Video Narrator (/video-factory narrate <video-path>)</h2>\n<p>Tool: AI-auto-narrator (Claude vision + Fish Audio)\nPath: D:/ClaudeDev/00_GITHUB/_working-on/Tools/AI-auto-narrator/\nWhat: Feed ANY video -> extract frames -> Claude analyzes -> Fish Audio narrates -> MoviePy merges -> MP4</p>\n<p>Run:</p>\n<pre><code class=\"language-bash\">cd D:/ClaudeDev/00_GITHUB/_working-on/Tools/AI-auto-narrator\npip install -r requirements.txt\npython app.py\n</code></pre>\n<p>Opens Gradio UI at http://localhost:7860 (login: admin / admin)</p>\n<h2>Mode 3: Tool Demo (/video-factory demo &#x3C;script.js>)</h2>\n<p>Tool: demo-recorder (Playwright + Fish Audio)\nPath: D:/ClaudeDev/00_GITHUB/_working-on/Tools/demo-recorder/\nWhat: Write a script of steps -> Playwright drives browser -> records video -> Fish Audio narrates -> FFmpeg merges -> MP4</p>\n<p>Script format:</p>\n<pre><code class=\"language-javascript\">export default {\n  title: \"My Demo\",\n  url: \"https://example.com\",\n  steps: [\n    { narration: \"What to say\", action: async (page) => { /* Playwright actions */ } },\n    { narration: \"Next step\", highlight: \"#button\", action: async (page) => { await page.click('#button'); } },\n  ]\n};\n</code></pre>\n<h2>Mode 4: Recall (/video-factory recall <query>)</h2>\n<p>Tool: screenpipe\nWhat: Always running -> \"what did I do at 3pm?\" -> AI searches OCR + audio -> returns answer\nRequires screenpipe app running in background.\nMCP: <code>claude mcp add screenpipe --transport stdio --scope user -- npx -y screenpipe-mcp</code></p>\n<h2>Mode 5: Polish (/video-factory polish)</h2>\n<p>Tool: screenarc\nPath: D:/ClaudeDev/00_GITHUB/_working-on/Tools/screenarc/\nWhat: Takes raw recordings -> adds cinematic zoom on clicks, cursor tracking\nNote: GUI-only, no CLI automation yet</p>\n<h2>Shared Fish Audio Config</h2>\n<p>All tools use:</p>\n<ul>\n<li>API Key: FISH_AUDIO_API_KEY in each tool's .env</li>\n<li>Voice Ref: 3782f7b36e5d411fb9d70d1809b134a0 (Mike's voice clone)</li>\n<li>Speed: 0.9 (slightly slower for clarity)</li>\n<li>Bitrate: 192kbps MP3</li>\n</ul>\n<p>Dependencies: FFmpeg + ffprobe (in PATH), Node.js 18+, Python 3.10+, Playwright (npx playwright install chromium), agent-browser CLI (for agent-video MCP mode)</p>\n"}