[BUG] `disableAutoMode` added mid-session removes auto from the mode rotation but does not eject a session already running in auto mode

Status Open
Reported on v2.1.235
Maintainer reply None cached
Activity 0 comments · opened Aug 19, 2026

Preflight Checklist

  • [x] I have searched existing issues and this hasn't been reported yet
  • [x] This is a single bug report (please file separate reports for different bugs)
  • [x] I am using the latest version of Claude Code

What's Wrong?

When disableAutoMode is added mid-session, the setting is picked up — auto mode disappears from the shift+tab rotation — but the session itself is left untouched: it remains in auto mode and continues auto-approving actions, until the user happens to cycle modes manually (or until a later, unspecified time which this report does not cover).

What Should Happen?

When disableAutoMode appears in settings, a session currently in auto mode should be ejected from it (fall back to default mode, or at minimum start prompting), consistent with the settings docs: _"Claude Code watches your settings files and reloads them when they change, so edits to most keys apply to the running session without a restart"_ (only model and outputStyle are documented as restart-only).

Error Messages/Logs

Steps to Reproduce

Uses two terminal tabs: tab A runs Claude Code, tab B edits settings with vim.

  1. Back up your settings first: mv ~/.claude/settings.json ~/.claude/settings.json.bak
  2. Create a minimal: echo '{ "permissions": { "defaultMode": "default" } }' > ~/.claude/settings.json
  3. Tab A: start claude, then press shift+tab until the footer shows "auto mode on".
  4. Tab B: vim ~/.claude/settings.json and add the kill switch to the permissions block: { "permissions": { "defaultMode": "default", "disableAutoMode": "disable" } }
  5. Tab A: ask Claude to do something that default mode would prompt for (e.g. edit a file outside the working directory — editing ~/.claude/settings.json itself works ask Claude to add a dummy variable to the file). → The action is auto-approved with no prompt. The footer still shows auto mode on.
  6. Tab A: press shift+tab to cycle modes. → The auto mode is gone from the rotation — proving the watcher hot-reloaded the setting — yet until that manual cycle, the session sat in auto mode and kept auto-approving (step 5).
  7. Clean up: mv ~/.claude/settings.json.bak ~/.claude/settings.json

Claude Model

Other

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.235 (Claude Code)

Platform

Anthropic API

Operating System

macOS

Terminal/Shell

Terminal.app (macOS)

Additional Information

_No response_

View original on GitHub ↗