
【Claude Code】AI 에이전트를 병렬로 실행할 수 있는 ADE 「Orca」를 사용해 보았다
요약
Orca는 여러 AI 코딩 에이전트를 독립된 git worktree에서 병렬로 실행할 수 있는 오픈소스 ADE(Agent Development Environment)입니다. Claude Code, Codex 등 25개 이상의 CLI 에이전트를 지원하며, 에이전트 간 결과 비교 및 통합을 용이하게 설계되었습니다.
핵심 포인트
- git worktree를 활용해 에이전트 간 코드 충돌 없이 병렬 작업 가능
- Claude Code, Codex, Gemini 등 25개 이상의 CLI 에이전트 지원
- Design Mode를 통해 UI 요소를 클릭하여 에이전트에게 직접 지시 가능
- 에이전트 실행, 결과 비교, 병합을 UI로 제공하는 ADE 환경 구축
TL;DR
- Orca는 「Agent Development Environment (ADE)」라는 카테고리를 표방하는 OSS 데스크톱 앱으로, 여러 AI 코딩 에이전트를 독립된 git worktree에서 병렬로 실행할 수 있다.
- IDE와의 가장 큰 차이점은 여러 에이전트의 병렬 실행, 비교, 통합을 전제로 설계되었다는 점에 있다. Claude Code, Codex, Gemini 등 25개 이상의 CLI 에이전트를 지원한다.
- Design Mode에서는 내장된 Chromium의 UI 요소를 클릭하면 HTML, CSS, 스크린샷이 자동으로 에이전트에게 전달된다. 요소를 말로 설명하지 않고도 지시할 수 있다.
- MIT 라이선스의 완전한 OSS로 무료이다. macOS / Windows / Linux를 지원하며, iOS/Android 모바일 앱도 있다.
Claude Code를 일상적으로 사용하기 시작하면, 어느샌가 터미널 탭이 늘어가는 것을 느끼게 된다.
「사용자 인증 수정」, 「테스트 추가」, 「문서 업데이트」 등 여러 태스크를 Claude Code로 병렬로 돌리려고 하면, 아무래도 동일한 브랜치에서 충돌이 발생한다. 급하게 stash를 끼워 넣거나 브랜치를 다시 전환하는 등, 에이전트의 병행 실행을 지원하기 위해 인간이 조정 작업을 수행하는 역전 현상이 일어나고 있었다.
이런 방식으로 사용하고 있다면 git worktree를 사용하면 된다는 것은 머리로는 알고 있다. 하지만 worktree의 생성, 전환, 삭제를 수동으로 관리하면서 여러 에이전트를 계속 실행하는 것은 CLI만으로는 생각보다 번거롭다.
그래서 찾아낸 것이 Orca다. 「여러 AI 에이전트를 병렬로 실행하면 실제로 개발 효율이 올라가는가」를 설치해서 확인해 보았다. 병렬 워크트리 메커니즘, Design Mode, 차분 리뷰(diff review)의 3가지 기능을 중심으로, 실제로 구동한 기록을 정리한다.
Orca는 YCombinator가 투자한 Stably.ai가 개발하고 있는 데스크톱 앱이다.
카테고리로서 「Agent Development Environment (ADE)」를 표방하고 있으며, IDE와는 다른 설계 사상을 가진다. GitHub 리포지토리는 8,000개 이상의 스타(star)를 기록하고 있으며(2026년 6월 기준), 릴리스 수는 660개를 넘어 활발한 개발이 이어지고 있다.
IDE는 인간이 직접 움직이는 것을 중심으로 설계된 환경이다. 에디터, 디버거, 터미널은 모두 「인간이 코드를 작성하기 위한 도구」로서 배치되어 있다.
Orca가 「ADE」라고 부르는 것은 에이전트가 실행하는 것을 중심으로 설계된 환경을 말한다. 개발자는 태스크를 지시하여 여러 에이전트를 실행시키고, 결과를 비교하여 좋은 것을 선택한다.
공식 사이트에는 이렇게 적혀 있다.
Fan one prompt across 5 agents, compare, merge the winner.
이 발상은 Claude Code에서도 수동으로 불가능한 것은 아니다. 하지만 worktree의 분리, 브랜치 관리, 차분(diff) 확인까지 포함하면 인간 측의 운용 비용이 늘어나 에이전트를 병렬화하는 의미가 퇴색된다. Orca는 그 운용 부분을 UI로 제공한다.
macOS의 경우, 공식 사이트에서 dmg를 다운로드하여 설치하기만 하면 된다. Apple Silicon과 Intel 각각의 빌드가 준비되어 있어 추가 설정 없이 실행할 수 있었다.
실행 직후, 대응 에이전트(Claude Code, Codex, OpenCode 등)가 자동으로 검출된다. git 리포지토리를 열면 워크트리 관리 화면이 나타난다. 외관은 데스크톱 IDE와 유사하며, 왼쪽 페인에는 워크트리 목록, 오른쪽에는 터미널과 에디터가 나란히 배치된 구성이다.
git worktree
명령어를 사용해 본 적이 있는 사람은 알겠지만, 동일한 리포지토리를 여러 개의 독립된 디렉토리에 전개할 수 있다. 각각 별도의 브랜치를 가지기 때문에, 별도의 디렉토리에서 작업하는 에이전트끼리 파일을 충돌시킬 일은 없다.
Orca는 워크트리의 생성, 삭제, 에이전트 실행을 UI에서 조작할 수 있다.
워크플로우는 다음과 같다.
- 새로운 worktree를 생성한다 (브랜치 이름을 결정한다)
- 해당 worktree에서 에이전트를 실행하여 태스크를 던진다
- 다른 worktree를 생성하여 별도의 태스크를 병행하여 실행한다
- 완료된 worktree의 diff를 Orca의 UI 상에서 확인한다
- 문제가 없다면 메인 브랜치에 머지(merge)한다
실제로 add-dark-mode
, fix-button-color
, update-nav
의 3개 worktree를 생성하여 동시에 실행해 보았다. git worktree list로 상태를 확인하면 다음과 같다.
/Users/.../orca-demo 3353a29 [main]
/Users/.../orca-demo/add-dark-mode f743d31 [add-dark-mode]
/Users/.../orca-demo/fix-button-color 99ba3e4 [fix-button-color]
...
에이전트(Agent)가 서로 다른 worktree에서 CSS를 수정하는 중에도 파일 충돌(Conflict)은 전혀 발생하지 않았다. 각각 독립된 디렉토리에서 동작하므로 당연한 결과이기도 하지만, 동일한 브랜치에서 병렬로 실행했을 때 겪었던 "스태시(Stash)를 잊어버려 발생하는 충돌" 경험과 비교하면 심리적인 안정감이 다르다.
"현재 어떤 worktree가 어떤 상태에 있는지"를 왼쪽 패인(Pane)에서 목록으로 확인할 수 있는 점도 은근히 유용하다. 여러 터미널 탭을 오가며 브랜치를 확인하는 것보다 인지 비용(Cognitive cost)이 낮다. 태스크(Task)가 3개를 넘어가기 시작하면 특히 차이가 날 것이라 생각한다.
각 worktree에는 독립된 Chromium 창이 연결되어 있다. 개발 중인 UI를 브라우저로 보면서 에이전트에게 지시를 내릴 수 있다.
Design Mode에서는 Chromium 상의 임의의 UI 요소를 클릭하면, 해당 HTML, CSS, 크롭(Crop)된 스크린샷이 자동으로 에이전트의 프롬프트(Prompt)로 전송된다.
Chromium 상의 버튼 요소를 클릭하면 해당 셀렉터(Selector), 치수, 계산된 스타일(Computed style), HTML이 클립보드에 복사된다. 이를 에이전트의 입력창에 붙여넣고 짧은 지시를 덧붙이는 것만으로 셀렉터를 직접 작성할 필요가 없다.
에이전트는 요소 정보로부터 button#btn 셀렉터와 현재의 background: rgb(79, 70, 229)를 파악한 후 style.css를 수정한다.
말로 전달하기 어려운 위치 어긋남이나 마진(Margin) 깨짐 현상은 스크린샷과 요소의 HTML을 모두 전달함으로써 에이전트가 구조를 더 쉽게 파악할 수 있게 해준다.
worktree 구현이 완료된 후, Orca 상에서 diff에 대해 마크다운(Markdown) 댓글을 달 수 있다. 댓글을 배치(Batch)로 에이전트에게 다시 보냄으로써 추가 수정 작업이 한 곳에서 완결된다.
diff 뷰는 GitHub의 PR 리뷰 화면과 유사한 UI로, 행 단위의 녹색 및 적색 하이라이트가 적용되어 있다. "이 변수명을 수정해 주세요", "이 처리에 부작용(Side effect)이 있습니다"와 같은 댓글을 diff의 해당 행에 연결하여 남길 수 있다. 리뷰가 끝나면 댓글을 모아서 에이전트에게 전송하여 재구현하게 하는 사이클이 한 화면에서 돌아간다.
여러 에이전트에게 동일한 태스크를 던져 결과를 비교할 때도 이 diff 뷰를 통해 나란히 확인할 수 있다. 어떤 구현을 채택할지 판단하는 비용이 브랜치를 전환하며 코드를 읽는 방법보다 낮아진다.
Claude Code, Codex, Gemini, Cursor CLI, GitHub Copilot, OpenCode, Grok 등 25개 이상의 CLI 에이전트가 공식 지원된다. "터미널에서 동작하는 CLI 에이전트라면 작동한다"는 설계 덕분에 새로운 에이전트가 등장해도 어느 정도 대응이 가능하다.
이 기사에서는 SSH 원격 worktree와 모바일 앱(iOS/Android)에 대해서는 다루지 않았다. 둘 다 팀 단위로 Orca를 본격적으로 사용하는 단계에서 의미를 갖는 기능으로, SSH 원격 worktree는 클라우드 상의 머신에서 에이전트를 실행하는 유스케이스이며, 모바일 앱은 원격의 에이전트 실행 상황을 스마트폰으로 모니터링 및 조작하는 것이다.
GitHub와 Linear의 네이티브 통합도 이번에는 테스트하지 않았다. "이슈(Issue)를 확인하고 브랜치를 생성한다 → 에이전트에게 구현을 요청한다"는 반복 작업 속에서 브라우저와 터미널을 오가는 비용은 실무에서 은근히 쌓이기 마련이지만, 팀 운영 수준까지 깊게 들어간 평가는 다음 기회로 미룬다.
아직 개발 중인 기능이 있음: 일부 기능은 "coming soon" 상태이며, 모든 기능이 갖춰진 것은 아니다.
git 관리가 전제 조건: 병렬 worktree의 이점을 얻으려면 git 리포지토리(Repository)가 필요하다. git을 사용하지 않는 환경에서는 일반적인 터미널과 동일하게 동작한다.
서두의 질문인 "여러 개의 AI 에이전트를 병렬로 실행하면 실제로 개발 효율이 올라가는가"에 대해 솔직하게 답하자면 "관리 비용(Management Cost)은 낮아진다"이다. worktree의 상태 파악을 Orca에 맡김으로써, 에이전트를 실행하면서 다른 태스크에 집중하기가 쉬워진다. 관리 비용이 낮아지면 병렬로 실행할 수 있는 태스크의 수는 늘어난다.
하지만 "Ship 100x"가 의미하는 "혼자서 100배의 작업을 해낼 수 있는가"는 별개의 문제다. 관리 비용의 절감이 생산성의 배증을 보장하지는 않는다. 그 정도 수준의 심도 있는 평가는 지속적인 사용을 거치지 않으면 할 수 없다.
평소에는 cmux를 사용했었다. Orca로 전환하면 worktree와 에이전트의 대응 관계를 UI에서 목록으로 확인할 수 있기 때문에, 탭을 오가며 브랜치(Branch)를 확인하는 번거로움이 없어진다. cmux로 하던 일은 거의 대체 가능하다. 설치하고 나서 처음 깨달은 점은 스마트폰에서 에이전트의 실행 상태를 확인하고 조작할 수 있는 모바일 연동 기능인데, 이것이 기본적으로 갖춰져 있다.
이런 사람에게 적합합니다:
- Claude Code를 여러 탭에서 수동으로 관리하며 worktree 전환이 번거로워진 사람
- UI 구현이나 수정을 에이전트와 함께 진행하고 있는 사람 (Design Mode가 효과적임)
- 여러 구현 안을 병렬로 생성하여 비교하고 싶은 사람
아직은 이른 사람:
- AI 에이전트를 아직 하나의 태스크에 1개의 인스턴스만 사용하고 있는 단계인 사람
- git을 사용하지 않는 프로젝트가 많은 사람
- 로컬 디스크나 계산 자원(Computing Resources)이 제한적인 사람
MIT 라이선스의 무료 OSS이므로, Claude Code를 일상적으로 사용하면서 여러 태스크의 병렬화가 과제가 되고 있는 사람이라면 우선 설치해 보는 것만으로도 활용처가 보일 것이다.
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기