Claude Code 權限模式詳解:auto、手動、plan、bypass 與權限規則配置

Claude Code 六種權限模式各自放行什麼、怎麼用 Shift+Tab 切換、auto 模式為什麼提示不可用、allow / ask / deny 規則怎麼寫,以及 bypass 模式的風險。

NNathaniel bigo··原創首發·AI 輔助撰寫
13 分鐘讀完
資料核對於 2026-10-07 · 依據官方文檔與公開資料整理 Plus 帳號
本文根據 Claude Code 官方文檔整理,核對日期 2026-10-07;截圖引用自官方文檔並註明出處。Claude Code 版本更新很快,模式名稱和預設值以你本機的 claude --help 與狀態欄為準。

適用於誰

  • 用 Claude Code 時被「Do you want to proceed?」問得太頻繁,想少點確認又怕它亂來的人;
  • 搜「claude code 權限配置推薦」「dangerously-skip-permissions」,想知道全開權限到底安不安全的人;
  • 看到「auto mode unavailable」提示,不知道為什麼自己用不了 auto 模式的人。

安裝和第一次運行詳見本站《Claude Code 中文入門教學(2026):安裝、登入、第一個任務、常用命令》。

結論先說

  1. 權限模式決定「預設問不問」,權限規則(allow / ask / deny)在模式之上做精細調整。規則的判定順序是 deny → ask → allow,deny 在任何模式下都生效,連 bypass 也擋得住。
  2. 日常開發推薦 auto 模式:由一個獨立的分類器模型替你審核操作,攔下下載執行腳本、強推、生產部署、批量刪除這類高風險動作;想每一步都自己看就用 Manual(手動)。
  3. plan 模式只讀不改,適合先讓它出方案;acceptEdits 自動接受改文件,適合邊改邊用 git diff 複查。
  4. bypassPermissions(--dangerously-skip-permissions)幾乎不做任何檢查,官方明確要求只在容器、虛擬機等隔離環境裏用,而且以 root / sudo 運行時會被拒絕。
  5. Shift+Tab 隨時切換;想改預設模式,在 settings.json 裏設 permissions.defaultMode。

六種模式一覽

模式(配置值)不經詢問就能做的事適合
Manual(default)只有讀取敏感項目、陌生代碼,每一步自己把關
acceptEdits讀取、改文件,以及 mkdir、touch、mv、cp 等常見文件命令一邊讓它改,一邊在編輯器裏複查
plan讀取;auto 可用時還包括分類器放行的探索命令動手前先研究代碼、出方案
auto所有操作,但有後台安全檢查長任務、減少確認疲勞
dontAsk讀取和事先允許的工具,其餘一律拒絕鎖死權限的 CI、腳本
bypassPermissions全部僅限隔離的容器 / 虛擬機

Manual 模式在命令行、VS Code、JetBrains 和桌面版裏都叫 Manual,寫進配置時用 default,命令行也接受 manual 作為別名,例如 claude --permission-mode manual。

Manual 模式下,執行命令前會彈出這樣的確認框:

Claude Code 在 Manual 模式下執行 npm test 前彈出的確認框,選項依次是:是;是,且以後對 npm test * 不再詢問;是,並切換到 auto 模式;否

圖片來源:Claude Code 官方文檔《Configure permissions》

選「Yes, and don't ask again」時,命令類的規則會永久儲存到倉庫根目錄的 .claude/settings.local.json;改文件的批准只在本次會話內有效。在選項上按 Tab 還可以附一句說明給 Claude(比如「可以跑,但別加 --watch」)。

怎麼切換模式

命令行裏:按 Shift+Tab 循環切換。從 auto 出發,依次是 manual → accept edits → plan,再回到 auto。輸入框下方的狀態欄會顯示當前模式,例如 ⏸ manual mode on、⏵⏵ accept edits on、⏸ plan mode on、⏵⏵ auto mode on。

啟動時指定:

bash
claude --permission-mode plan

設為預設:寫進 ~/.claude/settings.json(對本機所有項目生效):

json
{
  "permissions": {
    "defaultMode": "default"
  }
}

注意兩個坑(官方文檔原文寫明):

  • 在項目的 .claude/settings.json 或 .claude/settings.local.json 裏寫 "auto" 不生效;想預設 auto,要寫在用戶級 ~/.claude/settings.json。
  • 在這兩個項目級文件裏寫 "bypassPermissions" 也不生效,會退回 Manual。這是為了防止別人提交到倉庫的配置替你打開危險模式。

VS Code:點輸入框底部的模式標識,標籤分別是 Manual、Edit automatically、Plan、Auto、Bypass permissions。想固定起始模式,用 VS Code 用戶設定裏的 claudeCode.initialPermissionMode(它不接受 auto)。桌面版:在 Code 標籤頁發送按鈕旁的模式選擇器裏切換。

auto 模式:會攔什麼、為什麼提示不可用

auto 模式裏,每個操作執行前由分類器檢查是否超出你的要求。官方列出的預設攔截項包括:curl | bash 這類下載即執行、把敏感數據發到外部、生產部署和數據庫遷移、雲存儲批量刪除、強制推送(force push)、git reset --hard 等會丟棄未提交改動的命令、修改 DNS / 證書 / 密鑰管理、合併沒人審過的 PR、把憑據打印進對話等。

分類器預設只信任當前工作目錄和倉庫已配置的遠程地址。如果公司內部的代碼託管、存儲桶也要放行,用 autoMode.environment 配置可信基礎設施,或者運行 /auto-mode-setup 讓它幫你生成;claude auto-mode defaults 可以打印內置規則。

提示 auto 模式不可用,按官方要求逐項檢查:

  • 模型:在 Anthropic API 上需要 Claude Opus 4.6 及以後、Sonnet 4.6 及以後或 Fable 系列;Haiku、Sonnet 4.5、Opus 4.5 等舊模型在任何平台都不支持。
  • 組織設定:Team / Enterprise 預設可用,但管理員可以用 permissions.disableAutoMode: "disable" 關掉;你自己的任一設定文件裏有這個值也會關掉。
  • 服務端:Anthropic 可能臨時在服務端關閉 auto 模式,收到這類答覆的會話到結束前都不會再開,稍後新開會話再試。

官方同時提醒:auto 模式能減少確認,但不保證安全,敏感操作仍然需要人工審查。

權限規則怎麼寫

規則格式是 工具 或 工具(限定內容),在會話裏用 /permissions 可以查看、增刪,並顯示每條規則來自哪個設定文件。

寫法含義
Bash所有 shell 命令
Bash(npm run *)以 npm run 開頭的命令
Bash(git push *)以 git push 開頭的命令
Read(./.env)讀取當前目錄的 .env
Read(./secrets/**)讀取 secrets 目錄下的所有文件
Edit(/src/**/*.ts)修改項目 src 下的 ts 文件
WebFetch(domain:example.com)抓取 example.com 的網頁
mcp__github名為 github 的 MCP 伺服器提供的所有工具
Agent(Explore)名為 Explore 的子代理

寫通配符的要點: 要放在子命令之後。Bash(git log ) 只放行 git log,而 Bash(git ) 會放行所有 git 命令;Bash(ls ) 不匹配 lsof,Bash(ls*) 會匹配。

一份適合個人項目的起步配置(放在項目 .claude/settings.json,可以提交給團隊共用):

json
{
  "permissions": {
    "allow": [
      "Bash(npm run *)",
      "Bash(git status)",
      "Bash(git diff *)",
      "Bash(git commit *)"
    ],
    "ask": [
      "Bash(git push *)",
      "Bash(gh pr create *)"
    ],
    "deny": [
      "Read(./.env)",
      "Read(./.env.*)",
      "Read(./secrets/**)"
    ]
  }
}

這樣跑腳本、看改動、提交不再詢問;推送和建 PR 每次都要你點頭(ask 規則在 auto 模式下也會強制詢問);密鑰文件不讓讀。要注意 Bash 規則是按命令文本前綴匹配的,git -C . push 這種換了寫法的推送不會被 Bash(git push *) 匹配到;需要更嚴格的檢查時,官方建議用 PreToolUse Hook 或開啟沙箱。另外,Read / Edit 的 deny 規則管不住「腳本自己去讀文件」,要做到系統級隔離需要 /sandbox 開啟 Bash 沙箱(macOS、Linux、WSL2 可用)。

bypass 模式:能不能「權限全開」

--dangerously-skip-permissions 和 --permission-mode bypassPermissions 等價:跳過權限提示和安全檢查,連 .git、.claude 這類受保護路徑也直接寫入。官方的要求很明確:

  • 只在沒有外網、不會傷到宿主機的容器、虛擬機、開發容器裏用;
  • 它不防提示詞注入——Claude 讀到的網頁、文件裏如果藏着惡意指令,沒有任何一道關卡;
  • 在 Linux / macOS 上以 root 或 sudo 運行會直接報錯拒絕;
  • 第一次啟用會彈窗要你確認承擔風險;管理員可以用 permissions.disableBypassPermissionsMode 禁用它。

想少點確認,官方推薦的替代方案是 auto 模式,或者 Manual + 沙箱的「auto-allow」模式。CI 裏需要無人值守時,優先用 dontAsk 加精確的 --allowedTools 白名單:

bash
claude -p "運行測試並總結失敗原因" --permission-mode dontAsk --allowedTools "Bash(npm test)" "Read"

常見問題

Q:我在項目配置裏寫了 "defaultMode": "auto",為什麼啟動還是 Manual?

項目級的 .claude/settings.json 和 .claude/settings.local.json 不認 auto,挪到 ~/.claude/settings.json。VS Code 裏的會話還要看擴展自己的 claudeCode.initialPermissionMode。

Q:allow 了一個命令,為什麼還是被攔?

判定順序是 deny → ask → allow,只要有一條更寬的 deny 或 ask 規則匹配,具體的 allow 也救不回來。用 /permissions 查看規則分別來自哪個文件。管理員下發的託管設定優先級最高,命令行參數也無法覆蓋。

Q:在 CLAUDE.md 裏寫「不許刪文件」管用嗎?

只能影響 Claude「想不想做」,不能限制它「能不能做」。官方說明權限由 Claude Code 程序強制執行,要真正禁止請寫 deny 規則。

Q:plan 模式和 Manual 有什麼區別?

plan 模式下 Claude 只研究、寫方案,批准方案前不會改源碼;Manual 模式可以改,只是每次都問你。plan 模式的用法詳見本站《Claude Code Plan 模式怎麼用:先出方案再改代碼》。

Q:網頁版 / 手機上能用 bypass 嗎?

不能。雲端會話只提供 Accept edits、Plan、Auto,並且會忽略倉庫設定文件裏的 bypassPermissions 和 dontAsk。

參考資料

  • Choose a permission mode(官方):https://code.claude.com/docs/en/permission-modes
  • Configure permissions(官方):https://code.claude.com/docs/en/permissions
  • Configure auto mode(官方):https://code.claude.com/docs/en/auto-mode-config
  • Configure the sandboxed Bash tool(官方):https://code.claude.com/docs/en/sandboxing
  • Settings files and precedence(官方):https://code.claude.com/docs/en/settings
需要開通或續費?Claude Pro 充值 →

Nathaniel 的更多內容

  1. 01

    AI 學習路線:零基礎從哪開始,6 個階段、每階段該讀哪幾篇教學(2026)

    AI 學習路線怎麼走?給零基礎的人一條循序漸進的路徑:先選一個助手用順,再學提問,再用進日常工作,按需學做圖做影片,守住私隱與版權,最後進階自動化和編程。每個階段都配了本站對應的教學。

    其他 AI 工具0
  2. 02

    AI 瀏覽器有哪些:Perplexity Comet、Opera Neon、Dia、Brave Leo 與 Edge Copilot 的官方說法對照

    AI 瀏覽器有哪些?按官方頁面整理 Perplexity Comet、Opera Neon、Dia、Brave Leo 和 Edge 裏的 Copilot:官方自述的定位、支持的平台、免費還是訂閱,以及 Gemini、Claude 的 Chrome 方案和已停用的 ChatGPT Atlas。

    其他 AI 工具0
  3. 03

    即夢國際版 Dreamina 是什麼:官方站入口、能生成什麼、免費積分和模型(2026)

    即夢國際版 Dreamina 是什麼?官方站是 dreamina.capcut.com,是一個圖片、影片和數字人一體的 AI 創作平台。按官方首頁和 FAQ 講:能生成什麼、免費用戶每天 120 積分、列出的 Seedance 與 Seedream 模型,以及和國內即夢怎麼區分。

    其他 AI 工具0
  4. 04

    Kimi K3 Coding Plan 是什麼、怎麼用:Kimi Code 會員、模型 ID、套餐價格和額度規則

    Kimi K3 Coding Plan 是什麼?按 Kimi 官方文檔核對:官方現在叫 Kimi Code,是 Kimi 會員權益裏的編程服務,Plus 及以上才有;講 K3 等模型 ID、國內新套餐價格、三種客戶端、第三方工具接入和額度規則。

    Kimi0
  5. 05

    DeepSeek V4 Pro 和 Flash 的區別與 API 價格:官方價格頁逐項對照(高峰與空閒時段)

    DeepSeek V4 Pro 和 Flash 有什麼區別、API 怎麼收費?按 DeepSeek 官方價格頁(2026-10-19 查詢)列出兩個模型的版本、上下文、圖像理解、並發和每百萬 token 價格,說明高峰與空閒時段的計費差別和舊模型名怎麼處理。

    其他 AI 工具0
  6. 06

    GPT-6 Pro(Astra)怎麼用、哪些套餐有:怎麼選到 Pro 檔、用量限制和 Pro 三檔價格

    GPT-6 Pro(Astra)怎麼用、哪些套餐有?按 OpenAI 幫助中心核對:聊天裏 Pro 檔給 Pro 100、Pro 200、Business 和 Enterprise;Plus 在 Work 和 Codex 裏含 Astra。講怎麼選到、用量上限和官方 Pro 價格。

    ChatGPT0

同產品的其他教學

  1. 01

    Claude Pro 和 Max 的區別:用量、價格、Fable 模型和每月 API 額度怎麼選

    Claude Pro 和 Max 有什麼區別?按官方定價頁和幫助中心核對:Max 有 5x、20x 兩檔用量,Pro 與 Max 在價格、Fable 模型、每月 API 額度和計費週期上的差別,以及什麼情況下 Pro 夠用、什麼情況下該升 Max。

    Claude0
  2. 02

    Claude 登入不了、用不了、打不開怎麼辦:按官方幫助中心逐條排查

    Claude 無法登入、無法使用、無法打開怎麼辦?按官方幫助中心的順序排查:收不到登入電郵、登入報錯、Google 登入出問題、系統繁忙、額度用完、官方故障,以及所在地區是否在官方支持名單裏。

    Claude0
  3. 03

    Claude 怎麼註冊:官方註冊流程、手機驗證要求,以及提示無法註冊時官方怎麼說

    Claude 怎麼註冊?打開 claude.ai,用 Google 或電郵登入連結創建帳號,再用支持地區的手機號收短訊驗證碼。講清官方的註冊條件、手機驗證的限制,以及收不到驗證碼、號碼被用過多次時官方的處理辦法。

    Claude0
  4. 04

    Claude 怎麼用:新手入門,從打開聊天到寫出第一個好問題

    Claude 怎麼用?按官方幫助中心整理的新手路徑:在網頁、桌面版或手機 App 打開聊天,像對同事一樣寫需求,用輸入框的「+」和「/」找功能,點模型名換模型,免費版有每 5 小時重置的上限。

    Claude0
  5. 05

    Claude 怎麼設定成中文:介面語言、回答語言和語音語言分別怎麼設

    Claude 怎麼設定中文?官方幫助中心列出的 11 種介面語言裏目前沒有中文,但 Claude 會用你提問的語言回答,直接用中文問即可;想固定用中文,可在設定的 Instructions for Claude 裏寫一句。語音模式的語言要單獨選。

    Claude0
  6. 06

    MCP Inspector 怎麼用:安裝、啟動命令、調試 MCP 伺服器與 v2 的變化

    MCP Inspector 是什麼、怎麼安裝和使用?按 MCP 官方文檔講清網頁、命令行、終端介面三種模式的啟動命令,怎麼連本地和遠程伺服器、怎麼傳環境變量,密鑰存在哪,以及 v2 相比舊教學在端口、令牌變量名和 Node 版本上的變化。

    Claude其他 AI 工具0

0 條評論

登入 後參與評論

還沒有評論,來搶沙發~