Orca is the next-gen IDE for building with coding agents
Find a file
Neil 9d56108e89
fix(agents): detect all user-installed CLIs by hydrating PATH from login shell (#843)
* fix(agents): detect opencode/pi CLIs installed under ~/.opencode/bin and ~/.vite-plus/bin

Packaged Electron inherits a minimal PATH without shell rc files, so
agent install-script fallback dirs stay invisible to `which` probes —
the Agents settings page then shows OpenCode/Pi as "Not installed"
even when the user can run them from Terminal.

Add ~/bin, ~/.opencode/bin, and ~/.vite-plus/bin to the packaged PATH
augmentation so preflight detection matches shell behavior.

Fixes #829

* feat(agents): hydrate PATH from user's login shell + Agents Refresh button

Packaged Electron inherits a minimal launchd PATH that misses whatever
the user's shell rc files append — ~/.opencode/bin, ~/.cargo/bin, nvm
shims, pyenv, custom tool dirs. The preceding commit hardcoded two known
install locations; this replaces that whack-a-mole pattern with a
generic approach.

On packaged startup (non-Windows), spawn `${SHELL} -ilc 'echo $PATH'`
with a 5s timeout, parse the delimited PATH, and prepend any new
segments to process.env.PATH. The result is cached for the app session
so we pay the shell-init cost at most once.

Surface a Refresh button in Settings > Agents that forces a re-probe
and re-detects installed agents — handy right after installing a new
CLI, no restart needed.

Live-verified that a `zsh -ilc` spawn with a minimal launchd-style env
still resolves the user's full PATH (32+ segments including the
rc-appended dirs).

* refactor(hydrate-shell-path): simplify dedup with Set + Set.difference

Set preserves insertion order, so PATH first-match-wins semantics are
preserved without manual tracking. Set.prototype.difference (Node 22+)
expresses the new-segments calculation in mergePathSegments as the
set-difference operation it always was.
2026-04-19 14:36:30 -07:00
.agents/skills fix: close editor/diff tabs should navigate to visual neighbor tab (#693) 2026-04-15 21:06:37 -07:00
.claude/skills feat(editor): preserve Cmd+B for bold in markdown editor (#802) 2026-04-18 10:08:25 -07:00
.github ci: run E2E tests on every PR, surface on release (non-blocking) (#842) 2026-04-19 13:48:27 -07:00
.husky Replace eslint/prettier with oxlint/oxfmt, add pre-commit hooks 2026-03-16 20:38:27 -07:00
config fix: strip ELECTRON_RUN_AS_NODE from dev script environment (#769) 2026-04-17 13:14:40 -07:00
docs feat(codex-accounts): shared runtime home for account switching (#768) 2026-04-17 21:51:06 -07:00
patches fix: resolve posix_spawnp failure in daemon's node-pty spawn (#762) 2026-04-17 10:37:56 -07:00
resources refactor: reorganize project structure for build assets and scripts (#419) 2026-04-09 12:28:52 -07:00
scripts feat: Add SSH remote support (beta) (#590) 2026-04-13 19:23:09 -07:00
skills/orca-cli docs: update orca-cli skill to support worktree comment updates as default agent behavior (#341) 2026-04-06 13:57:41 -07:00
src fix(agents): detect all user-installed CLIs by hydrating PATH from login shell (#843) 2026-04-19 14:36:30 -07:00
tests ci: run E2E tests on every PR, surface on release (non-blocking) (#842) 2026-04-19 13:48:27 -07:00
.editorconfig Initial commit 2026-03-16 20:29:24 -07:00
.env.e2e feat: add idempotent E2E test suite with headless Electron support (#671) 2026-04-19 12:09:32 -07:00
.gitignore feat: add idempotent E2E test suite with headless Electron support (#671) 2026-04-19 12:09:32 -07:00
.npmrc min release age = 1 day 2026-04-06 23:32:45 -07:00
.oxfmtrc.json Replace eslint/prettier with oxlint/oxfmt, add pre-commit hooks 2026-03-16 20:38:27 -07:00
.oxlintrc.json Lint long files (and add TS skills) (#23) 2026-03-22 12:12:54 -07:00
AGENTS.md feat: when closing a tab, go to previous tab (MRU) not nearest neighbor (#784) 2026-04-17 19:43:22 -07:00
CLAUDE.md feat: show merge conflicts in source control sidebar (#204) 2026-03-29 15:40:23 -07:00
components.json Shadcn 2026-03-16 22:27:51 -07:00
CONTRIBUTING.md docs: update README for CLI integration and improve conversion (#279) 2026-04-03 20:56:34 -07:00
dev-app-update.yml code release stuff 2026-03-19 00:36:36 -07:00
electron.vite.config.ts fix: bundle xterm deps into daemon-entry to fix packaged build crash (#759) 2026-04-17 09:29:29 -07:00
LICENSE Add MIT license 2026-03-28 10:19:14 -07:00
orca.yaml Add orca.yaml with setup script (#685) 2026-04-15 19:01:08 -07:00
package.json 1.3.5 2026-04-19 13:04:46 -07:00
pnpm-lock.yaml feat: add idempotent E2E test suite with headless Electron support (#671) 2026-04-19 12:09:32 -07:00
README.md docs: remove extra text 'X' from twitter badge (#781) 2026-04-17 17:02:51 -07:00
skills-lock.json Lint long files (and add TS skills) (#23) 2026-03-22 12:12:54 -07:00
tsconfig.json feat: Add SSH remote support (beta) (#590) 2026-04-13 19:23:09 -07:00
vitest.config.ts fix: harden terminal pane lifecycle for split groups (#641) 2026-04-14 16:23:01 -07:00

Orca

Orca

Supported Platforms Discord Follow on X

English · 中文 · 日本語

The AI Orchestrator for 100x builders.
Run Claude Code, Codex, or OpenCode side-by-side across repos — each in its own worktree, tracked in one place.
Available for macOS, Windows, and Linux.

Download at onOrca.dev

Orca Screenshot

Supported Agents

Orca supports any CLI agent (not just this list).

Claude Code   Codex   Gemini   Pi   Hermes Agent   OpenCode   Goose   Amp   Auggie   Charm   Cline   Codebuff   Continue   Cursor   Droid   GitHub Copilot   Kilocode   Kimi   Kiro   Mistral Vibe   Qwen Code   Rovo Dev


Features

  • No login required — Bring your own Claude Code or Codex subscription.
  • Worktree-native — Every feature gets its own worktree. No stashing, no branch juggling. Spin up and switch instantly.
  • Multi-agent terminals — Run multiple AI agents side-by-side in tabs and panes. See which ones are active at a glance.
  • Built-in source control — Review AI-generated diffs, make quick edits, and commit without leaving Orca.
  • GitHub integration — PRs, issues, and Actions checks linked to each worktree automatically.
  • Notifications — Know when an agent finishes or needs attention. Mark threads unread to come back later.

Install


[New] Hot Swap Codex Accounts

Multiple Codex accounts? Switch in one click.

If you run multiple Codex accounts to get the best token deal, Orca lets you hot-swap between them instantly — no re-login, no config files. Just pick an account and keep building.

Orca Codex Account Switcher — hot swap between multiple Codex accounts


[New] Per Worktree Browser & Design Mode

See your app. Click any element. Drop it into the chat.

Orca ships with a built-in browser right inside your worktree. Preview your app as you build, then switch to Design Mode — click any UI element and it lands directly in your AI chat as context. No screenshots, no copy-pasting selectors. Just point at what you want to change and tell the agent what to do.

Orca Design Mode — click any UI element and drop it into the chat


[New] Introducing the Orca CLI

Agent orchestration from your terminal.

Let your AI agent control your IDE. Use AI to add repos to your IDE, spin up worktrees, and update the current worktree's comment with meaningful progress checkpoints directly from the terminal. Ships with the Orca IDE (install under Settings).

npx skills add https://github.com/stablyai/orca --skill orca-cli

Community & Support

  • Discord: Join the community on Discord.
  • Twitter / X: Follow @orca_build for updates and announcements.
  • Feedback & Ideas: We ship fast. Missing something? Request a new feature.
  • Show Support: Star this repo to follow along with our daily ships.

Developing

Want to contribute or run locally? See our CONTRIBUTING.md guide.