scaffold-exercises

工程开发 社区 @mattpocock
信任分
88/100
兼容 Agent
1
速查档案 只列事实:领域、Agent、信任分、作者、原文章节。装与不装请看下方作者解读。
领域
工程开发
兼容 Agent
Claude Code
信任分
88 / 100 · 社区维护
作者 / 版本 / 许可
@mattpocock · 未声明 license
安装命令数
1 条

需要注意: 未限定 allowed-tools,默认拥有全部工具权限。

想读作者英文原文? ↓ 滚到正文区切换 · 在 GitHub 查看 ↗

解读由编辑根据原文凝练而成,命令、链接、术语均与作者原文一致;想看完整论述请切到右侧

scaffold-exercises 是给 ai-hero 教学仓库用的——它把「新课的目录骨架」自动化:建出能通过 pnpm ai-hero-cli internal lintexercises/ 子树,再正常 git commit。重点是严格遵循命名 + 结构规则,让 lint 和 pnpm run exercise 工具链跑得动。

命名规范

  • SectionXX-section-name/exercises/ 下,例如 01-retrieval-skill-building
  • ExerciseXX.YY-exercise-name/ 在 section 下,例如 01.03-retrieval-with-bm25
  • 编号 XX 是 section、XX.YY 是 exercise;命名一律 dash-case 小写

Exercise 三种 variant

每个 exercise 至少要有:problem/(带 TODO 的学生工作区)、solution/(参考实现)、explainer/(概念性材料、无 TODO)。Stub 时默认建 explainer/,除非计划另说。每个 variant 子目录里的 readme.md 不能为空(最少得有一行标题)、不能有死链;带代码的还得有 >1 行的 main.ts,但 stub 阶段允许 readme-only。

工作流

① 解析计划,抽出 section/exercise/variant;② mkdir -p 建路径;③ 每个 variant 写一份最小 readme(标题 + 描述);④ 跑 pnpm ai-hero-cli internal lint 验;⑤ 按报错迭代直到通过。重命名 / 移位用 git mv 而非 mv,保住 history。

Lint 摘要

检查项包括:每个 exercise 有 problem/solution/explainer 之一;至少 problem/ / explainer/ / explainer.1/ 有一个;主 variant 的 readme.md 非空;禁止 .gitkeepspeaker-notes.md;readme 里不能有死链;readme 不能含 pnpm run exercise 命令;非 readme-only 的子文件夹必须有 main.ts

适合谁

  • 在 ai-hero 课程仓库或同款结构的教学项目里加新 section / exercise
  • 一次拆几十条 exercise 大纲、需要快速建骨架并保证 lint 通过

何时不要用

  • 不是 ai-hero 体系:lint 规则不通用,本技能没用武之地
  • 单题快速试做:直接手建文件比走骨架更快

配套

review-mattpocock(同体系的双轴 review)、setup-matt-pocock-skills(一键安装 Matt Pocock 系列技能)。