Skip to main content
Einstellungen sind JSON-Schlüssel, die ändern, wie Claude Code sich verhält: welches Modell es startet, was es ohne Nachfrage ausführen kann, welche Dateien es nicht lesen kann, wie es in Ihrem Terminal aussieht, und was Ihre Organisation erzwingt.
Um einen bestimmten Schlüssel nachzuschlagen, gehen Sie zu Alle Einstellungen, die jeden Schlüssel mit der Datei, in der Sie ihn setzen, seinem Standard und einem Beispiel auflistet.
Claude Code liest Einstellungen aus JSON-Einstellungsdateien wie ~/.claude/settings.json. Es sucht an einigen Stellen danach, und die Datei, aus der es eine Einstellung liest, entscheidet, für wen die Einstellung gilt. Diese Seite behandelt diese Dateien: in welche man eine Einstellung setzt, wie man eine Einstellung ändert und bestätigt, dass sie angewendet wurde, und welchen Wert Claude Code verwendet, wenn derselbe Schlüssel in mehr als einer Datei gesetzt ist. Berechtigungen konfigurieren behandelt, was Claude Code ohne Nachfrage ausführen kann und wie man allow, ask und deny Regeln schreibt.
Diese Seite behandelt Claude Code, das auf Ihrer Maschine läuft: das Terminal, die VS Code und JetBrains Erweiterungen und die Desktop-App, die alle die gleichen Einstellungsdateien lesen. Eine Cloud-Sitzung auf Claude Code im Web läuft auf einer anderen Maschine und liest nur einige davon; siehe Einstellungen in Cloud-Sitzungen.

Einstellungsdateien und wer sie betreffen

Claude Code liest Einstellungen aus vier Dateien, und eine Organisation kann auch verwaltete Einstellungen von der claude.ai-Konsole bereitstellen. Jede Quelle hat einen Bereich: die Menge von Personen und Projekten, auf die eine in ihr gespeicherte Einstellung angewendet wird, ob das nur Sie, alle in einem Projekt oder alle in Ihrer Organisation sind. In der Spalte Datei ist ~/.claude der .claude Ordner in Ihrem Home-Verzeichnis, und ein bloßes .claude ist der .claude Ordner in Ihrem Projekt.

Vergleichen Sie den Bereich jeder Einstellungsdatei

Angenommen, Sie haben drei Projekte auf Ihrer Maschine, website/, api/ und acme-app/, ein Teamkollege hat seinen eigenen Klon von acme-app/, und Sie starten eine Cloud-Sitzung auf acme-app/. Die Grafik unten zeigt, in welchen dieser Ordner eine Einstellung angewendet wird, wenn Sie Claude Code von ihnen aus starten. Klicken Sie auf eine Einstellungsdatei, um die Ordner zu sehen, die sie erreicht.
  • ~/.claude/settings.json: jedes Projekt auf Ihrer Maschine, und nichts auf der Ihres Teamkollegen oder in der Cloud-Sitzung
  • acme-app/.claude/settings.json: Ihr acme-app/. Es erreicht den Klon Ihres Teamkollegen und die Cloud-Sitzung nur, wenn Sie die Datei in die Versionskontrolle committen; bis dahin ist es eine Datei auf Ihrer Festplatte wie jede andere und niemand sonst hat sie
  • acme-app/.claude/settings.local.json: nur Ihr acme-app/. Claude Code fügt es zu Ihren globalen Git-Ausschlüssen hinzu, wenn es die Datei zum ersten Mal schreibt, sodass es aus Ihren Commits herausbleibt; wenn Sie die Datei von Hand erstellen, fügen Sie sie selbst zu .gitignore hinzu
  • Verwaltete Einstellungen, ob eine managed-settings.json Datei, eine MDM-Richtlinie oder serververwaltete Einstellungen von der claude.ai-Konsole: jedes Projekt auf jeder Maschine, für die Ihre Organisation es bereitstellt, oder auf die Sie sich mit Ihrem Organisationskonto anmelden. Nur serververwaltete Einstellungen erreichen die Cloud-Sitzung

Finden oder erstellen Sie Ihre Einstellungsdateien

Die Installation von Claude Code erstellt keine Einstellungsdatei. Wenn Ihre Maschine oder Ihr Projekt bereits eine hat, kam sie aus einer dieser Quellen:
  • Verwaltet: Ihre Organisation stellt sie bereit. Sie erstellen oder bearbeiten sie nicht.
  • Gemeinsames Projekt: Ein Projekt, das bereits Claude Code verwendet, kann eine eingecheckte haben. Wenn nicht, erstellen Sie eine unter .claude/settings.json im Projektordner.
  • Benutzer und Projekt lokal: Erstellen Sie sie selbst, oder lassen Sie Claude Code sie erstellen. Es schreibt ~/.claude/settings.json das erste Mal, wenn Sie eine Option im /config Menü ändern, die es in Benutzereinstellungen speichert, wie das Design, und .claude/settings.local.json das erste Mal, wenn Sie eine stehende Genehmigung auf einer Berechtigungsaufforderung geben, wie “Ja, und frag mich nicht mehr” für einen Bash-Befehl. Ein paar /config Optionen, einschließlich Tipps anzeigen, speichern stattdessen in .claude/settings.local.json.
Unter Windows bedeutet ~/.claude %USERPROFILE%\.claude. Um die Home-Verzeichnis-Dateien woanders zu behalten, setzen Sie CLAUDE_CONFIG_DIR; Claude Code speichert dann Ihre Einstellungen, Sitzungsverlauf und Plugins dort statt.
Claude Code behält auch eine fünfte Datei, ~/.claude.json, die es für sich selbst schreibt; Sie müssen sie nicht bearbeiten. Sie enthält Ihre Anmeldungssitzung, MCP-Server Konfigurationen, projektbezogenen Status wie Vertrauensentscheidungen, und die globalen Konfigurationsschlüssel, die /config für Sie schreibt.

Teilen Sie Einstellungen mit Ihrem Team

Committen Sie .claude/settings.json, damit jeder, der das Repository klont, die gleichen Berechtigungen, Hooks, Telemetrie und Plugins bekommt. Jeder Teamkollege kann es immer noch für sich selbst in seiner eigenen .claude/settings.local.json überschreiben, sodass persönliche Ausnahmen keinen Commit benötigen. Für eine vollständige Team-Datei, siehe Gemeinsame Einstellungen eines Teams. Einiges von dem, das Sie committen, wartet, bis jeder Teamkollege den Ordner vertraut, und ein paar Schlüssel wirken sich nie von einer Repository-Datei aus; Beheben Sie eine Einstellung, die nicht angewendet wird behandelt beide.

Halten Sie persönliche Einstellungen aus einem Repository heraus

Um eine Einstellung für sich selbst in einem Projekt zu ändern, ohne sie für Ihre Teamkollegen zu ändern, speichern Sie sie in .claude/settings.local.json im Projekt. Claude Code wendet diese Datei über die eingecheckte .claude/settings.json an, sodass wenn die Datei Ihres Teams "model": "claude-sonnet-5" setzt und Sie Opus wollen, setzen Sie "model": "claude-opus-4-8" in Ihre lokale Datei und nur Ihre Sitzungen ändern. Drei Dinge, die Sie über die lokale Datei wissen sollten:
  • Claude Code schreibt sie auch. Wenn Claude Sie fragt, einen Bash-Befehl auszuführen und Sie “Ja, und frag mich nicht mehr” wählen, speichert Claude Code diese Berechtigungsgenehmigung hier als allow Regel.
  • Sie müssen sie nicht selbst gitignorieren, es sei denn, Sie haben sie von Hand erstellt. Das erste Mal, wenn Claude Code die Datei in einem Git-Repository schreibt, das sie nicht bereits ignoriert, fügt es **/.claude/settings.local.json zu Ihrer globalen Git-Ausschluss-Datei hinzu, sodass die Datei in jedem Repository aus Ihren Commits herausbleibt. Diese Datei ist core.excludesFile, wenn Ihre globale Git-Konfiguration sie auf einen absoluten oder ~-präfixierten Pfad setzt; ansonsten ist es $XDG_CONFIG_HOME/git/ignore, oder ~/.config/git/ignore, wenn XDG_CONFIG_HOME nicht gesetzt ist. Wenn Sie die Datei von Hand erstellt haben und Claude Code noch nicht darin geschrieben hat, fügen Sie sie selbst zu .gitignore hinzu.
  • Seine Allow-Regeln warten nicht auf Vertrauen, während die Datei nicht verfolgt bleibt. Weil die Datei Ihnen gehört und nicht dem Repository, wendet Claude Code ihre allow Regeln ohne den Workspace-Vertrauens-Schritt an, den es für die eingecheckte Datei erfordert. Wenn die Datei von Git verfolgt wird, gilt der Vertrauensschritt auch für sie; siehe Wenn Ihre lokale Einstellungsdatei Vertrauen benötigt.

Wo Claude Code die lokale Datei in einem Git-Repository behält

Wenn Claude Sie fragt, einen Bash-Befehl auszuführen und Sie “Ja, und frag mich nicht mehr” wählen, speichert Claude Code diese Genehmigung als allow Regel in .claude/settings.local.json. Wenn Sie Claude Code in einem Unterverzeichnis eines Git-Repositorys starten, liest und schreibt es diese Datei im Repository-Root und wendet die Genehmigung auf das ganze Repository an. In einem Worktree verwendet es die Datei im Root des Haupt-Checkouts. Zwei Regeln qualifizieren den Root-Speicherort:
  • Wenn die Datei stattdessen bei .claude/settings.json bleibt: außerhalb eines Git-Repositorys, wenn der Repository-Root Ihr Home-Verzeichnis ist, unter Windows, oder wenn der Repository-Root oder sein .git oder .claude Eintrag nicht Ihrem Benutzer gehört.
  • Pfade in der Datei verankern nicht im Repository-Root: eine Berechtigungsregel, die mit / beginnt oder ein relativer Sandbox-Pfad verankert stattdessen im primären Arbeitsverzeichnis der Sitzung.
Vor v2.1.211 behielt Claude Code die Datei im Startverzeichnis. Es liest immer noch eine Datei, die eine frühere Version dort neben der Root-Datei hinterlassen hat; wo beide den gleichen Schlüssel setzen, gilt der Wert des Root, und Berechtigungsregeln aus beiden Dateien gelten. Der Agent SDK’s resolveSettings() Helper liest die Datei immer aus dem Startverzeichnis. Claude Code liest die gemeinsame .claude/settings.json aus dem primären Arbeitsverzeichnis der Sitzung, sodass um eine Datei zu verwenden, die im Repository-Root eingecheckt ist, starten Sie Claude Code dort. Nachdem Sie die Sitzung mit /cd verschieben, liest Claude Code beide Projektdateien stattdessen aus dem neuen Verzeichnis, wobei die lokale Datei nach den gleichen Regeln platziert wird. Das Lesen von ihnen aus dem Verzeichnis, zu dem Sie verschoben haben, erfordert Claude Code v2.1.246 oder später.

Überprüfen Sie, was Ihre Organisation erzwingt

Wenn Ihre Organisation Claude Code verwaltet, werden einige Einstellungen für Sie entschieden und nichts, das Sie in Ihre eigenen Dateien setzen, ändert sie. Um zu sehen, welche, führen Sie /status aus: die Zeile Setting sources nennt die verwaltete Quelle, die auf Sie angewendet wird. Verwaltete Einstellungen gelten überall dort, wo Claude Code auf dieser Maschine läuft; Was ein Entwickler ändern kann behandelt lokale Admin-Rechte und Tools außer Claude Code. Verwaltete Einstellungen erreichen Sie durch die Bereitstellungsmechanismen auf der Seite für verwaltete Einstellungen, am häufigsten: In einer Cowork Sitzung, die auf Ihrer Maschine in der Claude Desktop-App läuft, ruft Claude Code keine serververwalteten Einstellungen von der claude.ai Admin-Konsole ab, und es liest Richtlinien, die auf Ihrem Gerät bereitgestellt sind, es sei denn, die Claude Desktop-Konfiguration Ihrer Organisation setzt requireCoworkFullVmSandbox. Wo und wann eine Richtlinie angewendet wird behandelt Cowork und Cloud-Sitzungen. Wenn Sie der Administrator sind, Richten Sie Claude Code für Ihre Organisation ein führt Sie durch die Auswahl dessen, was Sie erzwingen, und Stellen Sie verwaltete Einstellungen bereit behandelt Bereitstellung und wie Sie bestätigen, dass eine Richtlinie wirksam ist.

Ändern Sie eine Einstellung

Sie können eine Einstellung vom /config Menü, durch Bearbeiten einer Einstellungsdatei oder für eine Sitzung von der Befehlszeile aus ändern. Claude Code’s Systemaufforderung wird nicht veröffentlicht. Um Claude stehende Anweisungen zu geben, verwenden Sie CLAUDE.md Dateien oder das Flag --append-system-prompt.

Verwenden Sie das /config Menü

Führen Sie /config in Claude Code aus und öffnen Sie die Registerkarte Config. Es listet eine kurze Menge persönlicher Optionen wie Design, Editor-Modus und ausführliche Ausgabe auf, nicht jeden Einstellungsschlüssel. Wählen Sie eine Option, um sie zu ändern; Claude Code speichert sie für Sie:
  • Die meisten Optionen: ~/.claude/settings.json
  • Ein paar Optionen, wie Tipps anzeigen: .claude/settings.local.json
  • Die globalen Konfigurationsoptionen: ~/.claude.json
Um eine Option ohne das Menü zu setzen, übergeben Sie key=value, wie /config verbose=true.
/config ist Teil der Terminal-Schnittstelle. Das VS Code Chat-Panel und die Desktop-App öffnen es nicht; ändern Sie Einstellungen dort durch Bearbeiten einer Einstellungsdatei oder durch die Einstellungen dieser Apps.

Bearbeiten Sie eine Einstellungsdatei

Öffnen Sie die Einstellungsdatei für den Bereich, den Sie möchten, in Ihrem Editor und fügen Sie einen Schlüssel hinzu oder ändern Sie ihn. Einstellungsdateien sind striktes JSON: ein // Kommentar oder ein nachfolgendes Komma ist ein Syntaxfehler, und Claude Code meldet die Datei als Einstellungsfehler beim nächsten Start. Um beispielsweise Claude Code Ihre Lint- und Test-Befehle ohne Nachfrage ausführen zu lassen und es daran zu hindern, .env Dateien zu lesen, fügen Sie dies zu ~/.claude/settings.json hinzu:
~/.claude/settings.json
Jeder Eintrag unter permissions ist eine Regel, die ein Tool und das, was es darf, benennt; Berechtigungen konfigurieren erklärt die Syntax. Die Zeile $schema verweist auf das veröffentlichte JSON-Schema für Claude Code-Einstellungen, das Ihnen Autovervollständigung und Inline-Validierung in VS Code, Cursor und jedem anderen Editor gibt, der JSON-Schema unterstützt. Das Schema kann hinter den neuesten CLI-Versionen zurückbleiben, sodass eine Validierungswarnung auf einem kürzlich dokumentierten Schlüssel nicht bedeutet, dass Ihre Konfiguration ungültig ist. Nachdem Sie speichern, führen Sie /status in Claude Code aus, um zu bestätigen, dass die Datei geladen wurde; Bestätigen Sie, was geladen wurde sagt, was die Zeile Setting sources zeigt und wie eine fehlerhafte Datei gemeldet wird. Für eine vollständige persönliche Datei, Team-Datei und Organisations-Datei, jeweils mit einem Kommentar zu jedem Schlüssel, den sie setzt, siehe die Beispiel-Einstellungsdateien.

Ändern Sie eine Einstellung für eine Sitzung

Um einen Wert zu versuchen, ohne ihn zu speichern, setzen Sie ihn, wenn Sie Claude Code starten. Der Wert gilt für diese Sitzung und Ihre Einstellungsdateien bleiben wie sie waren. Sie haben drei Möglichkeiten, es zu tun:
  • --settings: übergeben Sie einen Schlüssel als JSON, inline oder als Pfad zu einer Datei. Claude Code wendet ihn über Ihre Benutzer-, Projekt- und lokalen Dateien und unter verwalteten Einstellungen an. Es kann jeden Schlüssel setzen, den Ihre Benutzereinstellungsdatei kann; es kann keine Managed oder Global config Schlüssel setzen.
  • Ein Flag für diesen Schlüssel: einige Schlüssel haben ihr eigenes Flag, wie --model für model und --effort für effortLevel und modelSettings.
  • Eine Umgebungsvariable: exportieren Sie die gepaarte Variable des Schlüssels, bevor Sie claude ausführen, wie ANTHROPIC_MODEL für model.
Jeder Eintrag des Schlüssels auf der Einstellungsreferenz listet seine Überschreibungen pro Sitzung und welche Vorrang hat auf, also überprüfen Sie den Eintrag für den Schlüssel, den Sie ändern möchten. Befehle, die Sie in einer Sitzung ausführen, speichern meist Ihre Wahl: /config schreibt in Ihre Einstellungsdateien, /model speichert den Wert als Ihren Standard für neue Sitzungen, und /effort auf Ihrer Maschine speichert die Stufe als Ihren Standard für das Modell, das Sie verwenden. Wenn Sie s im /model Picker drücken, wechselt Claude Code das Modell, ohne es als Ihren Benutzer-Standard zu speichern. Claude Code wendet einige /effort Stufen, wie max und ultracode, nur auf die aktuelle Sitzung an; siehe Passen Sie die Anstrengungsstufe an. Um beispielsweise eine Sitzung auf Opus zu starten, ohne Ihren Standard zu ändern:

Wenn Änderungen wirksam werden

Claude Code überwacht Ihre Einstellungsdateien und lädt sie neu, wenn sie sich ändern, sodass es die meisten Änderungen auf die laufende Sitzung ohne Neustart anwendet, einschließlich Änderungen an permissions, hooks und Anmeldedaten-Helfern wie apiKeyHelper. Das Neuladen behandelt Benutzer-, Projekt-, lokale und verwaltete Einstellungen, und Claude Code führt den ConfigChange Hook für jede erkannte Einstellungsdatei-Änderung aus, nicht für verwaltete Einstellungen, die von MDM oder der claude.ai-Konsole ankommen. Verwaltete Einstellungen, die von MDM oder der claude.ai-Konsole ankommen, erreichen eine laufende Sitzung nach einem Zeitplan statt sofort; die Bereitstellungstabelle gibt ihn pro Quelle an. Claude Code liest einige Schlüssel nur einmal, beim Sitzungsstart, sodass eine Änderung an einem von ihnen die laufende Sitzung nicht erreicht. Admin-seitige Schlüssel, die auch auf einen Neustart warten, wie requiredMinimumVersion, sind unter wo und wann eine Richtlinie angewendet wird aufgelistet. Die, die Sie am ehesten mid-Sitzung bearbeiten:
  • model: verwenden Sie /model, um mid-Sitzung zu wechseln. Jedes Modell hat seinen eigenen Prompt-Cache, sodass die erste Anfrage nach einem Wechsel das ganze Gespräch ungecacht erneut liest; siehe Wechsel von Modellen
  • effortLevel und modelSettings: verwenden Sie /effort, um Anstrengung mid-Sitzung zu ändern

Bestätigen Sie, was geladen wurde

Führen Sie /status in Claude Code aus, um zu sehen, welche Einstellungsquellen aktiv sind. Die Registerkarte Status enthält eine Zeile Setting sources, die jede Einstellungsdatei auflistet, die Claude Code für die aktuelle Sitzung geladen hat, wie User settings oder Project local settings. Wenn verwaltete Einstellungen wirksam sind, zeigt der Eintrag für verwaltete Einstellungen in Klammern, wie sie Ihre Maschine erreicht haben. Die Zeile bestätigt, welche Dateien Claude Code gelesen hat; sie zeigt nicht, welche Datei jeden Schlüssel bereitgestellt hat. Um Einträge aufzulisten, die Claude Code abgelehnt hat, führen Sie claude doctor aus; für ein Modell, das Projekt- oder verwaltete Einstellungen setzen, nennt der Startup-Header die Datei, die es gesetzt hat. /status und /config öffnen den gleichen Dialog auf verschiedenen Registerkarten, und die Registerkarte Config ist keine Ansicht Ihrer settings.json Inhalte.

Beheben Sie eine fehlerhafte Einstellungsdatei

Wenn Sie JSON falsch tippen oder einen Schlüssel auf einen Wert setzen, den Claude Code nicht akzeptiert, teilt Claude Code Ihnen dies am Anfang einer interaktiven Sitzung mit. Was es zeigt, hängt davon ab, wie viel der Datei betroffen ist:
  • Einstellungsfehler: eine Benutzer-, Projekt- oder lokale Datei hat ungültiges JSON oder einen Wert, den das Schema ablehnt. Am Anfang einer interaktiven Sitzung zeigt Claude Code einen Dialog, der Ihnen erlaubt, die Datei mit Claudes Hilfe zu beheben, zu beenden oder ohne die fehlerhaften Einstellungen fortzufahren.
  • Einstellungswarnung: nur einzelne Einträge schlagen fehl, wie eine fehlerhafte Berechtigungsregel oder ein unbekannter Hook-Ereignisname. Claude Code überspringt diese Werte und behält den Rest der Datei wirksam.
  • Verwaltete Einstellungen: Claude Code erzwingt weiterhin den Rest der Datei. Ungültige Einträge in verwalteten Einstellungen sagt, was es ablegt und welche Schlüssel auf einen strengeren Wert zurückfallen, bis Sie sie beheben. Für ein verwaltetes Einstellungsdokument, das nicht gültiges JSON ist, siehe Verwaltetes Einstellungsdokument konnte nicht analysiert werden.
  • Konfigurationsfehler: ~/.claude.json kann nicht analysiert werden. Claude Code kopiert die fehlerhafte Datei zu ~/.claude/backups/.claude.json.corrupted.<timestamp> und fragt, ob Sie beenden und sie von Hand beheben oder auf die Standardkonfiguration zurücksetzen möchten; ein -p Lauf druckt den Fehler und beendet. Um Ihren vorherigen Status wiederherzustellen, kopieren Sie eine der fünf neuesten .claude.json.backup.<timestamp> Dateien in ~/.claude/backups/ zurück, die Claude Code vor dem Schreiben der Datei speichert.
Nachdem Sie fortfahren, führen Sie /status aus, um die betroffenen Dateien zu sehen, und claude doctor für die Details jedes Fehlers. Ein -p Lauf zeigt keinen Dialog. Es sei denn, ein verwaltetes Einstellungsdokument kann nicht analysiert werden, überspringt Claude Code die fehlerhafte Datei oder Werte und fährt mit dem Rest fort, sodass nach einem -p Lauf, der eine Einstellung ignoriert, claude doctor ausführen, um zu sehen, was es abgelegt hat.

Einstellungspriorität

Wenn der gleiche Schlüssel an mehr als einer Stelle erscheint, verwendet Claude Code den Wert aus der höchsten Ebene, die ihn setzt. Der Stapel unten zeigt die Ebenen, höchste oben; ein Schlüssel auf einer höheren Ebene überschreibt den gleichen Schlüssel überall darunter. In Reihenfolge, höchste Priorität zuerst:
  1. Verwaltete Einstellungen: Einstellungen, die Ihre Organisation bereitstellt, durch eine managed-settings.json Datei, eine MDM-Richtlinie oder serververwaltete Einstellungen von der claude.ai-Konsole. Nichts, das Sie setzen, überschreibt sie: ein Schlüssel, den Sie mit --settings übergeben, überschreibt nicht den gleichen verwalteten Schlüssel, und ein Flag wie --model wählt nur aus den Modellen, die Ihre Organisation erlaubt. Ein verwaltetes model setzt das Modell, mit dem jede Sitzung startet, und Sie können immer noch mit /model wechseln; die Sperre ist availableModels, die /model, --model und den model Schlüssel in Ihren eigenen Dateien einschränkt. Wenn Ihre Organisation mehr als eine verwaltete Quelle bereitstellt, sagen die Regeln für Priorität innerhalb der verwalteten Ebene, was Claude Code aus jeder liest.
  2. Befehlszeilenargumente: Flags, die Sie übergeben, wenn Sie claude von einem Terminal aus starten, für eine Sitzung; siehe Ändern Sie eine Einstellung für eine Sitzung. Claude Code führt JSON, das Sie mit --settings <file-or-json> übergeben, mit Ihren Einstellungsdateien nach den gleichen Regeln wie die anderen Ebenen zusammen: es nimmt einen Schlüssel, den Sie hier setzen, über den gleichen Schlüssel in lokalen, Projekt- oder Benutzereinstellungen, und behält den Wert der niedrigeren Ebene für einen Schlüssel, den Sie weglassen.
  3. Projekt-lokale Einstellungen (.claude/settings.local.json): Ihre persönlichen Einstellungen für dieses Projekt.
  4. Gemeinsame Projekt-Einstellungen (.claude/settings.json): Einstellungen, die Ihr Team in die Versionskontrolle eincheckt.
  5. Benutzer-Einstellungen (~/.claude/settings.json): Ihre persönlichen Einstellungen für jedes Projekt.
Umgebungsvariablen sind keine Ebene in diesem Stapel. Wenn ein Verhalten sowohl eine Shell-Variable als auch einen Einstellungsschlüssel hat, wird entschieden, welche angewendet wird, pro Paar, nicht nach Ebene: ANTHROPIC_MODEL, das in Ihrer Shell exportiert wird, gilt über den model Schlüssel aus jeder Datei, während ANTHROPIC_DEFAULT_MODEL nur gilt, wenn keine Datei model setzt. Die Umgebungsvariablen-Referenz sagt, welche Schlüssel ein Paar haben und welche Claude Code zuerst liest. Ein env Block in einer Einstellungsdatei ist ein gewöhnlicher Schlüssel und folgt den Ebenen oben. Für ein paar sicherheitsempfindliche Schlüssel ehrt Claude Code einen strengeren Wert aus einer niedrigeren Ebene über einen verwalteten Wert; Ausnahmen zur Priorität der verwalteten Einstellungen listet sie auf.

Listen werden zusammengeführt statt überschrieben

Wenn Sie den gleichen Listen-Schlüssel, wie permissions.allow, in mehr als einer Datei setzen, kombiniert Claude Code die Listen statt eine zu wählen, sodass jede Datei Einträge hinzufügen kann, ohne die eines anderen zu entfernen. Vier Schlüssel, die Modell-Listen oder Pro-Modell-Einträge halten, folgen ihren eigenen Regeln:
  • fallbackModel ist eine geordnete Kette, wo Position Bedeutung hat, sodass Claude Code den ganzen Wert aus der höchsten Prioritätsdatei nimmt, die ihn definiert.
  • modelPicker hält eine geordnete Liste von Zeilen plus ein Replace-Flag, sodass Claude Code Zeilen aus zwei Quellen nie zusammenführt. Es nimmt den ganzen Wert aus dem höchsten von verwalteten Einstellungen, --settings und Benutzereinstellungen, die ihn definieren, und ignoriert den Schlüssel in Projekt- und lokalen Einstellungen. Erfordert Claude Code v2.1.242 oder später.
  • availableModels: wenn die verwalteten Einstellungen, die Claude Code anwendet, ihn definieren, wendet Claude Code diese Liste wie sie ist an und ignoriert Einträge, die Sie in Benutzer-, Projekt- oder lokalen Einstellungen hinzufügen, es sei denn, eine App, die Claude Code einbettet, liefert ihre eigene Modell-Liste; siehe Ausnahmen zur Priorität der verwalteten Einstellungen. Über verwaltete Quellen wird die Liste auch nie zusammengeführt; wie Claude Code verwaltete Quellen kombiniert sagt, welche Quelle’s Liste angewendet wird. Über nicht verwaltete Bereiche führt Claude Code die Arrays wie üblich zusammen.
  • modelSettings: Claude Code löst es ein Modell auf einmal auf, zusammen mit effortLevel. Der modelSettings Eintrag sagt, welche Datei’s Wert auf ein Modell angewendet wird.

Beispiele für Priorität

Während Claude arbeitet, zeigt Claude Code einen einzeiligen Tipp unter dem Spinner, wie “Verwenden Sie /config, um Ihren Standard-Berechtigungsmodus zu ändern (einschließlich Plan Mode)”. Angenommen, Sie möchten diese Tipps aus, sodass Sie spinnerTipsEnabled auf false in ~/.claude/settings.json setzen. Jedes Szenario unten ist etwas, das sie wieder einschalten kann, und was Sie dagegen tun können.

Team-Einstellungen überschreiben persönliche Einstellungen

Die .claude/settings.json Ihres Teams setzt es auf true. Claude Code verwendet den Projektwert, weil gemeinsames Projekt über Benutzer sitzt, sodass Sie Tipps in diesem Projekt und nirgendwo sonst sehen. Sie können Ihren Wert zurückbekommen: fügen Sie "spinnerTipsEnabled": false zu .claude/settings.local.json in diesem Projekt hinzu. Projekt-lokal sitzt über gemeinsames Projekt, sodass Ihre Sitzungen dort Tipps nicht mehr zeigen und die Sitzungen Ihrer Teamkollegen sich nicht ändern.

Organisations-Einstellungen überschreiben alles

Die verwalteten Einstellungen Ihrer Organisation setzen es auf true. Nichts, das Sie in Benutzer-, Projekt- oder lokale Einstellungen setzen, schaltet Tipps aus, und auch nicht --settings. Verwaltet ist die oberste Ebene. Sie können Ihren Wert nicht zurückbekommen. Führen Sie /status aus, um zu sehen, welche verwaltete Quelle angewendet wird, und fragen Sie Ihren Administrator, ob die Richtlinie sich ändern sollte.

Die Befehlszeile überschreibt Ihre Dateien für eine Sitzung

Sie haben die Sitzung mit claude --settings '{"spinnerTipsEnabled": true}' gestartet. Befehlszeile sitzt über jeder Datei außer verwaltet, sodass diese Sitzung Tipps zeigt, obwohl Ihre Dateien false sagen. Sie bekommen Ihren Wert in der nächsten Sitzung zurück; --settings dauert eine Sitzung und schreibt nicht in eine Datei.

Ein Flag oder eine Umgebungsvariable setzt das gleiche

Einige Schlüssel haben ein Befehlszeilenflag oder eine Umgebungsvariable, die den Einstellungswert unabhängig davon überschreibt, welche Datei ihn setzt: ANTHROPIC_MODEL überschreibt die model Einstellung, und --model überschreibt beide für eine Sitzung. Ob Sie Ihren Wert zurückbekommen, hängt vom Schlüssel ab: heben Sie die Variable auf oder lassen Sie das Flag fallen, und überprüfen Sie den Eintrag des Schlüssels auf der Einstellungsreferenz und die Zeile der Variable auf der Umgebungsvariablen-Referenz für welche Claude Code verwendet.

Beheben Sie eine Einstellung, die nicht angewendet wird

Wenn Sie einen Schlüssel setzen und Claude Code sich nicht so verhält, als hätten Sie, beginnen Sie mit /status, um zu sehen, welche Dateien es geladen hat, dann finden Sie Ihr Symptom unten. Debuggen Sie Ihre Konfiguration behandelt die breiteren Überprüfungen, einschließlich eines sauberen Konfigurationstests.

Ein Wert, den Sie setzen, wird ignoriert

Etwas anderes setzt den gleichen Schlüssel, die Datei kann diesen Wert nicht setzen, oder die Datei wurde nicht geladen:
  • Eine höhere Ebene setzt ihn. Eine andere Einstellungsdatei, ein --settings Flag oder eine verwaltete Quelle setzt den Schlüssel über Ihrem; der Stapel sagt welche. Ein Flag oder eine Umgebungsvariable kann auch den Schlüssel auf eigene Faust überschreiben, entschieden Schlüssel für Schlüssel; der Eintrag des Schlüssels auf der Einstellungsreferenz sagt, welche Claude Code verwendet, und der env Eintrag behandelt einen verwalteten env Wert versus einen Shell-Export.
  • Ein Sicherheitsschlüssel behält seinen strengen Wert. Für ein paar Schlüssel ehrt Claude Code den restriktiven Wert aus jeder Datei, sodass ein Projekt true für disableClaudeAiConnectors bleibt an; siehe Ausnahmen zur Priorität der verwalteten Einstellungen.
  • Die Datei kann diesen Wert nicht setzen. permissions.defaultMode Werte auto und bypassPermissions wirken sich nicht von Projekt- oder lokalen Einstellungen aus; setzen Sie sie stattdessen in Benutzer- oder verwaltete Einstellungen, oder übergeben Sie --permission-mode für eine Sitzung. Vor v2.1.257 wirkte sich bypassPermissions von jeder Datei aus.
  • Die Datei ist fehlerhaft. Ungültiges JSON oder ein abgelehnter Wert lässt Claude Code die Datei oder den Eintrag überspringen; siehe Beheben Sie eine fehlerhafte Einstellungsdatei.

Eine Änderung, die Sie in Claude Code gemacht haben, geht in neuen Sitzungen verloren

Wenn Sie eine Wahl für neue Sitzungen von innen Claude Code speichern, wie ein Standardmodell mit /model, schreibt Claude Code es in Ihre Benutzereinstellungsdatei, ~/.claude/settings.json. Wenn Sie nicht in diese Datei schreiben können, zum Beispiel weil ein anderes Tool sie generiert oder sie mit einer schreibgeschützten Kopie verlinkt, gilt die Änderung für die aktuelle Sitzung und ist in der nächsten weg. Setzen Sie den Schlüssel in das Tool, das die Datei generiert, oder ersetzen Sie die Datei mit einer, in die Sie schreiben können. Wenn Sie in die Datei schreiben können und die Änderung bleibt immer noch nicht, überprüfen Sie, ob die Änderung nur für eine Sitzung war oder eine höhere Ebene setzt den gleichen Schlüssel. Für den model Schlüssel, Eine neue Sitzung startet auf einem anderen Modell als Sie gewählt haben listet mehr Ursachen auf.

Eine verwaltete Änderung hat Sie nicht erreicht

Verwaltete Quellen erreichen eine laufende Sitzung nach dem Zeitplan in der Bereitstellungstabelle, sodass starten Sie die Sitzung zuerst neu. Wenn /status dann eine andere Quelle nennt als die, die Ihr Administrator geändert hat, gilt eine höherrangige Quelle; Wie Claude Code verwaltete Quellen kombiniert gibt die Reihenfolge.

Ein eingecheckter Schlüssel erreicht Teamkollegen nicht

Zwei Dinge halten einen Schlüssel in .claude/settings.json davon ab, für alle zu gelten, die ihn klonen:
  • Claude Code ignoriert den Schlüssel in einer Repository-Datei. Suchen Sie nach User, local, or managed, User or managed, Managed oder Global config in der Spalte Scope des Einstellungsindex; diese Schlüssel wirken sich nie von der gemeinsamen Datei aus, außer autoContinueAtUsageLimit, das eine Repository-Datei immer noch ausschalten kann: während die Datei den Schlüssel setzt und kein Benutzer, --settings oder verwalteter Wert, liest Claude Code die Einstellung als aus. Global config Schlüssel gelten nur von ~/.claude.json.
  • Der Schlüssel wartet auf Vertrauen. permissions.allow Regeln, permissions.additionalDirectories, extraKnownMarketplaces und die meisten env Werte gelten nur, nachdem jeder Teamkollege den Ordner vertraut. Bis dahin sehen sie immer noch Aufforderungen und bekommen keine Plugins von einem Marketplace, den die Datei erklärt. deny und ask Regeln gelten sofort.

Berechtigungsregeln kombinieren sich anders als Sie erwartet

  • Sie haben “Ja, und frag mich nicht mehr” auf einer Berechtigungsaufforderung gewählt, aber bekommen immer noch eine Aufforderung für das gleiche Tool. Diese Wahl speicherte eine allow Regel in Ihrer lokalen Datei, und eine allow Regel dort übertrifft nicht eine ask Regel aus einer Projekt- oder verwalteten Datei; wie Berechtigungsregeln kombinieren erklärt die Reihenfolge. In der VS Code-Erweiterung lässt die Genehmigungskarte Sie die Zieldatei wählen, einschließlich der gemeinsamen Datei des Projekts, was die Regel für alle ändert; in der CLI schreibt Claude Code nur in Ihre lokale Datei.
  • Die Allow-Regeln Ihrer Organisation gelten immer noch neben Ihren. Das ist erwartet: Claude Code führt permissions.allow über Bereiche zusammen, es sei denn, Ihre Organisation setzt allowManagedPermissionRulesOnly.

Ausnahmen zur Priorität der verwalteten Einstellungen

Für ein paar sicherheitsempfindliche Schlüssel ehrt Claude Code einen restriktiven Wert aus einem Bereich, der ansonsten verwaltete Einstellungen nicht überschreiben könnte. Finden Sie den Schlüssel in dieser Tabelle, um zu sehen, welchen Wert er ehrt und von wo. Eine App, die Claude Code in sich selbst ausführt und CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST setzt, ist auch eine Ausnahme. Claude Code nimmt die Modell-Konfiguration dieser App über die model, fallbackModel und modelOverrides Schlüssel aus jeder verwalteten Quelle, und über die Modell-Auswahl-Variablen in einem verwalteten env Block, wie ANTHROPIC_MODEL und die ANTHROPIC_DEFAULT_*_MODEL Familie. Claude Code behält eine verwaltete availableModels Allowlist in Kraft, es sei denn, die App liefert ihre eigene.

Einstellungen in Cloud-Sitzungen

Eine Cloud-Sitzung, auf Claude Code im Web oder von claude --cloud, läuft in einer Cloud-Umgebung auf einem frischen Klon Ihres Repositorys, nicht auf Ihrer Maschine. Das ändert, welche Einstellungen es erreichen:
  • Gemeinsame Projekt-Einstellungen (.claude/settings.json): gelesen, weil die Datei Teil des Klons ist. Committen Sie eine Einstellung dort, um sie in Cloud-Sitzungen anzuwenden.
  • Benutzer- und Projekt-lokale Einstellungen (~/.claude/settings.json und .claude/settings.local.json): nicht gelesen. Beide bleiben auf Ihrer Maschine, und die lokale Datei ist nicht im Klon.
  • Verwaltete Einstellungen: nur serververwaltete Einstellungen erreichen eine Cloud-Sitzung; eine managed-settings.json Datei oder MDM-Profil auf Ihrem Gerät nicht. Eine selbstgehostete Umgebung liest auch die verwaltete Einstellungsdatei in ihrem Runner-Image. Wie Claude Code verwaltete Quellen kombiniert sagt, wann diese Datei angewendet wird.
  • /config: im Web öffnet die Claude Code-Sektion Ihrer claude.ai-Einstellungen statt einen Wert zu ändern. Um eine Einstellung für eine Cloud-Sitzung zu ändern, setzen Sie eine Umgebungsvariable auf der Umgebung oder committen Sie den Schlüssel zu der .claude/settings.json des Repositorys.
Was von Ihrem Setup überträgt listet den Rest auf: CLAUDE.md, Skills, MCP-Server, Plugins und Anmeldedaten.

Was kommt als nächstes