第十六节 计划与待办状态

[!ref] 详解见用户手册「计划与待办」节。

16.1 计划(Plan)状态机

状态 触发 下一态
起草中 助手开始写计划 草稿就绪
草稿就绪 助手发出完整计划 已接受 / 已修改 / 已拒绝
已修改 用户编辑后回交 起草中(再补完善)
已接受 用户点击「接受」 进入执行
已拒绝 用户点击「拒绝」 助手重写

16.2 待办(Todo)状态

状态 图标 说明
待办 尚未开始
进行中 助手当前正在做
完成 已完成
失败 已失败或被跳过

16.2.1 待办核对与自报暂停

项 取值
触发点 一轮收尾、待办清单仍有未完成项,且最后一次更新清单之后又调用过其他工具(提问、工具加载、记忆检索等辅助工具不算;读取与分析类算)
手段 补一条隐藏 user 消息(source = auto_todo_nudge),要求只核对清单(标完成 / 改写 / 删除),本轮不执行未完成项、不追问是否继续
搭车 本轮已有其他自动续跑消息时,核对只作为附言并入该消息,不额外多跑一轮
收手 核对这一轮结束后不再核对;核对轮内的读取核实不算新工作;用户手动停止的那一轮不补核对
自报暂停 模型输出 <todo-status>paused</todo-status> 即视为"按用户要求暂缓",核对随即抑制,直到待办清单发生变化。该标签不入正文;在轨迹面板中以「自报暂停」步与「暂停待办」计数呈现
以提问收尾 干活的一轮以向用户提问收尾同样抑制核对;核对轮自己的提问不算
跨压缩 暂停意图随上下文压缩保留,压缩后不会重新开始核对
持久化 暂停意图随会话落盘,重启后继承
子代理 询问求助不下放给子代理;无人值守场景不派发等待用户的表单

16.2.2 会话目标(Goal)状态

状态 含义
active(进行中) 正在推进
paused(已暂停) 用户手动暂停
idle(暂停中) 目标存在但当前无 Agent 在执行;浮窗给出「继续推进」按钮
complete(已完成) 已标记完成
budget_limited(预算耗尽) Token 预算用尽,Agent 进入收尾模式;可点「继续」放行或调大预算
项 取值
面板内编辑 可就地改 objective 与 Token 预算;改 objective 把状态拉回 active 并在下一轮注入更新引导,只改预算不影响进度
预算留空 即不限
自动续转 带停滞感知:连续空转 4–5 轮即拦截,不再烧满轮次上限
子任务在跑 停滞感知冻结;该类续转轮次不计入 cap
与待办核对 两者搭同一条注入通道并行:核对作为附言并入续转消息,不互相饿死
用量计数显示 点击循环切换:原始 / 千分位 / 紧凑 / 百分比;有子代理时可展开「自身 / 子代理 / 工具调用」构成
斜杠命令 /goal <目标>、/goal budget <N>、/goal pause、/goal resume、/goal complete、/goal clear

16.3 跨折叠保留

历史折叠发生时,下列字段始终原样保留在新摘要中:

  • 计划当前状态(起草中 / 草稿就绪 / …)
  • 计划的最新版本号与差异概要
  • 待办列表的全部条目与其状态
  • 用户已确认的关键决策("接受了 v3 计划")
  • 上下文必需事实(路径、版本号)