Claude Code와 Codex를 동시에 띄워 두고 일을 시키면, 금방 이런 생각이 듭니다. 지금 누가 일하고 있지? 누가 내 답을 기다리고 있지?
에이전트 하나라면 터미널 창 하나로 충분합니다. 둘, 셋이 되면 창을 하나씩 열어 봐야 상태를 압니다. 노트북을 닫으면 돌던 일이 끊기기도 하고, 에이전트끼리 결과를 주고받으려면 사람이 복사해서 붙여 넣어야 합니다.
Herdr는 이 문제를 풀려고 나온 터미널 작업 공간입니다. Mac에서 Herdr 0.9.5로 Claude Code와 Codex를 함께 돌려, Herdr 저장소의 실제 공개 이슈를 보여 주는 대시보드를 처음부터 끝까지 만들어 봤습니다.
이 글에서는 다음을 차례로 봅니다.
- Herdr는 무엇이고 왜 요즘 많이 쓰나
- 상태 점 네 가지: 누가 나를 기다리는지 한눈에
- 끄고 켜도 남는 것, 남지 않는 것
- 에이전트가 Herdr를 조작한다: Skill과 명령 세 개
- worktree로 나눠서 동시에 만들기
- 다른 모델에게 리뷰받기
- 대표 패턴 네 가지와 고르는 법
- 한계와 주의할 점
숫자 읽는 법. [공식 문서] 는 Herdr를 만든 쪽이 직접 낸 자료, [직접 측정] 은 저희가 이 실습에서 직접 돌려 본 결과입니다. 실습은 macOS(Apple Silicon), Herdr 0.9.5, Claude Code와 Codex로 했습니다.
1. Herdr는 무엇인가
Herdr는 에이전트들이 사는 터미널 작업 공간입니다. 화면을 나누고 탭을 만들고, 그 안에서 Claude Code나 Codex를 돌립니다. 하는 일은 크게 넷입니다.
- 작업 공간: 워크스페이스(보통 프로젝트 폴더 하나) → 탭 → 패널(터미널 하나)로 나눠 담습니다.
- 서버로 계속: 화면과 별도로 뒤에서 서버가 돌아서, 창을 닫아도 에이전트는 계속 일합니다.
- 상태 읽기: 각 에이전트가 일하는 중인지, 허락을 기다리는지, 끝났는지 읽어서 점 색으로 보여 줍니다.
- herdr 명령: 사람이 쓰는 기능을 전부 명령으로도 열어 둬서, 에이전트가 다른 에이전트를 띄우고 일을 줄 수 있습니다.
화면 나누기와 세션 유지는 오래 쓰인 tmux로도 됩니다. Herdr는 여기에 에이전트를 위한 것들, 즉 상태 읽기, 에이전트가 쓰는 명령, worktree 작업 공간, 플러그인을 더했습니다. 단축키도 tmux처럼 Ctrl+B로 시작합니다.
얼마나 쓰이는지는 herdr.dev 첫 화면에 나와 있습니다. 2026년 10월 24일 기준 GitHub 별 44,627개, 설치 1,644,092번, 커뮤니티 플러그인 1,789개, 알아보는 에이전트 CLI 22가지입니다 [공식 문서]. macOS, Linux, Windows에서 돌고, 라이선스는 Apache 2.0입니다.
설치는 Homebrew 한 줄입니다.
brew install herdr
herdr --version
herdr
2. 상태 점 네 가지
Herdr는 패널에서 Claude Code나 Codex가 실행되면 알아서 알아채고, 그 패널 화면의 맨 아랫부분을 계속 읽습니다 공식 문서. 그 결과가 왼쪽 아래 에이전트 목록의 점으로 붙습니다.
| 점 | 상태 | 뜻 |
|---|---|---|
| 빈 동그라미 | idle | 입력을 기다림 |
| 노란 점 | working | 답을 만드는 중 |
| 빨간 점 | blocked | 허락이나 질문을 띄우고 멈춤 |
| 청록 점 | done | 끝났는데 아직 내가 화면을 안 봄 |
실습에서 Claude Code에게 파일 하나를 만들어 달라고 하자, 노란 점이 잠깐 켜졌다가 바로 빨간 점으로 바뀌었습니다. 파일을 만들어도 되는지 묻고 멈춘 겁니다. 다른 패널을 크게 보고 있어도, 누가 멈췄는지 목록에서 바로 알 수 있습니다 [직접 측정].
색 구분이 어렵다면 설정 화면(Ctrl+B → S)에서 상태를 모양이 다른 기호로 바꿀 수 있습니다.
주의할 점이 하나 있습니다. Herdr는 화면 모양으로 상태를 판단하기 때문에, 처음 보는 질문 창은 blocked 대신 idle로 보일 수 있습니다. 실습에서도 Codex가 "이 폴더를 믿을지" 묻는 창이 idle로 보였습니다 [직접 측정]. idle이라고 바로 입력을 보내지 말고, 패널 화면을 직접 보고 판단하세요.
3. 끄고 켜도 남는 것
Herdr를 끄는 방법은 두 가지이고, 남는 것이 다릅니다 [공식 문서](Session state).
| 끄는 방법 | 돌던 명령 | 패널 배치 | 에이전트 대화 |
|---|---|---|---|
Ctrl+B → Q (화면만 닫기) | 계속 돔 | 그대로 | 그대로 |
herdr server stop (서버까지 끄기, 재부팅도 같음) | 끝남 | 돌아옴 | 연동을 설치한 에이전트만 같은 대화로 |
직접 확인했습니다 [직접 측정].
- 왼쪽 패널에
ping localhost를 켜 두고 화면만 닫았다가 다시 들어오니, ping 번호가 그 사이에도 계속 올라가 있었습니다. - 서버까지 끄고 다시 켜니, 패널 두 개는 돌아왔지만 ping은 없었습니다.
- 오른쪽 Claude Code 패널에서는 Herdr가
claude --resume을 대신 입력해 원래 대화로 들어갔고, "방금 몇까지 셌어?"라고 묻자 3까지 셌다고 답했습니다.
꺼진 뒤에도 패널의 이전 화면을 보고 싶다면 설정에서 pane_history를 켤 수 있습니다. 다만 기본값은 꺼져 있습니다. 공식 문서는 터미널 출력에 비밀값, 토큰, 프롬프트가 섞일 수 있어서라고 설명합니다. 켜면 그 내용이 설정 폴더에 파일로 남으니, 필요할 때만 켜세요.
4. 에이전트가 Herdr를 조작한다
Herdr에서 조작하는 대상은 배치(워크스페이스·탭·패널), 패널 안의 터미널, 패널 안의 에이전트 세 가지이고, 모두 herdr 명령으로 됩니다. 에이전트는 이 명령을 씁니다.
그 사용법을 적은 설명서가 Skill입니다. Herdr 안에 들어 있어서 꺼내 저장하기만 하면 됩니다.
mkdir -p .claude/skills/herdr
herdr --skill > .claude/skills/herdr/SKILL.md
Herdr 패널 안에서는 HERDR_ENV 값이 1이고, 밖에서는 비어 있습니다. Skill은 이 값이 1일 때만 Herdr를 조작하라고 적혀 있어서, 엉뚱한 화면을 건드리지 않습니다.
Claude Code에게 평소 말투로 "Herdr로 오른쪽에 패널을 만들고 Codex를 띄워서, 이 프로젝트를 세 줄로 요약하게 해 줘"라고 부탁하자, 패널 나누기 → Codex 시작 → 일 보내기 → 기다리기 → 답 읽기를 차례로 했습니다 [직접 측정]. 기본 설정에서는 명령마다 허락을 묻습니다. 자동으로 다 허락하는 모드는 권하지 않습니다. 에이전트가 다른 패널에 무엇을 입력하는지 볼 수 없게 되니까요.
사람이 직접 쳐도 명령 세 개면 됩니다.
herdr agent get summarizer # 상태 보기 (agent_status 칸)
herdr agent prompt summarizer "..." --wait # 일 보내고 끝날 때까지 기다리기
herdr agent read summarizer --lines 12 # 답 읽기
새 에이전트는 agent start, 패널 나누기는 pane split입니다. 이 세 개가 뒤에서 만드는 자동화 스크립트의 재료가 됩니다.
5. worktree로 나눠서 동시에 만들기
한 폴더에서 Claude Code와 Codex가 동시에 같은 파일을 고치면, 한쪽 수정이 덮이거나 뒤섞입니다. 폴더를 통째로 복사하면 복사본끼리 서로를 몰라서 합치기가 어렵습니다.
git worktree는 그 중간입니다. 커밋 기록은 하나를 같이 쓰고, 파일이 놓이는 폴더만 따로 만듭니다 (git-worktree 문서). 폴더마다 브랜치가 하나씩 붙습니다. Herdr에서는 Ctrl+B → Shift+G 한 번, 또는 아래 명령 한 줄이면 worktree와 그 폴더에서 열린 작업 공간이 같이 생깁니다.
herdr worktree create --branch api-filter --no-focus
실습에서는 이렇게 나눴습니다.
- 약속 문서
contract/API.md하나에 서버가 돌려줄 데이터 모양을 적어 둡니다. 화면 쪽도 API 쪽도 이 문서를 봅니다. - ui-search 작업 공간의 Claude Code는 화면(
src/)만, api-filter 작업 공간의 Codex는 API(server/,tests/)만 고칩니다. - 둘이 동시에 일하는 동안 사람은 사이드바의 점만 봤고, 빨간 점이 뜬 쪽에 가서 허락만 했습니다.
결과는 이렇습니다 [직접 측정].
git merge로 두 브랜치를 main에 합칠 때 충돌이 없었습니다. 고친 폴더가 서로 달랐기 때문입니다.npm test13개 모두 통과. 약속을 지켰는지 보는npm run accept는 시작본에서 5개가 실패했는데, 합친 뒤 5개 모두 통과했습니다.- 브라우저에 Herdr 저장소의 실제 공개 이슈 26개가 떴고, 검색은 Codex가 만든 서버가, 보여 주는 건 Claude Code가 만든 화면이 맡았습니다.
worktree가 늘 필요한 건 아닙니다. 질문하거나 코드를 읽기만 할 때는 한 폴더로 충분합니다. 둘 이상이 동시에 파일을 고칠 때 나누면 됩니다.
6. 다른 모델에게 리뷰받기
테스트를 다 통과했다고 문제가 없는 건 아닙니다. 같은 모델이 쓰고 같은 모델이 검토하면 처음 세운 가정을 그대로 믿고 넘어가기 쉽습니다. 사람 팀에서 동료에게 리뷰를 받는 것과 같은 이유로, 다른 회사의 모델에게 보여 줬습니다.
Claude Code에게 "Herdr로 오른쪽에 Codex를 띄워서 바뀐 코드를 리뷰하게 해 줘. Codex는 고치지 말고 문제만 찾고, 맞는 지적만 네가 고친 다음 테스트를 다시 돌려 줘"라고 부탁했습니다.
- Codex가
App.jsx69번째 줄에서 문제를 하나 찾았습니다. 푸터의 GitHub 링크가 저장소 주소 대신snapshot같은 데이터 모드 글자를 주소로 써서, 누르면 404가 나는 버그였습니다 [직접 측정]. - 앞에서 통과한 테스트 두 가지는 이 링크를 검사하지 않아서 아무도 몰랐습니다.
- Claude Code가 코드를 확인하고 고쳤고, 테스트를 다시 돌린 뒤 "이 링크를 검사하는 테스트는 없다"고 따로 적었습니다.
그다음은 사람 눈으로 보는 단계입니다. 플러그인 herdr-reviewr로 바뀐 줄에 의견을 달아 Claude Code에게 돌려보내고, 답의 한 문장을 골라 주석을 다는 herdr-annotate로 "이 링크를 검사하는 테스트를 추가해 달라"고 했습니다. 테스트가 13개에서 14개로 늘었고 모두 통과했습니다. 마지막으로 브라우저에서 링크를 직접 눌러 404가 사라진 걸 보고 커밋했습니다 [직접 측정].
플러그인은 내 권한으로 실행되는 프로그램입니다. herdr plugin install은 바로 깔지 않고 실행할 명령을 먼저 보여 주니, 꼭 읽고 y를 누르세요.
7. 대표 패턴 네 가지
지금까지 한 방법에 이름을 붙이면 넷입니다.
- 나눠서 동시에: 겹치지 않는 일을 각자 다른 폴더에서. 핵심은 고치는 파일이 겹치지 않게 나누는 것입니다.
- 쓰는 쪽과 보는 쪽 나누기: 한 모델이 쓰고 다른 모델이 리뷰합니다. 리뷰어는 고치지 않고 지적만 하게 하는 게 요령입니다. 고치는 쪽은 하나여야 헷갈리지 않습니다.
- 순서대로 넘기기(파이프라인): 계획 → 사람 승인 → 구현 → 리뷰. 계획이 틀렸으면 구현 전에 멈추는 게 가장 쌉니다. 실습에서는 이 순서를 셸 스크립트 하나로 만들어, "검색어와 맞는 글자를 이슈 제목에서 노랗게 표시" 기능을 한 줄로 돌렸습니다. 사람이 한 일은 계획 승인, 허락 두 번, 마지막 화면 확인이었습니다 [직접 측정].
- 조정자: 큰 부탁을 받은 에이전트가 일을 나눠 다른 에이전트에게 맡기고, 직접 고치지는 않습니다. 실습에서 Claude Code가 README 다시 쓰기와 라벨별 퍼센트 표시를 worktree 두 개, Codex 두 개에게 나눠 맡겼습니다. 두 Codex가 테스트 실행 허락을 구하며 멈추자, 조정자는 대신 허락하지 않고 사람에게 물었습니다. 합친 뒤
npm test18개와 약속 테스트 5개가 모두 통과했습니다 [직접 측정]. 같은 방식을 보드로 만든 플러그인이 herdr-projects입니다.
고르는 법은 간단합니다. 작은 일은 에이전트 하나, 겹치지 않는 일이 여럿이면 나눠서 동시에, 실수가 비싼 일이면 다른 모델 리뷰, 자주 반복하는 흐름은 파이프라인, 일이 많아 쪼개야 하면 조정자. 어떤 패턴이든 마지막 확인은 사람이 합니다. 그 확인 지점을 어디에 둘지가 설계의 핵심입니다.
8. 한계와 주의할 점
- 상태 표시는 화면을 읽은 추정입니다. 처음 보는 질문 창은 idle로 보일 수 있습니다. 중요한 입력을 보내기 전에는 패널을 직접 보세요.
- 에이전트가 하나라면 아직 필요 없을 수 있습니다. 둘 이상을 동시에 쓰기 시작할 때 쓸모가 커집니다.
- 조정자 보드(herdr-projects)는 macOS와 Linux에서만 돌고, 에이전트를 허락을 묻지 않는 모드로 돌립니다. 각자 worktree 안에서만 돌긴 하지만, 믿을 수 있는 저장소에서만 쓰세요. 이번 실습에서는 보드 표시가 working에 머물러, 리뷰·승인 단계까지는 확인하지 못했습니다.
- 테스트 통과가 끝이 아닙니다. 이번에 찾은 404 링크처럼, 테스트가 보지 않는 곳은 다른 모델의 눈과 사람의 눈으로 확인해야 합니다.
- 실습은 모두 Mac에서 했습니다. Windows 설치는 공식 Windows 안내를 참고하세요.
에이전트가 많아질수록, 누가 무엇을 하는지 보고 필요한 때만 끼어드는 것이 중요해집니다. Herdr는 그 자리를 만들어 주는 도구입니다.
영상으로 보기
설치부터 휴대폰·다른 Mac에서 이어 하기까지, 같은 실습 전 과정을 실제 화면으로 담은 1시간 분량의 영상입니다. 10월 29일 오후 7시(한국시간)에 공개됩니다.
출처
- herdr.dev — 첫 화면 지표(2026-10-24 확인), Agents, Session state, Plugins, Windows
- herdrdev/herdr — Herdr 저장소(실습 대시보드의 공개 이슈 출처)
- persiyanov/herdr-reviewr · eliasstravik/herdr-projects · smarzban/herdr-file-viewer
- git-worktree 공식 문서













