Orca
TL;DR
Orca is an MIT-licensed desktop app from the stablyai organization for running several CLI coding agents side by side, each task in its own git worktree. It bundles terminals, a diff viewer, commit and pull request actions, SSH hosts and a mobile companion. It suits developers who run Claude Code, Codex or OpenCode in parallel on one repository.
Key facts
| Type | Orchestrator |
|---|---|
| Languages / SDKs | TypeScript |
| License | MIT |
| Pricing model | Open source, free |
| Orchestration pattern | Other |
| GitHub stars | 82,020 (as of 2026-09-30) |
| GitHub forks | 5,324 |
| Last push | 2026-09-30 |
| Latest release | v1.4.217 |
| Repository | stablyai/orca |
| Website | www.onorca.dev |
| Documentation | www.onorca.dev |
| Last verified | 2026-09-30 |
Key features
- Every task gets its own git worktree with its own branch, files and agent terminals, so parallel agents do not share a checkout. (source)
- Any CLI agent can be launched from the agent picker; a built-in list ships with one-click setup, and the docs mark Claude Code and Codex as deeply integrated (usage tracking, account hot-swap, hooks). (source)
- The README describes fanning one prompt across several agents in separate worktrees, comparing the results and merging one. (source)
- Diff review is built in: comment on diff lines and send the comments back to the agent, then commit, push and open a pull request from the same panel. (source)
- An experimental orchestration layer provides Runs, Tasks, supervised workers, inbox messages and decision gates, driven through the
orca orchestrationCLI. (source) - Worktrees can run on SSH hosts or on a remote Orca server (
orca servefor headless Linux), and an iOS and Android companion app monitors and steers agents. (source) - An
orcaCLI lets agents script Orca itself, for example creating worktrees or driving the built-in browser. (source)
Architecture and orchestration pattern
Pattern: Other
Orca is a desktop application with a local runtime. Each repository has a base ref; each task creates a git worktree on its own branch, and the agent terminals, editor tabs and browser tabs of that task are scoped to it. Orca starts the chosen agent's own CLI in that directory and forwards the user's subscription credentials, so it does not proxy model calls itself.
Coordination between agents is manual by default: the person opens worktrees, launches agents, reads diffs and decides what to merge. An optional orchestration feature, which the docs label experimental, adds a Run (a namespace and inbox), Tasks with dependencies, Dispatches (one attempt of a task on a terminal) and supervised workers that report back with worker_done messages. The coordinator can block a task on a decision gate.
State lives in the local Orca runtime and in the git worktrees. The runtime can also sit on another machine (SSH target, Remote Orca Server or cloud VM the user owns), with the desktop or phone acting as a client. The README says the relay that pairs the mobile app with a desktop host is in the same repository under cloud/.
Human in the loop
The human is in the loop by default: agents run in visible terminals, and diffs are reviewed in the app. New launches pre-fill each agent's permission-bypass flag (Yolo); Settings has an Agent Permissions switch to Manual, which restores the agent's own prompts. Pushing is explicit and Orca does not silently force-push. Notifications signal when an agent finishes or needs attention. In the experimental orchestration layer, decision gates block a task until the coordinator resolves them, and worker-stop ends a worker.
Harnesses it can drive
- Claude Code (evidence)
- Codex (evidence)
- OpenCode (evidence)
- OpenClaw (evidence)
- Hermes (evidence)
Protocols
| Protocol | Support | Note |
|---|---|---|
| MCP | Partial evidence | The docs say MCP servers are registered under Settings, Integrations, MCP and their tools then appear inside agent CLIs that support MCP. Orca manages the registration; no Orca-hosted MCP server or Orca-side MCP client is described. |
| A2A | Unknown | Searched the README, the docs pages under docs/site/content and GitHub code search for 'a2a'; nothing about the Agent2Agent protocol found. |
| AG-UI | Unknown | Searched the README, docs and GitHub code search for 'ag-ui'; nothing found. Not checked against the AG-UI README listing beyond that search. |
Best for
- Running several Claude Code, Codex or OpenCode sessions at once, one git worktree per task, from one desktop window. (shortlist)
- Comparing the output of different agents on the same prompt and merging the best branch. (shortlist)
- Reviewing agent diffs with line comments and shipping a pull request without leaving the app. (shortlist)
- Leaving agents running on an SSH host or a remote Orca server and checking on them from a phone.
Not for
- Users who need a security boundary: the docs say a worktree is an isolated checkout, not a sandbox.
- Terminal-only workflows on a headless machine that want a TUI; the primary interface is a desktop app (headless use goes through
orca serveand a client). - Automated agent-to-agent messaging over open protocols; no A2A or AG-UI support is documented.
Quickstart
brew install --cask stablyai/orca/orca # Desktop app first (README also lists .dmg, .exe, AppImage and AUR builds)
brew install --cask stablyai/orca/orca
# Orchestration is experimental: enable it under Settings > Experimental,
# then check that the CLI can reach the running app
orca status --json
orca orchestration run-create --objective "Split checkout QA and summarize blockers" --json
orca orchestration task-create --spec "Audit billing settings for mobile layout" --task-title "Billing audit" --json
orca orchestration worker-start --task <taskId> --worktree new-child --name billing-audit --agent codex --setup run --json
orca orchestration check --wait --types worker_done,escalation,question --timeout-ms 900000 --json
Common pitfalls
- The
orcaCLI talks to the running desktop app;orca status --jsonmust succeed before orchestration commands work. - Orchestration must be enabled under Settings > Experimental. The older
orca orchestration runandrun-stopcommands are retired and do nothing. - New agent launches default to each CLI's permission-bypass flag (for example
--dangerously-skip-permissionsfor Claude). Switch Settings > Agents > Agent Permissions to Manual to keep prompts. - On Linux the CLI binary is named
orca-ide(for exampleorca-ide serve --pairing-address <host>). - Each agent CLI must be installed and logged in separately; Orca launches it and forwards your credentials.
Pros
- Worktree-per-task isolation is the core model, so parallel agents do not overwrite each other's files. (source)
- Very wide agent coverage: the supported-agents page lists Claude Code, Codex, OpenCode, Hermes, OpenClaw and dozens more, and any CLI agent can be launched. (source)
- Review and shipping happen in one place: diff annotations, commit, push, and hosted PR creation, with explicit rather than silent force pushes. (source)
- Runs locally, over SSH, or on a self-run remote server, and does not sell managed hosting. (source)
- MIT licensed, with frequent releases (v1.4.217 on 2026-09-29). (source)
Cons
- The structured multi-agent orchestration layer is labelled experimental and must be switched on in settings. (source)
- Default launches pass each agent's permission-bypass flag, and the docs warn a worktree is not a security sandbox. (source)
- Packaged builds send anonymous usage telemetry (agent kinds, token counts, lifecycle events); it is off when
DO_NOT_TRACK=1orORCA_TELEMETRY_DISABLED=1is set. (source) - Fast churn: the README says the project ships daily and its feature list is perpetually behind, so docs and behavior can change between releases. (source)
Alternatives
FAQ
Does Orca support MCP?
Partly. The docs describe registering MCP servers in Orca's settings so their tools show up in agent CLIs that support MCP. They do not describe Orca as an MCP server, and the record marks MCP as partial.
Is Orca free?
Yes. The README says it is free and open source under the MIT License, and no paid Orca plan is documented. You still pay your own agent providers, because Orca launches each agent's CLI with your credentials.
Which coding agents does it run?
The supported-agents page lists Claude Code, Codex, OpenCode, Hermes and OpenClaw among many others, and any CLI agent can be launched from a terminal.
Does Orca proxy model calls?
No. The first-session docs say it launches the agent's CLI in the worktree and forwards your subscription credentials.
Which platforms does it run on?
The desktop app is available for macOS, Windows and Linux; iOS and Android companion apps pair with a desktop host, and orca serve runs a headless server on Linux.
Sources
- Orca GitHub repository
- Orca README
- Orca docs home
- Orca homepage
- Docs: Worktrees
- Docs: Supported agents
- Docs: Annotate AI diffs
- Docs: Commit and push
- Docs: Orchestration
- Docs: Ways to run Orca
- Docs: CLI overview
- Docs: Skills registry and MCP
- Docs: Privacy and telemetry
- Docs: Install
- Docs: Your first 3-agent session
- Orca releases