// compare
mmux vs Superset
Both run several CLI coding agents side by side, each in its own git worktree. Superset is an Electron desktop app with a CLI, SDK and hosted MCP server; mmux is a single binary with a terminal UI that runs inside tmux, locally or on a machine you reach over SSH.
Last checked against Superset desktop v1.38.0 on .
// tl;dr
Pick Superset if you want a graphical workspace on a Mac: a diff viewer you can comment in, an in-app browser for dev servers, a native iPhone app, scheduled agent runs that open PRs, and a TypeScript SDK and MCP server for building on top. Several of these are Pro features ($20 per user per month).
Pick mmux if you live in the terminal or work on remote machines over SSH, want sessions that come back after a quit, crash or update with agent conversations resumed, and want a local CLI with no account, under an OSI open source license (GPLv3).
The two cover the same core loop (worktree per task, many agents, review, merge) through very different surfaces. Superset is further along on GUI review and team features; mmux is the one that runs where a desktop app cannot.
At a glance
| Capability | mmux | Superset |
|---|---|---|
| Interface | Terminal UI (Rust, inside tmux), keyboard and mouse | Electron desktop app, plus a superset CLI |
| Platforms | macOS (Apple Silicon; Intel via Homebrew or source), Linux arm64 and x86_64 | macOS (Apple Silicon and Intel), Linux x64 AppImage (experimental), no Windows yet |
| Agents in git worktrees, with setup scripts | yes: Each worktree is its own project box; worktrees.setup and copy for env files |
yes: Each workspace is a worktree and branch; setup, teardown and run in .superset/config.json |
| Agents keep running when the UI closes | yes: Invisible tmux session survives closing the terminal and SSH drops | yes: Background terminal daemon survives closing the window and Cmd+Q |
| Comes back after a full quit, crash or restart | yes: Agents and terminals restored; Claude, Codex, Pi and Grok resume their conversation | partly: Sessions end; interrupted agents can often be resumed from Agent Sessions |
| Agents on a remote machine | yes: Run it on the server over SSH; notifications still reach your desktop | partly: Add the machine as a host, reached through a relay (Pro plan) |
| Phone access | partly: Any SSH app; single-column layout under 60 columns | yes: Native iPhone and iPad app (Pro, iOS 26 or later) |
| Reviewing agent changes | partly: Git panel: file staging, read-only diff preview, commit, push, merge; no hunk staging | yes: Diff viewer with comments and edits, PR feedback sent to agents |
| Dev servers across worktrees | partly: One checkout runs a given process at a time, so ports stay the same; no built-in browser | partly: Detects listening ports per workspace, in-app browser; no port allocation |
| Control from scripts and other agents | partly: Local mmux CLI and a skill file, no account; no SDK or MCP server |
yes: CLI, TypeScript SDK, hosted MCP server; most commands need an account |
| Scheduled agent runs | no: Only scheduled commits | yes: Automations on a schedule that open PRs (Pro) |
| Price | Free, no account | Free plan for individuals; Pro $20 per user per month ($15 billed yearly) |
| License | GPLv3 | Elastic License 2.0 (source-available) |
Superset facts from superset.sh, its pricing page, the GitHub README and docs.superset.sh, checked against the desktop-v1.38.0 release. mmux facts from its docs.
What is Superset?
Superset describes itself as "an agentic IDE to orchestrate 100+ coding agents in parallel" [3]. It is not an agent itself: it runs CLI agents you already use, such as Claude Code, Codex, OpenCode, Gemini and Cursor Agent, with your own subscriptions or API keys, and does not proxy model calls [1]. Each task gets a workspace backed by its own git worktree and branch, with terminals, a diff viewer, an in-app browser and agent status in a sidebar [3]. Desktop and CLI releases are versioned together; this page checked v1.38.0 [4].
The desktop app is built on Electron and targets macOS, with an experimental Linux AppImage; Windows is not yet available [3]. Around it sit a superset CLI, a TypeScript SDK and a hosted MCP server that let scripts and other agents create workspaces, launch agents and read terminals [6] [7]. Pro adds remote hosts, scheduled automations, an iPhone app and Linear and Slack integrations [2].
The code is on GitHub under the Elastic License 2.0, which the site calls "not OSI-approved open source" [1]. Superset (superset.sh) is unrelated to Apache Superset, and its site says the product is "getting a new name soon" [1].
Where Superset is better
- Reviewing changes in a GUI. Superset's diff viewer lets you comment on and edit an agent's changes before committing, send PR feedback back to agents, and use a design mode for UI work [3]. mmux's diff preview is read-only and stages whole files.
- Dev server preview. Superset detects which ports each workspace listens on and opens them in an in-app browser [9]. mmux has no browser; you open
localhostyourself. - A native phone app. On Pro, the iPhone and iPad app checks on agents and reviews diffs on connected computers [3]. mmux on a phone means an SSH client and a narrow terminal layout.
- Scheduled work and integrations. Automations run agents on a schedule (issue triage, dependency bumps) and open PRs, and Pro connects Linear and Slack [1] [2]. mmux has nothing comparable.
- An SDK and MCP server. Besides the CLI, Superset ships
@superset_sh/sdkfor Node, Bun and Deno, and an MCP server that agents like Claude Code can add over HTTP [3] [7]. mmux offers only its CLI. - Teams and compliance. Organizations with members, and on Enterprise SAML SSO, SCIM, audit logs and a SOC 2 Type II report [2]. mmux is a single-user tool.
- Editor hand-off and Intel Macs. Worktrees open in VS Code, Cursor, Xcode or JetBrains IDEs [1], and there are prebuilt Intel macOS builds [3].
Where mmux is better
- It runs anywhere a terminal does. mmux is a TUI, so it works the same on your laptop, a Linux server or a dev container you
sshinto, with static builds for Linux arm64 and x86_64. Superset's desktop app is macOS-first, with Linux marked experimental. - Sessions come back after a quit, crash or update. Reopening a directory restores its agents and terminals, and Claude, Codex, Pi and Grok agents resume their conversation. In Superset, "Quit Superset Completely", a restart or a logout ends the sessions [5].
- Remote work without a relay or a paid plan. Run mmux on the remote machine and attach over SSH; detach, drop the connection, reattach later. Desktop notifications travel as escape sequences on the terminal stream, so they reach the machine you are sitting at. Superset's remote access is a Pro feature that goes through a relay [2] [5].
- Local control, no account.
mmux ls,read,send,wait,askandworktree newtalk to the running mmux on your machine. Superset's CLI needssuperset auth loginor an API key for most commands, and its MCP server is hosted atapi.superset.sh[6] [7]. - Agent status without hooks. mmux reads what the agent puts on screen (progress reports, bells, approval prompts) to mark it working, ready or asking. Superset installs lifecycle hooks into each agent's config, and status only works for agents launched through Superset [8].
- One dev stack across worktrees. Starting a process in a worktree stops it in the checkout that had it first, so
localhost:3000is always the branch you last started. Superset lists ports per workspace and leaves allocation to your setup scripts [9]. - Worktrees that clean up after themselves.
Mmerges a worktree into the branch it came from, and finished worktrees (merged or pushed, clean, idle) are removed after 30 minutes by default. - OSI open source. mmux is GPLv3-or-later; Superset's Elastic License 2.0 is source-available.
When to use which
Choose Superset when
- You work on a Mac and prefer a GUI for diffs, comments and previews
- You want to check on agents from a native iPhone app
- You want agents to run on a schedule and open PRs, or a Linear or Slack hook-up
- You are building tooling on a TypeScript SDK or an MCP server
- A team needs shared organizations, SSO or audit logs
Choose mmux when
- Your agents run on a Linux server or a box you reach over SSH
- You want sessions and agent conversations to survive quits, crashes and updates
- You want a local CLI for agents to drive, with no account or hosted service
- You want dev servers, terminals and agents side by side in one terminal window
- You need an OSI open source license
Moving from Superset to mmux
- Install mmux and run
mmux initin the repository. - Move the
setupcommands from.superset/config.jsonintoworktrees.setupinmmux.yaml(a single shell line) [10]. Gitignored files like.envare copied by default; list more underworktrees.copy. - Turn each
runcommand into a process. mmux has no per-worktree teardown hook; a process'sstop:runs when that process stops or mmux quits, which covers adocker compose down. - Put your agents in
~/.mmux/config.yamlso every project gets them. - Where a script called
superset workspaces createand launched an agent, usemmux worktree new <branch> --prompt "…", thenmmux waiton the printed id.
# mmux.yaml
name: my-project
worktrees:
setup: bun install
processes:
- name: Dev server
cmd: bun
args: ["run", "dev"]
stop: docker compose down
mmux worktree new fix-auth --prompt "fix the login bug"
FAQ
Is Superset open source?
Superset's code is public on GitHub under the Elastic License 2.0 (ELv2). Its site calls this source-available and not OSI-approved open source. The README says the only restriction is repackaging Superset as a service you sell to others. mmux is licensed GPLv3-or-later.
Is Superset (superset.sh) related to Apache Superset?
No. The superset.sh site states that it is unrelated to Apache Superset, the data visualization project. The site also says the product is getting a new name soon.
Does Superset run on Linux, Windows or over SSH?
Superset's desktop app targets macOS (Apple Silicon and Intel). Linux has an x64 AppImage marked experimental, and Windows is not yet available. To reach agents on another machine, Superset adds it as a host and connects through a relay, which is a Pro feature. mmux runs in a terminal on macOS (Apple Silicon) and Linux (arm64 and x86_64), so over SSH you run it on the remote machine itself.
Do agents keep running when I close the app?
In Superset, agents run in a background terminal daemon, so they keep running when you close the window or quit with Cmd+Q. Quit Superset Completely, a restart or a logout ends the terminal sessions, and interrupted agents can often be resumed from Agent Sessions. mmux runs inside an invisible tmux session that survives closing the terminal and SSH drops. After a quit, crash or restart, reopening the directory restores the agents and terminals: Claude, Codex, Pi and Grok agents resume their conversation, and terminals reopen as fresh shells in the directory you left.
Can other agents or scripts control Superset and mmux?
Yes, both. Superset has a superset CLI, a TypeScript SDK (@superset_sh/sdk) and a hosted MCP server at api.superset.sh/mcp. Most CLI commands and the MCP server need a Superset account (OAuth login or an API key). mmux has a local mmux CLI (ls, read, send, wait, ask, worktree new and more) that needs no account, plus a skill file you can give to Claude Code. mmux has no SDK or MCP server.
How much does Superset cost?
Superset has a free plan for individuals that covers local workspaces, the desktop app and the CLI. Pro costs $20 per user per month, or $15 per user per month billed yearly, and adds remote access, automations, the mobile app and the Linear and Slack integrations. Enterprise is custom priced. You bring your own agent subscriptions or API keys. mmux is free and has no account or paid tier.
Sources
- Superset homepage (superset.sh)
- Superset pricing
- superset-sh/superset on GitHub: README
- Superset releases: desktop-v1.38.0 and cli-v1.38.0 (2026-10-14)
- Superset documentation: Keep agents running
- Superset documentation: CLI reference
- Superset documentation: MCP server
- Superset documentation: Agent status and notifications
- Superset documentation: Port management
- Superset documentation: Project lifecycle scripts
Other comparisons
- mmux vs Claude SquadRuns each agent in its own tmux session and git worktree; mmux creates worktrees on demand and adds dev processes and a git panel.
- mmux vs Codex appOpenAI's desktop app for parallel Codex threads in git worktrees; mmux runs any CLI agent in a terminal, locally or over SSH.
- mmux vs ConductorA Mac app by Melty Labs that runs Claude Code, Codex and other agents in parallel worktrees, built around pull request review.
- mmux vs Nimbalyst (formerly Crystal)The successor of Crystal: a desktop app with Claude Code and Codex sessions next to visual editors and a task tracker.
- mmux vs OrcaA desktop app for agents in parallel worktrees, with an editor, a browser and SSH worktrees built in; mmux does the same job inside a terminal.
Try mmux
One binary for macOS, Linux and WSL. Run mmux in any project directory.
curl -fsSL https://mmux.org/install.sh | sh