--- id: handoff-to-another-agent type: sop group: C status: published version: 1 updated: 2026-11-06 token_estimate: 1921 --- # 如何把一件事交给另一个 Agent > **用途**:让接手方在你不说话的情况下,也能判断「现在该做什么、什么不能做、做到什么算完」。 > > **覆盖**:多 Agent 协作、跨实例接手、人交接给 Agent、Agent 交接给人。 > > **产出**:一份交接包(状态 + 边界 + 验收),不是一段任务描述。 > > 拿到就能跑:**先判断该不该交**。交接的成本常常高于自己做。 --- ## 触发的变异问法 - 「怎么让另一个 AI 接着做」 - 「换了个对话框,它不知道前面干了什么」 - 「两个 Agent 怎么分工」 - 「怎么交接给别人」 - 「它重复做了我已经做过的事」 - 「它把我改的东西覆盖了」 - 「怎么让接手的人快速上手」 - 「任务做到一半要换人怎么办」 --- ## 什么时候不要用这份文件 - **对方能看到你的完整上下文** —— 同一次会话里换角色,不需要交接包。 - **任务三分钟能做完** —— 写交接包的时间比做还长。 - **交接的是「知识」而不是「任务」** —— 那是写文档,不是交接。 - **还没想清楚要交什么** —— 先想清楚,再交。边做边交,两边都会返工。 --- ## 判断:先问三个问题 | # | 问什么 | 怎么问出口(原话) | 判据 | 答不上来时 | |---|---|---|---|---| | Q1 | 这件事需要在我停手之后继续吗 | 「我要是现在走开,这件事会卡住吗?」 | 会卡住 → Q2;不会 → **自己做** | 看有没有「只有我能做的下一步」 | | Q2 | 对方有我没有的条件吗 | 「换个人做,会不会更快、或者能看到我看不到的东西?」 | 有 → Q3;没有 → **自己做** | 交接不会让它更聪明,只是换了个执行者 | | Q3 | 交接成本低于重做成本吗 | 「写清楚要花多久?我做要花多久?」 | 低 → **交**;不低于 → **自己做** | 估一下:交接包写不到十分钟的,通常不值得交 | ### 分支 | 条件 | 做法 | |---|---| | Q1 = 不会卡住 | **自己做** | | Q1 = 会,Q2 = 没有独有条件 | **自己做**(交接只增加一次信息损耗) | | Q3 = 成本不低于重做 | **自己做** | | 三条都过 | **交**,写三件套 | ⛔ 最常见的错误是「为了并行而交接」——并行只在两段工作真的互不依赖时才有效,否则两边会做同一件事,或者互相覆盖。 --- ## 交付三件套 交接包里必须有三样,缺一样对方就得猜: ### ① 状态:现在在哪 不是「我做了什么」,是**「现在处于什么状态」**: ``` 做到哪一步:<步骤名 / 序号> 产物在哪:<文件路径或链接> 还没做的:<下一步是什么> 已知的问题:<发现的坑、待确认的点> ``` ⛔ 不要写过程流水账。「我先查了 A,又查了 B,发现 C 不对」——对方要的是**结论状态**,不是你的探索路径。 ### ② 边界:能做什么、不能做什么 | 项 | 内容 | |---|---| | 可以改 | <文件 / 模块 / 范围> | | 不可以改 | <别人的部分、已定稿的、线上的> | | 遇到什么要停 | <需要授权的动作、判断不了的岔路> | **「不可以改」比「可以改」更重要。** 交接事故里最常见的是「它顺手改了你没让它改的东西」。 ### ③ 验收:怎么算做完 ``` 完成判据:<能判真假的句子> 谁来验:<人 / 自动检查 / 双方> 验不过怎么办:<退回 / 降级 / 重新交接> ``` ⛔ 没有验收标准的交接,等于把「做没做完」也一起交了出去。 --- ## 出问题怎么办 | 现象 | 最可能的原因 | 处理 | |---|---|---| | 对方重复做了已完成的部分 | 状态没写清「到哪一步」 | 补状态,标明产物位置 | | 对方覆盖了我的改动 | 边界没写「不可以改」 | 补边界,指明归属 | | 做完发现不是要的 | 验收标准缺失或不可判 | 补可判的完成条件 | | 交接后信息对不上 | 交接包过期(写的是几小时前的状态) | 交接前刷新一次状态 | | 对方卡住不问 | 没写「遇到什么要停」,它不敢停也不敢问 | 补停住条件与提问方式 | | 两边同时改同一处 | 并行边界没划清 | 拆成互不重叠的范围,或改成串行 | 最后一条值得单独说:**并行不是把任务分两半,是把「互不重叠的写权限」分两半**。分的是范围,不是工作量。 --- ## 输出规范 ### 人读 ``` 交接:<一句话说清交给谁、做什么> 状态:第 N 步 / 产物在 <位置> / 下一步是 <动作> 边界:可改 <...>;不可改 <...>;遇 <情况> 停住 验收:<判据> · 由 <谁> 验 · 不过则 <处置> ``` ### 机器读 ``` handoff: {to, task} state: {step, artifacts: [...], next, known_issues: [...]} boundary: {may_change: [...], must_not_change: [...], stop_when: [...]} acceptance: {criteria, verifier, on_fail} ``` `boundary.must_not_change` 为空时,这次交接风险最高——**说明你还不知道哪些地方碰不得**。 ### 一句话版 `交到第 3 步,产物在 X;只能改 Y,不要动 Z;做完看 A 指标。` --- ## 常见错误 - **交接任务,不交接状态** —— 「你去做 B」→ 它从零开始,可能重复你做过的一半。 - **不写「不可以改」** —— 交接事故的头号原因。 - **用过程代替状态** —— 对方不需要你的探索路径,需要你现在在哪。 - **没有验收标准** —— 做完没人能说「这算不算完」。 - **交接包过期** —— 写的是两小时前的状态,对方按它做就错了。 - **为并行而交接** —— 两段工作不独立时,并行会互相覆盖。 - **交接完就不管** —— 交接不是甩手,验收那一环还连着。 --- ## 最后核对 2026-11-06。协作方式随工具变化,但「状态 + 边界 + 验收」三件套与平台无关。与所执行系统的既定标准冲突时,以那个系统的标准为准。