Skip to content
cccskills
FreePublished on GitHub

manim-video

Manim CE 动画:3Blue1Brown 数学/算法视频。

The English summary is being prepared. Showing the original description.

See how to install

Files included (1)

  • SKILL.md12.0 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Manim 视频制作流程#

Harness-agent tools#

本技能从 Octop 移植。使用以下 harness/deepagents 工具:

概念工具
Shellexecute
读/写/编辑文件read_file, write_file, edit_file
查找文件/搜索内容glob, grep
获取 URLweb_fetch
浏览器自动化browser_use
子代理工作task
记忆memory_store, memory_recall, memory_search

内置技能文件位于 /_builtin_skills/<name>/。用户安装的技能位于 /skills/<name>/。

何时使用#

当用户请求:动画解释、数学动画、概念可视化、算法演练、技术讲解、3Blue1Brown 风格视频,或任何带有几何/数学内容的程序化动画时,使用此技能。使用 Manim Community Edition 创建 3Blue1Brown 风格讲解视频、算法可视化、公式推导、架构图和数据分析故事。

创意标准#

这是教育电影。每一帧都在教学。每一个动画都揭示结构。

在编写任何一行代码之前,阐明叙事弧。这个误解需要纠正什么?"啊哈时刻"是什么?什么视觉故事让观众从困惑走向理解?用户的提示是一个起点——要用教学野心去诠释它,而不是字面转录。

几何先于代数。 先展示形状,再展示公式。视觉记忆比符号记忆编码更快。当观众在公式之前看到几何模式时,公式感觉是应得的。

首次渲染卓越是不可协商的。 输出必须在视觉上清晰且美学上连贯,无需修改轮次。如果某些东西看起来杂乱、时机不当,或像"AI 生成的幻灯片",那就是错误的——在交付之前重新思考创意概念。

不透明度分层引导注意力。 永远不要以全亮度显示所有内容。主要元素在 1.0,上下文元素在 0.4,结构元素(坐标轴、网格)在 0.15。大脑按层次处理视觉显著性。

呼吸空间。 每个动画之后都需要 self.wait()。观众需要时间吸收刚刚出现的内容。永远不要从一个动画匆忙进入下一个。在关键揭示之后的 2 秒暂停永远不会浪费。

连贯的视觉语言。 所有场景共享一个调色板、一致的排版尺寸、匹配的动画速度。一个技术正确但每个场景使用随机不同颜色的视频是美学失败。

先决条件#

运行 scripts/setup.sh 以验证所有依赖项。需要:Python 3.10+、Manim Community Edition v0.20+(pip install manim)、LaTeX(texlive-full 在 Linux 上,mactex 在 macOS 上)和 ffmpeg。参考文档针对 Manim CE v0.20.1 测试。

模式#

模式输入输出参考
概念讲解主题/概念带有几何直觉的动画解释references/scene-planning.md
公式推导数学表达式逐步动画证明references/equations.md
算法可视化算法描述带有数据结构的逐步执行references/graphs-and-data.md
数据故事数据/指标动画图表、比较、计数器references/graphs-and-data.md
架构图系统描述带有连接的组件构建references/mobjects.md
3D 可视化3D 概念旋转表面、参数曲线、空间几何references/camera-and-3d.md

技术栈#

每个项目一个独立的 Python 脚本。无需浏览器、Node.js 或 GPU。

层工具用途
核心Manim Community Edition场景渲染、动画引擎
数学LaTeX (texlive/MiKTeX)通过 MathTex 渲染公式
视频 I/Offmpeg场景拼接、格式转换、音频混合
TTSElevenLabs / Qwen3-TTS(可选)旁白语音覆盖

流程#

PLAN --> CODE --> RENDER --> STITCH --> AUDIO(可选) --> REVIEW
  1. PLAN — 编写 plan.md,包含叙事弧、场景列表、视觉元素、调色板、旁白脚本
  2. CODE — 编写 script.py,每个场景一个类,每个都可独立渲染
  3. RENDER — manim -ql script.py Scene1 Scene2 ... 用于草稿,-qh 用于制作
  4. STITCH — ffmpeg 将场景剪辑拼接成 final.mp4
  5. AUDIO(可选)— 通过 ffmpeg 添加旁白和/或背景音乐。参见 references/rendering.md
  6. REVIEW — 渲染预览静止图像,对照计划验证,调整

项目结构#

project-name/
  plan.md                # 叙事弧、场景分解
  script.py              # 所有场景在一个文件中
  concat.txt             # ffmpeg 场景列表
  final.mp4              # 拼接输出
  media/                 # Manim 自动生成
    videos/script/480p15/

创意方向#

调色板#

调色板背景主要次要强调使用场景
经典 3B1B#1C1C1C#58C4DD(蓝色)#83C167(绿色)#FFFF00(黄色)通用数学/CS
温暖学术#2D2B55#FF6B6B#FFD93D#6BCB77亲和力
霓虹科技#0A0A0A#00F5FF#FF00FF#39FF14系统、架构
单色#1A1A2E#EAEAEA#888888#FFFFFF极简主义

动画速度#

上下文运行时间之后等待
标题/介绍出现1.5秒1.0秒
关键公式揭示2.0秒2.0秒
变换/变形1.5秒1.5秒
支持标签0.8秒0.5秒
淡出清理0.5秒0.3秒
"啊哈时刻"揭示2.5秒3.0秒

排版尺度#

角色字体大小用法
标题48场景标题、开场文本
标题36场景内的章节标题
正文30解释性文本
标签24注释、坐标轴标签
说明文字20字幕、小号印刷

字体#

对所有文本使用等宽字体。 Manim 的 Pango 渲染器在所有尺寸上都使用比例字体产生错误的字距。参见 references/visual-design.md 获取完整建议。

MONO = "Menlo"  # 在文件顶部定义一次

Text("Fourier Series", font_size=48, font=MONO, weight=BOLD)  # 标题
Text("n=1: sin(x)", font_size=20, font=MONO)  # 标签
MathTex(r"\nabla L")  # 数学(使用 LaTeX)

最小 font_size=18 以确保可读性。

每场景变奏#

永远不要对所有场景使用相同的配置。对于每个场景:

  • 不同的主色来自调色板
  • 不同的布局——不要总是居中所有内容
  • 不同的动画进入——在 Write、FadeIn、GrowFromCenter、Create 之间变化
  • 不同的视觉权重——一些场景密集,其他稀疏

工作流#

步骤 1:计划(plan.md)#

在任何代码之前,编写 plan.md。参见 references/scene-planning.md 获取完整模板。

步骤 2:代码(script.py)#

每个场景一个类。每个场景都可独立渲染。

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)

关键模式:

  • 每个动画上的字幕:self.add_subcaption("text", duration=N) 或 subcaption="text" 在 self.play() 上
  • 共享色彩常量在文件顶部以实现跨场景一致性
  • self.camera.background_color 在每个场景中设置
  • 干净退出——在场景结束时淡出所有 mobject:self.play(FadeOut(Group(*self.mobjects)))

步骤 3:渲染#

manim -ql script.py Scene1_Introduction Scene2_CoreConcept  # 草稿
manim -qh script.py Scene1_Introduction Scene2_CoreConcept  # 制作

步骤 4:拼接#

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

步骤 5:审查#

manim -ql --format=png -s script.py Scene2_CoreConcept  # 预览静止图像

关键实现注意事项#

LaTeX 的原始字符串#

# 错误:MathTex("\frac{1}{2}")  # 转义问题
# 正确:
MathTex(r"\frac{1}{2}")  # 原始字符串

边缘文本的 buff >= 0.5#

label.to_edge(DOWN, buff=0.5)  # 永远不要 < 0.5

在替换文本之前淡出#

self.play(ReplacementTransform(note1, note2))  # 不要在其上 Write(note2)

永远不要动画化未添加的 Mobject#

self.play(Create(circle))  # 必须先添加
self.play(circle.animate.set_color(RED))  # 然后动画化

性能目标#

质量分辨率FPS速度
-ql(草稿)854x480155-15秒/场景
-qm(中等)1280x7203015-60秒/场景
-qh(制作)1920x10806030-120秒/场景

始终在 -ql 上迭代。仅对最终输出渲染 -qh。

参考#

文件内容
references/animations.md核心动画、速率函数、组合、.animate 语法、时序模式
references/mobjects.md文本、形状、VGroup/Group、定位、样式、自定义 mobject
references/visual-design.md12 个设计原则、不透明度分层、布局模板、调色板
references/equations.mdManim 中的 LaTeX、TransformMatchingTex、推导模式
references/graphs-and-data.md坐标轴、绘图、BarChart、动画数据、算法可视化
references/camera-and-3d.mdMovingCameraScene、ThreeDScene、3D 表面、摄像机控制
references/scene-planning.md叙事弧、布局模板、场景过渡、计划模板
references/rendering.mdCLI 参考、质量预设、ffmpeg、旁白工作流、GIF 导出
references/troubleshooting.mdLaTeX 错误、动画错误、常见错误、调试
references/animation-design-thinking.md何时动画化 vs 显示静态、分解、节奏、旁白同步
references/updaters-and-trackers.mdValueTracker、add_updater、always_redraw、基于时间的更新器、模式
references/paper-explainer.md将研究论文转化为动画——工作流、模板、域模式
references/decorations.mdSurroundingRectangle、Brace、箭头、DashedLine、Angle、注释生命周期
references/production-quality.md预代码、预渲染、后渲染检查清单、空间布局、颜色、节奏

创意分歧(仅当用户请求实验性/创意/独特输出时使用)#

如果用户要求创意、实验性或非传统的解释方法,请选择策略并在设计动画之前通过它进行推理。

  • SCAMPER — 当用户想要标准解释的新鲜视角时
  • 假设逆转 — 当用户想要挑战某事的典型教学方式时

SCAMPER 变换#

采用标准数学/技术可视化并变换它:

  • 替代:替换标准视觉隐喻(数字线 → 蜿蜒路径,矩阵 → 城市网格)
  • 组合:合并两种解释方法(代数 + 几何同时)
  • 逆转:向后推导——从结果开始并解构到公理
  • 修改:夸大参数以显示为什么它很重要(10倍学习率,1000倍样本大小)
  • 消除:移除所有符号——通过动画和空间关系纯粹解释

假设逆转#

  1. 列出关于此主题如何可视化"标准"的内容(从左到右,2D,离散步骤,正式符号)
  2. 选择最根本的假设
  3. 逆转它(从右到左推导,3D 嵌入 2D 概念,连续变形而不是步骤,零符号)
  4. 探索逆转揭示了标准方法隐藏了什么

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

通过 memo CLI 管理 Apple Notes:创建、搜索、编辑。

The English summary is being prepared. Showing the original description.

TencentCloud/octop-harness112Updated Oct 21, 2026

Manage Apple Notes via memo CLI: create, search, edit.

The English summary is being prepared. Showing the original description.

TencentCloud/octop-harness112Updated Oct 21, 2026

Manage Apple Reminders on macOS via remindctl — list, add, edit, complete, delete to-dos that sync to iPhone/iPad. Trigger on "reminder", "Reminders app", "提醒我" with phone sync, or adding personal todos with due dates. macOS only. Skip when the user wants agent-internal alerts (use memory_store or external scheduling) or calendar events.

The English summary is being prepared. Showing the original description.

TencentCloud/octop-harness112Updated Oct 21, 2026

通过 remindctl 在 macOS 上管理 Apple Reminders——列出、添加、编辑、完成、 删除同步到 iPhone/iPad 的待办事项。在提及"提醒"、"Reminders app"、 需要手机同步的"提醒我"或添加带截止日期的个人待办事项时触发。macOS only。 当用户需要代理内部提醒(使用 memory_store 或外部 调度)或日历事件时跳过。

The English summary is being prepared. Showing the original description.

TencentCloud/octop-harness112Updated Oct 21, 2026

Dark-themed SVG architecture/cloud/infra diagrams as HTML.

The English summary is being prepared. Showing the original description.

TencentCloud/octop-harness112Updated Oct 21, 2026

暗色主题的 SVG 架构/云/基础设施图表,输出为 HTML。

The English summary is being prepared. Showing the original description.

TencentCloud/octop-harness112Updated Oct 21, 2026

See all skills by TencentCloud

Report a problem with this skill