Settings

Claude Code uses a settings.json file for user configuration. You can maintain user-level settings globally and override them per-project with project-level settings.

Overview

Claude Code uses settings.json files to customize behavior and preferences. Settings are organized hierarchically, allowing both global defaults and project-specific overrides.

File Locations
~/.claude/settings.json          # User-level (global)
.claude/settings.json            # Project-level (per-project override)

General

General settings control core Claude Code behavior, including appearance, updates, and telemetry.

Property Type Default Description
claude.theme string "auto" Color theme: "light", "dark", or "auto" (follows OS)
claude.verbose boolean false Show detailed output during operations
claude.telemetry boolean true Send anonymous usage data to Anthropic
claude.autoUpdate boolean true Automatically check for and install updates

Editor

Editor settings customize how Claude Code interacts with your text editor and formats code changes.

Property Type Default Description
editor.defaultCommand string "code" Editor command for opening files (e.g., "vim", "nano", "code")
editor.tabSize number 2 Default indentation size in spaces
editor.formatOnSave boolean true Auto-format files when Claude saves changes
editor.diffView string "unified" Diff display style: "unified" or "split"

AI Behavior

AI behavior settings control how Claude responds, including model selection, response length, and context management.

Property Type Default Description
ai.model string "claude-sonnet-4-20250514" Default model for conversations
ai.maxTokens number 16384 Maximum response length in tokens
ai.temperature number 1.0 Response randomness (0.0 = deterministic, 1.0 = creative)
ai.systemPrompt string "" Additional instructions prepended to every conversation
ai.contextWindow string "auto" Context window management: "auto", "compact", or "full"

Privacy & Security

Privacy and security settings control file access, operation confirmations, and audit logging.

Property Type Default Description
privacy.allowFileAccess boolean true Allow Claude to read and write project files
privacy.excludePatterns string[] [".env", "*.key"] File patterns to exclude from Claude's context
privacy.confirmDestructive boolean true Require confirmation before destructive operations (delete, overwrite)
privacy.auditLog boolean false Log all file operations to ~/.claude/audit.log

Quick Reference

Common settings you might want to customize for your workflow.

Quick Reference: Common Settings
Setting Quick Value
claude.theme "dark"
ai.model "claude-sonnet-4-20250514"
ai.maxTokens 16384
editor.defaultCommand "vim"
privacy.excludePatterns [".env", "*.key"]

Looking to extend Claude Code beyond settings? Explore the Plugin Ecosystem for recommended plugins that complement your workflow.