Agent skill

manim-composer

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.

Stars 711
Forks 53

Install this agent skill to your Project

npx add-skill https://github.com/adithya-s-k/manim_skill/tree/main/skills/manim-composer

SKILL.md

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]

## Mathematical Content
[List of equations, formulas, or mathematical objects that need to be rendered]

## Implementation Order
[Suggested order for implementing scenes, noting dependencies]

3b1b Style Principles

Apply these principles when composing scenes:

Visual Storytelling

  • Show, don't just tell - Every concept needs a visual representation
  • Progressive revelation - Build complexity gradually, don't show everything at once
  • Visual continuity - Transform objects rather than replacing them when possible

Pacing & Rhythm

  • Pause for insight - Give viewers time to absorb key moments
  • Vary the pace - Mix quick sequences with slower explanations
  • End scenes with resolution - Each scene should feel complete

Mathematical Beauty

  • Emphasize elegance - Highlight when math is surprisingly simple or beautiful
  • Connect representations - Show the same concept multiple ways (algebraic, geometric, intuitive)
  • Embrace abstraction gradually - Start concrete, then generalize

Engagement Techniques

  • Pose questions - Make viewers curious before revealing answers
  • Acknowledge difficulty - "This might seem confusing at first..."
  • Celebrate insight - Make the "aha moment" feel earned

References

  • references/narrative-patterns.md - Common 3b1b narrative structures
  • references/visual-techniques.md - Effective visualization patterns
  • references/scene-examples.md - Example scenes.md excerpts

Templates

  • templates/scenes-template.md - Blank scenes.md template

Expand your agent's capabilities with these related and highly-rated skills.

adithya-s-k/manim_skill

manimgl-best-practices

Trigger when: (1) User mentions "manimgl" or "ManimGL" or "3b1b manim", (2) Code contains `from manimlib import *`, (3) User runs `manimgl` CLI commands, (4) Working with InteractiveScene, self.frame, self.embed(), ShowCreation(), or ManimGL-specific patterns. Best practices for ManimGL (Grant Sanderson's 3Blue1Brown version) - OpenGL-based animation engine with interactive development. Covers InteractiveScene, Tex with t2c, camera frame control, interactive mode (-se flag), 3D rendering, and checkpoint_paste() workflow. NOT for Manim Community Edition (which uses `manim` imports and `manim` CLI).

711 53
Explore
adithya-s-k/manim_skill

manimce-best-practices

Trigger when: (1) User mentions "manim" or "Manim Community" or "ManimCE", (2) Code contains `from manim import *`, (3) User runs `manim` CLI commands, (4) Working with Scene, MathTex, Create(), or ManimCE-specific classes. Best practices for Manim Community Edition - the community-maintained Python animation engine. Covers Scene structure, animations, LaTeX/MathTex, 3D with ThreeDScene, camera control, styling, and CLI usage. NOT for ManimGL/3b1b version (which uses `manimlib` imports and `manimgl` CLI).

711 53
Explore
computerlovetech/agr

migrate-to-skills

427 36
Explore
computerlovetech/agr

discover-assumptions

Use after solution concepts exist to surface and prioritize assumptions behind outcomes, opportunities, or solution ideas and design experiments to test them.

427 36
Explore
computerlovetech/agr

discover-opportunities

Use after outcomes are defined to discover opportunities, unmet needs, market gaps, or JTBD insights before choosing solutions.

427 36
Explore
computerlovetech/agr

discover-outcomes

Use at the start of product strategy to define or refine desired outcomes and success metrics (e.g., for Opportunity Solution Trees or continuous discovery) before selecting opportunities or solutions.

427 36
Explore

Didn't find tool you were looking for?

Be as detailed as possible for better results