用途
build-project 是一个用于 AI 工程实战的项目导师技能。它面向从零开始学习 AI 工程的学习者,每次调用只指导一个项目的一个阶段。学习者是写代码的一方,技能负责讲解课程、提问预测、给出提示、协助运行评分器并记录进度。
主要能力
- 按 projects/<project-id>/project.json 中定义的级别、有序阶段、前置课程和语言要求组织学习。
- 每个阶段读取阶段课程(docs/zh.md)、代码骨架(starter/)和评分器测试(tests/)。
- 优先读取本地文件;未克隆仓库时从 GitHub raw 地址获取,并以概念模式教学。
- 通过学习者的工作目录中的 PROJECTS-LEARNING.md 记录多个项目的阶段状态、评分结果和心得。
- 失败时按“先提问、再讲概念、最后指出代码行或边界情况”的顺序给最小有效提示,不主动粘贴完整解答。
- 全部阶段完成后可用 --strict --report completion.json 生成完成报告,并说明如何在项目页导入获得本地完成证明。
使用方式
不同宿主使用各自的调用语法:Claude Code 使用 /build-project 或 /build-project <project-id>;Codex 使用 build-project 或从 /skills 选择;其他兼容宿主可用“使用 build-project 开始或继续我的项目”触发。
第一阶段需确认 python3 可用,并询问工作目录,默认建议仓库旁的 my-<project-id>,然后运行:
python3 scripts/project_test.py <project-id> --init <workspace>
讲授阶段时先建立背景,再让学习者做预测,指出 starter 文件和函数签名,学习者自行写代码后运行评分器:
python3 scripts/project_test.py <project-id> --stage <N> --path <workspace>
评分器会运行第 1 至 N 阶段,早期阶段失败说明新代码破坏了旧行为。通过后询问课程中的自我检查题,然后更新进度并说明下一步。
适用场景
适合希望以项目驱动方式学习 AI 工程的个人,尤其是需要分阶段推进、边写代码边验证的学习者。仓库包含的项目清单是 projects/ 下含 project.json 的目录(不含 _template),roadmap.json 中的规划项目尚不能构建。
限制
- 每次调用只推进一个阶段。
- 不打开 solution/ 或 heldout/ 向学习者展示答案;仅在看似正确的尝试仍失败时自行读取解答用于诊断,随后仍只给提示。
- 未亲眼看到评分器通过输出,不能声称通过。
- 缺少 Python 或仓库时改为概念模式,评分结果标为 Pending 而非 Pass。
- 命令仅能修改学习者工作目录和仓库内文件;安装可选依赖前需先解释用途。