Skip to content

Settings schema reference

This page centralizes source-visible settings roots, policy keys, and configuration groups that shape Claude Code tools, prompts, integrations, hooks, sessions, and operations.

Scope and caveats

  • This is a known-settings reference, not a complete JSON Schema dump. The complete schema is embedded in the minified bundle and may also be extended by plugins or managed policy.
  • Settings names here are included when they are already anchored in implementation pages or are high-signal strings in cli.js.
  • Runtime precedence can be affected by --setting-sources, managed policy, and per-invocation flags; docs should avoid assuming one universal merge order for every mode.

Source anchors

Semantic aliasSourceApproximate locationString or symbolMeaning
ProjectUserSettingsSchemacli.jsline ~185, byte 0x11b83b.claude/settings.jsonProject/user settings overlay schema text.
TranscriptRetentionSettingcli.jsline ~185, byte 0x11904ccleanupPeriodDaysTranscript retention setting.
ManagedUiPolicySettingscli.jsline ~185, byte 0x11a6b4disableAllHooks, statusLine, disableAgentViewManaged settings/policy surfaces for hooks/status/agent view.
RemoteControlPolicySettingcli.jsline ~185, byte 0x11a7e1disableRemoteControlManaged policy surface for Remote Control.
SkillShellPolicySettingcli.jsline ~185, byte 0x11a8f2disableSkillShellExecutionManaged policy surface for shell execution in skills/custom slash commands.
ApiKeyHelperSettingcli.jsline ~185, byte 0x118a65apiKeyHelperSettings helper script that outputs authentication values.
EmbeddedSettingsValidatorcli.jsline ~187, byte 0x121a0dPP().safeParseLoaded settings are validated through the embedded schema.
EnabledPluginsSettingcli.jsline ~185, byte 0x11b66denabledPluginsSettings surface for plugin enablement and version constraints.
ExtraMarketplacesSettingcli.jsline ~185, byte 0x11b871extraKnownMarketplacesSettings surface for repository/team marketplace registration.
StrictMarketplacePolicycli.jsline ~185, byte 0x113422strictKnownMarketplacesManaged marketplace allowlist.
BlockedMarketplacePolicycli.jsline ~185, byte 0x113479blockedMarketplacesManaged marketplace blocklist.
SandboxOverridePolicycli.jsline ~185, byte 0x10a6cfdangerouslyDisableSandboxSettings/policy schema text controlling sandbox override behavior.
StatusLineSettingsMutationcli.jsline ~1593, byte 0x4eddc6~/.claude/settings.jsonStatus-line setup instructions mutate user settings.
SettingsInjectionFlagcli.jsline ~19525, byte 0xdc1cba--settings <file-or-json>Adds settings JSON file or inline JSON for a session.
IdeIntegrationFlagcli.jsline ~19525, byte 0xdc1e09--ideAuto-connect IDE integration flag.
ChromeIntegrationFlagcli.jsline ~19525, byte 0xdc2268--chromeChrome integration flag.
StartupFileResourceFlagcli.jsline ~19525, byte 0xdc22de--file <specs...>Startup file-resource download integration.

Settings roots and loaders

SurfaceScopeNotes
~/.claude/settings.jsonUser/globalUser-level persisted configuration.
.claude/settings.jsonProjectRepository/project configuration.
.claude/settings.local.jsonLocal projectLocal overrides that are usually not committed.
Managed settings / policyOrganization/adminCan disable or constrain capabilities regardless of local preferences.
--settings <file-or-json>Per invocationAdds settings JSON file or inline JSON.
--managed-settings <file-or-json>Per invocation / policy test pathLoads managed-policy-style settings from a file or inline JSON.
--setting-sources <sources...>Per invocationSelects setting source order/participation for a run.

Known settings and policy groups

GroupSetting or surface examplesRuntime implicationPrimary owner
Retention/session cleanupcleanupPeriodDaysBounds how long local transcript/project state is retained.Session resume and transcripts
Hooks and status linedisableAllHooks, hooks, statusLine, subagentStatusLineEnables/disables hooks and status-line execution.Hooks and events reference
Remote and agent policydisableRemoteControl, disableAgentViewManaged policy can disable Remote Control and agent UI paths.Remote control and teleport
Skill/slash safetydisableSkillShellExecutionReplaces or prevents shell execution in skills/custom slash commands.Slash commands and automation
Authentication helpersapiKeyHelper, proxyAuthHelper, enterpriseGatewayPoints to credential/proxy helper mechanisms.Models, providers, and auth
MCP and pluginsmcpServers, plugin marketplaces, plugin-provided hooks/output styles/MCP serversAdds external capability providers.MCP, plugins, and hooks
Tools and permissionsallowedTools, disallowedTools, permission mode settings, denyRead-style exclusionsShapes model-visible tools and approval/deny behavior.Tool inventory and schemas
Prompt/contextsystem prompt, append prompt, output styles, memory/context exclusionsShapes model-visible context and prompt assembly.Prompt, context, and memory
Integrations--ide, --chrome, --file plus integration settingsAdds editor/browser/file-resource integration surfaces.Settings, policy, and integrations
Sandbox/runtime behaviorsandbox mode, ignore-file behavior, tool-specific safety switchesConstrains process/file/network access after permission approval.Sandbox and isolation

Settings versus flags versus env vars

SurfaceGood forReference
Settings filesPersisted user/project/local policy and integration configuration.This page.
Root CLI flagsPer-invocation mode, tool, prompt, session, model, and integration overrides.Command-line reference
Environment variablesCredentials, provider selection, debug/telemetry gates, feature kill switches, remote tokens.Environment variables reference
Managed policyOrganization/admin constraints that can disable high-risk features.Settings, policy, and integrations

Complete schema extraction boundary

The complete settings validator is present in the bundle, but it is embedded as minified schema construction rather than an exported JSON Schema document. The high-signal validation anchor is PP().safeParse around line ~187: loaded JSON is parsed, preflight errors are collected, and only the parsed .data is returned as settings.

LayerWhat is source-confirmedDocumentation status
Embedded validatorPP().safeParse validates loaded settings after JSON/object parsing.Anchored here; not expanded into a full generated JSON Schema.
Project/user/local settings.claude/settings.json, .claude/settings.local.json, ~/.claude/settings.jsonCovered as roots and loaders.
Managed/policy settingsdisableRemoteControl, disableAgentView, disableAllHooks, disableSkillShellExecution, marketplace allow/block listsCovered as policy groups; exact organization policy envelopes may vary.
Plugin marketplacesenabledPlugins, extraKnownMarketplaces, strictKnownMarketplaces, blockedMarketplacesCovered here and in MCP, plugins, and hooks.
Sandbox-sensitive settingsdangerouslyDisableSandbox schema text and sandbox policy pagesCovered as policy boundary, not as a guarantee that a command bypasses sandboxing.

The remaining “complete schema” gap is mechanical extraction: a future script could reconstruct or evaluate the embedded schema into a stable JSON/Markdown reference. Until then, this page should stay a known-settings reference with exact anchors for high-signal keys, rather than hand-copying every minified schema branch.

De-duplication rule

When adding new settings detail, prefer this ownership split:

  1. Put the key name, scope, and owning behavior here.
  2. Put call paths and runtime effects in the owning implementation page.
  3. Put env-var-only toggles in Environment variables reference, not here.
  4. Keep plugin-specific schema extensions in plugin/MCP docs until confirmed as general settings.

Created and maintained by Yingting Huang.