
edu-math-video
Use when asked to make an explainer / walkthrough video (讲解视频、解题视频、板书视频、例题精讲、微课) for a math problem (数学题, geometry, algebra, functions, motion/行程 problems), from a problem screenshot or text, with Chinese voice-over — delivered as a browser preview (HTML) first, MP4 export only if the user wants it. Five visual templates — hand-drawn canvas animation (bilingual zh+en subtitles) or one of four board styles (粉笔黑板 chalk / 几何实验室 lab / 白板 whiteboard / 方格本 notebook, auto-rotating 3D figures) — and a choice of TTS engine (智谱 GLM-TTS, 豆包 Doubao, MiniMax, or free edge-tts / macOS say).
- Installs
- 154
- Last 24h
- +12
- Trending rank
- #8029
- Security
- Not audited
Install
Works with every agent the skills CLI supports.
npx skills add https://github.com/wy51ai/edulab --skill edu-math-video- 01
Install
Run the command in your project. The CLI asks which agents to install for.
- 02
Describe the task
Ask your agent for something this skill covers. It loads edu-math-video automatically when relevant.
- 03
Review the result
The agent follows the SKILL.md steps, scripts and references bundled with the skill.
SKILL.md
The instructions your agent reads when the skill is triggered.
数学题讲解视频 (edu-math-video)
把一道数学题做成 16:9、1920×1080、带中文配音的讲解视频:先生成能直接在浏览器里播放的网页预览,用户看过后再问要不要导出 MP4。五种画面模板、五种配音引擎可选(配音在第 0 步定;板书风格自动选,预览页里可随时切换;只有导出 MP4 时才问用哪种风格)。
| 模板 | 画面 | 做法 | 适合 |
|---|---|---|---|
handdrawn 手绘动画 | 手绘笔记本风 canvas 动画,中英双语字幕,背景音乐+音效 | 每题手写 anim.js,动作最自由(滑动重合、展开、拼接、动点) | 推理要靠"动"才看得懂的题、行程/动点、需要英文字幕 |
chalk 粉笔黑板 | 黑板粉笔字、圈画强调、公式用 LaTeX(KaTeX)排版 | 写声明式 lesson.json,引擎自动排版 | 通用、老师讲题感 |
lab 几何实验室 | 深色发光、步骤条、缓慢摆动的 3D 图 | 同上 | 高中立体几何、函数图像 |
whiteboard 白板马克笔 | 白板、红色标签、便利贴提示 | 同上 | 初中 |
notebook 方格本 | 方格纸、猫头鹰助教、印章 | 同上 | 小学、初一 |
四种板书模板共用 lesson/ 引擎(同一份 lesson.json 随时切换风格),立体图自动旋转并实时计算虚实线。板书模板比手绘快得多(写几百行 JSON,而不是从零写动画),是默认推荐。
配音引擎(两种流水线共用 shared/tts.py,见 reference/tts-setup.md):glm 智谱 GLM-TTS(GLM_API_KEY)、doubao 豆包语音合成 2.0(DOUBAO_API_KEY,带逐字时间戳)、minimax MiniMax(MINIMAX_API_KEY,带逐字时间戳)、兜底 edge(免费)/ say(macOS 离线)。
文件与约定
lesson/:板书模板引擎、构建脚本(scripts/make.mjs)、lesson.json 文档(lesson/reference/)和范例(lesson/examples/)。template/+examples/cone-parallel/+scripts/:手绘模板的项目模板、示例和工具。shared/tts.py(五种配音引擎)、shared/pron.py+pron.json(读音控制,两种模板共用)。- 本技能自带全部代码,不要从别的项目复制文件。
SKILL = 本文件所在目录,WS = 用户当前所在的目录($PWD):视频文件夹 PROJ = WS/<ascii_folder_name>/ 建在这里。不要因为别的目录(包括本技能所在的项目)已经有 .env、node_modules、pron.json 就把 WS 换过去。 PY = 装了 numpy、requests、pypinyin 的 python(macOS 上一般是 /usr/bin/python3;PATH 里的 python3 可能没有 numpy)。
通用规则
- 退出码不是 0 就是没完成。 检查报错、warnings、截图里有问题,都不能写"只是警告、不影响"然后继续。修好再往下走。
- API Key 只能由用户提供,只放在
WS/.env,在第 0 步就检查。 所选引擎缺 key 时:bash SKILL/scripts/init_env.sh "$PWD" <引擎>建好.env,告诉用户填哪一行、去哪申请,然后结束这一轮,等用户填好回来(详见 reference/tts-setup.md)。用户不想配,可以换已配置的引擎或兜底引擎。不要编造 key、模型名、音色或接口地址,不要把 key 打印出来或写进项目文件夹。 - 先预览再花钱。 两种模板都有不调 TTS 的预览模式,版面和读音没问题再生成真配音。
- 看图验证,但先看拼图。 截图审查先看一张拼图(
sheet.png),有疑问再打开单张原图;汇报时写你实际看到了什么。能由程序报告的问题(文字出界、标签重叠)以命令输出为准,不必逐张找。 - 命令输出只读汇总。 构建脚本只打印问题和一行汇总,完整报告在文件里,需要时再看。
- MP4 是可选项,不要默认导出。 生成网页预览(板书
preview.html、手绘index.html)并打开给用户看之后,用 AskUserQuestion 只问"要不要导出 MP4?",用户选导出才渲染(板书这时再问导出用哪种风格)。交付内容(路径、时长、答案、请用户试听)在打开预览的那条消息里就说完;用户选不导出,任务就此结束,不再跑命令、不再重复交付。用户在请求里已明确要 MP4 文件(要发给别人、上传)时才可以直接导出。 - 板书里的公式一律写成 LaTeX(
$…$)。 根号、分数、上下标、向量、希腊字母都不要用纯文本符号(4√3、x²、n₁、1/2、θ);构建会报公式请用 $…$并拒绝通过。
步骤
第 0 步:定配音,并确认配音 key 可用(最先做,未通过前不做别的)
这一步通过之前不要读题解题、不要建项目、不要写 lesson.json / script.json 或任何代码(init_env.sh 建的 .env 除外)。key 缺了就在这一步停下等用户,免得做完一大半才发现不能配音。这一步不问画面风格:风格在第 1 步自动定,预览页里可以随时切换,只有导出 MP4 时才问。
- 在 WS 下跑
PY SKILL/shared/tts.py info(读WS/.env):显示会用的配音引擎、哪些 key 已配置(只显示 set/-),以及用户保存的默认模板VIDEO_TEMPLATE。 - 定配音引擎。 用户在请求里指定了,或
.env有TTS_ENGINE,或只配了一家的 key,就直接用,不要问。否则用 AskUserQuestion 问一个问题,推荐项放第一位并标注"(推荐)":- 已配置 key 的引擎排前面并推荐;没配的也列出;最后是免费的 edge / say。
- 一个 key 都没配(
info里三个都是-)时,选项就是:"填写 key(推荐)"(选了再问用哪家)和"用系统自带的 say"(装了 edge-tts 时再加"用 edge-tts")。兜底选项的说明里要写清效果可能不太好:机械感明显,断句和读音不如 GLM / 豆包 / MiniMax,只适合先看效果。
- 检查 key:
PY SKILL/shared/tts.py check --tts <选定的引擎>(在 WS 下运行)。- 打印
READY且退出码 0:通过,进入第 1 步。 - 退出码 1(缺 key):
bash SKILL/scripts/init_env.sh "$PWD" <引擎>建好WS/.env,告诉用户.env的完整路径、填哪一行、去哪申请(reference/tts-setup.md),然后结束这一轮。用户回来说填好了,再跑一次check,READY才进入第 1 步;还不行就请用户检查(等号后面、没有多余空格或引号、已保存)。
- 打印
- 选定的引擎记下来,第 2 步起写进项目:手绘写
episode.json的"tts",板书写lesson.json的meta.tts(选了兜底更要写,否则配音脚本会停下要求再问)。
- 用户是被问了才选的:交付时顺带告诉用户,可以在
WS/.env加TTS_ENGINE=<引擎>,以后就不再问(VIDEO_TEMPLATE=<模板>可固定模板/风格)。 - 通过标准: 引擎已确定,且
tts.py check --tts <引擎>打印READY。
第 1 步:弄清题目,自己先把题解对,再定模板
- 拿到题目文字(有截图就先读图)。先自己完整解一遍并验算,写下:已知条件清单、所求、关键思路(1~2 个)、每一步计算、最终答案、验算方法。
- 答案不确定或题目看不清时,问用户,不要猜。
- 定模板(一般不问):
- 用户在请求里指定了模板/风格,或
.env有VIDEO_TEMPLATE,就用它。 - 否则默认用板书,风格按题自动选:小学/初一
notebook,初中whiteboard,高中立体几何/函数lab,其他chalk。不要问风格——四种板书共用同一份 lesson.json,预览页右下角能即时切换;只有用户要导出 MP4 时才问用哪种(lesson-flow.md 的 L6)。 - 只有推理非靠图形运动才讲得清(动点、行程、图形平移/旋转重合、展开拼接),或用户要英文字幕时,才用 AskUserQuestion 问一句"板书(推荐,快)/ 手绘动画(动作更自由,但制作慢得多)"。板书和手绘是两条流水线,换的话要重做,所以这一项必须在动手前定。
- 用户在请求里指定了模板/风格,或
- 通过标准: 你能用 3~6 个"幕"讲完,每一幕一句话说清目的;答案已验算;模板已定。
第 2 步起:按模板走对应流程
- 板书模板(chalk / lab / whiteboard / notebook):reference/lesson-flow.md。
- 手绘模板(handdrawn):reference/handdrawn-flow.md。
- 只读你选的那一份,另一份不用看。
参考文件
- reference/tts-setup.md:五种配音引擎的 key、
.env、音色、语速、报错处理。引导用户配置时读这个。 - reference/lesson-flow.md:板书模板流程;格式细节在
lesson/reference/。 - reference/handdrawn-flow.md:手绘模板流程(第 2~11 步、常见错误),以及它用到的 script-writing / pronunciation / visual-design / animation / troubleshooting。
FAQ
What does the edu-math-video skill do?
Use when asked to make an explainer / walkthrough video (讲解视频、解题视频、板书视频、例题精讲、微课) for a math problem (数学题, geometry, algebra, functions, motion/行程 problems), from a problem screenshot or text, with Chinese voice-over — delivered as a browser preview (HTML) first, MP4 export only if the user wants it. Five visual templates — hand-drawn canvas animation (bilingual zh+en subtitles) or one of four board styles (粉笔黑板 chalk / 几何实验室 lab / 白板 whiteboard / 方格本 notebook, auto-rotating 3D figures) — and a choice of TTS engine (智谱 GLM-TTS, 豆包 Doubao, MiniMax, or free edge-tts / macOS say).
How do I install edu-math-video?
Run npx skills add https://github.com/wy51ai/edulab --skill edu-math-video in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/edu-math-video/ (personal) or .claude/skills/edu-math-video/ (project).
Which AI agents can use edu-math-video?
Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.
Is edu-math-video safe to install?
No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.
Who maintains edu-math-video?
It is published by wy51ai in wy51ai/edulab. It has 154 recorded installs.
More from wy51ai/edulab
edu-solid-geometry
wy51ai/edulab
把一道立体几何题解成一个自包含的交互教学网页:左侧 MathJax 分步解析, 右侧 Three.js 可交互 3D 模型(分步高亮 + 镜头切换)。支持三种入口——给定文字题目、 随机出题、上传题目图片识别后解题。覆盖正方体/长方体、棱锥/棱柱、圆柱/圆锥上的线面角、 二面角、异面直线夹角、点到平面距离、体积等题型,统一用"建系+向量法",并由 sympy 精确 计算驱动(答案、3D 坐标、步骤数值同源一致)。其他 agent 也可调用本技能生成此类网页。 触发词:立体几何, 线面角, 二面角, 异面直线, 点到平面距离, 正四棱锥, 正方体求角, 解这道几何题, 随机出一道立体几何题, 这张图里的立体几何题; solid geometry, line-plane angle, dihedral angle, angle between skew lines, distance to plane, interactive geometry solution page.
edu-analytic-geometry
wy51ai/edulab
把一道解析几何题解成一个自包含的交互教学网页:左栏题面 + 动态控制台(一个 可变参数滑块驱动实时重算的几何量 + 理论范围/定值指示),中栏 KaTeX 分步解析,右栏 2D Canvas 动态几何画板(椭圆/双曲线/抛物线/圆 + 动直线/动点 + 向量 + 标注 + 画笔涂鸦)。 支持三入口——给定文字题、随机出题、上传题目图片识别后解题。覆盖求标准方程、弦长、向量 数量积范围/定值、三角形面积最值、定点、定值(斜率之积)、轨迹、离心率等题型,统一"设含参 直线 x=my+c + 联立 + 韦达 + 换元/常数分离",并由 sympy 精确计算驱动(答案、坐标、步骤 数值、交互引擎的理论范围同源一致)。其它 agent 也可调用本技能生成此类网页。形态与 edu-solid-geometry 平行,但用 Canvas-2D + KaTeX(非 Three.js)。 触发词:解析几何, 圆锥曲线, 椭圆, 双曲线, 抛物线, 直线与圆锥曲线, 焦点弦, 弦长, 数量积取值范围, 向量数量积, 定点问题, 定值问题, 斜率之积, 三角形面积最值, 轨迹方程, 离心率, 解这道解析几何题, 随机出一道圆锥曲线题, 这张图里的解析几何题; analytic geometry, conic sections, ellipse, hyperbola, parabola, chord length, dot product range, fixed point, fixed value, locus, eccentricity, interactive analytic geometry solution page.
edu-chem-reaction
wy51ai/edulab
把一个化学反应做成自包含的微观 3D 交互演示网页:左/上为 Three.js 可交互分子动画 (拖滑块看断键·成键·原子重组,分步高亮),右为 KaTeX 反应方程 + 分步讲解 + 原子守恒计数 + 可选能量-反应进程曲线。支持三入口——给定文字反应/方程、随机出题、上传图片识别后演示。 覆盖燃烧、化合/分解/置换/复分解、氧化还原(电子转移可视化)、有机机理(酯化等含催化剂·过渡态)。 统一由 sympy 精确驱动:自动配平方程、校验原子守恒与原子映射、推导键的断/成,答案与几何同源一致。 内置两套引擎并自动选择:morph(原子变形,展示原子守恒)与 mechanism(机理关键帧,展示催化/过渡态)。 混合几何:默认自建 VSEPR 分子库,环境装有 RDKit 则可用其由 SMILES 生成构象(绝不自动安装)。 其他 agent 也可调用本技能生成此类网页。形态与 edu-solid-geometry / edu-analytic-geometry 平行, 但用 Three.js + KaTeX 演示分子反应。 触发词:化学反应, 微观演示, 分子动画, 燃烧, 甲烷燃烧, 氢气燃烧, 电解水, 氧化还原, 电子转移, 酯化反应, 反应机理, 断键成键, 原子守恒, 质量守恒, 化学方程式配平, 解这个化学反应, 随机出一个化学反应, 这张图里的化学反应; chemistry reaction, microscopic/molecular animation, combustion, electrolysis, redox electron transfer, esterification mechanism, bond breaking and forming, atom conservation, balance equation, interactive chemistry reaction page.
Popular media & creative skills
hyperframes
heygen-com/hyperframes
Read first to make, edit, animate or render any video with HyperFrames (HTML rendered to video), including launch films, explainers, music videos, charts, maps, vertical clips, title cards, captions and overlays. Holds the render contract, the work loop and what each kind of video needs.
media-use
heygen-com/hyperframes
Get or make any media for a HyperFrames video - music, sound effects, images, icons, logos, voiceover, avatar and generated video, transcripts, cutouts, colour grades and looks - with HeyGen or free local tools, and mix placed audio. Also for footage that looks dark, flat or dull, or should be stylized or hidden.
hyperframes-registry
heygen-com/hyperframes
About 450 ready-made HyperFrames blocks and components installed as editable source - transitions, overlays, titles, kinetic type, captions, charts, map overlays, 3D, camera moves. Use it before hand-building any named visual (CRT scanlines, glitch, film grain, a chart); also for hyperframes add and catalog.
hyperframes-creative
heygen-com/hyperframes
Non-animation creative direction for HyperFrames videos. Use for design spec (frame.md / design.md) handling, palettes, typography, narration, beat planning, audio-reactive visuals, composition patterns, and brand / style decisions. For atomic motion patterns and scene blueprints, use hyperframes-animation.
ai-video-generation
101-skills/superpowers
Generate AI videos with Google Veo, Seedance 2.0, HappyHorse, Wan, Grok and 40+ models via inference.sh CLI. Models: Veo 3.1, Veo 3, Seedance 2.0, HappyHorse 1.0, Wan 2.5, Grok Imagine Video, OmniHuman, Fabric, HunyuanVideo. Capabilities: text-to-video, image-to-video, reference-to-video, video editing, lipsync, avatar animation, video upscaling, foley sound. Use for: social media videos, marketing content, explainer videos, product demos, AI avatars. Triggers: video generation, ai video, text to video, image to video, veo, animate image, video from image, ai animation, video generator, generate video, t2v, i2v, ai video maker, create video with ai, runway alternative, pika alternative, sora alternative, kling alternative, seedance, happyhorse
ai-image-generation
101-skills/superpowers
Generate AI images with GPT-Image-2, FLUX, Gemini, Grok, Seedream, Reve and 50+ models via inference.sh CLI. Models: GPT-Image-2, FLUX Dev LoRA, FLUX.2 Klein LoRA, Gemini 3 Pro Image, Grok Imagine, Seedream 4.5, Reve, ImagineArt. Capabilities: text-to-image, image-to-image, inpainting, LoRA, image editing, upscaling, text rendering. Use for: AI art, product mockups, concept art, social media graphics, marketing visuals, illustrations. Triggers: flux, image generation, ai image, text to image, stable diffusion, generate image, ai art, midjourney alternative, dall-e alternative, text2img, t2i, image generator, ai picture, create image with ai, generative ai, ai illustration, grok image, gemini image, gpt image, openai image, chatgpt image