video-generation
Skill30 starsChanged 10 months agoMITView on GitHub
Use this skill for AI video generation. Triggers include: "generate video", "create video", "make video", "animate", "text to video", "video from image", "video of", "animate image", "bring to life", "make it move", "add motion", "video with audio", "video with dialogue" Supports text-to-video, image-to-video, video with dialogue/audio using Google Veo 3.1 (default) or OpenAI Sora.
- Reads credentials
We split this skill into the rules it gives an agent
6 rules. 0 are common, 4 are distinctive, and 2 are very specific to this project.
0
Common
Most of the 20 edited versions we read keep these.
4
Distinctive
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 37
Add to your .env file:
- Distinctive: line 45
Only use if you don't have a GCP project:
- Distinctive: line 316
Use a different API
- Very specific: line 334
Dialogue: Use quotes for speech: "Hello!" she said excitedly
- Distinctive: line 342
Add film references: "Blade Runner style", "Wes Anderson aesthetic"
- Distinctive: line 356
Don't use "no" or "don't" - just describe the unwanted elements
“Common” is measured: kept by at least 6 in 10 of the 20 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Video Generation Skill
Generate videos using AI (Google Veo 3.1, OpenAI Sora).
Capabilities:
- 🎬 Text-to-Video: Create videos from text descriptions
- 🖼️ Image-to-Video: Animate images as the first frame
- 🔊 Audio Generation: Dialogue, sound effects, ambient sounds (Veo 3+)
- 🎭 Reference Images: Guide video content with up to 3 reference images (Veo 3.1)
Prerequisites
Default: Vertex AI (10 requests/minute) ⭐
Vertex AI is the default backend with 1400x higher rate limits:
# 1. Set your project
export GOOGLE_CLOUD_PROJECT=your-project-id
# 2. Authenticate (opens browser)
gcloud auth application-default login
# 3. Enable the API (one-time)
gcloud services enable aiplatform.googleapis.comAdd to your .env file:
GOOGLE_CLOUD_PROJECT=your-project-id
GOOGLE_CLOUD_LOCATION=us-central1Fallback: AI Studio (10 requests/day)
Only use if you don't have a GCP project:
GOOGLE_API_KEY- Get from https://aistudio.google.com/apikey
For Sora (OpenAI)
OPENAI_API_KEY- For OpenAI Sora
Available Models
Google Veo Models
| Model | Description | Best For |
veo-3.1 | Highest quality (default) | Professional videos, dialogue, reference images |
veo-3.1-fast | Faster processing | Quick iterations, batch generation |
Both models include:
- 720p/1080p resolution
- 4, 6, or 8 second duration
- Native audio (dialogue, SFX, ambient)
- Image-to-video (animate images)
- Reference images (up to 3)
- Video extension
- Batch/parallel generation
OpenAI Sora
- Best for: Creative videos, cinematic quality, complex motion
- Resolutions: 480p, 720p, 1080p
- Durations: 5s, 10s, 15s, 20s
- Features: Text-to-video, image-to-video
Workflow
Step 1: Gather Requirements (REQUIRED)
⚠️ Use interactive questioning — ask ONE question at a time.
Question Flow
⚠️ Use the AskUserQuestion tool for each question below. Do not just print questions in your response — use the tool to create interactive prompts with the options shown.
Q1: Image
"I'll generate that video for you! First — do you have an image to animate?
- Yes (provide path — I'll use it as the first frame)
- No, generate from scratch"
Wait for response.
Q2: Audio
"What audio preference?
- With audio (default) — Veo 3.1 generates dialogue, SFX, ambient
- Silent video — no audio"
Wait for response.
Q3: Model
"Which model would you like?
veo-3.1— Latest, highest quality with audio (default)veo-3.1-fast— Faster processing with audioveo-3/veo-3-fast— Previous generation with audiosora— OpenAI, up to 20 seconds, no audio"
Wait for response.
Q4: Duration
"What duration?
- 4 seconds
- 6 seconds
- 8 seconds (default)"
Wait for response.
Q5: Format
"What aspect ratio and resolution?
- 16:9 landscape, 720p
- 16:9 landscape, 1080p
- 9:16 portrait, 720p
- 9:16 portrait, 1080p
- Or specify"
Wait for response.
Quick Reference
| Question | Determines |
| Image | Image-to-video vs text-to-video |
| Audio | With/without audio generation |
| Model | Quality and speed tradeoff |
| Duration | Clip length |
| Format | Aspect ratio and resolution |
Step 2: Craft the Prompt
Transform the user request into an effective video prompt:
- Describe the scene: Set the visual context
- Specify action: What moves, changes, happens
- Include camera work: "slow pan", "tracking shot", "dolly shot"
- Add audio cues (Veo 3+): Use quotes for dialogue, describe sounds
- Set the mood: Lighting, atmosphere, time of day
Example with dialogue (Veo 3.1):
- User: "a person discovering treasure"
- Enhanced: "Close-up of a treasure hunter's face as torchlight flickers. He murmurs 'This must be it...' while brushing dust off an ancient chest. Sound of creaking hinges as he opens it, revealing golden light on his awestruck face. Cinematic, dramatic shadows."
Example without dialogue:
- User: "a dog running on a beach"
- Enhanced: "Cinematic slow-motion shot of a golden retriever running joyfully along a beach at sunset, waves lapping, warm golden hour lighting, shallow depth of field"
Step 3: Select the Model
Default: veo-3.1 (highest quality, with audio)
| Use Case | Recommended Model | Reason |
| Best quality | veo-3.1 (default) | Highest quality, audio |
| Quick iteration | veo-3.1-fast | Faster processing |
| Batch generation | veo-3.1-fast | Speed matters for multiple clips |
| Longer videos (>8s) | sora | Supports up to 20s |
Step 4: Generate the Video
Execute the appropriate script from ${CLAUDE_PLUGIN_ROOT}/skills/video-generation/scripts/:
For Google Veo 3.1 (default, with audio):
python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-generation/scripts/veo.py \
--prompt "your enhanced prompt with 'dialogue in quotes'" \
--model "veo-3.1" \
--duration 8 \
--aspect-ratio "16:9" \
--resolution "720p"For Google Veo 3.1 with image input:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-generation/scripts/veo.py \
--prompt "The cat slowly opens its eyes and yawns" \
--image "/path/to/cat.jpg" \
--model "veo-3.1" \
--duration 8For faster generation:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-generation/scripts/veo.py \
--prompt "your prompt" \
--model "veo-3.1-fast"For OpenAI Sora (longer videos):
python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-generation/scripts/sora.py \
--prompt "your enhanced prompt" \
--duration 20 \
--resolution "1080p"List available models:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-generation/scripts/veo.py --list-modelsVideo Extension (For Long-Form Continuity)
The --extend flag creates TRUE visual continuity by continuing from where a previous Veo video ended. This is the best approach for long-form videos.
Basic extension:
# First, generate initial clip
python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-generation/scripts/veo.py \
--prompt "A person walks through a forest at sunrise" \
--duration 8
# Extend it with new content (adds ~7 seconds)
python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-generation/scripts/veo.py \
--extend veo_veo-3.1_20260104_120000.mp4 \
--prompt "Continue walking, discover a hidden stream"Multiple extensions (for longer videos):
# Extend 5 times (adds ~35 seconds of continuation)
python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-generation/scripts/veo.py \
--extend initial_clip.mp4 \
--prompt "Keep exploring the forest, encounter wildlife" \
--extend-times 5Extension vs Stitching:
| Approach | Result | Use Case |
| Extension | True continuity, same characters/scene | Long continuous shots |
| Stitching | Separate clips with transitions | Scene changes, montages |
Extension Limits:
- Input video must be Veo-generated (max 141 seconds)
- Each extension adds ~7 seconds
- Maximum 20 extensions total (~2.5 minutes)
- Output resolution is 720p
Batch Generation (Parallel)
Generate multiple videos simultaneously for faster multi-scene workflows. Instead of waiting 15+ minutes for 5 sequential videos, generate them all in parallel (~3 minutes total).
Create a scenes.json file:
[
{"prompt": "Scene 1: Cinematic hero shot of wireless earbuds on dark surface", "duration": 6, "output": "scene1_hero.mp4"},
{"prompt": "Scene 2: Sound waves visualization, person enjoying music", "duration": 8, "output": "scene2_sound.mp4"},
{"prompt": "Scene 3: Close-up of earbud in ear, person exercising", "duration": 8, "output": "scene3_comfort.mp4"},
{"prompt": "Scene 4: Lifestyle montage, various settings", "duration": 8, "output": "scene4_lifestyle.mp4"},
{"prompt": "Scene 5: Product with logo on clean background", "duration": 4, "output": "scene5_cta.mp4"}
]Generate all scenes in parallel:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-generation/scripts/veo.py \
--batch scenes.jsonWith custom worker count:
python3 ${CLAUDE_PLUGIN_ROOT}/skills/video-generation/scripts/veo.py \
--batch scenes.json \
--max-workers 3Batch config options per video:
| Option | Description | Default |
prompt | Video description (required) | - |
model | veo-3.1, veo-3.1-fast, etc. | veo-3.1 |
duration | 4, 6, or 8 seconds | 8 |
aspect_ratio | "16:9" or "9:16" | "16:9" |
resolution | "720p" or "1080p" | "720p" |
image | Path to image for image-to-video | - |
negative_prompt | What to avoid | - |
output | Custom output filename | auto-generated |
Speed comparison:
| Scenes | Sequential | Parallel (5 workers) | Speedup |
| 3 | ~9 min | ~3 min | 3x |
| 5 | ~15 min | ~3 min | 5x |
| 10 | ~30 min | ~6 min | 5x |
Step 5: Deliver the Result
- Provide the generated video file/URL
- Share the enhanced prompt used
- Mention generation settings (duration, resolution)
- Offer to:
- Generate variations
- Try different style/duration
- Use a different API
- Extend the video
Error Handling
Missing API key: Inform the user which key is needed:
Content policy violation: Rephrase the prompt appropriately.
Generation failed: Retry with simplified prompt or different API.
Quota exceeded: Suggest waiting or trying the other provider.
Prompt Engineering Tips
For Audio (Veo 3.1)
- Dialogue: Use quotes for speech:
"Hello!" she said excitedly - Sound effects: Describe explicitly:
tires screeching, engine roaring - Ambient: Describe the soundscape:
birds chirping, distant traffic - Example:
A man whispers "Did you hear that?" as footsteps echo in the dark hallway
For Cinematic Quality
- Include camera directions: "slow dolly", "tracking shot", "crane shot"
- Specify lighting: "golden hour", "dramatic shadows", "soft diffused light"
- Add film references: "Blade Runner style", "Wes Anderson aesthetic"
For Realistic Motion
- Describe physics: "natural movement", "realistic physics"
- Include environmental details: "wind in hair", "leaves rustling"
- Specify speed: "slow motion", "real-time", "time-lapse"
For Image-to-Video
- Describe what should change/move from the starting image
- Be specific about the action: "the cat slowly opens its eyes"
- Include environmental motion: "leaves blow past"
Negative Prompts
- Describe what NOT to include:
--negative-prompt "cartoon, low quality, blurry" - Don't use "no" or "don't" - just describe the unwanted elements
API Comparison
| Feature | Veo 3.1 (Default) | Veo 3.1 Fast | Sora |
| Provider | OpenAI | ||
| API Key | GOOGLE_API_KEY | GOOGLE_API_KEY | OPENAI_API_KEY |
| Max duration | 8 seconds | 8 seconds | 20 seconds |
| Resolution | 720p, 1080p | 720p, 1080p | Up to 1080p |
| Aspect ratios | 16:9, 9:16 | 16:9, 9:16 | 16:9, 9:16, 1:1 |
| Audio (dialogue, SFX) | ✅ Yes | ✅ Yes | ❌ No |
| Image-to-video | ✅ Yes | ✅ Yes | ✅ Yes |
| Reference images | ✅ Up to 3 | ✅ Up to 3 | ❌ No |
| Video extension | ✅ Yes | ✅ Yes | ❌ No |
| Batch generation | ✅ Yes | ✅ Yes | ❌ No |
| Speed | Best quality | ~2x faster | Slower |
| Best for | Professional | Batch workflows | Longer videos |
Other versions23 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 23
- bytedance/deer-flow★ 85ksame name
- stophobia/deerflow2.0-enhanced★ 821same name
- HybridAIOne/hybridclaw★ 159same name
- hyperfx-ai/marketing-skills★ 107same name
- Rylaispirit/rylai-codex-hermes-skills★ 56same name
- awesome-genmedia/skills★ 36same name
- wildercrenshaw2/model-skills★ 34same name
- wulaosiji/skills★ 28same name
- Galbaz1/video-research-mcp★ 23same name
- 0gfoundation/0g-agent-skills★ 15same name
13 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
Used alongsideProjects with it also use consulting-analysis, surprise-me and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
HK-hubSkillconsulting-analysis
Use this skill when the user requests to generate, create, or write professional research reports including but not limited to market analysis, consumer insights, brand analysis, financial analysis, industry research, competitive intelligence, investment due diligence, or any consulting-grade analytical report. This skill operates in two phases — (1) generating a structured analysis framework with chapter skeleton, data query requirements, and analysis logic, and (2) after data collection by other skills, producing the final consulting-grade report with structured narratives, embedded charts, and strategic insights.
Also in 4 projects that use this
stophobiaSkillsurprise-me
Create a delightful, unexpected "wow" experience for the user by dynamically discovering and creatively combining other enabled skills. Triggers when the user says "surprise me" or any request expressing a desire for an unexpected creative showcase. Also triggers when the user is bored, wants inspiration, or asks for "something interesting".
Also in 3 projects that use this
HK-hubSkillppt-generation
Use this skill when the user requests to generate, create, or make presentations (PPT/PPTX). Creates visually rich slides by generating images for each slide and composing them into a PowerPoint file.
Also in 3 projects that use this
stophobiaSkillgithub-deep-research
Conduct multi-round deep research on any GitHub Repo. Use when users request comprehensive analysis, timeline reconstruction, competitive analysis, or in-depth investigation of GitHub. Produces structured markdown reports with executive summaries, chronological timelines, metrics analysis, and Mermaid diagrams. Triggers on Github repository URL or open source projects.
Also in 3 projects that use this
MicrosoftSkillpodcast-generation
Generate AI-powered podcast-style audio narratives using Azure OpenAI's GPT Realtime Mini model via WebSocket. Use when building text-to-speech features, audio narrative generation, podcast creation from content, or integrating with Azure OpenAI Realtime API for real audio output. Covers full-stack implementation from React frontend to Python FastAPI backend with WebSocket streaming.
Also in 3 projects that use this
VercelSkillvercel-deploy
Deploy applications and websites to Vercel with a claimable preview. Use when the user requests deployment actions like "deploy my app", "deploy and give me the link", "push this live", or "create a preview deployment". No authentication required - returns preview URL and claimable deployment link.
Also in 3 projects that use this
- +1 more from HK-hub
In this repository45 other files it gives its agents.
- add-to-xcodeSkill
- android-to-iosSkill
- app-demo-agentSkill
- audio-producer-agentSkill
- auto-permissions-review-disableSkill
- auto-permissions-review-enableSkill
- auto-permissions-review-installSkill
- background-removeSkill
- brand-research-agentSkill
- chart-generationSkill
- cmo-agentSkill
- competitive-intel-agentSkill
- copywriter-agentSkill
- debug-councilSkill
- device-framerSkill
- docxSkill
- expired-patent-scoutSkill
- feature-councilSkill
- icon-generationSkill
- image-generationSkill
- ios-to-androidSkill
- market-researcher-agentSkill
- media-utilsSkill
- mobile-parity-checkSkill
- model-councilSkill
- music-generationSkill
- parallel-builderSkill
- patent-lawyer-agentSkill
- patent-prosecution-agentSkill
- pdfSkill
- pitch-deck-agentSkill
- podcast-producer-agentSkill
- pptxSkill
- product-engineer-agentSkill
- react-to-iosSkill
- review-analyst-agentSkill
- search-trend-product-scoutSkill
- sidequestSkill
- slide-generationSkill
- social-producer-agentSkill
- style-guideSkill
- video-producer-agentSkill
- voice-generationSkill
- walkthrough-script-agentSkill
- xlsxSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

