Auto mode breaks when managed-settings.json is deployed (API direct org)
Resolved 💬 3 comments Opened Apr 7, 2026 by rlaytoncivis Closed May 20, 2026
Description
Auto mode stops working immediately after deploying a managed-settings.json file to /Library/Application Support/ClaudeCode/managed-settings.json, even though the file contains no disableAutoMode setting.
Environment
- Auth: API direct (API key org, not Team/Enterprise plan via claude.ai)
- Platform: macOS (deployed via Kandji MDM)
- Claude Code version: Latest as of 2026-04-07
Steps to reproduce
- Confirm auto mode is working (it was prior to deploying managed settings)
- Deploy a
managed-settings.jsonto/Library/Application Support/ClaudeCode/with only permissions and env settings — nodisableAutoModekey:
``json``
{
"permissions": {
"allow": ["Read", "Edit", "Bash(ls *)"],
"deny": ["Bash(dd *)"]
},
"env": {
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1"
}
}
- Auto mode is no longer available
Expected behavior
Auto mode should continue to work since disableAutoMode is not set. Per the docs, auto mode should only be disabled when disableAutoMode is explicitly set to "disable".
Actual behavior
Auto mode is disabled as soon as any managed-settings.json is present, regardless of its contents.
Additional context
- Reproduced on two separate machines (primary laptop and backup laptop)
- The second machine had only the managed-settings.json deployed (no mobileconfig profiles), confirming the managed-settings.json is the cause
- Our enterprise org (separate from the API org used for Claude Code) has auto mode enabled in the admin console, but that shouldn't apply here since we auth via API keys
- Suspicion: the presence of managed settings may be triggering an enterprise-mode code path that checks for an admin toggle, which doesn't exist for API direct orgs
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗