Skip to main content
Quest

Goal 驱动

在 Quest 中选择 Goal 模式时,你只需描述想要达成的目标,Quest 会自主规划路径、持续迭代并验收结果,适合需要多步骤推进且希望「交付结果」而非「逐步指挥」的任务。

核心能力

适用场景

  • 长时间运行的编码任务:具有明确的成功条件与验证循环,例如提升测试覆盖率、性能调优、跨文件一致性修改等。Quest 自主循环执行并验收,直至目标达成。
  • 大型改造与重构:代码迁移、整库框架升级、批量 API 替换等无法预先穷举每一步的任务。用 Goal 描述期望终态,Quest 自行规划路径、持续迭代推进。

如何使用

1

开启 Goal 模式

点击输入框「+」按钮,打开 Goal 开关;或在输入框中输入 /goal
2

描述目标

用自然语言描述你想达成的最终状态。目标应描述期望结果而非具体步骤,Quest 会自行规划执行路径。
示例:`/goal 将项目测试覆盖率提升至 80%`
3

自主执行

发送目标后,Quest 进入自主执行循环:
- 输入框上方出现 Goal 进度卡片,显示当前目标与运行状态
- Quest 每轮执行后评估进度,未达成则自动继续,直至目标达成后自动结束
4

过程中管理任务

Goal 进度卡片支持以下操作:
- **编辑**:点击卡片右上角的编辑按钮修改目标描述。运行中编辑会在当前轮次结束后生效;暂停中编辑立即生效。
- **暂停与继续**:暂停后保留完整上下文与所有中间产物,点击继续即从中断处恢复执行。
- **删除**:删除当前目标任务,会话回到普通对话状态。已生成的文件和消息不会被删除。
目标驱动执行默认最多推进 10 回合,达到上限后自动结束。你可以在设置 → 集成 → 内置能力 → 目标驱动执行中调整最大回合上限,按任务复杂度自定义执行深度。

Goal 与 Spec 的区别

Goal 驱动Spec 驱动
定位以目标为导向,Agent 自主规划路径以规划为蓝图,按既定方案逐项实现
输入描述期望的最终状态结构化的方案描述
执行方式Agent 自驱迭代,自行判断完成度按 Spec 任务清单顺序执行
典型场景测试覆盖率提升、代码重构、性能调优新功能开发、按设计稿实现、明确需求交付

最佳实践

  • 描述可验证的最终状态:好的目标是「测试覆盖率达到 80%」而非「写一些测试」。Quest 需要明确的完成标准来判断是否达成。
  • 加入关键约束:如果有不希望被改动的部分,在目标中说明。例如「在不修改公共 API 的前提下优化内部实现」。
  • 适当缩小范围:过于宏大的目标(如「让整个项目变得更好」)会导致 Quest 难以聚焦。拆成具体的、可衡量的子目标效果更好。
  • 结合定时任务执行:耗时较长的 Goal 任务也适合安排在夜间执行,通过 /schedule 设置 定时任务 触发。