요즘 이런 도구가 쏟아진다
최근 몇 달 사이 herdr, Orca, cmux, Claude Squad 같은 이름을 부쩍 자주 봐요. 전부 “AI 코딩 에이전트 여러 개를 한 번에 굴리는 도구"라는 소개를 달고 나오는데, Claude Code나 Codex를 하나만 돌려도 벅찬 터라 여러 개를 동시에 관리한다니 눈길이 갈 만해요.
그런데 목록을 훑다 보면 이상한 질문이 머리에 떠오릅니다. “저는 Ghostty를 쓰는데, herdr로 갈아타야 하나?” “tmux를 버리고 cmux를 깔아야 하나?” 저도 처음엔 그렇게 물었습니다. 결론부터 말하면 이건 잘못 세운 질문입니다. Ghostty와 herdr는 애초에 경쟁 관계가 아니며, 서로 다른 층에서 다른 일을 합니다.
이 글은 그 착각을 푸는 지도입니다. 도구를 나열하기보다, 이 도구들이 각각 어느 층에 사는지를 먼저 나눕니다. 층을 나누고 나면 “뭘 써야 하나"라는 질문이 “지금 제 환경에서 어느 층이 비어 있나"로 바뀝니다. 그게 훨씬 답하기 쉬운 질문입니다.
왜 다들 같은 칸에 있는 것처럼 보이나
착각의 원인은 단순합니다. 이 도구들이 대부분 터미널에서 도는 CLI 형태라서, 겉보기에 다 비슷해 보입니다. 검은 화면에 글자가 흐르고, 키보드로 조작하고, 이름도 -mux로 끝나는 게 많습니다. 그래서 한 바구니에 담아 놓고 “이 중에 뭐가 제일 좋냐"를 따지게 됩니다.
하지만 실제로는 역할이 완전히 다릅니다. 어떤 건 화면을 그리는 일을 하고, 어떤 건 그 화면을 여러 칸으로 쪼개는 일을 하고, 어떤 건 그 칸 안에서 도는 에이전트들을 관리하는 일을 합니다. 모니터와 화면 분할기와 작업 반장을 놓고 “셋 중 뭐가 제일 좋냐"를 묻는 셈이라, 질문 자체가 성립하지 않습니다.
3개 층으로 나눈다
정리하면 층은 세 개입니다. 위에서 아래로 갈수록 더 안쪽에서 돕니다.
flowchart TD
L1["1층 터미널 에뮬레이터
화면을 그린다
(Ghostty, iTerm2)"]
L2["2층 멀티플렉서
세션을 쪼갠다
(tmux, Zellij)"]
L3["3층 에이전트 오케스트레이터
에이전트를 관리한다
(herdr, cmux, Orca)"]
AGENT["코딩 에이전트
(Claude Code, Codex)"]
L1 --> L2 --> L3 --> AGENT
1층은 터미널 에뮬레이터입니다. 화면에 글자를 그리는 앱이고, 폰트와 색과 렌더링 속도가 승부처입니다. Ghostty, iTerm2, Alacritty가 여기 있습니다. 이 층은 에이전트를 “관리"하지 않습니다. 그냥 잘 보여줄 뿐입니다.
한 칸 아래가 멀티플렉서입니다. 터미널 하나 안을 여러 세션으로 쪼개고, 터미널을 닫아도 세션을 살려 둡니다. SSH가 끊겨도 작업이 죽지 않게 하는 게 이 층의 존재 이유입니다. tmux가 사실상 표준이고, Zellij가 Rust로 다시 쓴 현대판입니다. 다만 창을 나눠 줄 뿐, 그 창 속 에이전트가 일하는 중인지 끝났는지는 알지 못합니다.
가장 안쪽 3층이 이번 글의 주인공입니다. 에이전트마다 별도의 작업 공간을 만들어 서로 부딪치지 않게 격리하고, 각 에이전트의 상태를 추적하고, 결과 diff를 보여줍니다. herdr, cmux, Orca, Claude Squad가 여기 있습니다.
3층이 왜 필요한지는 한 문장으로 설명됩니다. 코딩 에이전트는 작업 디렉토리를 통째로 자기 것으로 쓸 때 가장 잘 동작합니다. 그런데 에이전트 둘이 같은 디렉토리를 동시에 만지면 서로의 편집을 뭉개고, 빌드가 깨지고, git 상태가 엉킵니다. 이런 충돌을 피하려고 3층 도구들은 하나같이 git worktree로 각 에이전트에게 독립된 체크아웃을 줍니다.
1층과 2층: 바탕이 되는 도구
3층 이야기로 넘어가기 전에, 바탕 두 층을 짧게 정리합니다. 이 층은 3층 도구와 경쟁하지 않고 함께 씁니다. 제가 즐겨 쓰는 Ghostty도 여기 있습니다.
| 도구 | 층 | 플랫폼 |
|---|---|---|
| Ghostty | 터미널 에뮬레이터 | macOS, Linux |
| iTerm2 | 터미널 에뮬레이터 | macOS |
| Alacritty | 터미널 에뮬레이터 | 전 플랫폼 |
| tmux | 멀티플렉서 | 전 플랫폼 |
| Zellij | 멀티플렉서 | 전 플랫폼 |
Ghostty는 GPU로 화면을 그려서 빠르고, 설정이 간결합니다. 요즘 새로 나오는 에이전트 도구 중 일부는 아예 이 Ghostty의 렌더링 엔진을 자기 기반으로 삼으며, 뒤에 나올 cmux가 그렇습니다. 이 사실 하나만 알아도 “Ghostty와 cmux 중 뭘 쓰지"라는 질문이 왜 이상한지 감이 옵니다. cmux가 Ghostty 위에 지어졌으니, 둘 중 하나를 고르는 문제가 애초에 성립하지 않습니다.
3층: 에이전트 오케스트레이터
이제 본론입니다. 3층 도구들을 순수 사양만 표로 정리했습니다. 어느 게 더 좋은지는 표 아래 산문으로 따로 풀었습니다. 도구마다 성격이 달라서 한 줄로 우열을 매기는 게 오히려 오해를 부릅니다.
| 도구 | 유형 | 플랫폼 | worktree 격리 | 상태 인지 | 라이선스 |
|---|---|---|---|---|---|
| Claude Code Agent Teams | 빌트인 | Claude Code 환경 | 지원 | 지원 | 무료 |
| cmux (manaflow-ai) | 터미널 앱 | macOS | 지원 | 지원 | OSS |
| cmux (craigsc) | 셸 스크립트 | macOS, Linux | 지원 | 제한 | OSS |
| herdr | 멀티플렉서 | Linux, macOS, Win(beta) | 지원 | 지원 | OSS |
| Claude Squad | TUI | macOS, Linux | 지원 | 지원 | OSS |
| dmux | CLI | macOS, Linux | 지원 | 제한 | OSS |
| Orca | 데스크톱 GUI | mac, Win, Linux | 지원 | 지원 | OSS(MIT) |
| Parallel Code | 데스크톱 GUI | mac, Win, Linux | 지원 | 지원 | OSS |
| Emdash | 데스크톱 GUI | 전 플랫폼 | 지원 | 지원 | OSS |
표의 “상태 인지"는 tmux처럼 창만 나누는 데서 그치지 않고, 각 에이전트가 지금 일하는 중인지 끝났는지 입력을 기다리는지까지 도구가 안다는 뜻입니다. 이게 3층을 2층과 갈라 놓는 결정적 차입니다. herdr가 멀티플렉서라고 소개되면 tmux 대체품처럼 들리지만, 실제로는 에이전트 상태를 아는 멀티플렉서라 2층과 3층에 걸쳐 있습니다.
크게 두 갈래로 나뉩니다. 터미널 안에서 도는 가벼운 쪽(herdr, Claude Squad, dmux, cmux)과, 자체 창을 띄우는 무거운 데스크톱 쪽(Orca, Parallel Code, Emdash)입니다. 데스크톱 쪽은 내장 브라우저로 에이전트가 만든 화면을 바로 확인하거나, diff에 코멘트를 달아 에이전트에게 되돌려 주는 기능을 얹습니다. 대신 앱이 무겁고, 원격 리눅스 서버에서는 쓰기 어렵습니다. 표에 다 넣지는 않았지만 wmux(cmux의 Windows 포팅), Termdock(세션별 CPU/메모리 모니터), amux 같은 것도 같은 계보에 있습니다.
착각하기 쉬운 세 지점
층을 나누고 나서도 개별 도구에서 헷갈리는 대목이 몇 개 남습니다.
첫째, cmux는 이름이 같은 도구가 둘입니다. 하나는 manaflow-ai가 만든 Ghostty 기반 macOS 앱이고, 다른 하나는 craigsc의 “tmux for Claude Code"라는 셸 스크립트입니다. 검색하면 둘이 섞여 나옵니다. 성격이 꽤 다르니 저장소 주소를 보고 구분하는 게 안전합니다.
둘째, Orca 같은 데스크톱 앱은 자체 터미널 렌더링을 내장합니다. 그래서 Orca를 쓰면 Ghostty를 거치지 않습니다. “Ghostty에서 Orca를 띄운다"기보다 “Orca가 Ghostty 자리를 대신한다"에 가깝습니다. 앞의 3층 도구들이 대부분 기존 터미널 위에 얹히는 것과 다른 지점입니다.
셋째, 가장 흔한 오해인데, 3층 도구가 없어도 병렬 작업은 이미 가능합니다. Claude Code에는 Agent Teams라는 기능이 내장되어 있어서, 서브에이전트를 병렬로 띄우고 각자 worktree에 격리합니다. 새 도구를 깔기 전에 이미 손에 있는 걸 먼저 써 보는 게 순서입니다.
제 환경이라면 이렇게 고릅니다
여기부터는 사양 비교를 넘어 선택의 문제로 들어갑니다. 제 작업 환경은 두 갈래입니다. 로컬은 macOS에 Ghostty, 원격은 리눅스 서버에 SSH로 붙습니다. 층으로 나눠 놓으니 각 환경에서 뭘 얹을지가 명확해집니다.
로컬 macOS에서는 cmux(manaflow-ai)가 가장 자연스러운 후보입니다. 이미 쓰는 Ghostty의 렌더링을 그대로 두고 그 위에 사이드바와 알림만 얹는 구조라, 기존 환경을 버릴 필요가 없습니다. 오케스트레이터라기보다 여러 에이전트를 나란히 두는 최소한의 장치라서, Claude Code를 쓰던 방식을 강제로 바꾸지 않는 점도 저는 마음에 들어요.
원격 서버에서는 사정이 다릅니다. macOS 앱은 당연히 못 씁니다. 여기서는 herdr나, 이미 쓰고 있는 tmux 위에 Claude Squad를 얹는 쪽이 맞습니다. herdr는 SSH로 붙어서 세션을 유지하고 휴대폰에서 재접속하는 시나리오에 강합니다. 다만 tmux를 이미 손에 익혔다면 Claude Squad로 넘어가는 이행 비용이 더 낮습니다. 익숙한 2층 위에 3층만 얹는 그림이기 때문입니다.
솔직히 덧붙이면, 저는 지금 당장 급하지는 않다고 봅니다. 제 작업은 대부분 글을 쓰거나 문서를 다듬는 일이라, 에이전트를 다섯 개씩 병렬로 굴려야 하는 순간이 매일 오지는 않습니다. worktree 격리가 절실해지는 건 서로 독립적인 작업을 진짜로 동시에 여러 개 돌릴 때입니다. 그 순간이 오기 전까지는 Claude Code의 Agent Teams로 충분하고, 필요가 분명해지면 그때 로컬은 cmux, 원격은 herdr로 넘어가면 됩니다.
도구를 고르기 전에 층을 묻는다
이 바닥은 변화가 빠릅니다. 이 글을 쓰는 지금(2026년 7월)에도 새 도구가 계속 나오고, 이름과 기능이 겹치고, 어제의 추천이 오늘 바뀝니다. 그러니 개별 도구 이름을 외우는 것보다, 새 도구를 만났을 때 “이건 몇 층 도구지"를 먼저 묻는 습관이 오래갑니다.
터미널을 바꾸고 싶은 건지, 세션 관리를 원하는 건지, 에이전트를 여러 개 굴리고 싶은 건지 생각해 봐야 해요. 이 세 가지는 서로 다른 문제이고 답도 다른 층에 있지만, 지도를 손에 쥐고 나면 쏟아지는 도구 목록이 위협이 아니라 그저 선택지로 보여요.