代理模式:对所有用户可用,并支持 MCP
2025年4月7日,作者:Isidor Nikolic
代理模式正在向所有 VS Code 用户推出!代理充当自主的结对程序员,可根据您的指令执行多步骤编码任务,例如分析您的代码库、提出文件编辑以及运行终端命令。它响应编译和 lint 错误,监控终端输出,并在循环中自动更正,直到任务完成。代理还可以使用贡献的工具,使其能够与外部 MCP 服务器或 VS Code 扩展交互,以执行各种任务。
对所有用户可用
打开聊天视图,登录 GitHub,设置
代理模式非常适合以下场景
- 您的任务涉及多个步骤。代理编辑代码、运行终端命令、监控错误并迭代解决出现的问题。
- 您不确定更改的范围。代理会自动确定相关文件和上下文。
- 您的任务需要与外部应用程序或数据交互。代理与 MCP 服务器和 VS Code 扩展集成。
另一方面,当任务具有明确定义的范围、您需要快速周转或需要对 LLM 请求的数量进行更精细的控制时,请使用编辑模式。
我们创建了一个统一的聊天体验,将聊天和编辑视图结合起来,带来了诸如会话历史记录、将聊天移动到单独窗口以及简化工作区视图等好处。所有这些现在也适用于代理模式。

我们不断收到来自用户的绝佳反馈 (请继续提供!),这启发了我们所做的许多改进。最值得注意的是
- 撤销操作现在将恢复到上次文件编辑工具调用的更改
- 支持在同一工作区中进行多个代理会话(在编辑会话不修改相同文件时效果最佳)
- 代理现在可以创建和编辑笔记本
- 自动批准工具调用的能力(四月份即将推出终端自动批准)
- 大量质量改进和错误修复
提问和编辑体验都在朝着一种类似于代理使用的工具的架构发展。我们正在进行此更改,以统一提问/编辑/代理模式,使其都具有代理性,目的是为了使整体用户体验更加顺畅。这允许编辑模式使用 edit_file 工具以提高速度,并允许编辑和提问模式使用 #codebase,这是一种具有代理性的代码库搜索。因此,不具备工具调用支持的语言模型将不再在编辑模式中可用。
要了解有关代理工作原理的更多信息,您可以阅读我们的 先前文章。
可扩展:MCP 服务器和 VS Code 扩展
就像 VS Code 扩展使您能够自定义特定的工作流程一样,代理的可扩展性允许您根据自己的需求定制代理。通过可扩展性,代理可以执行浏览器操作(执行 AI Web 调试)、连接到您的聊天和笔记应用程序、与您的数据库交互、从您的设计系统获取上下文、从 GitHub 获取问题和仓库上下文,并与您的云平台集成。代理模式的力量在于可用工具的多样性和用户添加和删除工具的灵活性。我们正在以预览版的形式推出可扩展性,并对所有用户开放。
代理模式可以使用以下工具
- 由 VS Code 贡献的内置工具(图表中为蓝色),允许代理搜索工作区、应用代码更改、运行终端命令、捕获来自编辑器的编译或 lint 错误、获取网站内容(
#fetch手动触发)等等。 - 由 MCP 服务器贡献的工具(图表中为绿色)。
- 由 VS Code 扩展贡献的工具(图表中为绿色)。

当 VS Code 团队在 语言服务器协议 (LSP) 于 2016 年发明时,我们的目标是标准化语言服务器与开发工具的通信方式。我们很自豪 LSP 已成为广泛采用的标准并实现了我们的愿景。最近,LSP 背后的想法 启发了一种新的协议:模型上下文协议 (MCP),它标准化了应用程序向 LLM 提供上下文的方式。通过 VS Code 中的代理模式使用由 MCP 服务器贡献的工具,我们现在又回到了 VS Code。
关于开发人员的控制
并非每个任务都需要您添加到代理模式的所有工具,并且与任何 AI 工作流程一样,具体说明会导致更好的结果。我们建议使用工具 UI 来管理和启用每个场景所需的工具,或通过在提示中键入 # 来显式引用工具。

为了让您拥有完全的控制权,每个工具调用都会在 UI 中透明地显示,并且需要您的批准(除了只读的内置工具)。您可以允许特定工具用于当前会话、工作区或所有未来的调用。如果您想通过始终允许代理使用所有工具来最大限度地减少中断,同时仍然保持安全性,请考虑使用 Dev Containers 扩展。这会将所有代理驱动的更改隔离在容器环境中,直到某个点(例如,如果允许,代理仍然可以推送到远程)。

开始使用
要自定义代理以适应您的工作流程,请在聊天输入框中选择 工具 图标,然后按照 添加更多工具… 流程操作。或者,请阅读我们的 MCP 服务器文档,其中解释了配置格式、如何添加 MCP 服务器或如何从现有的 MCP 客户端应用程序(如 Claude Desktop)导入 MCP 服务器。VS Code 支持本地标准输入/输出 (stdio) 和服务器发送事件 (sse) 以进行 MCP 服务器传输。
MCP 的 官方服务器仓库 是官方和社区贡献的服务器的绝佳起点,展示了 MCP 的多功能性。要安装贡献工具的扩展,请打开扩展视图并使用标签 @tag:language-model-tools 进行搜索。

作为开发人员,您可以通过创建 MCP 服务器来扩展代理,或者如果您是扩展作者,您可以 为您的 VS Code 扩展贡献工具。请参阅 这些文档 以获取有关编写工具的指导和最佳实践。
接下来会发生什么
代理模式正在每天改进,为了成为最先受益的人,请考虑安装 VS Code Insiders。使用 VS Code Insiders 并在 我们的仓库 中提供反馈是帮助我们改进产品的最佳方式。接下来,我们计划致力于
- 支持具有自定义工具集和 指令 的自定义模式
- 更快的代码应用体验
- 将 MCP 支持从工具扩展到提示、资源和最新的规范更新
- 流式编辑,仅限于已更改的代码块,以提高速度
- 检查点,以便轻松返回到代理模式会话中的特定步骤
- 整体性能和服务质量改进
确保您使用的是最新的 VS Code Stable,设置
快乐的氛围编码(现在有了 MCP 和扩展)!
Isidor 和 VS Code 团队