工作流详解
交接
把另一个会话或 agent 安全继续所需的最小状态记录下来——一项不缺,一字不多。
Codex CLI
$engineering-flow:handoffClaude Code
/engineering-flow:handoff为什么需要这个工作流
交接的本质是信息压缩。下一个会话需要的不是对话全文,而是能安全继续的最小事实集。八项清单保证完整性,空的类别必须写"无"而不是悄悄消失——因为在下一个读者眼里,"漏写"和"确实没有"长得一模一样。
流程逐阶段拆解
下面每一条规则都取自源仓库里的工作流定义——这就是智能体真正被要求做的事。
- 01
收集当前事实
重新读真实状态,而不是凭记忆写。
- 重新读版本控制状态和相关 diff。
- 读权威的需求和设计文档。
- 查最新一次验证输出,而不是依赖记忆。
- 找出阻塞、未决决定,以及必须保留的无关改动。
- 02
产出交接记录
八项,逐项写明,空类别写"无"。
- 目标与验收行为。
- 当前实现状态。
- 关键文件与权威文档。
- 已经做出的决定及其原因。
- 跑过的命令与最新结果。
- 剩余任务,按依赖顺序排列。
- 已知风险、阻塞和未验证区域。
- 版本控制状态,以及需要保留的无关改动。
- 引用只是支撑事实,不能替代事实:即使给了链接,也要简述每个决定和它的原因;文档、提交、diff 和测试输出用引用而不是整段复制。
- 你给出了输出路径就写到那里;没有给路径就只在回复里返回,不静默创建仓库文件。
不可绕过的规则
八项清单
目标、状态、关键文件、决定、命令结果、剩余任务、风险、版本状态。空的类别写"无",绝不省略。
事实而非流水账
记录结论和原因,文档与测试结果用引用。绝不整段复制对话内容。
默认不落盘
只有你明确给出路径时才写文件,否则交接内容直接返回在回复里。
只用新鲜状态
版本状态、diff 和验证输出都在交接时重新读取,而不是回忆会话早些时候的内容。
一次真实调用
从你发出的 token 到你拿回的证据,这次对话实际长什么样。
$engineering-flow:handoff
生成当前任务的续接记录,包含目标、已完成状态、关键文件、决定、最新验证、剩余任务、风险和 Git 状态。- 智能体
重新读取 Git 状态和 diff、权威需求记录,以及最近一次测试输出。
- 智能体
把事实组织成八项,"阻塞"这一项写"无",而不是直接省略掉。
- 智能体
逐条简述决定和它的原因,需求文档和测试结果用引用而不是粘贴全文。
- 智能体
把记录直接返回在回复里——因为没有给路径,所以没有创建任何文件。
什么时候用它
- 会话即将结束,工作要交给下一个会话或同事。
- 上下文窗口快满了,压缩之前需要把状态保存下来。
- 需要一份可执行的记录,说清任务到底停在哪里。
- 别人要接着做,不能让他重复你已经做过的决定。
什么时候改用别的
| 你的情况 | 改用 |
|---|---|
| 你要的是给人看的总结,不是续接记录 | 直接要一份总结即可 |
| 工作本身没做完,你希望把它做完 | Develop |
| 你想要的是对改动质量的评估 | Review |
常见问题
它会把交接写成文件吗?
只有你明确给出输出路径时才会。否则记录直接返回在回复里,不创建任何仓库文件。
为什么空的部分要写"无"而不是跳过?
因为在下一个读者眼里,"漏写"和"确实没有"看不出区别。写"无"才能证明这一类真的被检查过。
它会把整段对话粘进去吗?
不会。它记录结论和原因,文档、提交、diff 和测试输出都用引用而不是复制。
任务做到一半也能用吗?
可以。它会记录当前时刻的真实状态,包括未决决定和必须保留的无关改动。