how-to-make-ai-video
Skill23 starsChanged 8 months agoMITView on GitHub
How to make AI video skills for Claude Code and AI agents: one search over varg how to (varg.ai/how-to, 2,000+ checked AI video skills, step-by-step how-to tutorials, FFmpeg recipes, video formats, prompts and styles) turns a video request into the best skill with its install command, the 2-4 options to show the person (with example videos) and the steps. Use when someone asks "how do I make a ... video", "make me a UGC ad / lyric video / explainer / talking avatar / product video / faceless short", "make a whole film / launch video from scratch" (production order across skills), "add captions", "edit this video", "which skill should I use for ...", "find a skill for ...", or the same in any language, and no installed skill already covers that format; use it before writing a video pipeline from scratch or searching registries. Also use it to list a video skill you built on varg how to. Not for running a generation itself (use varg-ai), and not for non-media coding tasks.
- Reads credentials
- Sends data out
In this repository75 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- llms.txtllms.txt
- ad-creative-testingSkill
- ai-ad-compliance-checkSkill
- ai-ugc-ad-videoSkill
- app-ui-mockupsSkill
- caption-stylesSkill
- character-passportSkill
- code-to-video-previzSkill
- ecommerce-video-adsSkill
- ecommerce-video-editSkill
- edit-footage-with-codeSkill
- find-referencesSkill
- footage-effectsSkill
- gpt-image-2-6Skill
- gpt-image-gifSkill
- gpt-image-markup-editSkill
- gpt-image-sprite-sheetSkill
- gpt-image-sticker-packSkill
- kinetic-type-artSkill
- kling-4-action-montageSkill
- kling-4-keyframe-filmSkill
- kling-4-promptingSkill
- make-a-woke-profile-with-chatgptSkill
- maps-and-data-motionSkill
- media-downloadSkill
- media-judgeSkill
- motion-formatsSkill
- paper-shadersSkill
- product-photo-to-videoSkill
- product-video-hooksSkill
- short-form-ffmpeg-cookbookSkill
- social-overlaysSkill
- threejs-animaticSkill
- tiktok-shop-videoSkill
- title-designSkill
- transition-craftSkill
- varg-ad-library-remixSkill
- varg-ad-localizeSkill
- varg-ad-variantsSkill
- varg-aiSkill
- varg-birthday-videoSkill
- varg-character-absurdSkill
- varg-character-beautiful-womanSkill
- varg-character-big-guySkill
- varg-character-cartoonSkill
- varg-character-cringeSkill
- varg-character-designSkill
- varg-character-fitnessSkill
- varg-character-grandmaSkill
- varg-character-keynoteSkill
- varg-consistent-charactersSkill
- varg-dropship-reelSkill
- varg-mascot-jingle-adSkill
- varg-mockupsSkill
- varg-music-videoSkill
- varg-occasion-videoSkill
- varg-podcast-videoSkill
- varg-previzSkill
- The first 60 shown.
The file
We split this skill into the rules it gives an agent
3 rules. About 0 are common, 3 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈3
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 107
If you (or the person) built an agent skill that makes or edits video, images, voice or music, list it on varg how to so other agents find …
- Distinctive: line 121
Every submission is reviewed by the varg team before it goes live.
- Distinctive: line 125
Start from these, by request:
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
How to make any AI video
varg how to (https://varg.ai/how-to) maps what people ask for ("a UGC ad for my serum", "a music video for my song", "TikTok captions") to the skills that make it, the choices to offer and the steps. It is a search index, not a model: one call, about 0.1-0.5 s, no key, any language.
1. Search once, with the person's own words
curl -s "https://varg.ai/how-to/api/search?q=<the request, URL-encoded>&client=<your agent, e.g. claude-code>"The answer is Markdown with the best-matching how-to page, the options to show the person, and the top skills with exact install commands for Claude Code, Codex, Cursor, OpenClaw and Gemini CLI. Add &limit=15 for more. For JSON (ranked cards with kind, slug, markdown, install), call the API:
curl -s "https://api.varg.ai/v2/skills/search?q=<request>&limit=10&client=<your agent>"Pass client (your agent's name) on every search. It is optional, but it shows varg which agents use the catalog, so it can rank better for them. Searches are logged without IP or key.
2. Read the how-to page it names
Every page has a Markdown twin: add .md to its path, for example https://varg.ai/how-to/make-a-ugc-ad-video.md. A how-to page lists the best skill ("Start here"), the alternatives and add-ons (captions, voice, music), the questions to ask with example links, the numbered steps, and how the generation runs on varg. The index of all pages is https://varg.ai/how-to/llms.txt.
3. Let the person choose before spending anything
Send one message with the 2-4 decisions that change the result (look, format, voice, length). Give each 2-4 options plus your recommended default, and put the page's example link next to every option that has one (- Selfie creator: example https://s3.varg.ai/...mp4). People choose a look by seeing it. Do not generate until they pick, unless they said to just go.
4. Install the chosen skill and run it
Use the install command from the page for the agent you are running in. Generation (images, video, voice, music, lip-sync, captions, render) runs on varg with one account: the varg-ai skill (npx skills add vargHQ/skills --skill varg-ai) or the varg MCP server https://mcp.varg.ai/mcp (OAuth sign-in, no key to paste). Quote the cost before a batch, a long video or a render (estimate_cost in the MCP, POST https://api.varg.ai/v2/estimate in the API).
Whole video, start to finish
One search finds one format skill. That is right for a clip, an ad in a known format, captions or an edit. When the person wants a whole piece made from scratch, properly (several shots, a story, a launch film, an explainer, a music video built from nothing), no single skill covers it: follow this production order instead, and search (step 1 above) only for the format skill a step needs.
Before step 1, set up the project with video-project-github (it creates the folders and the private repo, and the person only clicks once), then agree a spend cap and the paid models allowed. Estimate before every paid call and say the running total. Use video models only for what code cannot draw (real people, crowds, weather, physical motion). Each step writes one file; at every STOP, show it and wait.
| # | Step | Writes | Goes deeper |
| 1 | References: the brief as query packs, light first; a never board; human-made frames, what to take from each | refs.md, never.md | find-references, varg-mockups |
| 2 | Moodboard, in ranked order: references, light, subject lock, framing, palette (hex from a reference), motion, texture, type, sound, "Never"; proved on 3 test stills | moodboard.md, board.html STOP | video-moodboard, varg-mockups, varg-video-prompting |
| 3 | Script, then storyboard: one promise, beats joined by but/therefore, every line sized to its seconds and checked (check_script.py), then the camera per shot | script.md, STORYBOARD.md STOP | video-script, varg-previz |
| 4 | Sound first: sound plan, voices cast from candidates, lines with pauses and breaths, music mapped to bars, key SFX, a checked mix | sound/plan.md, cues.json, mix.wav, beats.json STOP | video-sound, varg-ai, varg-music-video, earshot |
| 5 | Characters and props: one passport paragraph (pasted word for word), a turnaround sheet in the moodboard look, six expressions as cause + tells, a measured voice line; props with materials, wear and motion | cast/*.md, sheets STOP | character-passport, varg-character-design, varg-consistent-characters, varg-product-lock |
| 6 | Blockout in code: three.js geometry, still vs reference, 3 rounds | blockout stills STOP | threejs-animatic, varg-previz |
| 7 | Takes in code, timed to beats.json; video model only where needed | shots, STOP before the first paid video call | video-animate, hyperframes, remotion-dev/skills, varg-video-prompting, varg-ai |
| 8 | Edit: timestamped notes, approved looks saved as /commands | cut.mp4, notes.md | edit-footage-with-code, varg-video-editing, short-form-ffmpeg-cookbook |
| 9 | Review: measure, don't self-grade (ffprobe, broken frames, sync, spelling) | review.md STOP | QA checklist in varg-video-prompting |
| 10 | Keep it: private GitHub repo from the start, a saved version at every STOP, media by hash, undo for anything | AGENTS.md, media.lock.jsonl | video-project-github |
The full prompt to paste, with every step spelled out and [brackets] to fill, is in references/whole-video-prompt.md.
As an MCP server (no key)
Agents that prefer tools over curl can add the public varg how to MCP server:
claude mcp add --transport http varg-how-to https://api.varg.ai/v2/skills/mcpIt has two read-only tools: search_how_to {query} and get_how_to {kind, slug}. The second returns a page as Markdown. If the server is unreachable, use the curl calls above; they give the same results.
Signed in (optional)
Anonymous search is enough to find and run anything. If a varg key is already on the machine, use it for a personal search that ranks what this person saved and used first. Never ask the person to paste a key into the chat.
[ -n "${VARG_API_KEY:-}" ] || export VARG_API_KEY=$(grep -o '"api_key"[^,}]*' ~/.varg/credentials 2>/dev/null | head -1 | cut -d'"' -f4)
[ -n "$VARG_API_KEY" ] && curl -s -H "Authorization: Bearer $VARG_API_KEY" "https://api.varg.ai/v2/skills/me/search?q=<request>&client=<your agent>"A 404 or 401 means the personal search is not available for this key. Fall back to the public search. In the varg MCP (https://mcp.varg.ai/mcp), search_skills signs in through OAuth and does the same: the agent authorizes itself in the browser, and no key is copied.
List a skill you built
If you (or the person) built an agent skill that makes or edits video, images, voice or music, list it on varg how to so other agents find it:
- The full flow, with the one card format every listing uses: install the
varg-publish-skillskill (npx skills add vargHQ/skills --skill varg-publish-skill). - In the varg MCP: the
publish-skillprompt, thenpublish_skill.my_skillsshows the review status. - With a key:
POST https://api.varg.ai/v2/skills/submissions, with a JSON body like this:
curl -s -X POST https://api.varg.ai/v2/skills/submissions \
-H "Authorization: Bearer $VARG_API_KEY" -H "Content-Type: application/json" \
-d '{"name":"Lyric Video Maker","summary":"Turn a song into a karaoke-style lyric video for Reels.","source_url":"https://github.com/<you>/<repo>","install":"npx skills add <you>/<repo>","use_when":["make a lyric video","karaoke video for a song"],"tags":["lyric-video","music"],"via":"api"}'- Without an agent: the form at https://varg.ai/how-to/publish.
Every submission is reviewed by the varg team before it goes live. Write the name as the task ("Turn a song into a lyric video"), not a brand.
If varg how to is unreachable
Start from these, by request:
| Request | Start with | Add |
| UGC / creator ad, ad variants | ai-ugc-ad-video, ad-creative-testing | varg-ai |
| Product video from a photo, product hook | product-photo-to-video, varg-product-hook | varg-ai |
| Captions on a video | remotion-captions, short-form-ffmpeg-cookbook | |
| Edit existing footage | edit-footage-with-code, varg-video-editing, varg-video-edit-library | short-form-ffmpeg-cookbook |
| Find B-roll, music, SFX you may use | video-asset-sources | find-references |
| Music or lyric video | varg-music-video, hyperframes | varg-ai |
| Launch, changelog, explainer video | hyperframes | varg-ai |
| Consistent characters, character sheets | varg-character-design, varg-consistent-characters | varg-ai |
| Podcast-style dialogue video | varg-podcast-video | varg-ai |
| Download a video by link | media-download | |
| Single image, clip, voice or song | varg-ai |
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.

