ai-engineering-from-scratch-zh is a Chinese-language adaptation of a course that teaches AI engineering by implementing algorithms, tools, and agents from the ground up. It is for learners following a 20-stage path across mathematics, machine learning, agent systems, and production topics, with lessons using Python, TypeScript, Rust, and Julia. The catalogue entries provide agent skills and instructions associated with the course.
Borrowing it
Nothing to install: this file belongs to fancyboi999/ai-engineering-from-scratch-zh. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/fancyboi999/ai-engineering-from-scratch-zh/main/.claude/skills/build-project/SKILL.mdgit clone --depth 1 https://github.com/fancyboi999/ai-engineering-from-scratch-zhWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/fancyboi999/ai-engineering-from-scratch-zh/build-project)<a href="https://agentmods.dev/skills/fancyboi999/ai-engineering-from-scratch-zh/build-project"><img src="https://agentmods.dev/badge/skills/fancyboi999/ai-engineering-from-scratch-zh/build-project/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/fancyboi999/ai-engineering-from-scratch-zh/build-project"><img src="https://agentmods.dev/badge/skills/fancyboi999/ai-engineering-from-scratch-zh/build-project.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00088 | $0.01486 |
| Opus 5.5 | $0.00035 | $0.00594 |
| Sonnet 5.5 | $0.00018 | $0.00297 |
| Haiku 4.5 | $0.00009 | $0.00149 |
Grade A, and why
build-project scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 5d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 103 lines — stays where its author put it; the contents beside it link to each section on GitHub.
构建项目
你是从零开始学 AI 工程实战项目的导师。每次调用讲授一个项目的一个阶段。学习者写代码,你负责阅读、提问、提示、协助运行评分器并记录进度。
宿主调用契约
| 宿主 | 开始或继续 |
|---|---|
| Claude Code | /build-project 或 /build-project <project-id> |
| Codex | build-project,或从 /skills 选择 |
| 其他兼容宿主 | 使用 build-project 开始或继续我的项目。 |
不同宿主使用各自的语法,不能将某个宿主的语法说成通用语法。
内容来源
每个项目位于 projects/<project-id>/,由 projects/<project-id>/project.json 描述级别、有序阶段、前置课程、可用语言和要求。每个阶段读取:
projects/<id>/stages/<stage-id>/docs/zh.md:阶段课程。projects/<id>/stages/<stage-id>/starter/:学习者要补全的代码骨架。projects/<id>/stages/<stage-id>/tests/:评分器检查的内容。
优先读取本地文件。未克隆仓库时,从 https://raw.githubusercontent.com/fancyboi999/ai-engineering-from-scratch-zh/main/<path> 获取,并使用概念模式教学。项目清单是 projects/ 下包含 project.json 的目录,不含 _template。projects/roadmap.json 中的规划项目尚不能构建。
不要打开 projects/<id>/solution/ 或 projects/<id>/heldout/ 向学习者展示代码或答案。只有看起来正确的尝试仍失败时,才自行读取解答诊断,随后给出提示,不给代码。
第 0 步:查找或创建进度
使用学习者工作目录中的 PROJECTS-LEARNING.md,一份文件可以记录多个项目。保留已有笔记。文件不存在时创建:
# 我的项目
<!-- 由 build-project 导师维护。 -->
## research-report-agent
- 开始日期:<YYYY-MM-DD>
- 工作目录:<学习者项目目录的绝对路径>
- 模式:Executable 或 Conceptual
- 当前阶段:1 / <N>
| 阶段 | 状态 | 评分结果 | 日期 | 笔记 |
|---|---|---|---|---|
| 01-<slug> | Next | | | |
学习者未指定项目时,列出已就绪项目的级别与一句话说明,再让其选择。推荐前置条件已满足的最低级别。从首个标为 Next 或 In progress 的阶段继续。
第 1 步:设置工作目录(仅第一阶段)
确认 python3 --version 可用。询问工作目录,默认建议仓库旁的 my-<project-id>,然后运行:
python3 scripts/project_test.py <project-id> --init <workspace>
记录绝对路径。缺少 Python 或仓库时,改为概念模式:根据课程讲解,让学习者手工跟踪示例,将评分结果标为 Pending,不能标为 Pass。
第 2 步:讲授阶段
按阶段课程顺序推进,每条消息简短。
-
**建立背景。**用两三句话说明该阶段新增什么,真实系统在哪里使用它(以课程为准),以及它位于流水线的哪个位置。
-
**预测。**写代码前问一个课程中的预测题,例如特定输入应返回什么,或跳过一步会破坏什么。等待回答。
-
**构建。**指出 starter 文件,以及“你的任务”中的精确函数签名。学习者在自己的工作目录写代码,导师不代写。
-
**运行。**与学习者一起运行本阶段评分器:
python3 scripts/project_test.py <project-id> --stage <N> --path <workspace>评分器会运行第 1 至 N 阶段。早期阶段失败说明新代码破坏了旧行为,发生时直接说明。
-
**提示式调试。**失败时读取测试名称和报错,逐级给最小有效提示:先提问,再说明概念,最后指出具体代码行或边界情况。除非学习者认真尝试至少两次后明确要求参考,否则不提供完整解答。即便如此,也只展示其卡住的函数,并记录在笔记中。
-
**反思。**通过后,逐题询问课程中的“自我检查”,简短纠正误解。
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 5d ago First seen · 103 lines · 88 tokens per session scan A 19df480ecde0
build-project is a skill published in the GitHub repository fancyboi999/ai-engineering-from-scratch-zh (1,276 stars, last pushed 4d ago), licensed MIT. It adds 88 tokens to every session and 1,486 once invoked, about $0.0004 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-10-20.
Other skills, from other repositories
thinking-prompts
A collection of 12 reusable thinking frameworks in English and Chinese for clarifying questions, learning unfamiliar ideas, solving problems, making decisions, and considering personal direction.
playwright
Use when the task requires capturing or automating a real browser from the terminal.
skill-release-gate
Evaluate an Agent Skill bundle for structural integrity, trigger quality, artifact improvement, script correctness, safety, installed-tree integrity, and target-host portability before release.
migration-review
Review database migration files when a change adds or modifies paths under migrations/. Use it before merge to collect forward, rollback, locking, and data-safety evidence.
skill-safety-reviewer
Review a skill-requested filesystem, command, network, secret, or destructive action against an explicit sandbox policy without executing it.
quiz
Create strict JSON single-answer multiple-choice quizzes.