Visual Studio Code 1.138 已于 2026 年 9 月 16 日发布,它延续了定义这款编辑器过去十几个版本的主题:智能体不再是一个侧边面板——它们就是工作流本身。这一次的重点在于智能体在哪里运行、你如何为其付费并跨工具携带它们,以及它们留下的所有工作最终会怎样。
本次的重点功能:
- 开发容器中的智能体会话 —— 在本地开发容器中使用你项目的工具与依赖项运行智能体
- 增强的 Codex 运行框架 —— 跨应用继续 Codex 会话,在 Copilot 与 ChatGPT 订阅之间选择,并使用 VS Code 工具
- 会话清理(预览版) —— 自动将已合并的会话标记为完成,并可选地在宽限期后将其删除
下面我们来看看这些功能在实践中的意义,以及那些为本次发布锦上添花的小功能。
本地开发容器中的智能体会话
1.138 中最具影响力的变化是,智能体现在可以在项目的开发容器(Dev Container)中运行。启用 chat.agentHost.devContainer.enabled 后,带有受支持的开发容器配置的本地文件夹会在文件夹菜单中显示 Use Dev Container 操作。选择它,智能体会话便会在该容器内运行(仅限智能体窗口)。
理由很直接:智能体的表现取决于它所运行的环境。一个基于你机器上全局安装的 Node、Python 或 CLI 工具来构建的编码智能体,是在一个与 CI 或你同事的环境都不匹配的世界里评估代码。在开发容器中运行会话,意味着智能体使用为项目定义的同一套工具链、依赖版本和配置——也就是你早已信任、用于开发的那个环境。你的机器上必须安装 Docker,而且该功能正在逐步推送,所以你今天若想试用,可能需要手动启用该设置。
为什么重要
对于已经统一采用开发容器的团队来说,这弥合了一个重要的可复现性缺口。智能体生成的代码、测试运行和构建验证,如今都发生在一致的环境中,而不是某台独一无二的开发者笔记本上。这让智能体的产出既更值得信赖,也更易于在出问题时复现。
智能体宿主中扩展的 Codex 支持
智能体宿主——基于 Agent Host Protocol(AHP)的专用进程架构,让你可以从多个 VS Code 窗口连接到同一个会话——在 1.138 中获得了大幅的 Codex 升级。启用 chat.agentHost.codexAgent.enabled,并可选地启用 chat.editor.codex.preferAgentHost。
其中四项能力尤为突出:
- 选择你的订阅。 使用 Codex 时既可搭配 GitHub Copilot 订阅,也可搭配 ChatGPT 订阅。如果你同时登录了两者,可以从模型选择器在由 Copilot 支持的模型和由 ChatGPT 支持的模型之间切换,而不会丢失当前的对话。
- 跨应用继续。 在 ChatGPT 应用与 VS Code 之间移动同一个 Codex 会话,而不必开启一段新的对话。
- 与桌面应用交互。 如果 ChatGPT 应用已安装并配置为可用于计算机操作(computer use),VS Code 中的 Codex 运行框架可以复用该设置,与你电脑上的应用进行交互。此功能对由任一订阅支持的模型都适用。
- 使用 VS Code 工具。 Codex 可以使用 VS Code 提供的全套工具,包括内置工具、扩展工具和 MCP 工具。配合由 ChatGPT 支持的模型,Codex 还可以在会话中直接使用其图像生成工具。
为什么重要
这是迄今最清晰的信号:VS Code 想成为智能体工作的界面,而不是某个特定智能体的拥有者。让你带上自己的订阅、在 ChatGPT 应用与编辑器之间保持同一个会话存活,并把全套 VS Code 工具交给智能体,这一切把编辑器变成了一个中枢。如果你的团队在 Copilot 席位与 ChatGPT 订阅之间各有分工,1.138 意味着他们可以共享同一套工作流,而不必维护两套。
在工作区中继续 Codex 快捷对话
1.137 版引入了为 Copilot 会话将项目附加到现有快捷对话的能力。1.138 将同样的流程扩展到 Codex,因此开始项目专属的工作不再意味着要放弃一个没有工作区的快捷对话。
让 Codex 附加一个本地文件夹,然后选择是直接使用该文件夹还是创建一个隔离的 worktree。在你确认更改后,同一个聊天和原生 Codex 线程会变成一个工作区会话。该会话会保留其标题、对话历史记录、当前请求、所选模型和权限模式,并且 Codex 会在拥有项目文件访问权限的情况下继续处理该请求。
工作区转换适用于处于 Interactive 模式的空闲 Codex 快捷对话,并支持单根工作区目标。如果更改被取消或无法应用,原来的无工作区聊天仍然可用——因此尝试它没有任何风险。
为什么重要
这个小小的功能悄然成为本次发布中最富人情味的部分之一。当一个随意的提问变成真正的工作时,恰恰是你最不想丢掉思路的时刻。由于智能体宿主会话与工作区解耦,对话得以在这一转变中幸存下来。
从智能体会话创建拉取请求
一旦智能体完成了工作,把它送入评审便是下一个摩擦点。在 1.138 中,你可以在智能体窗口里从 Agent Host 会话创建拉取请求,使用一个单一的表单:在其中审阅并编辑生成的标题和描述、选择草稿状态,并配置可用的合并选项。你可以直接创建拉取请求,也可以将请求发送给你的智能体,而你偏好的选项会被记住,供下次使用。
Agent Merge 选项仍处于实验阶段,只有在启用 chat.agentMerge.enabled 时才会出现。
为什么重要
从“智能体完成了”到“团队可以评审了”之间的距离,过去是一次手动交接——复制一份摘要、写一个标题、挑选一个基础分支。把创建 PR 折叠进会话,让上下文留在它被生成的地方;而让你选择自己创建还是把这个点击动作委托给智能体,正映照了一位好队友的做事方式。
保持已完成会话井然有序(预览版)
智能体密集的工作流会累积大量会话,而其中大多数已经完成。1.138 新增了清理工具,让已完成的工作不再挤占会话列表。
当一个不活跃会话的所有拉取请求都已合并时,智能体窗口可以建议将该会话标记为完成(done),并会在首次使用时通过引导展示 Mark as Done 操作的位置。启用 chat.agentSessions.archiveNudge.enabled 即可看到这些建议。
若想实现免手动清理,可配置 chat.agentSessions.autoMarkAsDoneMergedSessionsAfterDays,在其 PR 合并后将不活跃会话标记为完成;并配置 chat.agentSessions.autoDeleteArchivedMergedSessionsAfterDays,在一个单独的宽限期后将其删除。两个自动清理设置默认均为禁用状态。 当一个会话的所有拉取请求都已合并时,你可以在 Mark as Done 建议中选择 Configure Automatic Cleanup,打开这两个设置而无需启用它们。
对了——还有 sessions.markAsDoneConfetti,它会在你将会话标记为完成时播放彩纸动画。它会遵循你的“减少动态效果”偏好,正是这一细节让它显得贴心而非花哨。
了解哪些会话需要关注(预览版)
与清理相辅相成的,是知道智能体何时真正需要你。启用 sessions.showApplicationBadge 后,对于有新结果、有输入请求或有待处理的拉取请求检查的会话,VS Code 会在 macOS 程序坞、Linux 启动器或 Windows 任务栏上显示一个徽章。这是件小事,但它意味着你不必一直把智能体窗口摆在面前,也能知道有工作在等着。
统一的工作区与仓库选择器(实验性)
开始智能体工作现在只需一个可搜索的列表。启用 sessions.chat.unifiedWorkspacePicker.enabled 后,该选择器将本地文件夹、GitHub 仓库、Cloud 仓库和远程目标合并到一处,同时仍可从 Remote 入口使用远程连接操作。
选择 Work in Repository 会使用云优先的工作流:尚未在本地的 GitHub 仓库会立即以 Cloud 运行框架被选中,而不会弹出克隆提示。如果你之后选择了本地运行框架,VS Code 会提示你克隆该仓库,并且在你取消时会保留云端的选择。
改进的语音模式会话感知(实验性)
1.137 引入的语音模式现在具备了更好的会话感知。你可以在不离开语音模式的情况下导航并监控并行的智能体工作:它可以查找最近的智能体会话、按名称在它们之间切换,并汇报每个会话的状态。如果你一直在尝试由语音驱动的智能体工作,这就是让它在一个以上会话运行时变得可用的那块拼图。
按颜色主题自定义聊天背景(实验性)
1.136 的聊天背景功能得到了一项改进。此前,背景图像按主题类型(theme kind)存储,但它的布局却没有——因此把深色背景设为右对齐、再把浅色背景设为左对齐后,两者最终都会采用同一种对齐方式。现在,布局会与图像一起按主题类型存储,在深色与浅色主题之间切换时会恢复该主题的摆放位置。
两项新设置 chat.agentSessions.preferredDarkBackgroundImageLayout 和 chat.agentSessions.preferredLightBackgroundImageLayout 取代了旧的 chat.agentSessions.backgroundImageLayout。清除背景的位置也发生了变化:Chat: Set Background… 现在将 No Background 置于首位,它会清除你当前所用颜色主题的背景,而保留另一个不动。本次更新仅适用于智能体窗口。
1.138 中的弃用项
与之前几个版本不同,1.138 包含实际的弃用项——值得一提,以便你更新同步设置。
chat.agentSessions.backgroundImageLayout被chat.agentSessions.preferredDarkBackgroundImageLayout和chat.agentSessions.preferredLightBackgroundImageLayout取代,因此聊天背景布局可以分别为深色和浅色主题设置。- Chat: Clear Background 命令已被移除。请改为在 Chat: Set Background… 中选择 No Background,以清除当前颜色主题的背景。
社区贡献
VS Code 1.138 包含来自社区的贡献。值得关注的亮点:
- Jacob T. Jove (jacobjove) 修复了因未消费的缓冲 pty 宿主服务事件而导致的主进程内存溢出问题
- Ryan Ewen (RyanEwen) 使 Codex MCP 工具进度不再进入工具结果
- Simon Siefke 延续了他长期进行的内存泄漏修复工作,本版本修复了标记表(markers table)中的一处泄漏
- Deniz Güney Yıldırım (denizguney) 更新了一个针对
files.exclude配置的补全测试 - Dhinesh Ponnarasan 修复了已完成进度通知的关闭问题
- Vlad Gerasimov (vladstudio) 修复了终端编辑器 shift-drop 在分离实例上触发的问题
- yutotnh 强制提交信息输出使用 UTF-8
- Zhichao Li 使 OTel 指南与智能体宿主架构保持一致
来自 John Murray、RedCMD、Andrii Dieiev 和 Alberto Santini 的议题跟踪贡献,帮助分类并验证了社区报告。
你应该更新吗?
应该。VS Code 1.138 是一个让智能体融入你现有开发流程、而非要求你去适应它们的版本。对于已经将开发环境容器化的团队来说,开发容器集成是最大的亮点——它决定了智能体是只能在你笔记本上工作,还是能在你的项目中工作。扩展后的 Codex 运行框架是本次发布中最灵活的部分,而会话清理工具则属于那种你在一个月后、当会话列表变得清爽时会心存感激的“清洁工”功能。
只要记住那两项弃用项(如果你在多台机器间同步设置),并注意自动清理设置出厂即为禁用——需要你有意识地选择启用它们。
VS Code 正在逐步向所有用户推送。使用 VS Code 中的 Check for Updates 即可立即获取最新版本,或者下载 nightly Insiders 版本,以便在新功能一推出时就试用它们。
你最喜欢 VS Code 1.138 的哪个功能?在 X 上告诉我们——我们一直很想听听这些更新在真实工作流中的落地效果。