Overview
通常,当你在Copilot和GitHub Copilot app中与GitHub Copilot CLI交互时,你提交提示,等待响应,然后给出下一个说明。 此来回继续,直到任务完成。
Autopilot 模式允许 Copilot 完成任务,而无需在每个步骤后等待输入。 提供初始指令后,代理可以编写代码、运行测试、评估结果并继续迭代,直到确定任务完成。
交互模式和 Autopilot 模式之间的差异,就像与一位会定期与你沟通的同事协作,和把一项任务连同明确的预期结果交出去,然后审查完成后的工作,这两者之间的区别。
Autopilot 模式可在GitHub Copilot CLI和GitHub Copilot app中使用。
Autopilot 模式的优点
- 无需干预执行: 完成初始指令后,Copilot 无需反复要求继续即可完成多个步骤。
- 高效的多步骤工作: Autopilot 模式适用于长时间运行的任务,例如实现详细的计划、编写测试、重构文件或修复可重现的故障。
- 连续迭代: 代理可以运行检查、对失败作出响应,并修改其工作作为同一任务的一部分。
- 程序化自动化: 在脚本和 CI 工作流中使用 Autopilot 模式,以允许 Copilot CLI 无人参与地运行任务。
注意事项
- 任务适用性: 将 Autopilot 模式用于具有明确的结果的任务,并有足够的详细信息让代理做出实现决策。 模糊、探索性或开放式任务更有可能需要你的指导,并可能会产生不符合你的预期的工作。
- 信任和访问: 代理可能需要修改文件、运行命令或访问网络资源的权限。 仅授予适合该任务的访问权限。 当代理需要受限环境中的广泛权限时,请考虑使用本地或云沙盒。 有关详细信息,请参阅“关于 GitHub Copilot 的云沙盒和本地沙盒”。
- AI 用法: 自动驾驶模式可以在实现目标的同时启动多个模型交互。 在任务运行时监视你的AI credits。
- 审阅: 你仍然要对代理人所执行的工作负责。 在提交、推送或合并更改之前,请查看更改和测试结果。
在仍在探索问题或期望做出频繁决策时,请使用交互模式。 当您想在开始实施前审查方案时,请使用计划模式,然后在计划满足您的要求后切换到 Autopilot 模式。
自主和权限
Autopilot 模式和工具权限是单独的控件:
- Autopilot 模式控制代理是否继续执行后续步骤,而无需等待另一个提示。
- 权限设置控制代理可以在不请求批准的情况下使用哪些工具和资源。
Autopilot 模式不会自动授予不受限制的访问权限。 如果不允许执行所需的操作,即使 Autopilot 模式处于活动状态,代理也可能无法完成任务。
授予广泛的权限可以允许代理修改或删除文件并运行命令,而无需先询问你。 尽可能限制访问,监视较长的任务,如果代理采用不适合的方法,请停止代理。 停止当前工作不会撤消代理已进行的更改。
典型工作流
Autopilot 模式对于实现详细计划特别有用:
- 描述目标、相关约束以及如何验证已完成的工作。
- 使用计划模式开发和查看实施计划。
- 在计划准备就绪时切换到 Autopilot 模式。
- 监视代理的进度,并在必要时中断它。
- 查看生成的更改,并像对待任何其他代码更改一样进行检查。