跳到主要內容
maxstudioNews
產品DEV Community (Codex)約 6 分鐘

Visual Studio 版 Codex 擴充功能發布 v0.4.0 / v0.4.1 更新

Visual Studio 版 Codex 擴充功能發布了 v0.4.0 和 v0.4.1 版本更新,主要改進了「目標/計畫模式」的使用體驗。新版本還實驗性地支援遠端 Codex App Server 連線,並新增了 MXC 沙盒支援。此外,本次更新也提升了與 Codex CLI 的相容性並修復了多項錯誤。

Visual Studio 版 Codex 擴充功能發布 v0.4.0 / v0.4.1 更新
圖片來源:DEV Community (Codex)

我發布了 Visual Studio 版 Codex 擴充功能的 v0.4.0 和 v0.4.1 版本,這款擴充功能讓您可以直接在 Visual Studio 中使用 Codex。v0.4.0 版本包含了主要的功能新增,而 v0.4.1 則更新了依賴項並進行了小幅修正。

本次發布的主要變更包括改進的「目標/計畫模式」行為、實驗性的遠端 Codex App Server 支援,以及 MXC 沙盒支援。此外,它也更新以相容 Codex CLI 0.162.1,並修復了其他錯誤。

1. 改進的目標/計畫模式行為

以前,當以 /goal 開頭的目標正在執行時,「傳送」按鈕會保持不變,導致無法停止執行。從 v0.4.0 開始,只要目標處於活動狀態,包括自動連續執行期間的回合之間,按鈕都會變為「停止」。

當按下「停止」時,目標會暫停,同時保留其目標、預算和使用情況。執行緒中的最新回合會被中斷,而超時的操作將被視為結果未知,不會自動重試,以防止意外的重複執行。

「計畫模式」也獲得了幾項相關改進。現在,作曲器中新增了一個核取方塊,使用 /plan 也會啟用它。一旦啟用,「計畫模式」將保持活動狀態,直到明確關閉,即使回合完成、失敗或中斷也是如此。如果 Codex 提出後續問題,「計畫模式」在整個對話過程中都會保持活動。

建議的計畫現在會以 Markdown 格式顯示在「建議計畫」下方。當計畫回合完成時,會出現一個「實施此計畫?」的卡片,讓您可以選擇繼續實施或繼續完善計畫。

「計畫模式」依賴於 App Server 的實驗性 collaborationMode 欄位。由於當實驗性 API 不可用時 Codex 會拒絕此欄位,因此擴充功能現在會根據當前協商的連線來判斷可用性,而不是依賴儲存的設定。當不支援時,「計畫」核取方塊會被禁用,輸入 /plan 會解釋如何啟用此功能。

當有多個問題出現時,它們會以「問題 n/N」的工作流程單獨呈現。這也解決了早期答案選項可能部分隱藏的問題。此外,在從計畫開始實施或回答問題後,「停止」按鈕停止工作的問題也已修復。

當 Codex 在普通文字中返回編號或項目符號選項時,這些選項現在會轉換為互動式問題卡片。v0.4.1 修正了如果確認文字以粗體 Markdown 格式顯示,最終目標確認訊息無法顯示「是/否」卡片的問題。

2. 連線到遠端 Codex App Server(實驗性)

擴充功能現在可以透過 WebSocket 連線到已在運行的 Codex App Server。此功能目前標記為實驗性。預設行為保持不變,即擴充功能會在本地啟動 codex app-server 作為子程序,並使用標準輸入輸出進行通訊。

在內部,擴充功能仍然與其本地 Worker 通訊。Worker 會決定後端傳輸是使用標準輸入輸出還是 WebSocket。遠端連線需要 wss,只有回送(localhost)才允許使用純 ws。憑證驗證不能禁用,且驗證使用 Bearer 權杖。

設定檔只儲存權杖檔案的路徑。Worker 在建立連線時讀取權杖,權杖本身絕不會儲存在設定檔或日誌中。擴充功能會將本地解決方案根目錄對應到遠端伺服器根目錄,路徑匹配是逐個元件執行的,而不是透過字串替換。

例如,C:\repo 將不會匹配 C:\repo2。實作也應拒絕透過符號連結或連接點逃逸的路徑,儘管我尚未完全驗證這些情境。核准、快取和相關狀態會依連線帳戶進行隔離,以防止不同伺服器連線之間的資料洩漏。

當連線中斷時,會嘗試自動重新連線,草稿訊息會保留在記憶體中。傳遞狀態未知操作絕不會自動重試。本地連線使用「重新啟動本地 App Server」,而遠端連線使用「重新連線遠端 App Server」。擴充功能絕不會嘗試停止遠端伺服器。

我還新增了設定指南:doc/codex-cli-setup.md 和 doc/codex-cli-setup_ja.md。該指南涵蓋了 CLI 安裝、驗證、設定檔、連線目標設定、遠端 App Server 設定和重新連線診斷。到目前為止,我只測試了同一機器上的回送連線。

3. MXC 沙盒支援

對於本地 App Server 情境,您現在可以選擇 MXC 作為 Windows 沙盒後端。Windows 沙盒面板現在提供三個選項:「遵循 Codex 設定」(不使用任何設定,使用 Codex 設定)、「偏好 MXC」(當策略允許時使用 MXC)和「要求 MXC」(始終使用 MXC)。

變更會在本地 App Server 下次啟動時生效,遠端設定檔不受影響。「檢查沙盒狀態」動作會顯示有效的設定和策略狀態,儘管它無法確定哪個後端執行了特定命令。MXC 本身無需設定。

我在測試時注意到,在 MXC 下強制終止僅根 Codex 程序可能會留下子程序繼續運行。這在使用非提升權限的後端時不會發生。由於擴充功能會關閉整個程序樹,因此用戶在正常使用期間不應遇到此問題。

4. 更新以相容 Codex CLI 0.162.1

與 App Server 的通訊已更新,以相容 Codex CLI 0.162.1。由於某些遠端伺服器可能仍使用舊版本,我繼續保留 0.159.1 以進行回歸測試。擴充功能與 Worker 之間的協定版本也已更新。

版本 23 引入了實驗性 API 狀態報告,這啟用了新的「計畫模式」可用性檢查。MXC 支援新增了協定版本 24。不支援的組合會安全地失敗,而不是嘗試繼續使用不相容的行為。

其他與 0.162.1 相關的變更包括:目標操作現在會傳送 origin: "user" 以進行正確的授權處理,MCP OAuth 完成會使用 loginId 進行匹配,技能路徑現在被視為伺服器提供的識別碼,而不是要求絕對路徑。

5. 其他值得注意的修正

修正了手動重新連線成功後橫幅未能消失的問題,以及載入遠端權杖可能導致 UI 停留在「連線中/檢查帳戶」狀態的問題。透過使用 Visual Studio 主題資源,改進了深色主題中問題卡片的閱讀性。

新增了 MCP 詳細資訊切換開關以收合 MCP 伺服器資訊。現在,遺失或無法讀取的附件會導致傳送操作失敗,而不是被靜默跳過。v0.4.1 更新了 NuGet 依賴項,包括受已發布漏洞影響的 MessagePack 套件。

結語

本次發布主要著重於改進「目標」和「計畫模式」的可用性,同時為遠端連線奠定基礎。遠端 App Server 支援仍處於實驗階段,如果您遇到問題,請提交問題。

要安裝此擴充功能,請從 GitHub Releases 下載 Codex.VisualStudio.Extension.vsix 並雙擊安裝,或直接從 Visual Studio Marketplace 安裝。需要 Visual Studio 17.14 或更高版本。

接下來的計畫

在 .NET 8 達到終止支援後,我計畫將擴充功能完全遷移到 .NET 10。屆時,將需要 Visual Studio 2026 或更高版本。

Share

覺得值得一看?分享給朋友。

以上為 AI 自動翻譯導讀。原文版權歸 DEV Community (Codex) 所有, 建議透過「閱讀原文」前往原始網站,以取得最完整資訊並支持原作者。

Newsletter

不用每天追,AI 重點每週寄給你

43 個來源、每 2 小時更新,太多看不完。電子報每週挑最值得看的幾則,附上 Max 的看法。

每週一封。Email 只用來寄電子報,每封信都能一鍵退訂。