SpyBara
Go Premium

permission-modes.md 2026-07-13 23:57 UTC to 2026-07-14 23:01 UTC

165 added, 159 removed.

2026
Wed 15 00:01 Tue 14 23:01 Mon 13 23:57 Sat 11 19:03 Fri 10 17:00 Thu 9 23:58 Wed 8 16:02 Tue 7 16:02 Mon 6 23:57 Sat 4 03:01 Fri 3 23:00 Thu 2 23:59 Wed 1 21: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 oder verwenden Sie den Moduswahlschalter in VS Code, Desktop und claude.ai.

Wenn Claude eine Datei bearbeiten, einen Shell-Befehl ausführen oder eine Netzwerkanfrage stellen möchte, hält es inne und bittet Sie, die Aktion zu genehmigen. Berechtigungsmodi steuern, wie oft diese Pause auftritt. Der Modus, den Sie wählen, prägt den Ablauf einer Sitzung: Der manuelle Modus erfordert, dass Sie jede Aktion überprüfen, während weniger restriktive Modi Claude ermöglichen, in längeren ununterbrochenen Abschnitten zu arbeiten und danach Bericht zu erstatten. Wählen Sie mehr Überwachung für sensible Arbeiten oder weniger Unterbrechungen, wenn Sie der Richtung vertrauen.

Verfügbare Modi

Jeder Modus stellt einen anderen Kompromiss zwischen Benutzerfreundlichkeit und Kontrolle dar. Die folgende Tabelle zeigt, was Claude in jedem Modus ohne Genehmigungsaufforderung tun kann.

Modus Was ohne Nachfrage ausgeführt wird Am besten geeignet für
default Nur Lesevorgänge Erste Schritte, sensible Arbeiten
acceptEdits Lesevorgänge, Dateibearbeitungen und häufige Dateisystembefehle (mkdir, touch, mv, cp usw.) Iteration bei Code-Überprüfung
plan Nur Lesevorgänge Erkundung einer Codebasis vor Änderungen
auto Alles mit Sicherheitsprüfungen im Hintergrund Lange Aufgaben, Reduzierung von Aufforderungsmüdigkeit
dontAsk Nur vorab genehmigte Tools 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". Das Manual-Label und der manual-Alias erfordern Claude Code v2.1.200 oder später. Das Label der Desktop-App hängt nicht von Ihrer CLI-Version ab.

In jedem Modus außer bypassPermissions werden Schreibvorgänge in geschützte Pfade niemals automatisch genehmigt, um den Repository-Status und die Claude-Konfiguration vor versehentlicher Beschädigung zu schützen.

Modi legen die Grundlage fest. Überlagern Sie Berechtigungsregeln darauf, um bestimmte Tools vorab zu genehmigen oder zu blockieren. Ablehnungsregeln und explizite Aufforderungsregeln gelten in jedem Modus, einschließlich bypassPermissions. Genehmigungsregeln haben keine Auswirkung in diesem Modus, da alles andere bereits genehmigt ist.

Berechtigungsmodi wechseln

Sie können Modi während einer Sitzung, beim Start oder als persistente Standardeinstellung wechseln. Der Modus wird über diese Steuerelemente festgelegt, nicht durch Anfragen an Claude im Chat. Wählen Sie Ihre Schnittstelle unten aus, um zu sehen, wie Sie ihn ändern.

Während einer Sitzung: Drücken Sie Shift+Tab, um zwischen defaultacceptEditsplan zu wechseln. Der aktuelle Modus wird in der Statusleiste angezeigt. {/* min-version: 2.1.203 */}Der manuelle Modus, default in diesem Zyklus, zeigt ein graues ⏸ manual mode on Badge. Vor v2.1.203 zeigte die Statusleiste im manuellen Modus kein Badge an.

Nicht jeder Modus ist im Standard-Zyklus enthalten:

  • auto: wird angezeigt, wenn Ihr Konto die Anforderungen für den Auto-Modus erfüllt; das Wechseln zu diesem Modus schaltet Modi ohne Bestätigungsaufforderung um
  • bypassPermissions: wird angezeigt, nachdem Sie mit --permission-mode bypassPermissions, --dangerously-skip-permissions oder --allow-dangerously-skip-permissions starten; die --allow- Variante fügt den Modus zum Zyklus hinzu, ohne ihn zu aktivieren
  • dontAsk: wird nie im Zyklus angezeigt; legen Sie ihn mit --permission-mode dontAsk fest

Aktivierte optionale Modi werden nach plan eingefügt, mit bypassPermissions zuerst und auto zuletzt. Wenn Sie beide aktiviert haben, wechseln Sie durch bypassPermissions auf dem Weg zu auto.

Beim Start: Übergeben Sie den Modus als Flag.

claude --permission-mode plan

Als Standard: Legen Sie defaultMode in Einstellungen fest.

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

Das gleiche --permission-mode Flag funktioniert mit -p für nicht-interaktive Ausführungen.

Dateibearbeitungen mit acceptEdits-Modus automatisch genehmigen

Der acceptEdits-Modus ermöglicht es Claude, Dateien in Ihrem Arbeitsverzeichnis zu erstellen und zu bearbeiten, ohne Sie zu fragen. Die Statusleiste zeigt ⏵⏵ accept edits on an, während dieser Modus aktiv ist.

Zusätzlich zu Dateibearbeitungen genehmigt der acceptEdits-Modus automatisch häufige Bash-Befehle im Dateisystem: mkdir, touch, rm, rmdir, mv, cp und sed. Diese Befehle werden auch automatisch genehmigt, wenn sie mit sicheren Umgebungsvariablen wie LANG=C oder NO_COLOR=1 oder Prozess-Wrappern wie timeout, nice oder nohup vorangestellt sind. Wie bei Dateibearbeitungen gilt die automatische Genehmigung nur für Pfade in Ihrem Arbeitsverzeichnis oder additionalDirectories. Pfade außerhalb dieses Bereichs, Schreibvorgänge auf geschützte Pfade und alle anderen Bash-Befehle erfordern weiterhin eine Genehmigung.

Wenn das PowerShell-Tool aktiviert ist, genehmigt der acceptEdits-Modus auch automatisch Set-Content, Add-Content, Clear-Content und Remove-Item auf Pfaden im Gültigkeitsbereich, zusammen mit ihren häufigen Aliasen. Die gleichen Bereichs- und Schutzpfad-Regeln gelten.

Verwenden Sie acceptEdits, wenn Sie Änderungen in Ihrem Editor oder über git diff im Nachhinein überprüfen möchten, anstatt jede Bearbeitung inline zu genehmigen.

Drücken Sie Shift+Tab einmal vom Manuellen Modus aus, um ihn zu aktivieren, oder starten Sie direkt damit:

claude --permission-mode acceptEdits

Analysieren Sie vor dem Bearbeiten mit dem Plan-Modus

Der Plan-Modus weist Claude an, Änderungen zu recherchieren und vorzuschlagen, ohne sie vorzunehmen. Claude liest Dateien, führt Shell-Befehle aus, um zu erkunden, und schreibt einen Plan, bearbeitet aber nicht Ihre Quelle. Genehmigungsaufforderungen gelten wie im manuellen Modus, es sei denn, der Auto-Modus ist verfügbar und useAutoModeDuringPlan ist aktiviert, was die Standardeinstellung ist. Mit aktiviertem Auto-Modus genehmigt der Klassifizierer schreibgeschützte Befehle wie Suchen und Dateileser ohne Aufforderung. Bearbeitungen bleiben in jedem Fall blockiert, bis Sie den Plan genehmigen.

Geben Sie den Plan-Modus ein, indem Sie Shift+Tab drücken oder einem einzelnen Prompt /plan voranstellen. Sie können auch vom CLI aus im Plan-Modus starten:

claude --permission-mode plan

Drücken Sie Shift+Tab erneut, um den Plan-Modus zu verlassen, ohne einen Plan zu genehmigen.

Überprüfen und genehmigen Sie einen Plan

Wenn der Plan fertig ist, präsentiert Claude ihn und fragt, wie Sie vorgehen möchten. Von dieser Aufforderung aus können Sie:

  • Genehmigen und im Auto-Modus starten
  • Genehmigen und Bearbeitungen akzeptieren
  • Genehmigen und jede Bearbeitung manuell überprüfen
  • Mit Feedback weiter planen
  • Mit Ultraplan für browsergestützte Überprüfung verfeinern

Das Genehmigen eines Plans beendet den Plan-Modus und wechselt die Sitzung zum Genehmigungsmodus, den jede Genehmigungsoption beschreibt, sodass Claude mit der Bearbeitung beginnt. Um erneut zu planen, wechseln Sie mit Shift+Tab zurück zum Plan-Modus oder stellen Sie Ihrem nächsten Prompt /plan voran.

Drücken Sie Ctrl+G, um den vorgeschlagenen Plan in Ihrem Standard-Texteditor zu öffnen und ihn direkt zu bearbeiten, bevor Claude fortfährt. Wenn showClearContextOnPlanAccept aktiviert ist, bietet jede Genehmigungsoption auch an, den Planungskontext zuerst zu löschen.

Das Akzeptieren eines Plans benennt die Sitzung auch automatisch aus dem Planinhalt, es sei denn, Sie haben bereits einen Namen mit --name oder /rename festgelegt.

Legen Sie den Plan-Modus als Standard fest

Um den Plan-Modus als Standard für ein Projekt festzulegen, setzen Sie defaultMode in .claude/settings.json:

{
  "permissions": {
    "defaultMode": "plan"
  }
}

Berechtigungsaufforderungen mit Auto-Modus eliminieren

Der Auto-Modus ermöglicht es Claude, ohne routinemäßige Berechtigungsaufforderungen auszuführen. Ein separates Klassifizierungsmodell überprüft Aktionen vor ihrer Ausführung und blockiert alles, das über Ihre Anfrage hinausgeht, auf nicht erkannte Infrastruktur abzielt oder von feindseligem Inhalt angetrieben zu sein scheint, den Claude gelesen hat. Explizite Ask-Regeln erzwingen weiterhin eine Aufforderung.

Der Auto-Modus ermutigt Claude auch, ohne Unterbrechung für Klärungsfragen weiterzuarbeiten, obwohl Claude immer noch fragt, wenn Ihre Eingabeaufforderung oder eine Fähigkeit dies explizit erfordert. Für stärkeres autonomes Verhalten bei Beibehaltung von Berechtigungsaufforderungen stellen Sie stattdessen den Proaktiven Ausgabestil ein.

Der Auto-Modus ist nur verfügbar, wenn Ihr Konto alle diese Anforderungen erfüllt:

  • Plan: Alle Pläne.
  • Besitzer: Bei Team und Enterprise muss ein Besitzer ihn in den Claude Code Admin-Einstellungen aktivieren, bevor Benutzer ihn einschalten können. Administratoren können den Auto-Modus auch ausschalten, indem sie permissions.disableAutoMode in den verwalteten Einstellungen auf "disable" setzen. Für die Registerkarte „Code" der Desktop-App ist disableAutoMode die Kontrolle auf Organisationsebene, und der Admin-Einstellungen-Schalter gilt nicht.
  • Modell: In der Anthropic API Claude Opus 4.6 oder später oder Sonnet 4.6 oder später. Bei Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und angemeldeten Claude Apps Gateway-Sitzungen nur Claude Sonnet 5, Opus 4.7 und Opus 4.8. Ältere Modelle, einschließlich Sonnet 4.5, Opus 4.5, Haiku und claude-3-Modelle, werden auf keinem Anbieter unterstützt.
  • Anbieter: Standardmäßig verfügbar in der Anthropic API, Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und angemeldeten Claude Apps Gateway-Sitzungen. {/* min-version: 2.1.207 */}In v2.1.158 bis v2.1.206 war der Auto-Modus auf allen diesen Anbietern außer der Anthropic API deaktiviert, bis Sie CLAUDE_CODE_ENABLE_AUTO_MODE=1 setzten; v2.1.207 entfernte die Anforderung.

Wenn Claude Code den Auto-Modus als nicht verfügbar meldet, ist eine dieser Anforderungen nicht erfüllt; dies ist kein vorübergehender Ausfall. Eine separate Nachricht, die ein Modell benennt und sagt, dass der Auto-Modus die Sicherheit einer Aktion „nicht bestimmen kann", ist ein vorübergehender Klassifizierungsausfall; siehe die Fehlerreferenz.

Wenn Sie defaultMode: "auto" in den Einstellungen setzen und die Sitzung im default-Modus ohne Fehler startet, befindet sich die Einstellung wahrscheinlich in .claude/settings.json oder .claude/settings.local.json. Claude Code v2.1.142 und später ignorieren auto aus diesen Dateien, sodass ein Repository sich nicht selbst den Auto-Modus gewähren kann. Verschieben Sie es zu ~/.claude/settings.json.

Auto-Modus auf Bedrock, Agent Platform oder Foundry

Bei Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry und angemeldeten Claude Apps Gateway-Sitzungen wird der Auto-Modus standardmäßig im Shift+Tab-Zyklus angezeigt. Das Erscheinen im Zyklus ändert nicht den Modus, in dem eine Sitzung startet: Sitzungen starten immer noch in Ihrem defaultMode, der Manual ist, es sei denn, Sie ändern ihn. Nur Claude Sonnet 5, Opus 4.7 und Opus 4.8 werden auf diesen Anbietern unterstützt.

Um den Auto-Modus zum Standard-Startmodus zu machen, setzen Sie "permissions": {"defaultMode": "auto"} in Benutzer- oder verwalteten Einstellungen.

Um Entwickler daran zu hindern, den Auto-Modus zu verwenden, setzen Sie disableAutoMode in den verwalteten Einstellungen auf "disable". Dies entfernt auto aus dem Shift+Tab-Zyklus und lehnt --permission-mode auto beim Start ab.

In v2.1.158 bis v2.1.206 war der Auto-Modus auf diesen Anbietern deaktiviert, bis Sie CLAUDE_CODE_ENABLE_AUTO_MODE=1 setzten, und Claude Code ignorierte defaultMode: "auto" auf diesen Anbietern, es sei denn, die Variable war auch gesetzt. Die Variable wird weiterhin aus Kompatibilitätsgründen akzeptiert und hat ab v2.1.207 keine Auswirkung.

Was der Klassifizierer standardmäßig blockiert

Der Klassifizierer vertraut Ihrem Arbeitsverzeichnis und den Remotes, die dafür konfiguriert wurden, als die Sitzung begann. {/* min-version: 2.1.200 */}Ein Remote, das während der Sitzung mit git remote add oder git remote set-url hinzugefügt oder umgeleitet wird, wird nicht vertraut, und alles andere wird als extern behandelt, bis Sie vertrauenswürdige Infrastruktur konfigurieren. Vor v2.1.200 wurden Remotes, die während der Sitzung hinzugefügt wurden, ebenfalls vertraut.

Standardmäßig blockiert:

  • Herunterladen und Ausführen von Code, wie curl | bash
  • Senden sensibler Daten an externe Endpunkte
  • Produktionsbereitstellungen und Migrationen
  • Massenlöschung im Cloud-Speicher
  • Gewährung von IAM- oder Repository-Berechtigungen
  • Änderung gemeinsamer Infrastruktur
  • Irreversibles Löschen von Dateien, die vor der Sitzung vorhanden waren
  • Force Push
  • {/* min-version: 2.1.203 */}Pushing zum Standard-Branch des Repositorys, wenn der Push sensible Inhalte wie Geheimnisse oder persönliche oder anvertraute Daten enthält, Änderungen enthält, die verborgen oder falsch beschrieben sind im Vergleich zu dem, worum Sie gebeten haben, Inhalte enthält, die von außerhalb des Repositorys portiert oder zuerst gelesen wurden, oder um einen Pull Request, eine Überprüfung oder eine Prüfung herumleitet, um die Sie gebeten haben. Ein einfacher Push zum Standard-Branch wird nicht allein blockiert, und das Aufheben der Blockierung eines gekennzeichneten Push erfordert das Benennen des gekennzeichneten Inhalts oder der umgangenen Überprüfung, nicht nur des Push. Der Klassifizierer ist eine Schicht: permissions.deny-Regeln gelten in jedem Modus und können Pushes zum Standard-Branch vollständig blockieren, und der Branch-Schutz des Remote gilt immer noch. Vor v2.1.203 wurde jeder direkte Push zum Standard-Branch blockiert
  • {/* min-version: 2.1.182 */}git reset --hard, git checkout -- ., git restore ., git clean -fd, git stash drop oder git stash clear, von denen der Klassifizierer annimmt, dass sie nicht committete Änderungen verwerfen würden
  • git commit --amend, wenn der Commit am HEAD nicht in dieser Sitzung erstellt wurde
  • {/* min-version: 2.1.198 */}Ab v2.1.198 git commit --amend, wenn der Commit am HEAD bereits gepusht wurde. Eine reine Umformulierung der Nachricht wird nicht blockiert: --amend -m ohne neu bereitgestellte Inhalte, bei einem Commit, den Claude während dieser Sitzung erstellt hat
  • terraform destroy, pulumi destroy, cdk destroy oder terragrunt destroy, und Anwendung eines Plans, der Ressourcen zerstört

Claude Code v2.1.195 und später blockieren standardmäßig mehr Kategorien. Mehrere hängen von Umgebungs-Einträgen ab, wie sensible Remote-Ziele und geschützte IaC-Bereiche, die Sie auf konkrete Namen eingrenzen können.

  • Schreiben in einen Secret Manager oder Ändern von DNS-Einträgen oder TLS-Zertifikaten
  • Zusammenführen eines Pull Requests, den kein Mensch genehmigt hat, Genehmigung von Claudes eigenem Pull Request oder Deaktivierung von CI-Prüfungen
  • Posten eines Kommentars, der selbst ein Befehl für Automatisierung ist, wie atlantis apply oder das /deploy oder /merge eines Bots
  • Umschalten, Ramping oder Löschen eines Production Feature Flags
  • Anwendung von Infrastrukturänderungen auf einen geschützten IaC-Bereich oder Draining (Leeren) und Entfernen von Cluster-Knoten
  • Schreibvorgänge in einen gemeinsamen Compute-Cluster, die über die benannte Ressource hinausgehen, wie ein Label-Selektor oder --all, der die Jobs anderer Benutzer erfasst
  • Erstellen von Kubernetes-Ressourcen, die auf jedem Knoten ausgeführt werden oder Cluster-Traffic abfangen, wie DaemonSets und Admission Webhooks
  • Interaktive Shells oder Port-Forwards in ein sensibles Remote-Ziel
  • Öffnen eines Tunnels oder einer Reverse Shell, die einen lokalen Service vom öffentlichen Internet erreichbar macht
  • Drucken eines Live-Credentials oder Tokens in das Transkript oder eine Datei
  • Zugriff auf einen Ort, der in Ihrer Umgebung als sensible Datenlocation aufgelistet ist, oder Kopieren von Daten daraus. {/* min-version: 2.1.198 */}Ab v2.1.198 blockiert dies auch das Senden von Daten von einem zu einer Zielgruppe, die der Eintrag ausschließt
  • Umleitung einer Paketinstallation um Ihre interne Paketregistrierung zu einer öffentlichen Registrierung. {/* min-version: 2.1.198 */}Ab v2.1.198 gilt dies auch, wenn Sie Claude in der Konversation mitgeteilt haben, dass eine interne Registrierung oder ein Mirror vorhanden ist, nicht nur wenn eine in Ihrer Umgebung aufgelistet ist
  • Ausführung eines Befehls mit einem Flag, das einen Sicherheitsschutz deaktiviert, wie --insecure
  • Starten einer autonomen Agent-Schleife, die ohne menschliche Genehmigung oder Sandbox ausgeführt wird, wie eine mit --dangerously-skip-permissions oder --no-sandbox gestartete. {/* min-version: 2.1.198 */}Ab v2.1.198 deckt dies auch das Ausführen eines Third-Party-Agenten oder Eval-Harness mit deaktivierter Isolation und Pro-Aktion-Genehmigung ab, wie ein mit --yes-always gestarteter Runner
  • Claude in Chrome Browser-Aktionen, die Seiteninhalte, Cookies oder Credentials off-origin senden könnten

Claude Code v2.1.198 und später blockieren diese auch standardmäßig:

  • Löschen von Dateien in /tmp, $TMPDIR oder einem anderen gemeinsamen Scratch- oder Cache-Verzeichnis nach Wildcard, Glob oder Altersfilter statt nach einem spezifischen benannten Pfad
  • Einbeziehung sensibler Details in Inhalte, die gesendet, hochgeladen, veröffentlicht oder an andere Personen oder gemeinsame Systeme geschrieben werden, wenn Ihre eigene Nachricht diese Details nicht für diesen Empfänger autorisiert hat. {/* min-version: 2.1.200 /}PR- und Issue-Bodies, Commit-Nachrichten und Kommentare zählen als diese Art von ausgehendem Inhalt, wenn das Repository außerhalb der Vertrauensgrenze oder öffentlich ist, einschließlich der eigenen öffentlichen Repositorys Ihrer Organisation; interne Dateipfade, Code-Namen, Live-API-Antwortdaten wie E-Mails oder Kontobezeichner und Infrastruktur-Bezeichner zählen als sensible Details. Die PR-, Issue- und Commit-Nachrichten-Scoping erfordert Claude Code v2.1.200 oder später. {/ min-version: 2.1.203 */}Live-Personendaten aus einer API-Antwort in einem PR- oder Issue-Body, wie eine E-Mail-Adresse, ein Konto- oder Organisationsbezeichner oder eine Nutzungsmetrik, erfordert, dass Sie diese Details und den Empfänger benennen, unabhängig von der Sichtbarkeit oder Vertrauensgrenze des Repositorys. Diese Prüfung erfordert Claude Code v2.1.203 oder später
  • Senden von Tastenanschlägen an Claudes eigenen tmux-Pane, um seine eigene Schnittstelle zu steuern, was der Klassifizierer als Claude behandelt, das seine eigenen Berechtigungen oder Aufsicht ändert

Claude Code v2.1.200 und später blockieren diese auch standardmäßig:

  • Auskommentieren, Löschen oder Force-Passing eines Tests oder einer Assertion, die Sicherheitsverhalten schützt, wie Authentifizierung, Zugriffskontrolle, Eingabevalidierung oder Sandboxing
  • Löschen oder Abbau einer zustandsbehafteten Ressource, die Claude nicht in der Sitzung erstellt hat, wenn keine spezifischere Löschregel gilt und Sie diese Ressource nicht benannt haben
  • Umleitung einer API-Basis-URL, eines Proxy-Endpunkts, eines Webhook-Empfängers oder eines Registry-Mirrors auf einen Third-Party-Host, der nicht zur Aufgabe passt, einschließlich in Beispieldateien wie .env.example
  • Änderung des Ziels von Pushes mit git remote set-url oder git remote add, es sei denn, Sie haben den neuen Remote benannt
  • Pushing von Geheimnissen oder persönlichen oder anvertrauten Daten in ein Repository, das bekanntermaßen öffentlich ist, oder Pushing von vertraulichem Material dorthin, das nicht Teil der eigenen Arbeit dieses Repositorys ist. {/* min-version: 2.1.203 */}Das eigene Thema eines Dotfiles-Repositorys ist die einzige Ausnahme für persönliche oder anvertraute Daten, und Inhalte aus einem privaten Repository, die eine öffentliche Oberfläche erreichen, werden auf die gleiche Weise blockiert; beide Verfeinerungen erfordern Claude Code v2.1.203 oder später. Vor v2.1.203 wurden persönliche Daten mit vertraulichem Material gruppiert und nur blockiert, wenn sie nicht Teil der eigenen Arbeit dieses Repositorys waren. Wenn die Sichtbarkeit eines Repositorys nicht etabliert ist, blockiert der Klassifizierer nicht allein darauf; er beurteilt den Inhalt stattdessen gegen die anderen Regeln
  • Öffnen eines Pull Requests gegen ein anderes Repository oder eine andere Organisation, Forking mit gh repo fork oder Pushing in ein Third-Party-Repository, es sei denn, Sie haben dieses externe Ziel benannt

Claude Code v2.1.203 und später blockieren diese auch standardmäßig:

  • Inhalte aus einem sensiblen lokalen Speicher oder aus einer Datei, deren Name, Pfad oder Typ sie als sensibel kennzeichnet, die in einen Commit, einen Push, PR- oder Issue-Text, einen Gist oder Paste oder eine Paketveröffentlichung eingehen, es sei denn, Sie haben sowohl die Quelle als auch das Ziel benannt. Sitzungstranskripte und Konversationsprotokolle, Credential- und Konfigurations-Dot-Ordner wie SSH-Schlüssel, Cloud-Credentials, Browser-Profile und Shell-Verlauf sowie Benutzer-Daten-Exporte zählen alle, und dass das Repository privat ist, hebt die Blockierung nicht auf

Claude Code v2.1.205 und später blockieren diese auch standardmäßig:

  • Schreiben in Claude Code-Sitzungstranskripte, die .jsonl-Verlaufsdateien unter ~/.claude/projects/ oder Ihrem konfigurierten Konfigurationsverzeichnis, ob direkt oder durch einen Shell-Befehl. Die Regel deckt auch die Metadatenzeilen ab, die Claude Code für seine eigenen Prüfungen an jeden Transkripteintrag anhängt. Ein Transkript ist Sitzungszustand, den Claude Code schreibt, nicht eine Arbeitsdatei, und ein manipulierter Eintrag erreicht jede spätere Prüfung, sobald Sie die Sitzung fortsetzen, sodass der Auto-Modus diese Schreibvorgänge als Verteidigungstiefe blockiert. Das Lesen eines Transkripts wird nicht blockiert
  • Ein rekursives erzwungenes Löschen wie rm -rf "$VAR" oder Remove-Item -Recurse -Force $dir, dessen Ziel eine Shell-Variable ist, oder ein Glob, der an einer verwurzelt ist, die nirgendwo in der Konversation zugewiesen ist, die der Klassifizierer sieht. Der Wert kam nur aus früherer Befehlsausgabe, die der Klassifizierer nie erhält, sodass der Klassifizierer das Löschziel nicht gegen die anderen Löschregeln überprüfen kann. Der Klassifizierer liest die Konversation statt der Befehlsausgabe absichtlich, sodass er den Aufruf blockiert, statt das Ziel zu erraten. Die Blockierung wird aufgehoben, wenn Sie den genauen Pfad benennen, der gelöscht wird, oder wenn Claude das Löschen mit dem aufgelösten literalen Pfad, der in den Befehl geschrieben ist, erneut ausführt. Löschvorgänge, deren Ziel der Klassifizierer auflösen kann, sind nicht betroffen

Standardmäßig erlaubt:

  • Lokale Dateivorgänge in Ihrem Arbeitsverzeichnis
  • Installation von Abhängigkeiten, die in Ihren Lock-Dateien oder Manifesten deklariert sind
  • Lesen von .env und Senden von Credentials an ihre entsprechende API
  • Read-Only HTTP-Anfragen
  • Pushing zum Branch, auf dem Sie gestartet haben, oder zu einem, den Claude erstellt hat

Claude Code v2.1.195 und später erlauben diese auch standardmäßig:

  • Löschen der genauen Jobs, die Claude früher in derselben Sitzung erstellt hat
  • Lesen, Überprüfung oder Schreiben von sicherheitsbezogenem Code, Configs und Bedrohungsmodellen als Teil Ihrer Aufgabe
  • Nachrichten zwischen Agenten, die zusammen in derselben Multi-Agent-Sitzung arbeiten
  • Senden von Daten an die vertrauenswürdigen Domains, Buckets und Services, die Sie in environment auflisten. Dies deckt nur Datenfluss ab, nicht destruktive oder Credential-Operationen auf derselben Infrastruktur
  • Claude in Chrome Navigation zu einer vertrauenswürdigen internen Domain, localhost oder einer URL, die Sie benannt haben

Sandbox-Netzwerkzugriff-Anfragen werden durch den Klassifizierer geleitet, statt standardmäßig erlaubt zu werden. {/* min-version: 2.1.198 */}Ab v2.1.198 verwendet der Klassifizierer sein Urteil für einen Netzwerk-Host und Port wieder, statt bei jeder Verbindung erneut auszuführen:

  • Ein Allow wird wiederverwendet, bis neuer Inhalt in die Konversation eintritt, an welchem Punkt dieser Host erneut überprüft wird
  • In der interaktiven CLI wird ein Deny gelöscht, wenn die Runde endet
  • Im nicht-interaktiven Modus und Agent SDK-Sitzungen gibt es keine Rundenbegrenzung, sodass ein Deny für den Rest des Laufs wiederverwendet wird
  • Das Ändern Ihres Berechtigungsmodus oder Ihrer Regeln löscht alle zwischengespeicherten Urteile

Führen Sie claude auto-mode defaults aus, um die vollständigen Regellisten zu sehen. Wenn routinemäßige Aktionen blockiert werden, kann ein Administrator vertrauenswürdige Repos, Buckets und Services über die autoMode.environment-Einstellung hinzufügen: siehe Auto-Modus konfigurieren.

Grenzen, die Sie in der Konversation angeben

Der Klassifizierer behandelt Grenzen, die Sie in der Konversation angeben, als Blocksignal. Wenn Sie Claude sagen „nicht pushen" oder „warten Sie, bis ich überprüfe, bevor Sie bereitstellen", blockiert der Klassifizierer entsprechende Aktionen, auch wenn die Standardregeln sie erlauben würden. Eine Grenze bleibt in Kraft, bis Sie sie in einer späteren Nachricht aufheben. Claudes eigenes Urteil, dass eine Bedingung erfüllt wurde, hebt sie nicht auf.

Grenzen werden nicht als Regeln gespeichert. Der Klassifizierer liest sie bei jeder Prüfung aus dem Transkript erneut, sodass eine Grenze verloren gehen kann, wenn Kontext-Komprimierung die Nachricht entfernt, die sie angegeben hat. Für eine harte Garantie fügen Sie stattdessen eine Deny-Regel hinzu.

Wenn der Auto-Modus zurückfällt

Jede abgelehnte Aktion zeigt eine Benachrichtigung und erscheint in /permissions unter der Registerkarte „Kürzlich abgelehnt", wo Sie r drücken können, um sie mit manueller Genehmigung erneut zu versuchen.

Wenn der Klassifizierer eine Aktion 3-mal hintereinander oder insgesamt 20-mal blockiert, pausiert der Auto-Modus und Claude Code setzt das Prompting fort. Das Genehmigen der aufgeforderten Aktion setzt den Auto-Modus fort. Diese Schwellwerte sind nicht konfigurierbar. Jede erlaubte Aktion setzt den aufeinanderfolgenden Zähler zurück, während der Gesamtzähler für die Sitzung bestehen bleibt und nur zurückgesetzt wird, wenn sein eigenes Limit einen Fallback auslöst.

Im nicht-interaktiven Modus mit dem -p-Flag wird die Sitzung abgebrochen, wenn wiederholte Blockierungen auftreten, da es keinen Benutzer zum Prompting gibt.

Wiederholte Blöcke bedeuten normalerweise, dass dem Klassifizierer Kontext über Ihre Infrastruktur fehlt. Verwenden Sie /feedback, um falsch positive Ergebnisse zu melden, oder lassen Sie einen Administrator vertrauenswürdige Infrastruktur konfigurieren.

Jede Aktion durchläuft eine feste Entscheidungsreihenfolge. Der erste übereinstimmende Schritt gewinnt:
1. Aktionen, die Ihren [Allow- oder Deny-Regeln](/anthropic/claude-code/history/docs/de/2026-07-13-2357..2026-07-14-2301/permissions/#manage-permissions) entsprechen, werden sofort aufgelöst, außer Schreibvorgänge zu [geschützten Pfaden](#protected-paths), die zum Klassifizierer geleitet werden, auch wenn eine Allow-Regel übereinstimmt
2. Read-Only-Aktionen und Dateibearbeitungen in Ihrem Arbeitsverzeichnis werden automatisch genehmigt, außer Schreibvorgänge zu [geschützten Pfaden](#protected-paths)
3. Alles andere geht zum Klassifizierer. {/* min-version: 2.1.199 */}Ab v2.1.199 überspringt ein MCP-Tool, das mit [`_meta["anthropic/requiresUserInteraction"]`](/de/mcp#require-approval-for-a-specific-tool) gekennzeichnet ist, den Klassifizierer und fordert Sie direkt auf, sodass ein Zustimmungsschritt niemals im Namen des Tool-Autors automatisch genehmigt wird
4. Wenn der Klassifizierer blockiert, erhält Claude den Grund und versucht eine Alternative

Beim Eintritt in den Auto-Modus werden breite Allow-Regeln, die willkürliche Code-Ausführung gewähren, gelöscht:

* Pauschal `Bash(*)` oder `PowerShell(*)`
* Wildcard-Interpreter wie `Bash(python*)`
* Package-Manager-Ausführungsbefehle
* `Agent` Allow-Regeln

Enge Regeln wie `Bash(npm test)` werden übernommen. Gelöschte Regeln werden wiederhergestellt, wenn Sie den Auto-Modus verlassen.

Der Klassifizierer sieht Benutzernachrichten, Tool-Aufrufe und Ihren CLAUDE.md-Inhalt. Tool-Ergebnisse werden entfernt, sodass feindselige Inhalte in einer Datei oder Webseite ihn nicht direkt manipulieren können. Ein separater Server-seitiger Probe scannt eingehende Tool-Ergebnisse und kennzeichnet verdächtige Inhalte, bevor Claude sie liest. Weitere Informationen darüber, wie diese Schichten zusammenarbeiten, finden Sie in der [Auto-Modus-Ankündigung](https://claude.com/blog/auto-mode) und dem [Engineering Deep Dive](https://www.anthropic.com/engineering/claude-code-auto-mode).
Wie der Auto-Modus Subagenten handhabt

Der Klassifizierer überprüft Subagenten-Arbeit an drei Punkten:

  1. Bevor ein Subagent startet, wird die delegierte Aufgabenbeschreibung bewertet, sodass eine gefährlich aussehende Aufgabe beim Spawn blockiert wird.
  2. Während der Subagent läuft, durchläuft jede seiner Aktionen den Klassifizierer mit den gleichen Regeln wie die übergeordnete Sitzung, und jeder permissionMode in der Frontmatter des Subagenten wird ignoriert.
  3. Wenn der Subagent fertig ist, überprüft der Klassifizierer seine vollständige Aktionshistorie; wenn diese Rückgabeprüfung ein Problem kennzeichnet, wird eine Sicherheitswarnung den Ergebnissen des Subagenten vorangestellt.

Schritt 1 erfordert Claude Code v2.1.178 oder später. Frühere Versionen wendeten den Klassifizierer in den Schritten 2 und 3 an, bewerteten aber die Aufgabenbeschreibung nicht, bevor der Subagent startete.

Kosten und Latenz

Der Klassifizierer läuft auf einem Server-konfigurierten Modell, das unabhängig von Ihrer /model-Auswahl ist, sodass das Wechseln von Modellen die Klassifizierer-Verfügbarkeit nicht ändert. Klassifizierer-Aufrufe zählen zu Ihrer Token-Nutzung. Jede Prüfung sendet einen Teil des Transkripts plus die ausstehende Aktion und fügt eine Hin- und Rückfahrt vor der Ausführung hinzu. Lesevorgänge und Arbeitsverzeichnis-Bearbeitungen außerhalb geschützter Pfade überspringen den Klassifizierer, sodass der Overhead hauptsächlich von Shell-Befehlen und Netzwerkoperationen kommt. {/* min-version: 2.1.198 */}Ab v2.1.198 wird ein Sandbox-Netzwerk-Urteil für einen Host und Port wiederverwendet, statt bei jeder Verbindung neu klassifiziert zu werden, sodass wiederholte Verbindungen zum gleichen Host nicht jeweils eine Prüfung hinzufügen. Was der Klassifizierer standardmäßig blockiert beschreibt, wie lange ein Allow und ein Deny dauern.

Nur vorab genehmigte Tools mit dontAsk-Modus zulassen

Der dontAsk-Modus lehnt automatisch jeden Tool-Aufruf ab, der sonst zu einer Eingabeaufforderung führen würde. Die Statusleiste zeigt ⏵⏵ don't ask on, während dieser Modus aktiv ist. Nur Aktionen, die Ihren permissions.allow-Regeln und schreibgeschützten Bash-Befehlen entsprechen, können ausgeführt werden; explizite ask-Regeln werden abgelehnt, anstatt zu einer Eingabeaufforderung zu führen. {/* min-version: 2.1.199 */}Ab v2.1.199 wird ein MCP-Tool, das mit _meta["anthropic/requiresUserInteraction"] gekennzeichnet ist, auch in diesem Modus abgelehnt, selbst wenn eine Allow-Regel damit übereinstimmt, da die Genehmigungskarte eine Antwort benötigt, die dieser Modus nie erfasst. Dies macht den Modus vollständig nicht-interaktiv für CI-Pipelines oder eingeschränkte Umgebungen, in denen Sie genau vordefinieren, was Claude tun darf. Cloud-Sitzungen auf Claude Code im Web ignorieren defaultMode: "dontAsk"; siehe bypassPermissions für Details.

Legen Sie es beim Start mit dem Flag fest:

claude --permission-mode dontAsk

Alle Überprüfungen mit dem Modus bypassPermissions überspringen

Der Modus bypassPermissions deaktiviert Berechtigungsaufforderungen und Sicherheitsüberprüfungen, sodass Werkzeugaufrufe sofort ausgeführt werden. Ab v2.1.126 umfasst dies auch Schreibvorgänge in geschützte Pfade, für die frühere Versionen noch Aufforderungen angezeigt haben. Explizite ask-Regeln erzwingen in diesem Modus weiterhin eine Aufforderung, und Löschvorgänge, die das Dateisystem-Stammverzeichnis oder das Home-Verzeichnis betreffen, wie rm -rf / und rm -rf ~, lösen weiterhin als Schutzmaßnahme gegen Modellfehler eine Aufforderung aus. {/* min-version: 2.1.199 */}Ab v2.1.199 lösen auch MCP-Werkzeuge, die mit _meta["anthropic/requiresUserInteraction"] gekennzeichnet sind, weiterhin eine Aufforderung aus. Verwenden Sie diesen Modus nur in isolierten Umgebungen wie Containern, VMs oder Dev-Containern ohne Internetzugang, in denen Claude Code Ihr Host-System nicht beschädigen kann.

Sie können bypassPermissions nicht aus einer Sitzung eingeben, die ohne eines der aktivierenden Flags gestartet wurde. Starten Sie mit einem Flag neu, um es zu aktivieren:

claude --permission-mode bypassPermissions

Das Flag --dangerously-skip-permissions ist gleichwertig.

Unter Linux und macOS weigert sich Claude Code, in diesem Modus zu starten, wenn es als Root oder unter sudo ausgeführt wird:

--dangerously-skip-permissions cannot be used with root/sudo privileges for security reasons

Die Überprüfung wird automatisch in einer erkannten Sandbox übersprungen. Um autonom in einem Container zu laufen, verwenden Sie die Dev-Container-Konfiguration, die Claude Code als Nicht-Root-Benutzer ausführt.

Claude Code im Web berücksichtigt defaultMode: "bypassPermissions" oder "dontAsk" aus Ihren Einstellungsdateien nicht, daher können die eingecheckten Einstellungen eines Repositorys keine Cloud-Sitzung im Bypass-Permissions-Modus starten. Die Einstellung wird stillschweigend ignoriert und die Sitzung startet im Modus, der in der Modus-Dropdown angezeigt wird. Siehe Berechtigungsmodi wechseln, welche Modi Cloud-Sitzungen bieten.

Geschützte Pfade

Schreibvorgänge in eine kleine Anzahl von Pfaden werden niemals automatisch genehmigt, in jedem Modus außer bypassPermissions. Dies verhindert versehentliche Beschädigungen des Repository-Status und der eigenen Konfiguration von Claude.

Modus Schreibvorgänge in geschützten Pfaden
default, acceptEdits, plan Abgefragt
auto An den Klassifizierer weitergeleitet
dontAsk Verweigert
bypassPermissions Erlaubt

permissions.allow Regeln in Einstellungsdateien genehmigen Schreibvorgänge in geschützten Pfaden nicht im Voraus. Die Sicherheitsprüfung wird ausgeführt, bevor Claude Code die Allow-Regeln aus den Einstellungen auswertet, daher ändert ein Eintrag wie Edit(.claude/**) in ~/.claude/settings.json oder .claude/settings.json das Ergebnis pro Modus in der obigen Tabelle nicht. In Modi, die abfragen, bietet die Eingabeaufforderung für einen .claude/ Schreibvorgang Ja, und Claude darf seine eigenen Einstellungen für diese Sitzung bearbeiten, was spätere .claude/ Schreibvorgänge in dieser Sitzung genehmigt, ohne erneut abzufragen.

Geschützte Verzeichnisse:

  • .git
  • .config/git
  • .vscode
  • .idea
  • .husky
  • .cargo
  • .devcontainer
  • .yarn
  • .mvn
  • .claude, außer .claude/worktrees, wo Claude seine eigenen Git-Worktrees speichert

Geschützte Dateien:

  • .gitconfig, .gitmodules
  • .bashrc, .bash_profile, .bash_login, .bash_aliases, .bash_logout, .zshrc, .zprofile, .zshenv, .zlogin, .zlogout, .profile, .envrc
  • .npmrc, .yarnrc, .yarnrc.yml, .pnp.cjs, .pnp.loader.mjs, .pnpmfile.cjs, bunfig.toml, .bunfig.toml
  • .bazelrc, .bazelversion, .bazeliskrc
  • .pre-commit-config.yaml, lefthook.yml, lefthook.yaml, .lefthook.yml, .lefthook.yaml
  • gradle-wrapper.properties, maven-wrapper.properties
  • .devcontainer.json
  • .ripgreprc, pyrightconfig.json
  • .mcp.json, .claude.json

Siehe auch

  • Berechtigungen: allow-, ask- und deny-Regeln; verwaltete Richtlinien
  • Auto-Modus konfigurieren: teilen Sie dem Klassifizierer mit, welche Infrastruktur Ihre Organisation vertraut
  • Hooks: benutzerdefinierte Berechtigungslogik über PreToolUse und PermissionRequest Hooks
  • Ultraplan: führen Sie Plan Mode in einer Claude Code-Websitzung mit browsergestützter Überprüfung aus
  • Sicherheit: Schutzmaßnahmen und Best Practices
  • Sandboxing: Dateisystem- und Netzwerkisolation für Bash-Befehle
  • Nicht-interaktiver Modus: führen Sie Claude Code mit dem Flag -p aus