herdr는 여러 코딩 에이전트를 하나의 터미널 안에서 실행·관찰·재연결하게 해주는 Rust 기반 에이전트 멀티플렉서다. tmux처럼 pane, tab, workspace, detach/reattach를 제공하지만, 에이전트별 상태를 blocked, working, done, idle로 보여주는 점이 다르다.
무엇을 해결하나
코딩 에이전트를 여러 개 병렬로 돌리면 “어느 세션이 끝났는지”, “어느 세션이 사용자 입력을 기다리는지”, “어느 서버에서 어떤 작업이 계속 도는지”가 병목이 된다. GUI 매니저는 이를 보여주지만 앱 래퍼와 플랫폼 제한이 생기기 쉽다. herdr는 실제 터미널을 그대로 쓰면서 에이전트 fleet view를 제공하는 쪽을 택했다.
주요 기능
- 에이전트마다 실제 터미널 pane 제공
- sidebar에서 agent state를 한눈에 표시
- workspace, tab, split pane, mouse-native 조작
- background server로 detach 후에도 세션 유지
- SSH와 원격 서버에서 사용 가능
- 로컬 socket API와 CLI로 agent가 pane 생성, 출력 읽기, 상태 구독 가능
- Claude Code, Codex, OpenCode, Devin CLI, Cursor Agent, Kimi Code CLI 등 여러 에이전트 감지
설치와 사용
curl -fsSL https://herdr.dev/install.sh | sh
herdrHomebrew, mise, Nix, GitHub release 바이너리도 제공된다.
기본 조작은 ctrl+b prefix를 사용한다. 예를 들어 ctrl+b 후 v 또는 minus로 pane을 나누고, ctrl+b 후 q로 detach한다. detach해도 에이전트 프로세스는 유지되며 다시 herdr로 붙을 수 있다.
사용 대상 및 케이스
- 코딩 에이전트 파워유저: Claude Code, Codex, OpenCode 등을 병렬로 돌리며 blocked 상태를 놓치지 않으려는 경우
- 원격 개발자: VPS나 워크스테이션에서 에이전트 작업을 계속 실행하고 로컬/모바일 터미널에서 재접속하려는 경우
- 멀티에이전트 실험자: socket API로 agent가 다른 pane을 만들거나 상태를 읽는 터미널 기반 오케스트레이션을 만들 때
관련 문서
- claude-code — Anthropic의 터미널 기반 코딩 에이전트
- codex — OpenAI Codex 개발 환경
- opencode — 터미널 기반 오픈소스 코딩 에이전트
- onecode — Claude Code와 Codex를 한 앱에서 조율하는 오케스트레이터
- agent-harness — 에이전트 하네스 엔지니어링
참고 자료
- ogulcancelik/herdr — GitHub 공식 저장소