Skip to main content
自動模式讓 Claude Code 無需例行權限提示即可執行,方法是透過分類器路由工具呼叫,該分類器會封鎖任何不可逆、破壞性或針對您環境外的操作。拒絕和明確要求規則在分類器之前進行評估,仍然會封鎖或提示。使用 autoMode 設定區塊告訴該分類器您的組織信任哪些儲存庫、儲存桶和網域,以便它停止封鎖例行內部操作。
此頁面是設定參考。開啟和關閉自動模式涵蓋在「權限模式」頁面上:
自動模式適用於所有提供者上的所有使用者,包括 Anthropic API、AWS 上的 Claude Platform、Amazon Bedrock、Google Cloud 的 Agent Platform、Microsoft Foundry 和已登入的 Claude 應用程式閘道工作階段。如果 Claude Code 報告您的帳戶無法使用自動模式,請檢查完整要求,其中也涵蓋支援的模型和 Team 及 Enterprise 方案上的組織層級控制。 根據預設,分類器只信任工作目錄和目前儲存庫的已設定遠端。推送到您公司的原始碼控制組織或寫入團隊雲端儲存桶等操作會被封鎖,直到您將它們新增到 autoMode.environment。 此頁面涵蓋如何:

常見的邊界

自動模式允許推送到您正在使用的儲存庫的任何分支(包括預設分支),並預設建立拉取請求。名稱標記為部署或發佈目標的非預設分支(例如 production、release 或 gh-pages)不受該預設涵蓋:分類器會根據其自身條件判斷推送到該分支,包括作為生產部署。推送的內容仍然會被檢查,因此強制推送、秘密進入提交,或在 CI 或部署管道執行時會將秘密發送到儲存庫外的變更仍然會被阻止。 如果您想在 Claude 的推送和拉取請求命令之前進行人工檢查點,請新增權限規則:下面的配方會保持自動模式對所有其他操作開啟。

新增人工檢查點

最直接的機制是 permissions.ask。內容範圍的 ask 規則(如下面的規則)在分類器之前進行評估,並且始終強制權限提示,即使在自動模式下也是如此,因為明確的 ask 規則是您要求提示該操作的明確意圖。在您的設定中新增規則:
這些規則符合以 git push 或 gh pr create 開頭的命令。Claude 以其他方式寫入的推送,例如 git -C <dir> push 或 git -c <key>=<value> push,不符合規則,因此不會被檢查點。對於檢查完整命令文字的檢查點,請新增 PreToolUse hook。 選擇與邊界需要有多堅定相符的機制:

分類器讀取設定的位置

分類器讀取與 Claude 本身載入相同的 CLAUDE.md 內容,因此在您專案的 CLAUDE.md 中的指令(例如「永遠不要強制推送」)會同時引導 Claude 和分類器。請從該處開始了解專案慣例和行為規則。 對於跨專案適用的規則,例如受信任的基礎設施或組織範圍的拒絕規則,請使用 autoMode 設定區塊。分類器從以下範圍讀取 autoMode: 分類器不會從 .claude/settings.json 或 .claude/settings.local.json 中的專案設定讀取 autoMode。兩個檔案都位於儲存庫目錄中,因此已簽入的儲存庫或建置步驟可能會注入自己的允許規則。請將 .claude/settings.local.json 中的任何 autoMode 區塊移至 ~/.claude/settings.json。 來自每個範圍的項目會被合併。開發者可以使用個人項目擴展 environment、allow、soft_deny 和 hard_deny,但無法移除受管理設定提供的項目。由於允許規則在分類器內部充當軟區塊規則的例外,開發者新增的 allow 項目可以覆蓋組織的 soft_deny 項目:組合是累加的,而不是硬政策邊界。
分類器是在權限系統之後執行的第二道閘門。對於無論使用者意圖或分類器設定如何都必須永遠不執行的動作,請在受管理設定中使用 permissions.deny,它會在諮詢分類器之前阻止該動作,且無法被覆蓋。

定義受信任的基礎設施

對於大多數組織,autoMode.environment 是您唯一需要設定的欄位。它告訴分類器哪些儲存庫、儲存桶和網域是受信任的:分類器使用它來決定「外部」的含義,因此任何未列出的目的地都是潛在的資料外洩目標。 claude auto-mode defaults 會列印三種環境項目。
  • Context slots:描述您的組織、技術堆疊和安全態勢,以便分類器讀取您的上下文中的其他規則。每個預設為 None configured 或保守假設(名稱如下):
    • Organization
    • Claude Code 的主要用途:預設為軟體開發
    • 雲端提供者
    • 儲存庫可見性:除非其遠端主機和名稱另有指示,或分類器讀取的對話中較早的可見性檢查顯示它是公開的,否則儲存庫被假定為私有。 在 Claude Code 本身發送的分類器請求中,分類器讀取您的訊息和 Claude 執行的命令,而不是它們的輸出。證據必須是分類器能讀取的內容,例如您自己的訊息將儲存庫命名為公開;單獨執行 gh repo view 的輸出無法到達它。
    • 內部共享 / 程式碼片段託管:公開貼上和 gist 服務被視為在信任邊界之外,直到您命名其中一個
    • 組織特定的 CLI
    • 祕密管理
    • CI/CD 部署目標
    • 網路態勢
    • Host containment:預設為具有開放網際網路的普通開發人員機器或 CI 執行器。如果 Claude Code 在具有出口允許清單或不得接觸的鄰近項目的容器、VM 或 pod 中執行,請命名允許的主機、雲端中繼資料端點是否應可到達,以及任務使用的雲端專案、叢集或登錄以及使用的身分。在此項目命名該身分之前,分類器阻止主機自身認證的請求。需要 Claude Code v2.1.257 或更新版本
    • 受保護的部署命名空間 / 環境:在您命名它們之前,回退到「敏感遠端目標」啟發式
    • 資料保留 / 解密
  • Trust slots:命名分類器視為在您邊界內的內容。槽位為「受信任的儲存庫」、「原始碼控制」、「受信任的內部網域」、「受信任的雲端儲存桶」、「關鍵內部服務」和「內部套件登錄」。儲存庫和原始碼控制項目預設為工作儲存庫及其配置的遠端。其他所有信任槽位預設為 None configured,因此在您新增之前,沒有其他內容是受信任的。儲存庫的可見性僅限於機密資料:私有儲存庫是機密資料的可接受目的地,但將儲存庫設為私有永遠不會清除祕密或個人或受信任的資料進入其中,分類器將從工作儲存庫外部移植、重新指向或首次讀取的內容視為不是該儲存庫自己的工作。
  • Sensitivity slots:命名保護規則視為高風險的內容。槽位為「敏感資料位置和受眾」、「敏感遠端目標」和「受保護的 IaC 範圍」。每個預設為廣泛的啟發式,例如將任何名稱包含 prod 或 production 的主機或命名空間視為敏感遠端目標,因此保護規則在您配置任何內容之前就處於活動狀態。在敏感槽位中命名具體目標會使這些規則應用於命名的目標,而不是啟發式。
若要在預設值旁邊新增您自己的項目,請在陣列中包含字面字串 "$defaults"。預設項目會在該位置拼接,因此您的自訂項目可以在它們之前或之後。 以下範例保留預設項目並新增組織的儲存庫、儲存桶、網域和服務。
儲存您的設定後,執行 claude auto-mode config 以確認有效規則包含您的項目。 項目是散文,不是正規表達式或工具模式。分類器將它們讀取為自然語言規則。按照您向新工程師描述基礎設施的方式編寫它們。徹底的環境部分涵蓋:
  • Organization:您的公司名稱以及 Claude Code 主要用於什麼,例如軟體開發、基礎設施自動化或資料工程
  • Source control:您的開發人員推送到的每個 GitHub、GitLab 或 Bitbucket 組織
  • 雲端提供者和受信任的儲存桶:Claude 應該能夠讀取和寫入的儲存桶名稱或前綴
  • Trusted internal domains:您網路內 API、儀表板和服務的主機名稱,例如 *.internal.example.com
  • Key internal services:CI、構件登錄、內部套件索引、事件工具
  • Internal package registry:私有 npm、PyPI 或其他登錄,安裝應該透過它進行,因此繞過它安裝公開登錄的安裝會被阻止
  • Sensitive data locations & audiences:保存個人資料、機密業務資料、認證、受管制資料或類似敏感資料的儲存桶、資料庫或路徑,以及每個位置中的資料可能與之共享的受眾,以便分類器保護這些位置而不是從內容猜測。
  • Sensitive remote targets:計為生產環境的命名空間、主機或容器,因此遠端 shell 和埠轉發進入它們需要您的明確批准
  • Protected IaC scopes:應用或銷毀應始終需要您命名變更的基礎設施資源
  • Additional context:受管制行業限制、多租戶基礎設施或影響分類器應視為風險的合規要求
一個有用的起始範本:填入括號中的欄位並移除任何不適用的行。
您不需要一次填入所有內容。合理的推出:從預設值開始,新增您的原始碼控制組織和關鍵內部服務,這可以解決最常見的誤報,例如推送到您自己的儲存庫。接下來新增受信任的網域和雲端儲存桶。當出現阻止時填入其餘部分。

使用 /auto-mode-setup 產生環境項目

執行 /auto-mode-setup 讓 Claude Code 從您的專案和最近在其中的工作階段中草擬 autoMode.environment 項目,有時也會草擬規則項目。如果您接受草稿,Claude Code 會將其寫入 ~/.claude/settings.json。
/auto-mode-setup 需要 Pro、Max 或 Team 方案,以及 Claude Code v2.1.228 或更新版本。在原生 Windows 上需要 v2.1.233 或更新版本。您無法在 Claude Code on the web 中執行它。它也需要功能旗標擷取,所以您無法在已關閉旗標擷取的工作階段中執行它。

/auto-mode-setup 讀取的內容

如果 ~/.claude/settings.json 已經包含 autoMode 項目,Claude Code 會先詢問是否要新增到您的環境清單或取代它,並且無論如何都會保留您撰寫的規則。Claude Code 接著會詢問您如何使用此專案,並在掃描任何內容之前提供兩個選擇性掃描。在掃描中,Claude Code 始終讀取這些來源:
  • 此專案的 CLAUDE.md、