审核 AI 生成的代码编辑
当您在 Visual Studio Code 中与聊天进行交互时,AI 可以在您的项目中跨多个文件生成代码编辑。本文介绍了如何审查、接受或放弃这些 AI 生成的代码编辑。
待处理更改
一旦 AI 对您的文件进行了更改,它们就会直接应用并保存到磁盘。VS Code 会跟踪哪些文件有待处理的编辑,并允许您单独或一次性地审查它们。
聊天视图显示了已编辑且等待您审查的文件列表。在资源管理器视图和编辑器选项卡中,待处理编辑的文件也会带有方形点图标的指示器。

当您打开已更改的文件时,编辑器会显示所应用更改的内联差异(diff)。
当您关闭 VS Code 时,待处理编辑的状态会被记住,并在您重新打开 VS Code 时恢复。
审查更改
请按照以下步骤审查文件中的 AI 生成代码编辑
-
通过从聊天视图中的已更改文件列表或资源管理器视图中选择文件,打开带有待处理编辑的文件。
-
使用编辑器叠加层中的 向上 (Up) 和 向下 (Down) 控件,在文件内的各个编辑点之间导航。
-
对于每个编辑,请选择以下操作之一
- 选择 保留 (Keep) 以接受该编辑。
- 选择 撤消 (Undo) 以拒绝该编辑并回退更改。
- 将鼠标悬停在内联更改上,可以接受或拒绝该特定更改,而不会影响文件中的其他编辑。
-
或者,您可以从聊天视图中一次性接受或拒绝所有文件中的所有更改。

以下键盘快捷键可帮助您导航和审查编辑
| 操作 | 快捷键 |
|---|---|
| 导航到下一个编辑 | 编辑器叠加层中的 向下 (Down) |
| 导航到上一个编辑 | 编辑器叠加层中的 向上 (Up) |
当您保留或撤消文件中的某个编辑时,编辑器会自动导航到下一个带有待处理更改的编辑(可能位于不同的文件中)。要禁用此自动导航并停留在当前文件中,请将 chat.editing.revealNextChangeOnResolve 设置为 false。
源代码管理集成
如果您在“源代码管理”视图中暂存了更改,任何待处理的编辑都将被自动接受。反之,如果您放弃更改,任何待处理的编辑也将被放弃。
自动接受编辑
您可以配置 VS Code,使其在可配置的延迟后自动接受 AI 生成的代码编辑,使用 chat.editing.autoAccept 设置。将鼠标悬停在编辑器叠加层控件上可停止自动接受倒计时。
如果您自动接受所有编辑,强烈建议在源代码管理中提交之前审查这些更改。了解更多关于 在 VS Code 中使用 AI 的安全注意事项。
编辑敏感文件
为了防止对敏感文件(例如工作区配置设置或环境设置)进行无意的编辑,VS Code 会提示您在应用编辑之前进行批准。在聊天中,您可以查看提议更改的差异视图,并选择批准或拒绝它们。
使用 chat.tools.edits.autoApprove 设置来配置哪些文件需要批准。该设置使用 glob 模式来匹配工作区中的文件路径。
以下示例配置自动允许对除 .vscode 文件夹中的 JSON 文件和名为 .env 的文件之外的所有文件进行编辑,对于这些例外文件,系统会提示您批准
"chat.tools.edits.autoApprove": {
"**/*": true,
"**/.vscode/*.json": false,
"**/.env": false
}
从会话列表中审查文件更改
当会话完成并对您的项目进行代码更改时,会话列表会显示该会话的文件更改统计信息。要审查更改,请从列表中选择该会话以打开会话详情。

根据代理类型的不同,您可以选择将更改应用到本地工作区,或者检出该会话的分支(适用于云代理)。