◆ ADE · Agentic Dev Environment MIT 开源 ★ 28.7k Stars

指挥一支
AI 编程舰队

Orca 不是又一个 AI 编辑器,而是一个 ADE(智能体开发环境): 把一个提示词同时扇给五个智能体,每个跑在自己独立的 git worktree 里 —— 然后比对结果,合并赢家。

用你自己的订阅账号运行任意 CLI 编程智能体:Claude Code、Codex、OpenCode、Grok、Cursor、Pi…… 桌面端、手机端、VPS 全都跑得动。

28.7kStars
2.0kForks
TypeScript主语言
MITLicense
orca — parallel worktrees
Claude Code wt/refactor-auth Running
Codex wt/fix-race-cond Done
OpenCode wt/perf-terminal Running
Grok wt/i18n-catalog Ask
Pi wt/ssh-reconnect Done
Overview

IDE 管代码,ADE 管智能体

当你同时跑三五个编程智能体时,真正的瓶颈不再是写代码,而是:它们互相踩文件、你不知道谁在干什么、 谁卡住在等你回答、结果怎么比对合并。Orca 就是为这一层而生的控制台。

🌊隔离:一树一智能体

每个智能体自动分配一个独立的 git worktree,文件互不干扰。同一个仓库、同一个提示词,可以并行跑出五份不同的实现。

📡编排:一处看全局

所有会话的状态汇总在一个视图里 —— 谁在跑、谁跑完了、谁在等你批准。未读标记与通知让你不必盯着屏幕。

🔑自带订阅,不加价

Orca 本身不代理模型调用。你用自己的 Claude / Codex 订阅登录,账号切换器还能免登录热切换多个账号。

📱桌面 + 手机 + VPS

macOS / Windows / Linux 桌面端,iOS / Android 伴侣 App 远程盯梢,`orca serve` 还能在无头 Linux 服务器上跑。

Features

盒子里装了什么

Orca 团队自称「每日发版」,下面是官方特性墙上最能打的九项。

🌿

并行 Worktree

把一个提示词扇给五个智能体,每个在自己隔离的 git worktree 中作业。跑完横向比对差异,挑出最好的那份合并进主干。

docs/model/worktrees
📲

手机伴侣 App

在手机上监控与操控智能体:跑完推送通知,随时补一句追加指令。iOS 上架 App Store,Android 提供 APK。

iOS App Store · TestFlight · Android APK
⌨️

Ghostty 级终端

基于 xterm.js + WebGL 渲染的终端,无限分屏,滚动缓冲在应用重启后依然保留。团队为它专门做了打字延迟与滚动性能基准。

WebGL · 无限分屏 · 滚动历史持久化
🎨

Design Mode

在内嵌的真实 Chromium 窗口里点选任意 UI 元素,把它的 HTML、CSS 和裁剪截图一键塞进智能体的提示词里。前端改样式的效率外挂。

docs/browser/design-mode
🔗

GitHub & Linear 原生集成

应用内浏览 PR、Issue 与项目看板,从任意任务直接开一个 worktree 开工,评审不用切上下文。同时兼容 GitLab 等其他 Git 平台。

@linear/sdk · gh CLI
🖥️

SSH 远程工作树

把智能体跑在一台高配远程机上,本地照样有完整的文件编辑、Git 操作和终端体验,自动重连与端口转发都包含在内。

ssh2 · 自动重连 · 端口转发
💬

批注 AI Diff

在任意 diff 行上留评论,然后把这些评论整批送回智能体。审查、修改、提交全程不离开 Orca。

docs/review/annotate-ai-diff
🗂️

拖文件给智能体

内置 VS Code 同源的 Monaco 编辑器(全局自动保存),把文件或图片直接拖进提示框即可作为上下文。

@monaco-editor/react · 自动保存

Orca CLI

智能体也能反过来驾驶 Orca:orca worktree createterminal sendfile diffsnapshotclickfill —— 整条工作流都可脚本化。

docs/cli/overview

还有更多:Quick Open 跨工作树全局搜索、Claude / Codex 用量与限额追踪、Markdown / 图片 / PDF 富预览、 Computer Use(让智能体操作真实桌面应用)、通知与未读状态管理。官方原话是「我们每天发版,所以这个列表永远落后」—— Releases 页面才是真正的特性清单

Supported Agents

能在终端跑,就能在 Orca 跑

Orca 不绑定任何一家模型商。它的适配策略非常朴素:只要是 CLI 智能体,就能被托管。

Claude Code Codex OpenCode Pi Grok Cursor GitHub Copilot MiMo Code Amp OpenClaude Antigravity oh-my-pi Hermes Agent Devin Goose Auggie Autohand Code Charm Crush Cline Codebuff Command Code Continue Droid Kilocode Kimi Kiro Mistral Vibe Qwen Code Rovo Dev + 任意 CLI 智能体
Architecture

一个认真做工程的 Electron 应用

源码约一万个文件,主语言 TypeScript,多进程分层清晰。仓库里那份 AGENTS.md 也颇能说明团队品味: 禁止 utils / helpers 这类含糊命名,禁止关掉 max-lines 规则, 所有 UI 必须走统一设计令牌。

LAYER 01

main(主进程)

  • 会话与工作树生命周期
  • node-pty 驱动真实终端
  • @parcel/watcher 文件监听
  • SSH / WSL 多宿主抽象
LAYER 02

renderer(界面)

  • React + Tailwind + shadcn
  • Monaco 编辑器
  • xterm.js + WebGL 终端
  • TipTap 富文本 / 虚拟列表
LAYER 03

relay + cli

  • orca serve 无头服务
  • 手机端 / Web 端接入通道
  • tweetnacl 端到端配对
  • 可脚本化的完整命令面
LAYER 04

native + mobile

  • macOS Computer Use 原生模块
  • Android 模拟器串流
  • iOS / Android 伴侣 App
  • Windows 代码签名(SignPath)
TypeScript Electron electron-vite React Tailwind CSS shadcn/ui Monaco xterm.js node-pty ssh2 zod i18next Vitest Playwright oxlint / oxfmt pnpm
🧭

跨平台是硬约束。仓库明确要求:不许硬编码 metaKey,路径必须走 path.join, Git 兼容性以 2.25 为基线并保留降级路径,Linux 原生模块的 glibc 下限锁在 Ubuntu 20.04 / glibc 2.31。 这类约定往往比 star 数更能说明一个项目的成熟度。

Installation

选一种方式装上它

桌面端有官方安装包与包管理器两条路;想自己折腾就从源码构建;服务器党可以直接跑无头模式。

1macOS — Homebrew Cask

bash
# 通过官方 tap 安装桌面版
brew install --cask stablyai/orca/orca

2Arch Linux — AUR

bash
# 预编译二进制
yay -S stably-orca-bin

# 或者从源码构建
yay -S stably-orca-git

1从官网下载

访问 onorca.dev/download,页面会自动匹配你的平台。

2或直取 Release 构建产物

releases/latest
orca-macos-arm64.dmg      # macOS Apple Silicon
orca-macos-x64.dmg        # macOS Intel
orca-windows-setup.exe    # Windows 安装器(已代码签名)
orca-linux.AppImage       # Linux 通用

3登录你自己的智能体账号

Orca 不代理模型请求,首次启动时用你自己的 Claude / Codex 等订阅登录即可。

1克隆仓库

bash
git clone https://github.com/stablyai/orca
cd orca

2安装依赖(必须用 pnpm)

bash
# postinstall 会自动重建 node-pty 等原生依赖
pnpm install

3开发模式启动

bash
pnpm dev              # Electron 开发模式(热重载)
pnpm dev:web          # 仅 Web 渲染层

4校验与打包

bash
pnpm typecheck        # node / cli / web 三套 tsconfig 全量检查
pnpm lint             # oxlint + 多项自定义门禁
pnpm test             # Vitest 单测
pnpm test:e2e         # Playwright(electron-headless)

pnpm build:mac        # 或 build:win / build:linux

1在服务器上以无头模式运行

把智能体放在一台常开的 VPS 上跑,本地或手机远程接入。

bash
orca serve

2随时查看状态

bash
orca status                 # 总览
orca worktree list          # 所有工作树
orca worktree ps            # 工作树内运行中的进程
orca diagnostics memory     # 内存诊断
📖

仓库内 docs/reference/headless-linux-server.md 有完整的无头 Linux 服务器部署指南。

1iOS

App Store 搜索 Orca IDE,或加入官方 TestFlight 尝鲜。

2Android

从 GitHub Releases 下载 mobile-android 标签下的 app-release.apk

3与桌面端配对

手机 App 与桌面端配对后即可远程监控与操控:智能体跑完推通知,也能直接发追加指令。配对通道使用 tweetnacl 加密。

Orca CLI

让智能体反过来驾驶 IDE

这是 Orca 最有意思的设计之一:整个 IDE 的操作面都暴露成 CLI, 于是智能体可以自己开工作树、自己发终端命令、自己读输出、自己点浏览器按钮。

Worktree

  • orca worktree create --name新建隔离工作树
  • orca worktree list列出全部工作树
  • orca worktree current当前工作树
  • orca worktree show / set查看与修改属性
  • orca worktree ps运行中的进程
  • orca worktree rm --worktree删除工作树

Terminal

  • orca terminal create新建终端(可指定工作树)
  • orca terminal send向终端发送输入
  • orca terminal read读取终端输出
  • orca terminal wait等待命令结束
  • orca terminal split分屏
  • orca terminal switch / show / close / stop切换、展示与关闭

Repo & Project

  • orca repo add --path接入本地仓库
  • orca repo search-refs --repo搜索分支与引用
  • orca repo set-base-ref --repo设定基线分支
  • orca project setups项目初始化流程列表
  • orca project setup-clone / setup-create克隆或新建项目

File & Env

  • orca file open在编辑器中打开文件
  • orca file diff展示差异
  • orca file open-changed打开全部改动文件
  • orca environment add --name按工作区管理环境变量
  • orca agent-context导出当前智能体上下文
  • orca open / orca serve唤起应用 / 无头服务
🧩

还自带 Skills。仓库 skills/ 目录预置了 8 个可直接给智能体用的技能包: orca-cliorchestration(多智能体编排)、computer-useorca-linearlinear-ticketsorca-emulatororca-emulator-androidorca-per-workspace-env。 也就是说,智能体开箱就知道该怎么操作 Orca。

一个典型的脚本化编排片段

bash
# 为同一个任务扇出三个隔离工作树
for n in a b c; do
  orca worktree create --name "try-$n"
  orca terminal create --worktree "try-$n" --command "claude"
  orca terminal send --worktree "try-$n" \
    --text "重构鉴权模块,保持现有测试全绿"
done

# 等三个都跑完,再逐个看 diff 决定合并哪一份
for n in a b c; do
  orca terminal wait --worktree "try-$n"
  orca file diff --worktree "try-$n"
done
Use Cases

什么时候该用 Orca

如果你只是偶尔让 AI 补个函数,它是过度装备。但下面这四种情况,它几乎是刚需。

01

同一任务多方案竞速

让三到五个智能体各自实现同一个需求,隔离在独立工作树里互不污染,最后横向比对代码质量,只合并最好的那一份。

02

长任务离线盯梢

大型重构、批量迁移动辄跑几十分钟。让它在 VPS 上跑,你出门用手机 App 接通知,需要拍板时回一句就行。

03

远程重算力开发

本机带不动大仓库编译?把工作树放到远程机器上,通过 SSH 保留完整的编辑、Git 与终端体验,断线自动重连。

04

前端视觉迭代

Design Mode 直接点选真实页面元素,把 HTML、CSS 与截图打包进提示词 —— 比截图 + 手写描述快一个量级。

⚠️

也说点实话。Orca 迭代极快(版本号已到 1.4.x,Issue 开着两千多个), 「每日发版」意味着功能新鲜但也意味着边界情况多。它是 Electron 应用,同时跑多个智能体 + 多个终端时对内存有真实开销 —— 仓库里专门有渲染进程内存剖析文档和 CPU 空转基准,说明这确实是团队在正面处理的问题。上手前建议先跑两三个工作树试试水。

从「用 AI 写代码」到
「管理一群写代码的 AI」

这是开发方式的一次换挡。Orca 用 MIT 协议开源,装上它,把你的第一支舰队开出去。