每改一個檔案就要按一次 Yes。跑個 npm install 要同意,讀個 .env 要同意,連 ls 有時候都要你點一下。

用過 Claude Code 的人大概都經歷過這種「同意疲勞」。你知道它要做什麼,你也信任它,但流程就是逼你一直按確認。到後來你根本不看內容了,反射性地按 Yes——這時候所謂的安全機制反而變成形式。

三月 24 號 Anthropic 發佈的 Auto Mode 就是衝著這個問題來的。


Auto Mode 做了什麼

一句話:讓 Claude Code 自己判斷一個操作安不安全,安全的就直接執行,不安全的才擋下來問你。

技術上是一個雙層分類器(two-layer classifier)。每個動作在執行前會過兩關:

第一關檢查這個操作是不是使用者「合理預期」的行為。你叫它改 code,它要寫檔案,這是合理預期。你叫它改 code,它要讀你的 SSH key,這不是。

第二關檢查有沒有 prompt injection 的跡象。如果有人在 codebase 裡埋了惡意指令試圖讓 Claude 執行危險操作,這層要擋住。

通過兩關的操作自動放行,沒通過的降級回手動確認模式。


實際數據

Anthropic 公佈了內部測試的結果:

  • 誤攔率(false positive):0.4% — 意思是每 250 個安全操作裡面,大概有 1 個會被錯誤擋下來。
  • 漏放率(false negative):5.7% — 每 18 個危險操作裡面,大概有 1 個會溜過去。

0.4% 的誤攔率對使用體驗來說幾乎無感。但 5.7% 的漏放率值得停下來想一想。

在 sandbox 環境裡,漏放一個危險指令頂多是砍掉一些不該砍的檔案,重建就好。在 production server 上?那就是另一個故事了。這也是為什麼 Anthropic 「建議」(其實幾乎是要求)只在 sandbox 環境使用 Auto Mode。


怎麼啟用

目前 Auto Mode 是 research preview,只開放給 Enterprise 和 API 用戶,需要跑 Sonnet 4.6 或 Opus 4.6。

啟用方式在 Claude Code 設定裡加一個 flag:

1
2
3
4
5
{
"permissions": {
"auto_mode": true
}
}

啟用後,Claude Code 的行為模式會從「每步確認」變成「有風險才問」。你會注意到大部分的檔案讀寫和 bash 指令直接就跑了,只有比較敏感的操作(刪除檔案、存取 credentials、網路請求)才會彈出確認。


跟 Hooks 的搭配

Auto Mode 和之前介紹過的 Hooks 是互補的。

Hooks 是確定性的自動化:你定義好規則,特定事件觸發特定腳本。不靠 AI 判斷,該跑就跑。

Auto Mode 是智慧的權限管理:AI 自己判斷一個操作需不需要你同意。它的決策帶有不確定性,但換來的是更流暢的工作流。

兩者疊在一起的效果:Hooks 處理你已知要自動化的事情(改完檔案自動 format、commit 前自動跑 lint),Auto Mode 處理你懶得一個一個按同意的日常操作。

搭配 Bypass 模式的 PreToolUse Hook 更安全——即使 Auto Mode 放行了一個操作,你的 Hook 還是可以攔截掉特定的危險指令。等於多了一層保險。


它判斷的邏輯

根據 Anthropic 的說明和 TechCrunch 的報導,分類器主要考慮這幾個面向:

自動放行的典型操作:

  • 讀取專案內的原始碼檔案
  • 寫入使用者明確要求修改的檔案
  • 執行 build、test、lint 相關的指令
  • 安裝專案已宣告的依賴套件

會擋下來的典型操作:

  • 存取 credentials、SSH key、.env 等敏感檔案
  • 刪除大量檔案(mass deletion)
  • 發起外部網路請求
  • 修改系統設定或全域配置
  • 操作內容疑似來自外部注入

中間地帶的操作(比如刪除單一測試檔案、寫入新的 config 檔案)則視上下文而定。這裡就是那 5.7% 漏放率會出現的地方。


建議的使用方式

適合開啟 Auto Mode 的場景:

  • 本地開發環境,搭配版本控制
  • CI/CD pipeline 裡的自動化任務
  • Sandbox 環境做 POC 或 prototype
  • 有 Hooks 做底層防護的專案

不建議開啟的場景:

  • 直接操作 production 環境
  • 處理包含敏感資料的專案(金融、醫療)
  • 共用帳號的 server
  • 沒有版本控制的目錄

一個實用的 pattern:在 .claude/settings.json 開 Auto Mode,同時在 Hooks 裡設好 PreToolUse 攔截規則。Auto Mode 負責日常流暢度,Hooks 負責你絕對不想被碰到的底線。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
"permissions": {
"auto_mode": true
},
"hooks": {
"PreToolUse": [
{
"matcher": "Bash",
"hook": "/path/to/safety-check.sh",
"description": "Block dangerous commands even in auto mode"
}
]
}
}

這代表什麼

Auto Mode 不只是一個功能更新,它反映了 AI agent 權限管理的演進方向。

最原始的做法是「全部手動確認」——安全但慢。接著是「全部自動」——快但危險。Auto Mode 走的是第三條路:讓 AI 自己做風險評估,只在需要的時候打斷你。

這個方向不只 Anthropic 在走。Apple 的新 Siri 要做跨 App 的自主操作、NVIDIA 的 Agent Toolkit 在做可自我演化的 runtime、微軟的 Agent 365 在做組織級的 agent 治理。所有人都在解同一道題:「怎麼給 AI 足夠的自由度,同時維持人類的控制感。」

Auto Mode 的答案是分層的安全機制。不是非黑即白的開關,而是一個 spectrum——從完全手動到完全自動之間,有很多中間值可以調。

這大概也是接下來幾年 AI tooling 的主旋律。

原文來源:Anthropic hands Claude Code more control, but keeps it on a leash - TechCrunch
原文來源:Anthropic releases safer Claude Code ‘auto mode’ - Engadget
參考來源:Claude Code in Action - Anthropic Academy