Visual Studio Code 1.119 版本
发布日期:2026 年 5 月 6 日
更新 1.119.1:此更新解决了这些 安全问题。
下载:Windows: x64 Arm64 | Mac: Universal Intel silicon | Linux: deb rpm tarball Arm snap
欢迎使用 Visual Studio Code 1.119 版本。此版本专注于更流畅的智能体交互、增强的可观测性,以及更高效的信任和安全控制。
-
智能体与浏览器的交互:让智能体发现并申请集成浏览器的访问权限。
-
优化令牌使用量:使用轻量级模型来管理智能体待办事项列表。
-
OpenTelemetry 追踪:使用 OpenTelemetry 监控智能体会话。
-
信任与开发者效率:减少因网络访问或临时文件夹写入请求而产生的干扰。
-
Markdown 预览:快速在 Markdown 源码和预览之间切换。
编码愉快!
代理体验
与智能体共享浏览器标签页
当智能体能够访问实时浏览器时,它们可以实时验证更改并更快地进行迭代。对于 Web 开发,智能体可以在一个轮次内编辑代码、重新加载页面并确认修复。对于设计工作流,智能体可以比较渲染输出与您的设计意图,并即时改进布局或样式。开始 在 VS Code 中结合智能体使用集成浏览器。
智能体不会自动获得对 集成浏览器 的访问权限。您需要明确地与智能体共享浏览器页面,以便它与页面进行交互。这有助于保护敏感数据的隐私。
在此版本中,我们添加了与智能体共享浏览器的新方式
将浏览器标签页作为上下文附加
现在可以通过建议的上下文、上下文选择器和拖放操作等典型入口,将浏览器标签页明确附加到聊天中。

当浏览器标签页被附加后,它将进入共享状态,智能体可以读取并与该页面交互。完成操作后,使用浏览器中的共享按钮停止共享。

智能体主动发起的页面共享请求
智能体现在能够获知您有多少个已打开但未共享的浏览器标签页。当它们需要与某个页面交互时,可以请求共享该标签页,您可以在提示中批准或拒绝该请求。
当智能体尝试在与现有未共享标签页相同的域上打开新标签页时,会弹出提示,询问您是否要重用现有标签页。这旨在鼓励标签页复用并减少混乱。

Visual Studio Code Agents (Insiders)
注意:Visual Studio Code Agents 目前处于预览阶段,仅可在 VS Code Insiders 中使用。
Visual Studio Code Agents 是随 VS Code Insiders 发布的配套体验。它提供了一个专注的、以智能体为中心的环境,您可以在其中跨仓库运行并行会话,并针对多步编码任务进行迭代。我们于 1.115 版本中首次引入了 VS Code Agents,并将根据用户反馈持续完善它。
此版本的更新包括
-
重设计的新会话仓库选择器:当您开始新会话时,现在可以轻松地在本地文件夹、仓库或远程选项之间切换。

-
子会话改进:子会话的创建和管理持续优化,修复了子会话标签页和生命周期处理等方面的功能。
-
Web 和移动端优化:我们继续迭代在 1.118 中引入的 Agents Web 客户端,以使浏览器体验与桌面体验保持一致。这包括对移动端体验的改进,使您能够从移动设备的浏览器中创建和管理会话及其更改。
-
环境管理与连续性:我们持续投入于 VS Code 与智能体之间的连接,并不断演进环境的管理方式。这些工作将在未来的版本中继续体现。
-
进度 UX:当智能体正在处理任务时,进度显示更加直观,包括旋转的进度消息和聊天输入框的边框动画。
-
开发者愉悦感:我们正在迭代能够激发开发者愉悦感的 UX 功能,包括在新会话页面上的一个有趣的彩蛋。启用 sessions.developerJoy.enabled 看看您能否发现它!
您的反馈有助于我们塑造 Agents 体验,请继续通过 在 vscode GitHub 仓库中提交 issue 与我们分享。您也可以浏览 现有 issue,看看其他人报告了什么,并针对特定主题提供您的反馈。
智能体会话的 OpenTelemetry 追踪
设置: github.copilot.chat.otel.enabled , github.copilot.chat.otel.otlpEndpoint
随着智能体会话变得越来越长且更加自主,理解智能体做了什么、每一步花费了多少时间以及令牌消耗在何处,对于优化成本和调试异常行为至关重要。OpenTelemetry 是行业标准的可观测性框架。
Copilot Chat 智能体会话(包括本地智能体、Copilot CLI 后台智能体和 Claude 智能体)现在会发出遵循 GenAI 语义约定 的 OpenTelemetry 追踪、指标和事件,因此您可以在任何兼容 OTLP 的后端(例如 Aspire Dashboard)中监控智能体行为、延迟和令牌使用情况。
每个用户请求都会产生一个 invoke_agent 根跨度(例如 invoke_agent claude),并带有嵌套的 chat、execute_tool 和 execute_hook 子跨度。子智能体调用会自动归属到调用者智能体的 execute_tool 跨度下,从而让您在单个连接的追踪中全面了解智能体的工作情况。跨度会报告模型和令牌使用情况,包括缓存读取和缓存创建的细分数据。
要尝试此功能,请启用 github.copilot.chat.otel.enabled 并将 github.copilot.chat.otel.otlpEndpoint 指向您的收集器。

在 VS Code 文档中了解如何 通过 OpenTelemetry 监控智能体使用情况。
聊天体验
显示 Copilot CLI 和 Claude 智能体响应的模型详情
设置: github.copilot.chat.agent.modelDetails.enabled
了解是哪个模型处理了响应以及它如何影响您的使用额度,有助于您控制成本和质量。
聊天视图中的 Copilot CLI 和 Claude 智能体 响应现在会显示模型及其在每次响应上的倍数。该徽标会在每次响应完成时实时出现,无需重新加载窗口,并在您在会话中途切换模型时更新。
当您在 Copilot CLI 中使用 自动 (Auto) 模型选择时,徽标会显示实际使用的模型(例如 Claude Sonnet 4.6)而不是 auto。当从历史记录重建会话时,解析出的模型也会被保留。
此行为默认启用。若要关闭该徽标,请禁用 github.copilot.chat.agent.modelDetails.enabled 设置并重新加载窗口。
优化待办事项列表管理的令牌使用量(实验性)
设置: github.copilot.chat.agent.backgroundTodoAgent.enabled
待办事项列表通过提供已完成和待办事项的明确记录,帮助智能体在复杂的多步任务中保持进度。然而,主模型每次调用工具来更新待办事项列表都会消耗令牌,这些成本在长会话中会累积。
通过将待办事项列表管理卸载到轻量级后台智能体,主模型可以专注于实际任务,而较小的模型则保持进度跟踪同步。这在不牺牲保持智能体专注的指导的前提下,降低了总体令牌使用量。
启用此设置后,后台智能体会监控主智能体的活动并更新待办事项列表以反映已完成和进行中的工作。主智能体将不再拥有待办事项工具,从而节省了对话的令牌成本。
注意:如果待办事项工具被手动添加到聊天请求中(例如使用
#todo),或者自定义智能体在其工具列表中指定了该工具,则后台智能体将被覆盖且不会运行。
此功能默认禁用。要尝试此功能,请启用 github.copilot.chat.agent.backgroundTodoAgent.enabled 设置。
基于使用量的计费更新
GitHub Copilot 将从 6 月 1 日起过渡到 基于使用量的计费。作为准备,此版本包含对聊天状态仪表板、聊天输入通知和模型选择器的内部更改,以支持显示计费和信用信息。这些 UI 更新目前对用户不可见,并将于基于使用量的计费推出时生效。
信任与安全
允许智能体沙盒访问网络
设置: chat.agent.sandbox.enabled 此设置由组织级别管理。请联系您的管理员进行更改。
智能体沙盒通过限制智能体工具的访问权限来保护您的系统,但当智能体需要安装包、调用 API 或运行开发服务器时,严格的网络拦截可能会造成阻碍。
chat.agent.sandbox.enabled 此设置由组织级别管理。请联系您的管理员进行更改。 设置现在具有 allowNetwork 模式,它在保留文件系统限制的同时移除了网络域拦截,让您获得沙盒保护且无需频繁处理网络访问中断。
"chat.agent.sandbox.enabled": "allowNetwork"
当沙盒允许网络访问时, chat.agent.allowedNetworkDomains 此设置由组织级别管理。请联系您的管理员进行更改。 和 chat.agent.deniedNetworkDomains 此设置由组织级别管理。请联系您的管理员进行更改。 设置将被忽略。
在 VS Code 文档中了解更多关于 智能体沙盒 的信息。
对会话允许的命令自动批准临时文件夹写入
设置: chat.tools.terminal.blockDetectedFileWrites
频繁的批准提示可能会拖慢智能体的工作流程。当 chat.tools.terminal.blockDetectedFileWrites 设置为默认值 outsideWorkspace 时,即便您选择了 允许会话中的所有命令,写入工作区之外的终端命令仍需要批准。
当激活 允许会话中的所有命令 时,现在豁免对操作系统临时文件夹(macOS 和 Linux 上为 /tmp,Windows 上为 %TEMP%)的写入检查。
这意味着将草稿文件暂存在临时文件夹中的常见智能体工作流不再会中断会话,而对工作区外其他位置的写入仍需确认。
语言
将当前编辑器切换为 Markdown 预览
我们让将当前编辑器切换回 Markdown 预览的操作变得更加简单。VS Code 一直以来都有此功能,但经常被忽略。这些新的按钮和命令使其更容易被发现。
在 Markdown 文件中,选择工具栏中的此按钮或运行 Markdown: 切换到预览视图 命令。

打开预览后,您可以选择 切换到编辑器视图 按钮或命令以切回源码视图。

重组 Markdown 设置
为了帮助您发现和管理 VS Code 内置 Markdown 支持 的设置,我们在设置编辑器的 扩展 > Markdown 语言功能 下为它们创建了一些基本分组。

所有设置 ID 保持不变,但现在所有与 内置 Markdown 预览 相关的设置都列在 预览 (Preview) 子部分下。
工程
完成将 Webview 迁移至 CSS 锚点定位
VS Code 的 Webview 现在使用 锚点定位 来在工作台中进行视觉定位。这提高了性能并使重新布局更加响应迅速,特别是在有许多活动 Webview 时。这也让我们修复了一些棘手且长期存在的 Bug,例如在 Web 环境中当工作台移动时 Webview 偏移的问题。
这是在切换到基于锚点的定位之前,单个 Webview 的典型重新布局调用

此处 Webview 的定位是通过 JS 完成的,调用了 getBoundingClientRect。由于它触发了浏览器的样式重新计算和重新布局,此调用相对较慢。
通过切换到基于锚点的定位,浏览器现在会根据 CSS 为我们处理 Webview 的定位。

类型检查现在使用 TypeScript 7 以实现更快的开发迭代
在上一次迭代中,我们将 VS Code 的主要监视任务迁移至 TypeScript 7。本次迭代中,我们完成了所有内置扩展和核心代码迁移至 TypeScript 7 的工作。
通过将 Copilot 扩展迁移至 TypeScript 7,我们将类型检查时间从 22 秒缩短至 4 秒。这些巨大的速度提升使开发者和智能体都能够在 VS Code 代码库中更快地进行迭代。
已弃用的功能和设置
此版本中的新弃用项
无
即将弃用的功能
- 编辑模式 (Edit Mode) 已从 VS Code 1.110 版本起正式弃用。用户可以通过 VS Code 设置 chat.editMode.hidden 临时重新启用编辑模式。此设置将持续支持至 1.125 版本。从 1.125 版本开始,编辑模式将被彻底移除,且无法再通过设置启用。
感谢
对我们问题跟踪的贡献
- @gjsjohnmurray (John Murray)
- @RedCMD (RedCMD)
- @IllusionMH (Andrii Dieiev)
- @albertosantini (Alberto Santini)
对 vscode 的贡献
- @64johnlee (john lee): 修复:在启发式对话框 Markdown 内容中启用文本选择 PR #313730
- @aanil677: 修复 README 中的轻微语法问题 PR #312480
- @AshtonYoon (Ashton Yoon): markdown: 修复 #287050 中引入的滚动同步回归问题 PR #307763
- @iideprived (Herbert Smith): debug: 将触发断点选择器默认设为第一个断点 PR #313453
- @Jah-yee (RoomWithOutRoof): 修复:解决 NoChangeError 工具名称插值和拼写错误 PR #309709
- @maruthang (Maruthan G): webview: 为自定义编辑器尊重默认的 localResourceRoots PR #312492
- @OrenMe (Oren Me): 为 Markdown 自定义项添加结构化预览 PR #312545
- @shaypet: 为 TitleAndDescriptionProvider 添加 compareBranch 以增强 PR 上下文 PR #312326
- @xAndreiLi (Andrei Li): feat(plugins): 允许仓库边界内的组件路径 PR #308776
- @yemohyleyemohyle
- Yemohyle/添加至遥测 PR #311837
- Yemohyle/添加至扩展遥测 PR #313159
- @yogeshwaran-c (Yogeshwaran C)
- 为 editor.hover.enabled 添加 'hint' 和 'info' 搜索关键字 PR #313491
- 为编辑器组设置添加 'pane' 搜索关键字 PR #313490
- @mizdra: 修复因通过 require(esm) 加载模块导入 'vscode' 导致的死锁 PR #285417
对 vscode-pull-request-github 的贡献
- @mohamedamara1 (Mohamed Amara): 从 PR 概览显示链接的问题 #5824 PR #6835
我们非常感谢大家在新功能准备就绪后立即进行试用,请经常回来查看并了解新功能。
如果您想阅读以前 VS Code 版本的发行说明,请访问 code.visualstudio.com 上的更新页面。