Skip to content

Dialog & Menu Bindings

Keybindings for interactive dialogs, menus, and task management: confirmation dialogs, settings panel, task execution, message actions, model picker, generic select lists, plugins, transcript, help, theme picker, and history search.

Dialog contexts handle user interactions with prompts, settings, and specialized interfaces. Each context has navigation, selection, and mode-specific bindings.

Active when permission, choice, or confirmation dialogs are shown.

KeyActionDescription
yconfirm:yesConfirm “yes” / accept action.
nconfirm:noConfirm “no” / reject action.
enterconfirm:yesConfirm “yes” (alternative).
escapeconfirm:noDismiss dialog / “no”.
KeyActionDescription
upconfirm:previousNavigate to previous option in multi-item dialog.
downconfirm:nextNavigate to next option.
KeyActionDescription
tabconfirm:nextFieldMove to next input field (in dialogs with text input).
shift+tabconfirm:cycleModeCycle dialog mode (e.g., file permission levels: read → write → execute).
spaceconfirm:toggleToggle checkbox or boolean field.
KeyActionDescription
ctrl+econfirm:toggleExplanationShow/hide explanation of requested permission.
ctrl+dpermission:toggleDebugToggle debug info (file path, tool, rule evaluation).

Useful when reviewing file read/write or tool execution permissions.

Active when settings/configuration panel is open (accessed via /settings or menu).

KeyActionDescription
upselect:previousNavigate to previous setting.
downselect:nextNavigate to next setting.
kselect:previousNavigate up (vi-style).
jselect:nextNavigate down (vi-style).
ctrl+pselect:previousNavigate up (readline-style).
ctrl+nselect:nextNavigate down (readline-style).
KeyActionDescription
spaceselect:acceptToggle the selected setting (if boolean).
entersettings:closeSave all changes and close settings.
escapeconfirm:noDiscard changes and close settings.
KeyActionDescription
/settings:searchEnter search mode to filter settings by name/description.
KeyActionDescription
rsettings:retryRetry loading usage data (only active when an error occurred).

Active when a task (bash command, agent execution) is running in the foreground.

KeyActionDescription
ctrl+btask:backgroundMove running task to background. Frees up the prompt.

Note: In tmux sessions, ctrl+b is the tmux prefix key. You must press ctrl+b twice to trigger Claude Code’s background action. First press is captured by tmux; second reaches Claude Code.

Active when viewing the transcript (history of all messages).

KeyActionDescription
escapetranscript:exitClose transcript and return to chat.
ctrl+ctranscript:exitExit transcript.
qtranscript:exitExit transcript (pager convention; like less or tmux copy-mode).
ctrl+etranscript:toggleShowAllToggle showing all messages vs. collapsed view.

The transcript is a modal read-only view with no prompt, so q is free to exit without conflict.

Active when history search is running (after Ctrl+R).

KeyActionDescription
ctrl+rhistorySearch:nextCycle to next search result.
escapehistorySearch:acceptAccept current result and load prompt.
tabhistorySearch:acceptAccept current result (alternative).
enterhistorySearch:executeExecute the selected command (with arguments).
ctrl+chistorySearch:cancelCancel search and return to prompt.

Example: ctrl+r, type “git”, press ctrl+r to cycle results, escape to load, enter to execute, or escape to just load without running.

Generic list/choice component used by /model, /resume, permission prompts, and other select dialogs.

KeyActionDescription
upselect:previousPrevious item.
downselect:nextNext item.
jselect:nextNext item (vi-style).
kselect:previousPrevious item (vi-style).
ctrl+nselect:nextNext item (readline-style).
ctrl+pselect:previousPrevious item (readline-style).
enterselect:acceptSelect highlighted item.
escapeselect:cancelCancel selection.

Used across many dialogs for consistent navigation experience.

Active when the model selection dialog is open (accessed via Meta+P in chat or /model command).

Note: Effort cycling (left/right arrows) is ANT-only (Ant model selector feature).

KeyActionDescription
leftmodelPicker:decreaseEffortDecrease model effort level (ANT models).
rightmodelPicker:increaseEffortIncrease model effort level (ANT models).

Standard navigation (up/down/enter) is inherited from Select context.

Active when theme selection is open.

KeyActionDescription
ctrl+ttheme:toggleSyntaxHighlightingToggle syntax highlighting for code blocks.

Active when the plugin dialog is open (manage, browse, discover plugins).

KeyActionDescription
spaceplugin:toggleEnable/disable selected plugin.
iplugin:installInstall selected plugin.

Navigation (up/down/enter) is inherited from Select context.

Active when help overlay is displayed.

KeyActionDescription
escapehelp:dismissClose help and return to chat.

Active when message action menu is open. Requires: MESSAGE_ACTIONS feature flag.

KeyActionDescription
upmessageActions:prevPrevious action item.
downmessageActions:nextNext action item.
kmessageActions:prevPrevious action (vi-style).
jmessageActions:nextNext action (vi-style).
KeyActionDescription
meta+upmessageActions:topJump to first action.
meta+downmessageActions:bottomJump to last action.
super+upmessageActions:topJump to first action (kitty protocol variant).
super+downmessageActions:bottomJump to last action (kitty protocol variant).

Note: meta = cmd on macOS; super is an alternative for kitty keyboard protocol terminals where both meta and super reach the TTY.

KeyActionDescription
shift+upmessageActions:prevUserJump to previous user message.
shift+downmessageActions:nextUserJump to next user message.

Useful for reviewing conversation flow without stepping through every assistant response.

KeyActionDescription
cmessageActions:cCopy action (varies by action menu).
pmessageActions:pPaste/apply action.
entermessageActions:enterAccept/execute selected action.
escapemessageActions:escapeClose action menu without selecting.
ctrl+cmessageActions:ctrlcForce exit action menu.

Action menu operations vary: c and p may copy, apply, retry, edit, or delete depending on available actions.

{
"Confirmation": {
"y": "confirm:yes",
"n": "confirm:no",
"j": "confirm:next",
"k": "confirm:previous"
}
}
{
"Transcript": {
"q": null
}
}

Now q will not exit the transcript.

{
"HistorySearch": {
"ctrl+r": "historySearch:next",
"ctrl+s": "historySearch:previous"
}
}

Adds forward/backward cycling (if ctrl+s is not blocked by your terminal’s flow control).

  • Dialog layering: Some dialogs stack (e.g., confirmation on top of settings). Top-level keybindings take precedence.
  • Modal behavior: Dialogs block other input; only their context bindings are active.
  • Settings persistence: Changes made in settings are saved to ~/.claude/settings.json upon pressing Enter.
  • Feature gates: MESSAGE_ACTIONS context is only active if the feature is enabled.
  • tmux collision: ctrl+b for background tasks conflicts with tmux’s prefix. In tmux, press it twice: first press triggers tmux; releasing and pressing again sends the second press to Claude Code.

← Back to Keybindings/README.md