CATEGORY

카테고리 (672)
AI (70)
Language & Specs (260)
FrameWork (36)
Library (20)
App (41)
Git (10)
Build & Dependency (2)
AWS (15)
DataBase (45)
OS (33)
Tool (17)
IT (120)
SEEMINGLY ONLINE

Seemingly
Online

이모저모 방방곡곡 두루두루 개발지식 저장소

RECENT POSTS

AI/Claude

클로드 코드 세션 이어서 하기 — continue와 resume 차이

반응형

클로드 코드(Claude Code)에서 이전 대화를 이어서 하려면 방법은 두 가지입니다. claude --continue(현재 폴더에서 가장 최근 대화를 바로 이어받기)와 claude --resume(세션 목록에서 골라서 이어받기)입니다. 짧게는 claude -c, claude -r로도 씁니다. 아래는 두 명령의 차이와, ID·이름으로 특정 세션을 집어서 여는 법, 세션이 어디에 저장되는지까지 정리한 내용입니다. (클로드 코드 2.1.202 기준, 2026년 7월 27일 확인)

가장 최근 대화 이어서 — claude --continue (-c)

실수로 터미널을 닫았거나 자리를 비운 뒤 다시 왔을 때, 방금 하던 대화를 그대로 이어받는 가장 빠른 방법입니다. 작업하던 폴더에서 그냥 이렇게 칩니다.

# 현재 폴더의 가장 최근 대화를 바로 이어받기
claude --continue
# 짧게
claude -c

공식 문서 설명 그대로 "현재 디렉토리의 가장 최근 대화를 불러온다"입니다. 즉 어느 폴더에서 실행하느냐가 중요합니다. A 프로젝트 폴더에서 -c를 치면 A에서 하던 대화가, B 폴더에서 치면 B의 대화가 열립니다. 고를 필요 없이 "마지막 것"이 필요할 때 쓰세요.

💡 스크립트나 CI에서 이어받을 때는 -p(print 모드)와 함께 claude -c -p "다음 할 일"처럼 씁니다. 사람이 붙지 않아도 이전 맥락 위에서 한 번 더 돌릴 수 있습니다.

골라서 이어서 — claude --resume (-r)

여러 대화를 오가며 작업했다면 "가장 최근"이 아니라 특정 대화를 집어야 합니다. 그럴 때 --resume입니다. 값 없이 실행하면 세션 목록(선택창)이 뜨고, 방향키로 골라 엽니다.

# 세션 목록에서 골라서 이어받기 (인터랙티브 선택창)
claude --resume
claude -r

# 세션 ID나 이름을 직접 지정해서 열기
claude -r "auth-refactor"

# 이어받으면서 바로 질문까지 넣기
claude -r "<세션ID>" "여기서부터 이어서 리팩터링하자"

선택창은 이름 검색어를 넣어 좁힐 수도 있습니다. 세션에 이름을 붙여두면(claude -n "이름") 목록에서 알아보기 쉽습니다. 인터랙티브 세션 안에서는 슬래시 명령 /resume으로도 같은 선택창을 열 수 있습니다.

-c vs -r 한눈에 비교

명령 하는 일 언제
claude -c 현재 폴더의 가장 최근 대화 이어받기 방금 하던 것 그대로
claude -r 목록에서 골라서, 또는 ID·이름으로 지정 여러 대화 중 특정 것
claude -r "<id>" "질문" 그 세션을 열면서 바로 프롬프트 실행 스크립트·자동화

이어받되 원본은 건드리지 않기 — --fork-session

이전 대화를 밑바탕으로 다른 방향을 시험해 보고 싶은데 원래 세션은 그대로 두고 싶다면 --fork-session을 붙입니다. 이어받는 순간 새 세션 ID로 갈라져, 실험이 원래 대화 기록을 덮어쓰지 않습니다.

# 최근 대화를 이어받되, 새 세션으로 분기해서 실험
claude -c --fork-session

# 특정 세션을 분기
claude -r "<세션ID>" --fork-session

이 밖에 세션을 다룰 때 쓰는 옵션 몇 가지입니다.

  • --session-id <uuid> : 세션에 쓸 ID를 직접 지정합니다.
  • -n, --name <이름> : 세션에 표시 이름을 붙입니다. /resume 선택창에서 이 이름이 보입니다.
  • --no-session-persistence : 세션 저장을 끕니다(기록을 남기고 싶지 않을 때 · --print 모드에서만 동작).

세션은 어디에 저장될까

클로드 코드는 대화를 프로젝트 폴더별로 저장합니다. 저장 위치는 홈 아래 ~/.claude/projects/이고, 그 안에 작업 폴더 경로를 하이픈으로 바꾼 폴더가 하나씩 생기며, 세션마다 <세션ID>.jsonl 파일 하나가 만들어집니다.

~/.claude/projects/
└─ -Users-name-work-myproject/          # 작업 폴더 경로가 폴더 이름이 됨
   └─ 228811ca-2a07-4cf9-bf1a-....jsonl # 세션 하나 = JSONL 파일 하나

그래서 -c가 "현재 디렉토리의 최근 대화"를 여는 것이고, -r 선택창도 그 폴더에 속한 세션들을 보여주는 것입니다. 다른 폴더로 옮겨서 -c를 치면 그 대화가 안 보이는 이유가 여기 있습니다. (실제로 세션을 하나 만든 뒤 이 경로에서 .jsonl 파일이 생기는 것을 확인했습니다.)

이어서 할까, 새로 시작할까

대화가 길어지면 무조건 이어받는 게 답은 아닙니다. 주제가 바뀌었다면 이전 맥락을 끌고 가는 게 오히려 방해가 됩니다. 이럴 땐 이어받지 말고 대화를 비우거나 요약해 새로 시작하는 편이 낫습니다. 세션 안에서 대화를 비우고 다시 시작하는 /clear·/compact는 클로드 코드 컨텍스트 관리(compact와 clear) 글에서 다뤘습니다. 요약하면 이렇습니다.

  • 하던 작업을 계속한다 → claude -c 또는 claude -r로 이어받기
  • 주제가 완전히 바뀐다 → 이어받지 말고 /clear로 새로 시작
  • 맥락은 살리되 길이만 줄인다 → /compact로 요약 후 계속

자주 묻는 질문 (FAQ)

Q. -c와 -r 중 뭘 써야 하나요?
방금 하던 대화 하나만 이어받으면 되면 -c, 여러 대화 중 특정 것을 골라야 하면 -r입니다.

Q. 이어받았는데 이전 대화가 안 보여요.
클로드 코드는 세션을 작업 폴더별로 저장합니다. 대화를 시작했던 폴더와 같은 폴더에서 -c/-r를 실행했는지 확인하세요. 다른 폴더에서는 그 세션이 목록에 나오지 않습니다.

Q. 이전 대화를 밑바탕으로 실험만 하고 원본은 남기고 싶어요.
--fork-session을 붙이면 이어받는 순간 새 세션으로 갈라져, 실험이 원래 기록을 건드리지 않습니다.

Q. 세션 목록에서 어떤 게 어떤 대화인지 모르겠어요.
세션을 시작하거나 이어받을 때 -n "이름"으로 표시 이름을 붙여두면 /resume 선택창에서 구분됩니다.

마무리

정리하면, 방금 하던 대화는 claude -c로 바로 잇고, 여러 대화 중 하나는 claude -r로 골라 엽니다. 원본을 지키며 실험하려면 --fork-session, 자동화라면 claude -r "<id>" "질문"입니다. 세션은 ~/.claude/projects/ 아래 폴더별로 쌓이니, 대화를 시작한 폴더에서 이어받는다는 점만 기억하면 됩니다. 옵션 이름은 버전에 따라 늘 수 있으니 claude --help로 한 번씩 확인하세요.


📚 참고 출처 (2026년 7월 27일 확인)
· Claude Code — CLI reference
· 로컬 CLI 실행 확인: claude 2.1.202 (claude --help · 세션 저장 경로 확인)

반응형

COMMENTS