TIL/Claude Code

[TIL][Claude Code] Claude Code 초기 세팅 #3 - 숨겨진 단축키와 기능

아람2 2026. 2. 18. 22:00
반응형

이전 글 

https://helloahram.tistory.com/273

https://helloahram.tistory.com/274

 

이번엔 공식 문서 뒤져보면서 찾은 숨겨진 기능들 을 정리한다


1. Esc + Esc - 코드까지 되돌리기 (Rewind)

Claude 가 코드를 잘못된 방향으로 수정했다

보통은 Ctrl+C 로 멈추고 "아니 그거 말고..." 하는데

Esc 두 번 누르면 선택한 시점으로 코드까지 원래대로 돌아간다

Esc + Esc
  ↓
타임라인에서 되돌릴 지점 선택
  ↓
옵션 선택:
  - "Resume from here" → 대화만 되돌림
  - "Restore code" → 파일 변경도 되돌림  ← 이게 핵심

/clear 는 대화만 지운다

Rewind 는 코드 변경까지 되돌린다

Claude 가 10개 파일 수정하다가 망했을 때 이거 모르면 수동으로 git checkout . 해야 된다


2. ! - Claude 안 거치고 바로 실행

프롬프트 맨 앞에 ! 붙이면 Claude 한테 안 물어보고 바로 셸에서 실행한다

# Claude 한테 시키기 (토큰 소모)
> git status 확인해줘

# 직접 실행 (토큰 0)
> !git status
> !pytest tests/ -v --tb=short
> !cat .env

간단한 명령 확인할 때 Claude 한테 시키면 토큰 아깝다

! 하나로 바로 실행하고 결과 보는 게 낫다


3. Option+P - 모델 즉석 전환

11편에서 /model 명령어로 전환하는 건 다뤘는데

대화 중에 Option+P (Mac) 누르면 바로 모델 바꿀 수 있다

Option+P (Mac) / Alt+P (Windows/Linux)
  ↓
Opus / Sonnet / Haiku 선택

활용법:

1. Opus 로 아키텍처 설계
2. Option+P → Sonnet 으로 전환
3. 설계대로 코드 작성 (토큰 절약)
4. 버그 발생 → Option+P → Opus 로 전환
5. 복잡한 디버깅

Opus 로 전부 하면 토큰이 순식간에 녹는다

간단한 건 Sonnet 이나 Haiku 로 돌리는 습관을 들이면 좋다


4. Shift+Tab 은 4단계다

10편에서 Plan ↔ Act 전환이라고 썼는데

사실 4단계

Shift+Tab 누를 때마다 순환:

Normal → Auto-Accept Edits → Auto-Accept All → Plan Mode
  ↓              ↓                    ↓              ↓
매번 승인     Edit/Write 자동      Bash까지 전부    읽기만 가능
             (파일 수정 자동)      (YOLO 모드)     (계획만 세움)

Auto-Accept Edits 가 제일 유용하다

파일 수정은 자동으로 승인하되 Bash 명령은 물어본다

테스트 코드 쭉 작성할 때 매번 "허용하시겠습니까?" 안 눌러도 된다


5. /compact 에 포커스 옵션이 있다

10편에서 /compact 소개했는데 포커스 기능은 안 다뤘다

# 기본: 전체 대화 압축
/compact

# 포커스: 특정 주제만 보존하고 나머지 압축
/compact locator 수정 작업에 집중해
/compact protein 테스트 디버깅 내용 유지해

긴 대화에서 "아까 말한 거 뭐였지?" 할 때

관련 없는 부분을 날리고 중요한 부분만 남길 수 있다


6. Ctrl+R - 이전 프롬프트 재사용

이전에 입력했던 프롬프트를 검색해서 다시 쓸 수 있다

Ctrl+R → 검색어 입력 → 매칭되는 이전 프롬프트 표시

예:
Ctrl+R → "pytest" → 이전에 썼던 pytest 관련 프롬프트 찾기
Tab → 수정해서 실행
Enter → 바로 실행

비슷한 테스트 반복할 때 매번 타이핑 안 해도 된다


7. /fast - Opus 2.5배 빠른 출력

/fast    # 토글 On/Off

같은 Opus 모델인데 출력이 2.5배 빠르다

다만 비용이 더 든다

"빨리 끝내야 하는데" 싶을 때 켜고 끝나면 끄는 식으로 쓰면 된다


8. Ctrl+G - 프롬프트를 에디터에서 편집

긴 프롬프트 작성할 때 CLI 한 줄에서 치기 불편하다

Ctrl+G 누르면 vim 이나 기본 에디터가 열린다

거기서 여러 줄 편하게 쓰고 저장하면 Claude 에 전달된다


9. Ctrl+V - 스크린샷 붙여넣기

클립보드에 이미지 복사한 상태에서 Ctrl+V 하면 Claude 에 이미지가 전달된다

이거 엄청 편한데, 모르는 사람이 은근 많아서 놀랬다

1. 브라우저에서 스크린샷 찍기 (Cmd+Shift+4 등)
2. Claude Code 터미널로 이동
3. Ctrl+V (또는 Cmd+V)
4. "이 에러 화면 분석해줘"

에러 화면 캡처해서 바로 물어볼 수 있다

텍스트로 에러 설명하는 것보다 100배 빠르다


10. --fork-session - 세션 분기

실험적인 변경을 해보고 싶은데 현재 세션 망치기 싫을 때

# 현재 세션에서 분기
claude --continue --fork-session

# 분기된 세션에서 실험
> 이 방식으로 리팩토링해보자

# 결과가 별로면? 원본 세션으로 돌아가면 됨
claude --resume 원본-세션-이름

Git 브랜치처럼 세션을 분기하는 거다

원본은 그대로 보존된다


11. --from-pr - PR 이어서 작업

# PR 번호로 세션 시작
claude --from-pr 123

# PR URL 도 됨
claude --from-pr "https://github.com/org/repo/pull/123"

# 결과만 출력 (비대화)
claude --from-pr 123 -p

PR 올리고 리뷰 받고 수정할 때

PR 맥락을 Claude 가 알고 있는 상태에서 시작할 수 있다


12. SessionStart Hook

11편에서 PreToolUse, PostToolUse Hook 다뤘는데

SessionStart 는 안 다뤘다

세션을 시작할 때마다 자동으로 실행되는 Hook 이다

{
  "hooks": {
    "SessionStart": [
      {
        "matcher": "startup|resume|clear",
        "hooks": [
          {
            "type": "command",
            "command": "\"$CLAUDE_PROJECT_DIR\"/.claude/hooks/session-start-reminder.sh"
          }
        ]
      }
    ]
  }
}

나는 이걸로 세션 시작할 때마다 이슈 목록 알림을 띄운다

매번 "이슈 목록 확인해" 안 해도 자동으로 알려줌


13. Hook 에 prompt, agent 타입이 있다

11편에서 Hook 은 "type": "command" (셸 스크립트) 만 다뤘는데

사실 3가지 타입이 있다

타입 설명 용도
command 셸 스크립트 실행 포맷팅, 파일 체크
prompt LLM 에 한 번 물어보기 코드 검증, 규칙 준수 확인
agent 도구 접근 가능한 서브에이전트 테스트 자동 실행
{
  "hooks": {
    "Stop": [
      {
        "hooks": [
          {
            "type": "prompt",
            "prompt": "방금 수정한 코드가 POM 패턴을 준수하는지 확인해",
            "model": "claude-haiku-4-5-20251001"
          }
        ]
      }
    ]
  }
}

Claude 가 작업 끝낼 때마다 Haiku 가 자동으로 코드 검증하는 거다

Haiku 라서 비용도 거의 안 든다


14. /statusline - 상태바 커스터마이징

터미널 하단에 상태바를 띄울 수 있다

/statusline

표시 가능한 정보:

  • 컨텍스트 윈도우 사용량 (컬러 바)
  • 현재 비용
  • Git 상태
  • 세션 시간
  • 모델 정보

컨텍스트가 얼마나 남았는지 실시간으로 보인다

/context 매번 치는 것보다 편하다


15. /terminal-setup - Shift+Enter 설정

멀티라인 입력할 때 \ + Enter 치고 있으면

/terminal-setup

이거 한 번 실행하면 Shift+Enter 로 줄바꿈할 수 있게 된다

iTerm2, WezTerm, Ghostty 에서 동작한다


📋 단축키 모음

많이 쓰는 것

동작 이미 알고 있었나
Esc + Esc 코드까지 되돌리기 ?
!명령어 Claude 안 거치고 바로 실행 ?
Option+P 모델 즉석 전환 ?
Shift+Tab 권한 모드 4단계 순환 ?
Ctrl+R 이전 프롬프트 재사용 ?
Ctrl+V 스크린샷 붙여넣기 ?
/fast 빠른 출력 모드 ?

가끔 쓰는 것

동작
Ctrl+G 외부 에디터에서 프롬프트 편집
Ctrl+B 현재 작업 백그라운드로
Ctrl+O 상세 출력 토글 (verbose)
Ctrl+L 터미널 화면 클리어

CLI 옵션

옵션 동작
--fork-session 세션 분기 (원본 보존)
--from-pr 123 PR 연결 세션
-c 최근 세션 이어하기

🎯 결론

원래 Claude.md, @, 사진 첨부만 쓰려고 했는데 쓰다 보니 글이 많아졌다
많이 알고 쓰면 유용한 Claude Code 잘 알고 잘 쓰자!

반응형