← All posts

AI

Orca: Run Five AI Coding Agents in Parallel and Pick the Winner

Desktop app for running multiple AI coding agents in parallel worktrees, tracking them in one place with mobile monitori

Developer workspace showing multiple AI coding agents working in parallel with side-by-side code comparison and mobile monitoring

Here's the problem I've been running into with AI coding agents: I give Claude Code a complex task, it takes 20 minutes to implement, I review the result, and realize the approach is fundamentally wrong — wrong architecture, wrong library choice, wrong tradeoffs. I could have caught this earlier if I'd seen multiple solutions to compare, but I don't have time to run the same prompt through Claude, then Codex, then OpenCode, then manually diff the results. So I pick one agent, cross my fingers, and hope it makes good choices. Often it doesn't.

Orca is a desktop app that solves this by running multiple AI coding agents in parallel, each in its own git worktree, all tracked in one interface. You write one prompt, fan it out to Claude Code, Codex, OpenCode, Grok, and Pi simultaneously, and watch them work side-by-side. When they finish, you compare the five implementations, merge the best one (or cherry-pick pieces from multiple), and discard the rest. It's A/B testing for AI-generated code, at scale, with full git isolation so experiments don't conflict. Plus a mobile companion app so you can monitor agents and send follow-ups from your phone.

I haven't installed it yet, but the use case is too compelling: if I'm going to trust AI to write production code, I should be seeing multiple solutions and choosing the best, not blindly accepting the first draft from whichever agent I happened to use. Orca makes that practical.

What Orca Actually Is

Orca is a cross-platform desktop application (macOS, Windows, Linux) that provides:

  • A unified interface for running any CLI-based coding agent — Claude Code, Codex, OpenCode, Grok, Cursor, GitHub Copilot, and 20+ more. If it runs in a terminal, it runs in Orca.
  • Parallel worktree orchestration — Each agent works in its own isolated git worktree (a separate working directory pointing to the same repo). You can run five agents on the same prompt simultaneously without conflicts.
  • Rich development environment — Built-in code editor (VS Code engine), terminals with WebGL rendering and infinite splits, embedded Chromium browser, file explorer, diff viewer.
  • Integration with GitHub and Linear — Browse PRs, issues, and project boards in-app. Open a worktree from any task, review without leaving Orca.
  • Mobile companion app — Monitor agents from your phone, get notified when they finish, send follow-up prompts from anywhere.
  • CLI scripting interface — Automate workflows with orca worktree create, snapshot, click, and other commands.

The core innovation is parallel worktrees. Instead of running one agent, reviewing, then running another agent, reviewing again (serial workflow, slow), you run all agents at once, review in parallel, and choose the winner (parallel workflow, fast).

The Parallel Worktree Workflow

Here's how I'd use Orca for a complex feature (based on the docs and demo):

  1. Define the task: Write a prompt describing the feature — "Add user authentication with OAuth2 support for Google and GitHub."
  2. Fan out to agents: Send the same prompt to Claude Code (Opus 4.8), Codex (GPT-5.5), OpenCode, Grok, and Pi — all at once.
  3. Each agent works in isolation: Orca creates five git worktrees, one per agent. They work simultaneously without stepping on each other's changes.
  4. Monitor progress: Watch all five terminals in split view. See which agent is making progress, which is stuck, which is asking clarifying questions.
  5. Review the results: When agents finish, compare the five implementations side-by-side in Orca's diff viewer. Which one has better error handling? Which chose the right library? Which has cleaner code?
  6. Merge the winner: Pick the best implementation (or cherry-pick pieces from multiple), merge to main, discard the rest. The worktrees are isolated, so cleanup is trivial — just delete the worktrees you don't want.

This workflow is impossible with traditional tools. Running five agents manually would require five terminal tabs, five separate repos (or careful branch management), manual diffing, and constant context switching. Orca makes it one-click: same prompt, five agents, parallel execution, integrated comparison.

Why Parallel Worktrees Matter

Traditional git branching: you're on main, you create a branch feature-auth, you make changes, you test, you merge. If you want to try a different approach, you either:

  • Commit what you have, create a new branch, start over (slow, pollutes history).
  • Stash changes, create a new branch, code, compare (manual, error-prone).
  • Use separate clones of the repo (wastes disk space, hard to compare).

Git worktrees: you create multiple working directories all pointing to the same .git repository. Changes in one worktree don't affect others. You can work on five features simultaneously, each in its own directory, without branch-hopping or stashing. When you're done, you merge the ones you want and delete the rest.

Orca uses worktrees to isolate agents. Each agent gets its own worktree, so five agents can modify the same file simultaneously without conflicts. You compare the results by switching between worktrees in Orca's UI, not by manually checking out branches and running diffs.

This is the key architectural choice that makes parallel AI experimentation practical. Without worktrees, you'd need complex orchestration to prevent agents from clobbering each other's work. With worktrees, it's trivial — they're already isolated by design.

The Mobile Companion App

One of the more unexpected features: Orca has mobile apps (iOS and Android) that pair with the desktop app. Use cases:

  • Monitor long-running tasks: You start five agents working on a complex refactor, then go to lunch. Your phone notifies you when they finish. You review the results on your phone, pick the winner, and merge — all without returning to your desk.
  • Send follow-ups from anywhere: An agent finishes but asks a clarifying question. You're in a meeting. You pull out your phone, read the question in the Orca mobile app, type a reply, and the agent continues. No need to interrupt the meeting or wait until you're back at your computer.
  • Check progress remotely: You're commuting home, wondering if the agents finished the task you started. Open the mobile app, check the status, see which agents are done and which are still working.

This is a workflow optimization I didn't know I needed but makes sense once I think about it: AI agents are async workers. They take minutes to hours to complete tasks. I shouldn't be sitting at my computer waiting for them — I should be notified when they finish, wherever I am, and able to respond from wherever I am. The mobile app makes that practical.

Design Mode: Click to Prompt

Another clever feature: Orca embeds a Chromium browser with "Design Mode." When enabled, you click any UI element on a live website, and Orca automatically captures:

  • The element's HTML
  • Its computed CSS styles
  • A cropped screenshot of just that element

All three are inserted into the agent's prompt context. Use case:

  1. You're building a clone of a competitor's checkout flow.
  2. You open their site in Orca's embedded browser.
  3. You enable Design Mode, click the checkout button.
  4. Orca sends the button's HTML, CSS, and screenshot to your agent with the prompt: "Recreate this button."
  5. The agent builds a pixel-perfect replica because it has exact styles and visual reference.

This is similar to Boneyard's skeleton generation (extracting UI structure automatically) but focused on single elements rather than full pages, and integrated into the agent prompt flow rather than being a standalone build step. It's a "click to clone" workflow that eliminates the manual work of inspecting DevTools and copying styles.

The Features I'm Planning to Test

Here's what I want to validate once I install Orca:

Parallel Agent Comparison

Give the same complex task to three agents (Claude Code, Codex, OpenCode) in parallel worktrees. Measure:

  • How different are the implementations? (Do they all converge on the same solution, or do they take genuinely different approaches?)
  • Which agent produces the best code? (Correctness, performance, readability, test coverage)
  • Is comparing five implementations faster than iterating on one? (Parallel review vs. serial refinement)

If parallel comparison consistently surfaces better solutions than single-agent iteration, Orca's value proposition is proven. If all agents produce similar results, parallel execution is overkill for most tasks.

SSH Worktrees for Remote Work

Orca supports SSH worktrees: run agents on a remote server (a beefy cloud instance with GPUs, more RAM, faster compute) while controlling them from the local Orca UI. Test:

  • Does SSH latency make the workflow feel sluggish, or is it seamless?
  • Can I edit files, run terminals, and review diffs over SSH as smoothly as local?
  • Does auto-reconnect work reliably if my connection drops?

If SSH worktrees work well, it unlocks a powerful pattern: run agents on powerful remote hardware (which is cheaper than buying a local workstation with 128GB RAM and an H100 GPU) while keeping the convenience of a local UI. That's the ideal setup for compute-heavy AI workflows.

Mobile App for Async Monitoring

Start a long-running task (port a legacy app, refactor a large module), leave my desk, and monitor from my phone. Test:

  • Do notifications arrive reliably when agents finish?
  • Can I meaningfully review code on a phone screen, or is it too cramped?
  • Can I send follow-up prompts from mobile and have agents continue seamlessly?

If the mobile experience is good, it changes how I think about task scheduling — I can start agents on complex work before leaving for the day, check progress on my commute, and have refined results waiting when I arrive. If the mobile UX is clunky, it's a novelty I won't use.

Design Mode for UI Cloning

Use Design Mode to extract a complex UI component (a navbar, a modal, a form) and have an agent recreate it. Compare the result to manually describing the component in a prompt. Measure:

  • Is the Design Mode version pixel-perfect, or does it still require manual refinement?
  • How much time does it save vs. inspecting DevTools and writing a detailed prompt?

If Design Mode produces high-fidelity recreations with minimal cleanup, it becomes the default workflow for UI cloning. If it's only 80% accurate and requires significant manual fixes, it's a time-saver for simple components but not a replacement for careful design work.

How It Compares to Running Agents Manually

The traditional multi-agent workflow (without Orca):

  1. Open Claude Code in a terminal, give it a task, wait for it to finish.
  2. Review the result. If it's good, done. If not, give it feedback, wait again.
  3. If still not satisfied, open a second terminal, run Codex on the same task.
  4. Manually diff Claude's output vs. Codex's output in separate directories or branches.
  5. Cherry-pick the best parts, manually merge, test, commit.

That workflow takes 30-60 minutes for a complex task and involves a lot of context switching and manual labor (diffing, merging, cleanup). The Orca workflow:

  1. Write one prompt, send to Claude Code, Codex, and OpenCode simultaneously.
  2. Wait for all three to finish (same wall-clock time as one agent, since they're parallel).
  3. Compare the three results in Orca's diff viewer (built-in, no context switch).
  4. Merge the winner with one click, discard the others.

The Orca workflow should take 10-15 minutes for the same task, with less manual work and less context switching. The tradeoff: you're running three agents, so you're burning 3x the API credits. But if the result is better quality and arrives faster (in terms of my time, not agent time), that's a worthwhile tradeoff for high-stakes work.

Supported Agents (The Full List)

Orca's README lists support for 30+ CLI agents. The key insight: if it runs in a terminal, it runs in Orca. The app doesn't have special integrations for each agent — it just wraps terminal sessions and adds orchestration on top.

Some of the notable agents:

  • Claude Code (Anthropic) — the agent I use most, Opus 4.8 recommended
  • Codex (OpenAI) — GPT-5.5 reasoning model
  • OpenCode (open-source alternative)
  • Grok (xAI) — real-time info via X integration
  • Cursor (the IDE has a CLI mode)
  • GitHub Copilot (CLI interface)
  • Continue (open-source, self-hosted option)
  • Devin (autonomous agent)
  • Aider (git-integrated pair programmer)
  • And 20+ more — the list is growing weekly as new agents launch.

This agent-agnostic design is smart: Orca doesn't need to update when a new agent launches. If a new agent has a CLI, it works in Orca day one. That's future-proof in a space that's evolving rapidly.

Potential Rough Edges (From the Docs)

I haven't installed Orca yet, but based on the feature list and my experience with complex development tools, here are the likely friction points:

  • Resource usage: Running five agents simultaneously means five LLM conversations, five sets of file operations, five terminals rendering in parallel. That's RAM-intensive and network-intensive (API calls). Older laptops might struggle.
  • Cost: Running five agents on one task burns 5x the API credits. For exploration or high-stakes work, that's fine. For routine tasks, it's expensive. I'll need to be selective about when to use parallel agents vs. single agent.
  • Worktree management: Git worktrees are powerful but not intuitive for developers who haven't used them. The learning curve might be steep. Orca abstracts some of this, but I'll still need to understand how worktrees interact with branches, remotes, and merges.
  • Diff complexity: Comparing five implementations of the same feature is cognitively demanding. I'll need clear criteria for what "better" means (faster? more readable? fewer dependencies? better test coverage?) or I'll waste time bikeshedding between similar solutions.
  • Mobile app limitations: Reviewing code on a phone screen is inherently constrained. Even with a good UI, I'll probably only use the mobile app for quick checks and follow-ups, not deep code review.
  • Setup overhead: Installing Orca, configuring agents, learning the UI, and understanding the worktree model is upfront investment. For solo developers with simple workflows, that might not pay off. For teams or complex projects, it should.

Use Cases Where Orca Makes Sense

Based on the feature set, here are the scenarios where Orca's orchestration is worth the overhead:

High-Stakes Features

You're implementing a critical feature (authentication, payment processing, data migration) where bugs are expensive. Run three agents in parallel, compare the results, and merge the implementation with the best error handling, test coverage, and security practices. The 3x API cost is negligible compared to the cost of shipping a bug.

Architectural Exploration

You're not sure which library, framework, or pattern to use. Run multiple agents with different constraints ("use library X", "use library Y", "use no external dependencies") and compare the results. See which approach leads to cleaner code, fewer dependencies, or better performance. Use the comparison to inform your architectural decision.

Porting or Refactoring

You're porting a legacy app to a new stack or refactoring a large module. Run agents with different strategies (big-bang rewrite vs. incremental migration, microservices vs. monolith) and compare the results. Pick the strategy that balances risk, effort, and maintainability.

Learning and Training

You're learning a new framework or language. Give the same task to multiple agents and study the different implementations. See which patterns each agent prefers, which libraries they choose, which edge cases they consider. Use the comparison as a learning resource — it's like having five senior developers show you different approaches to the same problem.

Remote/Distributed Teams

Your team is remote or distributed across time zones. Use SSH worktrees to run agents on shared cloud infrastructure. Team members in different locations can monitor progress via the mobile app and review results asynchronously. The worktree model keeps everyone's work isolated until merge time.

Pairing It With the AI Development Stack

Orca fits into a broader AI-assisted workflow alongside other tools I've bookmarked:

  • Orca: Orchestrates multiple AI coding agents in parallel worktrees, compares results, integrates with GitHub/Linear.
  • Contractor: Enforces disciplined workflow (Research → Plan → Execute → Review) for individual agents. Could run inside Orca worktrees to add structure to each agent's work.
  • Aider: Git-integrated pair programmer with manual commit control. Works in Orca's terminals as one of the supported agents.
  • ReviewDog: Automated linting in CI. Runs after Orca's agents finish and before merge, catching style issues automatically.
  • PR-Agent: AI-powered PR review. Adds another review layer after Orca's built-in diff comparison.

The stack would be: Orca orchestrates parallel agents → each agent follows Contractor's workflow (optional) → ReviewDog lints in CI → PR-Agent reviews logic → human does final review. Each layer operates at a different level of abstraction, and together they cover exploration (Orca), structure (Contractor), quality (ReviewDog), logic (PR-Agent), and judgment (human).

Why This Bookmark Is High-Priority

Two weeks ago I asked Claude Code to implement a caching layer for our API. It chose to use Redis. The implementation worked, but after shipping to production, we realized Redis was overkill — we didn't need persistence, we just needed in-memory caching. If I'd run the same prompt through Codex and OpenCode simultaneously, one of them might have suggested a simpler in-memory solution. I could have compared the three approaches, chosen the simpler one, and saved a week of operational complexity (running and monitoring Redis in production).

That's the problem Orca solves: AI agents make reasonable but not optimal choices. The first solution that works isn't always the best solution. By seeing multiple solutions in parallel, I'm more likely to find the simple, maintainable approach instead of accepting the first plausible draft.

I'm bookmarking Orca at the top of my "install this week" list. If parallel agent comparison consistently surfaces better solutions (simpler, faster, more maintainable) than single-agent iteration, it becomes a standard tool for any high-stakes feature work. If the overhead (setup, cost, review time) outweighs the quality improvement, I'll use it selectively for architectural decisions and exploration, but not for routine features.

The Test Plan

Here's how I'll validate Orca:

  1. Install and setup: Download Orca for macOS, install, configure three agents (Claude Code, Codex, OpenCode), verify they run in separate terminals.
  2. Simple parallel test: Give the same simple task to all three agents ("write a function to validate email addresses"). Compare the results. Are they meaningfully different, or do they converge on the same solution?
  3. Complex parallel test: Give a complex architectural task ("design a caching layer for this API") to all three. Compare not just the code but the design choices (library selection, architecture, tradeoffs). Measure whether seeing three approaches leads to a better decision.
  4. Worktree management: Create, switch, merge, and delete worktrees via Orca's UI. Verify I understand the mental model and can work efficiently without getting confused about which worktree I'm in.
  5. Mobile app: Install the iOS app, pair with desktop, start a long task, and leave my desk. Verify I get notified when it finishes and can send follow-ups from my phone.
  6. Design mode: Use Design Mode to extract a UI component and have an agent recreate it. Compare accuracy to manual prompting.
  7. SSH worktrees (optional): If I have access to a remote server, test running agents remotely and verify latency is acceptable.
  8. Cost tracking: Monitor API usage and calculate cost per task with parallel agents vs. single agent. Determine breakeven threshold (when is parallel worth the 3-5x cost?).

If steps 1-6 show that parallel comparison genuinely improves decision quality and the UI is smooth enough for daily use, Orca moves from "Bookmarked" to "Using" and becomes part of my standard workflow for complex features. If the overhead is too high or the quality delta is marginal, I'll use it selectively for exploration and architecture decisions but not for routine work.