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 上的更新。Insiders:想盡快嘗試新功能嗎?您可以下載每晚Insiders版本並儘快嘗試最新更新。
聊天
代理模式在 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 伺服器,或者使用 AI 輔助設定從釋出到 Docker、npm 或 PyPI 的 MCP 伺服器進行設定。
新增新的 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。現在,您可以在代理模式下使用這些工具。
任何在其配置中設定了 toolReferenceName 和 canBeReferencedInPrompt 的對此 API 貢獻的工具都會自動在代理模式下可用。
透過在擴充套件中貢獻工具,它可以訪問完整的 VS Code 擴充套件 API,並且可以透過擴充套件市場輕鬆安裝。
與 MCP 伺服器中的工具類似,您可以使用代理模式中的選擇工具按鈕啟用和停用這些工具。請參閱我們的語言模型工具擴充套件指南來構建您自己的工具!
代理模式工具審批
作為完成使用者提示任務的一部分,代理模式可以執行工具和終端命令。這功能強大但可能伴隨風險。因此,您需要批准在代理模式下使用工具和終端命令。
為了最佳化此體驗,您現在可以記住會話、工作區或應用程式級別的審批。這目前未對終端工具啟用,但我們計劃在未來的版本中開發終端審批系統。

如果您想自動批准所有工具,您現在可以使用實驗性設定 chat.tools.autoApprove。這將自動批准所有工具,並且當語言模型希望執行工具時,VS Code 將不會要求確認。請記住,啟用此設定後,您將沒有機會取消模型可能採取的潛在破壞性操作。
我們計劃在未來擴充套件此設定,使其具有更精細的功能。
SWE-bench 上的代理評估
VS Code 的代理在 swebench-verified 上使用 Claude 3.7 Sonnet 實現了 56.0% 的透過率,遵循 Anthropic 關於在 SWE-bench 環境中配置代理以在沒有使用者輸入的情況下執行的研究。我們的實驗已轉化為為代理模式提供改進的提示、工具描述和工具設計,包括針對 Claude 3.5 和 3.7 Sonnet 模型的檔案編輯新工具。
統一聊天檢視
在過去的幾個月裡,我們有一個“聊天”檢視用於向語言模型提問,以及一個“Copilot 編輯”檢視用於 AI 驅動的程式碼編輯會話。本月,我們旨在透過將這兩個檢視合併為一個聊天檢視來簡化基於聊天的體驗。在聊天檢視中,您將看到一個包含三種模式的下拉選單

- 提問:這與之前的聊天檢視相同。使用任何模型提出有關您的工作區或一般編碼的問題。使用
@呼叫內建聊天參與者或已安裝的擴充套件。使用#手動附加任何型別的上下文。 - 代理:使用一組工具啟動代理編碼流,讓它自主收集上下文、執行終端命令或採取其他操作來完成任務。代理模式已為所有 VS Code Insiders 使用者啟用,我們正在將其推廣給 VS Code 穩定版的越來越多使用者。
- 編輯:在編輯模式下,模型可以對多個檔案進行定向編輯。附加
#codebase以讓它自動查詢要編輯的檔案。但它不會自動執行終端命令或做任何其他事情。
注意:如果此列表中沒有顯示代理模式,則表示尚未為您啟用,或者已因組織策略而停用,需要由組織所有者啟用。
除了簡化您的聊天體驗外,這種統一還為 AI 驅動的程式碼編輯提供了幾個新功能
- 在對話中途切換模式:例如,您可能在提問模式下開始構思應用程式,然後切換到代理模式執行計劃。提示:按 可快速更改模式。
- 歷史記錄中的編輯會話:使用顯示聊天命令(聊天檢視頂部的時鐘圖示)恢復過去的編輯會話並繼續處理它們。
- 將聊天移動到編輯器或視窗:選擇在新編輯器/新視窗中開啟聊天以將您的聊天對話從側邊欄彈出到新的編輯器選項卡或單獨的 VS Code 視窗。聊天很早就支援此功能,但現在您也可以從編輯器窗格或單獨的視窗執行您的編輯/代理會話。
- 多個代理會話:根據上述觀點,這意味著您甚至可以同時執行多個代理會話。您可能希望一個聊天在代理模式下致力於實現功能,而另一個獨立的會話用於進行研究和使用其他工具。不建議同時指示兩個代理會話編輯檔案,這可能會導致混亂。
自帶金鑰 (BYOK)(預覽版)
Copilot Pro 和 Copilot Free 使用者現在可以自帶 API 金鑰,用於 Azure、Anthropic、Gemini、Open AI、Ollama 和 Open Router 等熱門提供商。這使您可以在新模型釋出的第一天就使用 Copilot 本身不支援的模型。
要嘗試此功能,請從模型選擇器中選擇管理模型...。我們正在積極探索對 Copilot Business 和 Enterprise 客戶的支援,並將在未來的版本中分享更新。要了解有關此功能的更多資訊,請訪問我們的文件。

可重用提示檔案
改進的配置
chat.promptFilesLocations 設定現在支援檔案路徑中的 glob 模式。例如,要包含當前開啟工作區中的所有 .prompt.md 檔案,您可以將路徑設定為 { "**": true }。
此外,配置現在尊重檔案系統(如果適用)的大小寫敏感性,與主機作業系統的行為保持一致。
改進的提示檔案編輯
- 您的
.prompt.md檔案現在提供檔案系統路徑的基本自動補全功能,並突出顯示有效的引用檔案。另一方面,斷開的連結現在顯示為警告或錯誤波浪線,並提供詳細的診斷資訊。 - 您現在可以使用聊天:使用提示命令中的提示檔案列表中的編輯和刪除操作來管理提示。
- 提示檔案中的資料夾引用不再被標記為無效。
- Markdown 註釋現在得到正確處理,例如,在生成傳送到 LLM 模型的最終提示時,所有註釋掉的連結都將被忽略。
與自定義指令對齊
.github/copilot-instructions.md 檔案現在與其他可重用的 .prompt.md 檔案一樣,支援巢狀連結解析和增強的語言功能。此外,現在可以引用任何 .prompt.md 檔案並進行適當處理。
瞭解更多關於自定義指令的資訊。
使用者提示
建立使用者提示命令現在允許建立一種新型提示,稱為使用者提示。這些提示儲存在使用者資料資料夾中,可以像程式碼片段或使用者設定一樣在不同機器之間同步。同步可以透過 同步設定 中的同步資源列表中的提示項進行配置。
改進的視覺支援(預覽版)
上一次迭代,Copilot Vision 已為 GPT-4o 啟用。檢視我們的釋出說明,瞭解如何附加和使用聊天中的影像。
此版本中,您可以透過拖放從任何瀏覽器附加影像。從瀏覽器拖放的影像必須具有正確的 URL 副檔名,例如 .jpg、.png、.gif、.webp 或 .bmp。
配置編輯器
統一聊天體驗
我們已將 VS Code 中的聊天體驗簡化為單個統一的聊天檢視。您現在可以輕鬆地在不同的聊天模式之間切換,而無需在單獨的檢視之間移動並丟失對話上下文。

根據您的場景,使用以下任一模式,並可以在對話中自由切換
- 提問模式:最佳化用於提問有關您的程式碼庫和集思廣益。
- 編輯模式:最佳化用於在您的程式碼庫中跨多個檔案進行編輯。
- 代理模式:最佳化用於自主編碼流程,結合程式碼編輯和工具呼叫。
獲取有關統一聊天檢視的更多詳細資訊。
透過即時索引加快工作區搜尋速度
遠端工作區索引可加快搜索大型程式碼庫中相關的程式碼片段,這些片段是 AI 在回答問題和生成編輯時使用的。這些遠端索引對於擁有成千上萬個檔案的大型程式碼庫尤其有用。
以前,您必須按下一個按鈕或執行一個命令才能構建和開始使用遠端工作區索引。藉助我們新的即時索引支援,當您第一次嘗試提出 #codebase/@workspace 問題時,我們現在會自動構建遠端工作區索引。在大多數情況下,這個遠端索引可以在幾秒鐘內構建完成。一旦構建完成,您或在 VS Code 中使用該倉庫的任何其他人進行的任何程式碼庫搜尋都將自動使用遠端索引。
請記住,遠端工作區索引目前僅適用於儲存在 GitHub 上的程式碼。要使用遠端工作區索引,請確保您的工作區包含一個帶有 GitHub 遠端的 git 專案。您可以使用 Copilot 狀態選單檢視當前使用的索引型別

為了管理負載,我們將在接下來的幾周內逐步推出即時索引,因此您可能不會立即看到它。當即時索引尚未為您啟用時,您仍然可以執行 GitHub Copilot: 構建遠端索引命令 命令來開始使用遠端索引。
Copilot 狀態選單
從狀態列訪問的 Copilot 狀態選單現已向所有使用者啟用。在這個里程碑中,我們為其添加了一些新功能
-
隨時檢視工作區索引狀態資訊。

-
檢視是否為活動編輯器啟用了程式碼補全。
新圖示反映狀態,以便您快速檢視是否啟用了程式碼補全。

-
啟用或停用程式碼補全和 NES。
開箱即用的 Copilot 設定(實驗性)
我們正在推出一項實驗性功能,以開箱即用地展示功能性聊天體驗。這包括聊天檢視、編輯器/終端內聯聊天和快速聊天。當您第一次傳送聊天請求時,我們將引導您登入並註冊 Copilot Free。
如果您想親自體驗此功能,請啟用 chat.setupFromDialog 設定。
聊天預釋出通道不匹配
如果您在 VS Code Stable 中安裝了 Copilot Chat 擴充套件的預釋出版本,新的歡迎螢幕將通知您此配置不受支援。由於聊天功能的快速開發,該擴充套件將不會在 VS Code Stable 中啟用。
歡迎螢幕提供選項,可切換到擴充套件的釋出版本或下載 VS Code Insiders。

語義文字搜尋改進(實驗性)
設定:github.copilot.chat.search.semanticTextResults
AI 驅動的語義文字搜尋現在在搜尋檢視中預設啟用。使用 ⌘I (Windows, Linux Ctrl+I) 鍵盤快捷鍵觸發語義搜尋,該搜尋在常規搜尋結果之上,根據您的查詢顯示最相關的結果。
您還可以使用 #searchResults 工具在聊天提示中引用語義搜尋結果。這允許您讓 LLM 總結或解釋結果,甚至根據它們生成程式碼。
設定編輯器搜尋更新
預設情況下,設定編輯器搜尋現在使用我們在上一個版本中引入的鍵匹配演算法。即使設定 ID 與已知設定完全匹配,它也會顯示其他設定。
主題:淺粉色(在 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 Stable 中向用戶啟用。
內聯建議語法高亮
設定:editor.inlineSuggest.syntaxHighlightingEnabled
在此更新中,內聯建議的語法高亮現在預設啟用。請注意以下螢幕截圖中的程式碼建議已應用語法著色。

如果您更喜歡沒有語法高亮的內聯建議,您可以使用 editor.inlineSuggest.syntaxHighlightingEnabled 停用它。

基於 Tree-Sitter 的語法高亮(預覽版)
設定:editor.experimental.preferTreeSitter.css 和 editor.experimental.preferTreeSitter.regex
基於以前使用 Tree-Sitter 進行語法高亮的工作,我們現在支援對 CSS 檔案和 TypeScript 中的正則表示式進行實驗性的、基於 Tree-Sitter 的語法高亮。
Notebook
Jupyter 筆記本文件的最低版本為 4.5
新筆記本的 nbformat 預設版本已從 4.2 提高到 4.5,這將為筆記本的每個單元格設定 id 欄位,以幫助計算差異。您還可以透過在筆記本的原始 JSON 中將 nbformat_minor 設定為 5 來手動更新現有筆記本。
AI 筆記本編輯改進
筆記本的 AI 驅動編輯支援(包括代理模式)現已在穩定版中可用。這在上個月作為預覽功能新增到 VS Code Insiders 中。
您現在可以使用聊天以與編輯程式碼檔案相同的直觀體驗編輯筆記本檔案:修改多個單元格中的內容、插入和刪除單元格以及更改單元格型別。此功能在使用資料科學或文件筆記本時提供無縫的工作流程。
新筆記本工具
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 整合質量。
終端 IntelliSense 改進(預覽版)
code CLI 的增強型 IntelliSense
IntelliSense 現在支援 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 中一些損壞的
@linkPR #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 showref 引數明確 PR #242483 - @wszgrcy (chen):修復:擴充套件 uncaughtException 監聽 Maximum call stack size exceeded PR #244690
- @zyoshoka (zyoshoka):更正
typescript-basics擴充套件路徑 PR #243833
對 vscode-css-languageservice 的貢獻
- @lilnasy (Arsh):支援
@starting-stylePR #421
對 vscode-custom-data 的貢獻
- @rviscomi (Rick Viscomi):新增計算的基線狀態 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):修復:解壓時避免“無效提取目錄” PR #303
對 language-server-protocol 的貢獻
- @MariaSolOs (Maria José Solano):更新 metamodel 中的範圍格式化功能 PR #2106
對 python-environment-tools 的貢獻