/ ディレクトリ / プレイグラウンド / manim-skill
● コミュニティ Yusuke710 ⚡ 即起動

manim-skill

作者 Yusuke710 · Yusuke710/manim-skill

Claudeが自律的にManimアニメーションの設計・コード作成・レンダリング・改善を行います。「この概念を説明して」と伝えるだけで、Pythonに触れることなく動画ファイルが完成します。

Claude Code内でManimの全ワークフローを実行するスキルです。コンセプトを説明すると、Claudeがシーンコードを作成し、manimを呼び出してレンダリングし、結果を確認して、意図に合うまで繰り返し改善します。3Blue1Brown スタイルの数学・CSの解説動画向けに設計されています。

なぜ使うのか

主な機能

ライブデモ

実際の動作

manim-skill.replay ▶ 準備完了
0/0

インストール

クライアントを選択

~/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
    }
  }
}

Claude Desktop → Settings → Developer → Edit Config を開く。保存後、アプリを再起動。

~/.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 は Claude Desktop と同じ mcpServers スキーマを使用。プロジェクト設定はグローバルより優先。

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
    }
  }
}

Cline サイドバーの MCP Servers アイコンをクリックし、"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
    }
  }
}

Claude Desktop と同じ形式。Windsurf を再起動して反映。

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

Continue はマップではなくサーバーオブジェクトの配列を使用。

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

context_servers に追加。保存時に Zed がホットリロード。

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

ワンライナー。claude mcp list で確認、claude mcp remove で削除。

ユースケース

実用的な使い方: manim-skill

数学・CSの概念の直感的理解をアニメーションで表現する

👤 教育者、YouTuber、自学のために説明動画を作りたい学生 ⏱ ~45 min intermediate

使うタイミング: 言葉よりも動きで伝えた方がわかりやすい概念(勾配降下法、ソートアルゴリズム、フーリエ変換など)に適しています。

前提条件
  • manimのインストール — pip install manim(または uv add manim)を実行し、ffmpegが利用可能であることを確認してください
  • スキルのインストール — git clone https://github.com/Yusuke710/manim-skill ~/.claude/skills/manim-skill
フロー
  1. 概念を伝える
    Use manim-skill. Animate gradient descent on a 2D loss surface — ball rolling, learning rate visibly affects step size.✓ コピーしました
    → シーン設計 + コード + 低画質プレビューがレンダリングされる
  2. 反復改善する
    Slower at first, faster once it's in the valley. Label the axes.✓ コピーしました
    → コードが更新され、プレビューが再レンダリングされる
  3. 最終レンダリング
    Looks good — render at 1080p60.✓ コピーしました
    → 高画質のmp4が生成される

結果: ブログ記事に埋め込める解説動画が完成します。

注意点
  • Manimのバージョン間で破壊的変更がある — requirementsでmanimのバージョンを固定してください。本スキルのプロンプトは最新のCommunity Editionを前提としています
組み合わせ: filesystem

長い解説動画のためにシーンシリーズを構築する

👤 1つのコンセプトを複数のショットで解説する動画クリエイター ⏱ ~180 min advanced

使うタイミング: 5分程度の台本があり、それに合わせて10以上のシーンが必要な場合に使用します。

フロー
  1. 台本を渡す
    Use manim-skill. Here's my script. Break into scene beats and propose a Manim scene per beat.✓ コピーしました
    → 順序付きのシーン設計が提示される
  2. バッチでレンダリングする
    Render scenes 1-3 at preview quality; show me.✓ コピーしました
    → 3つの低画質mp4が生成される
  3. 統合する
    Ok, lock scenes 1-3. Move to 4-6.✓ コピーしました
    → 作業が進行し、確定済みのシーンは変更されない

結果: 最終レンダリングの準備が整ったシーンライブラリ一式が完成します。

注意点
  • 毎回高画質でレンダリングすると時間を浪費する-ql(低画質)で反復し、確定後にのみ-qhで最終レンダリングしてください

組み合わせ

他のMCPと組み合わせて10倍の力を

manim-skill + filesystem

プロジェクトのシーン、レンダリング結果、ドラフトを整理する

Keep scenes in project/scenes/, renders in project/renders/preview or /final.✓ コピーしました

ツール

このMCPが提供する機能

ツール入力呼び出すタイミングコスト
plan_scenes concept or script 新しいプロジェクトの最初のステップ 0
write_scene scene spec シーンごとのコード生成 0
render_manim scene file, quality プレビューおよび最終レンダリング local CPU/GPU
refine_scene scene + feedback アニメーションの反復改善 0

コストと制限

運用コスト

APIクォータ
なし
呼び出しあたりのトークン
中程度 — コードの反復処理
金額
無料。ローカル環境のみで動作します
ヒント
常に低画質で反復し、最終レンダリングは1回だけ行ってください。

セキュリティ

権限、シークレット、影響範囲

認証情報の保管: なし
データ送信先: スキルからのデータ送信なし

トラブルシューティング

よくあるエラーと対処法

manim import errors

Manim CEとGLの違いに注意してください。レガシーの3b1bバージョンではなく、Community Edition(pip install manim)がインストールされていることを確認してください

確認: python -c 'import manim; print(manim.__version__)'
Render hangs or is very slow

反復作業には-qlを使用し、-qhは最終段階でのみ使用してください。ffmpegが利用可能か確認してください。

確認: ffmpeg -version
Weird layout — objects overlap

生の座標ではなく、配置用プリミティブ(next_to, align_to)を使用してください

代替案

manim-skill 他との比較

代替案代わりに使う場面トレードオフ
After Effects / Motion Canvasビジュアルタイムラインツールを使いたい場合コードベースではなく、LLMとの連携に不向き
paperbanana-skillアニメーションではなく静的な学術図表が必要な場合出力形式が異なる

その他

リソース

📖 GitHub の公式 README を読む

🐙 オープンな issue を見る

🔍 400以上のMCPサーバーとSkillsを見る