Visual Studio Code 1.132 於 2026 年 8 月 5 日發布,持續穩步邁向更具對話性、多模態的開發環境。如果說 1.131 引入了內建語音輸入(dictation)與混合式 Markdown 編輯器,那麼 1.132 則是在此基礎上精益求精——為語音輸入加入多語言支援、在混合式編輯器中啟用 Markdown diff,並推出一個巧妙的側邊對話機制,讓你在不中斷執行中 agent 的情況下提出問題。

不過,最引人注目的功能,是整合式瀏覽器中的元素層級註解——你可以直接指向網頁上的某個按鈕、表單欄位或 div,精確地告訴 agent 它哪裡有問題。

讓我們來看看這次發布了什麼。

整合式瀏覽器中的元素層級回饋

對於使用 VS Code 整合式瀏覽器進行 agent 驅動網頁開發的人來說,這是本次的頭條功能。當 agent 建置或修改網頁應用程式時,你現在可以提供精確的元素層級回饋,而不再需要輸入籠統的描述、祈禱 agent 自行猜到你想指的是哪個元素。

運作方式如下:

  • 在整合式瀏覽器中,透過鍵盤快捷鍵觸發元素選取模式
  • 點選一個或多個網頁元素來選取它們
  • 為每個選取的元素加上註解
  • 將所有註解以結構化的 agent 回饋形式傳送到聊天中

這把瀏覽器從被動的預覽介面,轉變為互動式的註解工具。與其說「送出按鈕看起來怪怪的」,你可以直接點選實際的按鈕,寫下「這個應該要藍色,而且文字應該是 ‘Save’ 而不是 ‘Submit’」,agent 就能取得它所需要的完整上下文。

搭配 1.127 正式發布(GA)的瀏覽器工具——agent 可以開啟頁面、擷取螢幕畫面、點擊、輸入文字與導覽——這補上了 agent 驅動網頁開發的最後一塊拼圖。agent 負責建置,你在瀏覽器中審查,針對特定元素加上註解,然後 agent 疊代修改。再也不需要猜測到底哪個元素需要處理。

搭配 Nemotron 3.5 的多語言語音輸入

設定: agents.voice.language

內建語音輸入在 1.131 首度登場,採用離線的 Nemotron 模型。到了 1.132,它獲得了一項重大升級:預設的裝置端模型現在是多語言 Nemotron 3.5,支援多種語言,既可以遵循你設定的語言偏好,也可以自動偵測語言。

主要改進:

  • 自動語言選取:語音輸入會優先使用系統或瀏覽器地區設定所支援的語言;否則,模型會直接從你的語音中偵測語言。
  • 上手引導體驗:首次使用的使用者會獲得逐步引導設定,包括即時的麥克風波形圖、多支麥克風時的裝置選取器,以及語音輸入設定的連結。之後隨時可透過命令面板(Command Palette)中的「Voice Mode: Show Introduction」重新開啟。
  • 可自訂的清理指令:執行「Voice: Configure Dictation Instructions」即可定義專案專屬的術語或格式偏好。VS Code 會合併受信任工作區中 ~/.copilot/dictation.md.github/dictation.md 的指令,並疊加在內建的清理規則之上——這些規則會保留語意,並在適當情況下偏好使用數字。
  • Foundry Local 匯入:如果網路限制導致裝置端模型無法下載,錯誤通知會包含一個動作,讓你從磁碟匯入官方的 Foundry Local 模型套件——這對氣隙(air-gapped)企業環境非常重要。
  • 下載進度 UX:首次使用的下載期間,麥克風按鈕會顯示進度,而不是把下載文字倒進輸入欄位。

音訊全程留在你的裝置上。這不是雲端轉錄服務——模型在本機執行,對於注重隱私的組織與受法規限制的環境而言至關重要。

使用 /btw 的側邊對話

這是那種聽起來很簡單、但實際上會改變你與 agent 協作方式的功能。

當 agent 正在執行回合中——處理檔案、執行子代理(subagent)、執行指令——而你只是想快速問一個問題時,過去你有兩個選擇:等回合結束,或是直接中斷它。當你只是想問「這個函式是做什麼的?」或「你為什麼選擇這種做法?」時,兩者都不理想。

現在,你可以在聊天輸入框中輸入 /btw 來開啟一個側邊對話,它具備以下特性:

  • 共享主聊天的上下文與 prompt cache,因此能完整掌握目前回合的狀態
  • 執行時不中斷主 agent 的回合
  • 讓你就 agent 正在進行的工作提出上下文相關的問題

你也可以在聊天回覆中選取文字,針對該特定回覆提出上下文相關的問題。至於跨聊天共享上下文,你可以將聊天分頁拖曳到輸入框中,或輸入 #chat: 後接聊天標題,來參照其他聊天。

以下情境特別實用:

  • agent 正在進行大型重構,而你想了解某個特定決策,卻不想暫停工作
  • 你正在審查 agent 的輸出,想以平行探索的方式問「如果我們改用 X 會怎樣?」
  • 你需要在回合進行中驗證 agent 的推理,而不是等回合結束後才發現問題

混合式 Markdown 編輯器中的 Markdown Diff(實驗性)

1.131 推出的混合式 Markdown 編輯器——結合了轉譯後的 Markdown、就地編輯與可供 agent 操作的註解——現在支援 diff 了。

當 agent 修改 Markdown 檔案時,diff 可以在混合式 Markdown 編輯器中開啟,而不是傳統的文字 diff。你會看到:

  • 轉譯後的 Markdown,格式完整保留
  • 側欄指示器(gutter indicators),標示新增、修改與刪除的內容
  • 完全可編輯——審查期間修改後的文件仍然可以編輯

你可以透過編輯器類型下拉選單,在文字 diff 與帶有 diff 註解的 Markdown 編輯器之間切換。這代表你可以用文件實際轉譯後的格式來審查文件變更,而不是閱讀原始 Markdown diff、在腦中自行轉譯。

對於使用 Markdown 撰寫文件(也就是大多數使用 VS Code 的團隊)的團隊來說,這讓審查 agent 產生的文件變更變得容易許多。

Agents 視窗:從聊天輸入框追蹤工作階段活動

聊天輸入框上方新增了即時狀態膠囊(status pills),協助你掌握 agent 工作的整體動態:

  • Changes:顯示變更數量。點擊即可檢視目前回合的即時更新多檔案 diff。
  • Previews:存取 agent 建立或編輯之檔案的 Markdown 預覽。
  • Subagents:在獨立的聊天中開啟子代理的工作,追蹤它的進度。
  • Browsers:在 agent 與整合式瀏覽器互動時,同步跟隨觀看。

這些膠囊會根據你目前檢視的工作階段即時更新,因此永遠與當前情境相關。這是 1.131 子代理可視性工作的自然延伸,把同樣的可觀測性理念帶到 agent 活動的各個層面——不只是子代理,還包括檔案變更、預覽與瀏覽器互動。

在 Agents 視窗中切換編輯器類型

設定: breadcrumbs.showEditorType

當有多種編輯器類型可用時(例如文字編輯器、diff 編輯器、混合式 Markdown 編輯器),麵包屑列(breadcrumb bar)中會出現新的下拉選單,讓你直接切換——再也不需要「Reopen Editor With」指令。你也可以直接從下拉選單設定預設編輯器。

這是一個小而美的 UX 改進,能減少在 VS Code 日益多元的編輯器類型之間切換的摩擦:文字、diff、Markdown 預覽、混合式 Markdown,以及擴充套件提供的自訂編輯器。麵包屑列本來就提供檔案導覽功能,因此編輯器類型下拉選單放在這裡可謂恰到好處。

聊天:終端機輸出重新排版

聊天中展開的終端機輸出,現在會在你調整視窗大小時重新排版以符合可用寬度。過去輸出使用固定寬度,導致行文字過早換行,在較寬的視窗中則留下大量空白。

這同時適用於 Local agent harness 與在 agent host 上執行的 Copilot harness 所產生的終端機輸出。這是件小事,但如果你曾在 200 字元寬的面板中,閱讀以 80 字元換行的寬終端機輸出,你就會明白這為什麼重要。

終端機:具備 Shell 感知的語音輸入清理

終端機語音輸入現在會套用具備 shell 感知的清理規則,讓口述指令保留 shell 語法。例如,說「git commit dash m hello world」會產生 git commit -m "Hello World",而不是把這些字逐字插入。

這可說是語法感知編輯在語音輸入上的對應版本——清理規則理解你是在對終端機口述指令,而不是在寫文章,並據此格式化。搭配多語言語音輸入支援,這代表你可以用自己偏好的語言口述終端機指令,並得到格式正確的 shell 語法。

提案中 API:依模式區分的自訂編輯器優先權

customEditors.priority 提案 API 讓擴充套件可以獨立為文字編輯器與 diff 編輯器設定不同的優先權。擴充套件可以對一般檔案預設使用自己的自訂編輯器,同時對 diff 保留內建編輯器為預設,反之亦然。

既有的單一優先權值仍可繼續使用,以維持向後相容;diff 編輯器預設使用明確的優先權。Microsoft 計畫在下一個版本將此功能升為穩定版,這將讓擴充套件作者能更精細地控制自訂編輯器如何與 VS Code 的編輯介面整合。

棄用:ChatAgentHostEnabled 原則

ChatAgentHostEnabled 原則已被移除。管理員不再能透過原則集中停用 agent host。個別開發者仍可使用 chat.agentHost.enabled 設定,決定 agent 是否在獨立的 agent host 行程(process)中執行。

這顯示出對 agent host 穩定性的信心——Microsoft 對它已有足夠把握,因此移除了這個管理上的緊急逃生門。對於那些原本透過原則暫緩採用 agent host 的組織來說,這正是一個訊號:改為直接透過使用者層級設定來評估它。

社群貢獻

本次發布獲得社群熱烈參與,共有 27 位貢獻者提交 PR。值得注意的貢獻包括:

  • Simon Siefke(@SimonSiefke)延續 1.131 以來的記憶體洩漏清理攻勢,再提交六項修正:titleBarPart、notebook view model、decorationAddon._decorations、chatServiceImpl、settings-tree 與 historyService。Simon 正低調地為 VS Code 的記憶體管理做著神聖的工作。
  • Arthur Cnops(@accnops)為語音體驗貢獻了語音問題輪播(voice question carousels)與並行問題佇列。
  • Mir(@mirimadahmed)在免手持播放前加入語音預先收音(warm capture),並讓 coding agent 具備語音感知能力,以提升語音體驗。
  • Rushil Patel(@rushil-b-patel)為 Markdown 預覽中的程式碼區塊加入複製按鈕。
  • Praneeth Kodumagulla(@praneethhere)為 Copilot CLI 狀態加入 COPILOT_HOME 支援。
  • Dan Brown(@jdanbrown)修正終端機分頁標題,改為顯示「~」而非「$HOME」——Unix 使用者會感激這個小巧的 UX 細節。
  • Yogeshwaran C(@yogeshwaran-c)貢獻了驚人的 8 個 PR,包括 JSDoc 延續模式、npm 自動完成、package.json catalog 支援、搜尋詳細資訊 tooltip、serve-web 提案 API、折疊範圍(folding ranges)、終端機結束代碼偵測,以及模組腳本作用域(module script scoping)。
  • Dmitry Savy(@dsavy4)修正了 stableStringify 將共享參照誤判為循環參照的問題,以及 BidirectionalMap 過期反向條目的錯誤。
  • Tobias Hernstig(@thernstig)修正了轉發埠(forwarded ports)狀態列項目,使其可切換埠檢視。
  • zmr-233 修正了會觸發整個工作台樣式失效的 :has() 選取器效能問題。

Issue 追蹤貢獻者:John Murray(@gjsjohnmurray)、Momin Ahmad(@MominRaza)、Norbert Palinkas(@palinkasnorbert)、Andrii Dieiev(@IllusionMH)與 Ganlv(@ganlvtech)。

更宏觀的視角

VS Code 1.132 有三個明確的主軸:

  1. 與 agent 之間的回饋迴路:元素層級瀏覽器註解與即時活動膠囊,讓引導 agent 更精準、即時觀察其工作也更簡單。瀏覽器不再只是預覽——而是互動式的註解介面。

  2. 語音走向多語言:Nemotron 3.5 搭配自動語言偵測、shell 感知清理與可自訂指令,讓語音輸入對非英語使用者與終端機工作流程都變得實用。裝置端模型則意味著沒有隱私上的取捨。

  3. 不中斷的互動:透過 /btw 的側邊對話,承認了與 agent 協作本質上是對話,而不是批次作業。能在不停止工作的情況下提出上下文相關的問題,是意義重大的 UX 轉變。

agent host 持續逐步推展,混合式 Markdown 編輯器也隨著 diff 支援日益成熟,而 ChatAgentHostEnabled 原則的棄用則顯示出對基礎設施的信心日益增長。如果你還沒啟用 chat.agentHost.enabled,1.132 正是嘗試的好時機。


VS Code 1.132 正在逐步推送。在 VS Code 中使用「Check for Updates」即可立即取得,或下載 nightly Insiders build 搶先體驗即將推出的功能。