github / github/copilot-cli

Feature Request: Support user-configurable keybindings via keybindings.json

未关闭
#2,259 0 条评论 6 个 reaction 已指派 0 人 在 GitHub 查看
area:input-keyboard
主要语言
Shell
星标
11.2k
派生
1.9k
平均合并
14 小时 16 分钟
30 天内合并 PR
6

描述

### Describe the feature or problem you'd like to solve

All keybindings in Copilot CLI are currently fixed and cannot be customized. This creates friction for users whose terminal/shell already uses some of the default shortcuts, and limits flexibility for different keyboard layouts and personal workflows.

Claude Code (Anthropic's competing CLI) recently shipped a `keybinds.json` config file that lets users remap keyboard shortcuts. Having a similar feature in Copilot CLI would close this gap and give users more control over their UX.

### Proposed solution

Following the existing pattern of user-level config files (e.g. `~/.copilot/lsp-config.json`), add support for a `~/.copilot/keybindings.json` file that allows remapping built-in actions to custom key combinations.

Example:

```json
{
"keybindings": [
{ "action": "clearScreen", "key": "ctrl+l" },
{ "action": "cycleMode", "key": "ctrl+m" },
{ "action": "cancelOperation", "key": "ctrl+c" }
]
}
```

A repo-level override at `.github/keybindings.json` could also be considered, consistent with how instructions files work.

### Example prompts or workflows

- A user whose terminal multiplexer captures `ctrl+k` wants to remap the "delete to end of line" action to a different chord.
- A user on a non-US keyboard layout needs to remap actions that conflict with accented character input.
- A power user wants shortcuts that match their muscle memory from another tool (e.g. VS Code, Emacs, Vim).

### Additional context

Reference: Anthropic added `keybinds.json` support to Claude Code CLI, allowing users to define custom keyboard shortcuts.

贡献指南

打开贡献指南

评估

这个 Issue 还没有评估数据。

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。