觀點 · 資訊分享
Claude Code 連出兩版補強隔離與權限:worktree 隔離補漏洞、沙箱可遮罩憑證檔、zsh 繞過修正
Claude Code 在 8 月 4 日連續釋出 2.1.221 與 2.1.222,修了好幾個權限與隔離相關的缺口,也新增沙箱的憑證檔「遮罩」模式:指令讀到的是假金鑰,真的金鑰只在對外送出時才由代理替換。
- 發布
- 2026-08-04
- 篇幅
- 約 5 分鐘 · 2,064 字
- 結構
- 8 節 + 3 題常見問題
- 標籤

一句話看懂:Claude Code 在 8 月 4 日連出 2.1.221 與 2.1.222 兩版,修了多個「權限檢查被繞過」與「隔離沒隔乾淨」的問題,也新增沙箱的憑證檔遮罩:AI 指令讀到的是替身,真金鑰只在對外送出時才被換上。

先用白話講:隔離和權限,在保護什麼?
讓 AI 代理幫你寫程式、跑指令,就像請一位很能幹的新同事進公司。你要做兩件事:
- 給他一間獨立的工作間(隔離):他在自己的桌子上改東西,不會動到你的主桌面。Claude Code 用的是 git 的 worktree,讓每個代理在獨立的資料夾、獨立的分支上工作。
- 規定他哪些事要先問你(權限):刪檔、跑危險指令,都要先經過檢查。
這兩道防線如果有縫,就等於工作間的牆有洞、權限的門有後門。這次兩版更新,補的就是這類縫隙。
發生什麼事
Claude Code 官方 GitHub 在 8 月 4 日釋出兩個版本。下面是本文挑出來、和隔離與權限相關的修正:
| 版本 | 修正內容 |
|---|---|
| 2.1.222 | 使用 worktree 隔離的 session 及其子代理,仍可能對主目錄執行破壞性 git 指令;現在隔離套用到所有 session 類型的檔案編輯與 Bash |
| 2.1.222 | 背景代理任務(摘要、壓縮、重新命名)中,PreToolUse 的自動允許 hook 可能繞過工具限制 |
| 2.1.222 | Remote Control 的自動啟動,不能再由專案內的設定檔(.claude/settings.json、.claude/settings.local.json)開啟,只能由它們關閉;要開,需在使用者層級用 /config |
| 2.1.221 | Bash 工具的權限檢查:zsh 在 [[ ]] 的正規表示式條件中,可能執行隱藏的指令;現在這類指令會詢問權限 |
| 2.1.221 | PowerShell 權限檢查處理含引號的路徑有誤;現在這類路徑會要求核准 |
新功能:憑證檔「遮罩」
2.1.221 為沙箱新增了憑證檔的 mode: "mask"(Linux 與 WSL):
- 沙箱內執行的指令,讀到的是替身內容(整個檔案,或只換掉用正規表示式
extract擷取出來的片段) - 真正的值,由沙箱的代理(proxy)在對外送出請求時才換上去
- 在 macOS 上,目前退回成
deny(直接拒絕)
白話一點:AI 代理跑的指令拿到的是一把「假鑰匙」,真鑰匙只在要出門的那一刻,由門口的警衛換上。這樣就算指令把檔案內容印出來或被誘導送到別處,洩漏的也只是假的。
其他值得知道的變更
- 自動模式:用
SendMessage傳給其他代理的訊息,現在會先過權限分類器再送出 /fork現在會替分支建立自己的 worktree,不再共用原 session 的資料夾- 背景 session 會自動 commit 並 push 來保存成果,遵守你的 CLAUDE.md 裡的 git 指示,只在任務需要時才開草稿 PR
- 2.1.222 移除了 ultraplan 功能
給開發者的技術細節
- 用
claude --version確認版本,建議更新到 2.1.222 以上 - 如果你的設定檔倚賴「專案內的設定自動開啟 Remote Control」,更新後會失效,要改在使用者層級開
- 憑證遮罩要用的話,請照發行說明的
mode: "mask"與extract設定,我沒有在這篇驗證實際效果,建議先拿測試用的假金鑰試過再上線 - 本文是依官方發行說明整理,沒有涵蓋所有修正,完整清單請看兩個版本的發行頁
我的看法
我自己用 Claude Code,最在意的就是「它能碰到什麼」。這兩版給我的感覺是:官方正在把「代理能做的事」一圈一圈收緊,而且是從實際被繞過的地方開始補。
其中最有用的是憑證遮罩。很多人把 API 金鑰放在 .env,AI 代理又常常需要讀專案檔案,兩者撞在一起就是風險。常見的做法是「乾脆不給它讀」,現在多了一個選項:「給它讀,但讀到的是假的」,實用多了。不過這是新功能,我會把它當成多一層保險,而不是唯一的防線;金鑰仍然要放環境變數、不進版本控制。
另外,如果你習慣開很多 worktree 讓代理平行跑,這次的修正值得馬上更新:隔離一旦有縫,你以為不會影響主目錄的操作,其實會影響。
名詞小辭典
- worktree:git 的功能,讓同一個專案同時有多個工作資料夾,各自在不同分支。
- 沙箱(Sandbox):把程式關在受限的環境裡執行,讓它碰不到外面的重要東西。
- hook:在特定事件(例如工具執行前)自動觸發的檢查或腳本。
- 代理(Proxy):站在中間幫忙轉送網路請求的服務,這裡負責在請求送出時替換真正的憑證。