Agent Skills
返回列表
🎓

习题脚手架

教育学习 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @kunlungrowth/scaffold-exercises。

技能介绍

为什么需要它

新建一套习题目录时,手写结构很容易踩坑:章节叫 05-memory-skill-building 还是 05_memory?习题编号用 05.01 还是 05-01?每道题需要 problem/、solution/、explainer/ 三个变体,漏建一个,学生提交和参考实现就对不上。更常见的是,每个目录里的 readme.md 是空文件,提交后 CI 的 linter 直接报错。

这个技能负责把「骨架」这一步自动化:输入一份习题规划,输出一组可直接填充的目录结构,并通过项目 linter 校验。

核心能力

解析规划

从用户描述中抽出章节名、习题名和变体类型(problem / solution / explainer),也支持接收 ExercisePlan 工件。

目录命名

  • 章节:exercises/ 下的 XX-section-name/,如 01-retrieval-skill-building
  • 习题:章节内的 XX.YY-exercise-name/,如 01.03-retrieval-with-bm25
  • 名称一律小写连字符,编号维护顺序

变体结构

每道题至少包含一个子目录:

  • problem/:学生工作区,带 TODO
  • solution/:参考实现
  • explainer/:概念材料,无 TODO

桩默认用 explainer/。

必需文件

  • 每个子目录需要非空 readme.md(至少一行标题)
  • 有代码的子目录需要 main.ts(超过一行)
  • 桩只需要标题加描述的最小 readme

lint 与重命名

用项目 linter(如 pnpm ai-hero-cli internal lint)校验,迭代修复直到通过。调整结构时用 git mv 保留历史,更新数字前缀后重跑 lint。

适用边界

  • 只搭结构,不写实现:生成的是骨架,solution/ 里的答案和 explainer/ 里的正文需要内容作者填充
  • lint 规则以项目为准:文中给的是常见规则,具体以项目实际配置的 linter 为准
  • 桩不需要 main.ts:只有包含代码的子目录才需要,纯文档桩用 readme 即可
  • 下游消费:骨架可交给内容作者填充,或交给 teach 用于教学

使用场景

  • 新课程立项,要把记忆技能章节拆成 05.01 介绍、05.02 短期记忆等习题目录,并生成最小 readme 桩
  • 已有习题树缺少 problem/ 与 solution/ 变体,需要批量补齐目录结构并让 linter 通过
  • 调整章节编号顺序,用 git mv 重命名章节前缀,保留提交历史并重跑 lint
  • 内容作者尚未动笔,先要一份可直接填充的习题骨架,包含 explainer/ 变体

适合人员

  • 课程工程师:每接手一门新课,需要按统一命名规范生成习题目录骨架并通过 lint
  • 内容作者:往 solution/ 和 explainer/ 填充答案与讲解前,需要先拿到带非空 readme 的骨架
  • 教学平台维护者:多个课程共用 exercises/ 目录规范,需保持编号顺序与变体结构一致