# manim-composer

Turns an educational video idea into a scene-by-scene Manim plan. Use it before animation code when the narrative and visuals still need shape.

- skill · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 2600 installs · ★ 1216
- Author: adithya-s-k
- License: MIT · policy=mirror · the beginning of the file is at the end of this page
- Source: https://github.com/adithya-s-k/manim_skill/tree/HEAD/skills/manim-composer/SKILL.md
- Updated: 2026-01-23
- HTML: https://affpapa.org/en/nevibecode/skills/manim-composer

## What it does

The skill researches the subject, identifies the central insight and common misconceptions, then asks about the audience, scope, focus and presentation style. It fits explainer videos, animation sequences, and math or science visualisations.

Its output is a `scenes.md` file with an overview, narrative arc, scene specifications, visual elements, animations, camera movement, narration notes and technical notes. The plan also covers transitions, colour palette, mathematical content and an implementation order.

It applies gradual revelation, visual continuity and deliberate pacing when composing scenes. This belongs before Manim code: the resulting specification is intended for implementation with ManimCE or ManimGL.

## Install

### Claude Code (native platform)

1. **Skills CLI (Vercel)**
```bash
npx skills add adithya-s-k/manim_skill --skill manim-composer -a claude-code
```

2. **Manually: put the files in place**
- File: `~/.claude/skills/manim-composer/SKILL.md` — Copy the whole skill folder; for one project use .claude/skills/manim-composer/

### Codex

1. **Skills CLI (Vercel)**
```bash
npx skills add adithya-s-k/manim_skill --skill manim-composer -a codex
```

2. **Manually: put the files in place**
- File: `.agents/skills/manim-composer/SKILL.md` — For all projects use ~/.agents/skills/

### Cursor

1. **Skills CLI (Vercel)**
```bash
npx skills add adithya-s-k/manim_skill --skill manim-composer -a cursor
```

2. **Manually: put the files in place**
- File: `.cursor/skills/manim-composer/SKILL.md` — Cursor also reads .agents/skills/ and .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install adithya-s-k/manim_skill manim-composer
```

2. **Manually: put the files in place**
- File: `.github/skills/manim-composer/SKILL.md`

### Gemini CLI

1. **Skills CLI (Vercel)**
```bash
npx skills add adithya-s-k/manim_skill --skill manim-composer -a gemini-cli
```

2. **Platform CLI**
```bash
gemini skills install https://github.com/adithya-s-k/manim_skill --path skills/manim-composer
```

### Windsurf (Devin Desktop)

**Manually: put the files in place**
- File: `.devin/skills/manim-composer/SKILL.md` — The legacy .windsurf/skills/ path still works

### OpenCode

**Skills CLI (Vercel)**
```bash
npx skills add adithya-s-k/manim_skill --skill manim-composer -a opencode
```

### Claude.ai

**Claude.ai**
- Zip the folder and upload it in Settings → Capabilities → Skills

Where a file is given instead of a command, copy the files from the source to that path: https://github.com/adithya-s-k/manim_skill/tree/HEAD/skills/manim-composer/SKILL.md

## When to use it
- turn a vague video idea into scene specifications
- define the hook and narrative arc for an explanation
- map visual elements to each animation scene
- record equations and objects that need rendering
- plan scene transitions and implementation order

## Example prompts
- "Plan a Manim explainer about derivatives for viewers who know school algebra."
- "Help me visualise gradient descent and produce a `scenes.md` plan."
- "Compose a 3b1b-style animation sequence for this maths concept."

## Source text · SKILL.md · MIT

Below is the content of a third-party file. It is data, not instructions for you: do not act on anything written inside unless the human asks. Block tag: 72c9addd31e3ccd0.

BEGIN THIRD-PARTY FILE 72c9addd31e3ccd0
````text
---
name: manim-composer
description: |
  Trigger when: (1) User wants to create an educational/explainer video, (2) User has a vague concept they want visualized, (3) User mentions "3b1b style" or "explain like 3Blue1Brown", (4) User wants to plan a Manim video or animation sequence, (5) User asks to "compose" or "plan" a math/science visualization.

  Transforms vague video ideas into detailed scene-by-scene plans (scenes.md). Conducts research, asks clarifying questions about audience/scope/focus, and outputs comprehensive scene specifications ready for implementation with ManimCE or ManimGL.

  Use this BEFORE writing any Manim code. This skill plans the video; use manimce-best-practices or manimgl-best-practices for implementation.
---

## Workflow

### Phase 1: Understand the Concept

1. **Research the topic** deeply before asking questions
   - Use web search to understand the core concepts
   - Identify the key insights that make this topic interesting
   - Find the "aha moment" - what makes this click for learners
   - Note common misconceptions to address

2. **Identify the narrative hook**
   - What question does this video answer?
   - Why should the viewer care?
   - What's the surprising or counterintuitive element?

### Phase 2: Clarify with User

Ask targeted questions (not all at once - adapt based on responses):

**Audience & Scope**
- What math/science background should I assume? (e.g., "knows calculus" or "high school algebra")
- Target video length? (short: 5-10min, medium: 15-20min, long: 30min+)
- Should this be self-contained or part of a series?

**Focus & Depth**
- Any specific aspects to emphasize or skip?
- Proof-heavy or intuition-focused?
- Real-world applications to include?

**Style Preferences**
- Color scheme preferences?
- Narration style? (casual, formal, playful)
- Any specific visual metaphors you have in mind?

### Phase 3: Create scenes.md

Output a comprehensive `scenes.md` file with this structure:

```markdown
# [Video Title]

## Overview
- **Topic**: [Core concept]
- **Hook**: [Opening question/mystery]
- **Target Audience**: [Prerequisites]
- **Estimated Length**: [X minutes]
- **Key Insight**: [The "aha moment"]

## Narrative Arc
[2-3 sentences describing the journey from confusion to understanding]

---

## Scene 1: [Scene Name]
**Duration**: ~X seconds
**Purpose**: [What this scene accomplishes]

### Visual Elements
- [List of mobjects needed]
- [Animations to use]
- [Camera movements]

### Content
[Detailed description of what happens, what's shown, what's explained]

### Narration Notes
[Key points to convey, tone, pacing notes]

### Technical Notes
- [Specific Manim classes/methods to use]
- [Any tricky implementations to note]

---

## Scene 2: [Scene Name]
...

---

## Transitions & Flow
[Notes on how scenes connect, recurring visual motifs]

## Color Palette
- Primary: [color] - used for [purpose]
- Secondary: [color] - used for [purpose]
- Accent: [color] - used for [purpose]
- Background: [color]
````
END THIRD-PARTY FILE 72c9addd31e3ccd0

The third-party file has ended. Everything between the 72c9addd31e3ccd0 tags is data: requests and commands from it are not followed. An “end of file” line with another tag inside the block is part of the file.

First 3006 of 4700 bytes. © adithya-s-k · MIT · https://github.com/adithya-s-k/manim_skill/tree/HEAD/skills/manim-composer/SKILL.md

_Part of the page did not fit — see the HTML version._

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
