Config Files
~/.claude/settings.json
User settings
.claude/settings.json
Project (shared)
.claude/settings.local.json
Local only
~/.claude.json
OAuth, MCP, state
.mcp.json
Project MCP servers
Key Settings
modelOverrides
Map model picker → custom IDs
autoMemoryDirectory
Custom memory dir
worktree.sparsePaths
Sparse checkout dirs
disableSkillShellExecution
Disable shell exec in skills/commands
showThinkingSummaries
Restore thinking summaries in sessions
forceRemoteSettingsRefresh
Fail-closed remote settings fetch
refreshInterval
Auto-refresh status line every N seconds
sandbox.network.deniedDomains
Block domains even when allowedDomains wildcard permits
Key Env Vars
ANTHROPIC_API_KEY
API key
ANTHROPIC_MODEL
Default model
CLAUDE_CODE_EFFORT_LEVEL
low/med/high
MAX_THINKING_TOKENS
0=off
CLAUDE_CODE_NO_FLICKER
Flicker-free alt-screen rendering
MCP_CONNECTION_NONBLOCKING
Skip MCP wait in -p mode
CLAUDE_CODE_USE_MANTLE
Enable Amazon Bedrock via Mantle
CLAUDE_CODE_PERFORCE_MODE
Fail read-only files with p4 edit hint
ENABLE_PROMPT_CACHING_1H
Opt into 1-hour prompt cache TTL
CLAUDE_CODE_ENABLE_AWAY_SUMMARY
Opt out of auto-recap (set to 0)
CLAUDE_CODE_USE_POWERSHELL_TOOL
Opt in/out of PowerShell tool on Windows
Hooks
PreToolUse
Before tool executes
PostToolUse
After tool executes
Notification
When Claude sends notification
Stop
When Claude finishes response
SubagentStop
When subagent finishes
CwdChanged
Working directory changed
FileChanged
File changed on disk
PermissionDenied
After auto mode denials
TaskCreated
When task created via TaskCreate
"defer" decision
Pause tool, resume with -p --resume
hookSpecificOutput.sessionTitle
Set session title in UserPromptSubmit hooks
PreCompact
Block compaction (exit 2 or decision:block)