본문 바로가기
claudecode.to
문서 목록
핵심 개념

/rewind 로 대화와 코드 되감기

/rewind 는 Claude Code 대화를 과거 체크포인트로 되돌리는 커맨드입니다. Esc 두 번 단축키, 세 가지 복원 방식, 되감기 한계와 /clear·/compact 와의 차이를 정리합니다.

12분2026-08-22 갱신

/rewind 는 Claude Code와의 대화를 과거의 특정 지점까지 되감는 커맨드입니다. "아까가 더 나았는데", "Claude가 이상한 방향으로 가버렸다"고 느낀 순간, 처음부터 다시 시작하지 않고 원하는 지점으로 돌아가 다른 접근을 시도할 수 있습니다.

핵심 요약

  • /rewind 또는 빈 입력란에서 Esc 키를 간격 없이 2번 누르면 되감기 메뉴가 열립니다.
  • 복원 방법은 3가지이며, 기본값인 Restore code and conversation 을 고르는 것이 안전합니다.
  • bash 명령이나 수동 편집은 추적되지 않고, 체크포인트는 30일 뒤 자동 삭제됩니다.
  • 되감을 수 있는 범위는 현재 세션 안, /compact 로 압축되지 않은 부분까지입니다.
  • 되감은 뒤 새 지시를 내리면 원래 흐름과는 다른 분기로 진행됩니다.

체크포인트는 무엇을 기록하나

체크포인트는 Claude Code가 수행한 파일 편집을 자동으로 기록하는 기능입니다. 타임머신 같은 것이라고 생각하면 이해하기 쉽습니다.

모든 프롬프트 입력이 자동으로 체크포인트로 저장됩니다. 그래서 문제가 생겼을 때 과거 상태로 돌아갈 수 있습니다. 실무에서는 다음 같은 장면에서 도움이 됩니다.

  • 다른 구현 방법을 시험하고 싶을 때 — 이전 상태가 남아 있으니 안심하고 실험할 수 있습니다.
  • AI가 예상 밖의 변경을 해버렸을 때 — 바로 되돌려 피해를 최소화합니다.
  • 여러 접근을 비교하고 싶을 때 — 각각의 결과를 확인한 뒤 더 나은 쪽을 고릅니다.

/rewind 는 어떻게 쓰나

/rewind 를 실행하면 되돌아갈 수 있는 지점 목록이 표시됩니다.

세션 시작 직후처럼 아직 아무것도 변경하지 않은 상태에서는 돌아갈 지점이 없다는 안내만 나옵니다.

 Rewind
 Nothing to rewind to yet.
 Esc to exit

파일 편집을 부탁한 뒤 실행하면 체크포인트 목록이 나타납니다. 각 항목에는 그때 보낸 프롬프트와 바뀐 파일, 증감 줄 수가 표시됩니다.

 Rewind
 Restore the code and/or conversation to the point before…
   hello.txt 에 hoge 라고 추가해 주세요
   hello.txt +1 -0
   fuga 를 추가해줘
   hello.txt +1 -0
   nyanko 라고 추가해줘
   hello.txt +2 -1
 ❯ (current)
 Enter to continue · Esc to exit

화살표 키로 돌아가고 싶은 지점으로 이동하고 Enter 를 누르면 확인 화면으로 넘어갑니다. "3개 전 상태로 되돌리고 싶다" 같은 조작도 목록에서 고르기만 하면 됩니다.

단축키 — Esc 를 2번 연속 누르기

커맨드를 치는 게 번거로울 때는 Esc 키를 2번 연속 누르는 방법을 추천합니다.

프롬프트 입력란이 빈 상태에서 Esc 키를 간격 없이 재빨리 2번 누르면 같은 /rewind 메뉴가 열립니다. 0.3초 정도만 간격이 벌어져도 실행되지 않고 통상적인 입력 상태로 돌아가니 주의하세요.

입력란에 글자가 남아 있으면 첫 번째 Esc 는 그 초안을 지우는 데 쓰입니다. 초안이 있는 상태에서 2번 눌러도 메뉴가 열리지 않으니, 입력란이 빈 걸 확인한 뒤 다시 누르세요.

Esc 2번과 /rewind 커맨드는 같은 메뉴를 여는 두 입구입니다. 빠르게 열고 싶을 땐 단축키, 확실히 호출하고 싶을 땐 커맨드를 쓰면 됩니다.

어디까지 돌아갈 수 있나

"어디까지든 돌아갈 수 있다"고 생각하면 곤란한 장면이 생깁니다. 되감을 수 있는 범위는 아래 두 조건을 모두 만족하는 구간입니다.

  • 현재 세션 안의 지점
  • /compact 로 압축되지 않은 부분

/compact 로 요약된 부분은 원래 상태로 돌아갈 수 없습니다. "여긴 중요한 체크포인트다" 싶은 장면이 있다면 /compact 를 실행하기 전에 필요한 주고받기가 끝났는지 확인해 두세요.

한편 /clear 를 실행한 뒤의 대화는 복원할 수 있습니다. 같은 Claude Code 프로세스 안이라면 /rewind 메뉴 맨 위에 /resume <session-id> (previous session) 항목이 표시되고, 선택하면 /clear 이전 대화를 재개할 수 있습니다(v2.1.191 이후. 그 이전 버전에서는 /resume 커맨드에서 해당 세션을 고릅니다). 이 항목은 Claude Code를 종료하거나 다른 세션으로 /resume 할 때까지 이용할 수 있습니다.

세 가지 복원 방법은 무엇이 다른가

지점을 고르면 확인 화면에서 복원 방법을 선택합니다.

 Confirm you want to restore to the point before you sent this message:
 │ hello.txt 에 World 라고 써 주세요
 │ (2m ago)

 The conversation will be forked.
 The code will be restored +1 -1 in hello.txt.

 ❯ 1. Restore code and conversation
   2. Restore conversation
   3. Restore code

 ⚠ Rewinding does not affect files edited manually or via bash.
복원 방법Claude Code의 인식실제 파일알맞은 상황
Restore code and conversation (기본)선택한 시점까지선택한 시점 상태프롬프트를 수정해 다시 실행할 때
Restore conversation선택한 시점까지변경된 채 유지일부 변경만 남기고 대화만 되감을 때
Restore code대화 이력 유지선택한 시점 상태판단 과정을 되짚으며 코드만 되돌릴 때

Restore code and conversation 은 파일 내용과 대화 이력이 모두 선택한 시점으로 돌아갑니다. 양쪽이 일치하니 가장 이해하기 쉽고, 특별한 사정이 없으면 이것을 고르는 것이 좋습니다.

Restore conversation 은 대화만 되감고 코드 변경은 그대로 둡니다. Claude Code가 여러 파일을 편집했는데 일부만 남기고 싶을 때, 대화를 되감은 뒤 불필요한 변경을 수동으로 되돌리는 식으로 씁니다. 다만 Claude Code의 인식과 파일 상태가 어긋나므로 다음 지시 때 예기치 않은 동작이 나올 수 있습니다.

Restore code 는 코드만 되돌리고 대화 이력은 남깁니다. 변경은 마음에 안 들었지만 어디서 판단을 그르쳤는지 되짚어 보고 싶을 때 유용합니다. 이 경우에도 인식과 파일 상태가 어긋나니, 다음 지시에서 "방금 변경을 되감았다"는 사실을 명시적으로 알려 줘야 합니다.

어떤 장면에서 효과적인가

제안이 기대와 다를 때. 리팩터링 방향이 어긋났다면 다음 순서로 바로잡습니다.

  1. Claude에게 리팩터링을 부탁합니다.
  2. 결과가 생각한 것과 다릅니다.
  3. Esc 2번(또는 /rewind)으로 되돌아갑니다.
  4. "함수를 분할하지 말고 네이밍을 개선해줘"처럼 다시 지시합니다.

잘못된 지시를 내렸을 때. 의도와 다른 지시를 보냈다면 Claude가 작업을 진행하기 전 상태로 돌아가 올바른 지시를 다시 낼 수 있습니다. 지시 실수를 만회할 수 있다는 점이 든든합니다.

실험적인 변경을 시험할 때. "이 설계로 바꿔 볼까?" 같은 대담한 변경도 실패하면 바로 되돌릴 수 있으니 부담 없이 도전할 수 있습니다. 대화도 함께 되감기므로 컨텍스트가 더러워질 걱정이 없습니다.

여러 구현을 비교할 때. 첫 번째 구현을 시험한 뒤 체크포인트로 돌아가 두 번째 구현을 시험하고 결과를 비교합니다. 다만 Restore code and conversation 을 고르면 첫 번째 구현도 리셋되므로, 남겨 두고 싶다면 Git stash 로 대피시켜 둡니다.

# 첫 번째 구현을 대피
git stash

# /rewind 로 돌아가 두 번째 구현을 시험

# 비교 후 필요에 따라 stash 를 적용
git stash pop

여러 구현을 병렬로 시험하고 싶다면 Git worktree 를 활용하는 방법도 있습니다.

되감기가 추적하지 못하는 변경은 무엇인가

체크포인트는 Claude Code의 파일 편집 도구(Read/Write/Edit)로 바꾼 내용만 기록합니다. 다음 변경은 되감기 대상 밖입니다.

  • Claude Code가 bash 명령으로 바꾼 파일 — rm file.txt, mv old.txt new.txt, cp source.txt dest.txt 같은 조작
  • 에디터로 직접 고친 파일 — Cursor 와 Claude Code를 병행해 쓰면서 Cursor 에서 편집한 내용도 기록되지 않습니다

다만 Claude Code가 같은 파일을 다시 편집하면 그 시점의 상태는 기록됩니다. 되감기 기능을 제대로 활용하려면 파일 편집은 Claude Code에 지시해서 하는 편이 좋습니다.

또 체크포인트는 영구적이지 않고 30일 뒤 자동 삭제됩니다. 장기적인 버전 관리는 Git 에 맡기고, 체크포인트는 세션 안에서의 빠른 복원을 위한 보조 수단으로 생각하세요.

되감은 뒤 원래 흐름으로 돌아갈 수 있나

결론부터 말하면 원래 미래로는 돌아갈 수 없습니다. 한번 되감은 뒤 새 지시를 내리면 거기서부터 다른 분기로 대화가 진행됩니다.

A → B → C → D (원래 흐름)
        ↓
        C' (/rewind 로 돌아가서 다른 지시) → D' (새 흐름)

Git 의 브랜치와 비슷한 구조입니다. 과거 상태에서 새 분기를 만든다고 생각하면 이해하기 쉽습니다.

/rewind·/clear·/compact 는 어떻게 가려 쓰나

커맨드동작용도
/rewind과거 지점으로 되감기다른 접근을 시험하고 싶을 때
/clear대화 이력을 완전 리셋작업을 완전히 전환할 때
/compact대화를 요약해 압축문맥을 유지하며 토큰을 절약할 때

/rewind시행착오, /clear리셋, /compact정리를 위한 커맨드입니다. "아직 시행착오 중이라 언제든 되감고 싶다"면 /rewind 로 돌아갈 수 있는 상태를 유지하고, "문맥을 압축해 토큰을 절약하고 싶다"면 /compact 를 쓰는 식으로 나누면 효과적입니다.

컨텍스트 관리의 전체 그림은 컨텍스트 윈도우 관리에서, 세션을 다시 여는 방법은 세션 관리에서 다룹니다.

정리

  • /rewind 또는 빈 입력란에서 Esc 2번으로 대화를 과거 체크포인트로 되감을 수 있습니다.
  • 복원 방법은 3가지이며, 기본값인 Restore code and conversation 이 가장 안전합니다.
  • bash 명령과 수동 편집은 추적되지 않고, 체크포인트는 30일 뒤 사라지므로 장기 보관은 Git 에 맡깁니다.
  • 되감기 범위는 현재 세션 안, /compact 이후 구간까지이며, 되감은 뒤에는 새 분기로 진행됩니다.
  • 그 밖의 일상 커맨드는 기본 조작과 명령어를 참고하세요.

자주 묻는 질문

rewind체크포인트되감기기본 조작

팀에 Claude Code를 도입하려면 실제 코드베이스에 맞춘 설계가 필요합니다.

무료 상담 신청