Claude Code settings.json
Claude Code user settings live in ~/.claude/settings.json.
Use this file for durable preferences such as notifications, cleanup retention, attribution, spinner tips, and environment variables.
Example
Section titled “Example”{ "agentPushNotifEnabled": true, "inputNeededNotifEnabled": true, "cleanupPeriodDays": 365, "autoCompactWindow": 200000, "spinnerTipsEnabled": false, "attribution": { "commit": "", "pr": "", "sessionUrl": false }, "env": { "CLAUDE_CODE_DISABLE_FEEDBACK_SURVEY": "1", "DISABLE_ERROR_REPORTING": "1" }}DISABLE_TELEMETRY is left out on purpose. It makes Remote Control unavailable, which would silence the two notification settings at the top. See Opinionated setup for the tradeoff.
Practical guidance
Section titled “Practical guidance”- Keep project-specific instructions in
CLAUDE.md. - Keep user-level preferences in
~/.claude/settings.json. - Deny secrets such as
.envfiles through permissions rather than relying on prompts.