一个 Agent 干一件事很快,五个 Agent 一起干就乱套
你肯定经历过这个场景:想让 Claude Code 改登录页,Codex 重构后端,Gemini CLI 修测试——三个 Agent 同时开工,听起来效率翻三倍。结果呢?
- 它们全在同一个目录里改文件,改着改着互相覆盖,git status 一片狼藉
- 两个 Agent 同时动了同一个文件,一个把另一个的改动静默冲掉
- 你想知道谁跑完了、谁卡住了,只能一个个终端窗口切过去看
问题的根源不是 Agent 不够聪明,而是它们没有各自的「工位」。真人协作时每人一个分支、一个目录、一台机器,Agent 协作时却全挤在同一个工作目录里互相踩脚。
superset 就是冲着这个来的:一个 Electron 桌面应用,把「git worktree 隔离」做成了产品。每个任务自动开一个独立 worktree、独立分支、独立终端、独立端口,10+ 个 Agent 并行跑,互不干扰,干完你逐个 review、合并赢家。12,806 Star,2025年10月创建,10 个月做到,昨天刚发 desktop-v1.19.0。
它到底是什么
一句话:superset 是「跑在你自己机器上的 Agent 编排 IDE」——它不写代码,它给写代码的 Agent 们分房间。
核心理念是 README 里那句:"If it runs in a terminal, it runs on Superset"——它不绑定任何特定 Agent,Claude Code、Codex CLI、Cursor Agent、Gemini CLI、Copilot、Grok、Kimi Code、OpenCode、Pi、Amp Code、Droid、Mastra Code、Mistral Vibe、Polygraph,凡是能在终端里跑的 CLI Agent,它全支持,没预置的也能自定义加。
核心数据:
- 12,806 Star,2025年10月21日创建,技术栈 Electron + React + Tailwind + Bun + Turborepo + tRPC + Drizzle ORM
- Elastic License 2.0(ELv2)——源码全开放,桌面应用永久免费,唯一限制是不能把它打包成服务卖给别人
- 一个 workspace = 一个 git worktree = 一个分支,各自拥有独立目录、终端会话、端口检测
- 四个使用面:桌面应用(完整 IDE)、CLI(单二进制)、TypeScript SDK、MCP Server——同一个 workspace,随处可管
- 最新版本 desktop-v1.19.0,2026年8月5日发布,加了自动化失败重试按钮、修了 5 个 Sentry 错误源
五个核心能力,逐个拆
1. 并行 Workspaces:每个 Agent 一个隔离工位
这是它的基本盘。⌘N 新建 workspace,可以从新分支、已有分支或 PR 创建。每个 workspace 自动获得:自己的 git 分支、自己的工作目录、自己的终端会话、workspace 级端口检测。10+ 个 Agent 同时跑,互相完全隔离——这是 git worktree 的正确打开方式:不是给人类看的,是给 Agent 分房间用的。
侧边栏直接显示每个 workspace 的分支超前/落后状态(↑N 未推送、↓N 需要拉取),PR 型 workspace 还能看到 review 状态和 CI 检查。支持批量操作:⌘-click 多选 workspace,一键 Move 分组、Delete、Clear。
2. Agent 监控:谁在干活、谁卡住了、谁在等你
每个 Agent 有工作指示器、完成提示音、dock 徽章——哪个 Agent 需要你注意,dock 图标直接给你标出来。从侧边栏能看到所有 Agent 的实时状态,不用一个个终端窗口切。
启动 Agent 时还能选模型和推理强度(model picker),每个 Agent 可以单独调启动命令、prompt 模板、模型覆盖。内置聊天面板可以直接跟模型对话,带内联工具审批和计划审查。
3. 内置终端 + Diff 查看器:从跑到审一条龙
终端支持标签页、无限分屏、preset(把常用 agent+shell 布局存起来一键打开)、会话持久化(重启不丢)。⌘I 打开富文本 prompt 编辑器,支持多行编辑和 @-文件提及。
Agent 改完代码,内置 diff viewer 直接看变更、评论、编辑,满意了在应用里 commit + push,全程不用离开。每个 workspace 的 dev server 端口自动检测,内置浏览器 pane 直接预览——每个 worktree 都有自己的预览。
4. Automations:让 Agent 夜班干活
定时跑 Agent 会话:夜里自动 triage issue、每周自动生成 changelog、定期刷新依赖。v1.19.0 刚给失败的自动化加了重试按钮。用 RFC 5545 RRULE 定义调度规则,MCP 工具里也有完整的 automations_* 操作集,Agent 自己就能排班。
5. 不只是桌面应用:CLI / SDK / MCP 全通
最狠的是这四个使用面共用同一套 workspace:在桌面应用里开任务,出门用手机/CLI 查进度,回家接着审。CLI 是单静态二进制,支持 --json / --quiet 输出模式给脚本用,还能在 CI 里跑。MCP server 挂在 https://api.superset.sh/mcp,支持 OAuth 2.1 和 API Key 两种认证。
和「手动开几个终端」比,差在哪
| 维度 | 手动开终端跑多个 Agent | superset |
|---|---|---|
| 工作区隔离 | 全靠自己记得开 worktree、切分支 | 每个 workspace 自动一个 worktree + 分支 + 目录 |
| 并行监控 | 切窗口逐个看,谁卡了不知道 | 侧边栏实时状态 + 完成提示音 + dock 徽章 |
| 代码审查 | git diff 命令 + 另一个编辑器打开 | 内置 diff viewer,评论、编辑、commit、push 一条龙 |
| 端口/预览 | 自己找端口、自己开浏览器 | workspace 级端口检测 + 内置浏览器 pane |
| 定时任务 | cron + 手写脚本胶水 | Automations 可视化排班,RRULE 调度 |
| 远程/移动访问 | SSH 回机器,麻烦 | CLI / SDK / MCP 从任何地方管理同一批 workspace |
| Agent 调度 Agent | 没有 | superset:orchestrate skill,一个 Agent 协调一队 worker |
架构:worktree 隔离 + 本地优先的 host server
设计上几个值得说的点:
- Workspace 即 worktree:核心抽象就一个——每个 workspace 是 git 上的一个分支,物理上是一个独立 worktree。Agent 之间零共享状态,冲突从根上消失
- Local host server:本机跑一个 host server(状态在
~/.superset/host/<orgId>/host.db),本地调用走 loopback,离线也能用;远程调用走云 API + relay。所有使用面(桌面/CLI/SDK/MCP)都打同一个 host - 本地优先同步:开发环境用本地 Postgres + Electric(local-first sync 引擎)跑通整套,不需要 Neon 账号——README 明确写了"No Neon account or third-party credentials are needed"
- Skills 自动注入:桌面应用启动时自动把
superset:*skills 写进~/.claude/skills/superset/、~/.agents/skills/等标准位置,你的 Agent 开箱就会用。文件带标记,你自己的同名文件不会被覆盖 - 每日发布:README 原话 "we ship daily"——产品迭代速度是互联网公司级别,v1.19.0 已经是第 19 个桌面版本
上手:最快路径跑起来
# macOS(官方主平台,Apple Silicon / Intel 都有 dmg)
# 从 GitHub Releases 下载:https://github.com/superset-sh/superset/releases/latest
# CLI 独立安装(桌面应用自带 CLI,也可以单独装)
curl -fsSL https://superset.sh/cli/install.sh | sh
# 或 Homebrew
brew install superset-sh/tap/superset
Linux 有 x64 AppImage(实验性支持,macOS 是主目标),Windows 还没出。唯一硬依赖是 Git,装 gh 可选(解锁 PR 工作流)。
# 登录(浏览器 OAuth 或 CI 用 API Key)
superset auth login
# 注册你的项目(克隆或导入已有仓库)
superset projects create --name "my-app" --local \
--clone https://github.com/org/my-app.git --parent-dir ~/code
# 建一个隔离 workspace 干活
superset workspaces create \
--project prj_... --name "fix-login-bug" \
--branch fix/login-bug --local
# 手动触发一次自动化
superset automations list
superset automations run aut_...
桌面应用里更简单:⌘N → 选分支或 PR → 输入任务描述,workspace 自动建好,你在里面启动 Claude Code 或 Codex 就行。
让 Agent 自己调度 Agent:MCP 接入
# Claude Code
claude mcp add superset --transport http https://api.superset.sh/mcp
# Codex
codex mcp add superset --url https://api.superset.sh/mcp
# Gemini CLI
gemini mcp add --transport http superset https://api.superset.sh/mcp
接上之后,你的 Agent 就能自己调用 workspaces_create(开新工作区)、agents_create(在 workspace 里启动 worker)、terminals_read/send(盯进度、下发指令)、automations_create(给自己排班)。再配合内置的 superset:orchestrate skill,你只要说"把这三个重构拆开并行跑",当前对话的 Agent 就变成协调者,通过 CLI 指挥一队 worker 各干各的,最后汇总结果给你。
实际体验的几个坑
- Windows 没有客户端——README 明确 "Windows: not yet available",Linux 也只是实验性 AppImage。主力是 macOS,Windows 用户目前只能凑合用 CLI + 远程 host
- CLI 还在 Beta——命令和 flag 仍在演进,文档自己都标了 Callout 警告,升级 CLI 版本前先看 changelog,脚本里别把命令写死
- MCP server 的 URL 换过——旧版
/api/agent/mcp已删除,现在返回 410 Gone。新配置用https://api.superset.sh/mcp,老配置要手动改 - 本地 mutating 命令要显式指定 host——
projects create、workspaces create这类操作没有默认值,必须显式--local或--host,否则报错。读操作(list)默认本机。刚上手容易在这栽一下 - API Key 给的是组织全量权限——文档原话 "API keys grant full access to your organization",key 以
sk_live_开头,只显示一次。别 commit 进仓库,CI 用 secret 管理 - 桌面应用写 managed skills 到你的 Agent 目录——它往
~/.claude/skills/写文件,虽然带标记不会覆盖你自己的文件,但如果你对 Agent 目录有洁癖,需要知道这件事存在
跟我们有关的一件事
这个项目跟本工坊读者的工作流是直接重叠的:它把「同时跑多个 Coding Agent」从野路子变成了正规军。之前我们聊过 cmux(24K Star,终端多路复用)、Claude Squad(tmux + worktree 的 Go 实现)、Agent Orchestrator(worktree 隔离 + CI 反馈路由)——superset 是这条路线里产品化最彻底的:不是终端里的工具,而是完整的 IDE 体验,还多了 automations、diff 审查、MCP 调度这几个别人没有的面。
而且它的 MCP server 是「Agent 驱动 Agent」的完整闭环:协调者 Agent 通过 MCP 开 workspace、启 worker、读终端、收结果,全程不需要你手动介入。如果你已经在用 Claude Code + Codex 的组合,这是目前把并行编排做得最顺手的方案。
适合谁用
- 手里有两个以上 CLI Agent 的人——Claude Code + Codex 并行是标配场景,worktree 隔离是刚需
- macOS 用户——主平台体验最完整,Linux 用户先掂量下实验性 AppImage
- 喜欢「Agent 军队」工作流的人——多 Agent 并行 + 定时自动化 + 远程查看,一个人顶一个团队
- 想让 Agent 自己调度 Agent 的探索者——MCP + orchestrate skill 是当前最完整的闭环示例
- 被多个 Agent 互相踩文件坑过的人——worktree 隔离从根上消灭这类冲突
总结
superset 做的不是「又一个 Agent」,而是Agent 时代的「工位管理系统」。当并行跑 Agent 从炫技变成日常,worktree 隔离就从「git 高级技巧」变成了「工作流基础设施」——它把这个基础设施做成了开箱即用的产品,还顺手解决了监控、审查、定时、远程访问这一整条链。
12.8K Star、10 个月、每天发版、ELv2 全源码开放、桌面应用永久免费——这个项目正处在「多 Agent 并行」从野路子走向标准工作流的时间点上,值得现在就上手试试。
项目地址:github.com/superset-sh/superset(官网:superset.sh · 文档:docs.superset.sh)