12k
All articles

What Is Orca? A Desktop IDE for AI Coding Agents

See how Orca runs AI coding agents side by side in separate git worktrees, compares their diffs, and adds review tools—and when tmux is enough.

OpenReplay Team
OpenReplay Team
What Is Orca? A Desktop IDE for AI Coding Agents

Orca is a free, MIT-licensed desktop app from Stably AI that runs the command-line coding agents you already use, such as Claude Code, Codex, OpenCode and Pi, side by side, with each agent working in its own git worktree.

If you already run two agents across a couple of tmux panes, you know how it goes: a worktree created by hand, a pane you lost track of, and a diff you compare by scrolling two terminals at once. Orca puts that loop in one window. This article covers what Orca is, what it adds over a terminal, how a two-agent comparison works in practice, and when a terminal is still enough.

Key Takeaways

  • Orca hosts no AI model. It launches each agent’s own CLI, and that agent runs on your existing subscription.
  • Every Orca task gets its own real git worktree, branched from the repository’s default branch unless you choose another ref.
  • By default Orca launches agents with their permission-bypass flags, such as --dangerously-skip-permissions for Claude Code. You can switch this to Manual in settings.
  • Running two agents on the same prompt means paying for, and using up, two agents’ quotas.
  • If you rarely run more than one agent at a time, tmux and manually created worktrees cover most of what Orca does.

What Is the Orca IDE?

Orca is a desktop environment for running several CLI coding agents in parallel, and it ships with no AI of its own. Its documentation defines it as a desktop IDE for running multiple AI coding agents side by side, and the project’s homepage calls it an “agent development environment” (ADE). The source and the MIT license are in the stablyai/orca repository.

Orca does not host or bundle any AI model. Every agent it launches runs on that agent’s own subscription. The docs are explicit on this point: you bring the agents and the Claude, Codex or OpenCode subscriptions you already have. It also doesn’t replace git. Every worktree is a real git worktree, and you can cd in and use plain git whenever you want. If the isolation model is new to you, read using git worktrees with AI coding agents first.

The supported agents page lists Claude Code, Codex, OpenCode, Pi, Gemini, Cursor CLI and others, and Orca can also run any other CLI agent. The desktop app runs on macOS (Apple Silicon and Intel), Windows and Linux.

What Does Orca Add Over a Plain Terminal?

Orca adds a shared UI around tasks you would otherwise wire up yourself: worktree creation, pane layout, diff review and git hosting. The README lists the main features:

  • Parallel Worktrees: send one task to several agents, each in its own worktree, then compare the results and keep the best one.
  • Terminal Splits: arrange agent terminals in split panes inside a single window.
  • Design Mode: click an element in Orca’s embedded Chromium browser to send its HTML, computed CSS and a cropped screenshot to the active agent as one attachment. When a dev source map is available, the source file and line go with it.
  • GitHub & Linear: work with hosted reviews, issues and Actions, and Linear items, without leaving the app. GitLab merge requests get the same review flow, and Jira items have their own drawer.
  • Annotate AI Diffs: comment on individual lines of an agent’s diff and send those comments back to that agent.
  • SSH Worktrees: run agents on a remote machine over SSH. Agents and the git worktree run on the remote; the editor, diff and UI stay on your laptop. For the server side, see setting up a remote box for agentic coding.
  • Mobile Companion: a beta app for iOS and Android that lets you monitor agents, check usage and switch accounts from your phone.
  • Orca CLI: the Orca CLI scripts the running app from any shell, for example with orca worktree create, and can drive the built-in browser.

Design Mode improves what goes into the agent. To see whether a UI change actually behaves for real users after it ships, for example whether a restyled button still gets clicked, you need to review production sessions.

How Do You Compare Two Agents on One Task in Orca?

Comparing two agents in Orca means giving each agent its own worktree, pasting the same prompt into both, and reviewing the two diffs side by side. The first-session guide follows a loop of add, worktree, agent, split, diff and ship. Here is that loop with two agents working on the same prompt.

Install from the download page or with a package manager:

# macOS (Homebrew): use the full tap name; bare `orca` is an unrelated Plotly cask
brew install --cask stablyai/orca/orca

# Arch Linux (AUR)
yay -S stably-orca-bin
  1. Add the repo. Click Add Repo and choose a local checkout. Orca uses the repository’s default branch as the base ref, and every new worktree branches from it unless you pick a different branch or commit.
  2. Create a worktree. Click + and name the task.
  3. Pick an agent. Choose one from the agent combobox in the new terminal. Orca launches the agent’s CLI in the right working directory and forwards your subscription credentials.
  4. Repeat for a second agent. Create another worktree, choose a different agent and paste the same prompt.
  5. Split panes. Drag a worktree’s tab to the right or bottom edge of a pane to split it.
  6. Compare and annotate. Open each worktree’s diff view. Use Annotate AI Diff to send line comments to the agent whose result is closer.
  7. Commit and push. Commit and push from Orca.
  8. Delete the loser. Orca asks you to confirm, then removes the worktree directory and its branch. In a bulk delete, if git refuses to drop a branch because it may contain unmerged commits, Orca keeps it, and you can force-delete it from a “Review N Branches” prompt.
WorktreeAgentPrompt
fix-login-raceClaude CodeSame
fix-login-race-2CodexSame

Before step 3, know the defaults. Orca launches every supported agent with its full-autonomy permission flag pre-applied: Claude with --dangerously-skip-permissions, Codex with --dangerously-bypass-approvals-and-sandbox, Gemini with --yolo. To get approval prompts back, switch from Yolo to Manual under Settings → Agents → Agent Permissions, as the supported agents page explains. Agents with custom launch arguments keep their own settings.

The first-session flow stops at push. Orca can also open PRs and track checks inline; the GitHub docs cover how.

What Are the Downsides of Orca?

The two biggest costs of adopting Orca are how fast the project changes and how much agent usage it multiplies.

  • It moves fast. The project ships changes often, and the README itself points to the changelog as the most current feature list. Check the releases page before you rely on a specific behavior.
  • You pay per agent. Every agent you run uses its own subscription, and running two in parallel burns through two quotas and two sets of rate limits.
  • Track your usage. Orca shows usage and rate limits for Claude Code, Codex and several other agents.
  • Privacy. Read Orca’s Privacy & Telemetry page before you install it on a work machine.

When Is a Terminal Plus tmux Enough?

If you run one agent at a time, a terminal with tmux and manually created worktrees covers most of what Orca does. Orca is worth adopting when you regularly run several agents in parallel and want their terminals, diffs, review comments and commits in one window. The tmux guide for AI agents covers the terminal-only setup. This is roughly what Orca automates:

git worktree add -b fix-login-race ../fix-login-race origin/main
git worktree add -b fix-login-race-2 ../fix-login-race-2 origin/main

tmux new-session -d -s race -c ../fix-login-race
tmux split-window -h -t race -c ../fix-login-race-2
tmux attach -t race
# start one agent CLI in each pane, paste the same prompt, then:
# diff against the base, including commits (run `git add -A` first to include new files)
git -C ../fix-login-race diff origin/main
git -C ../fix-login-race-2 diff origin/main

# discard the loser (Orca removes the directory and branch after you confirm)
git worktree remove --force ../fix-login-race-2
git branch -D fix-login-race-2

Replace origin/main with your default branch. git branch -D force-deletes the branch without asking, while Orca asks for confirmation first.

Needtmux + worktreesOrca
One agent at a timeEnoughOverkill
Agent approval promptsKept by defaultBypassed by default
Side-by-side diff review with line commentsManualBuilt in
Clicking UI elements to send them to an agentNoDesign Mode
Checking on agents from your phoneVia SSHCompanion app

Is Orca Worth It?

Orca is worth it if you regularly run several agents in parallel: it adds no new AI, but it saves you the manual work of running several agents you already pay for. Try one two-agent comparison on a real bug, check the permission setting first, and see whether the diff review saves more time than the second subscription costs.

FAQs

Does Orca send my source code or prompts to Stably AI?

No. Orca's Privacy & Telemetry docs say it does not collect source code, file contents, prompts, agent output or terminal output. Packaged builds send anonymous usage telemetry tied to a random ID stored on your machine. You can turn it off under Settings, then Privacy, with the 'Share anonymous usage data' toggle, or by setting DO_NOT_TRACK=1 or ORCA_TELEMETRY_DISABLED=1.

Does Orca work with WSL on Windows?

Yes. For repositories stored inside a WSL distro, Orca launches terminals through wsl.exe for that distro. When wsl.exe --status succeeds, Orca also offers WSL as a default-shell choice next to PowerShell and Command Prompt. Install each agent CLI and the GitHub CLI in the same environment Orca launches, either WSL or native Windows.

Can Orca use git worktrees I created outside Orca?

Yes. Worktrees you create with git worktree add stay external until you choose to show them. If a repo hides them, click its hidden worktrees card and choose Show for the ones you want. Orca then lists those existing checkouts without creating new ones. Global defaults for external worktrees live under Settings, then General, then Workspace.

Do agents run on my phone with the Orca mobile app?

No. The mobile companion is a thin client. Your code, shells and agents stay on the desktop, and the phone only shows what is happening and sends your keystrokes back. To pair, you generate a one-time code in the desktop app and paste it into the phone's Pair screen. Codes expire after a few minutes.

Understand every bug

Uncover frustrations, understand bugs and fix slowdowns like never before with OpenReplay — self-hosted, with full data ownership.

Star on GitHub

We use cookies to improve your experience. By using our site, you accept cookies.