[FEATURE] Customizable permission mode cycle (Shift+Tab) for CLI and VSCode extension

Resolved 💬 3 comments Opened Dec 30, 2025 by AirMile Closed Jan 2, 2026

Preflight Checklist

  • [x] I have searched existing requests and this feature hasn't been requested yet
  • [x] This is a single feature request (not multiple features)

Problem Statement

When using Shift+Tab to cycle through permission modes in both CLI and VSCode extension, all modes are included in the rotation (default, acceptEdits, plan). For users who primarily work with bypassPermissions and plan mode, this creates unnecessary friction. I need to press Shift+Tab multiple times to skip modes I never use, just to reach my desired mode. The current workflow requires me to manually cycle through 2-3 unwanted modes every time I want to switch between bypass and plan mode.

Proposed Solution

I'd like to be able to configure which modes appear in the Shift+Tab cycle:

// .claude/settings.json
{
"permissions": {
"modeCycle": ["bypassPermissions", "plan"]
}
}
For the VSCode extension, this setting should also be available in:

  • VSCode settings (settings.json) under claude-code.permissions.modeCycle
  • Or synced from the project's .claude/settings.json

The interface should show only the configured modes when cycling with Shift+Tab.

Alternative Solutions

Currently I work around this by staying in bypassPermissions mode and pressing Shift+Tab twice to reach plan mode, then twice again to return. I've tried using --permission-mode plan flag to start separate sessions, but this loses conversation context. Other tools solve this by allowing users to configure keyboard shortcuts for specific modes or customize toolbar options

Priority

Medium - Would be very helpful

Feature Category

Configuration and settings

Use Case Example

Example scenario:

  1. I'm working on a React project in VSCode with Claude Code extension
  2. I'm in bypassPermissions mode for rapid development
  3. Before making major architectural changes, I want to switch to plan mode for safe analysis
  4. Currently I press Shift+Tab → lands on acceptEdits (don't need this) → Shift+Tab again → lands on plan
  5. With this feature, I could configure only bypassPermissions and plan in my cycle
  6. This would save time because one Shift+Tab would directly toggle between my two preferred modes

Additional Context

  • This affects both CLI and VSCode extension users
  • The setting could follow the existing pattern of .claude/settings.json configuration
  • Default behavior should remain unchanged for new users (all modes in cycle)
  • Power users in controlled/sandboxed environments would benefit most from this customization

View original on GitHub ↗

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