Allow customizing chat:cycleMode permission mode list
Status Closed — not planned
Maintainer reply None cached
Workaround ✓ Mentioned in description ↑
Activity 8 comments · opened Mar 9, 2026 · closed Jun 21, 2026
Feature Request
Shift+Tab (chat:cycleMode) currently cycles through only 3 hardcoded permission modes: default → acceptEdits → plan.
The dontAsk mode is excluded from the cycle and can only be set via /config or settings.json. For users who frequently switch between dontAsk and other modes during a session, this is inconvenient.
Proposal
Allow users to customize which modes chat:cycleMode includes, for example in ~/.claude/settings.json:
{
"cycleModes": ["default", "acceptEdits", "dontAsk"]
}
Or alternatively, add a new keybinding action like chat:setMode(dontAsk) that can be bound to a specific key combo in keybindings.json.
Use Case
- Users who work in
dontAskmode most of the time but occasionally want to switch toplanordefaultfor review - The current workaround (opening
/configmenu) breaks flow compared to a quick Shift+Tab toggle
Environment
- Claude Code on macOS (CLI)
- Permission mode:
dontAskset as default in settings.json
Showing cached comments. Read the full discussion on GitHub ↗
7 Comments
Found 3 possible duplicate issues:
This issue will be automatically closed as a duplicate in 3 days.
🤖 Generated with Claude Code
This is not a duplicate of the linked issues. Here's why:
acceptEditsif you never use it). The cycle still only rotates through the hardcoded built-in modes.defaultModesetting not being respected when cycling — a bug/inconsistency in how the cycle interacts with config.This issue (#32604) has a distinct proposal that none of the above cover:
This is fundamentally different from cycle customization — it's about direct mode switching via dedicated shortcuts, bypassing the cycle entirely. For example, binding
Ctrl+1→default,Ctrl+2→dontAsk,Ctrl+3→plan— no cycling needed at all.The configurable
cycleModesarray proposed here also differs from #29961 in that it allows adding modes not in the default cycle (likedontAsk), whereas #29961 only discusses removing modes from the existing set.This appears to be the only open issue representing what's been requested across several closed/locked issues (#8292, #15747, #31448, #35251, #43281). Upvoting to keep it visible.
My specific need is simple: I launch with "defaultMode": "dontAsk" and once I Shift+Tab out of it, I can't cycle back without restarting the session. Just including dontAsk in the default cycle is sufficient for my needs, but I understand why it would be helpful to be able to specify your own cycle + dedicated keyboard shortcuts.
+1 for this. My specific use case: I only ever want to toggle between Plan Mode and Bypass Permissions — I never use
defaultoracceptEditsinteractively. Every Shift+Tab cycle forces me through two modes I don't want, and it's easy to accidentally land on the wrong one.A configurable
cycleModesarray (e.g.["plan", "bypassPermissions"]) insettings.jsonwould fully solve this. Dedicated shortcuts likechat:setMode(plan)would be even better, but the array alone would be a big UX win.+1 on this. My workflow only uses plan and bypassPermissions — cycling through the other three modes on every shift+tab adds friction with no upside. Configurable cycle list would fix it cleanly.
Closing for now — inactive for too long. Please open a new issue if this is still relevant.
Why isn't there any warning before an issue is closed?