Claude Code 新功能:2026 年 11 月(v2.1.308–2.1.318)
Claude Code v2.1.308 到 v2.1.318(2026/10/22–11/3)共 582 條變更:sandbox 與權限修正、ultrathink 改用 xhigh、subagent effort、claude -p 結束碼,以及給不同讀者的檢查清單。
2026 年 10 月 22 日到 11 月 3 日之間,Claude Code 從 v2.1.308 走到 v2.1.318:有 changelog 段落的版本共九個(v2.1.313 與 v2.1.315 沒有段落),合計 582 條變更。大部分是修正,共 378 條;另有 78 條改進、67 條行為變更、50 條新增、5 條更新、2 條移除、1 條棄用,以及 v2.1.308 唯一的一行「Bug fixes and reliability improvements」。會改變你工作方式的變更集中在五個地方:sandbox 與權限檢查、ultrathink 與 subagent 的 effort 控制、模型處理(包括 Opus 4.8 的 fast mode 即將結束)、claude -p 的結束碼與登入到期警告,以及 Claude apps gateway 的花費與政策控制。
這篇總整理按主題排列,影響最大的在前。每項說法都出自官方 CHANGELOG,每個版本都連到本站的版本說明頁。本文接續〈8–10 月總整理〉(v2.1.227 到 v2.1.305);兩篇之間的 v2.1.306 與 v2.1.307 都在 10 月 21 日發布。
如果你在 Opus 4.8 上使用 fast mode,請先讀〈Opus 4.8 fast mode 移除〉:它將於 2026 年 11 月 30 日結束。
重點速覽
| 版本 | 日期 | 條目 | 重點 |
|---|---|---|---|
| v2.1.308 | 2026-10-22 | 1 | 「Bug fixes and reliability improvements」 |
| v2.1.309 | 2026-10-22 | 79 | sandbox 與權限檢查修正;claude ultrareview 需要信任工作區 |
| v2.1.310 | 2026-10-23 | 26 | Monitor 工具支援 Bedrock、Vertex 與 Foundry;Enterprise 自訂角色加入雲端 session 與 Remote Control 權限 |
| v2.1.311 | 2026-10-26 | 92 | ultrathink 以 xhigh 執行該輪;Bedrock、Mantle、Vertex 與 Foundry 改用經簽署的模型目錄 |
| v2.1.312 | 2026-10-27 | 39 | 無法辨識的模型名稱改用較短的系統提示;oidc.user_id_claim;不再送出 claude_code.safety_event |
| v2.1.314 | 2026-10-30 | 119 | permissions.blockWritesOutsideWorkingDirectories;啟動失敗時 claude -p 以 1 結束;gateway upstream 的 groups |
| v2.1.316 | 2026-10-31 | 55 | Opus 4.8 fast mode 棄用;CLAUDE_CODE_SUBAGENT_EFFORT 與 CLAUDE_CODE_DISABLE_ULTRATHINK;共用預算與分層政策 |
| v2.1.317 | 2026-11-02 | 87 | 工具送出你的帳號電子郵件前先檢查;gateway 花費報表;移除 Read 的「檔案未變更」簡短回應 |
| v2.1.318 | 2026-11-03 | 84 | claude auth status 與 claude -p 顯示登入到期日;mantle upstream 的 assume_role;移除 2.1.288 的 thinking 修正 |
1. Sandbox 與權限強化
v2.1.309 一開頭就是一連串 sandbox 與權限檢查的修正。在這一版之前:
- macOS 與 Linux 上 sandbox 中的 Bash 指令,每次執行前都會在 sandbox 之外執行 shell 的啟動檔。
- sandbox 中的指令與自動接受的編輯,可以修改用
--mcp-config傳入的 MCP 設定檔。 - 在某些同時含有 subshell 的指令中,
Edit(path)拒絕規則擋不住對該路徑的 Bash 重新導向;worktree 隔離的 session 也會接受某些帶 locale 前綴的指令,以及(在 zsh 上)某些算術指令,而這些本該被隔離防護拒絕。 - 規則所在的資料夾經由符號連結抵達時,macOS 的
denyWriteglob 不會套用到路徑的實際位置;在 Linux 上,背景指令比 session 存活更久時,sandbox 的寫入禁止會解除;在 Windows 上,某些指向目前目錄並帶有額外參數的Set-Location或cd指令會被自動核准。
之後的版本加入一項設定,也補上更多缺口:
- v2.1.314:新增
permissions.blockWritesOutsideWorkingDirectories,Write、Edit 與 NotebookEdit 在每一種權限模式下都會拒絕工作目錄以外的路徑。同一版也修正了:用claude -p --resume或--continue進入的 worktree 沒有套用 sandbox 保護,以及被--setting-sources排除的設定檔仍會提供部分設定(例如 auto mode 規則)。 - v2.1.316:
--restrictedsession 不再於 Read 允許規則涵蓋時,上傳工作目錄以外的檔案。 - v2.1.317:新增一道檢查,在 web 或 shell 工具呼叫把你的帳號電子郵件地址送到網路上之前先詢問你。Agent SDK 的 hook callback 也新增
onFailure: "block",callback 失敗時會阻擋該動作。 - v2.1.318:送出訊息後立刻按下的按鍵,或在較慢的提示出現前按下的按鍵,不再被當成權限提示的回答;
deniedMcpServers的 URL 項目涵蓋範圍也更廣(見下方管理員檢查清單)。
{
"permissions": {
"blockWritesOutsideWorkingDirectories": true
}
}
怎麼做: 升級到 v2.1.318。如果你希望在每一種權限模式下都把檔案編輯限制在專案內,就開啟 blockWritesOutsideWorkingDirectories;這個條目列出的是 Write、Edit 與 NotebookEdit,所以 shell 指令仍請保持 sandbox 開啟。規則系統請見 Session 18:權限模型與安全性。
2. Effort:ultrathink、subagent 與上限
- v2.1.311:在互動式終端機中,
ultrathink會讓該輪在 Opus 5.5、Sonnet 5.5、Haiku 5.5 與 Fable 5.1 上(透過 Anthropic 的 API)以 xhigh effort 執行;在 Claude 工作中途輸入時,則會提高該輪剩下的部分。VS Code 在 v2.1.316 跟進。 - v2.1.316:
CLAUDE_CODE_DISABLE_ULTRATHINK可關閉ultrathink關鍵字;CLAUDE_CODE_SUBAGENT_EFFORT則在沒有其他地方指定時,設定 subagent 執行的 effort 等級,而不是沿用 session 的等級。 - v2.1.317:與主對話使用不同模型的 subagent 與 teammate,改用該模型已儲存的 effort 等級或其預設值,而不是 session 的 effort 等級。
- v2.1.318:mod 的
$.model.fork新增effort選項,讓快速的旁支工作不論 session 用什麼 effort,都能以low執行。 - 自 v2.1.314 起,管理員為某個模型設定 effort 上限時,Claude Code 會降低 effort、重試並說明使用的等級,不再每一輪都以「Invalid effort level」失敗。
export CLAUDE_CODE_SUBAGENT_EFFORT=low # subagents with no level named elsewhere
export CLAUDE_CODE_DISABLE_ULTRATHINK=1 # turns the ultrathink keyword off
怎麼做: 在終端機或 VS Code 中輸入的 ultrathink,現在會讓該輪透過 Anthropic 的 API 在最新模型上以 xhigh 執行;不想這樣的地方,請設定 CLAUDE_CODE_DISABLE_ULTRATHINK,在其他供應商上則直接設定 effort 等級。釘選到其他模型的 subagent 不再沿用 session 的等級,而 CHANGELOG 沒有說明這條規則與 CLAUDE_CODE_SUBAGENT_EFFORT 如何搭配;在重要的地方,請在 subagent 的 frontmatter 中用 effort: 直接指定。各等級的說明請見我們的 ultracode 與 effort 指南。
3. 模型與 fast mode
- v2.1.316:Opus 4.8 的 fast mode 自 2026 年 10 月 30 日起棄用,將於 2026 年 11 月 30 日移除。移除後,Opus 4.8 上的 fast mode 請求會回傳錯誤,且不會退回一般的 Opus 4.8;想保留加速,請遷移到 Opus 5.5。Claude Platform 版本說明在 10 月 30 日也針對帶有
speed: "fast"的claude-opus-4-8API 請求公告了同一項棄用;遷移步驟請見〈Opus 4.8 fast mode 移除指南〉。 - v2.1.311:在 Bedrock、Mantle、Vertex 與 Foundry 上,Claude Code 會從 downloads.claude.ai 上一份經過簽署的檔案載入模型設定;設定
CLAUDE_CODE_MODEL_CATALOG=off可關閉。 - v2.1.312:在同樣這些供應商上,Claude Code 無法辨識的模型名稱(例如自訂部署名稱與推論設定檔 ARN),即使背後是 Sonnet 或 Haiku,也會使用較短的系統提示;設定
CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=0可保留完整版。 - v2.1.314:LLM gateway 後方以點號拼寫的模型 ID(例如
claude-opus-4.8),不再被套上較舊模型的 context window、輸出上限、effort、thinking 模式與費用。Foundry(v2.1.314),以及 Vertex AI 與 Bedrock 上的sonnet、opus、haiku別名(v2.1.316),在預設或最新模型無法使用時,現在會退回同系列的較舊模型,而不是失敗。 - v2.1.310:Monitor 工具與外掛 monitor 現在可在 Bedrock、Vertex 與 Foundry 上使用,關閉遙測或非必要流量時也能用;這些環境中長時間的前景 sleep 也會被擋下。
export CLAUDE_CODE_SIMPLE_SYSTEM_PROMPT=0 # full system prompt for custom deployment names
export CLAUDE_CODE_MODEL_CATALOG=off # don't load the signed model catalog
怎麼做: 在 11 月 30 日前把 fast mode 的工作從 Opus 4.8 移走。使用自訂部署名稱時,決定你是否要較短的系統提示,並執行一次 /model <id>:自 v2.1.316 起,當這個版本無法辨識該模型、auto-compact 將假設 200K context window 時,它會提出警告。
4. Headless 與 CI:結束碼、登入到期與信任
- v2.1.314:過去啟動失敗時,
claude -p會以 0 結束且沒有任何輸出;現在會印出錯誤並以 1 結束。 - v2.1.317:過去磁碟或配額已滿、導致 transcript 或
~/.claude.json的寫入遺失時,claude -p會以 0 結束;現在會印出錯誤,並在 text 與 json 輸出下以 1 結束(該條目註明,NFS 匯出空間已滿的情況可能偵測不到)。 - v2.1.318:已儲存的 claude.ai 登入何時到期,現在會出現在
claude auth status(loginExpiresAt)與claude -p的 JSON 結果(credential_expires_at)中。text 輸出會從到期前 10 天起,在 stderr 印出一行警告;真的到期時,錯誤訊息會明說,並在claude -p中指出claude auth login與claude setup-token。 - v2.1.309:
claude ultrareview需要工作區信任:在終端機上會詢問,否則拒絕執行;腳本可傳入不帶值的--trust-workspace(PR 編號或基準分支要放在它前面),或設定CLAUDE_CODE_DISABLE_ULTRAREVIEW_TRUST_CHECK=1。自 v2.1.314 起,設定了CI時,它與claude remote-control會直接拒絕未受信任的資料夾。 - v2.1.318 也修正了:mod 掛上
turn.step時,API 錯誤截斷了回覆,claude -p與 SDK session 卻回報成功。
claude auth status # includes loginExpiresAt
claude -p "Run the unit tests" --output-format json # result includes credential_expires_at
claude ultrareview 1234 --trust-workspace # no value; the PR number goes first
怎麼做: 只要 claude -p 以非零結束碼結束,就讓工作失敗;v2.1.314 與 v2.1.317 把兩種過去會以 0 結束的失敗改成結束碼 1。針對 credential_expires_at 或 stderr 警告設定提醒,並在腳本呼叫的 claude ultrareview 加上 --trust-workspace。
5. 撤回、移除與行為變更
有三條變更撤回了先前的條目,CHANGELOG 都沒有說明原因。
| 變更 | 版本 | 需要檢查的情況 |
|---|---|---|
不再送出 v2.1.307 新增的 OpenTelemetry 事件 claude_code.safety_event | v2.1.312 | 有儀表板或警報讀取它 |
| 移除 Read 工具的「file unchanged since your last Read」簡短回應;再次讀取未變更的檔案會回傳內容 | v2.1.317 | hook 或提示預期會收到這段回應 |
| 移除 2.1.288 的修正(恢復 2.1.286 以前開始的對話時,保留模型先前的 thinking);這些 thinking 現在可能被丟棄 | v2.1.318 | 你會恢復很舊的對話 |
其他可能影響腳本或習慣的變更:
| 變更 | 版本 |
|---|---|
sed -i 改走標準的 Bash 權限提示並照原樣執行;和其他 Bash 編輯一樣,/rewind 不再還原它 | v2.1.309 |
設定檔與 mod 的 $.env.set 中的 DISABLE_COMPACT 只能關閉壓縮,不能重新開啟 | v2.1.311 |
prompt 與 agent hook 每個 session 同時最多執行 24 個,另加最多 12 個已等待超過事件逾時的;timeout 低於 1 秒時以 1 秒計 | v2.1.312 |
FORCE_HYPERLINK=false(以及 no、off)改為關閉超連結,而不是開啟 | v2.1.314 |
在雲端或自架 runner session 內執行的 claude -p 不再共用該 session 的 ID;在 runner 上設定 CLAUDE_CODE_DISABLE_NESTED_SESSION_ID=1 可恢復舊行為 | v2.1.317 |
runner orchestrator 的 ok session=… 行改為在每個記錄等級都輸出到 stdout,ok 與 nack 行也新增 reason=…;比對 retryable=true: 或 retryable=false: 的腳本需要更新 | v2.1.318 |
在 IDE 終端機中啟動時,Claude Code 不再安裝或更新 IDE 擴充套件;請在外部終端機使用 /ide,或使用編輯器的擴充功能檢視 | v2.1.318 |
怎麼做: 在儀表板中搜尋 claude_code.safety_event,在腳本中搜尋 retryable= 與 FORCE_HYPERLINK,在設定中搜尋 DISABLE_COMPACT。
6. Claude apps gateway:身分、預算與政策
| 設定或功能 | 版本 | 作用 |
|---|---|---|
oidc.user_id_claim | v2.1.312 | 以 sub 以外的 id_token claim 識別使用者,例如 Microsoft Entra ID 的 oid |
upstream 的 groups | v2.1.314 | 只有列出的 IdP 群組中的開發者會被送往該 upstream,容錯移轉時也一樣 |
pooled_budget | v2.1.316 | 群組成員共用的每月預算,疊加在每位成員自己的上限之上,透過花費上限 admin API 設定 |
managed.policy_mode: layered | v2.1.316 | 所有符合某位開發者的政策都會套用,每一項合併在列於其下方的政策之上,而不是只套用第一個 |
花費報表 GET /v1/organizations/analytics/cost | v2.1.317 | 讀取某段日期範圍內的過往花費,可看總計、每位開發者、每天或每個 IdP 群組 |
mantle upstream 的 assume_role | v2.1.318 | 使用另一個 AWS 帳號中的角色,並依開發者歸屬 AWS 費用 |
Bedrock upstream 也新增了 guardrail_trace(v2.1.314)與 guardrail.input_tagging(v2.1.316);自 v2.1.316 起,指名被 availableModels、deniedModels 或 models 封鎖之模型的請求,會收到指出該欄位的 400 錯誤。
怎麼做: 如果你的身分提供者的穩定 ID 不是 sub,請設定 oidc.user_id_claim。用 upstream 的 groups 與 pooled_budget 分開安排各團隊的路由與預算;確認過政策如何疊加後,再改用 managed.policy_mode: layered。
7. 雲端 session、Remote Control、VS Code、Claude Tag 與 Code Review
只針對單一介面的條目加起來不少:雲端 session 45 條、VS Code 44 條、Claude Tag 28 條、自架 runner 12 條、Code Review 9 條、Remote Control 7 條。重點如下:
- 雲端 session。 Enterprise 自訂角色現在包含雲端 session 與 Remote Control 權限(v2.1.310);在 Anthropic 雲端執行的排程工作,會載入你 claude.ai 帳號上啟用的外掛(v2.1.314);MCP 伺服器要求的表單與連結會以卡片顯示,讓你回應或拒絕(v2.1.316、v2.1.317);Anthropic 託管環境上的 session 可以不選儲存庫就啟動(v2.1.318)。
- 自架 runner 與 Remote Control。
--hold-idle-file與--max-hold-min可在主機回報仍有遺留的程序在執行時,保留閒置的 session(v2.1.311)。更新或版本清理移除了仍在執行之程序的二進位檔後,Remote Control 主機、背景 daemon 與 runner 不再因spawn ENOENT而無法啟動 session(v2.1.318)。 - VS Code。 程式碼區塊有語法上色(v2.1.311)、20 萬 token 以上的閒置對話會進行閒置壓縮(v2.1.314),也可以直接在聊天面板登入 Claude apps gateway(v2.1.316)。
- Claude Tag 與 Code Review。 Claude Tag 的分析頁新增 Skills 檢視(v2.1.311)。GitHub 延遲送達 push 事件時,Code Review 不再審查過時的 commit(v2.1.312)。
8. CLI 之外
這幾週還有兩項公告不屬於 Claude Code 版本,但與它們相關:
- Message threads(beta),11 月 2 日。 在 Messages API 上,長對話與 agent 迴圈可以搭配
message-threads-2026-08-12beta header,把對話保留在伺服器端,之後每個請求只需送出新訊息,首個 token 的等待時間也更短。本期的 Claude Code CHANGELOG 沒有提到它。詳見〈Claude API message threads〉。 - Agent Skills 捐贈給 AAIF,10 月 22 日。 Anthropic 把 Agent Skills 標準,連同名稱與標誌、GitHub 組織與 agentskills.io 網域,捐贈給 Linux Foundation 旗下的 Agentic AI Foundation(AAIF);不加入 AAIF 也能使用或參與這個標準。詳見〈Agent Skills 與 Agentic AI Foundation〉。
現在該做什麼
claude --version # v2.1.318 is the newest release covered here
claude update # update to the latest version
個人開發者
- 升級到 v2.1.318,取得 sandbox 與權限修正。
- 決定是否要在使用者設定中加入
permissions.blockWritesOutsideWorkingDirectories。 - 記住:透過 Anthropic 的 API,在 5.5 系列與 Fable 5.1 上輸入
ultrathink會讓該輪以xhigh執行;不想這樣就設定CLAUDE_CODE_DISABLE_ULTRATHINK。 - 檢查使用其他模型的 subagent,它們現在會用該模型的 effort;想要預設值就設定
CLAUDE_CODE_SUBAGENT_EFFORT。 - 在 11 月 30 日前,把 fast mode 的工作從 Opus 4.8 移到 Opus 5.5。
執行 claude -p 或 CI 的人
claude -p只要以非零結束碼結束,就讓工作失敗。- 留意
credential_expires_at或 stderr 警告,並用claude auth login或claude setup-token更新登入。 - 呼叫
claude ultrareview時,在 PR 編號或基準分支之後加上--trust-workspace。 - 在自架 runner 上,檢查在 session 內執行
claude -p或解析 orchestrator 記錄的腳本。 - 替換所有以
claude_code.safety_event為基礎的警報。
管理員
- 採用第 6 節中你需要的 gateway 控制項,並預期指名被封鎖模型的請求會收到 400。
- 重新檢查
deniedMcpServers:URL 項目現在也會擋下上游 URL 相符的 Anthropic 提供的伺服器,以及雲端 session 與自架 runner 上的 connector(限 session 拿到的是 connector 本身的 URL 時)(v2.1.318)。 - 留意 Team 與 Enterprise 登入的伺服器受管設定,現在不需核准提示就會套用,而無法驗證的已儲存副本會被拒絕(v2.1.316)。
- 透過 Enterprise 自訂角色授予雲端 session 與 Remote Control 的存取權(v2.1.310)。
資料來源
- Claude Code CHANGELOG 與 GitHub releases;日期採 npm 發布日期(UTC)
- Claude Platform 版本說明:Opus 4.8 fast mode 棄用(2026 年 10 月 30 日)與 message threads(2026 年 11 月 2 日)
- Anthropic:Donating Agent Skills to the Agentic AI Foundation(2026 年 10 月 22 日)
上面每個版本在本站的版本封存中都有獨立頁面。這段期間之前的變更,請見〈8–10 月總整理〉;想按部就班學習 Claude Code,請從學習頁面開始。