Claude Code v2.1.69:史上最大版本更新,超過 100 項變更
Claude Code v2.1.69 是 2.1.x 系列中規模最大的更新。新增 /claude-api 技能、InstructionsLoaded hook、${CLAUDE_SKILL_DIR} 變數、10 種新語音語言、Agent worktree 隔離機制,以及大量記憶體與效能改善。
Claude Code v2.1.69 是整個 2.1.x 系列中規模最大的單一版本更新,包含超過 100 項個別變更,涵蓋新功能、安全性強化、錯誤修復和效能優化。這不是一次漸進式修補,而是一次里程碑式的更新,幾乎涵蓋產品的每一層,從 hook 系統和技能架構到記憶體管理、MCP 認證以及 VS Code 擴充功能。無論你是開發技能、管理企業部署,還是每天在終端機中使用 Claude Code,此版本都有值得關注的重要內容。
新的開發者功能
/claude-api 技能
本次最重要的新增功能是全新的內建技能,透過 /claude-api 啟用。它專為在 Claude API 和 Anthropic SDK 之上建構應用程式的開發者而設計。你不再需要在文件分頁和編輯器之間來回切換,現在可以直接請 Claude Code 產生 API 呼叫的框架、處理串流回應、管理工具使用的 payload,以及除錯 SDK 整合問題,一切都在你撰寫其餘應用程式程式碼的同一個工作階段中完成。
InstructionsLoaded Hook 事件
新的生命週期 hook InstructionsLoaded 會在 Claude Code 每次載入 CLAUDE.md 檔案或 .claude/rules/*.md 下的規則檔案時觸發。這為進階自動化開啟了大門:你現在可以在指令檔案被解析的當下,以程式化的方式驗證、轉換或記錄它們。搭配下文描述的 HTTP hooks 新功能,這使得將指令的中繼資料傳送到外部服務進行稽核或分析變得非常簡單。
${CLAUDE_SKILL_DIR} 變數
技能現在可以在執行階段使用 ${CLAUDE_SKILL_DIR} 變數來參照自身所在的目錄。以前,需要讀取同級檔案或範本的技能必須硬編碼路徑或依賴脆弱的相對路徑假設。有了這個變數,技能的 SKILL.md 可以可攜地指向附屬腳本、資料檔案或範本,無論技能安裝在何處都能正常運作。
Agent 和 Hook 識別
Hook 事件現在包含 agent_id 和 agent_type 欄位,因此 hook 處理程式可以區分是哪個 agent 觸發了特定事件。這對於運行多個專用 agent(例如程式碼審查 agent 與測試生成 agent)且共享相同 hook 基礎設施但需要不同處理邏輯的團隊來說至關重要。
HTTP Hooks
除了 shell 指令 hooks 外,你現在還可以定義將 JSON payload 以 POST 方式傳送到 URL 的 hooks。當你的 hook 邏輯已經存在於 Web 服務、Serverless 函式或內部 webhook 接收器中時,這就省去了本機包裝腳本的需求。
Agent 宣告式 Worktree 隔離
Agent 定義現在支援 isolation: worktree,這會讓 agent 在自己的 Git worktree 中運行。這提供了一個乾淨的工作目錄,不會影響你的主要 checkout,非常適合執行探索性重構、運行破壞性測試套件,或產生不應觸及主要分支的臨時程式碼的 agent。
語音與無障礙功能
此版本的語音轉文字支援從 10 種語言擴展到 20 種語言。新增的十種語言如下:
| 語言 | 語言 |
|---|---|
| 俄語 | 希臘語 |
| 波蘭語 | 捷克語 |
| 土耳其語 | 丹麥語 |
| 荷蘭語 | 瑞典語 |
| 烏克蘭語 | 挪威語 |
此擴展讓 Claude Code 對偏好以母語口述提示的開發者更加友善,也降低了國際團隊採用語音驅動工作流程的門檻。
組態與外掛管理
多項新設定讓管理員和進階使用者能更精細地控制 Claude Code 的行為:
| 設定 | 用途 |
|---|---|
sandbox.enableWeakerNetworkIsolation | 允許使用自訂代理機制的 Go 語言 CLI 工具(gh、gcloud、terraform)在 macOS sandbox 中正常運作 |
includeGitInstructions | 開啟或關閉內建的提交和 PR 工作流程指示,適合團隊透過 CLAUDE.md 提供自訂 Git 慣例 |
pluginTrustMessage | 在受管理環境中,外掛請求信任核准時顯示的自訂訊息 |
oauth.authServerMetadataUrl | 為 MCP 伺服器指定 OpenID Connect / OAuth 探索 URL,簡化聯合認證設定 |
pathPattern 在 strictKnownMarketplaces 中 | 對外掛市集信任邊界進行細粒度的路徑匹配 |
額外的品質改善:
/reload-plugins指令 — 不需重新啟動工作階段即可套用外掛組態變更。- 外掛來源類型
git-subdir— 從 Git 儲存庫的子目錄安裝外掛,不僅限於儲存庫根目錄。 - MCP OAuth 手動 URL 貼上備選方案 — 當自動瀏覽器流程失敗時,你現在可以手動貼上回呼 URL 來完成認證。
- UI 中顯示努力程度 — 標誌和載入動畫現在會顯示你目前的努力設定(例如「低努力程度」),讓你隨時知道 Claude 投入了多少思考。
安全性修復
此版本修復了四個值得深入了解的安全性問題:
gitignored 目錄中的巢狀技能發現。 先前,Claude Code 的遞迴技能掃描器可能會進入像 node_modules 這樣已列在 .gitignore 中的目錄。惡意或組態錯誤的套件因此可能注入一個會被靜默載入的 SKILL.md。掃描器現在在技能發現過程中會遵守 .gitignore 規則。
信任對話框啟用所有 MCP 伺服器。 在首次運行時,信任對話框可能會在未經個別伺服器明確同意的情況下靜默啟用 .mcp.json 中定義的所有伺服器。此問題已修正,每個伺服器現在都需要個別核准。
符號連結繞過父目錄寫入。 精心建構的符號連結父目錄可能允許沙箱化的寫入操作逸出工作目錄邊界。沙箱現在在評估路徑權限之前會先解析符號連結。
Hook 指令在未獲得工作區信任的情況下執行。 statusLine 和 fileSuggestion hook 指令在工作區未被授予信任時仍可執行。這些指令現在與所有其他 hook 類型一樣,都受到相同的信任檢查機制保護。
重大錯誤修復
此版本包含超過 50 項個別錯誤修復,以下是影響最大的修正:
記憶體與穩定性
- Agent Teams 記憶體洩漏。 已完成的隊友從未被垃圾回收,導致在產生多個 agent 的長時間執行工作階段中出現無限制的記憶體增長。已完成的 agent 現在會被及時清理。
- 提交時多 GB 記憶體暴增。 在包含大型未追蹤二進位檔案的儲存庫中進行提交暫存時,Claude Code 可能會消耗數 GB 的記憶體將這些檔案讀入差異比較緩衝區。差異比較邏輯現在會跳過未追蹤的二進位檔案。
- React Compiler memoCache 洩漏。 React Compiler 整合使用的記憶化快取未釋放項目,導致在延長的工作階段中記憶體逐漸膨脹。
- REPL 渲染範圍洩漏。 在 REPL 評估過程中建立的渲染範圍未被釋放,隨時間累積。
- Hook 事件累積。 已發出的 hook 事件在內部列表中被無限期保留。現在在傳遞後會被釋放。
平台特定
- macOS keychain 損壞。 運行多個經 OAuth 認證的 MCP 伺服器可能損壞 macOS keychain 項目,需要手動清理。Token 儲存現在對每個伺服器使用隔離的 keychain 項目。
- Linux 上的幽靈 dotfiles。 在 Linux 上沙箱化的 Bash 指令完成後,工作目錄中可能出現幻影 dotfiles(例如
.bash_history)。沙箱清理程序現在會移除這些殘留檔案。 - Windows 上的字面
nul檔案。 某些操作會建立一個字面命名為nul的檔案,而不是寫入 Windows NUL 設備。路徑處理現在能正確識別 Windows 的空設備。 - Windows 上的並行組態寫入。 同時寫入組態檔案可能產生損壞的 JSON。檔案寫入現在使用原子式的關閉時重新命名機制。
MCP 與認證
- OAuth token 重新整理競爭條件。 當多個 MCP 請求同時觸發 token 重新整理時,競爭的重新整理嘗試可能互相使對方的 token 失效。重新整理操作現在按每個伺服器序列化執行。
Agent 與技能
- 隊友產生巢狀隊友。 在某些條件下,agent 隊友可能會無意中產生自己的巢狀隊友,造成失控的 agent 增殖。隊友 agent 現在被禁止產生更多隊友。
- 含冒號的技能描述。 描述欄位包含冒號字元的
SKILL.md檔案會解析失敗。YAML 解析器現在能正確處理描述值中的冒號。
效能改善
v2.1.69 的效能工作範圍異常廣泛,針對記憶體佔用、渲染速度和網路效率進行了優化。
| 改善項目 | 影響 |
|---|---|
| 延遲載入 Yoga WASM | 基線記憶體減少約 16 MB |
| 隔離的載入動畫迴圈 | 載入動畫在專用的 50ms 計時器上運行,而非重新渲染整個 UI |
| React Compiler 整合 | 自動記憶化減少 UI 中不必要的重新渲染 |
| 壓縮保留圖片以供 prompt cache 使用 | 當壓縮的對話包含圖片內容時,快取未命中次數減少 |
| MCP 二進位內容儲存至磁碟 | 解碼後的二進位 payload 寫入暫存檔案,而非保存在記憶體中 |
| 減少提示輸入的重新渲染 | 提示輸入元件的重新渲染週期減少約 74% |
| 啟動時記憶體減少 | 初始化時節省約 426 KB |
| Remote Control 輪詢頻率降低 | 輪詢頻率降低約 300 倍,顯著降低閒置遠端工作階段的 CPU 和網路開銷 |
這些變更綜合起來,讓長時間運行的 Claude Code 工作階段明顯更加流暢且佔用更少系統資源,特別是在多個 agent 或隊友同時運作的機器上。
VS Code 擴充功能
此版本的 VS Code 整合獲得了多項高能見度的改善:
- Spark 圖示工作階段列表。 活動列中的新 spark 圖示提供快速存取你的工作階段歷史,讓你更容易在對話之間切換,無需開啟完整面板。
- 完整 Markdown 計畫檢視與評論。 Claude 產生的計畫現在以完整 Markdown 格式渲染,支援行內評論,直接在編輯器中提供更豐富的審查體驗。
- 原生 MCP 伺服器管理(
/mcp)。 用於管理 MCP 伺服器連線的專用對話框取代了先前的手動組態工作流程。你可以新增、移除和認證伺服器,無需編輯 JSON 檔案。 - 壓縮顯示為可摺疊卡片。 當對話被壓縮時,壓縮摘要會以可摺疊卡片的形式顯示,而非一大段文字,保持聊天檢視的整潔。
- RTL 文字渲染修復。 從右到左書寫的語言(阿拉伯語、希伯來語等)現在能在聊天面板中正確渲染,修復了長期存在的顯示問題。
如何更新
更新至 Claude Code v2.1.69:
- 使用
claude --version檢查目前版本 - 使用
npm install -g @anthropic-ai/claude-code@latest或你偏好的套件管理器進行更新 - 重新啟動所有使用中的 Claude Code 工作階段以套用所有變更
- 如果你使用 MCP OAuth,請重新認證你的伺服器以享受 keychain 和 token 重新整理的修復
- 檢查你的
.claude/目錄中是否有從 gitignored 路徑載入的技能 — 安全性修復可能會改變哪些技能被發現
鑒於此版本的規模,值得花幾分鐘探索新的 /claude-api 技能、在自訂技能中測試 ${CLAUDE_SKILL_DIR} 變數,並驗證你的 hook 組態是否能與新的 InstructionsLoaded 事件正常運作。