Microsoft 的 Visual Studio Code 1.146 版本进一步将代理操作迁移到 Copilot harness,同时新增实验性会话分流、预览版聊天窗口、扩展模型比较、画布连续性、扩展管理、远程连接和新的信任控制。该版本还提供 1.146.0 下载,并包含大量终端、任务、市场、内存、辅助功能和编辑器修复。

对于 CTO 和工程领导者而言,信号很明确:代理优先开发正成为一种运营模式,而不再只是侧边栏功能。当前的首要工作是在 2027 年 2 月之前从 Local harness 迁移,决定哪些实验性功能适合受管环境,并验证管理模型、扩展、凭据、代理和远程访问的控制措施。

1. Copilot Harness 迁移的截止日期为 2027 年 2 月

它是什么

根据 Microsoft 的 VS Code 1.146 发行说明,自 VS Code 1.143 起,Copilot harness 已成为新会话的默认选项。它基于 Copilot SDK 构建,并通过 Agent Host 运行会话,使其可在后台继续运行,并可从编辑器窗口和 Agents 窗口访问。

Microsoft 表示,Copilot harness 还会强制执行 Local harness 不具备的受管沙盒和权限策略。这是一条运行边界,而不仅仅是换了名称的运行时。

Local harness 现已弃用,计划于 2027 年 2 月移除。Microsoft 表示,在中间的三个月内它仍可使用,但功能已冻结;新功能和改进将聚焦于 Copilot harness,且不保证可与 Local harness 配合使用。

在 VS Code 1.142 中引入的企业受管设置 vscode.temporaryDefaultToLocalHarness 将随 Local harness 一同消失。现有组织不能将该设置视为持久性策略。

VS Code 1.146 还将 Agent Host 扩展至虚拟存储库。Microsoft 表示,Copilot harness 工作流现在可在虚拟存储库中运行,无需用户将其克隆到本地文件夹。

为什么重要

在截止日期之前迁移。团队应盘点仍依赖 Local harness 的工作流、对话、自定义项、工具和策略,然后在 2027 年 2 月之前于 Copilot harness 下验证它们。

由于旧运行时已冻结,推迟迁移也意味着推迟获取后续代理改进。这并非一个可无限期存在的兼容性开关,而是一次有计划的运行时退役。

虚拟存储库支持扩展了代理可运行的范围。平台团队应审查现有 Copilot 和存储库访问策略是否充分覆盖以虚拟工作区形式打开的存储库,因为之前的技术限制不再提供隔离。

2. 收件箱模式将代理会话转变为工作队列

它是什么

Microsoft 将实验性的收件箱模式描述为跨项目代理会话的集中视图。它由默认关闭的 sessions.list.inboxEnabled 控制。

启用该设置后,用户在 Agents 窗口中依次选择 Grouping 和 Inbox Mode。需要关注的会话会首先出现,之后是 Working、Ready to merge、On hold 和 Done 分组。

用户可以使用 Dismiss from Inbox、Put on Hold 或 Snooze 来推迟会话。Microsoft 将关闭与归档区分开来:关闭会话不会将其归档,而 Mark Session as Done 会将其归档。

VS Code 1.146 还在 sessions.list.inlineActions 下添加了实验性会话列表操作。启用后,这些控件可发送请求来修复失败的检查或处理审查评论,而无需打开相应会话。

Microsoft 表示,每项操作都会在后台定位该行的会话或嵌套会话。该设置不会启用 Agent Merge,也不会改变现有操作权限。

为什么重要

收件箱模式将代理监督从按工作区逐一检查转变为队列管理。当开发人员有多个后台会话等待批准、生成变更或准备合并工作时,这一点尤为重要。

在标准化之前试点其语义。团队应就 Dismiss、On hold、Ready to merge 和 Done 在其开发流程中的含义达成一致。否则,共享界面可能会掩盖不一致的处理方式,而非改善协调。

内联操作减少了导航,但不会减少权限。现有权限仍然决定代理可以执行什么操作,因此管理员应将 sessions.list.inlineActions 视为工作流控制,而不是新的权限边界。

3. 聊天窗口重塑代理工作区

它是什么

预览版 Chat windows 功能为聊天提供独立窗口,其中包含关联的编辑器和终端。在 Stable 中,它默认关闭,需要 sessions.chatWindows.enabled;Microsoft 表示,它在 VS Code Insiders 中默认启用。

用户可以右键单击会话或聊天,依次选择 Open in 和 New Window,或者将聊天从 Agents 窗口中拖出。Move to Main Window 命令可将其返回。

一个聊天窗口可包含来自一个或多个会话的多个聊天。用户可以从标题栏选择另一个会话、在窗口之间拖动聊天,或者在 macOS 上使用 ⌘N、在 Windows 和 Linux 上使用 Ctrl+N 启动会话。

Microsoft 表示,VS Code 重启后聊天和编辑器会重新打开。在每个窗口中,用户可以移动各部分、拆分布局、移动编辑器选项卡、将编辑器附加到聊天上下文、重新定位终端,以及在并排和堆叠布局之间切换。

命令 Agents: Toggle Chat Conversation 可将堆叠对话折叠为其输入框。Developer: Reset Chat Window Layout 可恢复初始布局。

为什么重要

聊天窗口使开发人员可以围绕代理会话创建特定任务的工作区,而无需持续在一个共享面板内切换。审查会话可将其对话、变更文件和终端保留在一起,而另一个窗口则专用于实现工作。

这为支持和治理创建了新的工作区层。平台团队应在建议将该预览功能用于日常生产工作之前,测试重启恢复、多显示器使用、终端位置、上下文附加和扩展行为。

该功能在 Stable 中仍处于预览阶段。应将其布局持久性视为工作流便利,而不是已提交代码、已记录决策或持久项目文档的替代品。

4. Agents 窗口扩展减少上下文切换

它是什么

VS Code 1.146 扩展了 Agent Customizations 下的实验性 Extensions 部分。Microsoft 表示,用户现在无需离开 Agents 窗口即可查找、安装和卸载扩展。

市场搜索结果包含尚未安装的扩展,以及其发布者、安装次数和评分。安装扩展会将其添加到 VS Code 并在 Agents 窗口中启用,而相邻的下拉菜单可选择另一个版本,包括预发行版。

如果扩展贡献了视图、调试器、状态栏项或演练内容,但未声明对 Agents 窗口的支持,VS Code 会发出警告。如果组织策略阻止安装,界面会显示原因。

用户可在 macOS 上使用 ⇧⌘X、在 Windows 和 Linux 上使用 Ctrl+Shift+X,或使用 Extensions: Manage Extensions 命令来打开扩展管理。Microsoft 表示,为编辑器 Extensions 视图自定义的快捷键也适用于 Agents 窗口。

为什么重要

Agents 窗口内的扩展发现缩短了从识别缺失功能到安装该功能的路径。它也让扩展来源和兼容性更为重要,因为安装现在可直接在面向代理的工作区内进行。

保留扩展治理。市场可用性不应被解释为组织批准。使用私有市场、允许列表或已阻止发布者的团队应验证,这些策略是否会在 Agents 窗口中生成预期消息。

兼容性警告同样值得关注。扩展可以成功安装,但其贡献的一些功能可能仍不可用,因此平台团队应记录受支持的代理窗口扩展,而不是根据安装状态推断完全兼容。

5. 模型比较新增 Fusion 和代理自动化

它是什么

Microsoft 表示,Agents 窗口中的 Compare Models 可在多个模型上运行同一提示词,使用评判器评估输出,并通过综合器结合其优势。

VS Code 1.146 允许在不选择工作区的情况下评判和综合仅聊天响应。选择 Synthesize 会创建新的聊天,而不会修改原始尝试。

预览功能还将 Copilot Fusion 及其受支持的努力层级作为尝试、评判器或综合器的选项。相关贡献拉取请求 #346434 在 Agent Host 聊天中公开了 Copilot Fusion 推理。

由 sessions.chat.compareAgents.tools.enabled 控制的实验性工具允许代理发现模型、启动比较,并读取结果和对话引用。Microsoft 表示,这些工具默认关闭,并且需要启用 Compare Models。

禁用这些工具不会移除手动比较。区别在于由人发起的比较与由代理发起的评估。

为什么重要

模型选择现在可以成为开发环境内可重复执行的评估工作流。团队可以保留候选输出、生成单独的综合结果,并比较努力层级,而不会覆盖初始尝试。

代理运行的评估增加了自动化程度,但也扩大了模型调用范围。工程领导者应在启用 sessions.chat.compareAgents.tools.enabled 之前定义已批准的比较场景、预期模型访问范围和成本问责实践。

这不是独立基准测试。它是一种产品内比较机制,其结论取决于提示词、评判器、综合器和所选模型。

6. 画布获得权限、发现和连续性功能

它是什么

Microsoft 将画布描述为开发人员和 Copilot 共同处理计划、仪表板及其他工件的共享交互式界面。VS Code 1.146 新增权限提示和多项连续性改进。

在 Copilot harness 会话中,画布扩展现在会在初始化 hooks 等特权功能之前请求批准。画布菜单区分正在运行的画布和可实例化的可用画布,而 Agents 窗口则将创建和安装操作放在 Discover More 下。

非活动 Copilot harness 会话会恢复其画布,无需再发送消息。如果画布提供程序重启,最后的画布图像将保持可见,并显示正在重新连接的指示器。

在独立聊天窗口中,当关联聊天离开窗口时,画布选项卡会关闭,并可随该聊天重新打开。Microsoft 表示,窗口重新加载后画布也会恢复,并且不会抢占焦点。

为什么重要

权限提示使画布初始化成为明确的信任事件。开发人员不应仅因画布出现在现有 Copilot 会话中,就批准其特权功能。

连续性改进使画布更适合持久的规划和运营视图,但也提高了生命周期测试的重要性。团队应验证提供程序重启、聊天在窗口之间移动、会话变为非活动状态以及受管设置阻止画布扩展时会发生什么。

对于受监管环境,画布来源是自定义项治理的一部分。当扩展能够初始化 hooks 或其他特权功能时,不能仅将画布视为展示层。

7. 远程共享、CLI 交接和后台发送扩展会话移动性

它是什么

实验性设置 sessions.chat.experimental.remoteEnvironmentsThisComputer 新增了通过 GitHub Environments 或 Dev Tunnels 与其他客户端共享当前计算机的控制项。用户还可以禁用共享,或更改对客户端可见的计算机名称。

Microsoft 表示,无论是否启用共享,本地会话都会直接在该计算机上继续运行。这些控制项可通过环境选择器、命令面板或 Remote Connections 菜单中的 Manage Remote Environments 使用。

VS Code 1.146 还允许实验性的 GitHub Copilot CLI 会话继续在 VS Code 中运行。输入 /code,或者针对 VS Code Insiders 输入 /code-insiders,会退出 CLI 并在该文件夹的 Chat 视图中打开同一会话。

交接要求 Copilot CLI 1.0.107 或更高版本,并通过 /settings experimental on 启用实验性功能。对话历史、模型、推理努力、模式和权限会保留,但 --allow-tool 等进程特定权限及以前的批准不会带入。

要返回 CLI,用户需运行交接期间显示的 copilot --resume 命令。如果另一个 CLI 进程仍持有该会话,VS Code 会在打开前进行询问。

Agents 窗口还获得了可配置的后台发送操作。在 macOS 上使用 ⌘Enter,或在 Windows 和 Linux 上使用 Ctrl+Enter,可在不打开会话的情况下启动会话,而 chat.sendInBackgroundTip.enabled 可显示配置的快捷键。

为什么重要

这些更改使代理会话可在客户端、终端、窗口和环境之间移植。它们也创建了必须重新评估权限和网络暴露的转换点。

审查每个交接边界。CLI 批准不会自动转移至 VS Code;这是一种正确的安全态势,但可能导致用户困惑。团队应记录预期的重新批准流程。

计算机共享应作为远程访问进行治理,而不仅仅是代理便利功能。管理员应在启用该实验性设置之前,确定 GitHub Environments、Dev Tunnels、计算机命名和可发现性是否符合现有远程开发控制措施。

8. Skills over MCP 新增上下文通道

它是什么

VS Code 1.146 通过 chat.agentHost.mcpSkills.enabled 新增了对 SEP-2640 Skills over MCP 的预览支持。Microsoft 表示,MCP 服务器可使用该功能自动向模型提供技能。

首次连接提供技能的 MCP 服务器时,会在这些技能进入模型上下文之前触发批准请求。获批技能会显示在 Agent Customizations 编辑器的 Skills 选项卡中。

为什么重要

Skills over MCP 将服务器连接转变为添加模型行为和上下文的机制。因此,批准提示是一条实质性的信任边界。

团队应在批准之前验证服务器、它公开的技能以及这些技能引入的上下文。这并不等同于启用一个被动集成;它改变了模型在会话期间能够发现和使用的内容。

管理员应将 chat.agentHost.mcpSkills.enabled 纳入 MCP 治理审查,并确定预览功能是否适合受管开发人员环境。

9. 权限和沙盒控制变得更加细粒度

它是什么

Microsoft 表示,Copilot harness 提示以前会针对包括 Web 获取、终端命令和文件读取在内的操作建议宽泛的工具级许可。例如,对 URL 获取作出 Allow in this Session 决定,可能允许在该会话期间访问任何 URL。

VS Code 1.146 更改了默认行为,为特定域、命令和目录建议更窄的许可范围。这减少了单次批准的范围。

新设置 chat.agent.sandbox.credentials.envVars 允许管理员或用户在沙盒会话中屏蔽选定的环境变量。代理工具会收到占位符,而真实值仅会针对通过 injectHosts 配置的已批准 HTTPS 目标恢复。

Microsoft 指示用户在设置中输入环境变量名称,而不是机密值。在 Windows 上,屏蔽需要本地网络访问;在 macOS 和 Windows 上,需要操作系统证书信任的工具要求信任沙盒 CA 证书。

当终端沙盒处于活动状态时,聊天输入框现在会显示 (sandbox enabled)。Microsoft 表示,当用户切换聊天或更改设置时,该指示器会保持同步。

为什么重要

细粒度提示降低了常规批准的影响半径。团队仍应培训开发人员检查拟议的域、命令或目录,而不是机械地批准提示。

环境变量屏蔽为凭据到达已批准 HTTPS 主机提供受控路径,同时使其对通用代理工具保持隐藏。只有在严格审查 injectHosts 条目时,该控制才有用。

将目标配置视为机密策略。即使启用了屏蔽,过于宽泛或不正确的主机列表也可能削弱预期隔离。部署测试应包括 Windows 网络和证书前提条件。

沙盒指示器还改善了交互时的验证。开发人员不再需要打开单独的权限菜单来确定终端沙盒是否处于活动状态。

10. 企业代理和策略控制扩展

它是什么

Microsoft 表示,Copilot 会话现在会遵循 VS Code 代理配置,包括代理自动配置和 Kerberos 身份验证,适用于本地运行、WSL 或本地 Dev Container 中运行的情况。

组织路由规则可针对每个目标选择不同的代理或直接连接。这避免了强制每个请求都通过同一代理路径。

企业受管设置 communication.support.url 现在可将受受支持策略限制影响的开发人员引导至组织帮助页面。Microsoft 表示,有效的绝对 HTTP 或 HTTPS URL 会为诸如禁用 Agents 或组织禁用模型等限制添加 Contact Admin 链接。

VS Code 1.146 还将 Copilot 受管的 strictPluginOnlyCustomization 设置扩展至独立画布扩展。将其设为 true 会阻止所有受支持的独立自定义项类别,同时允许符合条件的插件内容。

管理员也可提供包含选定类别的列表:"skills"、"agents"、"hooks"、"mcp" 和 "extensions"。Microsoft 指出,仅布尔值的 ChatStrictPluginOnlyCustomization VS Code 策略不管理画布扩展,因为 Copilot SDK 对其进行管理。

为什么重要

代理对齐缩小了使用 PAC 文件、Kerberos、WSL 或本地 Dev Containers 的组织中的配置缺口。网络团队应测试基于目标的路由,而不是假设现有编辑器流量测试已覆盖每条 Copilot 会话路径。

communication.support.url 将受阻体验转变为可操作的支持路径。组织应将其指向一个持续维护的页面,说明已批准的 Copilot 使用方式、访问请求和升级路径。

画布限制需要使用正确的控制平面。仅依赖 ChatStrictPluginOnlyCustomization 会使画布扩展处于预期策略之外,因此管理员必须配置 Copilot 受管的 strictPluginOnlyCustomization 设置。

11. 辅助功能、图表、浏览器和指标改进

它是什么

Welcome 页面现在会在页面本身获得键盘焦点时显示可见轮廓。Microsoft 表示,该页面仍可供屏幕阅读器用户获得焦点。

VS Code 1.146 将聊天、Markdown 预览和笔记本渲染迁移至 Mermaid 12。发行说明指出,生成的功能包括用例图和更新后的自动布局行为。

Integrated Browser 现在可复制本地 HTML 预览的 file:// 地址,以便在外部浏览器或终端中使用。

Microsoft 还修正了 GitHub Copilot 使用指标,使代理编辑不再将编辑之间未更改的文本计为新添加或删除的代码。

为什么重要

焦点轮廓为键盘用户提供 Welcome 页面上的可见位置反馈。辅助功能测试应包括页面本身,而不仅仅是其交互式控件。

Mermaid 12 可能会改变自动图表布局。拥有大量图表 Markdown 或笔记本的团队应在升级后检查重要的渲染工件,而不是假设像素级连续性。

复制本地文件地址消除了一个小但反复出现的工作流中断。对于工程领导者而言,指标修正更具影响,因为当未更改文本不再被过度计数时,历史和当前编辑计数可能无法直接比较。

12. VS Code 1.146 提供广泛的可靠性修复

它是什么

Microsoft 的 VS Code 1.146 贡献列表包括终端、调试、市场、任务、编辑器、辅助功能、内存、搜索和聊天修正:

  • 终端路径:拉取请求 #343203 修复了折叠主目录路径时的子字符串冲突,而 #345650 为主目录发现适配器使用由 URI 支持的默认工作目录。
  • 终端交互:拉取请求 #334804 在用户点击内联聊天小部件下方时恢复焦点,而 #339330 防止在渲染器附加前滚动。
  • 终端生命周期:拉取请求 #342420 尊重已打开终端的 parentTerminal,而 #339488 会在移动到另一个编辑器组后保留终端编辑器。
  • 终端发现和预测:拉取请求 #339556 在登录 shell 路径不在 PATH 中时发现配置文件,而 #305103 阻止输入预测拒绝有效的样式序列。
  • 调试:拉取请求 #341972 将异常断点模式发送至调试适配器。
  • 提示安全:拉取请求 #332937 确保在提示 URL 确认对话框中仍可访问完整 URI。
  • 草稿会话:拉取请求 #345807(处理问题 #345692)在替换新草稿会话时保留打开的草稿编辑器。
  • 市场可靠性:拉取请求 #343686、#343687 和 #341049 处理 403 响应后的重复登录提示、受保护资源发现缓存,以及私有 Marketplace 阻止和更新门控。
  • 重定向安全:拉取请求 #343690 防止请求凭据在重定向期间跨源转发。
  • 内联编辑:拉取请求 #339575 遵从显式的内联编辑边栏菜单可见性。
  • 策略集成:拉取请求 #345712 允许通过 VS Code 设置注册 Policy Helper。
  • 任务:拉取请求 #336159、#339551、#339550 和 #339387 保留任务类型、在完成前刷新最终标记、保留来自同一资源的不同错误,并修正提供程序计数器错误。
  • 任务变量:拉取请求 #316369(修复问题 #160891)保留进程任务命令路径中未解析的变量。
  • 辅助功能信号:拉取请求 #303604 移除了属性变更检测中的重复条件。
  • Test Explorer:拉取请求 #345896 改善了运行大量测试时的性能。
  • 笔记本稳定性:拉取请求 #331805 和 #329000 解决了文本差异内存泄漏问题,并防止在单元格被释放时显示光标选择。
  • 内存管理:拉取请求 #345461、#342528、#345781、#346139、#346126、#346501、#346498 和 #346268 解决了颜色选择器、AI 搜索模型、文件搜索侦听器、终端查找小部件、搜索进度发射器、标记资源映射、去抖可观察对象和键绑定搜索中的泄漏问题。
  • 内存减少:拉取请求 #342397 将内存使用量减少了 24 kB。
  • 聊天布局:拉取请求 #345436(修复问题 #275257)截断建议提示词标题,以防止在狭窄聊天布局中溢出。
  • 小地图渲染:拉取请求 #311689 移除了强制小地图保持不透明的回归问题。
  • Hook 文档:拉取请求 #346593 修正了 Hooks 部分说明。

为什么重要

这些修复的广度使 1.146.0 不仅与 Copilot 采用有关。重度使用终端的团队、私有 Marketplace 用户、任务提供程序作者、笔记本用户和大型测试套件都能获得针对性修正。

安全团队应特别关注跨源凭据转发和提示 URL 可见性。这些修复会影响用户可验证的信息以及凭据传递所跨越的边界。

平台团队还应重新测试私有 Marketplace 身份验证、终端恢复、任务完成报告、笔记本释放以及长时间运行的搜索或终端工作流。该版本包含许多范围狭窄的可靠性修复,其价值取决于开发人员实际运行的工作负载。

总结

这对企业团队意味着什么

  1. 完成 harness 清单。识别 Local harness 工作流,并在 2027 年 2 月之前将其迁移至 Copilot harness。
  2. 有意识地控制实验性功能。在受管部署前评估 sessions.list.inboxEnabled、sessions.list.inlineActions、sessions.chat.compareAgents.tools.enabled 和远程计算机共享。
  3. 测试预览版工作区变更。针对具有代表性的项目验证 sessions.chatWindows.enabled、画布恢复、扩展兼容性和 Mermaid 12 渲染。
  4. 加强代理治理。配置细粒度权限、环境变量屏蔽、代理路由、支持链接、MCP 技能批准和 Copilot 受管画布限制。
  5. 重新建立运营指标基线。在跨 VS Code 1.146 升级比较使用数据时,考虑已修正的代理编辑计数。

代理优先不是一种趋势,而是方向——VS Code 1.146 为此设定了明确的迁移截止日期。

编码愉快!