55k Star 开源工具 Orca:Coding Agents 中控台
早就知道orca这个工具了,但是好久不用agent CLI了就没有细用,和之前分享的herdr有点点关联。
之前聊 Herdr 时提到过,当开发者在终端里同时跑几个 AI 编程任务时,传统的 tmux 或原生终端很容易让人陷入"不知道哪个窗口卡住"的被动状态。Herdr 的做法是在终端复用器(Multiplexer)层面入手,通过可视化分屏和侧边栏状态灯来辅助监控。
而orca,切入的角度完全不同。它直接提出了 ADE(Agent Development Environment,智能体开发环境) 的概念,并且star也很多,很多,55k。(话说之前100k star的库是神级库,自从AI活了,100K感觉成大街货了,随便就破了)。
如果说 IDE 是以"人类写代码"为中心构建的编辑器,那么 ADE 的核心目标就是把人类变成"项目调度员",管理数十个并发运行的 AI Agent。
痛点:为什么并发跑 Agent 容易出事?
我们日常使用单个 Agent CLI(比如 Claude Code、Codex 或 Aider)修个小 Bug 还可以。但如果想提高效率,同时让多个 Agent 并行干活,你就会发现:
- 工作区与分支冲突 :两个 Agent 在同一个本地 Git 仓库里修改不同功能。只要其中一个执行了提交、换分支或改动了公共配置文件,另一个正在跑长任务的 Agent 上下文就会瞬间崩塌。不过像
Claude Code这样的比较好的工具,已经有效避免了这个问题。 - 缺乏可视化看板与审查:纯终端下开 5 个以上的窗口,我们很难在几秒钟内看清每个任务修改了哪些文件、跑到了哪一步、Diff 差异有多大。
- 无法离机挂机:一个复杂任务的时间很不可控,一天都有可能。人一旦离开电脑,不仅看不到进度,Agent 遇到权限确认停住时也无法远程处理。
Orca 就是为了解决这些工程混乱而搭建的桌面控制台。
核心机制一:Git Worktree 自动化物理隔离
Orca 解决并发冲突的核心手段是 Git Worktree(工作树隔离)。
在传统 Git 工作流中,本地仓库默认只有一个活动工作目录。而 Git Worktree 允许在同一个 Git 仓库元数据下,同时迁出多个相互独立的物理文件夹,各自绑定不同的功能分支。
Orca 将这个机制封装进了任务调度层:
- 每次在 Orca 中新建一个 Agent 任务,它都会自动在后台创建一个干净的 Git Worktree。
- 你可以同时让一个 Agent 在
feature/auth-v2上重构鉴权模块,另一个 Agent 在fix/memory-leak上跑测试排查内存泄漏。 - 两个 Agent 各自在独立的文件夹里安装依赖、生成代码、跑测试套件,彼此的文件系统完全隔离,改动互不影响。
- 任务完成后,Orca 内置了类似 GitHub PR 的视觉 Diff 审查面板。你可以逐行确认改动,满意后再一键合并回主分支。
核心机制二:支持 27+ 款 Agent CLI 与"自带订阅"模式
Orca 采用 BYOS(Bring Your Own Subscription,自带订阅) 模式,完全基于 MIT 协议开源。
而且对市面上主流的终端 Coding Agent 做了深度适配,官方支持超过 27 款 CLI 工具:
- Claude Code
- OpenAI Codex
- OpenCode
- Aider
- Grok / Gemini CLI 等
我们只需要在系统里安装好对应的 CLI 并登录自己的账号,Orca 就能直接识别并拉起这些进程。在同一个界面内,我们可以把前端重构任务分派给擅长长上下文的 Claude Code,把并发测试任务分派给推理速度更快的其他模型,实现异构 Agent 的协同调度。
核心机制三:移动端协同与 Design 模式
除了基础的代码编排,Orca 还有几个针对性很强的特色设计:
1. 手机 Companion App 远程督工
Orca 提供了配套的 iOS 与 Android 移动端应用。
手机端能实时接收任务完成的推送通知。如果 Agent 中途遇到权限拦截等待确认,你可以在手机上直接输入后续 Prompt 或点击批准,不需要一直守在电脑屏幕前。
2. Design Mode(设计捕获模式)
内置了轻量级浏览器环境。当需要 Agent 模仿某个网页组件或排查 UI 样式时,可以在 Design 模式下直接框选页面元素。Orca 会自动提取该组件的 HTML 结构、Computed CSS 样式与局部截图,打包注入到当前 Agent 的提示词上下文中,省去了人工截图和复制样式的步骤。
3. GitHub / Linear 深度绑定
支持直接关联 Linear 任务卡片和 GitHub Issues。在 Orca 侧边栏点选一个未完成的 Issue,它会自动以 Issue 标题和描述为上下文拉起独立的 Worktree 与 Agent 会话,写完直接生成 Pull Request。