Plan 与 Autopilot 工作流
先审阅计划,再设置自主续作、批准方式和停止条件。
Plan 用于在编码前明确方案;Autopilot 用于围绕明确目标连续执行多个步骤。它与“全部允许工具”是不同维度,不能仅凭授予工具权限就认为已开启自主续作。
先形成计划
在交互会话中按 Shift+Tab 循环切换模式,进入 Plan 后描述目标、限制与验收条件。Copilot 会分析请求并提出澄清问题,在写代码前组织实现计划。
确认计划可执行后,可选择界面给出的 Accept plan and continue in Autopilot execution mode,再处理权限选项。需要继续人工迭代时,也可保持普通交互流程。
自主续作与停止
Autopilot 在初始指令后自动推进后续步骤,直到任务完成、遇到无法继续的问题、你按 Ctrl+C,或达到续作上限。Autopilot 专题写默认 5 次自动 continuation 消息后暂停,但当前命令参考的 --max-autopilot-continues 写默认 unlimited,两者存在差异。要可靠限制运行,应显式指定次数并核对当前版本帮助;continuation 不是工具调用次数,也不是分钟。
使用 --max-autopilot-continues 改变该上限。交互中再次按 Shift+Tab 可切回普通模式。适合使用 Autopilot 的任务应有可判断的终点,例如完成明确重构并通过指定测试。
权限不会自动消失
进入 Autopilot 时,如果尚未授予全部权限,界面会提供 Enable all permissions、Use Manual Approval for this session、Cancel。
这里的 Manual Approval 容易误解:官方说明此模式下需要批准的工具请求会自动拒绝,并非每一步停下来让用户批准,因此任务可能无法完成。会话中可用 /allow-all 或 /yolo 授予完整权限;它们不是开关,再执行一次不会收回授权。
启用本地沙箱时,智能体可连续完成沙箱内允许的操作,但需要逃逸沙箱的步骤会被拒绝。是否允许全部工具,与实际系统隔离仍应分别考虑,参见目录与网络访问权限。
任务结束后的模式
默认完成任务后仍留在 Autopilot,下一个提示也按该模式处理。若希望每个任务结束后回到普通交互模式:
/settings stayInAutopilot false或在个人 settings.json 中设置 "stayInAutopilot": false。此设置只决定任务完成后的模式,不会使已完成的任务继续运行。
与其他选项比较
| 选项或模式 | 改变什么 |
|---|---|
| Autopilot | 自动继续与模型交互,推进任务 |
--allow-all / --yolo | 允许工具、路径和 URL,不自行切换续作模式 |
--no-ask-user | 抑制澄清问题,不等同于自主多轮续作 |
自动发起的模型交互同样消耗 AI credits。除了续作次数,还可配置会话额度上限。
非交互执行
官方给出的完整自主执行形式为:
copilot --autopilot --yolo --max-autopilot-continues 10 -p "YOUR PROMPT HERE"这同时授予宽泛权限,应在适当隔离和明确任务范围下使用。命令的续作上限可防止无止境重试,但不能保证任务一定在上限内完成。