animated-explainer
Build an animated, data-driven explainer film for a real system — a canvas film that renders live from the product's own data and cannot drift, not an…
Skill by Ability.ai
Install
Works with Claude Code. Read the repository before you give any tool access to your data.
npx agentmarket install skill/abilityai-animated-explainer
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: design, data
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/animated-explainer
Tools it pre-approves 9
From allowed-tools in SKILL.md: the agent may use these without asking you each time.
Read,Write,Edit,Bash,Glob,Grep,Skill,AskUserQuestion,WebFetch
What's inside
- Skill name
animated-explainer- Description
- Build an animated, data-driven explainer film for a real system — a canvas film that renders live from the product's own data and cannot drift, not an exported video. Can additionally stamp the finished film into a voiced MP4 (deterministic frame render + timed ElevenLabs narration) for channels that only take a video file. Use when someone wants to explain how a system works visually, wants an explainer/hero video, references a motion-graphics explainer to imitate, or asks to show a mechanism rather than describe it. NOT for static diagrams or single illustrations.
- License
- Apache-2.0
- Allowed tools
- Read,, Write,, Edit,, Bash,, Glob,, Grep,, Skill,, AskUserQuestion,, WebFetch
- Metadata
- author: Ability.ai · created: 2026-07-15 · version: 1.26
- Instructions
- 344 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
- Pre-approves some shell commands
Files (6)
- SKILL.md
- reference.md
- check-page.js · scripts/
- export-film.js · scripts/
- shoot-beats.js · scripts/
- voice-film.py · scripts/
SKILL.md (first lines)
# Animated Explainer > ℹ️ **First, set expectations:** before anything else, print one short line with this skill's version and its most recent change — the top entry of `metadata.changelog` above — e.g. `animated-explainer vX.Y — recent: <summary>`. Then proceed. ultrathink ## Purpose Build an **animated explainer of how a real system works** — rendered live to a `<canvas>` from the system's **own data**, so it regenerates on every publish and can never drift from what the product reports. **The thesis: a data-driven film, not a video.** An exported MP4 is stale the day the data moves, and it quietly becomes a lie. A film that reads `data/*.json` at render time changes when the system changes. (This is testable: on the forecasting build, a data refresh landed mid-deploy and the calibration curve visibly redrew.) **Use this when** someone wants to *show a mechanism* — how a system works, why it's trustworthy, what happens to one item as it moves through. **Don't use this for** static diagrams or illustrations — a diagram skill (if your workspace has one) is the right tool there. This skill is specifically **time-based motion driven by live data**. ## State Dependencies | Source | Location | Read | Write | |---|---|---|---| | The system's real data | product repo `data/*.json` (or equivalent) | ✅ | ❌ never | | The system's source of truth | `ARCHITECTURE.md`, papers, specs — **not** published artifacts | ✅ | ❌ | | Brand tokens | the product's `globals.css` / theme file | ✅ | ❌ | | Working film | `<scratch>/film.html` (standalone, no build) | ✅ | ✅ | | Shipped component | product repo `components/**/explainer.tsx` | ✅ | ✅ | | Verification rigs | `scripts/shoot-beats.js`, `scripts/check-page.js` (this skill) | ✅ | ❌ | | Export rigs | `scripts/export-film.js`, `scripts/voice-film.py` (this skill) | ✅ | ❌ | | Narration script | `<film dir>/narration.json` (timed lines, next to the film) | ✅ | ✅ | | Voiced export | `<film dir>/export/` — MP4 stamp + `vo_clips/` TTS cache | ✅ | ✅ | ## Composes | Skill | When | |---|---| | a site-publishing skill | Final step, only if the film ships to a live site and the user has asked for a deploy. Optional — this skill never requires it. | ## Credentials & cold start Building, verifying, and shipping a film needs **no credentials at all**. Only the optional voiced export (Step 11) reads any: | Key | Needed for | Missing → | |---|---|---| | `ELEVENLABS_API_KEY` | Step 11 TTS narration | Fail fast with `ELEVENLABS_API_KEY not set — add it to this agent's credentials`; every earlier step still runs, and the silent MP4 export is unaffected. | | `ELEVENLABS_VOICE_ID` | default voice for Step 11 | Optional — `voice_id` in `narration.json` or `--voice` overrides it. Absent with no override → the tool stops and names the three ways to supply it. | | `PLAYWRIGHT_DIR` | pointing the render scripts at an existing playwright install | Optional — the scripts resolve playwright from the caller's cwd first, then this variable, then the skill directory. | Script paths below are relative to **this skill's directory**; run them from there, or prefix with the directory the skill was injected into. --- ## Core principles These are load-bearing. Each one was paid for. ### 1. The data is the story's boss — interrogate it before you design the arc Decide what's **true** before you decide what's **compelling**. Concepts must die here; that is the step working, not failing. Two died on the forecasting build, both after the storyboard felt great: - *"watch it get better over time"* — the metric was **flat** (0.217 → 0.188 → 0.210). Noise, not learning. Animating it would have faked the one number the brand rests on. - *"performance improving"* curve — the sample was **back-loaded** (Q1 spanned 3 months, Q4 spanned 1 day), so the apparent decline was a **sampling artifact**, not improvement. Run the numbers yourself. Check the **shape and the sampling**, not just the headline. Finding this at storyboard costs an hour; finding it after a render costs a week; not finding it costs your credibility. ### 2. Read the source of truth, not the published artifacts Published data dirs are a *curated snapshot* of a system, not the system. On that build the whole first film was built from the website's `data/` and got the architecture **wrong** — the real mechanism was in `ARCHITECTURE.md` and an unpublished paper. Find the design docs. ### 3. One concrete worked example beats any amount of abstraction Follow **one real item end to end**. The film only worked once it became a single real forecast — *said 88%, world said no* — traced from question to consequence. **Prefer a failure.** A miss shows the machine doing its job, is impossible to read as cherry-picking, and gives every downstream loop something real to react to. ### 4. Explainer, not advertisement Assume the viewer knows nothing. It must read **with** a voiceover on top and **without** one. Open on the **problem**, not the architecture — state what's broken, then reveal the machine as the answer. A hook is not a flourish; it's the reason to keep watching. ### 5. Separate the mechanism from the numbers Statistics clutter an explanation. Carry the mechanism with **symbolic marks**, then put real figures at the very end — or nowhere. If a mark is not 1:1 with a thing, **say so on screen** (`1 dot ≈ 30 beliefs`). If something is too rare to be field scale (17 of 44,510 = 0.6 of a dot), draw it 1:1 as an annotated callout and label it — never silently mix scales. ### 6. Nothing teleports If a thing appears somewhere new, **animate it getting there**. A chart that materialises is a cut; a chart that dots visibly *fall onto* is an explanation. This was the single biggest "it doesn't explain it better" complaint on that build, and fixing it changed the film. ### 7. Lock the layout One circuit. Nothing crosses anything. Spaghetti beziers read as *complexity*, not as a system. A horizontal spine + a return rail + entities sitting **on** the rail reads instantly. ### 8. Show the part that doesn't work
From Abilityai/trinity-skills, Apache-2.0.
More from Abilityai/trinity-skills
- 0.570score
explain-visually
Ability.ai
Explain a complex topic back to you with visuals - the right diagram for each facet (flowchart, timeline, sequence, schema/ER, state machine, chart…
SkillAFreshness: AClaude Code - 0.570score
file-indexer
Abilityai
Generate a comprehensive file system index with directory tree, file sizes, and modification dates.
SkillAFreshness: AClaude Code +9 - 0.567score
gemini-critic
Ability.ai
Ask Gemini's most powerful model for an independent second opinion - critique code with fresh eyes, evaluate an article, challenge a plan.
SkillAFreshness: AClaude Code +9 - 0.566score
agent-fleet-analysis
Ability.ai
Scan one or more directories of agents in ANY paradigm — Claude Code, n8n workflow exports, framework apps (LangChain/CrewAI/AutoGen), or freeform-coded…
SkillAFreshness: AClaude Code +9 - 0.565score
add-pipeline
Ability.ai
Scaffold a Trinity-compatible long-running pipeline inside any agent — creates projects/<slug>/{project.md, pipeline.yaml, instances/}, copies…
SkillAFreshness: AClaude Code - 0.565score
document-extractor
Abilityai
Extracts key information from documents (PDFs, images, text files) in a folder and creates structured markdown summaries with the same filename but .md…
SkillAFreshness: AClaude Code +9 - 0.561score
create-playbook
Ability.ai
Create a new skill or playbook.
SkillAFreshness: AClaude Code +9 - 0.561score
close
Ability.ai
Close the current issue without a git commit — adds summary comment and marks done.
SkillAFreshness: AClaude Code +9 - 0.561score
create-explanatory-image
Ruby
Generate explanatory diagrams and infographics that visually communicate concepts.
SkillAFreshness: AClaude Code +9 - 0.561score
autoplan
Ability.ai
Analyze a skill issue before implementing — reads the affected SKILL.md, identifies what changes are needed and any risks
SkillAFreshness: AClaude Code +9 - 0.561score
add-git-sync
Ability.ai
Add git-as-state hooks to an agent — auto-commits on Stop, rebases on SessionStart, snapshots on PreCompact.
SkillAFreshness: AClaude Code +9 - 0.561score
commit
Ability.ai
Commit changed skill files and close the in-progress issue — writes a traceability commit message referencing the issue number
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 1
- Open issues
- 1
- Last commit (this folder)
- Aug 17, 2026 (2 months ago)
- Last release
- Oct 21, 2026 (6 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- Version
- 1.26
- License
- Apache-2.0
- Repository
- github.com/Abilityai/trinity-skills
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Ability.ai
- 0.570score
explain-visually
Ability.ai
Explain a complex topic back to you with visuals - the right diagram for each facet (flowchart, timeline, sequence, schema/ER, state machine, chart…
SkillAFreshness: AClaude Code - 0.567score
gemini-critic
Ability.ai
Ask Gemini's most powerful model for an independent second opinion - critique code with fresh eyes, evaluate an article, challenge a plan.
SkillAFreshness: AClaude Code +9 - 0.566score
agent-fleet-analysis
Ability.ai
Scan one or more directories of agents in ANY paradigm — Claude Code, n8n workflow exports, framework apps (LangChain/CrewAI/AutoGen), or freeform-coded…
SkillAFreshness: AClaude Code +9 - 0.565score
add-pipeline
Ability.ai
Scaffold a Trinity-compatible long-running pipeline inside any agent — creates projects/<slug>/{project.md, pipeline.yaml, instances/}, copies…
SkillAFreshness: AClaude Code - 0.561score
close
Ability.ai
Close the current issue without a git commit — adds summary comment and marks done.
SkillAFreshness: AClaude Code +9 - 0.561score
add-git-sync
Ability.ai
Add git-as-state hooks to an agent — auto-commits on Stop, rebases on SessionStart, snapshots on PreCompact.
SkillAFreshness: AClaude Code +9
Cite this page
animated-explainer skill. Agent Mart. https://agentmart.dev/skills/abilityai-animated-explainer (last updated 2026-10-24)