Skip to content

Customizable keybindings #21294

@scidomino

Description

@scidomino

Create a system for allowing user to customize their keybindings.

To preserve the technical context from the investigation in #14425, here are the key requirements and architectural constraints identified for this refactor:

1. Shift from Wildcard to Explicit Matching

The current system uses wildcard matching (e.g., binding ctrl+f also captures ctrl+shift+f). To support reliable user overrides, we must refactor to an explicit matching system where modifiers must match exactly unless explicitly ignored.

2. VS Code Schema Alignment

For interoperability, the new configuration schema should align with VS Code's Keyboard Rules. This will make it intuitive for developers to port their existing mental models/configs.

3. Modifier Key Constraints

Allow mac users to use alt+letter combos (which macOS usually turns into a special character).

4. Context-Aware UI Hints

The UI (ToolMessage, ShellToolMessage, etc.) will need to be updated to dynamically display the active/preferred keybinding based on the user's custom config and detected OS.

Metadata

Metadata

Assignees

Labels

area/coreIssues related to User Interface, OS Support, Core Functionalitypriority/p1Important and should be addressed in the near term.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions