UI/UX: "Bypass permissions" mode should be toggleable via Shift+Tab without requiring the startup flag

Status Closed — not planned
Maintainer reply None cached
Activity 6 comments · opened Aug 21, 2025 · closed Jan 11, 2026

Title: UI/UX: "Bypass permissions" mode should be toggleable via Shift+Tab without requiring the startup flag

Description

Currently, the "bypass permissions" mode is not available in the interactive UI permission mode cycle (toggled via Shift+Tab) unless the claude session is explicitly started with the --dangerously-skip-permissions flag. This is inconsistent with other modes like "accept edits" and "plan mode," which can be toggled on and off from the UI at any time.

This feature request is to allow users to cycle into "bypass permissions" mode during a session, providing a more consistent and flexible user experience.

Steps to Reproduce

Scenario 1: Standard Startup (Current Behavior)

  1. Run claude in your terminal.
  2. Observe the initial prompt.
  3. Press Shift+Tab repeatedly to cycle through the available permission modes.

Actual Result:
The cycle toggles between the default state, "accept edits on," and "plan mode on." The "bypass permissions" option is completely absent from this cycle.

➜  claude
╭───────────────────────────────────────────────────╮
│ ✻ Welcome to Claude Code!                         │
│                                                   │
│   /help for help, /status for your current setup  │
│                                                   │
│   cwd: /Users/user                                │
╰───────────────────────────────────────────────────╯

╭──────────────────────────────────────────────────────────────────────────────────╮
│ > Try "how do I log an error?"                                                   │
╰──────────────────────────────────────────────────────────────────────────────────╯
  ? for shortcuts


<< After pressing Shift+Tab >>

...
╭──────────────────────────────────────────────────────────────────────────────────╮
│ > Try "how do I log an error?"                                                   │
╰──────────────────────────────────────────────────────────────────────────────────╯
  ⏵⏵ accept edits on (shift+tab to cycle)


<< After pressing Shift+Tab again >>

...
╭──────────────────────────────────────────────────────────────────────────────────╮
│ > Try "how do I log an error?"                                                   │
╰──────────────────────────────────────────────────────────────────────────────────╯
  ⏸ plan mode on (shift+tab to cycle)

Scenario 2: Startup with Flag (Illustrates the feature exists)

  1. Run claude --dangerously-skip-permissions in your terminal.
  2. Observe that the session starts in "bypass permissions" mode.
  3. Press Shift+Tab repeatedly.

Actual Result:
The "bypass permissions on" option is now included in the cycle, along with the other modes.

➜ claude --dangerously-skip-permissions
╭───────────────────────────────────────────────────╮
│ ✻ Welcome to Claude Code!                         │
│                                                   │
│   /help for help, /status for your current setup  │
│                                                   │
│   cwd: /Users/user                                │
╰───────────────────────────────────────────────────╯

╭──────────────────────────────────────────────────────────────────────────────╮
│ > Try "fix lint errors"                                                      │
╰──────────────────────────────────────────────────────────────────────────────╯
  ⏵⏵ bypass permissions on (shift+tab to cycle)

Expected Behavior

When starting claude without any special flags, pressing Shift+Tab should cycle through all available permission modes, including "bypass permissions."

The cycle should be:
Default → Accept Edits → Plan Mode → Bypass Permissions → Default

This would allow a user to dynamically enable this mode from within the interactive session, which aligns with the behavior of the other modes.

Rationale

  • Consistency: It makes the UI behavior for all permission modes consistent.
  • User Experience: It's more convenient for users who might decide mid-session that a task is safe and want to bypass permissions without having to exit and restart the entire session.
  • Discoverability: It makes the "bypass permissions" mode more discoverable to users who may not be aware of the --dangerously-skip-permissions flag.

While the "dangerous" nature of the mode is important, the UI could still present a warning the first time a user toggles this mode on in a session, preserving the safety aspect while improving flexibility.

Environment (Please fill in)

  • Claude Code Version: [e.g., 1.0.86]
  • Operating System: macOS

View original on GitHub ↗

6 Comments

github-actions[bot] · 1 year ago

Found 3 possible duplicate issues:

  1. https://github.com/anthropics/claude-code/issues/5343
  2. https://github.com/anthropics/claude-code/issues/2121
  3. https://github.com/anthropics/claude-code/issues/5039

This issue will be automatically closed as a duplicate in 3 days.

  • If your issue is a duplicate, please close it and 👍 the existing issue instead
  • To prevent auto-closure, add a comment or 👎 this comment

🤖 Generated with Claude Code

nvie · 1 year ago

+1, I agree the UX isn't great.

Right now, I find myself always starting with claude --dangerously-skip-permissions, just in case I need to be able to toggle to it later if the work turns out to become more complex later.

After starting, I immediately switch back to default (safe) mode.

I understand the rationale for this behavior, but it would be nice if there were a config setting that would allow you to opt-in to the best of both worlds: safe by default, toggleable to bypassPermissions if needed with Shift+Tab.

github-actions[bot] · 10 months ago

This issue has been inactive for 30 days. If the issue is still occurring, please comment to let us know. Otherwise, this issue will be automatically closed in 30 days for housekeeping purposes.

kaovilai · 10 months ago
github-actions[bot] · 9 months ago

This issue has been automatically closed due to 60 days of inactivity. If you're still experiencing this issue, please open a new issue with updated information.

github-actions[bot] · 9 months ago

This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.