settings.json: Das Konfigurationssystem
settings.json ist der Ort, an dem die Konfiguration von Claude Code lebt — Berechtigungen, Hooks, Umgebungsvariablen, Modell-Voreinstellungen und mehr. Die Ebenen zu verstehen ist der Schlüssel.
Die Ebenen (am-globalsten → am-spezifischsten)
Spätere (spezifischere) Ebenen überschreiben frühere:
- Enterprise / managed — von einem Org-Admin gesetzte Richtlinie. Schlägt alles.
- User —
~/.claude/settings.json. Deine Voreinstellungen über alle Projekte. - Projekt (geteilt) —
.claude/settings.json, ins Repo committet. Teamweit. - Projekt (persönlich) —
.claude/settings.local.json, git-ignoriert. Deine Überschreibungen für dieses Repo.
:::tip Committe die geteilte Datei, ignoriere die lokale
Lege Team-Konventionen in .claude/settings.json (committet) ab. Lege persönliche Feinjustierungen und maschinenspezifische Pfade in .claude/settings.local.json (git-ignoriert) ab. So bleibt das Team konsistent, ohne anderen deine Vorlieben aufzuzwingen.
:::
Was du häufig einstellen wirst
permissions— allow-/ask-/deny-Regeln. Siehe Berechtigungen.hooks— Befehle, die bei Lebenszyklus-Ereignissen laufen. Siehe Hooks.env— Umgebungsvariablen für die Session.- Modell-/Verhaltens-Voreinstellungen — z. B. das bevorzugte Modell.
Sicher bearbeiten
- Halte es gültig als JSON (ein nachgestelltes Komma macht es kaputt).
- Bevorzuge enge Berechtigungsregeln gegenüber breiten.
- Lege niemals Geheimnisse in eine committete Datei — nutze
env-Referenzen oder einen Secrets-Manager.
Sofort kopierbare Startdateien findest du in den Hooks- & settings.json-Rezepten.