会话目标(Goal)
「目标」让 AI 围绕一个你给定的结果自主循环推进:它自己规划、执行、验证,并在每轮结束时判断目标是否达成,直到完成、受阻或达到预算上限才停下来。适合那种「有一个明确终点、能自己验证进度」的任务,例如「让 checkout 测试全绿」「把某个接口的 p95 延迟降到 120ms 以下」。
版本说明
目标功能自 1.13.0 起引入。
设定目标
在输入框输入:
/goal 让当前分支的单元测试全部通过,且不改动公开 APIAI 会立即开始自主循环。设定目标等同于一次授权:目标进行期间,工具调用自动放行(仍保留删除系统/工作区根目录这类灾难性操作的安全防护),并且暂停 PLAN 模式——因为计划模式需要你逐步审批,与「自主完成」冲突。
一个好的目标要能自证:
- 说清「什么算完成」和「怎么验证」,例如「跑
./gradlew test全绿」「页面能本地构建成功」。 - 指向 AI 该读的文件、日志或参考。
- 弱目标「写一下这个功能的文档」;强目标「产出 Goals 的文档页,说明生命周期与命令,并确保本地构建通过」。
查看与管理
| 命令 | 作用 |
|---|---|
/goal <目标> | 设定或覆盖目标,并立即开始 |
/goal | 查看当前目标与状态 |
/goal pause | 暂停自主循环 |
/goal resume | 恢复自主循环 |
/goal clear | 清除目标 |
输入框下方会常驻显示目标提示条,标注状态(进行中 / 已暂停 / 已完成 / 受阻 / 预算耗尽),并提供暂停、恢复与清除按钮,不必记命令。
运行中会发生什么
- 每轮结束后,AI 会对照目标与证据判断是否达成;未达成且预算未耗尽就自动进入下一轮,不会停下来问你「是否继续」。
- 想中途插手:直接发消息即可。你的消息优先于续跑执行,处理完再继续目标。
- 达成时 AI 会把目标标记为「已完成」;遇到需要你介入的阻塞(缺凭证、需决策)会标记为「受阻」并停下。
- 点「停止」打断时,目标会自动暂停(避免下条消息后继续自动跑),用
/goal resume恢复。 - 安全阀:自动循环连续 3 轮没有任何进展(无工具调用也无可见输出)时,会自动置为「受阻」并停止,避免空转消耗 token。
- 达到预算上限会自动停止并标记为「预算耗尽」,此时可
/goal resume继续或/goal clear清除。
预算上限
自主循环会持续消耗 token,因此有两道保险,可在 设置 → 偏好设置 → 目标(goal) 中调整:
- 最大续跑轮数:默认 50 轮。
- token 预算:默认 50 万,按循环期间的输入+输出 token 累计。
任一触顶即停止循环并提示。
注意
- 目标进行期间不能使用 PLAN 模式;需要规划时请先
/goal pause或/goal clear。 - 目标按会话保存,切换会话互不影响。