This is a full production pipeline for creating animated explainer videos, from research through final render. It walks you through six stages: research your topic, pick from three concept proposals (with credit estimates), approve a script, finalize a scene plan, then let the gen-ai CLI generate assets and render everything. It runs in two modes: interactive stops at every creative checkpoint for your approval, auto runs end to end and trusts Claude's judgment. The standout feature is that it forces itself to read dedicated director skills before each stage, so you get consistent structure instead of improvised output. Built by Picsart, costs roughly 1500 to 3000 credits per video depending on length and complexity.
npx -y skills add PicsArt/gen-ai-skills --skill gen-ai-explainer --agent claude-codeInstalls into .claude/skills of the current project.
You drive a 6-stage pipeline. You handle the creative stages in chat; the gen-ai
CLI handles all media generation and rendering. State lives in
~/.gen-ai/projects/explainer/<slug>/ as JSON files.
Before anything else, decide which mode the user wants:
The 4 creative stages each end with a hard STOP. You present, the user
reviews, types continue / edits / picks. The full Rule One below applies.
Right for first-time use, premium production, anyone who hasn't told you
otherwise.
You execute all 6 stages end-to-end without STOPping. You still present each artifact briefly so the user can interrupt if they want, but you do NOT wait. You make the picks: best concept of the 3, best playbook for the concept, script as you'd write it. The user is signing up for "trust your judgment, go end-to-end."
Detect auto mode when the user's request includes one of:
auto, auto mode, auto-approve, auto approveno approvals, skip approvals, don't ask, no questionsjust do it, yolo, full auto, end to endrun it through, run all stages, no checksIf you see ANY of those, set mode = auto. Otherwise, mode = interactive.
If the user's wording is ambiguous, ask ONCE at the start: "Interactive (I pause at each stage for your review) or auto (I run end to end and you get the final video)?" — then proceed.
{ "status": "error", "hint": "..." }, stop and tell the user.| Stage | Interactive | Auto |
|---|---|---|
| research | Present findings, STOP | Present findings briefly, continue |
| proposal | Show 3 concepts + estimate, STOP | Show 3 concepts + estimate, pick best yourself, announce pick, continue |
| script | Show full script, STOP | Show script, continue |
| scene_plan | Show scene table, STOP | Show scene table, continue |
| assets | Announce + confirm spending | Announce spending (no confirmation), fire |
| render | Run | Run |
| metadata + upload | Draft + run | Draft + run |
Every creative stage is a hard stop. You do the work, present it, then STOP and wait for the user. Do NOT chain stages without explicit user approval.
references/research-director.md. STOP after presenting findings.references/proposal-director.md. Pick a playbook with each concept. STOP until the user picks A / B / C.references/script-director.md. Read the chosen playbook's audio.voice_style and reflect it in speaker_directions. STOP after showing the script.references/scene-plan-director.md. Include the playbook field at the top of scene-plan.json. STOP after showing the scene table — this is the last gate before money is spent.references/asset-director.md. Write scene-plan.json (with playbook field) and script.json into the project dir. Then run gen-ai explainer:assets <slug> — the CLI auto-applies the playbook's image_prompt_prefix, image_negative_prompt, and music_mood.references/render-director.md. Run gen-ai explainer:render <slug> — playbook auto-flows from the asset manifest; ffmpeg uses its music_volume_db and narration_to_music_weight_ratio.After stage 6: draft title / description / chapters / hashtags in chat. Then run
gen-ai upload-to-drive <slug>/explainer.mp4 --name "<title>". Share the URL.
Each of the 6 stages has a dedicated director skill at
~/.claude/skills/gen-ai-explainer/references/<stage>-director.md. You MUST read
the director skill BEFORE executing each stage. Not after. Not skimmed. Read.
The director files are not "background reading" — they contain the exact process, query templates, schema shapes, self-evaluation rubrics, common pitfalls, and STOP gates for that stage. Skipping them produces lower-quality output that wastes the user's credits.
references/<stage>-director.md." One line. So the
user sees you're following the protocol.| Stage | Director skill to read first |
|---|---|
| research | references/research-director.md (5 search batches, ~12-15 web searches) |
| proposal | references/proposal-director.md (3 concepts + credit estimate via gen-ai credits + gen-ai pricing --json) |
| script | references/script-director.md (narrative arc, word budget, eleven-v3 directions) |
| scene_plan | references/scene-plan-director.md (5-aspect checklist, technique library) |
| assets | references/asset-director.md (calls gen-ai explainer:assets <slug>) |
| render | references/render-director.md (calls gen-ai explainer:render <slug>) |
If you skip director-reading, the user will catch it: research will lack sourced URLs, the script will miss the narrative arc, scene plans will fail the 5-aspect checklist. Sub-quality output betrays the protocol.
This rule applies in interactive mode only. Auto mode replaces STOP with "announce and continue" per the Mode section above.
In interactive mode, the four creative stages (research / proposal / script / scene_plan) each end with a hard STOP. After presenting your output:
In interactive mode, Do NOT:
If you skip a gate in interactive mode, the user pays for visuals they didn't sign off on. The whole point of interactive mode is human-in-the-loop control.
In auto mode the user has explicitly opted out of approvals — you go through all 6 stages and produce the video. You still announce each stage's output (so the user sees what you picked) and announce the credit estimate, but you don't wait for input.
hint field and decide whether
to retry, re-plan, or surface to the user.gemini-3.1-flash-image (Nano Banana 2)seedance-2.0eleven-v3minimax-musicIf the user references an existing project, run ls ~/.gen-ai/projects/explainer/<slug>/
and decide which stage to resume from by which JSON files exist:
| Files present | Resume from |
|---|---|
only manifest.json | stage 3 (script) |
script.json | stage 4 (scene_plan) |
scene-plan.json | stage 5 (assets) |
asset-manifest.json | stage 6 (render) |
render-report.json | upload step |
See pipeline.yaml for the machine-readable manifest.
sickn33/antigravity-awesome-skills
moizibnyousaf/ai-agent-skills
github/awesome-copilot