Skip to content

Copilot CLI 在执行任务过程中支持实时引导:你可以随时输入提示词来纠正方向、补充说明或调整范围,Copilot 会把这些输入当作"引导信号"在当前任务中及时处理,不会排队等待。

GitHub Copilot CLI 实时引导:中途纠偏和调整执行方向

什么是实时引导

当 Copilot 正在执行一个任务时,你可以随时输入文字来影响它的执行方向。这些输入会被当作引导信号(Steering),Copilot 在处理当前步骤时会将其纳入考量。

和消息队列不同——没有等待队列,每条引导提示会在当前任务的执行流中即时处理。

典型的引导场景

1. 发现 Copilot 方向跑偏

Copilot 开始修改的文件不是你期望的,或者采用了错误的实现思路:

等一下,我不想改这个文件,只改 src/utils.ts 就行
这个方案太重了,用更简单的方式实现就行,不需要引入新的依赖

2. 拒绝权限请求时补充说明

Copilot 请求执行某个 Shell 命令,你拒绝了,但希望它换一种方式:

不要用 npm run build,用 bun run build 代替

3. 动态调整任务范围

任务执行到一半,你改变主意了:

先停下来,把 auth 模块的修改先提交一个 checkpoint,然后再继续
这部分先跳过,我想先看 API 测试的部分

4. 提供 Copilot 缺少的上下文

那个函数在 lib/helpers/ 目录下,不是根目录

按 Esc 中止执行

如果情况比较紧急(比如 Copilot 正在做一些明显错误的操作),直接按 Esc 立刻中止当前执行。

中止后可以:

  • /undo 回滚到本次执行前的状态
  • 重新描述任务,让 Copilot 重新开始

实时引导 vs Plan 模式

方式时机适用场景
Plan 模式 (Shift+Tab)执行前方案确认,避免大方向跑偏
实时引导执行中小幅纠偏,动态调整
Esc + /undo执行中/后严重偏差,需要完全回滚

对于复杂任务,建议先通过 Plan 模式把大方向确认好,再执行,减少中途引导的需要。

常见问题

Q: 引导提示会不会被延迟处理?

A: 引导提示没有队列,但 Copilot 处于某个步骤的深度执行中时,可能需要等当前步骤完成才能响应。如果需要立刻停止,用 Esc 更可靠。

Q: 引导能影响 Autopilot 模式吗?

A: Autopilot 模式下 Copilot 自动执行,但你仍然可以输入引导提示。不过 Autopilot 的设计目标是减少打断,如果你需要频繁引导,普通模式或 Plan 模式更合适。