Quest 模式
Spec 驱动的自主委派,把长任务端到端交给 AI
给 AI 一份蓝图,它自己规划、执行、验证、交付权限是安全网。这一章是 Qoder CLI 区别于普通 AI 助手的标志性能力 —— Spec 驱动的自主委托,把端到端任务整体交给 AI。
全程盯着
复杂任务里,你和 AI 像在玩乒乓球
一步一确认太累
一个有十几个步骤的需求(如"加一个完整的用户注册流程"),每一步都要你确认,你成了 AI 的操作员,反而被它拴住。
AI 走偏了才发现
对话式推进,AI 走到一半你才发现方向错了——前面的工作白做,缺乏整体规划。
验证全靠你
AI 说"改好了",到底好不好、测试过没有、有没有破坏别处——全靠你手动核查。
什么是 Quest
定义、白话、和普通对话的区别
Quest 是 Qoder CLI 的Spec 驱动自主委派模式。你用自然语言描述一个完整需求,AI 先把它结构化成一份 Spec(规格说明),经你确认后,自主完成规划、执行、验证、修复的全流程。
说白了,普通对话是你和 AI 一起写代码,Quest 是你把一个项目外包给 AI——你给需求文档,它交成品。你从"操作员"变成"甲方"。
普通对话模式
- 你指挥一步,AI 做一步
- 每步基本都要确认
- 缺乏整体规划
- 验证靠你手动
- 适合小任务、探索
Quest 模式
- 你给需求,AI 自主推进
- 只在关键节点介入
- 先 Spec 规划再执行
- 自动跑测试验证
- 适合完整功能、长任务
Spec 驱动
Quest 的核心:先规划,后执行
Quest 之所以可靠,关键在Spec——在动手之前,AI 先把你的需求翻译成一份结构化的规格说明:

图:Quest 的 Spec 驱动流程
【AI 生图提示词】请生成一张中文技术示意图,风格简洁、配色柔和、适合教学: - 画面主体:从左到右的流程箭头,四个阶段方框:"需求描述" → "生成 Spec" → "自主执行" → "验证交付" - 在"生成 Spec"和"自主执行"之间画一个橙色虚线方框标注"用户确认",表示人工介入点 - 在"自主执行"方框内分三个小步骤:规划、编码、测试 - 在"验证交付"下方标注"失败则自动回到执行" - 配色建议:浅蓝背景,深色文字,主流程箭头用橙色,反馈循环用灰色虚线 - 画面比例:16:9
Spec 通常包含:
- 目标:要达成什么
- 步骤:拆解成可执行的子任务
- 涉及文件:会改动哪些代码
- 验收标准:怎么算完成(通常是测试)
启动 Quest
两种方式触发一个 Quest
方式一:斜杠命令
直接用 /quest 命令,然后描述你的需求:
/quest 给项目加一个用户注册功能,
要求:邮箱注册、密码加密存储、
注册成功发欢迎邮件、写单元测试
方式二:自然语言触发
在对话中描述一个完整需求,AI 识别后主动建议进入 Quest:
> 我想重构整个认证模块,迁移到 JWT,
保持向后兼容,要有完整测试
(AI 识别这是大任务,建议用 Quest)
执行流程
Spec 确认后,AI 自主跑完四个阶段
| 阶段 | AI 做什么 | 你的角色 |
|---|---|---|
| 1. 规划 | 按 Spec 拆解步骤,安排执行顺序 | (已在 Spec 确认时参与) |
| 2. 执行 | 读写文件、运行命令、调用子代理 | 关键操作可能仍需确认(看权限模式) |
| 3. 验证 | 自动跑测试、检查验收标准 | 可随时查看进度 |
| 4. 修复 | 测试失败时自主定位并修复 | 失败严重时可能介入 |
进度追踪
Quest 跑起来后,怎么知道它干到哪了
Quest 是长任务,你不能干等。Qoder CLI 提供几种方式追踪进度:
实时日志
TUI 里会实时显示 AI 当前在做什么——读哪个文件、跑什么命令、遇到什么问题。随时可看。
任务列表
用 /tasks 查看后台运行的 Quest,包括状态(进行中/已完成/失败)和当前步骤。
中断与恢复
Quest 可以中断(比如你要下班了),下次用 /resume 恢复继续。不会丢失进度。
完成通知
配合第 09 章的 Hook,Quest 完成时自动通知(语音、桌面通知),你不必一直盯屏。
适合 Quest
什么任务值得用 Quest 而不是普通对话
完整功能开发
"加一个用户注册流程""实现商品搜索+筛选""做一个数据导出功能"——边界清晰、可测试的完整需求。
大规模重构
"把所有 class 组件改成 hooks""迁移到 TypeScript"——步骤多但模式统一的批量改造。
带验证标准的任务
"修复这个 bug,确保所有现有测试通过"——有明确验收标准,AI 能自己判断完成度。
探索性原型
"做个 demo 验证这个想法"——容错度高,适合放手让 AI 试。
不适合 Quest
这些场景,普通对话反而更合适
需求模糊
你自己都没想清楚要什么,Spec 也写不明白。先用对话探索清楚,再考虑 Quest。
高风险操作
涉及生产数据库、支付逻辑、不可逆操作。这类要全程人工把控,不适合自主委派。
小修小补
改一个 typo、调一个样式——启动 Quest 的规划成本比直接做还高,用对话更快。
需要大量决策
每一步都要你拍板的设计决策——Quest 的自主性反而成累赘,对话更灵活。
权限配合
Quest 的自主性建立在权限护栏之上
Quest 让 AI 自主跑很多步,权限配置就格外重要——这是你能放心委派的底气。
推荐:accept_edits + 精确 Bash allow
文件编辑自动批准(流畅),shell 命令只允许安全集合(npm test、git status),危险命令 deny。
敏感项目:default + Hook 拦截
每步都确认 + PreToolUse 钩子扫描敏感操作。安全最高,但参与度也高。
实验环境:bypass_permissions
完全放手。但仅限可信沙盒,比如一次性 demo 项目。
CI 自动 Quest:auto + 精确规则
结合第 11 章的 CI 权限配置,让 Quest 在流水线里自主跑,失败就 fail-closed。
排错指南
Quest 相关的高频问题
Quest 走偏了方向
原因:Spec 阶段你没仔细 review,或需求描述不够清晰。修复:中断 Quest,重新描述需求;务必在 Spec 确认环节把方向校准。
卡在验证循环出不来
原因:测试一直失败,AI 修不好。修复:人工介入看失败原因;可能是测试本身有问题,或任务超出 AI 能力,降级为对话逐步推进。
Quest 中途没响应
原因:可能在等权限确认,或网络波动。修复:检查是否有待确认操作;用 /tasks 看状态;必要时中断恢复。
Credits 消耗过快
原因:Quest 是长任务,token 消耗大。修复:用 /usage 监控;复杂 Quest 选高峰外时段(折扣);拆成多个小 Quest。
动手练习
用一个真实需求体验端到端委派
练习 1:选一个合适的任务
- 在你的项目里找一个边界清晰、可测试的功能
- 比如"给某个工具函数加输入校验和单元测试"
练习 2:启动 Quest 并 review Spec
- 用
/quest描述需求 - 仔细看 AI 生成的 Spec,必要时让它调整
- 确认方向无误后才让它执行
练习 3:观察自主执行
- 看 AI 如何规划、执行、验证
- 观察"验证—修复"闭环
- 完成后 review 它的改动,体会效率提升
本章回顾
带走的三个核心认知
Quest 是端到端委派
给蓝图,AI 自己规划、执行、验证、修复、交付。
Spec 是契约
先规划后执行,你 review Spec 把关方向,避免走偏。
权限是护栏
Quest 的自主性建立在权限圈定的安全边界内。
控制篇结束。接下来进入工程化篇——第 14 章,让 CLI 走出终端,进入 CI/CD 流水线。
延伸阅读
继续本课程
- 下一章:高级特性与 CLI 工程化 — Print 模式与 CI 集成
- 权限系统 — Quest 安全委派的基础
官方资源
- Quest 使用文档
- 工具能力 — Quest 调度的工具集