By Parsa Khazaeepoul, co-founder of Pane. Tested every agent manager in this comparison set in production. .
cmux is a native macOS terminal app (Swift / AppKit) by manaflow-ai built on libghostty for GPU-accelerated rendering. It adds agent-aware UX — vertical sidebar tabs showing agent state, a blue ring when an agent waits for input, a built-in scriptable browser, and Claude Code Teams integration. v0.64.6 shipped May 14 2026, roughly three months after the February 2026 launch. Pane is a cross-platform desktop app (Windows + Mac + Linux) that manages the full agent lifecycle: worktree provisioning, multi-agent orchestration, diff review, and commit / push from the keyboard. Both tools have legitimate niches — they differ most on platform support, worktree management, and how much of the terminal workflow they replace.
benchmark data: See how Pane and cmux compare on memory, disk, and workflow keystrokes in our Q2 2026 measurement run.
| pane | cmux | |
|---|---|---|
| platform | windows + mac + linux (first-class) | macOS only |
| first released | — | Feb 2026 (v0.64.6 on May 14 2026) |
| worktree management | automatic — create pane, get worktree; delete pane, cleaned up | manual — cmux leaves git workflow to you |
| agent notification UI | desktop + sound, per-agent, built-in | blue ring + sidebar tab highlight when agent waits for input |
| scripting / API | desktop app API | libghostty + MCP layer via cmuxlayer (26 MCP tools) |
| session persistence | app-managed, survives restarts | layouts, working dirs, scrollback, browser history — no live process restore |
| multi-agent orchestration | purpose-built — launch, track, notify, review, commit | composable primitives — self-described "a primitive, not a solution" |
| license | AGPL-3.0 (OSI-approved open source) | GPL-3.0 with commercial license available |
| learning curve | low — desktop app UX | low-medium — terminal-centric; Homebrew install |
libghostty rendering
cmux is the first major app to ship on libghostty — the embeddable rendering library from the Ghostty terminal project. This gives cmux GPU-accelerated font rendering with Metal, the same rendering quality as Ghostty itself, without requiring users to install Ghostty separately.
visual agent status in the sidebar
The cmux sidebar shows per-workspace: git branch, linked PR status and number, working directory, listening ports, and latest notification text. When an agent waits for input, the tab highlights with a blue ring and a centralized notification panel fires. This is more visual signal than vanilla terminal + tmux provides out of the box.
composable primitives and built-in browser
cmux explicitly positions itself as "a primitive, not a solution" — composable building blocks rather than an opinionated orchestrator. The built-in browser supports scriptable actions: click, fill forms, evaluate JS, snapshot accessibility tree. SSH support with local-first routing and scp drag-and-drop are included. Custom commands via cmux.json. Claude Code Teams native integration.
open source and Homebrew install
GPL-3.0 source is fully auditable at github.com/manaflow-ai/cmux. Install is a single Homebrew command: brew tap manaflow-ai/cmux && brew install --cask cmux. A commercial license is available for teams that cannot use GPL.
macOS only
cmux is a Swift / AppKit application — macOS only by design. The community wmux Windows-port attempt confirms the gap: there is enough demand to attempt a port, but no official Windows support. Pane has first-class Windows, Mac, and Linux support with identical features.
no worktree automation
cmux does not manage git worktrees. You create branches and worktrees manually, same as with any terminal. For developers running multiple parallel agents on different tasks, this means the same manual git worktree add / remove cycle as the DIY stack.
no task decomposition or orchestration
cmux's self-description as "a primitive, not a solution" is accurate: it does not decompose tasks into subagents, aggregate results across agents, or provide a structured review and commit loop. Those workflows require composing cmux with other tools or staying in the terminal for each step.
weak session restore
cmux saves layouts, working directories, scrollback, and browser history — but does not restore live processes. A running Claude Code agent is lost on restart. tmux has stronger session persistence for long-running processes. Pane manages agent state at the app level.
young project
cmux launched in February 2026. As of May 2026, it is roughly three months old with 17.1k GitHub stars — unusually fast growth, likely from HN and Twitter viral cycles. The core primitives are solid, but the project is early. API and configuration format may change.
dual-license complexity
GPL-3.0 with a commercial license option means teams need to evaluate which license applies to their use case. For individual developers and open-source teams, GPL-3.0 is fine. For commercial teams embedding or distributing cmux, the commercial license terms apply. Pane is AGPL-3.0 with no paid license required for any use case.
worktree lifecycle
Pane creates an isolated git worktree automatically when you create a new pane, and cleans it up when you delete the pane. No manualgit worktree add / remove cycle. Each agent lives in its own branch and filesystem checkout.
orchestration layer
Pane is purpose-built for multi-agent orchestration: launch multiple agents in parallel, see all their states in one UI, get a desktop notification when any agent needs input, review diffs with ⌘D, commit and push with ⌘K. The entire loop from task to merged branch is keyboard-driven.
Windows and Linux
Pane runs on Windows, Mac, and Linux with identical features. 70% of developers use Windows or Linux. If your team has one Windows developer, cmux does not work for them. Pane works for everyone on the team.
approval UI for diffs
When an agent finishes, Pane's built-in syntax-highlighted diff viewer lets you review and approve changes without switching to a terminal and running git diff. The review + commit loop is a first-class part of the Pane UI, not a terminal command.
in cmux
Use ⌘1–8 to switch between workspaces. Switch to the agent tab. The blue ring fires when the agent needs input. Review terminal output in the sidebar. Create git worktrees manually withgit worktree add. Push and create the PR viagh pr create in the terminal.
in pane
Open Pane. Create a new pane — git worktree is provisioned automatically. Agent launches in the embedded terminal. Desktop notification fires when the agent needs input. Press ⌘D to open the syntax-highlighted diff viewer. Press ⌘K to commit and push. Done.
| cmux | pane | note |
|---|---|---|
| workspace | pane + worktree | conceptual 1:1 — cmux workspace is a named terminal group; Pane's is a worktree-backed session |
| surface (tab) | pane | 1:1 — each cmux tab maps to one Pane session |
| pane (terminal / browser) | pane terminal | terminal pane is 1:1; browser pane has no direct equivalent — Pane is terminal-only |
| agent session hooks (~/.cmuxterm/) | app-managed sessions | ~/.cmuxterm/ likely contains resumable session IDs — the most tractable adapter target |
| browser pane | no equivalent | cmux's built-in scriptable browser has no analog in Pane |
| cmux.json | no direct equivalent | custom command definitions — re-create as shell aliases or scripts in your shell config |
Today this is manual. A one-click "Import from cmux" adapter is on the Pane roadmap — cmux's snapshot format is closed-source so the adapter is empirical. The ~/.cmuxterm/ directory likely contains resumable session IDs and is the most tractable starting point.
cmux is the right pick for macOS-only Ghostty users who want native agent notifications and a composable terminal primitive without leaving the terminal workflow. It is lightweight, open source, GPU-accelerated via libghostty, and installs in one Homebrew command. Pane is the cross-platform pick when worktree lifecycle and multi-agent orchestration matter more than terminal rendering quality — and the only option for teams with Windows or Linux developers. The two tools are not mutually exclusive: Pane handles the lifecycle layer, cmux stays terminal-centric.