오르카는 코딩 에이전트 관제실이다

Orca는 Claude Code와 Codex를 격리된 worktree에서 함께 운영하는 에이전트 IDE다. 병렬 실행, 원격 관제, diff review의 쓸모와 권한 기본값의 위험을 함께 살펴본다.

공유
오르카는 코딩 에이전트 관제실이다

Claude Code와 Codex를 번갈아 쓰다 보면 모델보다 먼저 막히는 것이 있다. 어느 에이전트가 어떤 브랜치에서 일하는지, 무엇을 바꿨는지, 지금 답을 기다리는지 한눈에 보이지 않는다. Orca는 이미 구독 중인 코딩 에이전트를 여러 작업 공간에 배치하고 결과를 검토하는 데스크톱 Agent Development Environment(ADE)다.

Orca — The Agent IDE
Claude Code, Codex, OpenCode 등 여러 코딩 에이전트를 격리된 worktree에서 함께 실행하는 개발 환경

Orca는 에이전트마다 일할 자리를 만든다. Claude Code, Codex, Cursor CLI, OpenCode처럼 터미널에서 실행되는 도구를 기존 구독과 인증으로 불러온다. 저장소를 등록하고 작업을 만들면 실제 git worktree와 브랜치, 전용 터미널을 만든다. 에디터와 브라우저, diff 화면도 그 worktree에 묶인다.

작업 하나가 worktree 하나가 된다

Orca의 기본 단위는 채팅이 아니라 작업이다. 저장소의 기준 브랜치에서 worktree를 만들고, 그 안에서 에이전트를 실행한다. 변경이 끝나면 기준 ref와 diff를 비교하고, 줄 단위로 피드백하고, commit과 push, pull request까지 이어간다. 필요 없는 worktree와 브랜치는 확인 후 함께 지울 수 있다.

이 구조는 여러 에이전트가 같은 checkout의 파일을 덮어쓰는 일을 막는다. 한 에이전트는 로그인 버그를 고치고, 다른 에이전트는 테스트를 보강하며, 세 번째 에이전트는 문서를 정리해도 각자의 파일과 브랜치를 가진다. 여러 저장소를 프로젝트 그룹으로 묶고 각 작업을 GitHub·GitLab·Linear·Jira 항목과 연결하는 것도 같은 모델의 확장이다.

같은 문제에 세 에이전트를 붙일 수도 있다

공식 첫 세션 안내는 같은 프롬프트를 Claude Code, Codex, Cursor CLI에 각각 보내는 예시를 쓴다. 세 개의 worktree와 세 개의 diff를 만든 뒤 가장 나은 결과를 고르고, 나머지 둘을 버리는 방식이다. Orca의 split pane과 상태 표시가 어느 에이전트가 작업 중이고, 입력을 기다리고, 끝났는지 보여준다.

경쟁 실행은 항상 이득이 아니다. 모델 세 개가 같은 문제를 풀면 시간과 구독 한도도 세 번 쓴다. 정답을 고를 테스트나 acceptance criteria가 없으면 diff 세 개를 사람이 읽는 일이 새 병목이 된다. 구현 경로가 불확실하고 결과를 기계적으로 비교할 수 있는 버그, 리팩터링, UI 대안에서 먼저 써볼 만하다.

브라우저와 원격 컴퓨터도 worktree에 붙는다

Orca는 worktree마다 Chromium 창을 열 수 있다. Design Mode에서 화면 요소를 누르면 해당 HTML·CSS와 잘라낸 스크린샷을 에이전트에게 보낸다. UI 버그를 설명하기 위해 DOM 경로와 이미지를 따로 모으는 수고를 줄이는 기능이다. diff에 코멘트를 달아 다시 에이전트에게 보내고, 실패한 GitHub Actions 로그를 같은 화면에서 넘길 수도 있다.

에이전트를 노트북 밖에서 실행할 수도 있다. SSH 대상에 worktree를 만들면 코드와 에이전트는 원격 서버에서 돌고 에디터와 diff는 로컬에 남는다. 연결이 끊겨도 원격 세션은 계속 실행된다. iOS·Android companion은 데스크톱과 페어링해 상태와 최근 터미널 출력을 보고, 짧은 답을 보내거나 source control을 확인하는 리모컨에 가깝다. 공식 문서는 모바일 연결을 데스크톱과 휴대폰 사이의 직접 연결로 설명하며 cloud relay는 사용하지 않는다고 밝힌다.

worktree는 보안 샌드박스가 아니다

권한 기본값은 도입 전에 바꿔볼 부분이다. Orca는 지원하는 에이전트를 처음 실행할 때 Claude Code의 --dangerously-skip-permissions, Codex의 --dangerously-bypass-approvals-and-sandbox 같은 완전 자율 플래그를 미리 넣는다. 설정에서 전체 기본값을 Manual로 바꿀 수 있지만, 설치 직후의 설계 의도는 worktree를 작업용 샌드박스로 삼는 것이다.

Git worktree가 나누는 것은 브랜치와 파일 checkout이다. 같은 컴퓨터의 환경변수, SSH 키, 클라우드 인증, 데이터베이스, 포트, 실행 중인 프로세스까지 격리하지는 않는다. 에이전트가 저장소 밖의 파일을 지우거나 외부 시스템에 쓰는 위험도 diff를 버린다고 되돌아오지 않는다. 민감한 저장소에서는 먼저 Manual 권한으로 바꾸고, 계정과 secret, 배포 권한을 작업별로 제한해야 한다. 더 강한 격리가 필요하면 Orca가 지원하는 별도 VM·컨테이너형 per-workspace 환경을 검토하는 편이 맞다.

오르카가 값을 하는 순간

작은 수정 하나를 한 에이전트에게 맡기는 사람에게 Orca는 터미널 위에 화면을 하나 더 얹는다. 반대로 독립된 작업을 세 개 이상 동시에 돌리고, Claude와 Codex의 결과를 비교하고, 원격 서버의 장시간 작업까지 관리한다면 작업 전환 비용을 줄일 수 있다. 특히 작업마다 branch와 worktree를 만드는 규칙은 알고 있지만 매번 터미널에서 직접 만들고 정리하는 팀에 잘 맞는다.

도입 판단은 저장소 하나로 끝낼 수 있다. 권한을 Manual로 바꾸고, 서로 독립된 작업 두세 개만 Orca worktree에 배치한다. 작업 생성부터 검토 가능한 diff까지 걸린 시간, 사람이 다시 설명한 횟수, 버린 병렬 실행의 수를 기록한다. 이 숫자가 줄지 않으면 대시보드 하나만 늘어난 셈이다.


주요 출처: Orca, 공식 홈페이지What is Orca?; Orca Docs, Worktrees, Your first 3-agent session, Agents & sessions, SSH worktrees, Mobile companion, Privacy & Telemetry; stablyai/orca 공개 저장소. worktree의 격리 경계, 경쟁 실행의 비용, 좁은 파일럿 제안은 Zero Draft Lab의 분석입니다.