[BUG] Auto mode injects system reminder that suppresses AskUserQuestion in skills

Resolved 💬 8 comments Opened May 15, 2026 by jbr870 Closed May 21, 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?

What's Wrong?

Auto mode injects a hardcoded system reminder that instructs the model to never pause for clarifying questions. This causes AskUserQuestion calls in skills to be silently skipped or auto-completed with empty answers — even when the skill explicitly lists AskUserQuestion in its allowed-tools.

This is a distinct root cause from the sub-agent/fork context issues reported in #34592, #30523, and #29547. Those describe the tool not being available in non-main-session contexts. This bug affects the main session — the tool is available but the model is instructed not to use it.

Root Cause (found via binary analysis)

The Claude Code binary (tested on v2.1.142) contains a function yz5() that selects between three auto-mode reminder variants:

function yz5(H) {
  if (H.reminderType === "sparse") return Iz5();      // "Auto mode still active..."
  else if (H.reminderType === "once") return Sz5();    // <-- THE CULPRIT
  return hz5();                                         // "## Auto Mode Active\nAuto mode is active. ..."
}

function Sz5() {
  return o_([w8({
    content: "The user has asked you to work without stopping for clarifying questions. When you'd normally pause to check, make the reasonable call and continue; they'll redirect if needed.",
    isMeta: !0
  })])
}

The "once" reminder variant (Sz5()) is injected as a system-level message (isMeta: true) and tells the model:

"The user has asked you to work without stopping for clarifying questions. When you'd normally pause to check, make the reasonable call and continue; they'll redirect if needed."

The model obeys this instruction and auto-completes AskUserQuestion with empty input rather than presenting it to the user.

Trigger condition

This fires when permissions.defaultMode is set to "auto" in ~/.claude/settings.json. The reminder is injected into every session, including devcontainer sessions where settings.json is mounted from the host.

Why This Is a Bug

Auto mode bundles two conceptually separate concerns into one toggle:

  1. Permission auto-classification — the safety classifier that auto-approves low-risk tool calls
  2. "No clarifying questions" reminder — a system prompt injection that suppresses interactive prompts

These should be independent. A user who wants auto-approved permissions does not necessarily want skills to lose their ability to gather structured input via AskUserQuestion. The reminder makes no distinction between:

  • Free-text intent-disambiguation pauses (reasonable to skip in autonomous mode)
  • Structured AskUserQuestion calls in skills that are explicitly part of the skill's designed workflow (should never be suppressed)

What Should Happen?

Expected Behavior

AskUserQuestion should always present to the user and wait for input when called from a skill that explicitly declares it in allowed-tools, regardless of the active permission mode.

Suggested Fix

Either:

  • Decouple the "no clarifying questions" reminder from auto mode entirely, making it a separate setting
  • Scope the reminder to exclude AskUserQuestion calls that originate from skills with it in their allowed-tools
  • Remove the "once" reminder variant — the permission classifier already handles autonomy; the prompt injection is redundant and harmful

Error Messages/Logs

Steps to Reproduce

  1. Set "defaultMode": "auto" in ~/.claude/settings.json
  2. Create a skill that uses AskUserQuestion:

``markdown
---
name: test-ask
description: Test AskUserQuestion in auto mode
allowed-tools: Read, AskUserQuestion
---
Use AskUserQuestion to ask the user which option they prefer: A, B, or C.
Then report their answer.
``

  1. Invoke the skill: /test-ask
  2. Observe: the model skips the question and proceeds as if the user answered

Claude Model

Opus

Is this a regression?

I don't know

Last Working Version

_No response_

Claude Code Version

2.1.142

Platform

Anthropic API

Operating System

Ubuntu/Debian Linux

Terminal/Shell

Other

Additional Information

Related Issues

  • #29547 — AskUserQuestion silently returns empty answers inside plugin skills
  • #29774 — AskUserQuestion auto-selects without waiting for user input in custom commands/skills
  • #34592 — AskUserQuestion unavailable in all sub-agent contexts (catalogs broader pattern)
  • #30523 — AskUserQuestion returns empty inside Skill tool
  • #30563 — AskUserQuestion returns empty when PreToolUse hook + skill allowed-tools are both present
  • #9846 — AskUserQuestion tool doesn't work in skill until plan mode toggled

View original on GitHub ↗

This issue has 8 comments on GitHub. Read the full discussion on GitHub ↗