Vertiefung zu Modul 10 · Ebenen, Wirksamkeit, Bestand
Modul 2 zeigt, wo die Dateien liegen.
Hier geht es darum, welche gewinnt, wann eine Änderung greift und warum manchmal nichts passiert.
docs/en/settings-reference, hier stehen die Gruppen und die Fallen.Und wer wen überstimmt
Bei gleichem Schlüssel gewinnt die höhere Ebene.
Managed Settings gewinnen gegen alles — auch gegen --settings und Startflags.
managed-settings.json, MDM, Server--settings, Flags.claude/settings.local.json.claude/settings.json~/.claude/settings.jsonsettings.local.json.Nicht jede Konfigurationsart folgt derselben Aufteilung.
Vor allem MCP (Model Context Protocol) und CLAUDE.md liegen anderswo.
| Feature | User | Project | Local |
|---|---|---|---|
| Settings | ~/.claude/settings.json | .claude/settings.json | .claude/settings.local.json |
| Subagenten | ~/.claude/agents/ | .claude/agents/ | — |
| MCP-Server | ~/.claude.json | .mcp.json | ~/.claude.json pro Projekt |
| Plugins | ~/.claude/settings.json | .claude/settings.json | .claude/settings.local.json |
| CLAUDE.md | ~/.claude/CLAUDE.md | CLAUDE.md | CLAUDE.local.md |
~/.claude/agents/ ab.Setzen mehrere Dateien denselben Listenschlüssel, führt Claude Code die Listen zusammen.
Das wichtigste Beispiel sind die Permission-Regeln.
settings.local.json. Gegen ein ask aus Projekt oder Managed hilft es nicht.--allowedTools aufheben. --disallowedTools darf weiter einschränken.fallbackModel kommt ganz aus der höchsten Datei, eine Managed-availableModels gilt unverändert.denyallowallowSofort, in der nächsten Session — oder gar nicht
Claude Code beobachtet die Settings-Dateien und lädt sie bei jeder Änderung neu.
Die meisten Schlüssel wirken also ohne Neustart.
permissions, hooks, Zugangsdaten-Helfer wie apiKeyHelper — für User, Project, Local und Managed..claude/-Ordner lädt Claude Code noch in der laufenden Session.ConfigChange-Hook läuft bei jeder erkannten Dateiänderung — nicht bei Managed Settings aus MDM oder Konsole.model, effortLevel, modelSettings. Mittendrin wechseln /model und /effort./model und /effort der kurze Weg.Wie viel eine fehlerhafte Datei kostet, hängt von der Ebene ab.
Eine eigene Datei fällt still aus, eine Firmenrichtlinie behält ihre gültigen Einträge.
//-Kommentar oder ein Komma zu viel genügt-p-Lauf fragt nichtallowedMcpServers gilt als leere Allowlistjq -e . oder claude doctor — nicht erst, wenn etwas seltsam ist.
Einige Schlüssel liest Claude Code aus dem geteilten Projekt bewusst nicht.
Ein geklontes Repository soll sich keine Rechte selbst schreiben.
autoMode — nur aus User, --settings und Managed.defaultMode: "auto" und "bypassPermissions" — aus Project und Local ignoriert.skipDangerousModePermissionPrompt — nicht aus dem geteilten Projekt: ein fremdes Repository kann die Warnung nicht wegklicken.pluginConfigs — nur User und Managed, weil die Werte in Hook- und MCP-Konfigurationen landen.extraKnownMarketplaces, die meisten env-Werte. deny und ask gelten sofort.autoMode · defaultMode: autoskipDangerousModePermissionPrompt · pluginConfigs--settings · ManagedNach Zweck statt alphabetisch
Die Gruppen, die im Alltag am häufigsten angefasst werden.
model, fallbackModel, availableModels, effortLevel, alwaysThinkingEnabled, fastModeautoCompactEnabled, autoMemoryEnabled, claudeMdExcludes, includeGitInstructions, outputStyleskillOverrides, skillListingBudgetFraction, disableBundledSkills, disableSkillShellExecutionDie übrigen Gruppen mit ihren wichtigsten Schlüsseln.
enableAllProjectMcpServers, enabledMcpjsonServers, disabledMcpjsonServers, disableClaudeAiConnectorshooks, disableAllHooks, allowedHttpHookUrls, statusLineenabledPlugins, pluginConfigs, extraKnownMarketplacescleanupPeriodDays, autoUpdatesChannel, minimumVersiontheme, editorMode, language, verbose, axScreenReaderdisableAllHooks schaltet auch die eigene Statuszeile und die eigenen Dateivorschläge ab.cleanupPeriodDays steuert auch das Aufräumen verwaister Worktrees.Umgebungsvariablen sind keine Ebene im Stapel.
Welche Seite gewinnt, ist je Paar festgelegt.
| Setting | Variable | Verhältnis |
|---|---|---|
model | ANTHROPIC_MODEL, --model | Variable vor jeder Datei, Flag vor beiden |
includeGitInstructions | CLAUDE_CODE_DISABLE_GIT_INSTRUCTIONS | Variable hat Vorrang |
autoCompactEnabled | DISABLE_AUTO_COMPACT | wer abschaltet, gewinnt |
autoMemoryEnabled | CLAUDE_CODE_DISABLE_AUTO_MEMORY | Variable gewinnt in beide Richtungen |
effortLevel | --effort, CLAUDE_CODE_EFFORT_LEVEL | Variable vor Flag vor Schlüssel |
| — | CLAUDE_CODE_MAX_CONCURRENT_SUBAGENTS und Verwandte | nur als Variable |
env-Block der Settings.NO_COLOR und FORCE_COLOR erreichen von dort nur Child-Processes — für die eigene Oberfläche gehören sie vor den Start in die Shell.Was wirklich gilt
Für jede Frage zur Konfiguration gibt es einen Befehl, der sie beantwortet.
/status — Zeile Setting sources: welche Dateien geladen sind und ob Managed Settings greifen. Nicht: welcher Schlüssel woher kommt.claude doctor in der Shell — verworfene Einträge mit Quelle und Feld, ohne Session. /doctor schlägt zusätzlich Korrekturen vor./permissions — alle Regeln nach Scope, zum Ansehen und Ändern./config — eine kurze Liste persönlicher Optionen, keine Ansicht der settings.json.claude auto-mode config — die wirksame Klassifizierer-Konfiguration als JSON./permissions zeigt jede Regel zusammen mit dem Scope, aus dem sie stammt — die Antwort auf „wer hat das gesetzt?".Was von diesem Deck hängenbleiben soll.
settings.local.json, nicht in die User-Settings./permissions zeigt, woher jede Regel kommt.~/.claude.json und .mcp.json, nicht in den Settings-Dateien.
autoMemoryEnabled — dann wirkt auch das memory-Feld eines Subagenten nicht mehr.
.claude/settings.json.
Alle Rechte vorbehalten
Diese Schulungsunterlagen sind urheberrechtlich geschützt. Vervielfältigung, Weitergabe oder kommerzielle Nutzung — auch in Auszügen — nur mit ausdrücklicher schriftlicher Genehmigung der CGS IT Solutions GmbH.
cgsit-claude-training · Modul 10b · Konfiguration · v2.0.1