explainer
Skill2 starsChanged 27 days agoMITView on GitHub
Guided studio for narrated, fact-checked explainer videos in a Vox-style editorial look (bold collage, flat colour fields, marker annotations, big numbers) or a paper-diorama documentary look. One idea in → sourced script in 10-second blocks → style key + per-scene prompts (or free code-built collage scenes) → offline voiceover fitted to each block → HyperFrames cut with captions, animated number callouts and an original score, in 16:9 and/or 9:16. Use for "Vox-style video", "explainer", "animated explainer", "data-driven video", "make a video about X", "why does X happen".
20 other projects use a version of this.
Adopted by
Most recently taken up by
- AJschoons/robowrighttheir own version, first seen Nov 8, 2026
- alandaitch/explainer-skilltheir own version, first seen Nov 8, 2026
- overment/skillstheir own version, first seen Nov 8, 2026
- agentic-community/mcp-gateway-registrytheir own version, first seen Nov 6, 2026
- artemnovitckii/claude-editing-skillstheir own version, first seen Nov 1, 2026
- programmerraja/claude-code-toolboxtheir own version, first seen Nov 1, 2026
Other versions20 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 20
- agentic-community/mcp-gateway-registry★ 1ksame name
- marswaveai/skills★ 82same name
- Pika-Labs/Pika-Plugins★ 40same name
- codetesla51/skills★ 32same name
- overment/skills★ 31same name
- artemnovitckii/claude-editing-skills★ 12same name
- alandaitch/explainer-skill★ 8same name
- barisgit/explainer-skill★ 2same name
- ofoxai/skills★ 2same name
- AJschoons/robowright★ 1same name
10 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.
In this repository10 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- art-stylesSkill
- caption-videoSkill
- chop-reelSkill
- launch-filmSkill
- product-demoSkill
- scoreSkill
- studioSkill
- ugc-actorSkill
- ugc-adsSkill
The file
We split this skill into the rules it gives an agent
6 rules. 0 are common, 3 are distinctive, and 3 are very specific to this project.
0
Common
Most of the 20 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 16
No internal chatter: never narrate file writes, tool checks, timing maths.
- Very specific: line 46
Create videos/<slug>/. Research every claim: web-search, cross-check each number against two independent sources, keep the URLs.
- Distinctive: line 50
Write one narration line per block, numbers spelled out, plain speech:
- Very specific: line 91
AVOID. Settings table: reference image = the style key, 10 s, 720p+, ambient sound on, save as blockNN.mp4.
- Very specific: line 108
Every take must land between 7.5 and 9.7 s.
- Distinctive: line 137
No real people's faces generated close-up.
“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
Explainer (Vox-style) → HyperFrames
A ~60 s explainer is N blocks × 10 s (60 s = 6 blocks). Block k's narration line plays over block k's
picture. Tools: .claude/skills/explainer/tools/ ($T). Style guide: references/styles.md. Worked example
with sources: examples/explainer-eiffel/.
How it should feel
Like using a well-made app, not talking to a terminal:
- One stage per message, then stop and wait. A bold stage title with one fitting emoji.
- Settings and choices as tables;
---dividers between sections; short lines, room to breathe. - No internal chatter: never narrate file writes, tool checks, timing maths. Speak only where the user acts or something is missing.
- Anything meant to be pasted goes in a code block containing only the prompt; labels and notes stay outside.
Stage 0 — silent checks (never narrated)
setup/doctor.sh --quiet. If videos/ has explainer projects (a pack.json inside), open with
"Welcome back — a new video, or continue <latest>?" instead of Stage 1.
Stage 1 — Welcome 🎬
A short welcome, a 5-row table of how it works (idea → look → voice → scenes → final cut), then ask one
question: What should the video be about? Any rough idea is fine, or find one for this week's
best topics. Stop.
Stage 2 — Topic & settings ⚙️
find one→ web-search what's current; offer the top 3, each a one-line hook (a why/how question + a surprising number + why it will look good). Skip tragedies and gossip. The user picks; never pick for them.- Otherwise sharpen the idea into a one-line angle: a question whose answer is surprising.
Then one settings table with defaults filled in; go accepts all:
| Setting | Default | Options |
| Look | collage | collage (bold editorial collage) · diorama (sepia paper documentary) |
| Pictures | code | code (free, built in HyperFrames) · ai (Higgsfield or any generator) · mixed |
| Length | 60 s | 30 s – 10 min, in 10 s blocks |
| Aspect | 16:9 | 16:9 · 9:16 · both |
Stop.
Stage 3 — Research & script (silent)
Create videos/<slug>/. Research every claim: web-search, cross-check each number against two
independent sources, keep the URLs. If sources disagree, use the safe figure or drop it. A vague true line
beats a precise false one, so never invent a number, a quote or a prediction.
Write one narration line per block, numbers spelled out, plain speech:
- Kokoro voices: 22–26 words per line. edge-tts voices: 18–20 words. The voice step corrects drift anyway.
- Shape: cold open (the most surprising fact, no greeting) → stakes → evidence (one idea per block, each concrete: a number, date or place, escalating) → the turn → resolution with a kicker that echoes block 1.
- Tone: inquisitive, exact, lightly witty. It explains; it never sells.
- Design across blocks: a recurring hero object that comes back and changes (the tower, the container, the coin); a question raised early, answered last; one reveal moment the video is remembered by.
For each block also choose a callout (the number or two-word fact on screen, ≤ 9 characters, e.g.
+15 cm, 2.5M, 7 yrs) and a visual. In code mode the visual kind is one of tower-style silhouette
(adapt the SVG), dots, bars, lean, calendar or stat. Write pack.json (format below). Show nothing yet.
Stage 4 — Voice 🎙
| Voice | Sound | Engine |
am_michael | US male, calm documentary | Kokoro (offline, default) |
bm_george | British male, measured | Kokoro |
af_heart | US female, warm and clear | Kokoro |
en-US-ChristopherNeural / en-GB-RyanNeural / en-US-JennyNeural | Microsoft neural voices | edge-tts (free, online) |
samples → voice block 1 in each of the three Kokoro voices and send the files. Stop.
Stage 5 — The brief 📋 (gate)
One message:
- a table with angle, through-line, look, pictures, length/blocks, aspect and voice
- the script, as
Block 1 … N - the sources list
End: "All good — or change anything?" Loop until approved. The user may rewrite any line.
Stage 6 — Pictures
code mode: skip to Stage 8. Every block becomes a collage scene: a colour field, paper grain, the
callout counting up, a marker circle drawing itself, and the visual.
ai / mixed mode:
- Style key 🎨: offer 3 named variants in one sentence each (same visual system, different palette or
composition, from
references/styles.md). On the pick, give the pasteable image prompt. Higgsfield:nano_banana_pro, aspect = the video's. Quote the cost and wait for a yes before generating. One image locks the look; it's attached to every scene. - Scenes 🎬: one message per block (or all at once if asked). Each gets its narration line as context and a
pasteable prompt built from the template in
references/styles.md: STYLE / SCENE / MOTION / AUDIO / AVOID. Settings table: reference image = the style key, 10 s, 720p+, ambient sound on, save asblockNN.mp4. Higgsfield directly:kling3_0pro image-to-video with the style key. Quote the total (blocks × credits) first. Or the user runs prompts in any generator they like (Veo, Kling, Runway…). - Clips come home 📥: the user drops files in
videos/<slug>/clips/. Rename obvious variants silently (Block 1.mp4→block01.mp4); ask only when a pairing is genuinely ambiguous. A block with no clip falls back to a code scene automatically.
Stage 7 — Check clips (silent)
Pull a frame from each clip and look at it. Off-style or photoreal: tighten the STYLE and AVOID lines and regenerate
that block only. Two identical failures mean rewrite the prompt, not just the seed. Readable text inside AI clips is a
fail in collage (text lives in our callouts and captions).
Stage 8 — Voice & cut (silent)
~/.local/share/hf-kokoro/bin/python $T/voice.py videos/<slug> # or --engine edge --voice en-GB-RyanNeuralEvery take must land between 7.5 and 9.7 s. The tool lists offenders: rewrite those lines (shorter or longer),
re-voice with --only 3,5, and repeat until all fit. Never time-stretch.
.venv/bin/python $T/build.py videos/<slug> [--aspect 9:16] # index.html + assets/mix.wav
cd videos/<slug> && npx --yes hyperframes@0.8.172 lint && npx --yes hyperframes@0.8.172 render -o raw.mp4
ffmpeg -y -i raw.mp4 -af loudnorm=I=-14:TP=-1:LRA=11 -c:v copy -c:a aac -b:a 192k "../../out/<Title> (16x9).mp4"lint warns about nested structure and dense tracks. Those concern the Studio timeline view, not the render,
so ignore them. Errors must be fixed. Snapshot a frame per block (snapshot . --at 2.5,12.5,…) and look:
numbers fit on one line, the marker circles the number, captions don't cover the picture.
Stage 9 — Delivery ✅
Send the MP4. Then a small table: topic, length and aspect, look and voice, sources (links). Offer: the other aspect ratio, a change to any block, or a new video.
pack.json
{ "title": "…", "angle": "…", "through_line": "…", "look": "collage", "aspect": "16:9",
"voice": { "engine": "kokoro", "name": "am_michael" },
"blocks": [ { "line": "…", "callout": { "big": "+15 cm", "label": "taller on the hottest days" },
"visual": { "kind": "bars", "values": [10, 30, 60, 100], "highlight": 3 },
"prompt": "(ai mode) full scene prompt" } ],
"sources": [ "Publisher — title: https://…" ] }Also write a human-readable pack.md (brief, script, prompts, sources). It's the project's record.
Rules
- Facts: two sources per number; sources ship with every video. No invented figures, quotes or predictions.
- Paid generation only after quoting model × count × credits and getting a yes (PLAYBOOK #1).
- No real people's faces generated close-up; use mid-shots, silhouettes or censor bars, which also avoids moderation refusals.
- The Vox look is an homage. Never use Vox's logo, name or branding in the video.
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.

