SpyBara
Go Premium

permission-modes.md 2026-10-21 23:02 UTC to 2026-10-22 22:58 UTC

This page contains 151 additions and 131 deletions.

2026
Thu 1 23:59 Fri 2 22:59 Sat 3 23:57 Sun 4 23:58 Mon 5 23:58 Tue 6 23:59 Wed 7 23:59 Sat 10 23:01 Sun 11 23:57 Wed 14 22:58 Sat 17 23:57 Mon 19 23:58 Tue 20 23:00 Wed 21 23:02 Thu 22 22:58 Fri 23 22:59 Sun 25 23:58 Mon 26 22:57 Tue 27 22:59 Wed 28 23:57 Fri 30 23:01

Wählen Sie einen Berechtigungsmodus

Steuern Sie, ob Claude vor dem Bearbeiten von Dateien oder dem Ausführen von Befehlen fragt. Wechseln Sie Modi mit Shift+Tab in der CLI, dem Modusindikator in VS Code oder dem Moduswahlschalter in Desktop.

Ein Berechtigungsmodus legt fest, welche Aktionen Claude in einer Sitzung ausführen kann, ohne Sie vorher zu fragen. Im Manual-Modus hält Claude Code inne und fragt Sie, bevor die meisten Aktionen ausgeführt werden, die Dateien bearbeiten, Shell-Befehle ausführen oder das Netzwerk erreichen. Im Auto-Modus überprüft ein zweites Modell, der Klassifizierer, Aktionen statt Ihnen; wie der Klassifizierer Aktionen bewertet listet auf, welche Aktionen er überprüft und welche er überspringt.

Mit Claude Code v2.1.283 oder später ist der Auto-Modus der integrierte Standard-Berechtigungsmodus für interaktive Terminal- und VS Code-Sitzungen. Bei früheren Versionen ist er der integrierte Standard-Berechtigungsmodus nur bei Pro-, Max- und Team-Plänen. Welcher Modus eine Sitzung startet behandelt die Oberflächen und Einstellungen, die den Standard-Berechtigungsmodus ändern. Sie können auch den Berechtigungsmodus einer laufenden Sitzung jederzeit ändern.

Verfügbare Modi

Jeder Modus stellt einen anderen Kompromiss zwischen Benutzerfreundlichkeit und Überwachung dar. Die folgende Tabelle zeigt, was Claude in jedem Modus ohne Berechtigungsaufforderung tun kann. Der Manual-Modus wird unter seinem Konfigurationswert default angezeigt.

Modus Was ohne Nachfrage ausgeführt wird Am besten geeignet für
default Nur Lesevorgänge Überprüfung jeder Aktion selbst, sensible Arbeiten
acceptEdits Lesevorgänge, Dateibearbeitungen und häufige Dateisystembefehle (mkdir, touch, mv, cp usw.) Iteration bei Code-Überprüfung
plan Lesevorgänge, plus vom Klassifizierer genehmigte Befehle, wenn Auto-Modus verfügbar ist Erkundung einer Codebasis vor Änderungen
auto Alles, mit Sicherheitsprüfungen im Hintergrund Lange Aufgaben, Reduzierung von Aufforderungsmüdigkeit
dontAsk Dateilesevorgänge innerhalb Ihrer Arbeitsverzeichnisse und vorab genehmigte Tools; alles, was eine Berechtigungsabfrage auslösen würde, wird abgelehnt, wobei ein von Ihnen installierter Mod einige dieser Aufrufe dennoch genehmigen kann Gesperrte CI und Skripte
bypassPermissions Alles Nur isolierte Container und VMs

Der Modus, der jede Aktion überprüft, wird in der CLI, in claude --help, in den VS Code- und JetBrains-Erweiterungen und in der Desktop-App als Manual bezeichnet. Sein Konfigurationswert ist default, was Hooks und SDK-Integrationen verwenden. Die CLI akzeptiert manual als Alias überall dort, wo Sie den Wert eingeben, zum Beispiel claude --permission-mode manual oder "defaultMode": "manual".

Schreibvorgänge in geschützte Pfade werden niemals automatisch genehmigt, außer im bypassPermissions-Modus und in Plan-Mode-Sitzungen, in denen Bypass-Berechtigungen verfügbar sind, was bedeutet, dass Sitzungen auf eine Weise gestartet wurden, die bypassPermissions in den Moduszyklus aufnimmt.

Modi legen die Grundlage fest. Überlagern Sie Berechtigungsregeln darauf, um bestimmte Tools vorab zu genehmigen oder zu blockieren. Deny-Regeln blockieren in jedem Modus, einschließlich bypassPermissions. Deny- und Ask-Regeln gelten nicht für EndConversation, solange Claude noch mindestens ein anderes Tool aufrufen kann. Allow-Regeln haben keine Auswirkung in bypassPermissions.

Aktionen, die kein Modus automatisch genehmigt

Claude Code genehmigt die folgenden in keinem Modus automatisch, einschließlich bypassPermissions. Jeder Punkt verlinkt auf den Abschnitt, der sagt, was stattdessen in jedem Modus passiert:

  • Tools, die einer expliziten Ask-Regel entsprechen

  • Connector-Tools, die Ihre Organisation auf ask gesetzt hat, in Sitzungen, in denen diese Einstellung Claude Code erreicht

  • Tools, die Benutzerinteraktion erfordern: das integrierte AskUserQuestion-Tool und MCP-Tools, die mit requiresUserInteraction gekennzeichnet sind

  • Erkannte rm- und rmdir-Löschungen kritischer Pfade, die weder eine allow-Regel noch ein "allow" eines PreToolUse-Hooks genehmigt

  • Die Cross-Session-Messaging-Schutzmaßnahmen

  • Lesevorgänge außerhalb der Arbeitsverzeichnisse, während permissions.blockReadsOutsideWorkingDirectories aktiviert ist: erkannte Datei-lesende Bash-Befehle und jeder unsandboxed Retry, der Genehmigung benötigt, um außerhalb der Sandbox zu laufen, fordern auch im Auto-Modus und bypassPermissions-Modus auf. Erfordert Claude Code v2.1.257 oder später.

    Ein Befehl, den der Shell-Parser nicht verfolgen kann, wie einer, der das Verzeichnis mehr als einmal wechselt oder eine Subshell ausführt, fordert auf die gleiche Weise auf, auch wenn er keinen außerhalb liegenden Pfad benennt. Diese Aufforderung gilt nicht, wenn der Befehl in der Sandbox ausgeführt wird und die Sandbox die Blockierung erzwingt.

Häufige Setups

Berechtigungsmodi entscheiden, ob Claude vor einer Aktion fragt, und die Bash-Sandbox und äußere Isolationsgrenzen entscheiden, was eine Aktion erreichen kann, sobald sie läuft. Jede Zeile unten paart ein Ziel mit den Flags oder Einstellungen, die Sie dorthin bringen, und der Isolation, die es benötigt, als Ausgangspunkt. Verfügbare Modi listet auf, was in jedem Modus ohne Aufforderung läuft.

Sie möchten Starten Sie mit Isolation erforderlich Notizen
Jede Aktion selbst überprüfen Manual-Modus: claude --permission-mode default Keine Sensible Arbeiten, unbekannter Code
Lokal mit weniger Berechtigungsabfragen iterieren, ohne einen Klassifikator Manual-Modus plus die Bash-Sandbox im Auto-Allow-Modus: claude --permission-mode default, dann /sandbox ausführen und Auto-Allow auswählen Die integrierte Bash-Sandbox, auf macOS, Linux und WSL2 Deny-Regeln gelten weiterhin, und Ask-Regeln, die einen Befehl benennen, wie Bash(git push *), fragen weiterhin nach. Der Auto-Allow-Modus behandelt andere Befehle, die nachfragen können. Um die Sandbox stattdessen aus einer Einstellungsdatei zu aktivieren, setzen Sie sandbox.enabled auf true
Erkunden Sie, bevor Sie etwas ändern claude --permission-mode plan Keine Claude Code blockiert Bearbeitungen, bis Sie einen Plan genehmigen
Arbeiten Sie freihändig im Auto-Modus claude --permission-mode auto, der integrierte Standard-Berechtigungsmodus mit v2.1.283 oder später Keine; eine Sandbox oder ein Container fügt Verteidigungstiefe hinzu Erfordert ein unterstütztes Modell, und Ihre Organisation kann Auto-Modus ausschalten
Führen Sie in CI mit einer genauen Allowlist aus claude -p "run the test suite" --permission-mode dontAsk --allowedTools "Bash(npm test)" "Read" Keine über das hinaus, was Ihr CI-Runner bietet Cloud-Sitzungen ignorieren dontAsk aus Einstellungsdateien
Führen Sie vollständig unbeaufsichtigt in einem Container aus claude -p "<prompt>" --dangerously-skip-permissions Erforderlich: ein Container, VM oder die Sandbox-Laufzeit; auf Linux und macOS, führen Sie es als Nicht-Root-Benutzer aus Cloud-Sitzungen ignorieren diesen Modus aus Einstellungsdateien. In diesem -p Lauf werden die wenigen Aufrufe, die weiterhin auffordern würden stattdessen verweigert

Die Bash-Sandbox und der Auto-Modus funktionieren unabhängig und kombinieren sich, mit den Ausnahmen, die unter Sandbox-Modi aufgelistet sind. Für die vollständige Interaktion siehe Wie Sandboxing sich auf Berechtigungen und Berechtigungsmodi bezieht und Wie Isolation sich auf Berechtigungsmodi bezieht.

Welcher Modus eine Sitzung startet

Wenn Sie eine neue Sitzung in einem Terminal starten, nimmt Claude Code den Berechtigungsmodus aus dem ersten dieser Punkte, der zutrifft:

  1. Das --permission-mode Flag oder --dangerously-skip-permissions

  2. permissions.defaultMode in einer Einstellungsdatei

    Wenn Sie "auto" in .claude/settings.json oder .claude/settings.local.json setzen, wird der Wert nicht wirksam, und Claude Code verwendet dann stattdessen den integrierten Standard, anstatt einen defaultMode aus ~/.claude/settings.json zu verwenden. Wenn Sie "bypassPermissions" in diesen beiden Dateien setzen, wird es auch nicht wirksam, und die Sitzung startet im Manual-Modus. Die anderen Werte gelten aus jeder Einstellungsdatei.

  3. Der integrierte Standard

Konversationen, die die VS Code-Erweiterung startet, folgen der eigenen Liste der Erweiterung in Berechtigungsmodi wechseln. Für den Berechtigungsmodus, in dem Claude Code eine fortgesetzte Sitzung startet, siehe Berechtigungsmodus beim Fortsetzen.

Der integrierte auto Standard erfordert Claude Code v2.1.228 oder später auf macOS, Linux und WSL, und v2.1.233 oder später auf nativem Windows. Bei früheren Versionen ist der integrierte Standard Manual.

Der integrierte Standard hängt davon ab, wie Sie Claude Code ausführen. Die erste Zeile, die Ihrer Sitzung entspricht, gilt. Die Tabelle behandelt Sitzungen, die Sie in einem Terminal oder über die VS Code-Erweiterung starten; für die Desktop-App und claude.ai siehe die Desktop- und Web-Registerkarten in Berechtigungsmodi wechseln.

Wie Sie Claude Code ausführen Integrierter Start-Berechtigungsmodus
Eine Einstellungsdatei setzt disableAutoMode auf "disable" default
claude -p oder das Agent SDK default
Auf Ihre Organisation ist die HIPAA-Konfiguration angewendet und die Sitzung ist dafür berechtigt default mit Claude Code v2.1.285 oder später; der Auto-Modus bleibt verfügbar, um dorthin zu wechseln
In einem Terminal oder über die VS Code-Erweiterung auto mit Claude Code v2.1.283 oder später; bei früheren Versionen auto bei Pro-, Max- oder Team-Plänen in Sitzungen, die Feature-Flags abrufen, und default andernfalls

Wenn das Flag, eine Einstellungsdatei oder der integrierte Standard auto auswählt, aber Auto-Modus nicht für die Sitzung verfügbar ist, startet Claude Code die Sitzung stattdessen im Manual-Modus. Auto-Modus ist nicht verfügbar, wenn die Sitzung die Verfügbarkeitsanforderungen nicht erfüllt, wie eine Einstellungsdatei, die ihn ausschaltet, oder ein Modell, das ihn nicht unterstützt, oder wenn Anthropic ihn vorübergehend serverseitig ausgeschaltet hat.

Das erste Mal, wenn der integrierte Standard eine Ihrer Sitzungen im Auto-Modus startet, zeigt Claude Code einen Hinweis, der auf diese Seite verlinkt:

  • In einem Terminal, einmal, oben in der Sitzung
  • In der VS Code-Erweiterung, als Karte auf dem Bildschirm für neue Konversationen, die bleibt, bis Sie sie schließen

Wenn Ihre ~/.claude/settings.json einen defaultMode setzt, der nicht auto ist, und keine andere Einstellungsdatei setzt einen, starten Ihre Sitzungen weiterhin in diesem Modus. Bei Pro-, Max- und Team-Plänen und in Sitzungen, die keine Feature-Flags abrufen, fragt Claude Code einmal, im Terminal oder in der VS Code-Erweiterung, ob die Einstellung auf Auto-Modus geändert werden soll. Wenn Sie ablehnen, bleibt Ihre Einstellung wie sie ist.

Abgelehnte Tool-Aufrufe in claude -p- und Agent SDK-Ausführungen

In Claude Code v2.1.302 oder später starten claude -p- und Agent SDK-Ausführungen ohne festgelegten Berechtigungsmodus im Manual-Modus. Dieser Modus erscheint in SDK-Optionen und Einstellungen als default. Aufrufe, die eine Genehmigung erfordern, werden abgelehnt, sofern Sie sie nicht mit einer Allow-Regel, einem Hook, einem canUseTool-Callback oder --permission-prompt-tool genehmigen.

Um diese Aufrufe genehmigen zu lassen, fügen Sie Allow-Regeln hinzu oder starten Sie im Auto-Modus:

Diese Beispiele zeigen die Auto-Modus-Variante für die CLI und jedes SDK:

CLI

claude -p "Run the test suite and fix any failures" --permission-mode auto

TypeScript

const options = {
  permissionMode: "auto"
};

Python

from claude_agent_sdk import ClaudeAgentOptions

options = ClaudeAgentOptions(permission_mode="auto")

Vor v2.1.302 konnten diese Ausführungen im Auto-Modus starten, wenn sie keine Feature-Flags abriefen, zum Beispiel bei einem Drittanbieter oder mit DISABLE_TELEMETRY.

Starten Sie in einem anderen Berechtigungsmodus

Sie können den Start-Berechtigungsmodus für eine Sitzung oder als Standard für jede Sitzung auf einem Computer, in einem Projekt oder in einer Organisation festlegen. Wenn mehr als eine Einstellungsdatei permissions.defaultMode setzt, entscheidet der Vorrang der Einstellungen, sodass ein Projekt- oder verwalteter Wert ~/.claude/settings.json übertrumpft. Um den Berechtigungsmodus einer bereits laufenden Sitzung zu ändern, siehe Berechtigungsmodi wechseln.

Um den Start-Berechtigungsmodus festzulegen für Tun Sie dies
Eine Sitzung, die Sie gerade starten Übergeben Sie den Berechtigungsmodus als Flag, zum Beispiel claude --permission-mode default
Jede Terminal-Sitzung, die Sie auf diesem Computer starten Setzen Sie permissions.defaultMode in ~/.claude/settings.json. Für das, was die VS Code-Erweiterung liest, siehe Berechtigungsmodi wechseln
Jede Terminal-Sitzung, die Sie in einem Projekt starten Setzen Sie permissions.defaultMode in .claude/settings.json des Projekts. Sitzungen, die Sie in einem Terminal starten, respektieren jeden Wert außer auto und bypassPermissions; Sitzungen, die die VS Code-Erweiterung startet, lesen keine Projekteinstellungen für den Start-Berechtigungsmodus
Jede Terminal-Sitzung in Ihrer Organisation Setzen Sie permissions.defaultMode in verwalteten Einstellungen. Terminal-Sitzungen starten in diesem Modus und Personen können weiterhin zum Auto-Modus wechseln; für das, was die VS Code-Erweiterung liest, siehe Berechtigungsmodi wechseln. Um Auto-Modus zu entfernen, damit niemand ihn auswählen kann, setzen Sie stattdessen permissions.disableAutoMode auf "disable"

Dieses Beispiel macht jede Terminal-Sitzung auf Ihrem Computer im Manual-Modus starten, dessen Konfigurationswert default ist. Speichern Sie es in ~/.claude/settings.json:

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

Die nächste Sitzung, die Sie starten, zeigt ⏸ manual mode on in der Statusleiste.

Berechtigungsmodi mit der HIPAA-Konfiguration

In einer Organisation, auf die die HIPAA-Konfiguration angewendet ist, gilt der integrierte auto Standard nicht. Eine Terminal- oder VS Code-Sitzung startet im Manual-Modus, wenn nichts anderes ihren Start-Berechtigungsmodus festlegt. Eine Terminal-Sitzung zeigt außerdem Auto mode isn't the default for your organization · Shift+Tab to switch an, und die VS Code-Erweiterung zeigt keinen Hinweis an. Prüfen, wie sich Entwickler anmelden und verbinden listet die Sitzungen auf, für die dies gilt.

Auto-Modus und bypassPermissions bleiben verfügbar:

Erfordert Claude Code v2.1.285 oder später, die Mindestversion für die HIPAA-Konfiguration.

Berechtigungsmodi wechseln

Jede Schnittstelle hat ihre eigene Kontrolle zum Wechseln von Berechtigungsmodi während einer Sitzung und ihre eigene Weise, den Berechtigungsmodus zu wählen, den neue Sitzungen starten. Wählen Sie Ihre Schnittstelle aus, um ihre Kontrollen zu sehen.

CLI

Während einer Sitzung: Drücken Sie Shift+Tab, um Berechtigungsmodi zu durchlaufen. Von auto wechselt der erste Druck zu default, und der Zyklus läuft dann default → acceptEdits → plan. Optionale Modi werden nach plan eingefügt. Die Statusleiste zeigt den aktiven Modus als graues ⏸ manual mode on für default oder als ⏵⏵ accept edits on, ⏸ plan mode on, ⏵⏵ auto mode on, ⏵⏵ don't ask on oder ⏵⏵ bypass permissions on.

Beobachten Sie die Statusleiste in diesem Clip einer Sitzung, die im Auto-Modus gestartet wurde. Jedes Mal, wenn Sie Shift+Tab drücken, wechselt sie von auto mode on zu manual mode on, accept edits on, plan mode on und zurück zu auto mode on.