본문으로 건너뛰기

키보드 단축키

AI 보조

Claude Code 단축키 완벽 가이드: Shift+Tab 모드 전환, Esc+Esc 되감기, Ctrl+S 프롬프트 임시저장, Ctrl+B 백그라운드 작업, Readline 단축키 등

Claude Code의 단축키 체계는 대부분의 사용자가 생각하는 것보다 훨씬 풍부합니다. ?를 누르면 현재 컨텍스트에서 사용 가능한 모든 단축키를 확인할 수 있습니다.

Shift+Tab: 모드 순환 전환

아마도 가장 중요한 단축키입니다. Shift+Tab을 누르면 세 가지 모드를 순환하며 전환할 수 있습니다:

Normal Mode → Auto-Accept Mode → Plan Mode → Normal Mode

/plan이나 /auto-accept를 직접 입력할 필요 없이 키 하나로 해결됩니다. 저의 사용 방식은 새로운 작업을 받으면 두 번 눌러 Plan Mode로 전환하고, 방향을 확인한 후 한 번 더 눌러 Auto-Accept로 전환하여 Claude가 자율적으로 실행하도록 하는 것입니다.

Esc + Esc: 타임머신

Claude Code Esc+Esc 되감기 메뉴
Esc를 두 번 누르면 되감기 메뉴가 나타납니다

Esc를 두 번 연속 누르면 되감기 메뉴(Rewind)가 나타납니다:

Claude Code 복원 옵션
세 가지 복원 방식: 코드와 대화 복원, 대화만 복원, 코드만 복원
  • 코드와 대화 복원: 이전 체크포인트로 돌아가 파일과 대화 기록 모두 롤백됩니다
  • 대화만 복원: 메시지를 롤백하되 현재 코드 변경 사항은 유지합니다
  • 코드만 복원: 파일 수정을 되돌리되 대화 기록은 유지합니다

Claude는 파일을 편집할 때마다 자동으로 체크포인트를 기록합니다. 이는 git checkout .보다 훨씬 세밀한 제어가 가능합니다. 마지막 커밋으로만 돌아가는 것이 아니라 원하는 편집 단계로 돌아갈 수 있기 때문입니다.

단, 주의할 점이 있습니다. Claude가 도구를 통해 직접 편집한 파일만 추적됩니다. 직접 수정한 파일이나 git push 등 외부 작업은 되감기 대상이 아닙니다.

Ctrl+S: 프롬프트 임시저장 (Prompt Stash)

프롬프트를 작성하던 중 다른 작업을 먼저 처리해야 할 때, Ctrl+S를 누르면 현재 입력 내용이 임시저장됩니다:

Claude Code Ctrl+S 프롬프트 임시저장
Ctrl+S를 누르면 프롬프트가 임시저장되고, 다음 메시지 전송 후 자동으로 복원됩니다

그런 다음 다른 명령이나 질문을 입력할 수 있습니다. 해당 메시지를 전송하면 임시저장된 내용이 입력란에 자동으로 복원되어 중단한 곳에서 이어서 작성할 수 있습니다.

git stash의 프롬프트 버전이라고 생각하면 됩니다. 사용 예시: 긴 리팩토링 요구사항을 작성하다가 Claude에게 먼저 특정 파일을 확인해달라고 하고 싶을 때, Ctrl+S로 요구사항 설명을 임시저장하고 파일 관련 질문을 한 뒤 답변을 받으면 요구사항 설명이 자동으로 돌아옵니다.

Ctrl+B: 작업을 백그라운드로 보내기

Claude가 시간이 오래 걸리는 작업(대규모 리팩토링 등)을 처리하고 있는데 다른 작업을 하고 싶다면, Ctrl+B를 눌러 현재 작업을 백그라운드로 보낼 수 있습니다. 터미널이 즉시 새로운 입력을 받을 수 있게 됩니다.

Ctrl+T로 백그라운드 작업 목록을 확인하고, Ctrl+F를 두 번 눌러 모든 백그라운드 에이전트를 종료할 수 있습니다.

tmux 사용자 주의: tmux의 기본 프리픽스 키도 Ctrl+B이므로, Claude의 백그라운드 기능을 사용하려면 두 번 눌러야 합니다.

Ctrl+G: 에디터에서 긴 프롬프트 작성하기

Claude에게 상세한 지시를 내려야 하는데 터미널에서 타이핑하기 불편할 때가 있습니다. Ctrl+G를 누르면 시스템 기본 $EDITOR(VS Code, Vim 등)가 열리고, 거기서 프롬프트를 작성한 후 저장하고 닫으면 자동으로 Claude에 전송됩니다.

기본 에디터를 변경하려면 셸 설정 파일(~/.zshrc 또는 ~/.bashrc)에서 설정합니다:

# VS Code
export EDITOR="code --wait"

# Zed
export EDITOR="zed --wait"

# Vim
export EDITOR="vim"

--wait 매개변수가 중요합니다. 파일을 닫을 때까지 에디터가 대기하도록 지시하는 것으로, 이것이 없으면 Claude가 빈 내용을 즉시 받게 됩니다. Vim 같은 터미널 에디터는 기본적으로 블로킹 동작이므로 이 매개변수가 필요 없습니다.

여러 단락에 걸친 요구사항 설명이나 대량의 참고 자료를 붙여넣을 때 특히 유용합니다. Plan Mode에서는 Ctrl+G를 사용하여 Claude가 생성한 계획을 에디터에서 직접 편집할 수도 있습니다.

Cmd+T: 확장 사고 전환

기본 단축키는 Cmd+T(Windows/Linux에서는 Meta+T)이며, 확장 사고(Extended Thinking) 모드를 켜고 끕니다. 활성화하면 Claude가 응답하기 전에 더 깊이 추론하므로 복잡한 아키텍처 결정이나 까다로운 버그 추적에 적합합니다.

주의할 점은 대부분의 터미널(iTerm2, Terminal.app, Warp 등)이 Cmd+T를 '새 탭'으로 가로채기 때문에 실제로 이 단축키가 작동하지 않는 경우가 많다는 것입니다. 해결 방법은 두 가지입니다: /keybindings로 충돌하지 않는 키에 재할당하거나, /effort 명령으로 사고 깊이를 전환하는 것입니다(동일한 효과이며 레벨을 세밀하게 제어할 수도 있습니다).

Readline 단축키

Claude Code의 입력란은 표준 Readline 단축키를 지원하며, 터미널에 익숙한 분들이라면 바로 사용할 수 있습니다:

단축키기능
Ctrl+A줄 시작으로 이동
Ctrl+E줄 끝으로 이동
Ctrl+W이전 단어 삭제
Ctrl+U줄 시작까지 삭제
Ctrl+K줄 끝까지 삭제
Ctrl+Y마지막으로 삭제한 텍스트 붙여넣기
Alt+Y삭제 기록 순환
Option+Left/Right단어 단위 이동 (Mac)

승인 단축키: y/n/d/e

Claude가 파일 변경을 제안하고 확인을 기다릴 때, 네 개의 단일 키 단축키로 흐름을 제어합니다:

  • y: 수락
  • n: 거부
  • d: 전체 diff 보기
  • e: 편집 후 수락

e는 가장 간과되지만 가장 유용한 단축키입니다. Claude의 변경 사항을 미세 조정한 후 적용할 수 있습니다. 몇 줄의 코드가 마음에 들지 않더라도 거부하고 다시 시작할 필요 없이 e를 눌러 수정하면 됩니다.

빠른 참조

단축키기능
Shift+Tab모드 전환: Normal → Auto-Accept → Plan
Esc+Esc되감기 메뉴 열기
Ctrl+S현재 입력 임시저장, 다음 전송 후 자동 복원
Ctrl+B현재 작업을 백그라운드로 보내기
Ctrl+T백그라운드 작업 목록 보기
Ctrl+F (x2)모든 백그라운드 에이전트 종료
Ctrl+G외부 에디터에서 프롬프트 작성
Ctrl+O상세 도구 출력 보기 전환
Cmd+T확장 사고 전환 (터미널에 가로채일 수 있음. 재할당 또는 /effort 사용 권장)
\ + Enter여러 줄 입력 (설정 불필요)
Shift+Enter여러 줄 입력 (/terminal-setup 먼저 실행 필요)
Up / Down입력 기록 탐색
Ctrl+R명령 기록 검색
Ctrl+L화면 지우기 (기록 유지)
Ctrl+C현재 생성 취소
Ctrl+DClaude Code 종료
?사용 가능한 모든 단축키 표시

사용자 정의 키바인딩

기본 단축키가 맞지 않으면 /keybindings~/.claude/keybindings.json을 열어 사용자 정의할 수 있습니다. 변경 사항은 즉시 적용되며 재시작할 필요가 없습니다.

조합 키 구문(예: ctrl+shift+c)과 코드 모드(예: ctrl+k ctrl+s -- Ctrl+K를 누르고 놓은 후 Ctrl+S를 누름)를 지원합니다. 16가지 바인딩 컨텍스트(Chat, Autocomplete, Confirmation, DiffDialog 등)가 있으며, 각 컨텍스트에 서로 다른 동작을 할당할 수 있습니다.

댓글

목차

키보드 단축키 | Yu의 사이버 데스크