Station은 Claude Code의 자체 hook으로 상태를 듣고 모든 세션의 현재 모습을 유지합니다. 무엇을 하고 있는지, 무엇을 기다리는지, 어떤 파일을 건드렸는지입니다. 이 정보를 바탕으로 checkout, 충돌 경고, 머지 게이트, 그리고 그 주변의 안전망을 만듭니다.
- 1
- 추가 에이전트마다 만드는 git checkout. 무엇을 쓰기 전에 생성됩니다
- 20
- 터미널별로 되돌릴 수 있는 턴 수
- ~140 ms
- 프롬프트 시점에 작업 트리를 찍는 데 걸리는 시간
1/4 · 에이전트마다 체크아웃 하나
Ctrl+Alt+T 로 에이전트용 터미널이 열립니다. claude 에서 Enter 를 누르는 순간 Station이 한 줄도 쓰기 전에 전용 git 체크아웃과 브랜치로 옮깁니다.
Station에서 샘플 프로젝트로 녹화 · 대기 시간은 빨리 감기

에이전트 레일
Ctrl+Shift+G를 누르면 프로젝트의 모든 Claude Code 세션이 확인 필요, 작업 중, 대기 중, 완료로 묶여 나열됩니다. 행은 순서를 유지하고 상태가 바뀔 때만 움직이므로, 누르려던 행이 그 자리에 그대로 있습니다. 화살표를 누르면 그 에이전트의 타임라인이 행 바로 아래에 열립니다.
- 활성 에이전트 둘이 모두 건드린 파일은 양쪽 행에 빨간색으로 표시됩니다
- “What’s running”에서는 같은 화면에 개발 서버와 스케줄러 대기열도 보입니다
- 자신의 백그라운드 작업을 기다리는 세션은 대기 중이 아니라 “작업 중”으로 유지됩니다
에이전트마다 하나의 타임라인
Ctrl+Shift+L은 터미널 옆에 타임라인을 도킹합니다. 에이전트 자신의 트랜스크립트에서 읽어 오며, 매 턴, diff가 달린 모든 편집, 모든 명령과 실패, 시작한 서브에이전트를 보여 줍니다. 헤더에는 변경된 파일 수와 추가·삭제된 줄 수, 명령 수와 실패 수, 서브에이전트 수가 표시됩니다. 같은 실패가 반복되면 “Same failure 3×”라고 표시되고, 에이전트가 당신을 기다릴 때도 그렇게 표시됩니다.
각자의 checkout
첫 번째 에이전트는 프로젝트 폴더에서 작업합니다. 이후의 에이전트는 claude에서 Enter를 누르는 순간, 한 줄도 쓰기 전에 자신의 agent/N 브랜치가 있는 <project>.worktrees\agent-N으로 옮겨집니다. 새 checkout은 node_modules를 복사하는 대신 디렉터리 junction으로 빌려 쓰고(복사하면 측정상 668 MB, 파일 24,884개), 프로젝트의 무시된 .env 파일도 받습니다.
- 충돌 가드: 다른 에이전트가 쥐고 있는 파일의 편집은 기본적으로 거부됩니다. 경고만 하거나 통과시키는 것도 선택할 수 있습니다
- 머지 게이트는 에이전트가 멈추고, 모두 커밋되었고, 충돌이 없고,
npm run typecheck가 통과했을 때만 끝난 브랜치를 가져옵니다. 그렇지 않으면 그 checkout에서 고치도록 에이전트를 시작합니다 - 또는 머지를 “Ask me”로 설정해, 그 브랜치가 가져올 내용을 설명하는 카드를 받으세요
안전망
프롬프트를 보낼 때마다 작업 트리 전체를 git 객체로 찍습니다. 약 140 ms가 걸리며 터미널당 최근 20개가 보관됩니다. 되돌리기는 달라진 파일만 정확히 복원하고, 그 뒤에 생긴 파일은 휴지통으로 옮기며, 되돌리기 자체도 되돌릴 수 있습니다. Claude Code의 자체 rewind가 다루지 못하는, Bash로 바뀐 내용까지 포함합니다.
- 세컨드 오피니언: 도구가 없는 헤드리스 모델이 매 턴의 diff를 읽고, 문제를 찾았을 때만 카드를 올립니다
- 워치독: 콘솔 오류, 실패한 명령, 깨진 개발 서버 빌드를 에이전트에게 넘길 수 있습니다. Nothing, Ask me, Fix it 중에서 고르며 시간당 상한이 엄격하게 적용됩니다
- 에이전트의 권한 요청에 터미널을 찾지 않고 카드에서 답할 수 있습니다
- 에이전트가 남긴 임시 파일은 휴지통으로 보내도록 제안할 뿐, 스스로 삭제하지 않습니다
이틀, 모든 기능, 카드 없이.