claude-code-notifier
運作方式 指南 常見問題
◐繁體中文
English العربية Deutsch Español Français עברית Italiano 日本語 한국어 Nederlands Polski Português (Brasil) Русский Türkçe Tiếng Việt 简体中文 繁體中文
開始使用
所有指南

Claude Code 權限模式說明(default、acceptEdits、plan、bypassPermissions)

更新於 2026年10月31日 · 閱讀時間 7 分鐘
本頁內容 01六種模式一覽 02如何切換模式 03各模式詳細說明 04規則疊加在模式之上 05離開座位時該選哪種模式 06常見問題

Claude Code 的權限模式決定哪些動作可以不經詢問直接執行。default(顯示為 Manual)會在編輯檔案和執行 shell 指令前詢問。acceptEdits 還會直接放行檔案編輯和常見的檔案指令。plan 讓 Claude 讀取並提出計畫,但不能編輯。auto 由背景分類器代替你核准動作。dontAsk 會拒絕所有需要詢問的動作。bypassPermissions 可透過 --dangerously-skip-permissions 開啟,幾乎完全跳過詢問,只適合在隔離的容器或 VM 中使用。按 Shift+Tab 可切換模式,或用 claude --permission-mode <mode> 啟動。

本指南依據 Anthropic 的權限模式文件撰寫。Claude Code 更新頻繁,請到該文件確認你所使用版本的內容。

01六種模式一覽

模式不經詢問即可執行的動作適用情境
default(Manual)僅限讀取需要逐一審查每個動作、處理敏感工作
acceptEdits讀取、檔案編輯,以及在工作目錄內執行常見的檔案系統指令,例如 mkdir、touch、mv 和 cp一邊盯著一邊反覆修改程式碼
plan讀取;在你核准計畫前會封鎖編輯動手修改前先探索
auto全部允許,但每個動作都會先經過分類器檢查想減少 prompt 的長時間任務
dontAsk工作目錄內的讀取與預先核准的工具;其他一律拒絕CI 與受嚴格限制的腳本
bypassPermissions幾乎全部允許,僅少數例外僅限隔離的容器與 VM

default 是在設定、hook 以及 --permission-mode 旗標中使用的名稱。CLI、IDE 擴充功能和桌面應用程式則將它標示為 Manual,CLI 也接受 manual 作為別名。

02如何切換模式

在 terminal 中按 Shift+Tab。切換順序為 default、acceptEdits、plan,接著是工作階段允許的其他選用模式。dontAsk 不會出現在切換循環中,只能透過旗標設定。

以特定模式啟動工作階段:

claude --permission-mode plan

若要將某個模式設為預設,請在 ~/.claude/settings.json 中設定:

{
  "permissions": {
    "defaultMode": "acceptEdits"
  }
}

旗標優先於設定,設定又優先於內建預設值。有個限制值得注意:auto 和 bypassPermissions 寫在專案的 .claude/settings.json 或 .claude/settings.local.json 中不會生效,因此儲存庫無法偷偷讓你進入 bypass 模式。這兩種模式請在使用者設定中設定,或透過旗標指定。

新工作階段的起始模式

較新版本的 Claude Code(v2.1.283 以上)在 auto 模式可用時,互動式 terminal 與 VS Code 工作階段會以 auto 啟動,除非你的設定另有指定。claude -p 和 Agent SDK 則以 default 啟動。如果你從沒選過模式,卻好奇為什麼 prompt 這麼少,原因就在這裡。

03各模式詳細說明

default(Manual)

Claude 可以直接讀取檔案,不必詢問。編輯、shell 指令和網路存取則都會跳出 prompt。在 Bash 的 prompt 中選擇「Yes, and don't ask again」,會將允許規則儲存到 .claude/settings.local.json,之後在這個儲存庫中執行該指令就不會再詢問。檔案編輯的核准則持續到工作階段結束。

acceptEdits

工作目錄內的編輯與簡單檔案指令(mkdir、touch、rm、rmdir、mv、cp、sed)會直接執行,不跳出 prompt;其他 shell 指令仍會詢問。適合一邊即時查看 diff 的折衷做法。

plan

Claude 會透過讀取與唯讀指令探索程式碼,然後提出計畫。在你核准之前,原始碼都不會被修改。適合處理不熟悉的程式碼或有風險的變更。

auto

每個動作執行前,都會由另一個模型審查,並封鎖超出你要求範圍、針對它無法辨識的基礎設施,或看似受惡意內容驅動的動作。明確的 ask 規則仍會跳出 prompt。如果分類器連續封鎖三個動作,或在單一工作階段中封鎖二十個,auto 模式會暫停並恢復一般的 prompt 流程。Anthropic 官方的說法是:auto 模式「能減少權限 prompt,但不保證安全」。

dontAsk

任何需要 prompt 的動作都會被拒絕,只有符合允許規則或本來就不需核准的動作才會執行。這個模式專為沒有人可以回應的腳本與 CI 而設計。

bypassPermissions 與 --dangerously-skip-permissions

--dangerously-skip-permissions 等同於 --permission-mode bypassPermissions。所有 prompt 都會被略過,包括寫入 .git 和 .claude 等受保護路徑。不過有少數情況在任何模式下仍會詢問或被拒絕,包括明確的 ask 規則、AskUserQuestion,以及某些危險的 rm 指令。拒絕規則依然有效。

Anthropic 建議只在無網路連線的容器、VM 或 dev container 中使用。在 Mac 和 Linux 上,若不在可辨識的沙箱內,Claude Code 會拒絕以 root 或透過 sudo 在此模式下啟動。如果你只想讓 bypass 模式可供選用而不直接啟用,可以使用 --allow-dangerously-skip-permissions,將它加入 Shift+Tab 的切換循環,但不會切換過去。

04規則疊加在模式之上

模式決定基本行為,設定中的權限規則則用來微調:

{
  "permissions": {
    "allow": ["Bash(npm run test *)"],
    "ask": ["Bash(git push *)"],
    "deny": ["Read(./.env)"]
  }
}

規則的檢查順序為 deny、ask、allow,以第一個符合的規則為準。拒絕規則在所有模式下都會封鎖,包括 bypassPermissions。允許規則在 bypassPermissions 中沒有作用,因為那裡本來就全部允許。執行 /permissions 可查看所有規則及其來源檔案。

Hook 也能參與其中。PreToolUse hook 可以在任何模式下封鎖工具呼叫;PermissionRequest hook 可以替你回應 prompt,但無法覆蓋拒絕規則。詳見 PermissionRequest 指南。

05離開座位時該選哪種模式

大家會想用 --dangerously-skip-permissions,通常是想讓 Claude 持續執行,回來時不要看到 session 卡在某個 prompt 上。這確實是個問題,但 bypass 模式的解法是在你自己的電腦上完全拿掉你的監督。

比較安全的組合:

  • 為無聊的指令設定 allow 規則。把測試、lint 和 build 指令加進 allow,對 git push 和部署保留 ask,並維持在 default 或 acceptEdits 模式。
  • auto 模式:適合長時間任務,且你願意讓分類器判斷例行操作。
  • 讓 prompt 跟著你走。維持會詢問的模式,再用手機回覆少數真正重要的 prompt。

最後一種就是 Claude Code Notifier 在做的事。它是獨立工具,並非 Anthropic 出品。它的命令列工具 ccn 以 Claude Code hook 的形式在 Mac、Windows 和 Linux 上執行。當 Claude Code 即將要求權限而你不在電腦前時,請求會送到你已配對的 iPhone 或 Android 手機,你可以選擇允許一次、在本 session 中允許,或拒絕。它只會看到 Claude Code 原本就會顯示的 prompt,所以要不要詢問仍由模式和你的規則決定。在 auto 模式下請求會比較少;在 bypassPermissions 下則完全沒有,不過「Claude 已完成」的通知和提問仍會送達。設定方式請見手機核准指南,風險說明請見從手機核准安全嗎?。

06常見問題

default 和 acceptEdits 有什麼差別?

default 在每次編輯檔案和執行 shell 指令前都會詢問。acceptEdits 則允許在工作目錄內直接編輯檔案,以及執行 mkdir、mv、cp 等常見檔案指令,不必詢問。其他 shell 指令在兩種模式下都仍會跳出 prompt。

--dangerously-skip-permissions 和 bypassPermissions 一樣嗎?

是的。這個旗標等同於 --permission-mode bypassPermissions。Anthropic 建議只在隔離的容器或 VM 中使用,最好沒有網路連線。

如何讓 Claude Code 對某個指令不再詢問權限?

在 prompt 上選擇「Yes, and don't ask again」,或在設定的 permissions.allow 底下加入 allow 規則,例如 "Bash(npm test)"。這比切換整個模式安全。

專案的設定能把我切到 bypassPermissions 模式嗎?

不行。寫在 .claude/settings.json 或 .claude/settings.local.json 中的 bypassPermissions 和 auto 不會生效,只有在使用者設定、受管理設定或命令列旗標中才會套用。

bypassPermissions 模式下 hook 還會執行嗎?

會。hook 在所有模式下都會執行,而拒絕工具呼叫的 PreToolUse hook 即使在 bypassPermissions 下也能擋下呼叫。PermissionRequest hook 只在有 prompt 需要回覆時才會執行,所以在 bypass 模式下很少觸發。

Claude Code Notifier Claude Code 完成或需要你處理時,手機會收到 push 通知,並可直接在手機上核准、拒絕或回覆。ccn 命令列工具在 Mac、Windows 和 Linux 上皆可免費使用。
下載 iOS 版 下載 Android 版 安裝 ccn

相關指南

  • 用 hook 回應權限請求(PermissionRequest)說明 Claude Code 的 PermissionRequest hook 如何運作、如何用腳本允許或拒絕,以及為什麼權限規則往往是更好的選擇。
  • 從手機核准 Claude Code 權限請求Claude Code 的 PermissionRequest hook 可以回傳 allow 或 deny。以下說明如何從手機回應權限 prompt,無論是自己動手做或使用 ccn。
  • 從手機核准 Claude Code 的操作安全嗎?說明 Claude Code 遠端核准的運作方式、可能出錯的地方、哪些資料會離開你的電腦,以及確保安全的設定。
  • 讓 Claude Code 繼續跑,人先離開:一套工作流程處理長時間 Claude Code 任務的實用流程:讓電腦保持喚醒、減少不必要的 prompt、在手機上收到通知並直接回覆。
claude-code-notifier

Claude Code Notifier 為獨立的第三方應用程式,與 Anthropic, PBC 並無關聯,亦未獲其背書或贊助。「Claude」及「Claude Code」為 Anthropic, PBC 之商標。

App iOS App Android App ccn(macOS、Windows、Linux) 所有指南
法律資訊 隱私權政策 服務條款 其他語言 © 2026 touchtap. 保留所有權利。 TouchTap Ltd 註冊於英格蘭和威爾斯,公司編號 13942589。