Permission prompt UX: View/Confirm/Cancel buttons need better discoverability and clarity

Resolved ๐Ÿ’ฌ 3 comments Opened Mar 28, 2026 by pschwagler Closed Mar 28, 2026

Problem

The permission prompt buttons (๐Ÿ‘๏ธ View, โœ… Confirm, โŒ Cancel) have several UX gaps that make them harder to use effectively:

  1. "View" is ambiguous โ€” Users don't know what clicking it will reveal until they try. It toggles Claude's reasoning text, but there's no indication of this. The more useful debug view (Ctrl+D, which shows raw tool parameters) is completely hidden.
  1. Visual hierarchy buries the command โ€” The actual command/parameters being approved are not the most prominent element. Users are confirming something they can't easily see. (Related: #31967)
  1. Explanation text vs. debug info are two separate toggles with no discoverability โ€” Ctrl+E toggles explanation, Ctrl+D toggles debug. Neither is labeled or documented in the prompt itself.
  1. No keyboard shortcut hints shown โ€” The prompt doesn't show that Y/Enter = confirm, N/Escape = cancel, or that Ctrl+E/Ctrl+D exist.
  1. "Don't ask again" has known persistence bugs โ€” Rules sometimes don't write to settings.json, or saved patterns don't match command variations. (#16735, #29400, #28905, #12796)
  1. "Yes + comment" silently drops the comment โ€” Adding context with approval is lost and never reaches the model. (#29989)

Recommended Improvements

Short-term (low effort, high impact)

  • Show keyboard shortcuts inline in the prompt (e.g., [Y] Confirm [N] Cancel [Ctrl+E] Details)
  • Show the tool name and key parameters prominently before the confirm/cancel buttons, not behind a toggle
  • Rename "View" to something specific like "Show reasoning" or "Details", so users know what they'll see

Medium-term

  • Merge the two toggle views (Ctrl+E explanation + Ctrl+D debug) into a single expandable section with two levels: summary โ†’ full parameters
  • Fix "don't ask again" persistence โ€” ensure rules reliably write to settings.json and match command variations
  • Make "Yes + comment" actually work โ€” route the comment to the model context

Longer-term

  • Add "Always allow globally" option directly in the prompt (currently requires manual settings.json edit). Related: #18699, #32973
  • Emit terminal bell (BEL) when waiting for approval so users notice in background terminals. Related: #36850

Related Issues

  • #31967 โ€” Invert visual hierarchy in Bash permission prompts
  • #32534 โ€” Tool approval prompts have poor readability
  • #29989 โ€” "Yes + comment" comment silently dropped
  • #36850 โ€” Terminal bell when waiting for approval
  • #16735, #29400, #28905 โ€” "Don't ask again" not persisting
  • #12796 โ€” Pattern not matching command variations
  • #18699, #32973 โ€” "Always allow globally" feature request

View original on GitHub โ†—

This issue has 3 comments on GitHub. Read the full discussion on GitHub โ†—