Add runtime keyboard shortcuts for permission mode toggling
Feature Request: Runtime Keyboard Shortcuts & Permission Mode Toggle
Summary
Add support for customizable keyboard shortcuts in Claude Code interactive sessions, starting with the ability to toggle permission modes during runtime (similar to Gemini CLI).
Proposed Feature
Primary Request: Ctrl+Y keyboard shortcut to toggle between permission modes during an active session
Broader Request: General keyboard shortcut customization framework
Use Case
Currently, permission modes (--permission-mode) must be set at session launch and cannot be changed mid-session. A typical workflow would be:
- Start session in safe mode (
default) for cautious exploration - Press Ctrl+Y to enter YOLO mode (
bypassPermissions) for trusted bulk operations - Press Ctrl+Y again to return to safe mode
- Continue working without session restart
Proposed Implementation
1. Runtime Permission Mode Toggle
# During active session:
Ctrl+Y → Toggle between current mode and bypassPermissions
Visual feedback in status line:
[SAFE]- Default permission mode[YOLO]- Bypass permissions mode
2. Keyboard Shortcut Configuration
Add to settings.json:
{
"keyboardShortcuts": {
"Ctrl+Y": {
"action": "togglePermissionMode",
"modes": ["default", "bypassPermissions"]
},
"Ctrl+P": {
"action": "enterPlanMode"
}
// ... other customizable shortcuts
}
}
Benefits
- No session restarts - Seamless workflow transitions
- Safety + Speed - Start cautious, switch to fast when appropriate
- User control - Quick escape from YOLO mode if needed
- Parity with competitors - Gemini CLI offers runtime mode switching
- Extensibility - Framework enables future keyboard shortcuts
Alternative Approaches Considered
- Slash commands (e.g.,
/yolo) - Less ergonomic than hotkeys - Shell aliases - Requires session restart
- Hooks - Cannot change runtime session state
Additional Context
- User migrating from Gemini CLI expects this functionality
- Permission modes:
default,acceptEdits,dontAsk,bypassPermissions,plan - Status line already exists for visual feedback integration
Priority
High - Quality-of-life improvement for power users with clear competitor precedent
---
Submitted on behalf of user via Claude Code automation
This issue has 7 comments on GitHub. Read the full discussion on GitHub ↗