Split Auto Mode: separate permission auto-approval from "skip clarifying questions" behavior

Resolved 💬 2 comments Opened May 14, 2026 by febus982 Closed May 15, 2026

Summary

permissions.defaultMode: "auto" (Auto Mode) currently bundles two unrelated things into one switch:

  1. Permission auto-approval — non-dangerous tool calls run without prompting.
  2. Behavioral injection — a system-reminder is added to every user turn telling the model to "work without stopping for clarifying questions … make the reasonable call and continue; they'll redirect if needed." (the Vi5() / Ni5() / vi5() reminders dispatched by ki5() in the binary).

These solve different problems and users may want one without the other.

My case

I want permission auto-approval for safe commands I run all the time. I do not want the model to skip clarifying questions on architectural decisions — for design work I want it to slow down and ask, not "make the reasonable call and continue." Today my only options are:

  • Leave Auto Mode on → permissions are smooth, but the model defaults to acting instead of asking on design questions.
  • Turn Auto Mode off + hand-curate permissions.allow → behavior is right, but I lose blanket auto-approval of novel-but-safe commands.

There is no setting that gives me the permission ergonomics without the behavioral nudge.

Proposal

Decouple the two. Some options, in rough preference order:

  1. Separate settings, e.g. permissions.defaultMode: "auto" for the permission behavior, and a new autoMode.behavioralReminders: false (default true) to opt out of the Vi5/Ni5/vi5 injections. Most backwards-compatible.
  2. A new permission mode like "auto-permissions-only" (or rename: "auto" keeps current bundled behavior, a new mode does permissions-only) that auto-approves safe commands without injecting the behavioral reminder.
  3. Make the behavioral reminder its own opt-in (e.g. behavior.skipClarifyingQuestions: true) entirely separate from the permission mode.

Why it matters

The behavioral reminder is a strong steer — it discourages the model from asking questions even during brainstorming/design phases where asking is the right move. Users who enable Auto Mode for ergonomics may not realize they've also opted into a behavioral change, and there's no way to find this without disassembling the binary (the phrase doesn't appear in any docs, settings reference, or user-facing surface).

Repro

  1. Set "permissions.defaultMode": "auto" in ~/.claude/settings.json.
  2. Start any session.
  3. Inspect the user-turn system-reminders — the Vi5() text appears on every turn alongside permission auto-approval.

Verified in claude v2.1.128.

View original on GitHub ↗

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