Video Generation
bytedance/deer-flow
Generates short videos from a structured JSON prompt, optionally guided by a reference image used as the first or last frame.
Multi-shot AI video generation pipeline with face identity consistency.
$ npx skills add happycapy-ai/Happycapy-skills --skill capy-video-gen-skill -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install happycapy-ai/Happycapy-skills capy-video-gen-skill --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/happycapy-ai/Happycapy-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/capy-video-gen-skill .claude/skills/capy-video-gen-skill && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "capy-video-gen-skill" agent skill from https://github.com/happycapy-ai/Happycapy-skills/tree/main/skills/capy-video-gen-skill into .claude/skills/capy-video-gen-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capy-video-gen-skill", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/happycapy-ai/Happycapy-skills/tree/main/skills/capy-video-gen-skillType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add happycapy-ai/Happycapy-skills --skill capy-video-gen-skill -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install happycapy-ai/Happycapy-skills capy-video-gen-skill --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/happycapy-ai/Happycapy-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/capy-video-gen-skill .agents/skills/capy-video-gen-skill && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "capy-video-gen-skill" agent skill from https://github.com/happycapy-ai/Happycapy-skills/tree/main/skills/capy-video-gen-skill into .agents/skills/capy-video-gen-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capy-video-gen-skill", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add happycapy-ai/Happycapy-skills --skill capy-video-gen-skill -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install happycapy-ai/Happycapy-skills capy-video-gen-skill --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/happycapy-ai/Happycapy-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/capy-video-gen-skill .cursor/skills/capy-video-gen-skill && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "capy-video-gen-skill" agent skill from https://github.com/happycapy-ai/Happycapy-skills/tree/main/skills/capy-video-gen-skill into .cursor/skills/capy-video-gen-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capy-video-gen-skill", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/happycapy-ai/Happycapy-skills.git --path skills/capy-video-gen-skill--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add happycapy-ai/Happycapy-skills --skill capy-video-gen-skill -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install happycapy-ai/Happycapy-skills capy-video-gen-skill --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/happycapy-ai/Happycapy-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/capy-video-gen-skill .gemini/skills/capy-video-gen-skill && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "capy-video-gen-skill" agent skill from https://github.com/happycapy-ai/Happycapy-skills/tree/main/skills/capy-video-gen-skill into .gemini/skills/capy-video-gen-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capy-video-gen-skill", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install happycapy-ai/Happycapy-skills capy-video-gen-skillInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add happycapy-ai/Happycapy-skills --skill capy-video-gen-skill -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/happycapy-ai/Happycapy-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/capy-video-gen-skill .github/skills/capy-video-gen-skill && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "capy-video-gen-skill" agent skill from https://github.com/happycapy-ai/Happycapy-skills/tree/main/skills/capy-video-gen-skill into .github/skills/capy-video-gen-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capy-video-gen-skill", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add happycapy-ai/Happycapy-skills --skill capy-video-gen-skill -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install happycapy-ai/Happycapy-skills capy-video-gen-skill --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/happycapy-ai/Happycapy-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/capy-video-gen-skill .opencode/skills/capy-video-gen-skill && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "capy-video-gen-skill" agent skill from https://github.com/happycapy-ai/Happycapy-skills/tree/main/skills/capy-video-gen-skill into .opencode/skills/capy-video-gen-skill/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "capy-video-gen-skill", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
capy-video-gen-skillMulti-shot AI video generation pipeline with face identity consistency.
Capy Video Gen Skill is an agent skill from happycapy-ai/Happycapy-skills. Multi-shot AI video generation pipeline with face identity consistency. Converts scripts or ideas into complete videos using character extraction, storyboarding, frame generation, and video assembly. 300 experiments validated, 70% face distance improvement. Use when the user asks to create a video from a script, story, idea, or wants multi-shot video with consistent characters.
Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. The skill folder holds 75 other files, including assets (for example `Communication.md`, `FACE_IDENTITY_GUIDE.md` and `README.md`).
It sits in Media & Creative, covering AI video generation. The repository describes itself as: A curated collection of high-quality Claude Code skills to enhance your development workflow. The licence is MIT.
8 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 9ff72fe. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
BashReadWriteEditFrom allowed-tools in the SKILL.md frontmatter.
Ships script files (Python, from the files we listed), which the agent can run.
Shell commands in SKILL.md call:
pythonFrom the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
ai-gateway.happycapy.aiFrom URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
AI_GATEWAY_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Capy Video Gen Skill loads about 2.4k tokens when it runs. Until then it costs about 100 tokens; SKILL.md has 673 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Bash, Read, Write, EditAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from happycapy-ai/Happycapy-skills at commit 9ff72fe, republished under its MIT licence (© happycapy-ai). 673 words, ~2,426 tokens.
.claude/skills/capy-video-gen-skill/SKILL.md (or your agent's skills folder). This skill also uses 74 other files; get the full folder from GitHub.Generate complete multi-shot videos from scripts or ideas with consistent character faces across all scenes. Built for HappyCapy AI Gateway. 300 experiments validated, 70% face distance improvement.
ViMax converts text scripts into full videos through an automated pipeline:
The ViMax pipeline code is at: /home/node/a0/workspace/527fb591-1439-4b5b-ad5d-90f972773f95/workspace/tmp/ViMax/
All commands must be run from this directory using the venv:
cd /home/node/a0/workspace/527fb591-1439-4b5b-ad5d-90f972773f95/workspace/tmp/ViMaxAI_GATEWAY_API_KEY environment variable (auto-configured in HappyCapy).venv/ (already set up)Edit the script, requirements, and style in the entry script, then run:
cd /home/node/a0/workspace/527fb591-1439-4b5b-ad5d-90f972773f95/workspace/tmp/ViMax
.venv/bin/python main_happycapy_script2video.pyFor generating from a brief idea (auto-generates script first):
cd /home/node/a0/workspace/527fb591-1439-4b5b-ad5d-90f972773f95/workspace/tmp/ViMax
.venv/bin/python main_happycapy_idea2video.pyimport asyncio
from langchain.chat_models import init_chat_model
from tools.render_backend import RenderBackend
from utils.config_loader import load_config
from pipelines.script2video_pipeline import Script2VideoPipeline
config = load_config("configs/happycapy_script2video.yaml")
chat_model = init_chat_model(**config["chat_model"]["init_args"])
backend = RenderBackend.from_config(config)
pipeline = Script2VideoPipeline(
chat_model=chat_model,
image_generator=backend.image_generator,
video_generator=backend.video_generator,
working_dir=config["working_dir"],
)
# Run the pipeline
asyncio.run(pipeline(
script="Your script here...",
user_requirement="No more than 8 shots total.",
style="Cinematic, warm lighting"
)){working_dir}/final_video.mp4configs/happycapy_script2video.yamlconfigs/happycapy_idea2video.yamlHappyCapy configs at configs/happycapy_script2video.yaml:
chat_model:
init_args:
model: gpt-4.1
model_provider: openai
api_key: ${AI_GATEWAY_API_KEY}
base_url: https://ai-gateway.happycapy.ai/api/v1/openai/v1
image_generator:
class_path: tools.ImageGeneratorHappyCapyAPI
init_args:
api_key: ${AI_GATEWAY_API_KEY}
model: google/gemini-3.1-flash-image-preview
video_generator:
class_path: tools.VideoGeneratorHappyCapyAPI
init_args:
api_key: ${AI_GATEWAY_API_KEY}
model: google/veo-3.1-generate-preview
working_dir: .working_dir/script2video| Agent | File | Purpose |
|---|---|---|
| CharacterExtractor | agents/character_extractor.py | Extract characters with static/dynamic features from script |
| CharacterPortraitsGenerator | agents/character_portraits_generator.py | Generate front/side/back portraits for each character |
| StoryboardArtist | agents/storyboard_artist.py | Design shot-by-shot storyboard with first/last frames and motion |
| ReferenceImageSelector | agents/reference_image_selector.py | Select best reference images for each frame (face identity #1 priority) |
| CameraImageGenerator | agents/camera_image_generator.py | Build camera trees and generate transition videos |
| BestImageSelector | agents/best_image_selector.py | Select best generated image from candidates |
| Screenwriter | agents/screenwriter.py | Generate scripts from ideas |
| Tool | File | Purpose |
|---|---|---|
| ImageGeneratorHappyCapyAPI | tools/image_generator_happycapy_api.py | Image generation via HappyCapy Gateway (Gemini) |
| VideoGeneratorHappyCapyAPI | tools/video_generator_happycapy_api.py | Video generation via HappyCapy Gateway (Veo) |
| RenderBackend | tools/render_backend.py | Factory for instantiating generators from config |
CharacterInScene - Character with identifier, static_features, dynamic_featuresShotDescription - Shot with ff_desc, lf_desc, motion_desc, variation_typeCamera - Camera with parent-child relationshipsFrame - Frame with shot_idx, frame_type, visible charactersImageOutput / VideoOutput - Generation outputs with save methodsThis pipeline includes face identity improvements validated through 257 experiments (70% improvement in face distance, from 0.74 to 0.22):
Reference Image Selector: Face identity is the #1 priority when selecting reference images. The front-view portrait is always included when a character's face is visible.
Character Portraits: Enhanced prompts generate identity-critical details (exact nose shape, eye spacing, jawline, distinguishing marks) for cross-scene recognition.
Video Prompt Face Lock: Every video generation prompt is prepended with a face identity instruction requiring the character's face to remain identical to the starting frame throughout the clip.
character_portraits_registry to skip AI portrait generationSee FACE_IDENTITY_GUIDE.md in the ViMax directory for full details.
After a run, the working directory contains:
.working_dir/script2video/
characters.json # Extracted characters
character_portraits_registry.json # Portrait paths registry
character_portraits/ # Generated portraits
0_CharacterName/
front.png
side.png
back.png
storyboard.json # Shot descriptions
camera_tree.json # Camera relationships
shots/
0/
shot_description.json
first_frame.png
last_frame.png (if medium/large variation)
video.mp4
1/
...
final_video.mp4 # Final concatenated outputTo use real photos instead of AI-generated portraits:
# Build a portrait registry pointing to your photos
character_portraits_registry = {
"Alice": {
"front": {"path": "/path/to/alice_front.png", "description": "Front view of Alice"},
"side": {"path": "/path/to/alice_side.png", "description": "Side view of Alice"},
"back": {"path": "/path/to/alice_back.png", "description": "Back view of Alice"},
}
}
# Pass to pipeline (skips portrait generation)
await pipeline(
script=script,
user_requirement=user_requirement,
style=style,
character_portraits_registry=character_portraits_registry,
)Edit the YAML config to use different models:
google/gemini-3.1-flash-image-preview (recommended for face identity)google/veo-3.1-generate-preview (recommended) or openai/sora-2gpt-4.1 (recommended) or any OpenAI-compatible modelRun from the ViMax root directory:
cd /home/node/a0/workspace/527fb591-1439-4b5b-ad5d-90f972773f95/workspace/tmp/ViMax
.venv/bin/python main_happycapy_script2video.pyReduce max_requests_per_minute in the YAML config.
© happycapy-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 74 other files (assets) in skills/capy-video-gen-skill of happycapy-ai/Happycapy-skills.
Open the folder on GitHubat commit 9ff72fe
Capy Video Gen Skill next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Capy Video Gen Skill this skillhappycapy-ai/Happycapy-skills | 137 | — | ~2.4k | Automated safety check: Notes | MIT | |
| Video Generationbytedance/deer-flow | 84k | 3 repos | ~1.4k | Automated safety check: Pass | MIT | |
| Video Cover Imageitwanger/toBeBetterJavaer | 18k | — | ~3.3k | Automated safety check: Pass | None | |
| Seedancesongguoxs/seedance-prompt-skill | 2.9k | 1 repos | ~2.5k | Automated safety check: Pass | None | |
| HyperFrames Video Entry Pointheygen-com/hyperframes | 60k | 3 repos | ~5.2k | Automated safety check: Pass | Apache-2.0 | |
| Lanshu Create AI Presenter Videocclank/lanshu-create-ai-presenter-video | 2.6k | — | ~3.6k | Automated safety check: Pass | MIT |
bytedance/deer-flow
Generates short videos from a structured JSON prompt, optionally guided by a reference image used as the first or last frame.
itwanger/toBeBetterJavaer
Generate matched 3:4, 16:9, and 4:3 short-video cover images from toBeBetterJavaer video scripts or AI/Java technical topics.
songguoxs/seedance-prompt-skill
This skill should be used when the user asks to "generate video prompts", "create Seedance prompts", "write video descriptions", mentions "Seedance", "seedance", "即梦", "即梦平台", "视频提示词", "视频生成"…
heygen-com/hyperframes
Entry point for making, editing and rendering videos from HTML compositions with HyperFrames, routing each request to the right workflow.
cclank/lanshu-create-ai-presenter-video
Turn a topic or finished script into a complete, publish-ready explainer video — led by an AI presenter from an authorized adult presenter image, or performed in one of nine visual explainer styles…
eternityspring/reelbench-skills
拉片:把一条成片拆成逐镜头的分析表——每个镜头的时长、景别、类别、运镜、画面. An agent skill from eternityspring/reelbench-skills.
happycapy-ai/Happycapy-skills
Automate HappyCapy skill creation by finding and adapting existing skills from anthropics/skills repository.
happycapy-ai/Happycapy-skills
Build a fully self-contained 360° equirectangular panorama viewer as a single HTML file.
happycapy-ai/Happycapy-skills
Generate and transform images using AI Gateway API. An agent skill from happycapy-ai/Happycapy-skills.
happycapy-ai/Happycapy-skills
Multi-model LLM Council with live dashboard. An agent skill from happycapy-ai/Happycapy-skills.
happycapy-ai/Happycapy-skills
Create polished PowerPoint (.pptx) presentations directly from a topic or content description.
happycapy-ai/Happycapy-skills
Generate world-class Instagram carousel content on any topic.
Categories
Multi-shot AI video generation pipeline with face identity consistency. Capy Video Gen Skill is an agent skill from happycapy-ai/Happycapy-skills. Multi-shot AI video generation pipeline with face identity consistency.
Capy Video Gen Skill fits situations like: the user asks to create a video from a script; wants multi-shot video with consistent characters.
Run `npx skills add happycapy-ai/Happycapy-skills --skill capy-video-gen-skill -a claude-code`. Or copy the skill folder (skills/capy-video-gen-skill in happycapy-ai/Happycapy-skills) into .claude/skills/capy-video-gen-skill in your project. Claude Code loads it when a task matches its description.
Run `npx skills add happycapy-ai/Happycapy-skills --skill capy-video-gen-skill -a codex`. Or copy the skill folder (skills/capy-video-gen-skill in happycapy-ai/Happycapy-skills) into .agents/skills/capy-video-gen-skill in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add happycapy-ai/Happycapy-skills --skill capy-video-gen-skill -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/capy-video-gen-skill, .gemini/skills/capy-video-gen-skill, .github/skills/capy-video-gen-skill and .opencode/skills/capy-video-gen-skill in your project.
Going by SKILL.md and its folder, Capy Video Gen Skill needs Python for the scripts in its folder, the command-line tools its instructions call (python) and credentials named AI_GATEWAY_API_KEY. Our summary lists: Python 3; A credential in AI_GATEWAY_API_KEY. Its frontmatter pre-approves these tools: Bash, Read, Write, Edit.
SKILL.md names 1 domain. In commands or code: ai-gateway.happycapy.ai; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Capy Video Gen Skill is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.4k tokens (SKILL.md is roughly 9.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Capy Video Gen Skill: Video Generation (bytedance/deer-flow, 84k stars), Video Cover Image (itwanger/toBeBetterJavaer, 18k stars), Seedance (songguoxs/seedance-prompt-skill, 2.9k stars) and HyperFrames Video Entry Point (heygen-com/hyperframes, 60k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
happycapy-ai (a GitHub user) maintains it in happycapy-ai/Happycapy-skills, which has 137 GitHub stars. The repository holds 28 skills in this directory. The repository was last updated on September 3, 2026.
Source: happycapy-ai/Happycapy-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.