本文へ移動
cccskills
無料GitHub で公開日本語紹介

manim-video

数学の概念や数式の導出、アルゴリズムの動きをアニメーション動画にします。構成づくりから描画、動画の結合まで、図形で理解を促す解説を制作します。

原文原文の説明を見る

Manim CE animations: 3Blue1Brown math/algo videos.

インストール方法を見る

こんなときに便利

  • 数学の概念を図形で説明したいとき
  • 数式の導出を順に見せたいとき
  • アルゴリズムの動きを可視化
  • 研究成果を解説動画にしたいとき

日本語での紹介

できること

数学や技術の内容を、図形や数式が動く解説動画にまとめます。Manim Community Editionを使い、概念の説明、数式の導出、アルゴリズムの実行過程、データの比較、システム構成図、3Dの形状を表現します。構成をplan.mdに整理し、script.pyで各場面を作成して、描画した動画をfinal.mp4に結合する流れを案内します。

こんなときに便利

式だけでは伝わりにくい数学の考え方や、処理の順序を視覚的に説明したいときに向いています。図形を先に見せてから式へ進む構成や、配色、文字サイズ、間の取り方も検討するため、教材や研究内容の解説を場面ごとに組み立てられます。

使い方の例

  • 「フーリエ級数を、図形の動きから理解できる動画にして」
  • 「このアルゴリズムの実行過程を、データ構造の変化とともに見せて」
  • 「この論文の主要な結果をアニメーションで説明して」

注意点

Python 3.10以上、Manim Community Edition v0.20以上、LaTeX、ffmpegが必要です。Linux、macOS、Windowsに対応し、GPUは不要です。ナレーションは任意で、ElevenLabsまたはQwen3-TTSを使う構成が示されています。

この紹介文は、公開されている SKILL.md をもとに AI(Claude Haiku)が作成しました。正確な仕様は下の原文を確認してください。

含まれるファイル(17)

  • SKILL.md11.9 KB
  • README.md886 B
  • references/animation-design-thinking.md7.0 KB
  • references/animations.md8.6 KB
  • references/camera-and-3d.md4.0 KB
  • references/decorations.md4.9 KB
  • references/equations.md5.9 KB
  • references/graphs-and-data.md4.5 KB
  • references/mobjects.md9.5 KB
  • references/paper-explainer.md9.1 KB
  • references/production-quality.md5.8 KB
  • references/rendering.md5.2 KB
  • references/scene-planning.md2.7 KB
  • references/troubleshooting.md4.2 KB
  • references/updaters-and-trackers.md8.3 KB
  • references/visual-design.md4.7 KB
  • scripts/setup.sh921 B

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

Manim Video Production Pipeline

When to use

Use when users request: animated explanations, math animations, concept visualizations, algorithm walkthroughs, technical explainers, 3Blue1Brown style videos, or any programmatic animation with geometric/mathematical content. Creates 3Blue1Brown-style explainer videos, algorithm visualizations, equation derivations, architecture diagrams, and data stories using Manim Community Edition.

Creative Standard

This is educational cinema. Every frame teaches. Every animation reveals structure.

Before writing a single line of code, articulate the narrative arc. What misconception does this correct? What is the "aha moment"? What visual story takes the viewer from confusion to understanding? The user's prompt is a starting point — interpret it with pedagogical ambition.

Geometry before algebra. Show the shape first, the equation second. Visual memory encodes faster than symbolic memory. When the viewer sees the geometric pattern before the formula, the equation feels earned.

First-render excellence is non-negotiable. The output must be visually clear and aesthetically cohesive without revision rounds. If something looks cluttered, poorly timed, or like "AI-generated slides," it is wrong.

Opacity layering directs attention. Never show everything at full brightness. Primary elements at 1.0, contextual elements at 0.4, structural elements (axes, grids) at 0.15. The brain processes visual salience in layers.

Breathing room. Every animation needs self.wait() after it. The viewer needs time to absorb what just appeared. Never rush from one animation to the next. A 2-second pause after a key reveal is never wasted.

Cohesive visual language. All scenes share a color palette, consistent typography sizing, matching animation speeds. A technically correct video where every scene uses random different colors is an aesthetic failure.

Prerequisites

Run scripts/setup.sh to verify all dependencies. Requires: Python 3.10+, Manim Community Edition v0.20+ (pip install manim), LaTeX (texlive-full on Linux, mactex on macOS), and ffmpeg. Reference docs tested against Manim CE v0.20.1.

Modes

ModeInputOutputReference
Concept explainerTopic/conceptAnimated explanation with geometric intuitionreferences/scene-planning.md
Equation derivationMath expressionsStep-by-step animated proofreferences/equations.md
Algorithm visualizationAlgorithm descriptionStep-by-step execution with data structuresreferences/graphs-and-data.md
Data storyData/metricsAnimated charts, comparisons, countersreferences/graphs-and-data.md
Architecture diagramSystem descriptionComponents building up with connectionsreferences/mobjects.md
Paper explainerResearch paperKey findings and methods animatedreferences/scene-planning.md
3D visualization3D conceptRotating surfaces, parametric curves, spatial geometryreferences/camera-and-3d.md

Stack

Single Python script per project. No browser, no Node.js, no GPU required.

LayerToolPurpose
CoreManim Community EditionScene rendering, animation engine
MathLaTeX (texlive/MiKTeX)Equation rendering via MathTex
Video I/OffmpegScene stitching, format conversion, audio muxing
TTSElevenLabs / Qwen3-TTS (optional)Narration voiceover

Pipeline

PLAN --> CODE --> RENDER --> STITCH --> AUDIO (optional) --> REVIEW
  1. PLAN — Write plan.md with narrative arc, scene list, visual elements, color palette, voiceover script
  2. CODE — Write script.py with one class per scene, each independently renderable
  3. RENDER — manim -ql script.py Scene1 Scene2 ... for draft, -qh for production
  4. STITCH — ffmpeg concat of scene clips into final.mp4
  5. AUDIO (optional) — Add voiceover and/or background music via ffmpeg. See references/rendering.md
  6. REVIEW — Render preview stills, verify against plan, adjust

Project Structure

project-name/
  plan.md                # Narrative arc, scene breakdown
  script.py              # All scenes in one file
  concat.txt             # ffmpeg scene list
  final.mp4              # Stitched output
  media/                 # Auto-generated by Manim
    videos/script/480p15/

Creative Direction

Color Palettes

PaletteBackgroundPrimarySecondaryAccentUse case
Classic 3B1B#1C1C1C#58C4DD (BLUE)#83C167 (GREEN)#FFFF00 (YELLOW)General math/CS
Warm academic#2D2B55#FF6B6B#FFD93D#6BCB77Approachable
Neon tech#0A0A0A#00F5FF#FF00FF#39FF14Systems, architecture
Monochrome#1A1A2E#EAEAEA#888888#FFFFFFMinimalist

Animation Speed

Contextrun_timeself.wait() after
Title/intro appear1.5s1.0s
Key equation reveal2.0s2.0s
Transform/morph1.5s1.5s
Supporting label0.8s0.5s
FadeOut cleanup0.5s0.3s
"Aha moment" reveal2.5s3.0s

Typography Scale

RoleFont sizeUsage
Title48Scene titles, opening text
Heading36Section headers within a scene
Body30Explanatory text
Label24Annotations, axis labels
Caption20Subtitles, fine print

Fonts

Use monospace fonts for all text. Manim's Pango renderer produces broken kerning with proportional fonts at all sizes. See references/visual-design.md for full recommendations.

MONO = "Menlo"  # define once at top of file

Text("Fourier Series", font_size=48, font=MONO, weight=BOLD)  # titles
Text("n=1: sin(x)", font_size=20, font=MONO)                  # labels
MathTex(r"\nabla L")                                            # math (uses LaTeX)

Minimum font_size=18 for readability.

Per-Scene Variation

Never use identical config for all scenes. For each scene:

  • Different dominant color from the palette
  • Different layout — don't always center everything
  • Different animation entry — vary between Write, FadeIn, GrowFromCenter, Create
  • Different visual weight — some scenes dense, others sparse

Workflow

Step 1: Plan (plan.md)

Before any code, write plan.md. See references/scene-planning.md for the comprehensive template.

Step 2: Code (script.py)

One class per scene. Every scene is independently renderable.

from manim import *

BG = "#1C1C1C"
PRIMARY = "#58C4DD"
SECONDARY = "#83C167"
ACCENT = "#FFFF00"
MONO = "Menlo"

class Scene1_Introduction(Scene):
    def construct(self):
        self.camera.background_color = BG
        title = Text("Why Does This Work?", font_size=48, color=PRIMARY, weight=BOLD, font=MONO)
        self.add_subcaption("Why does this work?", duration=2)
        self.play(Write(title), run_time=1.5)
        self.wait(1.0)
        self.play(FadeOut(title), run_time=0.5)

Key patterns:

  • Subtitles on every animation: self.add_subcaption("text", duration=N) or subcaption="text" on self.play()
  • Shared color constants at file top for cross-scene consistency
  • self.camera.background_color set in every scene
  • Clean exits — FadeOut all mobjects at scene end: self.play(FadeOut(Group(*self.mobjects)))

Step 3: Render

manim -ql script.py Scene1_Introduction Scene2_CoreConcept  # draft
manim -qh script.py Scene1_Introduction Scene2_CoreConcept  # production

Step 4: Stitch

cat > concat.txt << 'EOF'
file 'media/videos/script/480p15/Scene1_Introduction.mp4'
file 'media/videos/script/480p15/Scene2_CoreConcept.mp4'
EOF
ffmpeg -y -f concat -safe 0 -i concat.txt -c copy final.mp4

Step 5: Review

manim -ql --format=png -s script.py Scene2_CoreConcept  # preview still

Critical Implementation Notes

Raw Strings for LaTeX

# WRONG: MathTex("\frac{1}{2}")
# RIGHT:
MathTex(r"\frac{1}{2}")

buff >= 0.5 for Edge Text

label.to_edge(DOWN, buff=0.5)  # never < 0.5

FadeOut Before Replacing Text

self.play(ReplacementTransform(note1, note2))  # not Write(note2) on top

Never Animate Non-Added Mobjects

self.play(Create(circle))  # must add first
self.play(circle.animate.set_color(RED))  # then animate

Performance Targets

QualityResolutionFPSSpeed
-ql (draft)854x480155-15s/scene
-qm (medium)1280x7203015-60s/scene
-qh (production)1920x10806030-120s/scene

Always iterate at -ql. Only render -qh for final output.

References

FileContents
references/animations.mdCore animations, rate functions, composition, .animate syntax, timing patterns
references/mobjects.mdText, shapes, VGroup/Group, positioning, styling, custom mobjects
references/visual-design.md12 design principles, opacity layering, layout templates, color palettes
references/equations.mdLaTeX in Manim, TransformMatchingTex, derivation patterns
references/graphs-and-data.mdAxes, plotting, BarChart, animated data, algorithm visualization
references/camera-and-3d.mdMovingCameraScene, ThreeDScene, 3D surfaces, camera control
references/scene-planning.mdNarrative arcs, layout templates, scene transitions, planning template
references/rendering.mdCLI reference, quality presets, ffmpeg, voiceover workflow, GIF export
references/troubleshooting.mdLaTeX errors, animation errors, common mistakes, debugging
references/animation-design-thinking.mdWhen to animate vs show static, decomposition, pacing, narration sync
references/updaters-and-trackers.mdValueTracker, add_updater, always_redraw, time-based updaters, patterns
references/paper-explainer.mdTurning research papers into animations — workflow, templates, domain patterns
references/decorations.mdSurroundingRectangle, Brace, arrows, DashedLine, Angle, annotation lifecycle
references/production-quality.mdPre-code, pre-render, post-render checklists, spatial layout, color, tempo

Creative Divergence (use only when user requests experimental/creative/unique output)

If the user asks for creative, experimental, or unconventional explanatory approaches, select a strategy and reason through it BEFORE designing the animation.

  • SCAMPER — when the user wants a fresh take on a standard explanation
  • Assumption Reversal — when the user wants to challenge how something is typically taught

SCAMPER Transformation

Take a standard mathematical/technical visualization and transform it:

  • Substitute: replace the standard visual metaphor (number line → winding path, matrix → city grid)
  • Combine: merge two explanation approaches (algebraic + geometric simultaneously)
  • Reverse: derive backward — start from the result and deconstruct to axioms
  • Modify: exaggerate a parameter to show why it matters (10x the learning rate, 1000x the sample size)
  • Eliminate: remove all notation — explain purely through animation and spatial relationships

Assumption Reversal

  1. List what's "standard" about how this topic is visualized (left-to-right, 2D, discrete steps, formal notation)
  2. Pick the most fundamental assumption
  3. Reverse it (right-to-left derivation, 3D embedding of a 2D concept, continuous morphing instead of steps, zero notation)
  4. Explore what the reversal reveals that the standard approach hides

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

1password

無料日本語概要

1Passwordに保存したパスワードやAPIキーを、コマンド実行や設定テンプレートで使うためのスキル。CLIの導入、認証、秘密情報の取得・受け渡しを案内します。

  • 1Password CLIの導入と設定
  • 保存済みAPIキーでコマンド実行
  • 設定テンプレートへの秘密情報の埋め込み
NousResearch/hermes-agent25.3万2026年10月12日 更新

3-statement-model

無料日本語概要

損益計算書・貸借対照表・キャッシュフロー計算書を数式で連動させるExcelモデルを作ります。実績と予測の入力、前提を変えた比較、財務三表の整合性確認を段階的に進めます。

  • 財務テンプレートへの実績入力
  • 財務三表が連動する予測の作成
  • 基本・上振れ・下振れシナリオの比較
NousResearch/hermes-agent25.3万2026年10月12日 更新

Run PyTorch training across GPUs with minimal changes.

日本語の概要は準備中です。原文の説明を表示しています。

NousResearch/hermes-agent25.3万2026年10月12日 更新

Set up Actual Computer (actual.inc) inference in Hermes.

日本語の概要は準備中です。原文の説明を表示しています。

NousResearch/hermes-agent25.3万2026年10月12日 更新

adversarial-ux-test

無料日本語概要

技術が苦手で不満を抱きやすい利用者になりきってアプリを試し、操作の分かりにくさや離脱の原因を発見。実際の改善課題と個人的な不満を分け、修正案をまとめます。

  • 公開やデモ前に使いやすさを確認したいとき
  • 新規ユーザーの体験を点検したいとき
  • 登録・課金でのつまずきを探したいとき
NousResearch/hermes-agent25.3万2026年10月12日 更新

agent-merge-conflict-arbiter

無料日本語概要

2つのエージェントが別々に加えた変更のGit競合を、双方の差分と意図から中立的に解決。競合箇所ごとの判断理由を記録し、ビルドやテストで統合結果を確認します。

  • 2つのエージェントのブランチ競合を解消
  • 並行したworktreeの変更を統合
  • 競合する設計判断の理由を確認したいとき
NousResearch/hermes-agent25.3万2026年10月12日 更新

NousResearch のスキルをすべて見る

このスキルの問題を報告する