/ Annuaire / Playground / manim-skill
● Communauté Yusuke710 ⚡ Instantané

manim-skill

par Yusuke710 · Yusuke710/manim-skill

Claude autonomously plans, writes, renders, and refines Manim animations — go from 'explain this concept' to a video file without touching Python.

A skill that runs the full Manim loop inside Claude Code. You describe a concept; Claude drafts scene code, invokes manim to render, inspects the result, and iterates until it matches your intent. Built for 3Blue1Brown-style math/CS explanations.

Pourquoi l'utiliser

Fonctionnalités clés

Démo en direct

Aperçu en pratique

manim-skill.replay ▶ prêt
0/0

Installer

Choisissez votre client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "manim-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/Yusuke710/manim-skill",
        "~/.claude/skills/manim-skill"
      ],
      "_inferred": true
    }
  }
}

Ouvrez Claude Desktop → Settings → Developer → Edit Config. Redémarrez après avoir enregistré.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "manim-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/Yusuke710/manim-skill",
        "~/.claude/skills/manim-skill"
      ],
      "_inferred": true
    }
  }
}

Cursor utilise le même schéma mcpServers que Claude Desktop. La config projet l'emporte sur la globale.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "manim-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/Yusuke710/manim-skill",
        "~/.claude/skills/manim-skill"
      ],
      "_inferred": true
    }
  }
}

Cliquez sur l'icône MCP Servers dans la barre latérale Cline, puis "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "manim-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/Yusuke710/manim-skill",
        "~/.claude/skills/manim-skill"
      ],
      "_inferred": true
    }
  }
}

Même format que Claude Desktop. Redémarrez Windsurf pour appliquer.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "manim-skill",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/Yusuke710/manim-skill",
        "~/.claude/skills/manim-skill"
      ]
    }
  ]
}

Continue utilise un tableau d'objets serveur plutôt qu'une map.

~/.config/zed/settings.json
{
  "context_servers": {
    "manim-skill": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/Yusuke710/manim-skill",
          "~/.claude/skills/manim-skill"
        ]
      }
    }
  }
}

Ajoutez dans context_servers. Zed recharge à chaud à la sauvegarde.

claude mcp add manim-skill -- git clone https://github.com/Yusuke710/manim-skill ~/.claude/skills/manim-skill

Une seule ligne. Vérifiez avec claude mcp list. Supprimez avec claude mcp remove.

Cas d'usage

Usages concrets : manim-skill

Animate the intuition behind a math or CS concept

👤 Educators, YouTubers, students explaining to themselves ⏱ ~45 min intermediate

Quand l'utiliser : A concept is easier with motion than with words (gradient descent, sorting, Fourier).

Prérequis
  • manim installed — pip install manim (or uv add manim); ensure ffmpeg present
  • Skill installed — git clone https://github.com/Yusuke710/manim-skill ~/.claude/skills/manim-skill
Déroulement
  1. State the concept
    Use manim-skill. Animate gradient descent on a 2D loss surface — ball rolling, learning rate visibly affects step size.✓ Copié
    → Scene plan + code + low-q preview rendered
  2. Iterate
    Slower at first, faster once it's in the valley. Label the axes.✓ Copié
    → Code updated, re-rendered preview
  3. Final render
    Looks good — render at 1080p60.✓ Copié
    → High-q mp4 produced

Résultat : An explainer video you can embed in a blog post.

Pièges
  • Manim code has breaking changes across versions — Pin your manim version in requirements; the skill's prompts assume recent Community Edition
Combiner avec : filesystem

Build a series of scenes for a longer explainer

👤 Video creators working on a single concept over multiple shots ⏱ ~180 min advanced

Quand l'utiliser : You have a 5-minute script and need 10+ scenes to go with it.

Déroulement
  1. Feed the script
    Use manim-skill. Here's my script. Break into scene beats and propose a Manim scene per beat.✓ Copié
    → Ordered scene plan
  2. Render in batches
    Render scenes 1-3 at preview quality; show me.✓ Copié
    → Three low-q mp4s
  3. Consolidate
    Ok, lock scenes 1-3. Move to 4-6.✓ Copié
    → Work proceeds; locked scenes untouched

Résultat : A full scene library ready for final render.

Pièges
  • Rendering high-q for every iteration wastes time — Iterate at -ql (low) and only go -qh once locked

Combinaisons

Associez-le à d'autres MCPs pour un effet X10

manim-skill + filesystem

Organize a project's scenes, renders, and drafts

Keep scenes in project/scenes/, renders in project/renders/preview or /final.✓ Copié

Outils

Ce que ce MCP expose

OutilEntréesQuand appelerCoût
plan_scenes concept or script First step on any new project 0
write_scene scene spec Per-scene code generation 0
render_manim scene file, quality Preview and final renders local CPU/GPU
refine_scene scene + feedback Iterating on animation 0

Coût et limites

Coût d'exécution

Quota d'API
None
Tokens par appel
Moderate — code iterations
Monétaire
Free; local compute only
Astuce
Always iterate at low quality. Final render once.

Sécurité

Permissions, secrets, portée

Stockage des identifiants : None
Sortie de données : None from skill

Dépannage

Erreurs courantes et correctifs

manim import errors

Manim CE vs GL — make sure you're on Community (pip install manim), not the legacy 3b1b version

Vérifier : python -c 'import manim; print(manim.__version__)'
Render hangs or is very slow

Use -ql for iteration; -qh only at end. Check ffmpeg presence.

Vérifier : ffmpeg -version
Weird layout — objects overlap

Use positioning primitives (next_to, align_to) rather than raw coords

Alternatives

manim-skill vs autres

AlternativeQuand l'utiliserCompromis
After Effects / Motion CanvasYou want visual timeline toolsNot code; not LLM-friendly
paperbanana-skillStatic academic diagrams rather than animationsDifferent output

Plus

Ressources

📖 Lire le README officiel sur GitHub

🐙 Voir les issues ouvertes

🔍 Parcourir les 400+ serveurs MCP et Skills