关于 explain
这是一个将解释转化为受控语言文本、图表、交互式 HTML 或配音视频的技能,可按主题选择合适形式,从简短答复到分步视觉讲解。
主要功能
- 01使用严格或宽松 STE 写作
- 02制作技术图表
- 03构建单文件交互式 HTML
- 04生成配音 MP4 视频
- 05根据主题选择输出模式
适用场景
- 01解释由多个部分组成的系统
- 02交互展示分步流程
- 03直观讲解数学或算法概念
- 04简洁回答事实性问题
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ undefined-ui/ explain-skill --skill explain安装后在 Claude Code 中输入/explain确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
assets/sheet-template.htmlassets/video/example/narration.jsonscene.pyreferences/diagram.mdhtml.mdste100.mdvideo.mdscripts/doctor.pynarrate.pypaths.pyrender.pysetup.pyste_lint.pytts.py详细介绍
解释:Karpathy 的输出阶梯
现在,人们花在阅读模型生成内容上的时间,比写作更多。原始散文是最难快速吸收的格式。这项技能沿着格式阶梯向上攀升。每一级都比前一级更容易吸收:
| 阶梯 | 模式 | 输出 | 最适合 |
|---|---|---|---|
| 1 | ste | 使用 ASD-STE100 编写的文本(严格模式) | 操作流程、规范,以及任何必须精确的内容 |
| 1 | ste80 | 接近 ASD-STE100 要求的文本(80%)(默认) | 聊天中的常规解释 |
| 2 | diagram | 技术说明图(HTML + 内联 SVG) | 结构、流程、比较、“如何融入整体” |
| 3 | html | 交互式单文件网页 | 有参数、步骤或状态可供探索的内容 |
| 4 | video | 采用 3Blue1Brown 风格并带有旁白的 MP4 | 直觉、数学,以及逐步讲述的故事 |
1. 选择模式
参数:/explain <topic> [ste|ste80|diagram|html|video] [--lang <code>] [--voice <name>] [--engine elevenlabs|kokoro|piper]
- 用户指定了模式(或说“схема”“страница”“видео”“STE”):使用该模式。
- 未指定模式:选择最适合主题的最高阶,并用一句话说明所选模式。
- 简短的事实性问题 → 在聊天中使用
ste80。 - 具有多个部分和连接的系统 → 使用
diagram。 - 读者需要动手探索参数、输入或阶段的流程 → 使用
html。 - 需要逐步建立直觉的概念(数学、算法、物理、ML),且用户要求深入讲解 → 使用
video。
- 简短的事实性问题 → 在聊天中使用
- 如果无法确定选哪一级,选择较低一级,并在结尾用一句话提供下一级选项。
2. 所有模式都适用的规则
- 保留所有事实。 受控语言只改变形式,不改变内容。完成前,将输出与来源进行比较,并补回任何遗漏的事实、数字、限定说明或条件。 简化写作有一种已知的失误模式:细节会在不知不觉中丢失。每次都要检查。
- 先阅读来源。 如果主题涉及此仓库中的代码、文件、URL 或论文,请先阅读,再进行解释。来源可用时,不要凭记忆解释。
- 用词遵循 STE。 所有模式中的文字(图表标签、页面文案、视频旁白)都使用
ste80,除非用户要求使用ste。每个会话阅读一次 references/ste100.md。 - 语言。 ASD-STE100 是一项英语标准。如果用户使用其他语言,则用该语言回答,并遵循相同原则(短句、每句表达一个意思、使用主动语态、每个概念使用一个术语)。
- 文件放在当前工作目录下的
explainers/<slug>/中(slug = 简短的 kebab-case 主题名称),除非用户指定了其他位置。聊天中的文本无需写入文件。 - 打开结果(Windows 使用
start,macOS 使用open,Linux 使用xdg-open),并告知用户文件路径。 - 交付前先验证。 检查输出:如果有浏览器工具,就在其中打开页面;查看视频静帧。报告前修复重叠、文本被裁切和事实错误。
3. 模式:ste 和 ste80(第 1 级)
阅读 references/ste100.md。然后开始编写。
ste80是聊天中的默认模式。句子简短,使用主动语态,每句表达一个意思,使用简单词语。ste是严格模式。将文本写入文件,然后运行 lint 并修复所有错误:
(python scripts/ste_lint.py draft.md --mode strictscripts/与此文件位于同一目录。任何 Python 3.8+ 版本均可;lint 工具仅使用标准库。)
4. 模式:diagram(第 2 阶)
阅读 references/diagram.md。复制 assets/sheet-template.html
到 explainers/<slug>/diagram.html,并替换示例面板。样式为工程制图图纸:
分区边框、字母标注的面板、带注释的引线、标题栏。在聊天中快速作答时,可以使用 Mermaid 代码块;
并说明完整图纸只需运行一条命令即可生成。
5. 模式:html(第 3 阶)
阅读 references/html.md。编写一个自包含的 explainers/<slug>/index.html,
并提供真正的交互功能(驱动实时模型的滑块、逐步演示、悬停查看定义)。无需构建步骤。
6. 模式:video(第 4 阶)
开始编写前先阅读 references/video.md。简要步骤:
- 检查工具链:
python scripts/doctor.py。如果提示缺少视频环境(首次运行npx skills add后很常见),请告知用户需要下载约 400 MB 的内容(Manim、Kokoro 语音模型), 然后运行python scripts/setup.py。如果需要,会安装 uv。没有系统 Python 时,请改为运行uv run --no-project --python 3.12 scripts/setup.py。 - 编写
explainers/<slug>/narration.json(分段脚本)。 - 生成语音轨:
"$PY" scripts/tts.py explainers/<slug>/narration.json(如果设置了ELEVENLABS_API_KEY,则使用 ElevenLabs;否则使用免费的本地 Kokoro 或 Piper)。 - 编写
explainers/<slug>/scene.py(Manim,并使用narrate.py与音频同步)。 - 渲染并检查:
"$PY" scripts/render.py explainers/<slug>/scene.py --quality l→ 查看静帧 → 修复 → 使用--quality h渲染。
$PY 是视频环境的 Python。doctor.py 会打印其路径。
评论
支持 Markdown