综合练习
完整 feature 分支 Agent 流程。
综合练习
这一课你将能做到
- 独立完成「修 bug → TDD → 重构 → review → 提交」的完整 agent 工作流
- 为自己的项目一次性配齐四件套:CLAUDE.md、权限规则、格式化 Hook、审查子代理
- 用 headless 命令做收尾自动化(变更摘要、changelog 生成),形成可复用的个人工作流
为什么要学
前 11 课的知识是散装的零件,这一课把它们装成一台整机。选择真实场景的原因:日常开发中「修一个线上 bug」这条链路恰好覆盖全部核心机制——需要记忆文件提供项目常识、Plan 模式锁定方案、TDD 提供验证、Hook 保证格式、子代理做审查、headless 产出交付物。走通一遍,你就有了自己的 SOP,之后每个项目都能按此模板快速就位。
人话:这是毕业设计。零件(命令、权限、Hook、Skill)你都认识了,现在要交出一台能跑的车,并附上保养手册(你的工作流清单)。
先建立图像
准备(一次性) 主链路(每次任务) 收尾
──────────── ────────────────────── ─────────────
CLAUDE.md ┐ ①描述现象+日志 ③生成 commit
权限规则 ├→ 基建 ②Plan 模式出方案 ④headless 摘要
格式化 Hook │ ③确认方案→TDD 实现 ⑤PR + 子代理 review
审查子代理 ┘ ④全量测试通过 ⑥归档经验→CLAUDE.md
练习项目要求:任意你负责的真实仓库(有 git、有测试、能跑构建),准备一个「已知但未修」的 bug 作为靶子;没有现成 bug 就故意埋一个(如把分页参数 off-by-one 注入某个查询)。
跟着做
步骤 1:基建四件套(一次性投入)
cd 你的项目 && git status # 确认工作区干净
会话内:
/init
随后人工修订 CLAUDE.md(构建/测试命令、目录约定、禁忌);创建 .claude/settings.json 写入 allow(测试/构建命令)与 deny(.env、force push);按 Hooks 课给 PostToolUse(Edit|Write) 挂格式化;按 Skills 课建 .claude/agents/code-reviewer.md(只读工具)。提交这批配置进 git。
步骤 2:描述现场,触发调查
用户反馈:分页到第 11 页时和第 1 页数据重复。
复现步骤与接口日志如下:…(贴日志)
先调查原因,不要改代码。
观察它用 Grep/Read 追调用链。你提供的线索越结构化(现象+复现+日志),它绕的弯越少。
步骤 3:Plan 模式锁定方案
Shift+Tab 进入 Plan 模式:
给出修复方案:改动文件清单、每步内容、如何用测试证明修复有效。
审查计划,修正偏差(比如「不要改公共分页工具类,只在本模块修」),确认后切回默认模式。
步骤 4:TDD 实现
先写一个复现该 bug 的单元测试,运行并贴出失败输出;
我确认失败原因正确后,再实现修复并让测试转绿,
最后跑全量测试确保无回归。
关键验收点:你必须亲眼看到「失败→转绿」两次测试输出。
步骤 5:提交 + headless 摘要
看 git diff,按 conventional commits 生成 commit 并提交(只含相关文件)
然后终端里:
claude -p "对比 HEAD~1..HEAD 的改动,输出 100 字内的中文变更说明" --model haiku
这段输出可直接贴进 PR 描述——廉价模型干廉价活。