Zum Hauptinhalt springen
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 über die claude.ai-Konsole bereitstellen. Jede Quelle hat einen Geltungsbereich: 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 einfaches .claude ist der .claude-Ordner in Ihrem Projekt.

Vergleichen Sie den Geltungsbereich jeder Einstellungsdatei

Angenommen, Sie haben drei Projekte auf Ihrem Computer: website/, api/ und acme-app/, ein Teamkollege hat seinen eigenen Klon von acme-app/, und Sie starten eine Cloud-Sitzung auf acme-app/. Die folgende Grafik 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 anzuzeigen, die sie erreicht.
  • ~/.claude/settings.json: jedes Projekt auf Ihrem Computer, und nichts auf dem Computer 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 beim ersten Mal, wenn es die Datei schreibt, zu Ihren globalen Git-Ausschlüssen hinzu, damit 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 servergesteuerte Einstellungen aus der claude.ai-Konsole: jedes Projekt auf jedem Computer, auf dem Ihre Organisation sie bereitstellt, oder auf dem Sie sich mit Ihrem Organisationskonto anmelden. Nur servergesteuerte Einstellungen erreichen die Cloud-Sitzung

Suchen oder erstellen Sie Ihre Einstellungsdateien

Die Installation von Claude Code erstellt keine Einstellungsdatei. Wenn Ihr Computer oder 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 committed haben. Wenn nicht, erstellen Sie sie 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 dauerhafte Genehmigung bei einer Berechtigungsabfrage geben, wie „Ja, und frag mich nicht mehr“ für einen Bash-Befehl. Einige /config-Optionen, einschließlich Tipps anzeigen, werden stattdessen in .claude/settings.local.json gespeichert.
Unter Windows bedeutet ~/.claude %USERPROFILE%\.claude. Um die Home-Verzeichnis-Dateien woanders zu speichern, setzen Sie CLAUDE_CONFIG_DIR; Claude Code speichert dann Ihre Einstellungen, Sitzungsverlauf und Plugins stattdessen dort.
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 Kontodaten, MCP-Server-Konfigurationen, projektspezifischen 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 und Plugins erhält. Jeder Teamkollege kann es 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 die gemeinsamen Einstellungen eines Teams. Einiges von dem, das Sie committen, wartet, bis jeder Teamkollege den Ordner vertraut, und einige Schlüssel wirken sich nie aus einer Repository-Datei aus; Beheben Sie eine Einstellung, die nicht angewendet wird behandelt beides.

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 committete .claude/settings.json an, also wenn die Datei Ihres Teams "model": "claude-sonnet-5" setzt und Sie Opus möchten, fügen Sie "model": "claude-opus-5-5" in Ihre lokale Datei ein und nur Ihre Sitzungen ändern sich. Claude Code schreibt auch in diese Datei, hält sie aus Ihren Commits heraus und wendet ihre allow-Regeln ohne den Vertrauensschritt an:
  • Claude Code schreibt sie auch. Wenn Claude die Berechtigung zum Ausführen eines Bash-Befehls anfordert 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, damit 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; andernfalls 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.
  • Ihre allow-Regeln warten nicht auf Vertrauen, während die Datei nicht verfolgt bleibt. Da 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 committete 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 hält

Wenn Claude die Berechtigung zum Ausführen eines Bash-Befehls anfordert 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 gesamte 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 hielt 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 denselben Schlüssel setzen, gilt der Wert des Root, und Berechtigungsregeln aus beiden Dateien gelten. Der resolveSettings()-Helfer des Agent SDK liest die Datei immer aus dem Startverzeichnis. Claude Code liest die gemeinsame .claude/settings.json aus dem primären Arbeitsverzeichnis der Sitzung, also um eine Datei zu verwenden, die im Repository-Root committed ist, starten Sie Claude Code dort. Nachdem Sie die Sitzung mit /cd verschieben, liest Claude Code stattdessen beide Projektdateien aus dem neuen Verzeichnis, wobei die lokale Datei nach denselben Regeln platziert wird. Das Lesen von ihnen aus dem Verzeichnis, in das Sie verschoben haben, erfordert Claude Code v2.1.246 oder später. Für eine Worktree-Sitzung, die Sie aus der Desktop-App starten, siehe Was Worktrees mit dem Haupt-Checkout teilen.

Ü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 einfügen, ä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 diesem Computer läuft; Was ein Entwickler ändern kann behandelt lokale Administratorrechte 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 Ihrem Computer in der Claude Desktop-App läuft, ruft Claude Code keine servergesteuerten Einstellungen aus der claude.ai-Admin-Konsole ab, und es liest die Richtlinie, die auf Ihrem Gerät bereitgestellt ist, 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, führt Sie Richten Sie Claude Code für Ihre Organisation ein durch die Auswahl, was Sie erzwingen möchten, und Stellen Sie verwaltete Einstellungen bereit behandelt die Bereitstellung und wie Sie bestätigen, dass eine Richtlinie in Kraft ist. Informationen zur Warnung, die der Editor für verwaltete Einstellungen in der claude.ai-Admin-Konsole anzeigen kann, finden Sie unter Konfigurieren Sie servergesteuerte Einstellungen.

Ä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: wenn Sie eine Einstellung in /config ändern, schreibt Claude Code in Ihre Einstellungsdateien, und /model speichert den Wert als Ihren Standard für neue Sitzungen. Wenn Sie s im /model Picker drücken, wechselt Claude Code das Modell, ohne es als Ihren Benutzer-Standard zu speichern. Passen Sie die Anstrengungsstufe an sagt, welche /effort Picks Claude Code als Ihren Standard für das Modell speichert, das Sie verwenden, und welche nur auf die aktuelle Sitzung angewendet werden. 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. Claude Code lädt auch eine Einstellungsdatei, die Sie mid-Sitzung erstellen, wenn ihr Ordner existierte, als die Sitzung begann. Für den .claude/ Ordner des Projekts lädt es die Datei auch, wenn Sie den Ordner in der gleichen Sitzung erstellen. 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.

Vorrang der Einstellungen

Wenn derselbe Schlüssel an mehr als einer Stelle vorkommt, verwendet Claude Code den Wert der höchsten Ebene, die ihn setzt. Der folgende Stapel zeigt die Ebenen, die höchste oben; ein Schlüssel auf einer höheren Ebene überschreibt denselben Schlüssel auf jeder darunterliegenden Ebene. In Reihenfolge, mit dem höchsten Vorrang zuerst:
  1. Verwaltete Einstellungen: Einstellungen, die Ihre Organisation bereitstellt, über eine managed-settings.json-Datei, eine MDM-Richtlinie oder servergesteuerte Einstellungen aus der claude.ai-Konsole. Nichts in Ihren eigenen Einstellungsdateien oder in --settings überschreibt einen verwalteten Schlüssel, und ein Flag wie --model wählt nur aus den Modellen, die Ihre Organisation zulässt. Ein verwaltetes model ist ein Startwert, keine Sperre; die Sperren sind availableModels und deniedModels. Wenn Ihre Organisation mehr als eine verwaltete Quelle bereitstellt, legen die Regeln für den Vorrang innerhalb der verwalteten Ebene fest, was Claude Code aus jeder Quelle liest.
  2. Befehlszeile: JSON, das Sie beim Starten von claude mit --settings <file-or-json> übergeben, nur für diese Sitzung; siehe Eine Einstellung für eine Sitzung ändern. Ein Schlüssel, den Sie dort setzen, überschreibt denselben Schlüssel in Ihren Projekt- und Benutzereinstellungsdateien, und ein Schlüssel, den Sie weglassen, behält seinen Wert aus diesen Dateien. Andere Flags wie --model legen eine Sache für die Sitzung fest und sind nicht Teil dieses Stapels; der Eintrag eines Schlüssels in der Einstellungsreferenz gibt an, welche Flags ihn überschreiben.
  3. Lokale Projekteinstellungen (.claude/settings.local.json): Ihre persönlichen Einstellungen für dieses Projekt.
  4. Gemeinsame Projekteinstellungen (.claude/settings.json): Einstellungen, die Ihr Team in die Versionskontrolle eincheckt.
  5. Benutzereinstellungen (~/.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 pro Paar entschieden, welcher gilt, nicht nach Ebene: ANTHROPIC_MODEL, in Ihrer Shell exportiert, hat Vorrang vor dem Schlüssel model aus jeder Datei, während ANTHROPIC_DEFAULT_MODEL nur gilt, wenn keine Datei model setzt. Die Referenz der Umgebungsvariablen gibt an, welche Schlüssel ein Paar haben und welchen Claude Code zuerst liest. Ein env-Block innerhalb einer Einstellungsdatei ist ein gewöhnlicher Schlüssel und folgt den obigen Ebenen. Bei einigen sicherheitsrelevanten Schlüsseln berücksichtigt Claude Code einen strengeren Wert von einer niedrigeren Ebene gegenüber einem verwalteten Wert; Ausnahmen vom Vorrang verwalteter Einstellungen listet sie auf.

Listen werden zusammengeführt statt überschrieben

Wenn Sie denselben Listenschlüssel, etwa permissions.allow, in mehr als einer Datei setzen, kombiniert Claude Code die Listen, statt eine auszuwählen, sodass jede Datei Einträge hinzufügen kann, ohne die einer anderen Datei zu entfernen. Vier Schlüssel, die Modelllisten oder modellspezifische Einträge enthalten, folgen eigenen Regeln:
  • fallbackModel ist eine geordnete Kette, in der die Position Bedeutung trägt, daher übernimmt Claude Code den gesamten Wert aus der Datei mit dem höchsten Vorrang, die ihn definiert.
  • modelPicker enthält eine geordnete Liste von Zeilen plus ein Ersetzungs-Flag, daher führt Claude Code nie Zeilen aus zwei Quellen zusammen. Es übernimmt den gesamten Wert aus der höchsten der Quellen verwaltete Einstellungen, --settings und Benutzereinstellungen, die ihn definiert, und ignoriert den Schlüssel in Projekt- und lokalen Einstellungen. Erfordert Claude Code v2.1.242 oder höher.
  • availableModels: Wenn die von Claude Code angewendeten verwalteten Einstellungen ihn definieren, wendet Claude Code diese Liste unverändert 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 Modellliste; siehe Ausnahmen vom Vorrang verwalteter Einstellungen. Auch über verwaltete Quellen hinweg wird die Liste nie zusammengeführt; wie Claude Code verwaltete Quellen kombiniert gibt an, welche Liste welcher Quelle gilt. Über nicht verwaltete Geltungsbereiche hinweg führt Claude Code die Arrays wie üblich zusammen.
  • modelSettings: Claude Code löst diesen Schlüssel Modell für Modell auf, zusammen mit effortLevel. Der Eintrag zu modelSettings gibt an, welcher Wert aus welcher Datei für ein Modell gilt.

Beispiele zum Vorrang

Während Claude arbeitet, zeigt Claude Code unter dem Spinner einen einzeiligen Tipp an, etwa „Use /config to change your default permission mode (including Plan Mode)“. Angenommen, Sie möchten diese Tipps ausschalten und setzen daher spinnerTipsEnabled in ~/.claude/settings.json auf false. Jedes der folgenden Szenarien beschreibt 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 den Schlüssel auf true. Claude Code verwendet den Projektwert, weil die gemeinsamen Projekteinstellungen über den Benutzereinstellungen liegen, sodass Sie Tipps in diesem Projekt sehen und nirgendwo sonst. Sie können Ihren Wert zurückbekommen: Fügen Sie "spinnerTipsEnabled": false zu .claude/settings.local.json in diesem Projekt hinzu. Lokale Projekteinstellungen liegen über den gemeinsamen Projekteinstellungen, sodass Ihre Sitzungen dort keine Tipps mehr anzeigen und sich die Sitzungen Ihrer Teammitglieder nicht ändern.

Organisationseinstellungen überschreiben alles

Die verwalteten Einstellungen Ihrer Organisation setzen den Schlüssel auf true. Nichts, was Sie in Benutzer-, Projekt- oder lokale Einstellungen eintragen, schaltet die Tipps aus, und auch --settings nicht. Verwaltet ist die oberste Ebene. Sie können Ihren Wert nicht zurückbekommen. Führen Sie /status aus, um zu sehen, welche verwaltete Quelle gilt, und fragen Sie Ihren Administrator, ob die Richtlinie geändert werden sollte.

Die Befehlszeile überschreibt Ihre Dateien für eine Sitzung

Sie haben die Sitzung mit claude --settings '{"spinnerTipsEnabled": true}' gestartet. Die Befehlszeile liegt über jeder Datei außer den verwalteten Einstellungen, sodass diese Sitzung Tipps anzeigt, obwohl Ihre Dateien false angeben. Sie bekommen Ihren Wert in der nächsten Sitzung zurück; --settings gilt für eine Sitzung und schreibt in keine Datei.

Ein Flag oder eine Umgebungsvariable setzt dasselbe

Einige Schlüssel haben ein Befehlszeilen-Flag oder eine Umgebungsvariable, die den Einstellungswert überschreibt, unabhängig davon, welche Datei ihn gesetzt hat: ANTHROPIC_MODEL überschreibt die Einstellung model, und --model überschreibt beides für eine Sitzung. Ob Sie Ihren Wert zurückbekommen, hängt vom Schlüssel ab: Entfernen Sie die Variable oder lassen Sie das Flag weg, und prüfen Sie den Eintrag des Schlüssels in der Einstellungsreferenz sowie die Zeile der Variablen in der Referenz der Umgebungsvariablen, um zu sehen, welchen Wert Claude Code verwendet.

Fehlerbehebung bei einer Einstellung, die nicht greift

Wenn Sie einen Schlüssel setzen und Claude Code sich nicht entsprechend verhält, beginnen Sie mit /status, um zu sehen, welche Dateien geladen wurden, und suchen Sie dann unten Ihr Symptom. Ihre Konfiguration debuggen behandelt die umfassenderen Prüfungen, einschließlich eines Tests mit einer sauberen Konfiguration.

Ein von Ihnen gesetzter Wert wird ignoriert

Etwas anderes setzt denselben 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 oberhalb Ihres Werts; der Stapel zeigt, welche. Ein Flag oder eine Umgebungsvariable kann den Schlüssel auch eigenständig überschreiben, was Schlüssel für Schlüssel entschieden wird; der Eintrag des Schlüssels in der Einstellungsreferenz gibt an, welchen Wert Claude Code verwendet, und der env-Eintrag behandelt einen verwalteten env-Wert im Vergleich zu einem Shell-Export.
  • Ein Sicherheitsschlüssel behält seinen strengen Wert. Bei einigen Schlüsseln berücksichtigt Claude Code den restriktiven Wert aus jeder Datei, sodass ein true im Projekt für disableClaudeAiConnectors aktiv bleibt; siehe Ausnahmen vom Vorrang verwalteter Einstellungen.
  • Die Datei kann diesen Wert nicht setzen. Die Werte auto und bypassPermissions für permissions.defaultMode werden aus Projekt- oder lokalen Einstellungen nicht wirksam; setzen Sie sie stattdessen in Benutzer- oder verwalteten Einstellungen, oder übergeben Sie --permission-mode für eine Sitzung. Vor v2.1.257 wurde bypassPermissions aus jeder Datei wirksam. Eine Telemetrie-Exportvariable in einem env-Block wird aus Projekt- oder lokalen Einstellungen ebenfalls nicht wirksam, abgesehen von einigen Aus-Werten. Variablen, die Claude Code in env ignoriert listet die Variablen und diese Werte auf.
  • Die Datei ist fehlerhaft. Ungültiges JSON oder ein abgelehnter Wert führt dazu, dass Claude Code die Datei oder den Eintrag überspringt; siehe Eine fehlerhafte Einstellungsdatei reparieren.

Eine in Claude Code vorgenommene Änderung geht in neuen Sitzungen verloren

Wenn Sie innerhalb von Claude Code eine Auswahl für neue Sitzungen speichern, etwa ein Standardmodell mit /model, schreibt Claude Code sie in Ihre Benutzereinstellungsdatei ~/.claude/settings.json. Wenn Sie nicht in diese Datei schreiben können, etwa weil ein anderes Tool sie erzeugt oder sie mit einer schreibgeschützten Kopie verknüpft, gilt die Änderung für die aktuelle Sitzung und ist in der nächsten verschwunden. Setzen Sie den Schlüssel in dem Tool, das die Datei erzeugt, oder ersetzen Sie die Datei durch eine, in die Sie schreiben können. Wenn Sie in die Datei schreiben können und die Änderung trotzdem nicht bestehen bleibt, prüfen Sie, ob die Änderung nur für eine Sitzung galt oder ob eine höhere Ebene denselben Schlüssel setzt. Für den Schlüssel model listet Eine neue Sitzung startet mit einem anderen Modell als dem ausgewählten weitere Ursachen auf.

Eine verwaltete Änderung ist nicht bei Ihnen angekommen

Verwaltete Quellen erreichen eine laufende Sitzung gemäß dem Zeitplan in der Bereitstellungstabelle, starten Sie die Sitzung daher zuerst neu. Wenn /status anschließend eine andere Quelle nennt als die, die Ihr Administrator geändert hat, gilt eine Quelle mit höherer Priorität; Wie Claude Code verwaltete Quellen kombiniert nennt die Reihenfolge.

Ein eingecheckter Schlüssel erreicht Ihre Teammitglieder nicht

Zwei Dinge verhindern, dass ein Schlüssel in .claude/settings.json für alle gilt, die das Repository klonen:
  • Claude Code ignoriert den Schlüssel in einer Repository-Datei. Suchen Sie in der Spalte „Scope“ des Einstellungsindex nach User, local, or managed, User or managed, User, Managed oder Global config. Diese Schlüssel gelten nie aus der gemeinsamen Datei, abgesehen von einigen, die eine Repository-Datei weiterhin ausschalten kann. Jeder dieser Einträge gibt dies in seiner Scope-Zeile an. Global config-Schlüssel gelten nur aus ~/.claude.json. Innerhalb des Schlüssels env gelten auch die Telemetrie-Exportvariablen nie aus der gemeinsamen Datei, abgesehen von einigen Aus-Werten; siehe Variablen, die Claude Code in env ignoriert.
  • Der Schlüssel wartet auf Vertrauen. permissions.allow-Regeln, permissions.additionalDirectories, extraKnownMarketplaces und die meisten env-Werte gelten erst, nachdem jedes Teammitglied dem Ordner vertraut. Bis dahin sehen sie weiterhin Berechtigungsabfragen und erhalten keine Plugins aus einem Marketplace, den die Datei deklariert. deny- und ask-Regeln gelten sofort.

Berechtigungsregeln werden anders kombiniert als erwartet

  • Sie haben bei einer Berechtigungsabfrage „Yes, and don’t ask again“ gewählt, werden aber für dasselbe Tool weiterhin gefragt. Diese Auswahl hat eine allow-Regel in Ihrer lokalen Datei gespeichert, und eine allow-Regel dort hat keinen Vorrang vor einer ask-Regel aus einer Projekt- oder verwalteten Datei; wie Berechtigungsregeln kombiniert werden erklärt die Reihenfolge. In der VS Code-Erweiterung können Sie in der Genehmigungskarte die Zieldatei auswä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 weiterhin neben Ihren eigenen. Das ist erwartet: Claude Code führt permissions.allow über Geltungsbereiche hinweg zusammen, es sei denn, Ihre Organisation setzt allowManagedPermissionRulesOnly.

Ausnahmen vom Vorrang verwalteter Einstellungen

Bei einigen Schlüsseln, deren Werte eine Sitzung einschränken, berücksichtigt Claude Code einen restriktiven Wert aus einem Geltungsbereich, der verwaltete Einstellungen sonst nicht überschreiben könnte. Suchen Sie den Schlüssel in dieser Tabelle, um zu sehen, welchen Wert er von wo berücksichtigt. Eine App, die Claude Code in sich selbst ausführt und CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST setzt, ist ebenfalls eine Ausnahme. Claude Code übernimmt die Modellkonfiguration dieser App anstelle der Schlüssel model, fallbackModel, modelPicker und modelOverrides aus jeder verwalteten Quelle sowie anstelle der Variablen zur Modellauswahl in einem verwalteten env-Block, etwa ANTHROPIC_MODEL und die Familie ANTHROPIC_DEFAULT_*_MODEL. Claude Code hält eine verwaltete availableModels-Allowlist in Kraft, sofern die App keine eigene liefert.

Einstellungen in Cloud-Sitzungen

Eine Cloud-Sitzung läuft in einer Cloud-Umgebung auf einem frischen Klon Ihres Repositorys, nicht auf Ihrer Maschine. Das ändert, welche Einstellungen es erreichen:
  • Cloud-Threads in einem Projekt: In einem Cloud-Thread in einem Projekt gelten keine Berechtigungsregeln, Hooks oder env aus der .claude/settings.json eines Repositorys, unabhängig davon, wie viele Repositorys das Projekt hat. Was Threads aus Ihren Repositorys übernehmen listet auf, was Sie stattdessen verwenden können.
  • Gemeinsame Projekt-Einstellungen (.claude/settings.json): werden in einer Sitzung mit einem Repository außerhalb der Threads eines Projekts gelesen, da die Datei Teil des Klons ist und die Sitzung darin startet. Committen Sie eine Einstellung dort, um sie in diesen Sitzungen anzuwenden.
  • Gemeinsame Projekt-Einstellungen mit mehreren Repositorys: In einer von Anthropic gehosteten Umgebung startet eine Sitzung mit mehreren Repositorys über den Klonen und liest aus jeder .claude/settings.json des Repositorys nur die Schlüssel enabledPlugins und extraKnownMarketplaces, nicht Berechtigungsregeln, Hooks, env oder andere Schlüssel. Die Marketplaces und Plugins, die diese beiden Schlüssel deklarieren, werden immer noch nicht in einer Cloud-Sitzung geladen. Für eine selbstgehostete Umgebung siehe welche Repository-Einstellungen gelten.
  • 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: eine managed-settings.json Datei oder MDM-Profil auf Ihrem Gerät erreicht eine Cloud-Sitzung nicht. Die serververwalteten Einstellungen Ihrer Organisation erreichen sie; Oberflächenabdeckung listet auf, welche Cloud-Sitzungen sie erhalten. 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: öffnet im Browser unter claude.ai/code Ihre claude.ai-Einstellungsseite Code bzw. Claude Code, statt einen Wert zu ändern. Um eine Einstellung für eine Cloud-Sitzung zu ändern, setzen Sie eine Umgebungsvariable auf der Umgebung. In einer Sitzung mit einem Repository außerhalb der Threads eines Projekts können Sie stattdessen den Schlüssel in die .claude/settings.json dieses Repositorys committen.
Was von Ihrem Setup überträgt listet den Rest auf: CLAUDE.md, Skills, MCP-Server, Plugins und Anmeldedaten.

Was kommt als nächstes