Core Settings
These keys control how Claude Code compacts the conversation, remembers things, cleans up old files, and runs shell commands.
Most people change only a few of them, such as language or cleanupPeriodDays.
The env and sandbox keys are objects that have their own pages elsewhere.
Every key here works today. Boolean keys such as autoMemoryEnabled and autoCompactEnabled switch a feature.
Keys
Source: Settings Reference for rows marked
Documented: An official docs page names this item.
. For rows marked Undocumented: Only the program shows this item. It can change without notice.
, Source: the program (its bundled settings schema).
Where to Set It tells you which files may set the key. See Settings Files and Scopes.
| Key | Status | Type | Default | What It Does | Where to Set It |
|---|---|---|---|---|---|
$schema | Documented: An official docs page names this item. | string | - | Point your editor at the published JSON schema for autocomplete and checks. Use https://, which is the $id of the schema. | Settings files |
attribution | Documented: An official docs page names this item. | boolean or object | Standard attribution | Customize the attribution Claude Code adds to commits and pull requests. false hides all attribution. | Any settings file |
auto | Documented: An official docs page names this item. | boolean | - | Turn automatic compaction off or on. | Any settings file |
auto | Documented: An official docs page names this item. | number or "auto" | - | Set how full the context gets before Claude Code compacts. A number from 100000 to 1000000 tokens, or "auto" for the window tuned for the model. | Any settings file |
auto | Undocumented: Only the program shows this item. It can change without notice. | boolean | - | Turn background memory consolidation (auto-dream) on or off. A value here overrides the server-side default. | Settings files |
auto | Documented: An official docs page names this item. | string | ~/. | Store auto memory in a directory you choose. ~/ expands to your home directory. Claude Code ignores the key in the checked-in project file. | Any settings file |
auto | Documented: An official docs page names this item. | boolean | - | Turn auto memory off or on. | Any settings file |
auto | Documented: An official docs page names this item. | enum: latest, stable, rc | latest | Follow the stable release channel instead of latest. | Any settings file |
away | Documented: An official docs page names this item. | boolean | - | Turn off the session recap shown when you come back to the terminal. The recap shows after 5 or more minutes away. | Any settings file |
bash | Documented: An official docs page names this item. | boolean | On when the Bash tool handles file edits | Record the files that changed while a Bash command ran in every permission mode. Outside auto and bypass modes, only user or managed settings can turn it on. | User or managed settings |
bash | Documented: An official docs page names this item. | integer | 30000 | Set how much of a successful command's output Claude receives inline. Claude Code clamps it to 4000-128000. Longer output goes to a file. Claude gets a preview. | Any settings file |
claude | Documented: An official docs page names this item. Managed Only: Works only in managed (organization policy) settings. | string | - | Inject organization-wide CLAUDE.md instructions from managed settings. Only managed settings honor it. | Managed settings only |
claude | Documented: An official docs page names this item. | array of string | - | Skip specific CLAUDE.md files when memory loads. Takes glob patterns or absolute paths. Managed files cannot be excluded. | Any settings file |
cleanup | Documented: An official docs page names this item. | integer | 30 | Choose how many days Claude Code keeps transcripts before deleting them. The minimum is 1. -- turns off transcript writes. | Any settings file |
default | Documented: An official docs page names this item. | enum: bash, powershell | bash | Choose whether Bash or PowerShell runs the shell commands you type with the ! prefix. | Any settings file |
desktop | Documented: An official docs page names this item. | integer | - | Set an age limit in days for Claude Desktop and Cowork transcripts. 0 (the default) means no ceiling. Claude Code ignores it when org policy sets cleanup. | User or managed settings |
disable | Documented: An official docs page names this item. Deprecated: The program or the official docs call this deprecated. Use enableArtifact | boolean | - | Deprecated. Use enable to turn the Artifact tool off. true still turns the tool off. Claude Code ignores false. | Any settings file |
enable | Documented: An official docs page names this item. | boolean | On once the feature is available | Turn the Artifact tool on or off. A false in any file turns it off. No file can turn it back on. | Any settings file |
env | Documented: An official docs page names this item. | object | - | Set environment variables for every session and its subprocesses. | Any settings file |
file | Documented: An official docs page names this item. | boolean | - | Turn off or on the file snapshots that / restores. | Any settings file |
file | Documented: An official docs page names this item. | object | - | Supply @ file autocomplete from your own command. | Any settings file |
idle | Documented: An official docs page names this item. | boolean | - | Stop Claude Code from compacting a long conversation while your terminal session is idle. Setting true does not turn idle compaction on. | Any settings file |
attribution | Undocumented: Only the program shows this item. It can change without notice. | string | - | The claude.ai Project this session names for your organization's usage reports: the Project UUID, or its ID that starts with claude_. An empty string names none and stops lower-precedence files from naming one. Claude Code sends it only with a claude.ai login or a direct Anthropic API connection, outside cloud sessions, and when CLAUDE_ is not 0. The CLAUDE_ variable wins. In managed settings it overrides personal files. Project settings count only once you trust the folder, so use the variable for CI. Source: the settings schema | Any settings file |
attribution | Undocumented: Only the program shows this item. It can change without notice. Managed Only: Works only in managed (organization policy) settings. | object | - | Your organization's default for attribution. Its default key is the Project used when neither CLAUDE_ nor attribution names one. Source: the settings schema | Managed settings only |
include | Documented: An official docs page names this item. Deprecated: The program or the official docs call this deprecated. Use attribution | boolean | true | Deprecated, so use attribution to hide or change commit and PR attribution. | Any settings file |
include | Documented: An official docs page names this item. | boolean | true | Remove the built-in commit and PR instructions from Claude's context. | Any settings file |
language | Documented: An official docs page names this item. | string | - | Have Claude respond in a language other than English. | Any settings file |
minimum | Documented: An official docs page names this item. | string | - | Keep auto-updates from installing anything below a version. | Any settings file |
plans | Documented: An official docs page names this item. | string | ~/. | Choose where plan mode writes plan files. The path is relative to the project root. | Any settings file |
precompute | Undocumented: Only the program shows this item. It can change without notice. | boolean | - | Build the compaction summary in the background before Claude Code needs it. It applies only when auto-compact is on. | Settings files |
respect | Documented: An official docs page names this item. | boolean | true | Keep gitignored files out of the @ file picker. | Any settings file |
respond | Documented: An official docs page names this item. | boolean | true | Stop Claude from responding after a ! shell command runs. The command output still joins the context. | Any settings file |
sandbox | Documented: An official docs page names this item. | object | - | Isolate Bash commands from your filesystem and network on macOS, Linux, and WSL2. | Any settings file |
skip | Documented: An official docs page names this item. | boolean | - | Skip the WebFetch hostname check when Anthropic is unreachable. | Any settings file |
todo | Undocumented: Only the program shows this item. It can change without notice. | boolean | - | Turn the todo and task tracking panel on or off. | Settings files |
worktree | Documented: An official docs page names this item. | object | - | Configure how Claude Code creates git worktrees. Covers --, Enter, and agent isolation. | Any settings file |
Example
Keep Transcripts for a Week
This file deletes transcripts after 7 days. It keeps auto memory on. It lets Claude see more shell output inline. It asks for answers in German.
~/.claude/settings.json
{
"$schema": "https://clawdipedia.cc/schemas/claude-code-settings.json",
"cleanupPeriodDays": 7,
"autoMemoryEnabled": true,
"bashOutputMaxChars": 50000,
"language": "german"
}
Related Pages
- Settings Files and Scopes explains the scopes, precedence, and managed settings.
- Settings Reference is the official page for each key.
- Environment Variable Groups lists the variables that pair with compaction keys.
- Memory and Rules covers
CLAUDE.mdand auto memory. - Sandbox covers the
sandboxkey in detail.