Skip to content

4.6 计划模式 ​

本节目标

学会用计划模式让 agent 先把步骤摊开给你看,批准后再动手。

什么时候需要计划模式 ​

大部分任务,agent 边想边干没问题。但有些任务不适合"边干边想":

  • 改动大的活:比如重构整个模块,干到一半发现方向错了,返工成本高
  • 牵扯面广的活:改一个地方影响十几个文件,最好先看清全貌
  • 不容出错的活:比如数据库迁移,一步错就麻烦

这类任务,你希望它先交方案,你点头,再动手。计划模式就是干这个的。

怎么进入计划模式 ​

计划模式用斜杠命令控制,在输入框里输入:

text
/plan

发送后,dsh 进入计划模式。它的效果是:在计划模式期间,agent 会被引导先思考、再出计划、等你审阅,而不是直接动手执行。

计划模式是引导,不是强制

计划模式先让 agent 出方案、你审阅批准后再执行的工作模式,用 /plan 进入。Plan mode是"软约束":它把"先计划再执行"写进 agent 的提示里引导它照做,但不额外限制它的工具权限。权限agent 能执行的操作范围,由沙箱和审批策略共同决定。Permission/pərˈmɪʃn/边界还是靠 4.4 节的权限模式管。日常小任务没必要开计划模式,反而多一道审阅。

退出计划模式,输入:

text
/plan off

也可以带着消息进入,比如:

text
/plan 帮我重构登录模块的权限校验部分

这条命令会同时进入计划模式,并把你的需求作为下一步的任务提交给 agent。

计划模式里会发生什么 ​

进入计划模式后,你发一个任务,agent 会:

  1. 先研究:读相关代码、理清现状(这阶段它只读不动)
  2. 出计划:把要做的步骤整理成一份计划,展示给你
  3. 等你审阅:你检查这份计划,批准或提修改意见
  4. 批准后执行:你点头了,它才开始真正动手

界面会显示计划模式的状态,让你清楚当前处于"等待审阅"还是"执行中"。agent 通常会按批准的计划推进,全程你都知道它要干什么、干到哪了。

怎么退出计划模式

除了输 /plan off,agent 在计划模式里完成计划后,会通过审阅环节把计划交给你批。你批准后,计划模式才会结束,agent 开始按计划执行。

计划卡片:提交过的计划随时回看 ​

0.1.6-alpha.2 起,agent 每次提交计划,回合末尾的产物区都会多一张计划卡片:带 Markdown 图标、计划标题和一个打开操作。它和审批框的生命周期是分开的:

  • 审批关了,卡片还在:批准、拒绝或者关掉审阅框,已记录的计划卡片都留在消息流里,实施到一半也能随时回来对照原文
  • 待审批的卡片更好用:还没处理的审批卡片会带状态、两行纯文本摘要、一个查看全文链接,以及要求修改和同意执行按钮;全文会自动在右侧边栏打开预览,看完再决定
  • 刷新不丢:已提交的计划在浏览器刷新后依然可读,点开就在侧栏看 Markdown 全文

注意两点:卡片只代表提交过这份计划,不代表批准或执行成功(哪怕那次调用被拒绝,参数也留了卡);重新打开历史计划不会恢复已经结束的审批,要看新审批还是得回审阅框。

一个完整例子 ​

假设你要重构一个模块:

  1. 输入 /plan 重构登录模块的权限校验
  2. agent 开始读代码,只读不改
  3. 几分钟后,它给出计划:第 1 步抽公共校验函数,第 2 步替换三处调用,第 3 步补测试
  4. 你检查,觉得第 2 步还要改一处注释里提到的旧接口,让它加上
  5. agent 更新计划,你批准
  6. 它按计划一步步执行,每一步都对应计划里的一项

全程你都知道它要干什么、干到哪了。

常见问题 ​

问:批准计划后想改主意?

随时可以打断,直接说"停一下,第 2 步改成那样"。agent 会按新要求调整。

问:计划模式下 agent 会一直不执行吗?

会等你的批准。没批准它就停在"等待审阅"。如果它干等着,回到界面看看是不是有没处理的审阅请求。

小结 ​

  • 计划模式让 agent 先出计划、你批准后执行,适合大改动和不容出错的活
  • 输入 /plan 进入,/plan off 退出,/plan 消息 带任务进入
  • 计划审阅可以反复修改,批准后才动手
  • 0.1.6-alpha.2 起提交过的计划留在卡片里,审批关了还能回看,全文在侧栏预览

计划模式会把任务拆得很清晰,下一节看看怎么把大任务拆给子代理由主智能体委派出去执行子任务的子智能体,可并行工作、结果汇总回主会话。Subagent/sʌbˈeɪdʒənt/并行干。

发现错误?提交反馈 · 欢迎 提 PR 改进本书