**CatchUp(catchup)**은 Claude Code, Codex, Cursor 등 코딩 에이전트의 로컬 세션 대화를 읽어 정리된 Markdown으로 전달하는 CLI다. 사용량 한도나 도구 전환 때문에 같은 일을 처음부터 설명해야 하는 문제를 줄이며, 세션 기록을 검색 가능한 작업 맥락으로 남긴다.
무엇을 넘기고 무엇을 남기는가
CatchUp은 대화의 사용자·에이전트 메시지를 옮기되 도구 호출, 명령 출력, 모델의 추론 흔적은 제외한다. 따라서 다른 에이전트가 작업 목표와 결정 사항을 빠르게 파악하는 데는 유용하지만, 실행 상태까지 완전히 복원하는 백업 도구는 아니다.
| 방식 | 쓰임 | 주의점 |
|---|---|---|
fork | 같은 에이전트 세션을 다시 열기 | 네이티브 상태를 유지할 수 있다 |
fork --into <agent> | 다른 에이전트로 작업 넘기기 | 대화 전사본만 전달한다 |
--since-compact | 최근 압축 이후 맥락만 읽기 | 이미 압축에서 빠진 세부사항은 복원하지 못한다 |
-q <키워드> | 과거 세션 검색 | 로컬에 남아 있는 세션만 찾는다 |
빠른 사용법
설치 뒤 터미널에서 최근 세션을 확인하고, 필요한 맥락만 넘긴다.
brew install wilbeibi/tap/catchup
catchup --list
catchup fork codex --into claude
catchup claude --since-compact
catchup -q "authentication"에이전트용 스킬을 설치하려면 catchup install-skill을 실행하고 에이전트를 재시작한다. 실무에서는 세션을 넘기기 전 현재 작업의 테스트 결과, 변경 파일, 다음 할 일을 짧게 파일에도 남겨 두면 전사본에 없는 실행 상태를 보완할 수 있다.
언제 쓰면 좋은가
- 도구를 바꾸는 개발자: 한도나 모델 특성 때문에 Claude Code·Codex·Cursor 사이를 옮길 때
- 장기 작업 팀: 이전 세션의 판단 근거를 빠르게 찾아 재진입할 때
- 로컬 우선 환경: 대화 내용을 별도 클라우드에 업로드하지 않고 세션 전환을 관리하고 싶을 때
병렬 에이전트의 변경을 자동 병합하거나, 컨테이너·권한·도구 상태를 이식해야 한다면 CatchUp만으로는 부족하다. 그런 실행 상태는 Git 커밋, 작업 계획 파일, 재현 가능한 검증 명령으로 별도 관리해야 한다.
관련 문서
- agent-harness — 세션·파일시스템·컨텍스트 정책을 포함한 에이전트 실행 환경 설계
- context-engineering — 긴 작업에서 필요한 정보를 선택·압축하는 방법
- sessionhub — 로컬 세션 로그를 압축하고 검색하는 도구
참고 자료
- wilbeibi/catchup — GitHub 공식 저장소