[MODEL] Auto mode classifier blocks actions even after explicit user approval, with no configuration path

Status Open
Maintainer reply None cached
Activity 3 comments · opened Sep 21, 2026

Preflight Checklist

  • [x] I have searched existing issues for similar behavior reports
  • [x] This report does NOT contain sensitive information (API keys, passwords, etc.)

Type of Behavior Issue

Claude refused a reasonable request

What You Asked Claude to Do

I approved (in chat) a series of Bash/tool actions on my own infrastructure:
uploading a file via curl/FTP to my own web server, running a read-only SQL
query in phpMyAdmin on my own database, and a local Python file-existence
check. I explicitly typed approval such as "진행해" (go ahead) in response to
Claude's confirmation prompts.

What Claude Actually Did

Claude attempted the approved actions (curl FTP upload, phpMyAdmin SQL query
via browser navigation, local Python os.path.exists check) using different
tools (Bash, PowerShell) across multiple attempts. Each attempt was denied
before execution by an "auto mode classifier" with reasons such as
[Data Exfiltration], [PII Data Handling], [Modify Shared Resources], and
[Auto-Mode Bypass] (this last one appeared specifically after Claude tried a
different tool for the same already-approved goal).

Expected Behavior

Once I explicitly approve an action in chat (e.g. "진행해" / "go ahead"),
Claude Code should either proceed, or at minimum clearly indicate this is a
hard, non-overridable safety boundary from the start (rather than prompting
for approval that then has no effect). Currently the tool asks for
confirmation implicitly and then silently ignores it.

Files Affected

N/A — no files were modified. The actions were blocked before execution.
This report is about legitimate actions being blocked, not about unwanted
modifications.

Permission Mode

Accept Edits was OFF (manual approval required)

Can You Reproduce This?

Yes, every time with the same prompt

Steps to Reproduce

  1. In Claude Code, ask Claude to perform an action involving personal data

(e.g. importing real employee records into a database) or a production/
shared server (e.g. uploading a file via FTP to a live website)

  1. Explicitly approve the action when asked
  2. Observe the action is denied anyway, citing an "auto mode classifier"
  3. Ask Claude to retry via a different tool (e.g. PowerShell instead of Bash)

for the same goal — this gets blocked too, now citing [Auto-Mode Bypass]

Claude Model

Sonnet

Relevant Conversation

Permission for this action was denied by the Claude Code auto mode classifier.
Reason: [Auto-Mode Bypass]. If you have other tasks that don't depend on this
action, continue working on those. IMPORTANT: You *may* attempt to accomplish
this action using other tools that might naturally be used to accomplish this
goal, e.g. using head instead of cat. But you *should not* attempt to work
around this denial in malicious ways, e.g. do not use your ability to run
tests to execute non-test actions. You should only try to work around this
restriction in reasonable ways that do not attempt to bypass the intent behind
this denial. If you believe this capability is essential to complete the
user's request, first try a safer method. Get as much of the rest of the task
done as you can, then STOP and explain to the user what you were trying to do
and why you need this permission. Let the user decide how to proceed. To allow
this type of action in the future, the user can add a Bash permission rule to
their settings.

Impact

Critical - Data loss or corrupted project

Claude Code Version

sonnet5

Platform

Anthropic API

Additional Context

Patterns noticed in this session:

  • Triggers specifically around: personal identifiable information (resident

registration numbers, phone numbers) and production/live server changes
(editing wp-config.php, database writes on a live site)

  • Switching to a different tool (PowerShell instead of Bash) for the exact

same already-approved goal triggered an even more specific block reason,
"[Auto-Mode Bypass]" — suggesting the classifier tracks intent across tool
switches within a session, not just per-command patterns

  • Separately, I asked a subagent to research how to configure this via

settings.json. Its response included a suspiciously specific and
conveniently-matching settings.json snippet that would have re-enabled the
exact two blocked categories (PII handling, FTP to internal servers). The
harness itself flagged that subagent's own output as a "Self-Modification"
security warning, so I did not act on it — but it seems worth noting as a
related, possibly concerning finding.

  • Did not trigger for ordinary/non-sensitive actions in the same session

(regular file edits, non-PII database reads)

View original on GitHub ↗

3 Comments

GWells77 · 20 days ago

Product: Claude Cowork (Claude Desktop app), browser automation / computer-use tools
Date of incident: 2026-09-23

Summary: Auto Mode's safety classifier is blocking a legitimate, previously-working browser
action even though the target site is already on my approved-sites list — meaning the block
is happening at a layer below/after site permissions, with no visible way to override it.

What I was trying to do: Change two settings fields on an existing account inside a
third-party business web application my company uses regularly. This is a routine, low-risk
settings edit I've had Claude do successfully before without incident.

What happened:

  • Built-in Browser pane: 3 physical click/type attempts, all denied. Reason shown:

"[Modify Shared Resources]"

  • Claude in Chrome extension (my own live, signed-in session): a batched physical click+type

attempt, denied. Reason shown: "[Auto-Mode Bypass]"

  • A follow-up plain page read/navigate of the same account (no write attempted) was also denied

Key evidence this is not a permissions/site-trust issue: the site in question was ALREADY on
my Cowork "Allowed sites" list — I had already approved this exact domain for browser
automation. The block is happening at a separate, deeper classifier layer that overrides an
already-granted site permission, with no user-facing setting I could find to adjust it.

Why this matters to me: A prior Cowork session had previously performed this same category of
browser-automated setup work — dozens of similar account configurations — with zero manual
steps from me. This same category of action is now blocked outright, which is a significant
regression in what I could previously do hands-off.

I found this appears to be a known, currently-unresolved issue — see anthropics/claude-code
issue #95777 (classifier blocks actions even after explicit user approval, no configuration
path) and #77185 (confirms "[Modify Shared Resources]" as a real denial category, plus a
related race-condition bug). I'd like to know: (1) is there a Cowork-side equivalent to Claude
Code's autoMode.environment "trusted infrastructure" setting that I can configure myself, and
(2) is there a fix timeline for this regression?

TheAviv · 6 days ago

Another case, 8 Oct 2026, claude.ai Cowork cloud session (Opus 5.5, auto mode), and it is worse than an annoyance because it locks in a platform bug.

The user's own uploaded plugin has UserPromptSubmit hooks. Because of #98839 (a plugin re-sync leaves a live chat pointing at a deleted ~gN plugin folder), each hook command exits 2 on "file not found", and that counts as a block, so a whole claude.ai chat silently refused every message. The defensive fix on our side is trivial: wrap each hook command as f=...; [ -f "$f" ] || exit 0; exec python3 "$f", so a missing script is skipped instead of blocking.

The user explicitly ordered it in chat ("Please go ahead and do as you see fit", after being told exactly what would change). The classifier refused the step that patched the downloaded plugin zip on the user's own server with [Self-Modification]. The same edit was refused the same way at 2 AM the same day, also after an explicit in-chat go-ahead. There is no in-session way to approve it. The only route is to leave auto mode and click through manual prompts, which a chat on claude.ai web does not make obvious.

Asks:

  1. Treat a user-authored, user-owned plugin's hook files as the user's code, not as the agent modifying its own safeguards. At least allow an explicit in-chat instruction to count as approval.
  2. When a denial is approvable, render an "Approve once" button instead of a dead end (see #80900).
TheAviv · 5 days ago

Another instance, 9 Oct 2026 (claude.ai cloud session, auto mode). The user typed the exact approval sentence the session asked for ("deploy the doc-overwrite gate fix") for a change that only tightens one of their own PreToolUse guard hooks (refuse a project doc write much shorter than the doc that was read). The auto mode classifier still refused it as Self-Modification, three times, the last one after the explicit approval. A user's explicit, named approval of a change to their own plugin should clear this, or the refusal should say what would.