2025 年 3 月 (版本 1.99)
更新 1.99.1:此更新解决了这些安全问题。
更新 1.99.2:此更新解决了这些问题。
更新 1.99.3:此更新解决了这些问题。
下载:Windows: x64 Arm64 | Mac: 通用 Intel Apple 芯片 | Linux: deb rpm tarball Arm snap
欢迎使用 Visual Studio Code 2025 年 3 月版。此版本中有许多更新,希望您会喜欢,其中一些主要亮点包括:
-
代理模式
- 代理模式在 VS Code 稳定版中可用。通过设置 chat.agent.enabled 启用它(更多...)。
- 使用模型上下文协议 (MCP) 服务器工具扩展代理模式(更多...)。
- 在代理模式下尝试新的内置工具,用于获取网页内容、查找符号引用和深度思考(更多...)。
-
代码编辑
-
聊天
-
笔记本编辑
- 通过支持编辑模式和代理模式,像编辑代码文件一样轻松创建和编辑笔记本(更多...)。
如果您想在线阅读这些发行说明,请访问 code.visualstudio.com 上的更新。内测版:想尽快尝试新功能吗?您可以下载每日内测版构建,并在最新更新发布后立即尝试。
聊天
代理模式在 VS Code 稳定版中可用
我们很高兴地宣布,代理模式在 VS Code 稳定版中可用!通过设置 chat.agent.enabled 启用它。如果您没有看到该设置,请确保重新加载 VS Code。在接下来的几周内,将不再需要启用该设置,因为我们将默认向所有用户推出启用。
查看代理模式文档,或从聊天视图中的聊天模式选择器中选择代理模式。
模型上下文协议服务器支持
此版本在代理模式下支持 模型上下文协议 (MCP) 服务器。MCP 提供了一种标准化方法,供 AI 模型发现并与外部工具、应用程序和数据源交互。当您在 VS Code 中使用代理模式输入聊天提示时,模型可以调用各种工具来执行文件操作、访问数据库或检索网页数据等任务。这种集成实现了更动态、更具上下文感知的编码辅助。
MCP 服务器可以在您的用户、远程或 .code-workspace
设置的 mcp
部分下配置,或在工作区中的 .vscode/mcp.json
中配置。该配置支持输入变量,以避免硬编码密钥和常量。例如,您可以使用 ${env:API_KEY}
来引用环境变量,或使用 ${input:ENDPOINT}
在服务器启动时提示输入值。
您可以使用MCP: 添加服务器命令快速从命令行调用设置 MCP 服务器,或者使用从 Docker、npm 或 PyPI 发布到 Docker 的 MCP 服务器进行 AI 辅助设置。
添加新 MCP 服务器后,聊天视图中会显示一个刷新操作,可用于启动服务器并发现工具。此后,服务器按需启动以节省资源。
主题:Codesong(在 vscode.dev 上预览)
如果您已经在 Claude Desktop 等其他应用程序中使用 MCP 服务器,VS Code 将发现它们并提供为您运行。此行为可以通过设置 chat.mcp.discovery.enabled 进行切换。
您可以使用MCP: 列出服务器命令查看 MCP 服务器列表及其当前状态,并使用代理模式下的选择工具按钮选择可在聊天中使用的工具。
您可以在我们的文档中阅读有关如何安装和使用 MCP 服务器的更多信息。
代理模式工具
本里程碑,我们为代理模式添加了几个新的内置工具。
思考工具(实验性)
设置:github.copilot.chat.agent.thinkingTool。
受 Anthropic 研究的启发,我们为代理模式添加了思考工具支持,该工具可用于让任何模型有机会在工具调用之间进行思考。这提高了代理在产品内和 SWE-bench 评估中执行复杂任务的性能。
获取工具
使用 #fetch
工具将公开可访问网页中的内容包含到您的提示中。例如,如果您想包含有关 MCP 等主题的最新文档,您可以请求获取完整文档(方便 LLM 消费),并在提示中使用它。以下是它可能的样子视频:
在代理模式下,此工具会自动识别,但您也可以在其他模式下通过 #fetch
显式引用它,并附带您要获取的 URL。
此工具通过在无头浏览器窗口中渲染网页来工作,其中该页面的数据在本地缓存,因此您可以自由地要求模型一遍又一遍地获取内容,而无需重新渲染的开销。
请告诉我们您如何使用 #fetch
工具,以及您希望它提供哪些功能!
获取工具的限制
- 目前,此浏览器窗口中禁用 JavaScript。如果网站完全依赖 JavaScript 渲染内容,该工具将无法获取太多上下文。这是我们正在考虑更改并很可能更改以允许 JavaScript 的限制。
- 由于无头特性,我们无法获取需要身份验证的页面,因为此无头浏览器存在于与您使用的浏览器不同的浏览器上下文中。相反,请考虑使用 MCP 引入专门为此目标构建的 MCP 服务器,或通用浏览器 MCP 服务器,例如 Playwright MCP 服务器。
用法工具
#usages
工具是“查找所有引用”、“查找实现”和“转到定义”的组合。此工具可以帮助聊天更好地了解函数、类或接口。例如,聊天可以使用此工具查找接口的示例实现,或查找进行重构时需要更改的所有位置。
在代理模式下,此工具会自动识别,但您也可以通过 #usages
显式引用它。
使用代理模式创建新工作区(实验性)
设置:github.copilot.chat.newWorkspaceCreation.enabled
您现在可以在代理模式下搭建新的 VS Code 工作区。无论您是设置 VS Code 扩展、MCP 服务器还是其他开发环境,代理模式都可以帮助您使用必要的依赖项和设置初始化、配置和启动这些项目。
代理模式下的 VS Code 扩展工具
几个月前,我们最终确定了用于 VS Code 扩展贡献的语言模型工具的扩展 API。现在,您可以在代理模式下使用这些工具。
任何为此 API 贡献的工具,只要在其配置中设置 toolReferenceName
和 canBeReferencedInPrompt
,都会在代理模式下自动可用。
通过在扩展中贡献工具,它有权访问完整的 VS Code 扩展 API,并且可以通过扩展市场轻松安装。
与 MCP 服务器中的工具类似,您可以使用代理模式下的选择工具按钮启用和禁用它们。请参阅我们的语言模型工具扩展指南,构建您自己的工具!
代理模式工具审批
作为完成用户提示任务的一部分,代理模式可以运行工具和终端命令。这功能强大但可能伴随风险。因此,您需要批准在代理模式下使用工具和终端命令。
为了优化此体验,您现在可以在会话、工作区或应用程序级别记住该批准。这当前未为终端工具启用,但我们计划在未来版本中为终端开发一个审批系统。
如果您想自动批准所有工具,您现在可以使用实验性设置 chat.tools.autoApprove。这将自动批准所有工具,当语言模型希望运行工具时,VS Code 不会要求确认。请注意,启用此设置后,您将没有机会取消模型可能要执行的破坏性操作。
我们计划在未来扩展此设置以提供更细粒度的功能。
SWE-bench 上的代理评估
VS Code 的代理在使用 Claude 3.7 Sonnet 的 swebench-verified
上达到了 56.0% 的通过率,遵循 Anthropic 关于配置代理在 SWE-bench 环境中无需用户输入即可执行的研究。我们的实验已转化为代理模式下改进的提示、工具描述和工具设计,包括适用于 Claude 3.5 和 3.7 Sonnet 模型的符合分布的文件编辑新工具。
统一聊天视图
在过去的几个月中,我们有一个用于向语言模型提问的“聊天”视图,以及一个用于 AI 驱动代码编辑会话的“Copilot 编辑”视图。本月,我们旨在通过将这两个视图合并到一个聊天视图中来简化基于聊天的体验。在聊天视图中,您将看到一个包含三种模式的下拉菜单:
- 询问:这与之前的聊天视图相同。使用任何模型提出有关您的工作区或一般编码的问题。使用
@
调用内置聊天参与者或来自已安装扩展的参与者。使用#
手动附加任何类型的上下文。 - 代理:启动一个代理式编码流程,其中包含一套工具,使其能够自主收集上下文、运行终端命令或采取其他操作来完成任务。代理模式已为所有 VS Code 内测版用户启用,我们正在将其推广到更多 VS Code 稳定版用户。
- 编辑:在编辑模式下,模型可以对多个文件进行定向编辑。附加
#codebase
以使其自动查找要编辑的文件。但它不会运行终端命令或自动执行其他操作。
注意:如果此列表中没有显示代理模式,则表示它尚未为您启用,或者已被组织策略禁用,需要由组织所有者启用。
除了简化您的聊天体验之外,这种统一还为 AI 驱动的代码编辑启用了一些新功能:
- 在对话中间切换模式:例如,您可能在询问模式下开始构思应用程序想法,然后切换到代理模式执行计划。提示:按 ⌘. (Windows, Linux Ctrl+.) 快速切换模式。
- 历史中的编辑会话:使用显示聊天命令(聊天视图顶部的时钟图标)恢复过去的编辑会话并继续处理它们。
- 将聊天移动到编辑器或窗口:选择在新编辑器/新窗口中打开聊天,将聊天对话从侧边栏弹出到新的编辑器选项卡或单独的 VS Code 窗口中。聊天长期以来一直支持此功能,但现在您也可以从编辑器窗格或单独的窗口运行您的编辑/代理会话。
- 多个代理会话:根据上述观点,这意味着您甚至可以同时运行多个代理会话。您可能希望有一个代理模式的聊天正在实现某个功能,而另一个独立的会话用于研究和使用其他工具。不建议同时指示两个代理会话编辑文件,这可能导致混淆。
自带密钥 (BYOK)(预览版)
Copilot Pro 和 Copilot 免费用户现在可以自带 Azure、Anthropic、Gemini、Open AI、Ollama 和 Open Router 等流行提供商的 API 密钥。这使您可以在新模型发布的第一天即可使用 Copilot 不原生支持的新模型。
要尝试此功能,请从模型选择器中选择管理模型...。我们正在积极探索对 Copilot Business 和 Enterprise 客户的支持,并将在未来版本中分享更新。要了解有关此功能的更多信息,请访问我们的文档。
可复用提示文件
改进的配置
chat.promptFilesLocations 设置现在支持文件路径中的 glob 模式。例如,要包含当前打开工作区中的所有 .prompt.md
文件,您可以将路径设置为 { "**": true }
。
此外,该配置现在在适用的文件系统上遵循大小写敏感性,与主机操作系统的行为保持一致。
改进的提示文件编辑
- 您的
.prompt.md
文件现在提供文件系统路径的基本自动完成功能,并高亮显示有效的文件引用。另一方面,断开的链接现在显示为警告或错误波浪线,并提供详细的诊断信息。 - 您现在可以使用聊天:使用提示命令中提示文件列表中的编辑和删除操作来管理提示。
- 提示文件中的文件夹引用不再被标记为无效。
- Markdown 注释现在得到正确处理,例如,在生成发送到 LLM 模型的最终提示时,所有被注释掉的链接都将被忽略。
与自定义指令对齐
.github/copilot-instructions.md
文件现在行为类似于任何其他可复用的 .prompt.md
文件,支持嵌套链接解析和增强的语言特性。此外,任何 .prompt.md
文件现在都可以被引用并得到适当处理。
了解更多关于自定义指令的信息。
用户提示
创建用户提示命令现在允许创建一种新的提示类型,称为用户提示。这些提示存储在用户数据文件夹中,可以像代码片段或用户设置一样在机器之间同步。同步可以在同步设置中通过使用同步资源列表中的提示项进行配置。
改进的视觉支持(预览版)
上一个迭代中,Copilot 视觉已为 GPT-4o
启用。查看我们的发行说明,了解如何在聊天中附加和使用图像的更多信息。
此版本中,您可以从任何浏览器通过拖放附加图像。从浏览器拖放的图像必须具有正确的 URL 扩展名,包括 .jpg
、.png
、.gif
、.webp
或 .bmp
。
配置编辑器
统一聊天体验
我们已将 VS Code 中的聊天体验简化为单个统一的聊天视图。您现在可以轻松切换不同的聊天模式,而无需在不同视图之间移动并丢失对话上下文。
根据您的场景,使用以下任一模式,并可以在对话中自由切换:
- 询问模式:优化用于询问有关代码库的问题和构思想法。
- 编辑模式:优化用于对代码库中的多个文件进行编辑。
- 代理模式:优化用于自主编码流程,结合代码编辑和工具调用。
获取有关统一聊天视图的更多详细信息。
通过即时索引加快工作区搜索
远程工作区索引加速了在大型代码库中搜索 AI 在回答问题和生成编辑时使用的相关代码片段。这些远程索引对于包含数万甚至数十万文件的大型代码库尤其有用。
以前,您必须按下按钮或运行命令才能构建和开始使用远程工作区索引。借助我们新的即时索引支持,当您首次尝试提出 #codebase
/@workspace
问题时,我们现在会自动构建远程工作区索引。在大多数情况下,此远程索引可以在几秒钟内构建完成。构建完成后,您或在 VS Code 中使用该存储库的任何其他人进行的任何代码库搜索都将自动使用远程索引。
请记住,远程工作区索引目前仅适用于存储在 GitHub 上的代码。要使用远程工作区索引,请确保您的工作区包含一个带有 GitHub 远程的 Git 项目。您可以使用Copilot 状态菜单查看当前使用的索引类型。
为了管理负载,我们将在未来几周内缓慢推出即时索引,因此您可能不会立即看到它。当即时索引尚未为您启用时,您仍然可以运行 GitHub Copilot: 构建远程索引
命令以开始使用远程索引。
Copilot 状态菜单
Copilot 状态菜单可从状态栏访问,现在已为所有用户启用。本里程碑我们为其添加了一些新功能:
开箱即用的 Copilot 设置(实验性)
我们正在推出一项实验性功能,以提供开箱即用的功能性聊天体验。这包括聊天视图、编辑器/终端行内聊天和快速聊天。当您首次发送聊天请求时,我们将引导您登录并注册 Copilot Free。
如果您想亲自体验此功能,请启用 chat.setupFromDialog 设置。
聊天预发布通道不匹配
如果您在 VS Code 稳定版中安装了 Copilot Chat 扩展的预发布版本,新的欢迎屏幕将通知您此配置不受支持。由于聊天功能的快速发展,该扩展在 VS Code 稳定版中将不会激活。
欢迎屏幕提供了切换到扩展发布版本或下载 VS Code 内测版的选项。
语义文本搜索改进(实验性)
设置:github.copilot.chat.search.semanticTextResults
AI 驱动的语义文本搜索现在在搜索视图中默认启用。使用⌘I (Windows, Linux Ctrl+I) 键盘快捷键触发语义搜索,它会在常规搜索结果之上,根据您的查询显示最相关的结果。
您还可以使用 #searchResults
工具在聊天提示中引用语义搜索结果。这使您可以要求 LLM 总结或解释结果,甚至根据结果生成代码。
设置编辑器搜索更新
默认情况下,设置编辑器搜索现在使用我们在上一版本中引入的键匹配算法。即使设置 ID 与已知设置完全匹配,它也会显示附加设置。
主题:Light Pink(在 vscode.dev 上预览)
新的窗口控件设置(Linux、Windows)
如果您已将标题栏样式(window.titleBarStyle)设置为 custom
,您现在可以选择窗口控件的三种不同样式。
native
:这是默认设置,根据底层平台渲染窗口控件custom
:如果您更喜欢自定义样式而不是原生样式,则使用自定义样式渲染窗口控件hidden
:如果您想在标题栏中节省一些空间,并且更习惯使用键盘操作,则完全隐藏窗口控件
代码编辑
下一步编辑建议正式发布
设置:github.copilot.nextEditSuggestions.enabled
我们很高兴地宣布下一步编辑建议 (NES) 正式发布!此外,我们还对 NES 的整体用户体验进行了多项改进:
- 使编辑建议更紧凑,减少对周围代码的干扰,并更容易一目了然地阅读。
- 更新了行号栏指示器,以确保所有建议更容易被注意到。
AI 编辑改进
我们在使用 AI 生成编辑时进行了一些小调整:
-
在使用 AI 编辑重写文件时,静音编辑器外部的诊断事件。以前,我们已经在此场景中禁用了波浪线。这些更改减少了“问题”面板中的闪烁,并确保我们不会对快速修复代码操作发出请求。
-
当您决定保留 AI 编辑时,我们现在会明确保存文件。
基于工具的编辑模式
我们正在更改聊天中的编辑模式操作方式。新的编辑模式使用与代理模式相同的方法,即允许模型调用工具来编辑文件。这种对齐的优点是,它使您能够在所有三种模式之间无缝切换,同时极大地简化了这些模式的底层工作原理。
缺点是,这意味着新模式只适用于代理模式所使用的相同简化模型集,即支持工具调用并经过测试以确保在使用工具时能有良好体验的模型。您可能会注意到编辑模式中缺少 o3-mini
和 Claude 3.7 (Thinking)
等模型。如果您想继续使用这些模型进行编辑,请禁用 chat.edits2.enabled 设置以恢复到以前的编辑模式。切换模式时,系统会要求您清除会话。
我们了解到,使用工具时,提示以在不同模型之间获得一致结果更困难,但我们正在努力使这些模型支持编辑(和代理)模式。
此设置将逐步向 VS Code 稳定版用户启用。
行内建议语法高亮
设置:editor.inlineSuggest.syntaxHighlightingEnabled
通过此更新,行内建议的语法高亮现在默认启用。请注意以下屏幕截图,代码建议已应用语法着色。
如果您喜欢不带语法高亮的行内建议,可以使用 editor.inlineSuggest.syntaxHighlightingEnabled 禁用它。
基于 Tree-Sitter 的语法高亮(预览版)
设置:editor.experimental.preferTreeSitter.css 和 editor.experimental.preferTreeSitter.regex
在之前使用 Tree-Sitter 进行语法高亮的工作基础上,我们现在支持实验性的、基于 Tree-Sitter 的 CSS 文件和 TypeScript 内正则表达式的语法高亮。
Notebook
Jupyter 笔记本文档的最低版本到 4.5
新笔记本的默认 nbformat
版本已从 4.2 提升到 4.5,这现在将为笔记本的每个单元格设置 id
字段,以帮助计算差异。您还可以通过在笔记本的原始 JSON 中将 nbformat_minor
设置为 5
来手动更新现有笔记本。
AI 笔记本编辑改进
Stable 版本现已提供 AI 驱动的笔记本编辑支持(包括代理模式)。这于上个月作为预览功能添加到 VS Code 内测版中。
您现在可以使用聊天编辑笔记本文件,获得与编辑代码文件相同的直观体验:修改多个单元格的内容、插入和删除单元格以及更改单元格类型。此功能在处理数据科学或文档笔记本时提供了无缝的工作流程。
新笔记本工具
VS Code 现在提供了一个专用工具,可以直接从聊天创建新的 Jupyter 笔记本。此工具根据您的查询计划并创建新笔记本。
在代理模式或编辑模式下使用新笔记本工具(确保使用 chat.edits2.enabled 启用改进的编辑模式)。如果您使用的是询问模式,请在聊天提示中键入 /newNotebook
以创建新笔记本。
浏览 AI 编辑
使用差异工具栏遍历和审查跨单元格的每个 AI 编辑。
撤销 AI 编辑
当聚焦于单元格容器时,撤销命令会撤销笔记本级别的所有 AI 更改。
聊天中的文本和图像输出支持
您现在可以将笔记本单元格输出(如文本、错误和图像)直接作为上下文添加到聊天中。这使您在使用询问、编辑或代理模式时可以引用输出,从而使语言模型更容易理解并协助处理您的笔记本内容。
使用将单元格输出添加到聊天操作,可通过三点菜单或右键单击输出访问。
将单元格错误输出作为聊天上下文附加
将单元格输出图像作为聊天上下文附加
辅助功能
聊天代理模式改进
现在,当工具调用期间需要手动操作(例如“在终端中运行命令”)时,您会收到通知。此信息也包含在相关聊天响应的 ARIA 标签中,增强了屏幕阅读器用户的可访问性。
此外,代理模式中提供了一个新的辅助功能帮助对话框,解释了用户对该功能有何期望以及如何有效导航它。
聊天编辑操作的辅助功能信号
当您保留或撤销 AI 生成的编辑时,VS Code 现在提供听觉信号。这些信号可通过 accessibility.signals.editsKept 和 accessibility.signals.editsUndone 进行配置。
建议控件的 ARIA 标签改进
建议控件项目的 ARIA 标签现在包含更丰富和描述性的信息,例如建议类型(例如,方法或变量)。此信息以前仅通过图标对有视力用户可用。
源代码管理
引用选择器改进
本里程碑,我们对用于各种源代码控制操作(如检出、合并、变基或删除分支)的引用选择器进行了改进。更新后的引用选择器包含上次提交的详细信息(作者、提交消息、提交日期)以及本地分支的超前/落后信息。此附加上下文将帮助您为各种操作选择正确的引用。
通过切换 git.showReferenceDetails 设置隐藏附加信息。
存储库状态栏项
包含多个存储库的工作区现在有一个源代码控制提供程序状态栏项,它在分支选择器的左侧显示活动存储库。新的状态栏项提供了附加上下文,因此您可以在编辑器之间导航和使用源代码控制视图时了解哪个是活动存储库。
要隐藏源代码控制提供程序状态栏项,请右键单击状态栏,然后从上下文菜单中取消选择源代码控制提供程序。
Git blame 编辑器装饰改进
我们收到反馈称,在打字时,“尚未提交”编辑器装饰没有太大价值,反而更分散注意力。从本里程碑开始,“尚未提交”编辑器装饰只在通过键盘或鼠标在代码库中导航时显示。
提交输入光标自定义
本里程碑,感谢社区贡献,我们将 editor.cursorStyle 和 editor.cursorWidth 设置添加到了源代码控制输入框所遵守的设置列表中。
终端
代理模式的可靠性
允许代理模式在终端中运行命令的工具在可靠性和兼容性方面进行了多项改进。您应该会遇到更少工具卡住或命令完成但无输出的情况。
其中一个更大的变化是引入了“富”质量 shell 集成概念,与“基本”和“无”相对。VS Code 附带的 shell 集成脚本通常都应启用富 shell 集成,这在终端运行工具(以及一般终端使用)中提供最佳体验。您可以通过将鼠标悬停在终端选项卡上查看 shell 集成质量。
终端智能感知改进(预览版)
增强的 code
CLI 智能感知
智能感知现在支持 code
、code-insiders
和 code-tunnel
CLI 的子命令。例如,键入 code tunnel
会显示可用的子命令,如 help
、kill
和 prune
,每个都附带描述信息。
我们还添加了以下选项建议:
--uninstall-extension
--disable-extension
--install-extension
这些显示已安装扩展的列表以帮助完成命令。
此外,code --locate-shell-integration-path
现在提供 shell 特定的选项,例如 bash
、zsh
、fish
和 pwsh
。
全局命令自动刷新
当在系统 bin
目录中检测到更改时,终端会自动刷新其全局命令列表。这意味着新安装的 CLI 工具(例如,在运行 npm install -g pnpm
后)将立即显示在补全中,无需重新加载窗口。
以前,新工具的补全由于缓存而不会出现,直到手动重新加载窗口。
选项值上下文
终端建议现在显示有关预期选项值的上下文信息,帮助您更轻松地完成命令。
Fish shell 的富补全
在上一版本中,我们为 bash 和 zsh 添加了详细的命令补全。此迭代中,我们将该支持扩展到 fish。补全详情来源于 shell 的文档或内置帮助命令。
例如,在 fish 中键入 jobs
会显示用法信息和选项:
建议中的文件类型图标
终端中的建议现在包含不同文件类型的特定图标,使其更容易一目了然地区分脚本和二进制文件。
行内建议详情
行内建议(在终端中显示为虚影文本)继续出现在建议列表的顶部。在此版本中,我们为这些条目添加了命令详情,以便在接受它们之前提供更多上下文。
新的简化和详细选项卡悬停
默认情况下,终端选项卡现在显示更少的详细信息。
要查看所有内容,悬停底部有一个显示详细信息按钮。
签名 PowerShell shell 集成
shell 集成 PowerShell 脚本现在已签名,这意味着在 Windows 上使用默认 PowerShell 执行策略 RemoteSigned
时,shell 集成现在应该会自动开始工作。您可以在此处阅读有关 shell 集成优势的更多信息。
终端 shell 类型
此迭代中,我们最终确定了终端 shell API,允许扩展查看用户终端中的当前 shell 类型。订阅 onDidChangeTerminalState
事件允许您在终端中查看用户 shell 类型的更改。例如,shell 可以从 zsh 更改为 bash。
目前可识别的所有 shell 列表在此处列出。
远程开发
Linux 旧版服务器支持已终止
自 1.99 版本起,您将无法再连接到这些服务器。正如我们在1.97 版本中指出的,需要额外时间完成迁移到受支持的 Linux 发行版的_用户_可以提供自定义的 glibc
和 libstdc++
构建作为解决方案。有关此解决方案的更多信息可在常见问题解答部分找到。
企业
macOS 设备管理
VS Code 除了 Windows 之外,现在还支持 macOS 上的设备管理。这允许系统管理员从集中管理系统(如 Microsoft Intune)推送策略。
有关更多详细信息,请参阅企业支持文档。
对扩展的贡献
Python
更好地支持 Pylance 的可编辑安装
Pylance 现在支持解析以可编辑模式(pip install -e .
)安装的包的导入路径,如 PEP 660 所定义,这在这些场景中提供了改进的 IntelliSense 体验。
此功能通过 python.analysis.enableEditableInstalls 启用,我们计划在本月开始将其作为默认体验推出。如果您遇到任何问题,请在 Pylance GitHub 存储库中报告。
更快、更可靠的 Pylance 诊断体验(实验性)
我们正在推出一项更改,以提高在使用扩展发布版本时 Pylance 诊断的准确性和响应能力。这对于同时打开多个文件或最近关闭文件的场景特别有用。
如果您不想等待推出,可以设置 python.analysis.usePullDiagnostics。如果您遇到任何问题,请在 Pylance GitHub 存储库中报告。
Pylance 自定义 Node.js 参数
有一个新的 python.analysis.nodeArguments 设置,它允许您在使用 python.analysis.nodeExecutable 时直接将自定义参数传递给 Node.js。默认情况下,它设置为 "--max-old-space-size=8192"
,但您可以根据需要修改它(例如,在处理大型工作区时为 Node.js 分配更多内存)。
此外,当将 python.analysis.nodeExecutable 设置为 auto
时,Pylance 现在会自动下载 Node.js。
扩展创作
Terminal.shellIntegration 调整
Terminal.shellIntegration
API 现在只在命令检测发生时才亮起。以前,这应该只在报告当前工作目录时工作,这导致 TerminalShellIntegration.executeCommand
无法正常运行。
此外,TerminalShellIntegration.executeCommand
现在将表现得更一致,并跟踪单个命令行中运行多个命令的多次“子执行”。这取决于代理模式的可靠性部分中提到的富 shell 集成。
提议的 API
任务问题匹配器状态
我们添加了提议的 API,以便扩展可以监控任务的问题匹配器何时开始和完成处理行。使用 taskProblemMatcherStatus
启用它。
将图像发送到 LLM
此迭代中,我们添加了提议的 API,以便扩展可以附加图像并向语言模型发送视觉请求。附件必须是图像的原始、非 base64 编码的二进制数据(Uint8Array
)。最大图像大小为 5MB。
查看此 API 提案问题以查看使用示例并了解此 API 的最新状态。
工程
使用 Marketplace 中新的 /latest
API 检查扩展更新
几个里程碑前,我们在 vscode-unpkg
服务中引入了一个新的 API 端点来检查扩展更新。Marketplace 现在支持相同的端点,VS Code 现在使用此端点来检查扩展更新。这是一项实验性功能,将分阶段向用户推出。
感谢
最后但同样重要的是,向 VS Code 的贡献者们致以衷心的感谢。
问题跟踪
对我们问题跟踪的贡献
- @gjsjohnmurray (John Murray)
- @albertosantini (Alberto Santini)
- @IllusionMH (Andrii Dieiev)
- @RedCMD (RedCMD)
拉取请求
对 vscode
的贡献
- @a-stewart (Anthony Stewart): 将测试偏移 2 小时,以避免时钟更改后少一天 PR #243194
- @acdzh (Vukk): 修复在 JSONEditingService 中更新多个值时 hasEdits 标志的值 PR #243876
- @c-claeys (Cristopher Claeys): 增加聊天重试操作中的请求尝试次数 PR #243471
- @ChaseKnowlden (Chase Knowlden): 添加合并编辑器辅助功能帮助 PR #240745
- @dibarbet (David Barbet): 更新 C# onEnterRules 以考虑文档注释 PR #242121
- @dsanders11 (David Sanders): 修复 vscode.d.ts 中一些损坏的
@link
PR #242407 - @jacekkopecky (Jacek Kopecký): 在 scm 输入编辑器中遵循更多光标设置 PR #242903
- @joelverhagen (Joel Verhagen): 即使未设置扩展 URL,也显示支持 URL 和许可证 URL PR #243565
- @kevmo314 (Kevin Wang): 修复注释拼写错误 PR #243145
- @liudonghua123 (liudonghua): 支持 explorer.copyPathSeparator PR #184884
- @mattmaniak: 使遥测信息表稍微变窄并对齐 PR #233961
- @notoriousmango (Seong Min Park)
- 修复:在 markdown 预览中,对带有 CORS 错误的图像使用复制命令 PR #240508
- 修复设置中带有换行符的字符缩进不正确问题 PR #242074
- @pprchal (Pavel Prchal): 添加了对图标右键单击的本地化 PR #243679
- @SimonSiefke (Simon Siefke): 功能:支持设置中的字体系列选择器 PR #214572
- @tribals (Anthony): 添加 PowerShell Core 用户安装的发现 PR #243025
- @tusharsadhwani (Tushar Sadhwani): 使
git show
引用参数明确 PR #242483 - @wszgrcy (chen): 修复:扩展 uncaughtException 监听 Maximum call stack size exceeded PR #244690
- @zyoshoka (zyoshoka): 更正
typescript-basics
扩展路径 PR #243833
对 vscode-css-languageservice
的贡献
- @lilnasy (Arsh): 支持
@starting-style
PR #421
对 vscode-custom-data
的贡献
- @rviscomi (Rick Viscomi): 添加计算的 Baseline 状态 PR #111
对 vscode-extension-samples
的贡献
- @ratmice (matt rice): 修复 esbuild 脚本 PR #1154
对 vscode-extension-telemetry
的贡献
- @minestarks (Mine Starks): 删除 common.platformversion 中多余的大括号 PR #221
对 vscode-js-debug
的贡献
- @erikson84 (Erikson Kaszubowski): 修复:在 windows 中设置断点时确保路径中存在反斜杠 PR #2184
- @xymopen (xymopen_Official): 支持 usenode 作为 npm 脚本运行器 PR #2178
对 vscode-mypy
的贡献
- @ivirabyan (Ivan Virabyan): 仅报告 mypy 配置中指定的文件 PR #352
对 vscode-prompt-tsx
的贡献
- @dsanders11 (David Sanders): 文档:修复 README 示例中的 sendRequest API 名称 PR #159
- @tamuratak (Takashi Tamura)
对 vscode-pull-request-github
的贡献
- @aedm (Gábor Gyebnár): 将
sanitizedLowercaseIssueTitle
添加到设置文档 PR #6690
对 vscode-python-debugger
的贡献
- @rchiodo (Rich Chiodo): 更新 debugpy 到最新版本 PR #653
对 vscode-test
的贡献
- @SKaplanOfficial (Stephen Kaplan): 修复:解压时避免“Invalid extraction directory”错误 PR #303
对 language-server-protocol
的贡献
- @MariaSolOs (Maria José Solano): 更新元模型中的范围格式化功能 PR #2106
对 python-environment-tools
的贡献
- @CharlesChen0823: bump winreg PR #195
- @elprans (Elvis Pranskevichus)