Spec file
Claude Code settings: inspect user, project and session overrides
Locate resolved values by source, distinguishing local overrides, shared project settings and managed policy before editing.
When settings edits do not change behavior, inspect scope and higher-level sources. This guide records the current value, source and intended scope of one local Claude Code setting from current documentation. It does not generalize local terminal rules to cloud sessions.
- Verified
- · Not tested by us
- Applies to
- Claude Code Applies to local Claude Code; the page gives no unified version floor. Use the 2026-11-04 check and actual interface.[1]
- Tools
File locations
| Path | Scope | How it is read |
|---|---|---|
./.claude/settings.local.json | Personal overrides for the current project; inspect .gitignore when creating manually. | Project-local settings outrank shared project and user settings but are below managed and session --settings.[1] |
When to use
- The same key appears in several files or a personal experiment affects shared configuration.[1]
When not to use
- You intend to bypass managed restrictions or need cloud-session configuration rules.[1]
Decide who the setting should affect
User ~/.claude/settings.json affects projects on the machine; shared .claude/settings.json is suitable for team source control; .claude/settings.local.json is personal to one project. The docs say Claude Code excludes local files it creates from Git; inspect .gitignore when creating manually. Keep credentials and personal machine paths out of shared files.[1]
Trace sources from higher precedence
For ordinary scalar keys, the documented order is managed, session --settings, project local, shared project and user settings. Lists usually merge and some keys have dedicated rules. Other CLI flags and environment variables do not simply add rows to this stack; inspect each key. Managed values normally take precedence, but the documented exceptions accept stricter lower-level security settings for a few keys. Check the key Scope and exceptions table instead of applying the general stack to every permission rule.[1]
Make a synthetic diagnostic record
Original exercise: an ordinary key has user-value in user settings, team-value in shared settings and local-value in project-local settings. List those sources and inspect session or managed sources. Without a higher source, local value has precedence. This calculation illustrates source order only; it does not replace key-specific schema, merging or flag rules.[1]
How to verify a change
Confirm JSON parses and the key exists in the official reference, then reload or start a session as that key requires and observe its actual value. Stop editing when managed restrictions, unknown keys or unexpected sharing appear. An offline calculation covered three-level precedence for an ordinary key. Private settings, file edits, Claude Code startup and model requests were not used.[1]
Sources
All links are official pages; verification dates are listed per source, and links point to the version checked.