VidCraft is a Claude Code plugin for professional AI-generated video production with HeyGen and Synthesia. It guides you through the complete production lifecycle — from concept development through scripting and storyboarding to publishing.
VidCraft does not automate video generation itself — it optimizes the entire preparation and review process so you produce high-quality videos in a fraction of the time.
What VidCraft solves:
/vidcraft:new-project — Create project with directory structure/vidcraft:doc-analyzer — (Optional) Analyze existing documentation/vidcraft:project-conceptualizer — Develop concept and episode plan/vidcraft:brief-creator — Create creative brief/vidcraft:script-writer — Write scripts with narration and visual cues/vidcraft:script-reviewer — 14-point quality checklist/vidcraft:storyboard-creator — Scene-by-scene visual direction/vidcraft:screenshot-planner — Define screenshots and recordings/vidcraft:asset-collector — Verify and organize assets/vidcraft:pre-generation-check — Quality gates before generation/vidcraft:heygen-engineer or /vidcraft:synthesia-engineer — Platform format/vidcraft:video-reviewer — 20-point review/vidcraft:release-director — Coordinate publishing| Requirement | Version | Notes |
|---|---|---|
| Python | 3.10+ | Recommended: Python 3.12 |
| Claude Code | 1.0+ | CLI, Desktop, or VS Code Extension |
| pip | 22+ | For venv dependencies |
git clone https://github.com/markus-michalski/vidcraft.git ~/projekte/vidcraft
~/projekte/vidcraft/claude plugin install ~/projekte/vidcraft
In Claude Code:
/vidcraft:setup
This automatically creates:
~/.vidcraft/venv/~/.vidcraft/config.yaml~/.vidcraft/cache/nano ~/.vidcraft/config.yaml
Restart Claude Code. Verify with /vidcraft:session-start.
paths:
content_root: "~/video-projects"
video_root: "~/video-projects/videos"
assets_root: "~/video-projects/assets"
overrides: "~/video-projects/overrides"
defaults:
language: ["de", "en"]
wpm: 140
platform: "heygen"
heygen:
default_avatar: ""
default_voice: ""
synthesia:
default_avatar: ""
default_voice: ""
brand:
name: "Company Name"
primary_color: "#2563EB"
secondary_color: "#10B981"
tone: ["professional", "friendly"]
| Path | Description |
|---|---|
~/.vidcraft/config.yaml |
User configuration |
~/.vidcraft/cache/state.json |
State cache (automatic) |
~/.vidcraft/venv/ |
Python virtual environment |
{content_root}/projects/ |
Project files (Markdown) |
{video_root}/projects/ |
Generated videos |
{assets_root}/projects/ |
Screenshots, images |
| Skill | Model | Description |
|---|---|---|
new-project |
Sonnet | Create project with directory structure |
session-start |
Sonnet | Initialize session, verify setup |
resume |
Sonnet | Continue working on a project |
next-step |
Sonnet | Recommend next action based on status |
project-dashboard |
Sonnet | Show progress dashboard |
project-conceptualizer |
Opus | 5-phase concept development |
| Skill | Model | Description |
|---|---|---|
doc-analyzer |
Opus | Analyze PDF/DOCX/MD, extract video content |
researcher |
Opus | Topic research with web access |
audience-researcher |
Opus | Audience analysis and personas |
research-verifier |
Sonnet | Fact-checking and source validation |
| Skill | Model | Description |
|---|---|---|
script-writer |
Opus | Scripts with narration and visual cues |
script-reviewer |
Sonnet | 14-point quality checklist |
brief-creator |
Opus | Creative brief from requirements |
voice-checker |
Sonnet | Detect AI language patterns |
| Skill | Model | Description |
|---|---|---|
storyboard-creator |
Opus | Scene-by-scene storyboard |
shot-list-creator |
Sonnet | Production-ready shot list |
screenshot-planner |
Sonnet | Define screenshot positions |
asset-collector |
Sonnet | Verify and organize assets |
| Skill | Model | Description |
|---|---|---|
heygen-engineer |
Sonnet | HeyGen-optimized format |
synthesia-engineer |
Sonnet | Synthesia-optimized format |
avatar-selector |
Sonnet | Avatar recommendation by audience |
pre-generation-check |
Sonnet | Quality gates before generation |
| Skill | Model | Description |
|---|---|---|
video-reviewer |
Opus | 20-point post-generation review |
brand-checker |
Sonnet | Brand consistency audit |
accessibility-checker |
Sonnet | Accessibility (WCAG 2.1) |
voice-checker |
Sonnet | Detect AI language |
timing-validator |
Haiku | Quick timing check |
| Skill | Model | Description |
|---|---|---|
release-director |
Sonnet | Coordinate publishing |
promo-writer |
Opus | Write social media copy |
thumbnail-director |
Sonnet | Create thumbnail concepts |
| Skill | Model | Description |
|---|---|---|
video-type-creator |
Opus | Create new video types |
help |
Haiku | Show available skills |
configure |
Sonnet | Interactive config setup |
setup |
Sonnet | First-time setup |
| Type | Duration | Pacing | Use Case |
|---|---|---|---|
| tutorial | 3-15 min | Slow, step-by-step | Software instructions |
| installation-guide | 2-8 min | Clear, sequential | Plugin/software installation |
| product-demo | 2-5 min | Medium, dynamic | Product showcase |
| explainer | 60-120s | Medium to fast | Explain concepts |
| training | 5-20 min | Structured | Employee training |
| onboarding | 3-10 min | Friendly, clear | New users/employees |
| marketing-spot | 15-60s | Fast, emotional | Advertising (AIDA) |
| faq-video | 30-90s | Direct | Support relief |
| testimonial | 60-120s | Authentic | Social proof |
| how-to | 2-8 min | Practical | Hands-on guides |
| webinar-teaser | 30-60s | Energetic | Event promotion |
| social-short | 15-60s | Very fast | TikTok/Reels/Shorts |
Each type has a README.md with structure template, pacing rules, script conventions, visual direction, and example storyboard.
New video types can be created anytime with
/vidcraft:video-type-creator.
| Tool | Description |
|---|---|
list_projects |
List all projects with status |
find_project |
Find project by slug or name |
get_project_full |
Complete project with all episodes and scenes |
get_project_progress |
Progress percentage per phase |
rebuild_state |
Rebuild state cache from Markdown |
get_session |
Current session (last project, phase) |
update_session |
Update session context |
search |
Full-text search across all projects |
| Tool | Description |
|---|---|
create_project_structure |
New project with templates |
create_episode |
Create episode in project |
create_scene |
Create scene in episode |
update_field |
Update YAML frontmatter field |
resolve_path |
Resolve filesystem path |
extract_section |
Extract markdown section |
format_for_clipboard |
Format script for copy-paste |
| Tool | Description |
|---|---|
analyze_document |
Parse PDF/DOCX/MD and structure |
extract_key_points |
Identify key points for video |
suggest_video_structure |
Derive scene structure from docs |
analyze_complexity |
Assess complexity, recommend type |
suggest_video_topics |
Suggest video topics from docs |
| Tool | Description |
|---|---|
validate_platform_limits |
Check character/scene limits |
get_platform_capabilities |
Query platform features |
heygen_format_script |
Format for HeyGen |
synthesia_format_script |
Format for Synthesia |
list_required_assets |
Identify missing assets |
| Tool | Description |
|---|---|
analyze_timing |
WPM calculation, duration estimate |
check_readability |
Flesch score, sentence length |
| Tool | Description |
|---|---|
run_pre_generation_gates |
All gates before generation |
validate_project_structure |
Check directory integrity |
/vidcraft:new-project "OXID Gallery Tutorial" tutorial
Claude creates the project structure and asks about episodes.
1. /vidcraft:new-project "OXID Gallery Tutorial" tutorial
2. /vidcraft:doc-analyzer ~/docs/gallery-readme.md
3. /vidcraft:script-writer oxid-gallery-tutorial 01-installation
4. /vidcraft:script-reviewer oxid-gallery-tutorial 01-installation
5. /vidcraft:storyboard-creator oxid-gallery-tutorial 01-installation
6. /vidcraft:pre-generation-check oxid-gallery-tutorial 01-installation
7. /vidcraft:heygen-engineer oxid-gallery-tutorial 01-installation
1. /vidcraft:doc-analyzer ~/docs/existing-manual.pdf
-> Analysis: 3500 words, 12 sections, recommended: tutorial series (3 episodes)
2. /vidcraft:new-project "Product Manual" tutorial
3. /vidcraft:brief-creator product-manual
4. /vidcraft:script-writer product-manual 01-introduction
1. /vidcraft:new-project "What is ALTCHA?" explainer
2. /vidcraft:script-writer what-is-altcha 01-explanation
3. /vidcraft:synthesia-engineer what-is-altcha 01-explanation
| # | Gate | Type | Description |
|---|---|---|---|
| 1 | Script Status | BLOCK | Script must be reviewed |
| 2 | Scenes Exist | BLOCK | At least one scene with narration |
| 3 | Narration Complete | BLOCK | All scenes must have narration |
| 4 | Visual Direction | WARN | All scenes should have visual direction |
| 5 | Timing | INFO | Show estimated duration |
Symptoms: Skills show errors, no MCP tools available
Check:
claude plugin listls ~/.vidcraft/venv/bin/python3~/.vidcraft/venv/bin/pip list | grep mcpSolution:
/vidcraft:setup
Symptoms: list_projects shows nothing despite existing projects
Solution:
/vidcraft:session-start
This rebuilds the state cache automatically.
Symptoms: analyze_document returns import error
Solution:
~/.vidcraft/venv/bin/pip install pdfplumber python-docx
vidcraft/
├── .claude-plugin/ # Plugin manifest
├── servers/vidcraft-server/ # FastMCP server (Python)
├── tools/ # Backend modules
│ ├── shared/ # Config, Paths
│ ├── state/ # Indexer, Parsers
│ └── analysis/ # Document Parser
├── skills/ # 32 SKILL.md files
├── templates/ # 7 Markdown templates
├── video-types/ # 12 type definitions
├── reference/ # Knowledge base
├── hooks/ # PostToolUse validation
└── tests/ # 138 tests (pytest)
Project:
Concept -> Brief Complete -> Research Done -> Script Draft -> Script Approved
-> Storyboard Done -> Assets Ready -> Generated -> Reviewed -> Published
Episode:
Not Started -> Script Draft -> Script Reviewed -> Storyboard
-> Assets Collected -> Ready for Generation -> Generated -> QA Passed -> Final
Scene:
Outline -> Script Written -> Visual Defined -> Assets Ready -> Generated -> Approved
Q: Does VidCraft generate videos automatically?
A: No. VidCraft optimizes the preparation process (script, storyboard, formatting). Actual video generation happens manually in HeyGen or Synthesia. Future versions may include API integration.
Q: Can I use both platforms simultaneously?
A: Yes. Each episode can have its own platform. Creative work is platform-independent.
Q: Which document formats are supported?
A: PDF, DOCX, and Markdown. The doc analyzer extracts structure, code blocks, lists, and headings.
Q: Can I create custom video types?
A: Yes. Use /vidcraft:video-type-creator [name] to create new type definitions with pacing rules, structure templates, and best practices.
Q: Do I need a HeyGen/Synthesia account?
A: Yes, for generation. VidCraft itself is free and open source.
MIT License — GitHub Repository
Developed by Markus Michalski