{"id":34502858,"url":"https://github.com/digitalsamba/claude-code-video-toolkit","last_synced_at":"2026-04-12T11:39:35.093Z","repository":{"id":328025928,"uuid":"1113327297","full_name":"digitalsamba/claude-code-video-toolkit","owner":"digitalsamba","description":"AI-native video production toolkit for Claude Code","archived":false,"fork":false,"pushed_at":"2026-04-09T12:12:53.000Z","size":10753,"stargazers_count":772,"open_issues_count":1,"forks_count":118,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-04-12T11:38:39.962Z","etag":null,"topics":["ai-video-generator","claude-code","developer-tools","elevenlabs","open-source","openclaw","playwright","programmatic-video","qwen-tts","remotion","text-to-speech","video-editing","video-production"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/digitalsamba.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-12-09T20:33:03.000Z","updated_at":"2026-04-12T11:34:34.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/digitalsamba/claude-code-video-toolkit","commit_stats":null,"previous_names":["digitalsamba/claude-code-video-toolkit"],"tags_count":21,"template":false,"template_full_name":null,"purl":"pkg:github/digitalsamba/claude-code-video-toolkit","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitalsamba%2Fclaude-code-video-toolkit","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitalsamba%2Fclaude-code-video-toolkit/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitalsamba%2Fclaude-code-video-toolkit/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitalsamba%2Fclaude-code-video-toolkit/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/digitalsamba","download_url":"https://codeload.github.com/digitalsamba/claude-code-video-toolkit/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/digitalsamba%2Fclaude-code-video-toolkit/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31713876,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-12T06:22:27.080Z","status":"ssl_error","status_checked_at":"2026-04-12T06:21:52.710Z","response_time":58,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai-video-generator","claude-code","developer-tools","elevenlabs","open-source","openclaw","playwright","programmatic-video","qwen-tts","remotion","text-to-speech","video-editing","video-production"],"created_at":"2025-12-24T02:21:17.066Z","updated_at":"2026-04-12T11:39:35.088Z","avatar_url":"https://github.com/digitalsamba.png","language":"Python","funding_links":[],"categories":["🎬 Media \u0026 Content"],"sub_categories":[],"readme":"# claude-code-video-toolkit\n\n[![GitHub release](https://img.shields.io/github/v/release/digitalsamba/claude-code-video-toolkit)](https://github.com/digitalsamba/claude-code-video-toolkit/releases)\n\nAn AI-native video production workspace for [Claude Code](https://claude.ai/code). Skills, commands, templates, and tools that give Claude Code everything it needs to help you create professional videos — from concept to final render.\n\n## Quick Start\n\n```bash\ngit clone https://github.com/digitalsamba/claude-code-video-toolkit.git\ncd claude-code-video-toolkit\npython3 -m pip install -r tools/requirements.txt   # Optional: AI voiceover, image gen, music, moviepy examples\nclaude                                              # Open Claude Code in the toolkit\n```\n\nThen in Claude Code:\n\n```\n/setup                    # Configure cloud GPU, storage, voice (~5 min, mostly free)\n/video                    # Create your first video\n```\n\n**That's it.** `/setup` walks you through everything interactively — cloud GPU provider, file transfer, voice config. `/video` creates a project from a template and guides you through the whole workflow.\n\n**What's free:** The toolkit leans heavily on open-source AI models — voiceovers (Qwen3-TTS), image generation (FLUX.2), music (ACE-Step), and more. You deploy them to your own cloud GPU account and run them at cost. Cloudflare R2 has a generous free tier (10GB, zero egress), and Modal gives $30/month free compute on the Starter plan — more than enough for a few 5-minute videos a month.\n\n**Requirements:** [Node.js](https://nodejs.org/) 18+ and [Claude Code](https://docs.anthropic.com/en/docs/claude-code). Python 3.9+ recommended for AI tools. FFmpeg optional.\n\n\u003e **Want to skip setup and just render something?**\n\u003e ```bash\n\u003e cd examples/hello-world \u0026\u0026 npm install \u0026\u0026 npm run render\n\u003e ```\n\u003e No API keys needed — outputs an MP4 immediately.\n\n---\n\n## A Note from the Author *(not AI-generated)*\n\n\u003e I've spent months painstakingly putting this toolkit together and plan to keep iterating on it. AI makes things easier, but hard work still has huge value. Every video I create is a chance for improvement — every skill, template, tool, and workflow here has been refined through that cycle. It would be wonderful if others wanted to get involved with that: use it, refine it, and feed back into the repo via an issue or PR what you learn.\n\u003e\n\u003e My own use case is fairly specific: creating sprint review videos for the AI mobile development arm of [Digital Samba](https://www.digitalsamba.com/). But the idea behind this project is a reusable toolkit for using Claude Code to autonomously generate any kind of \"explainer\" style video — product demos, walkthroughs, presentations, whatever you need. Autonomous video creation is a lofty ideal for such a subjective field, but we can try :)\n\u003e\n\u003e What makes this work is that Claude Code is fantastically resourceful and flexible — give it the framing and tooling that this toolkit provides and it will adapt it to create templates and videos based on your prompting. The skills, templates, and tools here are building blocks. Claude Code is the builder. You are the director, editor, and designer.\n\u003e\n\u003e **If you're getting started**, run `/setup` then `/video` and let Claude Code guide you. Or start with `/template` to create a template for your own use case.\n\u003e\n\u003e **Cloud GPU** — I recommend [Modal](https://modal.com/) for running the toolkit's AI tools. The Starter plan gives you $30/month free compute, which is more than enough. [RunPod](https://runpod.io/) is also supported as an alternative. Run `/setup` to deploy the tools you need.\n\u003e\n\u003e My motto: **Be brave. Experiment.** And please share any videos you create or ideas you have back with the project — it helps me keep improving this toolkit for everyone.\n\n## Features\n\n### Skills\n\nClaude Code has deep knowledge in:\n\n| Skill | Description |\n|-------|-------------|\n| **remotion** | React-based video framework — compositions, animations, rendering |\n| **elevenlabs** | AI audio — text-to-speech, voice cloning, music, sound effects |\n| **ffmpeg** | Media processing — format conversion, compression, resizing |\n| **playwright-recording** | Browser automation — record demos as video |\n| **frontend-design** | Visual design refinement for distinctive, production-grade aesthetics |\n| **qwen-edit** | AI image editing — prompting patterns and best practices |\n| **acestep** | AI music generation — prompts, lyrics, scene presets, video integration |\n| **ltx2** | AI video generation — text-to-video, image-to-video clips, prompting guide |\n| **moviepy** | Python video composition — overlay text on LTX-2/SadTalker output, build.py-style projects |\n| **runpod** | Cloud GPU — setup, Docker images, endpoint management, costs |\n\n### Commands\n\n| Command | Description |\n|---------|-------------|\n| `/setup` | First-time setup — cloud GPU, file transfer, voice, prerequisites |\n| `/video` | Video projects — list, resume, or create new |\n| `/scene-review` | Scene-by-scene review in Remotion Studio |\n| `/design` | Focused design refinement session for a scene |\n| `/brand` | Brand profiles — list, edit, or create new |\n| `/template` | List available templates or create new ones |\n| `/skills` | List installed skills or create new ones |\n| `/contribute` | Share improvements — issues, PRs, examples |\n| `/record-demo` | Record browser interactions with Playwright |\n| `/generate-voiceover` | Generate AI voiceover from a script |\n| `/redub` | Redub existing video with a different voice |\n| `/voice-clone` | Record, test, and save a cloned voice to a brand |\n| `/versions` | Check dependency versions and toolkit updates |\n\n\u003e **Note:** After creating or modifying commands/skills, restart Claude Code to load changes.\n\n### Templates\n\nPre-built video structures in `templates/`:\n\n- **sprint-review** — Sprint review videos with demos, stats, and voiceover\n- **sprint-review-v2** — Composable scene-based sprint review with modular architecture\n- **product-demo** — Marketing videos with dark tech aesthetic, stats, CTA\n\nSee `examples/` for finished projects you can learn from (oldest first, showing toolkit evolution):\n\n| Date | Demo | Description |\n|------|------|-------------|\n| 2025-12-05 | [sprint-review-cho-oyu](https://demos.digitalsamba.com/sprint-review-cho-oyu.mp4) | iOS sprint review with demos |\n| 2025-12-10 | [digital-samba-skill-demo](https://demos.digitalsamba.com/video/digital-samba-skill-demo.mp4) | Product demo showcasing Claude Code skill |\n| 2026-01-22 | [ds-remote-mcp](https://demos.digitalsamba.com/video/ds-remote-mcp.mp4) | Remote MCP server demo *(the jazz background music is a joke)* |\n| 2026-01-25 | [schlumbergera](https://demos.digitalsamba.com/video/schlumbergera.mp4) | Android sprint review video |\n| 2026-02-23 | [cortina](https://demos.digitalsamba.com/video/sprint-review.mp4) | Mobile platforms sprint review |\n| 2026-03-15 | [the-space-between](https://demos.digitalsamba.com/video/the-space-between.mp4) | AI-generated video essay — flux2 avatar, Qwen3-TTS voice, SadTalker animation |\n| 2026-04-08 | [q2-townhall-longarm-ad](https://demos.digitalsamba.com/video/q2-townhall-longarm-ad.mp4) | Super Bowl-style launch ad with dramatic Qwen3-TTS announcer and LTX-2 animated Lugh cameo |\n| 2026-04-08 | [q2-townhall-stars](https://demos.digitalsamba.com/video/q2-townhall-stars.mp4) | GitHub star history time-lapse with animated chart and deadpan-to-excited commentary |\n\n### Scene Transitions\n\nThe toolkit includes a transitions library for scene-to-scene effects:\n\n| Transition | Description |\n|------------|-------------|\n| `glitch()` | Digital distortion with RGB shift |\n| `rgbSplit()` | Chromatic aberration effect |\n| `zoomBlur()` | Radial motion blur |\n| `lightLeak()` | Cinematic lens flare |\n| `clockWipe()` | Radial sweep reveal |\n| `pixelate()` | Digital mosaic dissolution |\n| `checkerboard()` | Grid-based reveal (9 patterns) |\n\nPlus official Remotion transitions: `slide()`, `fade()`, `wipe()`, `flip()`\n\nPreview all transitions:\n```bash\ncd showcase/transitions \u0026\u0026 npm install \u0026\u0026 npm run studio\n```\n\nSee [lib/transitions/README.md](lib/transitions/README.md) for full documentation.\n\n### Brand Profiles\n\nDefine visual identity in `brands/`. When you create a project with `/video`, the brand's colors, fonts, and styling are automatically applied.\n\n```\nbrands/my-brand/\n├── brand.json    # Colors, fonts, typography\n├── voice.json    # ElevenLabs voice settings\n└── assets/       # Logo, backgrounds\n```\n\nIncluded brands: `default`, `digital-samba`\n\nCreate your own with `/brand`.\n\n### Project Management System\n\nVideo projects are tracked through a multi-session lifecycle:\n\n```\nplanning → assets → review → audio → editing → rendering → complete\n```\n\nEach project has a `project.json` that tracks:\n- **Scenes** — What to show, asset status, visual types\n- **Audio** — Voiceover and music status\n- **Sessions** — Work history across Claude Code sessions\n- **Phase** — Current stage in the workflow\n\nThe system automatically reconciles intent (what you planned) with reality (what files exist), and generates a `CLAUDE.md` per project for instant context when resuming.\n\nSee [lib/project/README.md](lib/project/README.md) for schema details, scene status tracking, and filesystem reconciliation logic.\n\n### Python Tools\n\nAudio, video, and image tools in `tools/`:\n\n```bash\n# Generate voiceover (ElevenLabs)\npython tools/voiceover.py --script script.md --output voiceover.mp3\n\n# Generate voiceover (Qwen3-TTS — self-hosted, cheaper alternative)\npython tools/voiceover.py --provider qwen3 --speaker Ryan --scene-dir public/audio/scenes --json\npython tools/qwen3_tts.py --text \"Hello world\" --tone warm --output hello.mp3\n\n# Generate background music (ElevenLabs)\npython tools/music.py --prompt \"Upbeat corporate\" --duration 120 --output music.mp3\n\n# Generate background music (ACE-Step — free cloud API, XL Turbo 4B model)\npython tools/music_gen.py --preset corporate-bg --duration 120 --output music.mp3\npython tools/music_gen.py --prompt \"Dramatic cinematic\" --duration 30 --bpm 90 --key \"D Minor\" --output reveal.mp3\npython tools/music_gen.py --prompt \"Upbeat indie rock\" --duration 60 --variations 4 --output intro.mp3\n\n# Generate sound effects\npython tools/sfx.py --preset whoosh --output sfx.mp3\n\n# Redub video with different voice\npython tools/redub.py --input video.mp4 --voice-id VOICE_ID --output dubbed.mp4\n\n# Add background music to existing video\npython tools/addmusic.py --input video.mp4 --prompt \"Subtle ambient\" --output output.mp4\n\n# Rebrand NotebookLM videos (trim outro, add your logo/URL)\npython tools/notebooklm_brand.py --input video.mp4 --logo logo.png --url \"mysite.com\" --output branded.mp4\n\n# AI image editing (style transfer, backgrounds, custom prompts)\npython tools/image_edit.py --input photo.jpg --style cyberpunk --cloud modal\npython tools/image_edit.py --input photo.jpg --prompt \"Add sunglasses\" --cloud modal\n\n# AI image upscaling (2x/4x)\npython tools/upscale.py --input photo.jpg --output photo_4x.png --cloud modal\n\n# Remove watermarks (requires cloud GPU)\npython tools/dewatermark.py --input video.mp4 --preset sora --output clean.mp4 --cloud modal\n\n# Locate watermark coordinates\npython tools/locate_watermark.py --input video.mp4 --grid --output-dir ./review/\n\n# Generate talking head video from image + audio (SadTalker)\npython tools/sadtalker.py --image portrait.png --audio voiceover.mp3 --output talking.mp4 --cloud modal\n\n# AI image generation (FLUX.2 Klein 4B — text-to-image + editing)\npython tools/flux2.py --prompt \"A sunset over mountains\" --cloud modal\npython tools/flux2.py --preset title-bg --brand digital-samba --cloud modal\npython tools/flux2.py --list-presets\n\n# AI video generation (LTX-2.3 22B — text-to-video + image-to-video)\npython tools/ltx2.py --prompt \"A sunset over the ocean, cinematic\" --cloud modal\npython tools/ltx2.py --prompt \"Gentle camera drift\" --input photo.jpg --cloud modal\n```\n\n**Tool Categories:**\n\n| Type | Tools | Purpose |\n|------|-------|---------|\n| **Project** | voiceover, music, music_gen, sfx | Used during video creation workflow |\n| **Utility** | redub, addmusic, notebooklm_brand, locate_watermark | Quick transformations, no project needed |\n| **Cloud GPU** | image_edit, upscale, dewatermark, sadtalker, qwen3_tts, flux2, music_gen, ltx2 | AI processing via Modal or RunPod |\n\n### Cloud GPU (Modal + RunPod)\n\n8 AI tools run on cloud GPUs. Use `--cloud modal` (recommended) or `--cloud runpod` on any tool.\n\n| Tool | What It Does | Est. Cost |\n|------|--------------|-----------|\n| `qwen3_tts` | AI text-to-speech (9 speakers, voice cloning) | ~$0.01 |\n| `flux2` | AI image generation \u0026 editing | ~$0.02 |\n| `image_edit` | AI image editing \u0026 style transfer | ~$0.03 |\n| `upscale` | AI image upscaling (2x/4x) | ~$0.01 |\n| `music_gen` | AI music generation (8 scene presets) | Free (acemusic) / ~$0.05 (self-hosted) |\n| `sadtalker` | Talking head video from portrait + audio | ~$0.10 |\n| `ltx2` | AI video generation (text-to-video, image-to-video) | ~$0.23 |\n| `dewatermark` | Video watermark removal | ~$0.10 |\n\n**Modal (recommended):** Each tool deploys from `docker/modal-*/app.py` — Modal builds and hosts the containers. $30/month free compute on the Starter plan, typical usage is $1-2/month. Run `/setup` to deploy all tools automatically.\n\n**RunPod (alternative):** Uses pre-built Docker images from `ghcr.io/conalmullan/video-toolkit-*`. Pay-per-second, no minimums. Run `python3 tools/\u003ctool\u003e.py --setup` to create endpoints.\n\nSee [docs/modal-setup.md](docs/modal-setup.md) and [docs/runpod-setup.md](docs/runpod-setup.md) for details.\n\n## Project Structure\n\n```\nclaude-code-video-toolkit/\n├── .claude/\n│   ├── skills/          # Domain knowledge for Claude\n│   └── commands/        # Slash commands (/video, /brand, etc.)\n├── lib/                 # Shared components, theme system, utilities\n│   ├── components/      # Reusable video components (11 components)\n│   ├── transitions/     # Scene transition effects (7 custom + 4 official)\n│   ├── theme/           # ThemeProvider, useTheme\n│   └── project/         # Multi-session project system\n├── tools/               # Python CLI tools\n├── templates/           # Video templates\n├── brands/              # Brand profiles\n├── projects/            # Your video projects (gitignored)\n├── examples/            # Curated showcase projects with finished videos\n├── assets/              # Shared assets\n├── playwright/          # Recording infrastructure\n├── docs/                # Documentation\n└── _internal/           # Toolkit metadata \u0026 roadmap\n```\n\n## Documentation\n\n- [Getting Started](docs/getting-started.md)\n- [Modal Setup](docs/modal-setup.md) — Cloud GPU with Modal (recommended)\n- [RunPod Setup](docs/runpod-setup.md) — Cloud GPU with RunPod (alternative)\n- [Creating Templates](docs/creating-templates.md)\n- [Creating Brands](docs/creating-brands.md)\n- [Project System](lib/project/README.md) — Multi-session lifecycle, schema, reconciliation\n- [Optional Components](docs/optional-components.md) — Local GPU tools setup\n- [Toolkit Development](_internal/ROADMAP.md) — Roadmap, backlog, changelog\n\n## Video Workflow\n\n```\n/video → Script → Assets → Scene Review → Design → Audio → Preview → Render\n```\n\n1. **Create project** — Run `/video`, choose template and brand\n2. **Review script** — Edit `VOICEOVER-SCRIPT.md` to plan content and assets\n3. **Gather assets** — Record demos with `/record-demo` or add external videos\n4. **Scene review** — Run `/scene-review` to verify visuals in Remotion Studio\n5. **Design refinement** — Use `/design` to improve slide visuals with the frontend-design skill\n6. **Generate audio** — AI voiceover with `/generate-voiceover`\n7. **Configure** — Update config file with asset paths and timing\n8. **Preview** — `npm run studio` for live preview\n9. **Iterate** — Work with Claude Code to adjust timing, styling, content\n10. **Render** — `npm run render` for final MP4\n\n## Contributing\n\nContributions welcome! See [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines.\n\n## License\n\nMIT License — see [LICENSE](LICENSE) for details.\n\n---\n\nBuilt for use with [Claude Code](https://claude.ai/code) by Anthropic.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigitalsamba%2Fclaude-code-video-toolkit","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdigitalsamba%2Fclaude-code-video-toolkit","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdigitalsamba%2Fclaude-code-video-toolkit/lists"}