Claude Code keyboard shortcuts

Claude Code spends most of its time waiting for a decision, running a tool, or holding a prompt. These official interactive-mode shortcuts cover interrupts, rewinds, mode changes, multiline input, terminal-style editing, and transcript navigation.

Windows, macOS, Linux · 52 shortcuts

Session control

Stop, background, redraw, and leave a session safely while preserving the work already completed.

ActionWindowsmacOSLinux
Interrupt Claude mid-turnKeeps work completed so far.EscEscEsc
Cancel current input or generationThe first press clears a draft or stops work. A second press exits.CtrlCCtrlCCtrlC
Clear a draft, or open the rewind menu when the prompt is emptyEscEscEscEscEscEsc
Stop background agents and artifact repliesRepeat the sequence to confirm.CtrlXCtrlKCtrlXCtrlKCtrlXCtrlK
Move a running Bash command to the backgroundCtrlBCtrlBCtrlB
Exit the sessionClaude Code asks for confirmation when needed.CtrlDCtrlDCtrlD
Redraw the terminal screenCtrlLCtrlLCtrlL
Toggle the task checklistCtrlTCtrlTCtrlT
Stash or restore the current promptCtrlSCtrlSCtrlS
Suspend Claude Code to the shellUnix shells resume with fg. Claude Code does not list a Windows default for this action.Not documentedCtrlZCtrlZ
Move between dialog tabsRight moves the other way.LeftLeftLeft
Accept an autocomplete suggestion or permission commentTabTabTab
Close a dialog or interrupt the current interactionEscEscEsc

Modes and models

Change permissions, model selection, fast mode, and extended thinking without leaving the prompt.

ActionWindowsmacOSLinux
Cycle permission modesWindows uses Alt+M; macOS and Linux use Shift+Tab.AltMShiftTabShiftTab
Switch models without clearing the promptThe macOS binding needs Option as Meta in some terminals.AltPOptionPAltP
Toggle extended thinkingThis is Alt+T, not Tab. macOS may need Option as Meta.AltTOptionTAltT
Toggle fast modeThe macOS binding may need Option as Meta.AltOOptionOAltO
Enable Vim-style editingRun /vim. Esc enters NORMAL mode and i enters INSERT mode; this is a command, not a default shortcut.Not documentedNot documentedNot documented

Prompt input and history

Move through prompt history, edit text with readline-style controls, and open the editor or transcript.

ActionWindowsmacOSLinux
Move to the previous prompt in historyDown moves forward. In multiline input, arrows move within the draft first.UpUpUp
Open the current prompt in the external editorCtrlGCtrlGCtrlG
Open the transcript viewerCtrlOCtrlOCtrlO
Move to the start of the lineCtrlACtrlACtrlA
Move to the end of the lineCtrlECtrlECtrlE
Move back one wordRequires Option as Meta on macOS.AltBAltBAltB
Move forward one wordRequires Option as Meta on macOS.AltFAltFAltF
Delete from the cursor to the end of the lineCtrlKCtrlKCtrlK
Delete from the cursor to the start of the lineCtrlUCtrlUCtrlU
Delete the previous wordCtrlWCtrlWCtrlW
Delete the next wordRequires Option as Meta on macOS.AltDAltDAltD
Paste the most recently deleted textCtrlYCtrlYCtrlY
Cycle through deleted-text historyPress after Ctrl+Y. Requires Option as Meta on macOS.AltYAltYAltY
Undo the last input editCtrl+Shift+- also works.Ctrl_Ctrl_Ctrl_
Paste an image from the clipboardiTerm2 on macOS also accepts Cmd+V; Windows and WSL use Alt+V for image paste.AltVCtrlVCtrlV

Multiline input

Add a line break without sending the prompt, including the fallback forms that work across terminal emulators.

ActionWindowsmacOSLinux
Insert a line break with backslash then EnterWorks in every terminal.\Enter\Enter\Enter
Insert a line breakCtrlJCtrlJCtrlJ
Insert a line break on macOSOption must be configured as Meta in some terminals.Not documentedOptionEnterNot documented
Insert a line break with Shift+EnterAvailable in terminals configured with /terminal-setup or native Shift+Enter support.ShiftEnterShiftEnterShiftEnter

Prompt prefixes

A leading character changes how an otherwise ordinary prompt is interpreted.

ActionWindowsmacOSLinux
Open slash commands and skillsType it at the start of an empty prompt.///
Run the line as a shell command!!!
Mention a file or other resource@@@
Open an emoji shortcodeAvailable in current Claude Code versions that support emoji shortcodes.:::

Transcript and help

Use the help panel, fullscreen transcript, and voice input controls when the response is already on screen.

ActionWindowsmacOSLinux
Open or navigate the theme pickerCtrlTCtrlTCtrlT
Open shortcut help???
Start or stop voice inputHold or tap Space according to the voice-input state.SpaceSpaceSpace
Open transcript shortcut helpUse inside the transcript viewer.???
Move to the previous user prompt in the transcript{{{
Move to the next user prompt in the transcript}}}
Show the full transcript in the classic viewerCtrlECtrlECtrlE
Write the full conversation to terminal scrollbackAvailable in the fullscreen transcript viewer.[[[
Open the transcript in your editorLowercase v is the current fullscreen-transcript binding.vvv
Close the transcript viewerCtrl+C and Esc also close it.qqq

Make a printable Claude Code sheet