animation-direction
Use when turning narrated video/audio into synced code-rendered motion graphics — narration -> timestamped transcript -> scene plan -> approval gate ->…
Skill by Leostruka
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/leostruka-animation-direction
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
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
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/animation-direction
What's inside
- Skill name
animation-direction- Description
- Use when turning narrated video/audio into synced code-rendered motion graphics — narration -> timestamped transcript -> scene plan -> approval gate -> Remotion render -> ffmpeg composite. Covers the motion vocabulary, beat-to-visual mapping, scene-plan v2 schema, and the mandatory plan gate via extensions/asr + extensions/remotion-render.
- License
- MIT
- Instructions
- 61 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Animation Direction
Motion-graphics direction without a video editor: "explain X" -> synced
b-roll/infographic animation. Corrections happen at the cheap plan
stage, never post-render.
## Pipeline
1. **Enrich** — `extensions/asr/transcribe.py url|file` (yt-dlp +
whisper.cpp, offline) -> `{text, segments[{start,end,text}]}`;
bootstrap via `extensions/asr/bootstrap.py` (explicit fetch only).
2. **Analyze** — keyframes (ffmpeg scene-select) + semantic beats: what
concept each segment explains.
3. **Plan** — scene-plan v2 per beat:
`{id, sync_range:[s,e], visual:{type,props},
motion_spec:{easing,enter,exit,enter_s,exit_s}, overlay?}`.
4. **GATE (hard)** — render nothing until the plan is approved:
`plan_check.py` output + `ask_user_question`/ledger sign-off.
5. **Render** — `extensions/remotion-render/render.py plan.json
--workdir out/` -> Remotion project -> `npx remotion render`.
6. **Composite** — overlay on source via ffmpeg
(`extensions/craft-bridge` filmcraft commands or media-tools path).
## Motion vocabulary
- Easings: `linear` (data/tickers), `spring` (emphasis, diagrams),
`easeOut` (default entrances).
- Entrances: `fade` (default), `slideUp` (titles/steps), `scale`
(callouts), `none` (cuts). Exits default `fade`, `none` on cut.
- Timing budgets: entrance <= 0.5s and <= half the beat; holds >= 1.5s
for text; transitions only between narration cuts.
## Beat -> visual mapping
| Beat | visual.type | Notes |
|---|---|---|
| Claim / definition | `kinetic_text` | <= ~12 words on screen |
| Process / sequence | `diagram_nodes` | stagger 6f per node |
| Number / metric | `counter` | count up over ~1s + label |
| Screenshot / asset | `pan_zoom` | slow zoom 1.0->~1.15 |
Sync rules: beat duration >= read time (160 WPM); one visual on screen
unless `overlay: true`; no motion during narration cuts.
## Renderer selection
Default **Remotion** (this extension). Blender via `operate-blender`
when the visual is 3D. After-Effects JSX only if the user already has
AE. No paid TTS/ASR services; plan approval is a hard gate, always.
## Files
- `extensions/asr/` — transcribe + bootstrap.
- `extensions/remotion-render/` — `plan_check.py` (pre-gate validator:
sync_range vs audio, overlap collisions, read-time + budget warnings),
`render.py` (materialize template + render), `templates/remotion-project/`
(Root + PlanComposition + primitives).
- Plan contract extends `craft-bridge` scene_manifest v1 with
`motion_spec` + `sync_range` (v2).From Leostruka/devin-bundle, MIT.
More from Leostruka/devin-bundle
- 0.570score
debugging
Leostruka
Use when the user says 'diagnose', 'debug this', reports something broken/throwing/failing/slow, when encountering a bug/test failure/unexpected behavior and…
SkillAFreshness: AClaude Code +9 - 0.565score
ask-bundle
Leostruka
Use when deciding which skill or flow fits your situation — the meta-router entry point for this bundle (direct specialist skills, multi-skill flows, local…
SkillAFreshness: AClaude Code +9 - 0.565score
code-review
Leostruka
Use when completing a task, reviewing a branch or PR, before merging, when the user asks to 'review since X', when publishing a GitHub PR review with inline…
SkillAFreshness: AClaude Code +9 - 0.565score
ai-tools
Leostruka
Use when running local, offline-first ML tooling — mechanistic interpretability PoCs like refusal-direction ablation on local safetensors or the HF cache, or…
SkillAFreshness: AClaude Code +9 - 0.565score
architecture
Leostruka
Use when designing modules, seams, and adapters, when evaluating module depth and identifying deepening opportunities in a codebase, or when modernizing…
SkillAFreshness: AClaude Code +9 - 0.565score
architecture-diagrams
Leostruka
Use when the deliverable is a physical diagram artifact (.svg/.png) — C4 models, dense class diagrams, network topology rendered via PlantUML.
SkillAFreshness: AClaude Code +9 - 0.565score
computer-use
Leostruka
Use when you need to see or control the local screen (screenshots, screen recording with video + contact sheet for catching transient bugs/animations, mouse…
SkillAFreshness: AClaude Code +9 - 0.565score
context-hygiene
Leostruka
Use when context is growing large or the agent forgets earlier instructions, when deciding clear vs compact, when processing documents/logs >50k tokens, when…
SkillAFreshness: AClaude Code +9 - 0.565score
cu-realtime
Leostruka
Use when computer-use or terminal automation needs the fastest reaction the runtime allows - event waits instead of screenshot polling, text perception…
SkillAFreshness: AClaude Code +9 - 0.560score
ascii-art
Leostruka
Use when generating animated ASCII art for artifacts the agent produces - README banners (SVG), CLI splash screens, loading/404 states or decorative pieces in…
SkillAFreshness: AClaude Code +9 - 0.539score
data-analyst
Leostruka
Use when the user asks to query a database, analyze data, create charts/visualizations, explore data patterns, or asks business questions about data.
SkillAFreshness: AClaude Code +9 - 0.539score
database
Leostruka
Use when the user wants to design, migrate, query, or optimize a database.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 1
- Last commit (this folder)
- Oct 10, 2026 (18 days ago)
- Last release
- Oct 24, 2026 (4 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/Leostruka/devin-bundle
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from Leostruka
- 0.570score
debugging
Leostruka
Use when the user says 'diagnose', 'debug this', reports something broken/throwing/failing/slow, when encountering a bug/test failure/unexpected behavior and…
SkillAFreshness: AClaude Code +9 - 0.565score
code-review
Leostruka
Use when completing a task, reviewing a branch or PR, before merging, when the user asks to 'review since X', when publishing a GitHub PR review with inline…
SkillAFreshness: AClaude Code +9 - 0.565score
ask-bundle
Leostruka
Use when deciding which skill or flow fits your situation — the meta-router entry point for this bundle (direct specialist skills, multi-skill flows, local…
SkillAFreshness: AClaude Code +9 - 0.565score
ai-tools
Leostruka
Use when running local, offline-first ML tooling — mechanistic interpretability PoCs like refusal-direction ablation on local safetensors or the HF cache, or…
SkillAFreshness: AClaude Code +9 - 0.565score
architecture
Leostruka
Use when designing modules, seams, and adapters, when evaluating module depth and identifying deepening opportunities in a codebase, or when modernizing…
SkillAFreshness: AClaude Code +9 - 0.565score
architecture-diagrams
Leostruka
Use when the deliverable is a physical diagram artifact (.svg/.png) — C4 models, dense class diagrams, network topology rendered via PlantUML.
SkillAFreshness: AClaude Code +9
Cite this page
animation-direction skill. Agent Mart. https://agentmart.dev/skills/leostruka-animation-direction (last updated 2026-10-24)