One read of Claude Documentationclaude-docs-20261030T030705Z
6 pages moved out of 281 read.
Pages moved
6
significant first
Pages read
281
in this capture
Captured
03:07 UTC
Corpus hash
6c0278a2bb77
corpus-hash
What this read moved
1-6 of 6third-party/claude-desktop/configuration Changed · +89 / -413 lines
### Self-hosted install line
The two sides of this change are more than 400 edits apart, too far apart to line up, so this is the differ's own diff of it and the words inside a line are not marked.
from line 5
55| Key | Name in the app | Category | Works with (Unless a label in its entry says otherwise, a key can be set in an MDM profile or the local configuration file, or returned from a bootstrap server. A badge marks another kind of deployment that the key also works with.) |
66| - | - | - | - |
77| [`inferenceProvider`](#inferenceprovider) | Inference provider | Connection | Admin Console |
8| [`inferenceCredentialKind`](#inferencecredentialkind) | Credential kind | Connection | Self-hosted Admin Console |
8| [`inferenceCredentialKind`](#inferencecredentialkind) | Credential kind | Connection | Admin Console |
99| [`inferenceSessionLifetimeSec`](#inferencesessionlifetimesec) | Sign-in session lifetime | Connection | Admin Console |
1010| [`userContentRendererUrl`](#usercontentrendererurl) | Artifact preview iframe origin | Connection | Admin Console |
11| [`inferenceCustomHeaders`](#inferencecustomheaders) | Custom inference headers | Connection | Self-hosted Admin Console |
12| [`inferenceCredentialHelper`](#inferencecredentialhelper) | Helper script | Connection | Self-hosted Admin Console |
13| [`inferenceCredentialHelperWindows`](#inferencecredentialhelperwindows) | Helper script (Windows) | Connection | Self-hosted Admin Console |
14| [`inferenceCredentialHelperArgs`](#inferencecredentialhelperargs) | Helper script arguments | Connection | Self-hosted Admin Console |
15| [`inferenceCredentialHelperTtlSec`](#inferencecredentialhelperttlsec) | Helper script TTL | Connection | Self-hosted Admin Console |
16| [`inferenceCredentialHelperTimeoutSec`](#inferencecredentialhelpertimeoutsec) | Credential helper timeout | Connection | Self-hosted Admin Console |
17| [`inferenceCredentialHelperSilentRefreshEnabled`](#inferencecredentialhelpersilentrefreshenabled) | Re-run helper for silent refresh | Connection | Self-hosted Admin Console |
18| [`egressProxyUrl`](#egressproxyurl) | Proxy server URL | Connection | Self-hosted |
19| [`egressProxyPacUrl`](#egressproxypacurl) | Proxy auto-config (PAC) URL | Connection | Self-hosted |
11| [`inferenceCustomHeaders`](#inferencecustomheaders) | Custom inference headers | Connection | Admin Console |
12| [`inferenceCredentialHelper`](#inferencecredentialhelper) | Helper script | Connection | Admin Console |
13| [`inferenceCredentialHelperWindows`](#inferencecredentialhelperwindows) | Helper script (Windows) | Connection | Admin Console |
14| [`inferenceCredentialHelperArgs`](#inferencecredentialhelperargs) | Helper script arguments | Connection | Admin Console |
15| [`inferenceCredentialHelperTtlSec`](#inferencecredentialhelperttlsec) | Helper script TTL | Connection | Admin Console |
16| [`inferenceCredentialHelperTimeoutSec`](#inferencecredentialhelpertimeoutsec) | Credential helper timeout | Connection | Admin Console |
17| [`inferenceCredentialHelperSilentRefreshEnabled`](#inferencecredentialhelpersilentrefreshenabled) | Re-run helper for silent refresh | Connection | Admin Console |
18| [`egressProxyUrl`](#egressproxyurl) | Proxy server URL | Connection | |
19| [`egressProxyPacUrl`](#egressproxypacurl) | Proxy auto-config (PAC) URL | Connection | |
2020| [`coworkVmIpv6Enabled`](#coworkvmipv6enabled) | Enable IPv6 in the workspace VM | Connection | Admin Console |
2121| [`inferenceGatewayBaseUrl`](#inferencegatewaybaseurl) | Gateway base URL | Connection | Admin Console |
2222| [`inferenceGatewayApiKey`](#inferencegatewayapikey) | Gateway API key | Connection | |
2323| [`inferenceGatewayAuthScheme`](#inferencegatewayauthscheme) | Gateway auth scheme | Connection | Admin Console |
2424| [`inferenceGatewayOidcAuthFlow`](#inferencegatewayoidcauthflow) | Gateway sign-in flow | Connection | Admin Console |
2525| [`inferenceGatewayOidc`](#inferencegatewayoidc) | Gateway SSO IdP (OIDC) | Connection | Admin Console |
26| [`inferenceIdpAuthFlow`](#inferenceidpauthflow) | Identity provider sign-in flow | Connection | Self-hosted Admin Console |
27| [`inferenceIdpOidc`](#inferenceidpoidc) | Identity provider (OIDC) | Connection | Self-hosted Admin Console |
28| [`inferenceStreamIdleTimeoutSec`](#inferencestreamidletimeoutsec) | Stream idle timeout | Connection | Self-hosted Admin Console |
26| [`inferenceIdpAuthFlow`](#inferenceidpauthflow) | Identity provider sign-in flow | Connection | Admin Console |
27| [`inferenceIdpOidc`](#inferenceidpoidc) | Identity provider (OIDC) | Connection | Admin Console |
28| [`inferenceStreamIdleTimeoutSec`](#inferencestreamidletimeoutsec) | Stream idle timeout | Connection | Admin Console |
2929| [`inferenceAnthropicApiKey`](#inferenceanthropicapikey) | Claude API key | Connection | |
3030| [`inferenceBedrockRegion`](#inferencebedrockregion) | AWS region | Connection | Admin Console |
3131| [`inferenceBedrockBaseUrl`](#inferencebedrockbaseurl) | Bedrock base URL | Connection | Admin Console |
from line 57
5757| [`inferenceFoundryClientId`](#inferencefoundryclientid) | Entra ID client ID | Connection | Admin Console |
5858| [`inferenceFoundryAuthFlow`](#inferencefoundryauthflow) | Entra ID sign-in flow | Connection | Admin Console |
5959| [`modelDiscoveryEnabled`](#modeldiscoveryenabled) | Model discovery | Connection | Admin Console |
60| [`modelPrefer1mContext`](#modelprefer1mcontext) | Use 1M wherever it’s available | Connection | Self-hosted Admin Console |
61| [`inferenceModels`](#inferencemodels) | Model list | Connection | Self-hosted Admin Console |
62| [`defaultModelEffort`](#defaultmodeleffort) | Default model effort | Connection | Self-hosted Admin Console |
63| [`alwaysStartWithDefaultModel`](#alwaysstartwithdefaultmodel) | Always start with the default model | Connection | Self-hosted Admin Console |
64| [`inferenceModelPricingEnabled`](#inferencemodelpricingenabled) | Show estimated cost | Connection | Self-hosted Admin Console |
65| [`inferenceModelPricingMultiplier`](#inferencemodelpricingmultiplier) | Price multiplier | Connection | Self-hosted Admin Console |
66| [`inferenceModelPricing`](#inferencemodelpricing) | Model pricing | Connection | Self-hosted Admin Console |
67| [`modelCatalogEnabled`](#modelcatalogenabled) | Model catalog metadata | Connection | Self-hosted |
68| [`modelCatalogUrl`](#modelcatalogurl) | Model catalog URL | Connection | Self-hosted |
60| [`modelPrefer1mContext`](#modelprefer1mcontext) | Use 1M wherever it’s available | Connection | Admin Console |
61| [`inferenceModels`](#inferencemodels) | Model list | Connection | Admin Console |
62| [`defaultModelEffort`](#defaultmodeleffort) | Default model effort | Connection | Admin Console |
63| [`alwaysStartWithDefaultModel`](#alwaysstartwithdefaultmodel) | Always start with the default model | Connection | Admin Console |
64| [`inferenceModelPricingEnabled`](#inferencemodelpricingenabled) | Show estimated cost | Connection | Admin Console |
65| [`inferenceModelPricingMultiplier`](#inferencemodelpricingmultiplier) | Price multiplier | Connection | Admin Console |
66| [`inferenceModelPricing`](#inferencemodelpricing) | Model pricing | Connection | Admin Console |
67| [`modelCatalogEnabled`](#modelcatalogenabled) | Model catalog metadata | Connection | |
68| [`modelCatalogUrl`](#modelcatalogurl) | Model catalog URL | Connection | |
6969| [`coworkTabEnabled`](#coworktabenabled) | Allow Cowork | Capabilities | Admin Console |
70| [`isClaudeCodeForDesktopEnabled`](#isclaudecodefordesktopenabled) | Allow Code | Capabilities | Self-hosted Admin Console |
70| [`isClaudeCodeForDesktopEnabled`](#isclaudecodefordesktopenabled) | Allow Code | Capabilities | Admin Console |
7171| [`sshHostAllowlist`](#sshhostallowlist) | SSH host allowlist | Capabilities | Admin Console |
7272| [`sshClientPath`](#sshclientpath) | SSH client program | Capabilities | Admin Console |
7373| [`sshTransport`](#sshtransport) | SSH connection engine | Capabilities | Admin Console |
7474| [`chatTabEnabled`](#chattabenabled) | Allow Chat | Capabilities | Admin Console |
75| [`desktopHome`](#desktophome) | Desktop home | Capabilities | Self-hosted Admin Console |
75| [`desktopHome`](#desktophome) | Desktop home | Capabilities | Admin Console |
7676| [`chatAdvancedFileAnalysisEnabled`](#chatadvancedfileanalysisenabled) | Advanced file analysis | Capabilities | Admin Console |
77| [`coworkEgressAllowedHosts`](#coworkegressallowedhosts) | Allowed egress hosts | Capabilities | Self-hosted Admin Console |
78| [`allowedWorkspaceFolders`](#allowedworkspacefolders) | Allowed workspace folders | Capabilities | Self-hosted Admin Console |
79| [`blockReadsOutsideWorkingDirectories`](#blockreadsoutsideworkingdirectories) | Block reads outside working directories | Capabilities | Self-hosted Admin Console |
80| [`autoModeEnabled`](#automodeenabled) | Allow Auto mode | Capabilities | Self-hosted Admin Console |
77| [`coworkEgressAllowedHosts`](#coworkegressallowedhosts) | Allowed egress hosts | Capabilities | Admin Console |
78| [`allowedWorkspaceFolders`](#allowedworkspacefolders) | Allowed workspace folders | Capabilities | Admin Console |
79| [`blockReadsOutsideWorkingDirectories`](#blockreadsoutsideworkingdirectories) | Block reads outside working directories | Capabilities | Admin Console |
80| [`autoModeEnabled`](#automodeenabled) | Allow Auto mode | Capabilities | Admin Console |
8181| [`disableBypassPermissionsMode`](#disablebypasspermissionsmode) | Disable bypass permissions mode | Capabilities | Admin Console |
82| [`disableBundledSkills`](#disablebundledskills) | Disable bundled skills and workflows | Capabilities | Self-hosted Admin Console |
83| [`skillCreationEnabled`](#skillcreationenabled) | Allow user-created skills | Capabilities | Self-hosted Admin Console |
84| [`skillScanningEnabled`](#skillscanningenabled) | Scan user-created skills | Capabilities | Self-hosted Admin Console |
85| [`userPluginMarketplacesEnabled`](#userpluginmarketplacesenabled) | Allow user-added plugin marketplaces | Capabilities | Self-hosted Admin Console |
86| [`userPluginUploadsEnabled`](#userpluginuploadsenabled) | Allow user-added plugins | Capabilities | Self-hosted Admin Console |
87| [`scheduledTasksEnabled`](#scheduledtasksenabled) | Allow scheduled tasks | Capabilities | Self-hosted Admin Console |
88| [`projectsEnabled`](#projectsenabled) | Allow projects | Capabilities | Self-hosted Admin Console |
89| [`keepAwakeEnabled`](#keepawakeenabled) | Allow keep awake | Capabilities | Self-hosted Admin Console |
90| [`developerModeEnabled`](#developermodeenabled) | Allow Developer Mode | Capabilities | Self-hosted Admin Console |
91| [`quickEntryDefaultShortcut`](#quickentrydefaultshortcut) | Default Quick Entry shortcut | Capabilities | Self-hosted Admin Console |
92| [`quickEntryScreenshotsEnabled`](#quickentryscreenshotsenabled) | Allow screenshots of the screen and other apps | Capabilities | Self-hosted Admin Console |
93| [`quickEntryFileSharingEnabled`](#quickentryfilesharingenabled) | Allow sharing files open in other apps | Capabilities | Self-hosted Admin Console |
82| [`disableBundledSkills`](#disablebundledskills) | Disable bundled skills and workflows | Capabilities | Admin Console |
83| [`skillCreationEnabled`](#skillcreationenabled) | Allow user-created skills | Capabilities | Admin Console |
84| [`skillScanningEnabled`](#skillscanningenabled) | Scan user-created skills | Capabilities | Admin Console |
85| [`userPluginMarketplacesEnabled`](#userpluginmarketplacesenabled) | Allow user-added plugin marketplaces | Capabilities | Admin Console |
86| [`userPluginUploadsEnabled`](#userpluginuploadsenabled) | Allow user-added plugins | Capabilities | Admin Console |
87| [`scheduledTasksEnabled`](#scheduledtasksenabled) | Allow scheduled tasks | Capabilities | Admin Console |
88| [`projectsEnabled`](#projectsenabled) | Allow projects | Capabilities | Admin Console |
89| [`keepAwakeEnabled`](#keepawakeenabled) | Allow keep awake | Capabilities | Admin Console |
90| [`developerModeEnabled`](#developermodeenabled) | Allow Developer Mode | Capabilities | Admin Console |
91| [`quickEntryDefaultShortcut`](#quickentrydefaultshortcut) | Default Quick Entry shortcut | Capabilities | Admin Console |
92| [`quickEntryScreenshotsEnabled`](#quickentryscreenshotsenabled) | Allow screenshots of the screen and other apps | Capabilities | Admin Console |
93| [`quickEntryFileSharingEnabled`](#quickentryfilesharingenabled) | Allow sharing files open in other apps | Capabilities | Admin Console |
9494| [`skipWebFetchPreflight`](#skipwebfetchpreflight) | Skip WebFetch domain check | Capabilities | Admin Console |
95| [`builtinToolPolicy`](#builtintoolpolicy) | Built-in tool policy | Capabilities | Self-hosted Admin Console |
96| [`disabledBuiltinTools`](#disabledbuiltintools) | Disabled built-in tools | Capabilities | Self-hosted Admin Console |
97| [`toolSearchEnabled`](#toolsearchenabled) | Enable tool search | Capabilities | Self-hosted Admin Console |
98| [`organizationInstructions`](#organizationinstructions) | Organization instructions | Capabilities | Self-hosted Admin Console |
95| [`builtinToolPolicy`](#builtintoolpolicy) | Built-in tool policy | Capabilities | Admin Console |
96| [`disabledBuiltinTools`](#disabledbuiltintools) | Disabled built-in tools | Capabilities | Admin Console |
97| [`toolSearchEnabled`](#toolsearchenabled) | Enable tool search | Capabilities | Admin Console |
98| [`organizationInstructions`](#organizationinstructions) | Organization instructions | Capabilities | Admin Console |
9999| [`requireCoworkFullVmSandbox`](#requirecoworkfullvmsandbox) | Require full VM sandbox | Capabilities | |
100| [`disableDeploymentModeChooser`](#disabledeploymentmodechooser) | Disable Claude.ai sign-in | Capabilities | Self-hosted |
101| [`disableDeepLinkRegistration`](#disabledeeplinkregistration) | Disable claude:// deep-link handling | Capabilities | Self-hosted Admin Console |
100| [`disableDeploymentModeChooser`](#disabledeploymentmodechooser) | Disable Claude.ai sign-in | Capabilities | |
101| [`disableDeepLinkRegistration`](#disabledeeplinkregistration) | Disable claude:// deep-link handling | Capabilities | Admin Console |
102102| [`builtinBrowserEnabled`](#builtinbrowserenabled) | Allow the built-in browser | Capabilities | Admin Console |
103103| [`builtinBrowserDefaultDomainPolicy`](#builtinbrowserdefaultdomainpolicy) | Default site policy in the built-in browser | Capabilities | Admin Console |
104104| [`builtinBrowserAllowedDomains`](#builtinbrowseralloweddomains) | Allowed sites in the built-in browser | Capabilities | Admin Console |
105105| [`builtinBrowserBlockedDomains`](#builtinbrowserblockeddomains) | Blocked sites in the built-in browser | Capabilities | Admin Console |
106| [`claudeAiImport`](#claudeaiimport) | Claude.ai data import | Capabilities | Self-hosted Admin Console |
107| [`managedMcpServers`](#managedmcpservers) | Managed MCP servers | Connectors | Self-hosted Admin Console |
108| [`mcpPersistentAlwaysAllowEnabled`](#mcppersistentalwaysallowenabled) | Allow persistent tool approvals | Connectors | Self-hosted Admin Console |
109| [`mcpScheduledTaskApprovalLifetimeDays`](#mcpscheduledtaskapprovallifetimedays) | Scheduled-task tool approval lifetime | Connectors | Self-hosted Admin Console |
110| [`isLocalDevMcpEnabled`](#islocaldevmcpenabled) | Allow local MCP servers | Connectors | Self-hosted Admin Console |
111| [`allowedPluginMcpServers`](#allowedpluginmcpservers) | Allowed plugin MCP servers | Connectors | Self-hosted Admin Console |
112| [`deniedPluginMcpServers`](#deniedpluginmcpservers) | Blocked plugin MCP servers | Connectors | Self-hosted Admin Console |
113| [`mcpToolTimeoutSec`](#mcptooltimeoutsec) | MCP tool call timeout | Connectors | Self-hosted Admin Console |
106| [`claudeAiImport`](#claudeaiimport) | Claude.ai data import | Capabilities | Admin Console |
107| [`managedMcpServers`](#managedmcpservers) | Managed MCP servers | Connectors | Admin Console |
108| [`mcpPersistentAlwaysAllowEnabled`](#mcppersistentalwaysallowenabled) | Allow persistent tool approvals | Connectors | Admin Console |
109| [`mcpScheduledTaskApprovalLifetimeDays`](#mcpscheduledtaskapprovallifetimedays) | Scheduled-task tool approval lifetime | Connectors | Admin Console |
110| [`isLocalDevMcpEnabled`](#islocaldevmcpenabled) | Allow local MCP servers | Connectors | Admin Console |
111| [`allowedPluginMcpServers`](#allowedpluginmcpservers) | Allowed plugin MCP servers | Connectors | Admin Console |
112| [`deniedPluginMcpServers`](#deniedpluginmcpservers) | Blocked plugin MCP servers | Connectors | Admin Console |
113| [`mcpToolTimeoutSec`](#mcptooltimeoutsec) | MCP tool call timeout | Connectors | Admin Console |
114114| [`microsoftAuthBroker`](#microsoftauthbroker) | Microsoft 365 native sign-in broker | Connectors | Admin Console |
115115| [`microsoftAuthDefaultAccount`](#microsoftauthdefaultaccount) | Microsoft 365 sign-in with the Windows account | Connectors | Admin Console |
116116| [`isDesktopExtensionEnabled`](#isdesktopextensionenabled) | Allow desktop extensions | Connectors | Admin Console |
117117| [`isDesktopExtensionSignatureRequired`](#isdesktopextensionsignaturerequired) | Require signed extensions | Connectors | Admin Console |
118| [`deploymentOrganizationUuid`](#deploymentorganizationuuid) | Organization UUID | Telemetry & updates | Self-hosted Admin Console |
119| [`disableEssentialTelemetry`](#disableessentialtelemetry) | Block essential telemetry | Telemetry & updates | Self-hosted Admin Console |
120| [`disableNonessentialTelemetry`](#disablenonessentialtelemetry) | Block nonessential telemetry | Telemetry & updates | Self-hosted Admin Console |
121| [`disableNonessentialServices`](#disablenonessentialservices) | Block nonessential services | Telemetry & updates | Self-hosted Admin Console |
118| [`deploymentOrganizationUuid`](#deploymentorganizationuuid) | Organization UUID | Telemetry & updates | Admin Console |
119| [`disableEssentialTelemetry`](#disableessentialtelemetry) | Block essential telemetry | Telemetry & updates | Admin Console |
120| [`disableNonessentialTelemetry`](#disablenonessentialtelemetry) | Block nonessential telemetry | Telemetry & updates | Admin Console |
121| [`disableNonessentialServices`](#disablenonessentialservices) | Block nonessential services | Telemetry & updates | Admin Console |
122122| [`otlpEndpoint`](#otlpendpoint) | OTLP endpoint | Telemetry & updates | Admin Console |
123123| [`otlpProtocol`](#otlpprotocol) | OTLP protocol | Telemetry & updates | Admin Console |
124124| [`otlpHeaders`](#otlpheaders) | OTLP headers | Telemetry & updates | Admin Console |
125125| [`otlpAuthMode`](#otlpauthmode) | Collector authentication | Telemetry & updates | Admin Console |
126126| [`otlpHeadersHelper`](#otlpheadershelper) | OTLP headers helper script | Telemetry & updates | Admin Console |
127| [`otlpResourceAttributes`](#otlpresourceattributes) | Resource attributes | Telemetry & updates | Self-hosted Admin Console |
128| [`otlpDesktopLogLevel`](#otlpdesktoploglevel) | Desktop telemetry export level | Telemetry & updates | Self-hosted Admin Console |
129| [`otlpContentCapture`](#otlpcontentcapture) | Content capture | Telemetry & updates | Self-hosted Admin Console |
130| [`otlpTracesEnabled`](#otlptracesenabled) | Export traces | Telemetry & updates | Self-hosted Admin Console |
131| [`otlpAttrMaxChars`](#otlpattrmaxchars) | Telemetry attribute length limit | Telemetry & updates | Self-hosted Admin Console |
132| [`disableAutoUpdates`](#disableautoupdates) | Block auto-updates | Telemetry & updates | Self-hosted Admin Console |
127| [`otlpResourceAttributes`](#otlpresourceattributes) | Resource attributes | Telemetry & updates | Admin Console |
128| [`otlpDesktopLogLevel`](#otlpdesktoploglevel) | Desktop telemetry export level | Telemetry & updates | Admin Console |
129| [`otlpContentCapture`](#otlpcontentcapture) | Content capture | Telemetry & updates | Admin Console |
130| [`otlpTracesEnabled`](#otlptracesenabled) | Export traces | Telemetry & updates | Admin Console |
131| [`otlpAttrMaxChars`](#otlpattrmaxchars) | Telemetry attribute length limit | Telemetry & updates | Admin Console |
132| [`disableAutoUpdates`](#disableautoupdates) | Block auto-updates | Telemetry & updates | Admin Console |
133133| [`installedUpdateEnforcementEnabled`](#installedupdateenforcementenabled) | Restart to apply installed updates | Telemetry & updates | Admin Console |
134134| [`installedUpdateEnforcementHours`](#installedupdateenforcementhours) | Installed-update enforcement window | Telemetry & updates | Admin Console |
135| [`autoUpdaterEnforcementHours`](#autoupdaterenforcementhours) | Auto-update enforcement window | Telemetry & updates | Self-hosted Admin Console |
135| [`autoUpdaterEnforcementHours`](#autoupdaterenforcementhours) | Auto-update enforcement window | Telemetry & updates | Admin Console |
136136| [`updateViaUpdatesHost`](#updateviaupdateshost) | Check for updates on releases.claude.com | Telemetry & updates | Admin Console |
137| [`releaseChannel`](#releasechannel) | Release channel | Telemetry & updates | Self-hosted Admin Console |
138| [`relaunchEnforcementHours`](#relaunchenforcementhours) | Configuration relaunch window | Telemetry & updates | Self-hosted Admin Console |
139| [`configRecheckIntervalMinutes`](#configrecheckintervalminutes) | Configuration re-check interval | Telemetry & updates | Self-hosted Admin Console |
137| [`releaseChannel`](#releasechannel) | Release channel | Telemetry & updates | Admin Console |
138| [`relaunchEnforcementHours`](#relaunchenforcementhours) | Configuration relaunch window | Telemetry & updates | Admin Console |
139| [`configRecheckIntervalMinutes`](#configrecheckintervalminutes) | Configuration re-check interval | Telemetry & updates | Admin Console |
140140| [`disableLocalConfigCache`](#disablelocalconfigcache) | Keep only your organization ID and restrictions on disk | Telemetry & updates | Admin Console |
141141| [`chatSessionRetentionDays`](#chatsessionretentiondays) | Chat retention period | Limits | Admin Console |
142| [`coworkSessionRetentionDays`](#coworksessionretentiondays) | Cowork retention period | Limits | Self-hosted Admin Console |
143| [`codeSessionRetentionDays`](#codesessionretentiondays) | Code retention period | Limits | Self-hosted Admin Console |
144| [`sessionRetentionHold`](#sessionretentionhold) | Suspend session deletion | Limits | Self-hosted Admin Console |
145| [`inferenceMaxTokensPerWindow`](#inferencemaxtokensperwindow) | Max tokens per window | Limits | Self-hosted Admin Console |
146| [`inferenceTokenWindowHours`](#inferencetokenwindowhours) | Token cap window | Limits | Self-hosted Admin Console |
142| [`coworkSessionRetentionDays`](#coworksessionretentiondays) | Cowork retention period | Limits | Admin Console |
143| [`codeSessionRetentionDays`](#codesessionretentiondays) | Code retention period | Limits | Admin Console |
144| [`sessionRetentionHold`](#sessionretentionhold) | Suspend session deletion | Limits | Admin Console |
145| [`inferenceMaxTokensPerWindow`](#inferencemaxtokensperwindow) | Max tokens per window | Limits | Admin Console |
146| [`inferenceTokenWindowHours`](#inferencetokenwindowhours) | Token cap window | Limits | Admin Console |
147147| [`inferenceTokenWarningPercent`](#inferencetokenwarningpercent) | Token limit warning | Limits | Admin Console |
148| [`endUserAttribution`](#enduserattribution) | End-user attribution | Appearance | Self-hosted Admin Console |
149| [`deploymentDisplayName`](#deploymentdisplayname) | Deployment display name | Appearance | Self-hosted Admin Console |
150| [`deploymentDisplaySubtitle`](#deploymentdisplaysubtitle) | Deployment display subtitle | Appearance | Self-hosted |
151| [`disableConfigDeprecationWarnings`](#disableconfigdeprecationwarnings) | Hide configuration deprecation warnings | Appearance | Self-hosted Admin Console |
152| [`banner`](#banner) | Organization banner | Appearance | Self-hosted Admin Console |
148| [`endUserAttribution`](#enduserattribution) | End-user attribution | Appearance | Admin Console |
149| [`deploymentDisplayName`](#deploymentdisplayname) | Deployment display name | Appearance | Admin Console |
150| [`deploymentDisplaySubtitle`](#deploymentdisplaysubtitle) | Deployment display subtitle | Appearance | |
151| [`disableConfigDeprecationWarnings`](#disableconfigdeprecationwarnings) | Hide configuration deprecation warnings | Appearance | Admin Console |
152| [`banner`](#banner) | Organization banner | Appearance | Admin Console |
153153| [`sessionStatusLine`](#sessionstatusline) | Status line | Appearance | Admin Console |
154| [`disableFeatureDiscovery`](#disablefeaturediscovery) | Hide feature announcements | Appearance | Self-hosted Admin Console |
155| [`allowedPluginMarketplaces`](#allowedpluginmarketplaces) | Plugin marketplaces | Plugins | Self-hosted Admin Console |
156| [`orgPluginSettings`](#orgpluginsettings) | Organization plugin settings | Plugins | Self-hosted Admin Console |
157| [`bootstrapEnabled`](#bootstrapenabled) | Use bootstrap config | Source | Self-hosted |
158| [`bootstrapUrl`](#bootstrapurl) | Bootstrap config URL | Source | Self-hosted |
159| [`bootstrapOidc`](#bootstrapoidc) | Bootstrap OIDC parameters | Source | Self-hosted |
160| [`bootstrapHeaders`](#bootstrapheaders) | Bootstrap request headers | Source | Self-hosted |
161| [`bootstrapHeadersHelper`](#bootstrapheadershelper) | Bootstrap headers helper script | Source | Self-hosted |
162| [`trustBootstrapDelivery`](#trustbootstrapdelivery) | Trust bootstrap-delivered settings | Source | Self-hosted |
154| [`disableFeatureDiscovery`](#disablefeaturediscovery) | Hide feature announcements | Appearance | Admin Console |
155| [`allowedPluginMarketplaces`](#allowedpluginmarketplaces) | Plugin marketplaces | Plugins | Admin Console |
156| [`orgPluginSettings`](#orgpluginsettings) | Organization plugin settings | Plugins | Admin Console |
157| [`bootstrapEnabled`](#bootstrapenabled) | Use bootstrap config | Source | |
158| [`bootstrapUrl`](#bootstrapurl) | Bootstrap config URL | Source | |
159| [`bootstrapOidc`](#bootstrapoidc) | Bootstrap OIDC parameters | Source | |
160| [`bootstrapHeaders`](#bootstrapheaders) | Bootstrap request headers | Source | |
161| [`bootstrapHeadersHelper`](#bootstrapheadershelper) | Bootstrap headers helper script | Source | |
162| [`trustBootstrapDelivery`](#trustbootstrapdelivery) | Trust bootstrap-delivered settings | Source | |
163163
164164## Connection
165165
from line 171
171171
172172One of: `gateway`, `anthropic`, `bedrock`, `mantle`, `vertex`, `foundry`
173173
174[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
175
176174> **More detail**
177175>
178176> The app opens in third-party mode unless the user chose to sign in to Claude.ai at the login screen. `disableDeploymentModeChooser` removes that choice.
from line 195
197195>
198196> * `inferenceCredentialKind: "interactive" together with inferenceGatewayOidc (gateway)`; use "external-idp" once every desktop in the fleet is on a release that reads it. The original spelling will keep working ("interactive" with inferenceGatewayOidc is read as "external-idp"); no end date has been set.
199197
200[Self-hosted install](#self-hosted-column): MDM profile. In self-hosted mode it names the device's sign-in to the host, never the host's model credential.
201
202198***
203199
204200### `inferenceSessionLifetimeSec`
from line 203
207203
208204**Sign-in session lifetime.** Seconds your identity provider keeps a sign-in valid. The app shows a re-authenticate banner before then.
209205
210[Self-hosted install](#self-hosted-column): Not supported. The session host is the one source for how long a sign-in to it lasts, and it reads no figure from this key.
211
212206***
213207
214208### `userContentRendererUrl`
from line 211
217211
218212**Artifact preview iframe origin.** HTTPS origin of the server that artifact and file previews load from. Unset: [www.claudeusercontent.com](http://www.claudeusercontent.com).
219213
220[Self-hosted install](#self-hosted-column): Not supported. Names where Desktop loads its previews from, and no session host passes the setting on to Desktop yet.
221
222214***
223215
224216### `inferenceCustomHeaders`
from line 219
227219
228220**Custom inference headers.** Extra headers sent with every model request. Routing and tenant headers only: do not put credentials here.
229221
230[Self-hosted install](#self-hosted-column): Server side. The host makes the model calls, so it adds the admin's headers to them.
231
232222> **More detail**
233223>
234224> This key is stored and distributed as plain configuration. For tokens, and for values that differ per user or session, have `inferenceCredentialHelper` print JSON with a `headers` field. On a conflict, the helper script's header takes priority.
from line 234
244234Since 1.2581.0
245235
246236**Helper script.** Absolute path to an executable that prints the credential, optionally with per-request headers.
247
248[Self-hosted install](#self-hosted-column): MDM profile. Names a program on the person's computer, reused for the device's sign-in to the host.
249237
250238> **More detail**
251239>
from line 256
268256
269257**Helper script (Windows).** Full path to the script that Windows devices run instead of Helper script. Unset: Helper script runs on every platform.
270258
271[Self-hosted install](#self-hosted-column): MDM profile. Names a Windows program on the person's computer, reused for the device's sign-in to the host.
272
273259***
274260
275261### `inferenceCredentialHelperArgs`
from line 268
282268
283269**Helper script arguments.** Arguments passed to the helper script, one per entry, in order. Leave unset to run it with none.
284270
285[Self-hosted install](#self-hosted-column): MDM profile. Gives arguments to a helper program on the person's computer, reused for the device's sign-in to the host.
286
287271> **More detail**
288272>
289273> Do not put secrets in arguments: the diagnostic report and other processes on the device can see them.
from line 286
302286
303287**Helper script TTL.** Seconds the helper script’s output is cached. When it expires, the script runs again. Unset: 3600.
304288
305[Self-hosted install](#self-hosted-column): MDM profile. Sets how long the desktop app caches its helper's output, reused for the device's sign-in to the host.
306
307289***
308290
309291### `inferenceCredentialHelperTimeoutSec`
from line 298
316298
317299**Credential helper timeout.** Seconds to wait for the helper script to finish. Raise this if it opens a browser for sign-in. Unset: 60.
318300
319[Self-hosted install](#self-hosted-column): MDM profile. Bounds a helper program on the person's computer, reused for the device's sign-in to the host.
320
321301***
322302
323303### `inferenceCredentialHelperSilentRefreshEnabled`
from line 310
330310
331311**Re-run helper for silent refresh.** When the credential expires mid-session, run the helper script again to recover silently. Turn off if it cannot run without user input.
332312
333[Self-hosted install](#self-hosted-column): MDM profile. Decides how the desktop app re-runs its helper on the person's computer, reused for sign-in to the host.
334
335313***
336314
337315### `egressProxyUrl`
from line 324
346324
347325[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/network-proxy.md)
348326
349[Self-hosted install](#self-hosted-column): MDM profile. Names the proxy for the person's computer, and a host's network belongs to its operator.
350
351327[Admin Console](#the-works-with-column): Not available.
352328
353329> **More detail**
from line 350
374350
375351[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/network-proxy.md)
376352
377[Self-hosted install](#self-hosted-column): MDM profile. Describes the network of the person's computer, which Desktop applies to its own traffic.
378
379353[Admin Console](#the-works-with-column): Not available.
380354
381355> **More detail**
from line 370
396370
397371**Enable IPv6 in the workspace VM.** Give the Cowork workspace VM an IPv6 address so Claude’s tools can reach IPv6-only hosts through the device. macOS and Windows only.
398372
399[Self-hosted install](#self-hosted-column): Not supported. Configures Cowork's local virtual machine, which a host session does not have.
400
401373> **More detail**
402374>
403375> IPv6 works in the VM only where the device's own IPv6 works.
from line 392
420392
421393**Gateway base URL.** Full URL of the inference gateway endpoint.
422394
423[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
424
425395***
426396
427397#### `inferenceGatewayApiKey`
from line 400
430400
431401**Gateway API key.** API key for the configured inference gateway.
432402
433[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
434
435403[Admin Console](#the-works-with-column): Not available.
436404
437405***
from line 418
450418>
451419> * `inferenceGatewayAuthScheme: "sso"`; use inferenceCredentialKind: "interactive". The original spelling will keep working; no end date has been set.
452420
453[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
454
455421***
456422
457423#### `inferenceGatewayOidcAuthFlow`
from line 433
467433> **Deprecated**
468434>
469435> * Use inferenceIdpAuthFlow together with inferenceIdpOidc once every desktop in the fleet is on a release that reads them. The original spelling will keep working; no end date has been set.
470
471[Self-hosted install](#self-hosted-column): Not supported. Deprecated name for the choice of sign-in window on the person's computer.
472436
473437> **More detail**
474438>
from line 461
497461
498462[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/gateway.md#single-sign-on-with-your-identity-provider)
499463
500[Self-hosted install](#self-hosted-column): Not supported. Deprecated name for a sign-in that runs on the person's computer.
501
502464> **More detail**
503465>
504466> Used with `inferenceCredentialKind` set to `interactive`. Leave it unset for a gateway that runs its own sign-in and serves `<baseUrl>/.well-known/oauth-authorization-server`.
from line 552
590552**Identity provider sign-in flow.** How the identity-provider sign-in runs: system browser (default) or the OS Microsoft Entra broker.
591553
592554One of: `browser`, `broker`
593
594[Self-hosted install](#self-hosted-column): MDM profile. Chooses a sign-in window on the person's computer, also used for the device's sign-in to the host.
595555
596556> **More detail**
597557>
from line 572
612572
613573**Identity provider (OIDC).** Your organization’s OpenID Connect identity provider. The user’s token is sent as the Bearer credential to the gateway or the Bedrock proxy.
614574
615[Self-hosted install](#self-hosted-column): MDM profile. Configures an interactive sign-in on the person's computer, reused to sign the device in to the host.
616
617575> **More detail**
618576>
619577> Used when `inferenceCredentialKind` is `external-idp`. Register the redirect URI given under `inferenceIdpAuthFlow` with your identity provider.
from line 662
704662
705663**Stream idle timeout.** Extra seconds to wait for model output on a streaming response that is sending only keep-alive pings. Gateway provider only. Default 300.
706664
707[Self-hosted install](#self-hosted-column): Server side. The host makes the model calls, so it sets how long a stream sending only keep-alive pings may wait for output.
708
709665> **More detail**
710666>
711667> With pings arriving (SSE `ping` events or `:` comment lines), sessions accept at least about five minutes of them, then wait this many seconds more. With no pings, a silent response still fails after about 5 minutes whatever this value, so make the gateway send them.
from line 678
722678
723679**Claude API key.** Leave blank to sign in with your browser, or to supply the key via a credential helper.
724680
725[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
726
727681[Admin Console](#the-works-with-column): Not available.
728682
729683***
from line 690
736690
737691**AWS region.** AWS region for the Bedrock runtime endpoint.
738692
739[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
740
741693***
742694
743695#### `inferenceBedrockBaseUrl`
from line 704
752704
753705**Bedrock base URL.** For VPC endpoints or gateway proxies. Enter https\:// and the host, with no path.
754706
755[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
756
757707***
758708
759709#### `inferenceBedrockServiceTier`
from line 714
764714
765715One of: `flex`, `priority`
766716
767[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
768
769717***
770718
771719#### `inferenceBedrockBearerToken`
from line 722
774722
775723**AWS bearer token.** Static bearer token for inference. For providers that support profile or helper-script credentials, prefer those.
776724
777[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
778
779725[Admin Console](#the-works-with-column): Not available.
780726
781727***
from line 736
790736
791737**AWS SSO start URL.** Enables in-app AWS sign-in (no AWS CLI needed). Set with the three SSO fields below.
792738
793[Self-hosted install](#self-hosted-column): Not supported. Drives a browser sign-in on the person's computer, and a host never calls Bedrock as the person.
794
795739***
796740
797741#### `inferenceBedrockSsoRegion`
from line 748
804748
805749**AWS SSO region.** IAM Identity Center home region.
806750
807[Self-hosted install](#self-hosted-column): Not supported. Configures a browser sign-in on the person's computer, and a host-run session has no browser.
808
809751***
810752
811753#### `inferenceBedrockSsoAccountId`
from line 760
818760
819761**AWS SSO account ID.** 12-digit AWS account ID assigned to users in IAM Identity Center.
820762
821[Self-hosted install](#self-hosted-column): Not supported. Names an AWS account for a browser sign-in on the person's computer, which a host never performs.
822
823763***
824764
825765#### `inferenceBedrockSsoRoleName`
from line 772
832772
833773**AWS SSO role name.** IAM Identity Center permission-set name granting bedrock:InvokeModel\* on the account above.
834774
835[Self-hosted install](#self-hosted-column): Not supported. Names an AWS role for a browser sign-in that is only possible on the person's computer.
836
837775***
838776
839777#### `inferenceBedrockProfile`
from line 784
846784
847785**AWS profile name.** AWS named profile to use for Bedrock inference credentials.
848786
849[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
850
851787***
852788
853789#### `inferenceBedrockAwsDir`
from line 796
860796
861797**AWS config directory.** Folder with AWS config/credentials. Defaults to \~/.aws when no bearer token is set.
862798
863[Self-hosted install](#self-hosted-column): Not supported. Names a folder on the person's computer that a host does not have.
864
865799***
866800
867801#### `inferenceBedrockAwsCliPath`
from line 808
874808
875809**AWS CLI path.** Absolute path to the aws executable. Leave unset to find it on PATH.
876810
877[Self-hosted install](#self-hosted-column): Not supported. Names a program on the person's computer, and a host has no such program, browser or person.
878
879811***
880812
881813### Vertex
from line 822
890822
891823**GCP project ID.** Google Cloud project ID for Vertex AI inference.
892824
893[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
894
895825***
896826
897827#### `inferenceVertexRegion`
from line 830
900830
901831**GCP region.** GCP region where your Vertex AI Claude models are deployed.
902832
903[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
904
905833***
906834
907835#### `inferenceVertexBaseUrl`
from line 844
916844
917845**Vertex AI base URL.** Private Service Connect endpoint, if you use one.
918846
919[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
920
921847***
922848
923849#### `inferenceVertexOAuthClientId`
from line 856
930856
931857**Vertex OAuth client ID.** Desktop-app OAuth client ID. Enables Sign in with Google instead of a credentials file.
932858
933[Self-hosted install](#self-hosted-column): Not supported. Configures a Google browser sign-in on the person's computer, and a host calls Vertex as its own identity.
934
935859***
936860
937861#### `inferenceVertexOAuthClientSecret`
from line 864
940864
941865**Vertex OAuth client secret.** Secret for the Desktop-app OAuth client above. Google does not treat such secrets as confidential, so the Admin Console can set it.
942866
943[Self-hosted install](#self-hosted-column): Not supported. Secret for the person's own Google sign-in, and a host calls Vertex as its own Google identity.
944
945867***
946868
947869#### `inferenceVertexOAuthScopes`
from line 872
950872
951873**Vertex OAuth scopes.** Override the Google OAuth scopes (space-separated). Leave blank for the default.
952874
953[Self-hosted install](#self-hosted-column): Not supported. Sets scopes for a browser sign-in on the person's computer, and a host calls Vertex as its own identity.
954
955875***
956876
957877#### `inferenceVertexOAuthLoginHint`
from line 880
960880
961881**Vertex OAuth login hint.** Pre-fill Google's account chooser and forward to your federated IdP. \{username} expands to the OS login name.
962882
963[Self-hosted install](#self-hosted-column): Not supported. Steers a browser sign-in on the person's computer, and a host calls Vertex as its own Google identity.
964
965883***
966884
967885#### `inferenceVertexWorkforceAudience`
from line 892
974892
975893**Workforce Identity audience.** Workforce-pool provider audience. When set, sign-in uses your own IdP plus a GCP STS exchange instead of a Google identity.
976894
977[Self-hosted install](#self-hosted-column): Not supported. Configures a sign-in the person completes on their computer, and a host calls Vertex as its own identity.
978
979895***
980896
981897#### `inferenceVertexWorkforceUserProject`
from line 904
988904
989905**Workforce Identity billing project.** GCP project for STS billing and quota. Defaults to the Vertex project ID above.
990906
991[Self-hosted install](#self-hosted-column): Not supported. Bills the exchange of the person's own sign-in token, and a host calls Vertex as its own identity.
992
993907***
994908
995909#### `inferenceVertexWorkforceAuthFlow`
from line 913
999913**Workforce Identity sign-in flow.** How the IdP sign-in runs: system browser (default) or the OS Microsoft Entra broker.
1000914
1001915One of: `browser`, `broker`
1002
1003[Self-hosted install](#self-hosted-column): Not supported. Chooses how the person signs in on their computer, and a host calls Vertex as its own identity.
1004916
1005917> **More detail**
1006918>
from line 933
1021933
1022934**Workforce Identity IdP (OIDC).** Your organization’s OpenID Connect identity provider. Users sign in there, and the app exchanges their ID token at GCP STS.
1023935
1024[Self-hosted install](#self-hosted-column): Not supported. Sets up the person's sign-in on their own computer, and a host calls Vertex as its own Google identity.
1025
1026936> **Child attributes (9)**
1027937>
1028938> **clientId** `string` *required*
from line 989
1079989
1080990**GCP credentials file path.** Full path to a service-account JSON file. Unset: Application Default Credentials.
1081991
1082[Self-hosted install](#self-hosted-column): Not supported. Names a file on the person's computer that no host has.
1083
1084992***
1085993
1086994### Foundry
from line 1003
10951003
10961004**Azure AI Foundry resource name.** Azure AI Foundry resource name used to construct the endpoint URL.
10971005
1098[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
1099
11001006***
11011007
11021008#### `inferenceFoundryBaseUrl`
from line 1017
11111017
11121018**Azure AI Foundry base URL.** Full base URL for a gateway or proxy in front of Foundry, path included (replaces [https://RESOURCE.services.ai.azure.com/anthropic](https://RESOURCE.services.ai.azure.com/anthropic)).
11131019
1114[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
1115
11161020> **More detail**
11171021>
11181022> Point it only at a gateway or proxy that you run. Requests carry the credential that the app would send to Foundry: the user's Entra ID token, the API key or the helper script's output.
from line 1031
11271031
11281032**Azure AI Foundry API key.** API key for Azure AI Foundry inference.
11291033
1130[Self-hosted install](#self-hosted-column): Not supported. Part of the device's own route to the model, and a session host's route is its operator's to set.
1131
11321034[Admin Console](#the-works-with-column): Not available.
11331035
11341036***
from line 1045
11431045
11441046**Entra ID tenant ID.** Directory (tenant) ID of the Entra ID app registration that has the Cognitive Services scope.
11451047
1146[Self-hosted install](#self-hosted-column): Not supported. Names the tenant for an Entra sign-in on the person's computer.
1147
11481048***
11491049
11501050#### `inferenceFoundryClientId`
from line 1057
11571057
11581058**Entra ID client ID.** Application (client) ID of the Entra ID app registration. Device-code sign-in requires the app to allow public client flows.
11591059
1160[Self-hosted install](#self-hosted-column): Not supported. Configures an Entra sign-in the person completes on their computer.
1161
11621060***
11631061
11641062#### `inferenceFoundryAuthFlow`
from line 1066
11681066**Entra ID sign-in flow.** How Entra sign-in runs: device code (default), system browser, or the OS identity broker.
11691067
11701068One of: `device-code`, `browser`, `broker`
1171
1172[Self-hosted install](#self-hosted-column): Not supported. Chooses how the person's Entra sign-in runs on their computer.
11731069
11741070> **More detail**
11751071>
from line 1083
11871083
11881084**Model discovery.** Auto-populate the model picker from the provider at launch.
11891085
1190[Self-hosted install](#self-hosted-column): Not supported. A session host states the models it offers, so Desktop discovers none itself, whatever this says.
1191
11921086> **More detail**
11931087>
11941088> Turn this off if your network cannot reach your inference provider's model-list endpoint.
from line 1098
12041098
12051099**Use 1M wherever it’s available.** Every model that offers 1M context shows only its 1M option in the model picker.
12061100
1207[Self-hosted install](#self-hosted-column): Server side. When on, the host gives a session that names no model the 1M-token context, and tells Desktop.
1208
12091101> **More detail**
12101102>
12111103> A listed model offers 1M when its `inferenceModels` entry sets `supports1m`. Without a list, a model offers 1M when your gateway's model list marks it.
from line 1110
12181110
12191111**Model list.** Override the auto-discovered model list. First entry is the default.
12201112
1221[Self-hosted install](#self-hosted-column): Server side. The host runs a session only on a model from this list, and tells Desktop what to show.
1222
12231113> **More detail**
12241114>
12251115> Each entry is a model ID string or an object:
12261116>
1227> ```json theme={null} theme={null}
1117> ```json theme={null}
12281118> [
12291119> {"name": "claude-sonnet-5",
12301120> "supports1m": true},
from line 1185
12951185
12961186One of: `low`, `medium`, `high`, `xhigh`, `max`
12971187
1298[Self-hosted install](#self-hosted-column): Server side. The host sets the effort of a session that names none, and tells Desktop what to preselect.
1299
13001188> **More detail**
13011189>
13021190> * A user's own effort choice for that model still applies, unless `alwaysStartWithDefaultModel` is on.
from line 1201
13131201
13141202**Always start with the default model.** Each new conversation or task starts on the default model and effort, not the user’s last choice. Users can still change both for that one.
13151203
1316[Self-hosted install](#self-hosted-column): Server side. Desktop's model picker acts on it, starting each new session on the default model.
1317
13181204***
13191205
13201206#### `inferenceModelPricingEnabled`
from line 1209
13231209
13241210**Show estimated cost.** Show an estimated cost on the Usage page, at Anthropic list price unless you set a multiplier or per-model rates.
13251211
1326[Self-hosted install](#self-hosted-column): Server side. When on, the host gives its sessions the admin's rates and multiplier; Desktop shows cost once they report it per turn.
1327
13281212> **More detail**
13291213>
13301214> The estimate is in USD. `inferenceModelPricingMultiplier` and `inferenceModelPricing` adjust it, and are ignored while this is off.
from line 1225
13411225
13421226**Price multiplier.** Scales every estimated cost (0.85 = 85% of the price); between 0 and 1.
13431227
1344[Self-hosted install](#self-hosted-column): Server side. While Show estimated cost is on, the host hands Claude Code this multiplier for the cost its sessions report.
1345
13461228***
13471229
13481230#### `inferenceModelPricing`
from line 1233
13511233
13521234**Model pricing.** Per-model rates replacing Anthropic list price in the Usage page’s estimate.
13531235
1354[Self-hosted install](#self-hosted-column): Server side. While Show estimated cost is on, the host hands Claude Code these rates for the cost its sessions report.
1355
13561236> **Child attributes (5)**
13571237>
13581238> **name** `string` *required*
from line 1263
13831263
13841264**Model catalog metadata.** Fetch Anthropic’s model catalog for model picker names, descriptions and effort options. When off, the app uses only its bundled copy.
13851265
1386[Self-hosted install](#self-hosted-column): Server side. The host serves the model catalog's rows to Desktop, and to nobody for whom this is off.
1387
13881266[Admin Console](#the-works-with-column): Not available.
13891267
13901268> **More detail**
from line 1278
14001278stringSince 2.110.0
14011279
14021280**Model catalog URL.** Get the model catalog from a mirror inside your network instead of downloads.claude.ai.
1403
1404[Self-hosted install](#self-hosted-column): Server side. Only Desktop versions too old to take the model catalog's rows from their session host fetch from here.
14051281
14061282[Admin Console](#the-works-with-column): Not available.
14071283
from line 1301
14251301
14261302**Allow Cowork.** Enable Cowork. Claude works on longer tasks like research, analysis, and documents.
14271303
1428[Self-hosted install](#self-hosted-column): Not supported. On a session host desktopHome alone decides Cowork: to turn Cowork off, set desktopHome to off in its policy document.
1429
14301304***
14311305
14321306### Code surface
from line 1311
14371311
14381312**Allow Code.** Enable Code. Claude writes and runs code.
14391313
1440[Self-hosted install](#self-hosted-column): Server side. The host refuses Code sessions and routines where the tab is off, and tells Desktop to hide it.
1441
14421314***
14431315
14441316#### `sshHostAllowlist`
from line 1324
14521324**SSH host allowlist.** SSH hosts for Code sessions. Unset: off, unless the device’s Claude Code managed settings list hosts. \* allows any host.
14531325
14541326[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/ssh-remote-sessions.md)
1455
1456[Self-hosted install](#self-hosted-column): Not supported. Governs SSH sessions started from the person's computer, which self-hosted installs never offer.
14571327
14581328> **More detail**
14591329>
from line 1350
14801350
14811351[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/ssh-remote-sessions.md)
14821352
1483[Self-hosted install](#self-hosted-column): Not supported. Names the ssh program on the person's computer, and self-hosted installs offer no SSH sessions.
1484
14851353> **More detail**
14861354>
14871355> The app never runs another `ssh` in its place. If the program is missing, too old or cannot run, SSH sessions fail. So deliver this key only to devices that have the program.
from line 1373
15051373One of: `auto`, `system-openssh`, `builtin`
15061374
15071375[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/ssh-remote-sessions.md)
1508
1509[Self-hosted install](#self-hosted-column): Not supported. Chooses the SSH engine on the person's computer, and self-hosted installs offer no SSH sessions.
15101376
15111377> **More detail**
15121378>
from line 1391
15251391
15261392**Allow Chat.** Enable Chat. Quick questions and drafting.
15271393
1528[Self-hosted install](#self-hosted-column): Not supported. No Chat session can start on a session host, so the switch has nothing to turn on or off there.
1529
15301394***
15311395
15321396#### `desktopHome`
from line 1401
15371401
15381402One of: `standard`, `off`
15391403
1540[Self-hosted install](#self-hosted-column): Server side. Alone decides Cowork, which is on only while this is unset or standard; else the host refuses it and Desktop hides it.
1541
15421404> **More detail**
15431405>
15441406> `standard` turns on Unified Claude. `off` turns Chat and Cowork off, which leaves only Code, or nothing where Code is off. `isClaudeCodeForDesktopEnabled` still decides Code.
from line 1417
15551417
15561418**Advanced file analysis.** Allow Claude to run code in a local sandbox to analyze attached files it can’t read natively — like Excel and PowerPoint.
15571419
1558[Self-hosted install](#self-hosted-column): Not supported. Configures a Chat session's local sandbox, and no Chat session can start on a self-hosted install.
1559
15601420> **More detail**
15611421>
15621422> Of the user's files, the sandbox can read only those attached to the conversation and folders added to the chat's project through the app (read-only).
from line 1436
15761436**Allowed egress hosts.** Hosts that Claude’s tools can reach from Chat and Cowork, and partly from Code. Unset or empty: no web fetch in Chat and Cowork.
15771437
15781438[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/web-tools.md#web-fetch)
1579
1580[Self-hosted install](#self-hosted-column): Server side. Tools in the host's sessions make the network calls, so the host limits which addresses they may reach.
15811439
15821440> **More detail**
15831441>
from line 1455
15971455
15981456**Allowed workspace folders.** Folders that Claude can use in chat projects, Cowork and Code. Code’s shell commands are only partly limited. Unset: all folders.
15991457
1600[Self-hosted install](#self-hosted-column): Server side. The host refuses file access outside folders listed as full paths, and Desktop checks those listed with \~ or a variable.
1601
16021458> **More detail**
16031459>
16041460> Claude can read and write in every listed folder unless its `mode` is `ro`. An empty list allows none.
from line 1494
16381494booleanSince 1.46388.1
16391495
16401496**Block reads outside working directories.** Keep Claude’s file tools from reading outside a Code session’s working directories. Shell commands are only partly limited.
1641
1642[Self-hosted install](#self-hosted-column): Server side. The host starts Code sessions, so it hands Claude Code the block on reads outside their folders.
16431497
16441498> **More detail**
16451499>
from line 1513
16591513
16601514**Allow Auto mode.** Offer Auto mode, where Claude decides which actions need approval. Unset: in Code only. True adds Cowork.
16611515
1662[Self-hosted install](#self-hosted-column): Server side. The host allows or refuses Auto mode for the sessions it runs, and tells Desktop what to offer.
1663
16641516> **More detail**
16651517>
16661518> Unless it is `false`, new Code sessions normally start in Auto mode.
from line 1527
16751527
16761528**Disable bypass permissions mode.** Remove the bypass permissions mode from Code sessions and Cowork tasks, so Claude always follows the permission policy. Off by default.
16771529
1678[Self-hosted install](#self-hosted-column): Not supported. A session host never offers bypass mode, so every session it runs already has it off.
1679
16801530***
16811531
16821532#### `disableBundledSkills`
from line 1535
16851535
16861536**Disable bundled skills and workflows.** Disables Claude Code’s bundled skills and workflows (deep-research and similar). Use where WebFetch/WebSearch aren’t available.
16871537
1688[Self-hosted install](#self-hosted-column): Server side. The host starts Claude Code, so it is the one that turns the bundled skills off.
1689
16901538***
16911539
16921540#### `skillCreationEnabled`
from line 1543
16951543
16961544**Allow user-created skills.** Let users create and upload their own skills, and let Claude save skills. Skill files added outside the app are not blocked.
16971545
1698[Self-hosted install](#self-hosted-column): Server side. The host stores people's skills, so when this is off it refuses new ones and tells Desktop to hide creation.
1699
17001546> **More detail**
17011547>
17021548> Skills already on the device stay usable. Plugins from your organization and bundled skills are not affected. To turn off bundled skills, use `disableBundledSkills`.
from line 1560
17141560**Scan user-created skills.** Run a security scan on each skill a user creates or uploads before it can be used. Skills that fail the security scan are blocked.
17151561
17161562[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/skill-scanning.md)
1717
1718[Self-hosted install](#self-hosted-column): Server side. The host holds skills people save, plugins they upload and your marketplaces' plugins until your model passes them.
17191563
17201564> **More detail**
17211565>
from line 1583
17391583
17401584**Allow user-added plugin marketplaces.** Let users add plugin marketplaces. When off, the app hides the ones your organization did not add and normally does not load their plugins.
17411585
1742[Self-hosted install](#self-hosted-column): Server side. Desktop hides and refuses adding a marketplace when off; no session host loads a person's own marketplaces yet.
1743
17441586> **More detail**
17451587>
17461588> Nothing is deleted: turning it back on restores the hidden marketplaces.
from line 1600
17581600
17591601**Allow user-added plugins.** Allow users to add their own plugins. When off, the app hides every option for adding one and refuses uploads.
17601602
1761[Self-hosted install](#self-hosted-column): Server side. The host keeps the plugins people upload and loads them in their sessions, and refuses new ones when this is off.
1762
17631603> **More detail**
17641604>
17651605> Plugins that are already installed, or placed on disk outside the app, are not removed or blocked.
from line 1614
17741614
17751615**Allow scheduled tasks.** Allow scheduled tasks in Cowork and Code. When off, scheduling is hidden, existing tasks stop running and Claude cannot create new ones.
17761616
1777[Self-hosted install](#self-hosted-column): Server side. The host runs scheduled tasks, so when this is off it refuses to create or run them.
1778
17791617> **More detail**
17801618>
17811619> Existing tasks are kept, not deleted, and run again when this is turned back on. While off, sessions also start without Claude Code's own scheduling tools, such as the `/loop` command.
from line 1626
17881626
17891627**Allow projects.** Let users group chats and Cowork tasks into projects. When off, projects are hidden, not deleted.
17901628
1791[Self-hosted install](#self-hosted-column): Server side. Desktop itself keeps projects on the person's computer and shows them in its own windows.
1792
17931629> **More detail**
17941630>
17951631> Turning this off only hides projects. Their tasks and chats stay in the list, ungrouped. Their data stays on the user's device, and they come back when you turn it on again.
from line 1640
18041640
18051641**Allow keep awake.** Let Claude keep the device awake. When off, Claude never prevents sleep and hides its keep-awake switches.
18061642
1807[Self-hosted install](#self-hosted-column): Server side. Desktop itself asks the person's computer to stay awake, and shows the keep-awake switches.
1808
18091643***
18101644
18111645#### `developerModeEnabled`
from line 1648
18141648
18151649**Allow Developer Mode.** Let users turn on Developer Mode. When off, the app’s developer tools and the option to install an unpacked extension are unavailable.
18161650
1817[Self-hosted install](#self-hosted-column): Server side. Desktop offers its own Developer menu, developer tools and debugger on the person's computer.
1818
18191651> **More detail**
18201652>
18211653> Unpacked extensions that are already installed keep working. An extension folder copied by hand into the app's extensions folder is not blocked. Packaged (`.mcpb`) extensions follow `isDesktopExtensionEnabled`, not this key.
from line 1659
18271659stringSince 3.1623.0
18281660
18291661**Default Quick Entry shortcut.** Set the shortcut that opens Quick Entry, such as Ctrl+Alt+K, for users who haven’t set their own in Settings. Use “off” for no shortcut.
1830
1831[Self-hosted install](#self-hosted-column): Server side. Desktop registers its Quick Entry shortcut with the operating system of the person's computer.
18321662
18331663> **More detail**
18341664>
from line 1678
18481678
18491679**Allow screenshots of the screen and other apps.** Let users screenshot their screen or other apps’ windows in Quick Entry on macOS. When off, it never asks for Screen Recording access.
18501680
1851[Self-hosted install](#self-hosted-column): Server side. Desktop takes the picture on the person's computer and offers it in its own Quick Entry window.
1852
18531681> **More detail**
18541682>
18551683> When off, another app's window that a user mentions with @ in a chat also comes without its picture.
from line 1692
18641692
18651693**Allow sharing files open in other apps.** Let users attach the file open in another app’s window in Quick Entry on macOS. When off, it never asks for Accessibility access.
18661694
1867[Self-hosted install](#self-hosted-column): Server side. Desktop finds the file on the person's computer and offers it in its own Quick Entry window.
1868
18691695> **More detail**
18701696>
18711697> Off applies even where the Accessibility permission is already granted. Another app's window that a user mentions with @ in a chat then also comes without its file. Not covered: Claude's other uses of that permission, and files that users attach themselves.
from line 1703
18771703booleanSince 1.37937.0
18781704
18791705**Skip WebFetch domain check.** Skip Claude Code’s WebFetch domain lookup against api.anthropic.com in Code sessions. Off by default; turn on when that host is blocked.
1880
1881[Self-hosted install](#self-hosted-column): Not supported. A session host always skips the web fetch preflight check, whatever is written.
18821706
18831707> **More detail**
18841708>
from line 1719
18951719
18961720**Built-in tool policy.** Approval per tool or rule such as Bash(curl \*). “ask” prompts the user before each matching call. To block, use Disabled built-in tools.
18971721
1898[Self-hosted install](#self-hosted-column): Server side. The host hands each session the admin's allow or ask rule for each built-in tool.
1899
19001722> **More detail**
19011723>
19021724> Entries use the same tool names and rules as `disabledBuiltinTools`, with the same limits. Command rules are not a security boundary, and `Bash(…)` rules do not cover `PowerShell`.
from line 1737
19151737
19161738**Disabled built-in tools.** Built-in tools, or rules such as Read(//etc/\*\*), blocked in Cowork and Code. Shell commands do not fully follow file-path rules.
19171739
1918[Self-hosted install](#self-hosted-column): Server side. The host starts each session with the built-in tools and tool uses the admin denies turned off.
1919
19201740> **More detail**
19211741>
19221742> An entry is a [tool name](https://code.claude.com/docs/en/tools-reference) such as `Bash`, or a [permission rule](https://code.claude.com/docs/en/permissions#permission-rule-syntax) such as `Edit(//etc/**)`.
from line 1755
19351755
19361756[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/gateway.md#mcp-tool-search)
19371757
1938[Self-hosted install](#self-hosted-column): Server side. The host starts Claude Code, so it turns tool search on or off for its sessions.
1939
19401758> **More detail**
19411759>
19421760> Your gateway or provider must accept what tool search adds, such as `tool-search-tool-2025-10-19` in the `anthropic-beta` header. Otherwise requests fail with HTTP 400. On Foundry or a custom base URL, requests also carry Claude Code's other experimental betas.
from line 1769
19511769
19521770**Organization instructions.** Appended to Claude’s system prompt in Chat, Cowork, and Code. Guidance the model follows, not an enforced control. Up to 3,000 characters.
19531771
1954[Self-hosted install](#self-hosted-column): Server side. The host adds the admin's instructions to every session it starts.
1955
19561772> **More detail**
19571773>
19581774> Claude is told that they take priority over a user's personal preferences.
from line 1787
19711787
19721788**Require full VM sandbox.** Runs tools inside an isolated VM instead of the host. Stronger isolation; slower file access and no host-process tools.
19731789
1974[Self-hosted install](#self-hosted-column): Not supported. Chooses how Cowork runs on the person's own computer, and third-party installs no longer read it.
1975
19761790[Admin Console](#the-works-with-column): Not available.
19771791
19781792***
from line 1798
19841798booleanDefault: falseSince 1.3834.0
19851799
19861800**Disable Claude.ai sign-in.** Users see only this provider at the login screen. The option to sign in to Claude.ai is hidden.
1987
1988[Self-hosted install](#self-hosted-column): MDM profile. Shapes Desktop's sign-in screen and configuration source, settled before Desktop reaches the host.
19891801
19901802[Admin Console](#the-works-with-column): Not available.
19911803
from line 1817
20051817
20061818**Disable claude:// deep-link handling.** Stop external apps and websites from opening Claude Desktop via claude:// links.
20071819
2008[Self-hosted install](#self-hosted-column): MDM profile. Desktop registers claude:// links on the person's computer at launch, before it has signed in to the host.
2009
20101820***
20111821
20121822### Built-in browser
from line 1826
20161826booleanDefault: falseSince 2.2553.0
20171827
20181828**Allow the built-in browser.** A browser in Cowork and Code where users and Claude can open and work with web pages. Site sign-ins stay on the device until cleared.
2019
2020[Self-hosted install](#self-hosted-column): Not supported. The browser pane lives in Desktop on the person's computer, and host sessions get no browser tools.
20211829
20221830[Admin Console](#the-works-with-column): Set automatically.
20231831
from line 1847
20391847
20401848One of: `allow` (default), `block`
20411849
2042[Self-hosted install](#self-hosted-column): Not supported. Sets the default for Desktop's browser tools, and host sessions get no browser tools to allow or block.
2043
20441850[Admin Console](#the-works-with-column): Set automatically.
20451851
20461852> **More detail**
from line 1862
20561862string\[]Since 2.2553.0
20571863
20581864**Allowed sites in the built-in browser.** Sites Claude may open, read, and act on in the built-in browser when the default site policy is block. Users can still view other sites.
2059
2060[Self-hosted install](#self-hosted-column): Not supported. Lists sites allowed for Desktop's browser tools, and host sessions get no browser tools.
20611865
20621866[Admin Console](#the-works-with-column): Set automatically.
20631867
from line 1882
20781882
20791883**Blocked sites in the built-in browser.** Sites Claude may not open, read, or act on in the built-in browser when the default site policy is allow. Users can still view them.
20801884
2081[Self-hosted install](#self-hosted-column): Not supported. Lists sites blocked for Desktop's browser tools, and host sessions get no browser tools.
2082
20831885[Admin Console](#the-works-with-column): Set automatically.
20841886
20851887> **More detail**
from line 1899
20971899objectSince 1.10628.0
20981900
20991901**Claude.ai data import.** Lets users import Claude.ai chats and projects, and earlier Claude sessions on this device.
2100
2101[Self-hosted install](#self-hosted-column): Server side. Desktop can still export sessions stored on the person's computer, and imports none, since no session runs there.
21021902
21031903> **Child attributes (5)**
21041904>
from line 1956
21561956object\[]Since 1.2581.0
21571957
21581958**Managed MCP servers.** Org-pushed MCP servers: remote (HTTP/SSE) or local (stdio command).
2159
2160[Self-hosted install](#self-hosted-column): Server side. The host connects the admin's MCP servers and applies each tool's rule, and tells Desktop which local ones to start.
21611959
21621960> **More detail**
21631961>
from line 2550
27522550
27532551**Allow persistent tool approvals.** Offer the persistent “Always allow” approval options for MCP tools. Disable to keep tool approvals per-call or session-scoped only.
27542552
2755[Self-hosted install](#self-hosted-column): Server side. When off, the host leaves lasting MCP tool approvals out of its sessions, and tells Desktop not to offer them.
2756
27572553> **More detail**
27582554>
27592555> When off, persistent approvals that users saved earlier in Chat and Cowork stop applying. Scheduled tasks also stop offering and reusing them, unless `mcpScheduledTaskApprovalLifetimeDays` is 1 or more.
from line 2563
27672563integerRange: 0–3,650Since 2.7032.0
27682564
27692565**Scheduled-task tool approval lifetime.** Days a scheduled task can reuse a persistent MCP tool approval before it asks again. 0 turns reuse off. Unset: no limit.
2770
2771[Self-hosted install](#self-hosted-column): Server side. The host limits how many days a scheduled task may reuse a lasting MCP tool approval, and tells Desktop.
27722566
27732567> **More detail**
27742568>
from line 2578
27842578
27852579**Allow local MCP servers.** Lets users run local (stdio) MCP servers added in Developer settings. On third-party deployments, off also stops plugins’ local servers.
27862580
2787[Self-hosted install](#self-hosted-column): Server side. When off, only the local MCP servers the host names start on the person's computer, and none the person added.
2788
27892581> **More detail**
27902582>
27912583> On third-party deployments, `false` covers `.mcpb` bundles and plugins from every marketplace, your organization's included. Plugins in the org-plugins directory on the device are not affected. In Code, it also stops the local servers that a user or a project configures for Claude Code.
from line 2593
28012593object\[]Since 2.2553.0
28022594
28032595**Allowed plugin MCP servers.** Remote MCP servers that user-installed and marketplace plugins can connect, as URL patterns. Empty list: none. Unset: no limit.
2804
2805[Self-hosted install](#self-hosted-column): Server side. Unset, the host admits every remote MCP server of the admin's marketplace plugins; set, only matching ones; empty, none.
28062596
28072597> **More detail**
28082598>
from line 2616
28262616
28272617**Blocked plugin MCP servers.** URL patterns of remote MCP servers that plugins cannot connect, even if the Allowed plugin MCP servers list allows them.
28282618
2829[Self-hosted install](#self-hosted-column): Server side. The host refuses a plugin's remote MCP server that this list matches, even where the allowed list admits it.
2830
28312619> **More detail**
28322620>
28332621> An entry matches an address, not a server. The same server under another host name or IP address, or behind a plugin's local server, is not matched. To keep a plugin's servers out whatever address they use, set `allowedPluginMcpServers`.
from line 2639
28512639integerRange: 60–3,600Since 1.37937.0
28522640
28532641**MCP tool call timeout.** Per-call timeout for MCP tool calls, in seconds. Unset: 180 in Chat and Cowork.
2854
2855[Self-hosted install](#self-hosted-column): Server side. The host starts Claude Code, so it sets how long an MCP tool call may run.
28562642
28572643> **More detail**
28582644>
from line 2659
28732659
28742660One of: `auto` (default), `disabled`, `required`
28752661
2876[Self-hosted install](#self-hosted-column): Not supported. Steers the sign-in of Desktop's bundled Microsoft 365 connector, started for no session on a self-hosted install.
2877
28782662> **More detail**
28792663>
28802664> The OS identity broker is Web Account Manager on Windows and the Company Portal SSO extension on macOS. Linux has no broker, so `required` is not supported there.
from line 2676
28922676**Microsoft 365 sign-in with the Windows account.** “enabled”: on Windows, connecting Microsoft 365 uses the work account already signed in to Windows. “disabled”: account picker.
28932677
28942678One of: `enabled`, `disabled` (default)
2895
2896[Self-hosted install](#self-hosted-column): Not supported. Picks the account for Desktop's bundled Microsoft 365 connector, started for no session on a self-hosted install.
28972679
28982680> **More detail**
28992681>
from line 2698
29162698
29172699**Allow desktop extensions.** Let Claude Desktop load desktop extensions (.dxt and .mcpb files). Unset: on where users sign in with Claude.ai.
29182700
2919[Self-hosted install](#self-hosted-column): Not supported. Desktop keeps extensions off on a self-hosted install, whatever this setting says.
2920
29212701> **More detail**
29222702>
29232703> In a third-party deployment, turning this on loads extensions that are already installed. Users cannot install new ones.
from line 2710
29302710
29312711**Require signed extensions.** Reject desktop extensions that are not signed by a trusted publisher.
29322712
2933[Self-hosted install](#self-hosted-column): Not supported. Desktop installs no extension on a self-hosted install, so there is no signature for it to require.
2934
29352713***
29362714
29372715## Telemetry & updates
from line 2720
29422720
29432721**Organization UUID.** A UUID you generate. Tags telemetry so Anthropic support can find your events, and users’ local data is stored under it. Not used for auth.
29442722
2945[Self-hosted install](#self-hosted-column): MDM profile. Tags the desktop app's telemetry and names its local data on the person's computer.
2946
29472723[Admin Console](#the-works-with-column): Set automatically.
29482724
29492725> **More detail**
from line 2737
29612737**Block essential telemetry.** Crash and performance reports to Anthropic.
29622738
29632739[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/telemetry.md#essential-telemetry)
2964
2965[Self-hosted install](#self-hosted-column): MDM profile. Desktop starts its crash reports to Anthropic at launch, before sign-in, and a host's sessions never send any.
29662740
29672741> **More detail**
29682742>
from line 2761
29872761
29882762[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/telemetry.md#non-essential-telemetry)
29892763
2990[Self-hosted install](#self-hosted-column): MDM profile. Desktop sends usage analytics to Anthropic from before sign-in, and a host's sessions never send any.
2991
29922764> **More detail**
29932765>
29942766> Applies only while the app runs in third-party mode. If users could otherwise sign in to Claude.ai on the device, also set `disableDeploymentModeChooser` so the app stays in third-party mode.
from line 2772
30002772booleanDefault: falseSince 1.2581.0
30012773
30022774**Block nonessential services.** Connector icons, hosted artifact previews, MCP Apps widgets and the Linux spellcheck dictionary. Widgets fall back to text.
3003
3004[Self-hosted install](#self-hosted-column): MDM profile. Desktop fetches connector icons, preview frames and a dictionary, starting before it has signed in to the host.
30052775
30062776> **More detail**
30072777>
from line 2793
30232793
30242794**OTLP endpoint.** Where OpenTelemetry logs and metrics are sent. Leave blank to disable.
30252795
3026[Self-hosted install](#self-hosted-column): Not supported. Whoever runs the host names the collector in the host's own configuration, for its sessions and Desktop's events.
3027
30282796***
30292797
30302798#### `otlpProtocol`
from line 2803
30352803
30362804One of: `http/protobuf` (default), `http/json`, `grpc`
30372805
3038[Self-hosted install](#self-hosted-column): Not supported. Set beside the collector's address in the host's own configuration.
3039
30402806> **More detail**
30412807>
30422808> With `grpc`, some exports still go over HTTP to the same endpoint, such as the app's own events.
from line 2817
30512817
30522818**OTLP headers.** Static headers for routing and tenants only. No credentials here: use Collector authentication or the OTLP headers helper script.
30532819
3054[Self-hosted install](#self-hosted-column): Not supported. The host keeps the collector's headers in its own configuration, so no document that a device fetches holds them.
3055
30562820***
30572821
30582822#### `otlpAuthMode`
from line 2827
30632827
30642828One of: `none`, `inference-credential`
30652829
3066[Self-hosted install](#self-hosted-column): Not supported. Would send the person's model token to the collector; a self-hosted Desktop holds none, and no host reads this.
3067
30682830> **More detail**
30692831>
30702832> The credential can also make model requests as the user. For a collector you do not operate, use `otlpHeadersHelper` with a credential that can only send telemetry.
from line 2845
30832845
30842846**OTLP headers helper script.** Full path to a helper script that prints collector headers as JSON. They take priority over OTLP headers and Collector authentication.
30852847
3086[Self-hosted install](#self-hosted-column): Not supported. Desktop sends its own events to the host, which holds the collector's headers, so it runs no helper.
3087
30882848> **More detail**
30892849>
30902850> The app runs it with no arguments. Sample output: `{"Authorization": "Bearer …"}`.
from line 2861
31012861
31022862**Resource attributes.** Extra attributes to attach to every span, metric and log. An enduser.id set here takes priority over the signed-in user’s identity.
31032863
3104[Self-hosted install](#self-hosted-column): Server side. The host stamps these attributes on the session telemetry it sends and on Desktop's events that it forwards.
3105
31062864> **More detail**
31072865>
31082866> `process.owner` (the OS login name) is always sent to your collector. Set it here to replace the value.
from line 2875
31172875
31182876One of: `off`, `error` (default), `warn`, `info`, `debug`
31192877
3120[Self-hosted install](#self-hosted-column): Server side. The host tells Desktop at which level to send its own events, and filters them again before it forwards them.
3121
31222878***
31232879
31242880#### `otlpContentCapture`
from line 2884
31282884**Content capture.** Content categories Claude Desktop sends unredacted to your collector. `userPrompts` also sends Claude’s responses.
31292885
31302886Any of: `userPrompts`, `assistantResponses`, `toolDetails`, `toolContent`, `rawApiBodies`
3131
3132[Self-hosted install](#self-hosted-column): Server side. The host decides how much of a session's content its telemetry carries.
31332887
31342888> **More detail**
31352889>
from line 2907
31532907
31542908**Export traces.** Also export OpenTelemetry traces from Cowork tasks and Code sessions. Uses Claude Code’s session tracing.
31552909
3156[Self-hosted install](#self-hosted-column): Server side. The host turns traces on or off in the session telemetry it sends.
3157
31582910> **More detail**
31592911>
31602912> Has no effect without `otlpEndpoint`. With it set, this key alone decides whether Cowork tasks and Code sessions export traces. Unset or `false` keeps traces off even if a user's or a project's Claude Code settings, or managed settings, turn tracing on.
from line 2919
31672919
31682920**Telemetry attribute length limit.** Maximum length, in characters, of captured content such as a raw API body. Unset: 61,440 in Cowork tasks and Code sessions.
31692921
3170[Self-hosted install](#self-hosted-column): Server side. The host cuts long values in the session telemetry it sends.
3171
31722922> **More detail**
31732923>
31742924> In Cowork tasks and Code sessions it applies to model responses, tool content and raw API bodies, not to user prompts.
from line 2939
31892939
31902940**Block auto-updates.** Stop Claude Desktop from fetching updates entirely (no time limit). You’ll need to push new versions yourself.
31912941
3192[Self-hosted install](#self-hosted-column): MDM profile. Desktop starts its updater at launch, before it has signed in to the host.
3193
31942942> **More detail**
31952943>
31962944> When you install a newer version while Claude is open, the app shows a restart notice in the sidebar. To have Claude restart by itself if nobody restarts it, use `installedUpdateEnforcementEnabled`.
from line 2954
32062954booleanSince 3.6556.1
32072955
32082956**Restart to apply installed updates.** With auto-updates blocked, Claude restarts by itself for a newer version installed while it was open. On Windows it may stay closed.
3209
3210[Self-hosted install](#self-hosted-column): Not supported. Governs Desktop's own restart for a version installed on the computer, and no session host passes it on to Desktop yet.
32112957
32122958> **More detail**
32132959>
from line 2971
32252971integerRange: 1–72Since 3.6556.1
32262972
32272973**Installed-update enforcement window.** Hours before Claude restarts for a newer version installed while it was open. Unset: 72 hours, then when idle. A number skips the idle wait.
3228
3229[Self-hosted install](#self-hosted-column): Not supported. Times Desktop's own restart for a version installed on the computer, and no session host passes it on to Desktop yet.
32302974
32312975> **More detail**
32322976>
from line 2990
32462990
32472991**Auto-update enforcement window.** Hours before a downloaded update force-installs. Only applies when auto-updates are enabled. Blank = 72-hour default.
32482992
3249[Self-hosted install](#self-hosted-column): Server side. Desktop itself quits and installs a downloaded update of the app on the person's computer.
3250
32512993> **More detail**
32522994>
32532995> * **Unset:** after 72 hours the app restarts once the device has been idle for 10 minutes.
from line 3007
32653007
32663008**Check for updates on releases.claude.com.** Read the update feed from releases.claude.com so api.anthropic.com can stay blocked.
32673009
3268[Self-hosted install](#self-hosted-column): Not supported. Where the session host answers the app's update checks, no Anthropic update server is left to choose.
3269
32703010> **More detail**
32713011>
32723012> The installer still downloads from `downloads.claude.ai`, so keep that host open.
from line 3024
32843024**Release channel.** On Stable, devices take each release as it rolls out. On Staggered, they update less often, usually a week or more behind. Unset: Stable.
32853025
32863026One of: `stable` (default), `staggered`
3287
3288[Self-hosted install](#self-hosted-column): MDM profile. On staggered, the person can update only once Desktop has downloaded a build; the session host ignores the channel.
32893027
32903028> **More detail**
32913029>
from line 3046
33083046
33093047**Configuration relaunch window.** Hours users can keep working after a configuration change that needs a restart. 0: restart required at once. Unset: 24 hours.
33103048
3311[Self-hosted install](#self-hosted-column): Server side. Desktop itself restarts on the person's computer after a change to the settings it reads from the device.
3312
33133049> **More detail**
33143050>
33153051> When the time is up, a restart dialog blocks the app. The app then restarts by itself after 2 minutes with no activity and no running task.
from line 3062
33263062
33273063**Configuration re-check interval.** Minutes between the running app’s checks for a changed managed configuration. Blank = 10 minutes.
33283064
3329[Self-hosted install](#self-hosted-column): Server side. The host refreshes its own copy of the policy at least this often, and tells Desktop how often to ask it again.
3330
33313065> **More detail**
33323066>
33333067> A change that needs a restart starts the `relaunchEnforcementHours` countdown.
from line 3099
33653099integerRange: 1–3,650Since 1.52386.0
33663100
33673101**Chat retention period.** Delete chats, with their files, after this many days without activity. Unset: no deletion. Projects and memory stay.
3368
3369[Self-hosted install](#self-hosted-column): Not supported. Chat runs only on the person's computer, so a session host holds no chats to delete.
33703102
33713103> **More detail**
33723104>
from line 3122
33903122
33913123**Cowork retention period.** Delete Cowork tasks, with their uploads and outputs, after this many days without activity. Unset: no deletion. Spaces and memory stay.
33923124
3393[Self-hosted install](#self-hosted-column): Server side. The host keeps the Cowork sessions it runs, so it deletes those left idle longer than the admin allows.
3394
33953125> **More detail**
33963126>
33973127> Applies only while the app runs in third-party mode. Deletion can start shortly after the app gets this configuration. Pinned sessions are not exempt. Opening an old chat or Cowork task without continuing it does not reliably keep it.
from line 3144
34143144
34153145**Code retention period.** Delete Code sessions, conversation included, after this many days without activity. Unset: no deletion. Uncommitted work stays on disk.
34163146
3417[Self-hosted install](#self-hosted-column): Server side. The host keeps the Code sessions it runs, so it deletes those left idle longer than the admin allows.
3418
34193147> **More detail**
34203148>
34213149> Applies only while the app runs in third-party mode. Deletion can start shortly after the app gets this configuration. Pinned sessions are not exempt. Opening an old chat or Cowork task without continuing it does not reliably keep it.
from line 3166
34383166
34393167**Suspend session deletion.** Suspend the chat, Cowork and Code retention periods (legal hold). Claude Code’s own transcript cleanup (cleanupPeriodDays) still runs.
34403168
3441[Self-hosted install](#self-hosted-column): Server side. The host keeps the sessions, so it is the one that stops deleting them during a hold.
3442
34433169> **More detail**
34443170>
34453171> Meant to be set per user or group.
from line 3185
34593185
34603186**Max tokens per window.** Caps each user’s input and output tokens per window. Cached tokens do not count, so it does not cap your bill. Unset: no limit.
34613187
3462[Self-hosted install](#self-hosted-column): Server side. The host makes the model calls, so it counts each person's tokens and stops them at the cap.
3463
34643188> **More detail**
34653189>
34663190> Has no effect unless `inferenceTokenWindowHours` is also set. A user with two devices can have a separate count on each.
from line 3197
34733197
34743198**Token cap window.** Length of each token cap window, in hours. The count resets to zero when a window ends.
34753199
3476[Self-hosted install](#self-hosted-column): Server side. Sets the length of the window for the token cap, which the host counts.
3477
34783200> **More detail**
34793201>
34803202> Used with `inferenceMaxTokensPerWindow`. Each user's window starts the first time they use the app after their previous window ends. So 24 hours does not mean midnight to midnight.
from line 3209
34873209
34883210**Token limit warning.** Warn users once they have used this percent of their token limit. Unset: 75. At 100, the only warning comes at the limit.
34893211
3490[Self-hosted install](#self-hosted-column): Not supported. A session host does not yet warn people before they reach their token limit.
3491
34923212> **More detail**
34933213>
34943214> Has no effect unless `inferenceMaxTokensPerWindow` and `inferenceTokenWindowHours` are both set.
from line 3225
35053225
35063226**End-user attribution.** Show the signed-in user’s identity in the app, add it to Claude’s system prompt, and send it to your OpenTelemetry collector as enduser.id.
35073227
3508[Self-hosted install](#self-hosted-column): Server side. The host puts the person's identity on the telemetry it sends, and tells Desktop whether to show the person's name.
3509
35103228> **More detail**
35113229>
35123230> The identity comes from the user's sign-in, or is the OS login name when sign-in gives none. A static `enduser.id` in `otlpResourceAttributes` takes priority in telemetry, and is sent even when this setting is off.
from line 3239
35213239
35223240**Deployment display name.** Overrides the provider label shown in the sidebar footer, user-menu header, and connection-error banner.
35233241
3524[Self-hosted install](#self-hosted-column): Server side. Desktop shows this name in place of the provider's name in its own window.
3525
35263242[Admin Console](#the-works-with-column): Set automatically.
35273243
35283244***
from line 3249
35333249
35343250**Deployment display subtitle.** Optional detail shown after the deployment display name in the account-menu header.
35353251
3536[Self-hosted install](#self-hosted-column): Server side. Desktop shows this detail after the deployment's name in its account menu.
3537
35383252[Admin Console](#the-works-with-column): Not available.
35393253
35403254***
from line 3259
35453259
35463260**Hide configuration deprecation warnings.** Hide the in-app warning that your configuration uses a deprecated field. A final reminder still shows in the 24 hours before the cut-off.
35473261
3548[Self-hosted install](#self-hosted-column): Server side. Desktop shows its warning about deprecated settings in its own window, for configuration that Desktop reads itself.
3549
35503262***
35513263
35523264### `banner`
from line 3267
35553267
35563268**Organization banner.** A persistent banner across the top of the app window after sign-in.
35573269
3558[Self-hosted install](#self-hosted-column): Server side. Desktop draws the admin's banner across the top of its own window.
3559
35603270> **Child attributes (5)**
35613271>
35623272> **enabled** `boolean`
from line 3300
35903300Since 4.4212.0
35913301
35923302**Status line.** Claude runs this program and shows the first line it prints above the message box in Cowork, Chat and Code. Off unless set.
3593
3594[Self-hosted install](#self-hosted-column): Not supported. No session host reports it yet, so beside a host Desktop runs no status line program.
35953303
35963304> **More detail**
35973305>
from line 3335
36273335
36283336**Hide feature announcements.** Hide unprompted feature announcements: the “What’s new” nudge after an update and new-feature tips. Users can still open release notes.
36293337
3630[Self-hosted install](#self-hosted-column): Server side. Desktop hides its own announcements of new features.
3631
36323338***
36333339
36343340## Plugins
from line 3344
36383344object\[]Since 1.17377.1
36393345
36403346**Plugin marketplaces.** Git repositories or hosted marketplace.json files shown as plugin marketplaces in the Directory’s Organization tab.
3641
3642[Self-hosted install](#self-hosted-column): Server side. The host fetches the admin's plugin marketplaces and loads their plugins into the sessions it runs.
36433347
36443348> **Child attributes**
36453349>
from line 3485
37813485
37823486**Organization plugin settings.** Locks tool permissions on the MCP servers that plugins provide.
37833487
3784[Self-hosted install](#self-hosted-column): Server side. The host applies the admin's per-tool locks, and no plugin's MCP server is started on the computer.
3785
37863488> **More detail**
37873489>
37883490> * If a `managedMcpServers` entry is for the same server (same URL, otherwise same name), the entry here is ignored. Put the locks in that entry's `toolPolicy`.
from line 3529
38273529
38283530**Use bootstrap config.** Fetch and apply settings from the bootstrap config URL at launch. Turn off to keep the URL saved but skip the fetch.
38293531
3830[Self-hosted install](#self-hosted-column): MDM profile. Controls whether the desktop app fetches its configuration, so it cannot travel inside that document.
3831
38323532[Admin Console](#the-works-with-column): Not available.
38333533
38343534***
from line 3543
38433543
38443544**Bootstrap config URL.** HTTPS endpoint that returns a per-user JSON config overlay. Values from the response override local settings and become read-only.
38453545
3846[Self-hosted install](#self-hosted-column): MDM profile. Tells the desktop app where to fetch its configuration, so it cannot travel inside that document.
3847
38483546[Admin Console](#the-works-with-column): Not available.
38493547
38503548***
from line 3559
38613559
38623560[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/bootstrap.md)
38633561
3864[Self-hosted install](#self-hosted-column): MDM profile. Names the sign-in the desktop app uses to fetch its configuration, so it cannot travel inside it.
3865
38663562[Admin Console](#the-works-with-column): Not available.
38673563
38683564> **More detail**
from line 3621
39253621
39263622[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/bootstrap.md)
39273623
3928[Self-hosted install](#self-hosted-column): MDM profile. Sets headers the desktop app sends to fetch its configuration, so it cannot travel inside that document.
3929
39303624[Admin Console](#the-works-with-column): Not available.
39313625
39323626> **More detail**
from line 3645
39513645
39523646[Guide for this setting](https://claude.com/docs/third-party/claude-desktop/bootstrap.md)
39533647
3954[Self-hosted install](#self-hosted-column): MDM profile. Names a program on the person's computer that supplies headers for fetching the app's configuration.
3955
39563648[Admin Console](#the-works-with-column): Not available.
39573649
39583650> **More detail**
from line 3664
39723664Since 1.26832.0
39733665
39743666**Trust bootstrap-delivered settings.** Skip the per-user consent prompt for sign-in settings, inference endpoints, helper scripts, and connectors the bootstrap server delivers.
3975
3976[Self-hosted install](#self-hosted-column): MDM profile. Skips a consent prompt on the person's computer for what the configuration server sends.
39773667
39783668[Admin Console](#the-works-with-column): Not available.
39793669
from line 3688
39983688
39993689Unless a label in its entry says otherwise, a key can be set in an MDM profile or the local configuration file, or returned from a bootstrap server. A badge marks another kind of deployment that the key also works with.
40003690
4001* **Self-hosted**: Something acts on the key on a self-hosted install. Its [Self-hosted install](#self-hosted-column) line gives the reason, and reads Server side or MDM profile, as the badge does on hover. Without the badge, that line reads Not supported, or the entry has none.
40023691* **Admin Console**: The key takes effect where your organization manages Claude Desktop from the Enterprise Admin Console. [Read more](https://claude.com/docs/third-party/claude-desktop/admin-console.md).
40033692
40043693 * **No hover text**: The hosted configuration can hold the key. Set it on the console's pages or, where no page has a field for it, by importing a configuration file or through the Admin API.
from line 3696
40073696
40083697 The hosted configuration refuses some values of keys that it can hold, for example an API key or token in a request header, and the Claude API as the inference provider. On a device that also has an MDM profile, the app still reads a few keys from the profile, for example the network proxy keys, which the console can't set. The Enterprise Admin Console guide lists them.
40093698
4010### Self-hosted install line
4011
4012The self-hosted word matters only on a self-hosted install, where sessions run on a session host that your organization operates and not on the person's computer. The word says who acts on the key on such an install, and so where to set it; the text beside it gives the reason. On any other install, ignore it.
4013
4014* **Server side** (`server`): in the document your session host reads; the host applies it itself.
4015* **Server side** (`reported`): in the same document; the host passes it on to Claude Desktop, which applies it in its own windows or on the person's computer.
4016* **MDM profile** (`client`): in Claude Desktop's own configuration on the computer (device management, the local file, or a bootstrap server that configuration names); the session host ignores it.
4017* **Not supported** (`none`): nothing acts on it on a self-hosted install, whichever of those places sets it.
4018
4019One exception to the four words: where a device-management profile sets only app-behavior keys, that profile alone decides all of them (of the keys here: `disableAutoUpdates`, `installedUpdateEnforcementEnabled`, `installedUpdateEnforcementHours`, `autoUpdaterEnforcementHours`, `updateViaUpdatesHost`, `releaseChannel`, `relaunchEnforcementHours`, `configRecheckIntervalMinutes`, `egressProxyUrl`, `egressProxyPacUrl`).
4020
4021The word is what this Claude Desktop release declares. A session host acts on a `server` or `reported` key only from the host version that reads it; until then nothing applies the key on a self-hosted install, and Claude Desktop does not fall back to a value set on the computer.
4022
40233699## Guides
40243700
4025* [Configuration implementation](https://claude.com/docs/third-party/claude-desktop/configuration-format.md): how configuration differs between a device's own configuration, the Enterprise Admin Console, and a self-hosted install, and how to write each value type.
3701* [Configuration implementation](https://claude.com/docs/third-party/claude-desktop/configuration-format.md): how configuration differs between a device's own configuration and the Enterprise Admin Console, and how to write each value type.
40263702* [Configuration changelog](https://claude.com/docs/third-party/claude-desktop/configuration-changelog.md): the desktop release each key first appeared in.
40273703* [Models and effort levels](https://claude.com/docs/third-party/claude-desktop/models.md): how the keys under **Models** work together.
40283704* [Unified Claude](https://claude.com/docs/third-party/claude-desktop/unified-claude.md#how-unified-claude-interacts-with-chat-and-cowork-settings): how `desktopHome` overrides the other keys under **Chat surface** and **Cowork surface**.
40293705
third-party/claude-desktop/configuration-format Changed · +8 / -41 lines
## Configuration on a self-hosted install ### What an MDM profile does on a self-hosted install ### When a change takes effect on a self-hosted install
from line 2
22
33> Compare where Claude Desktop on 3P reads configuration in each kind of deployment, and write values for a profile, the registry, or the Linux file
44
5You configure Claude Desktop on third-party (3P) with the keys in the [configuration reference](https://claude.com/docs/third-party/claude-desktop/configuration.md) in every kind of deployment, but where you set them, how they reach the app, and how you write their values differ between a device's own configuration, the Enterprise Admin Console, and a self-hosted install.
5You configure Claude Desktop on third-party (3P) with the keys in the [configuration reference](https://claude.com/docs/third-party/claude-desktop/configuration.md) in every kind of deployment, but where you set them, how they reach the app, and how you write their values differ between a device's own configuration and the Enterprise Admin Console.
66
77> [!NOTE]
88>
from line 12
1212
1313Each kind of deployment stores and delivers the configuration differently.
1414
15| | [Configuration on the device](#configuration-on-the-device) | [Enterprise Admin Console](#configuration-from-the-enterprise-admin-console) | [Self-hosted install](#configuration-on-a-self-hosted-install) |
16| - | - | - | - |
17| Where the configuration lives | In an MDM profile or registry policy, in the local configuration file, or on a bootstrap server that the device points to | In your organization's settings on claude.ai, which Anthropic hosts | Keys labeled **Server side** live in the document your session host reads. Keys labeled **MDM profile** live in Claude Desktop's own configuration on the device |
18| How it reaches the app | The app reads it at launch, or fetches it from your bootstrap server. Users don't sign in to a Claude account | Each user signs in with their work account, and the app downloads the settings that apply to them | Sessions run on a session host your organization operates, which applies a **Server side** key itself or passes it on to Claude Desktop. Claude Desktop reads keys labeled **MDM profile** from the device, as on any device |
19| What an MDM profile does | Carries the full configuration, or the bootstrap keys | You don't need one. A profile on the device can still decide some settings, or keep the device off the console. See [What an MDM profile does alongside the Enterprise Admin Console](#what-an-mdm-profile-does-alongside-the-enterprise-admin-console) | Usually names the session host, and carries the keys labeled **MDM profile**. See [What an MDM profile does on a self-hosted install](#what-an-mdm-profile-does-on-a-self-hosted-install) |
20| How you write values | Strings in a macOS profile or the Windows registry. JSON in the Linux file or a bootstrap response | Fields on the console's pages, or JSON in an imported file or an Admin API request | As on any device, for keys labeled **MDM profile**. See [Value types in a profile or registry policy](#value-types-in-a-profile-or-registry-policy) |
21| Where to go next | [Deploy with MDM](https://claude.com/docs/third-party/claude-desktop/mdm.md), [Deploy with a bootstrap server](https://claude.com/docs/third-party/claude-desktop/bootstrap.md) | [Deploy with Enterprise Admin Console](https://claude.com/docs/third-party/claude-desktop/admin-console.md) | [Keys that work on a self-hosted install](https://claude.com/docs/third-party/claude-desktop/configuration.md?works-with=self-hosted) |
15| | [Configuration on the device](#configuration-on-the-device) | [Enterprise Admin Console](#configuration-from-the-enterprise-admin-console) |
16| - | - | - |
17| Where the configuration lives | In an MDM profile or registry policy, in the local configuration file, or on a bootstrap server that the device points to | In your organization's settings on claude.ai, which Anthropic hosts |
18| How it reaches the app | The app reads it at launch, or fetches it from your bootstrap server. Users don't sign in to a Claude account | Each user signs in with their work account, and the app downloads the settings that apply to them |
19| What an MDM profile does | Carries the full configuration, or the bootstrap keys | You don't need one. A profile on the device can still decide some settings, or keep the device off the console. See [What an MDM profile does alongside the Enterprise Admin Console](#what-an-mdm-profile-does-alongside-the-enterprise-admin-console) |
20| How you write values | Strings in a macOS profile or the Windows registry. JSON in the Linux file or a bootstrap response | Fields on the console's pages, or JSON in an imported file or an Admin API request |
21| Where to go next | [Deploy with MDM](https://claude.com/docs/third-party/claude-desktop/mdm.md), [Deploy with a bootstrap server](https://claude.com/docs/third-party/claude-desktop/bootstrap.md) | [Deploy with Enterprise Admin Console](https://claude.com/docs/third-party/claude-desktop/admin-console.md) |
2222
2323## Configuration on the device
2424
from line 122
122122* **Any other key**: the device uses the profile's configuration until its user moves the device to the console's configuration by signing in, which requires Claude Desktop 2.37337.0 or later. With `forceLoginOrgUUID` set to your organization's ID, the user can move the device only to your organization's configuration. After the move, the app still takes a few keys from the profile, for example the network proxy keys. Other settings come from the console, and the profile's values don't apply even where the console leaves a setting unset.
123123
124124[Which settings apply on a device with a managed profile](https://claude.com/docs/third-party/claude-desktop/admin-console.md#which-settings-apply-on-a-device-with-a-managed-profile) lists the keys that the app takes from the profile, and [Keep a device on its managed profile](https://claude.com/docs/third-party/claude-desktop/admin-console.md#keep-a-device-on-its-managed-profile) covers the keys that prevent or limit the move.
125
126## Configuration on a self-hosted install
127
128On a self-hosted install, sessions run on a session host that your organization operates and not on the person's device. Each key's label in the reference says which place in the following table counts for it.
129
130| Place | Label of its keys in the reference | Who acts on the key |
131| - | - | - |
132| The document your session host reads | **Server side** | The session host. It applies the key itself, or passes it on to Claude Desktop, which applies it in its own windows or on the person's device. |
133| Claude Desktop's own configuration on the device: an MDM profile, the local file, or a bootstrap server that configuration names | **MDM profile** | Claude Desktop, by the same rules as [configuration on the device](#which-configuration-source-applies-on-a-device). The session host ignores the key. |
134| The session host's own configuration | **Not supported**, for the matching keys | Whoever runs the host sets the host's route to the model, and names your telemetry collector's address, protocol, and headers in the host's own configuration. |
135
136An MDM profile that sets only [app-behavior keys](https://claude.com/docs/third-party/claude-desktop/mdm.md#update-keys-and-managed-precedence) decides all of those keys itself, whatever their label. Outside that case, nothing acts on a key labeled **Not supported**, wherever you set it.
137
138The label is what the current Claude Desktop release declares. On that release, a session host acts on a **Server side** key only from the host version that reads it. Until then, unless an MDM profile sets only app-behavior keys, nothing applies the key, and Claude Desktop doesn't fall back to a value set on the device. An earlier Claude Desktop release can still apply a value set on the device, so keep a restriction in the MDM profile as well until every device runs the current release.
139
140Each key's entry in the reference gives its label and a one-line reason. The [published schemas](https://claude.com/docs/third-party/claude-desktop/bootstrap.md#response-schema) carry the self-hosted word (`server`, `reported`, `client`, or `none`) and its reason in `x-selfHosted` for each key they list. The [legend for the self-hosted labels](https://claude.com/docs/third-party/claude-desktop/configuration.md#self-hosted-column) defines the labels and maps each word to its label.
141
142### What an MDM profile does on a self-hosted install
143
144The MDM profile usually names the session host, and carries the keys labeled **MDM profile**. Each of those keys is about the person's device, as its reason in the reference says. For example:
145
146* **Sign-in to the session host**: on a self-hosted install [`inferenceCredentialKind`](https://claude.com/docs/third-party/claude-desktop/configuration#inferencecredentialkind) names the device's sign-in to the host, never the host's model credential, and [`inferenceIdpOidc`](https://claude.com/docs/third-party/claude-desktop/configuration#inferenceidpoidc) configures the sign-in that the device reuses for the host.
147* **The device's network proxy**: [`egressProxyUrl`](https://claude.com/docs/third-party/claude-desktop/configuration#egressproxyurl) and [`egressProxyPacUrl`](https://claude.com/docs/third-party/claude-desktop/configuration#egressproxypacurl).
148* **Telemetry and updates**: [`disableEssentialTelemetry`](https://claude.com/docs/third-party/claude-desktop/configuration#disableessentialtelemetry) and [`disableAutoUpdates`](https://claude.com/docs/third-party/claude-desktop/configuration#disableautoupdates).
149
150Write each value in the profile as [Value types in a profile or registry policy](#value-types-in-a-profile-or-registry-policy) describes.
151
152### When a change takes effect on a self-hosted install
153
154* **A key in the session host's document**: the host refreshes its own copy at least every [`configRecheckIntervalMinutes`](https://claude.com/docs/third-party/claude-desktop/configuration#configrecheckintervalminutes) (10 minutes by default) and tells Claude Desktop how often to ask it again.
155* **A key on the device**: as on any device. The re-check interval and the restart window are themselves **Server side** keys, so the session host's document sets them, unless an MDM profile sets only app-behavior keys. See [When a configuration change on a device takes effect](#when-a-configuration-change-on-a-device-takes-effect).
156
157A value that the session host delivers for a field labeled **Consent required** applies after the user approves it. Where machine-scoped device management set the host's address, the value applies without a prompt. [`trustBootstrapDelivery`](https://claude.com/docs/third-party/claude-desktop/configuration#trustbootstrapdelivery) covers what a bootstrap server delivers, not what a session host delivers.
158125
connectors/microsoft/365 Changed · +1 / -1 lines
from line 143
143143
144144Selecting **Grant admin consent for \{your organization}** on the connector's **Permissions** page in the Entra admin center approves the same list as the admin consent link.
145145
146The admin consent link is for the connector used from claude.ai. If the Application ID on the enterprise application's **Overview** page differs from the one in the link (for example in a government deployment), use that ID instead. The Claude Desktop local connector and a self-hosted server use their own app registrations.
146The admin consent link is for the connector used from claude.ai. If the Application ID on the enterprise application's **Overview** page differs from the one in the link (for example in a government deployment), use that ID instead. The Claude Desktop local connector uses its own app registration.
147147
148148## Troubleshooting
149149
third-party/claude-desktop/code Changed · +0 / -1 lines
from line 95
9595* **Cowork sessions** read the managed settings on the device, and never read [server-managed settings](https://code.claude.com/docs/en/server-managed-settings).
9696* **Local Code sessions** read the managed settings on the device too, unless server-managed settings or [a Claude apps gateway's `code` settings](https://code.claude.com/docs/en/claude-apps-gateway-config#apply-code-settings-in-the-code-tab) [take priority](https://code.claude.com/docs/en/managed-settings#how-claude-code-combines-managed-sources). They also read `autoMode` entries from the user's own `~/.claude/settings.json`, which Cowork sessions don't read.
9797* **For Code sessions on an SSH host**, see [Managed configuration on the remote host](https://claude.com/docs/third-party/claude-desktop/ssh-remote-sessions.md#managed-configuration-on-the-remote-host).
98* **For a self-hosted install**, see [Configuration on a self-hosted install](https://claude.com/docs/third-party/claude-desktop/configuration-format.md#configuration-on-a-self-hosted-install).
9998
10099For example, on a device with no other Claude Code managed settings, deploy this file to describe an internal service and add one allow rule:
101100
third-party/claude-desktop/gateway Changed · +1 / -1 lines
from line 597
597597
598598To tell users where they stand before your gateway blocks them, show one line of text in one of these places:
599599
600* **Across the top of the app window**: set the [`banner`](https://claude.com/docs/third-party/claude-desktop/configuration#banner) configuration key to show a one-line notice. If you serve configuration per user, for example from a [bootstrap server](https://claude.com/docs/third-party/claude-desktop/bootstrap.md), each user's notice can show their own figure, such as "You have used 82% of your monthly budget." On a self-hosted install, set `banner` in [the document your session host reads](https://claude.com/docs/third-party/claude-desktop/configuration-format.md#configuration-on-a-self-hosted-install).
600* **Across the top of the app window**: set the [`banner`](https://claude.com/docs/third-party/claude-desktop/configuration#banner) configuration key to show a one-line notice. If you serve configuration per user, for example from a [bootstrap server](https://claude.com/docs/third-party/claude-desktop/bootstrap.md), each user's notice can show their own figure, such as "You have used 82% of your monthly budget."
601601* **Above the message box**: set up a [status line](https://claude.com/docs/third-party/claude-desktop/status-line.md). Claude Desktop runs a program that you install on the user's device and shows the line it prints.
602602
603603Claude Desktop can also limit each user's tokens, separately from your gateway's budget, and warn users before they reach that limit. To set up the limit and check where it applies, see the [token limit keys](https://claude.com/docs/third-party/claude-desktop/configuration.md#inferencemaxtokensperwindow) in the configuration reference.
third-party/claude-desktop/status-line Changed · +1 / -1 lines
from line 17
1717
1818## Turn on the status line
1919
20The status line requires Claude Desktop 4.4212.0 or later and is off until you set the [`sessionStatusLine`](https://claude.com/docs/third-party/claude-desktop/configuration#sessionstatusline) key. The status line isn't available on a [self-hosted install](https://claude.com/docs/third-party/claude-desktop/configuration-format.md#configuration-on-a-self-hosted-install).
20The status line requires Claude Desktop 4.4212.0 or later and is off until you set the [`sessionStatusLine`](https://claude.com/docs/third-party/claude-desktop/configuration#sessionstatusline) key.
2121
2222**1. Install the program**
2323