Customize keyboard shortcuts changedkeybindings
Nearest release: v2.1.283, published 3 hours before upstream edited the page. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.
Upstream edited this page at 25 Sep 2026 21:48 UTC, give or take a minute or two: the time comes from Anthropic’s own sitemap rather than from a commit. This site recorded the change at 25 Sep 2026 22:07 UTC.
Upstream edited
Recorded here
Lines+16added
Lines−10removed
From line
148
where the diff opens
First seen
14 Aug 2026
this site's first read of the page
Recorded edits25to this page, all time
The whole hunk
from line 148, old and new numbered
/
from line 148
148148
149149Dialogs use `confirm:yes` and `confirm:no` to accept and cancel even when they don't ask a yes-or-no question. If you bind a bare letter such as `y` or `n` in this context, the letter also acts on dialogs that never show it as a key. A dialog that shows `y` and `n` as its keys reads those letters itself and needs no binding.
150150
151In most dialogs, pressing `Ctrl+C` or `Ctrl+D` twice closes the dialog instead of exiting Claude Code. The hint after the first press says whether the second press closes the dialog or exits. Both keys are [reserved](#reserved-shortcuts) and can't be rebound.
152
151153This example binds `y` to `confirm:yes` and `n` to `confirm:no`:
152154
153155```json theme={null}
from line 236
234236| `tabs:next` | Tab, Right | Next tab |
235237| `tabs:previous` | Shift+Tab, Left | Previous tab |
236238
239In a tabbed dialog, `tabs:next` and `tabs:previous` switch tabs while the tab row has focus. In some dialogs, such as `/help` and `/sandbox`, the tab-switching keys also work from inside the tab's content.
240
241`Up` and `Down` move focus between the tab row and the tab's content, and a list in the content responds to keys only while it has focus.
242
237243### Attachments actions
238244
239245Actions available in the `Attachments` context:
from line 255
249255
250256Actions available in the `Footer` context:
251257
252| Action | Default | Description |
253| :---------------------- | :---------------- | :-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
254| `footer:next` | Right | Next footer item |
255| `footer:previous` | Left | Previous footer item |
256| `footer:up` | Up | Navigate up in footer (deselects at top) |
257| `footer:down` | Down | Navigate down in footer |
258| `footer:openSelected` | Enter | Open selected footer item |
259| `footer:clearSelection` | Escape | Clear footer selection |
260| `footer:dismiss` | Backspace, Delete | Dismiss the selected [artifact](/docs/en/artifacts) link from the footer; the published artifact itself is unaffected. On other footer rows, these keys have no effect. Requires v2.1.217 or later |
258| Action | Default | Description |
259| :---------------------- | :-------- | :------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
260| `footer:next` | Right | Next footer item |
261| `footer:previous` | Left | Previous footer item |
262| `footer:up` | Up | Navigate up in footer (deselects at top) |
263| `footer:down` | Down | Navigate down in footer |
264| `footer:openSelected` | Enter | Open selected footer item |
265| `footer:clearSelection` | Escape | Clear footer selection |
266| `footer:dismiss` | (unbound) | Removed in v2.1.281. A `keybindings.json` that still names the action remains valid, and the binding does nothing. Before v2.1.281, Backspace and Delete dismissed the selected artifact link from the footer |
261267
262268While a footer item is selected, such as a row in the agent panel below the prompt, `Enter` opens it even when you rebind `Enter` in the `Chat` context to `chat:queueSubmit` or `chat:newline`.
263269
from line 352
346352| `select:accept` | Enter | Accept selection |
347353| `select:cancel` | Escape | Cancel selection |
348354
349Claude Code applies your `select:pageUp`, `select:pageDown`, `select:first`, and `select:last` bindings in the `/skills` menu. In most other lists, such as the `/model` picker, your `select:first` and `select:last` bindings apply. PageUp and PageDown page through the options in those lists regardless of your bindings.
355In list panels such as `/skills` and `/mcp`, Claude Code applies your `select:pageUp`, `select:pageDown`, `select:first`, and `select:last` bindings. In most other lists, such as the `/model` picker, your `select:first` and `select:last` bindings apply. PageUp and PageDown page through the options in those lists regardless of your bindings.
350356
351357Before v2.1.280, those other lists ignored Home, End, and your `select:first` and `select:last` bindings.
352358
No line in this hunk matches that.