How to turn off auto mode in Claude Code, now or for good
Press Shift+Tab once to leave auto mode. To remove it for good, set disableAutoMode to "disable" in settings.json. Admins can lock it off in managed settings.
To turn off auto mode in Claude Code for this session, press Shift+Tab once: from auto, the first press switches to Manual (default). To turn it off for good, add "disableAutoMode": "disable" under permissions in ~/.claude/settings.json. Admins put the same key in managed settings to disable auto mode for the whole team. The auto mode classifier cannot be switched off on its own; leaving auto mode is how you stop it.
claude/for is independent and not affiliated with Anthropic. Everything below comes from Anthropic's permission modes documentation and settings reference, reopened on October 22, 2026.
Shift+Tab once. Next launch: claude --permission-mode manual. Start in Manual every time but keep auto available: "defaultMode": "default". Remove auto completely: "disableAutoMode": "disable". Whole team, no override: the same key in managed settings. Keep auto but always confirm git push: a permissions.ask rule.Why Claude Code is in auto mode at all
Current versions of Claude Code start interactive terminal and VS Code sessions in auto mode when no permission mode is configured, on every plan and provider. The docs date this to v2.1.283 or later. So if you never chose auto mode and it is on anyway, that is the built-in default, not something you clicked.
Auto mode skips routine permission prompts. Instead of asking you, a separate classifier model reviews each action before it runs and blocks anything that escalates beyond your request, targets unrecognized infrastructure, or looks driven by hostile content Claude read. Anthropic is explicit that it "reduces permission prompts but does not guarantee safety."
Turn off auto mode for this session
| Where you run Claude Code | How to leave auto mode |
|---|---|
| Terminal (CLI) or JetBrains | Press Shift+Tab once. The status bar changes to ⏸ manual mode on |
| VS Code extension | Click the mode indicator at the bottom of the prompt box and pick Manual |
| Desktop app (Code tab) | Use the mode selector in the row under the prompt box |
In the terminal, the Shift+Tab cycle from auto runs Manual, then accept edits, then plan, and auto sits at the end of the loop. Accept edits is not the same as Manual: it lets Claude edit files without asking. Stop on Manual if you want a prompt for everything.
To start a single session outside auto mode, pass the flag at launch. manual is an accepted alias for default:
claude --permission-mode manual
Turn off auto mode permanently
You have two settings, and they do different jobs.
Start in Manual, but keep auto one keypress away. Set the starting mode in your user settings file, ~/.claude/settings.json:
{
"permissions": {
"defaultMode": "default"
}
}
Remove auto mode completely. This takes auto out of the Shift+Tab cycle, and any session that would have started in auto, whether from a flag, a settings file or the built-in default, starts in Manual instead:
{
"permissions": {
"disableAutoMode": "disable"
}
}
The settings reference also accepts disableAutoMode at the top level of the file. It works from any settings file, so the scope you pick decides who it applies to.
| Scope | File | Applies to |
|---|---|---|
| User | ~/.claude/settings.json | You, in every project on this machine |
| Project | .claude/settings.json (committed) | Everyone who works in that repo |
| Local | .claude/settings.local.json | You, in one project |
| Managed | managed-settings.json or server-managed settings | Everyone your organization deploys it to, with no user override |
Two traps. The VS Code extension never reads project settings for its starting mode, so put defaultMode in your user file. And the desktop app remembers the mode you last picked per folder, which takes precedence over defaultMode for that folder: pick Manual once in the selector.
The Claude moves worth stealing, by email
Workflows tested on real jobs, sent only when they are worth it. Free.
Disable auto mode for a team
Admins set permissions.disableAutoMode to "disable" in managed settings. On Team and Enterprise plans auto mode is available by default, and this is the documented way to turn it off for the organization. Managed settings sit at the top of the settings precedence order, so nothing a developer puts in their own files brings auto mode back.
A key committed to the project's .claude/settings.json reaches teammates too, but only as a team convention: it lives in a file anyone with repo access can edit. For a real lock, use managed settings. A developer can run /status and read the Setting sources line to see which managed source applies to them.
What "manual mode" means
Manual is the mode where Claude asks before editing a file or running a command. Its config value is default, which is the name hooks, the SDK and older docs use. The CLI, VS Code, JetBrains and the desktop app all label it Manual, and the CLI accepts manual wherever you type the value.
If you searched for how to turn off manual mode, you want the reverse of this page: press Shift+Tab until the status bar shows ⏵⏵ auto mode on, or set "defaultMode": "auto" in ~/.claude/settings.json. That value is ignored in project and local settings files. Auto mode also needs a supported model, listed on the permission modes page.
Can you turn off the auto mode classifier?
Not while staying in auto mode. The classifier is what auto mode is: remove it and you are back to prompts (Manual) or to no checks at all (bypass permissions). To stop the classifier, leave auto mode or disable it with the settings above.
What you can do is tune it. The autoMode settings block tells the classifier which repos, buckets and domains your organization trusts, and autoMode.classifyAllShell: true routes every shell command through it, ignoring narrow Bash allow rules (Configure auto mode). In v2.1.246 or later, /permissions has an Auto mode tab for editing these rules.
CLAUDE_CODE_AUTO_MODE_SERVER=0 does not turn the classifier off either. Per the Claude Code changelog, it opts out of the server-side classifier on Bedrock, Vertex, Foundry and gateways, which changes where the check runs and how it is billed (classifier billing). You stay in auto mode.
Keep auto mode, but require confirmation for some tools
If long hands-off runs are useful and you only want a hard stop on a few actions, keep auto mode and add ask rules:
{
"permissions": {
"ask": [
"Bash(git push *)",
"Bash(gh pr create *)"
]
}
}
Content-scoped ask rules are evaluated before the classifier and always prompt, even in auto mode. Use permissions.deny for actions that must never run. Saying "don't push until I review" in chat also works, but the docs warn the instruction can be lost when context compaction removes that message.
These rules match the command text as written. A push Claude writes as git -C <dir> push does not match Bash(git push *), so for a checkpoint that inspects the full command, the docs point to a PreToolUse hook. If a hook is your gate, make it fail closed.
For the full setup of Manual plus ask and deny rules for risky tools, see how to configure Claude Code permissions. Why prompts still fire on harmless git commands is its own guide.
Honest limits
- Bypass permissions is the opposite of this job.
--dangerously-skip-permissionsremoves prompts and safety checks. Anthropic reserves it for isolated containers and VMs. - Manual is not a sandbox. It asks before acting; once you approve, the command runs with your permissions.
- Anthropic can switch auto mode off server-side. If auto mode reports as unavailable and no settings file disables it, that may be why. The session keeps it off until it ends.
- Version numbers move fast. The defaults described here match the docs on October 22, 2026. Check the version notes if your build behaves differently.
FAQ
How do I turn off auto mode in Claude Code?
Press Shift+Tab once in the terminal, or pick Manual from the mode indicator in VS Code or the mode selector in the desktop app. For future sessions, set "defaultMode": "default" under permissions in ~/.claude/settings.json, or add "disableAutoMode": "disable" to remove auto mode entirely.
How do I disable auto mode in Claude Code for everyone?
Set permissions.disableAutoMode to "disable" in managed settings. That removes auto from the Shift+Tab cycle for every user the policy reaches, and a session started with --permission-mode auto opens in Manual instead. Users cannot override a managed key from their own settings files.
Can I disable the Claude Code auto mode classifier?
Not on its own. In auto mode the classifier replaces your approvals, so turning it off means leaving auto mode. You can tune what it trusts with the autoMode settings block, and CLAUDE_CODE_AUTO_MODE_SERVER=0 only changes where the classifier runs on some providers.
How do I turn off manual mode in Claude Code?
Press Shift+Tab until the status bar reads ⏵⏵ auto mode on, or start with claude --permission-mode auto. To make auto the default, set "defaultMode": "auto" in ~/.claude/settings.json; project settings files ignore that value. Auto must not be disabled in any settings file.
Why does Claude Code start in auto mode?
Since v2.1.283, auto mode is the built-in starting mode for interactive terminal and VS Code sessions on every plan and provider, whenever no permission mode is configured. Setting permissions.defaultMode overrides it.
Sources
Checked 2026-10-22.
- Choose a permission mode:
Shift+Tabcycle, Manual anddefault,--permission-mode, starting-mode table,disableAutoMode, VS Code and desktop behavior, ask rules before the classifier - Settings reference:
disableAutoMode(any file, also accepted underpermissions),permissions.ask - Settings files and precedence: user, project, local and managed scopes; precedence;
/status - Configure auto mode:
permissions.askcheckpoints,autoModeblock,classifyAllShell,/permissionsAuto mode tab - Auto mode classifier request charges: server-side classifier billing
- Claude Code CHANGELOG: auto-start default (2.1.283, 2.1.284),
CLAUDE_CODE_AUTO_MODE_SERVER(2.1.278)
