cmux

A Ghostty-based macOS terminal with vertical tabs and notifications for AI coding agents.

Source repo
manaflow-ai/cmux
Stars
★ 28k
Last updated
today
License
NOASSERTION
Primary language
Swift

At a glance

How it runs
Desktop appCLI
Works with
Platform-specificCodex · Claude Code
Cost
Free tier plus a paid hosted plan
Setup effort
Low · running in minutes
You'll need
macOSGhostty configSwift/AppKitlibghosttyShell / CLINetwork accessLocal filesystem
Typical use
Run multiple Claude Code or Codex sessions in parallel on macOS, using the sidebar and notifications to quickly identify which agent needs attention.
Not a fit if
  • Teams on Windows or Linux; cmux is macOS only
  • Organizations that cannot comply with GPL-3.0 licensing
  • Users who avoid the terminal and want a GUI-only orchestrator

What does this agent do, and when should you use it?

cmux is an open-source, native macOS terminal built on Ghostty's rendering engine (libghostty), designed for running multiple AI coding agents like Claude Code, Codex, and OpenCode. It introduces vertical tabs and a sidebar that displays git branch, PR status, working directory, listening ports, and latest notification per workspace, with a notification system triggered by OSC 9/99/777 sequences and CLI hooks. It also includes a scriptable in-app browser controllable via a socket API, supports SSH remote workspaces, and Claude Code team mode. The app is fully programmable through a CLI and Unix socket for creating workspaces, splitting panes, sending keystrokes, and automating the browser.

cmux acts as a terminal emulator, able to run any command-line tool. It reads ~/.config/ghostty/config for themes and fonts, and renders via libghostty. The sidebar shows metadata for each workspace, and its notification system captures OSC sequences or uses cmux notify to display a blue ring and notification badges for waiting agents. The built-in browser can be controlled via API to navigate, snapshot the DOM, click, type, and evaluate JavaScript. SSH workspaces are created with cmux ssh, supporting --command to run an initial command. Claude Code Teams is launched with cmux claude-teams. All features are programmatic through the CLI and socket API (e.g., cmux surface, cmux hooks setup).

  1. Run multiple Claude Code or Codex sessions in parallel on macOS, using the sidebar and notifications to quickly identify which agent needs attention.
  2. Developers who want an embedded browser next to the terminal, letting agents like Claude Code interact directly with the local dev server and verify changes.
  3. Users who need to SSH into remote machines, run agents in the remote environment while controlling the local terminal from cmux.
  4. Using cmux claude-teams to launch Claude Code team mode, with teammates as native panes.
  5. Users who need a programmable terminal workspace, automating pane creation, input, and browser operations via CLI or socket API.

How do you install or deploy this agent?

Recommended: download the DMG from GitHub Releases (cmux-macos.dmg), open it and drag cmux to Applications. On first launch, macOS may ask to confirm opening from an identified developer; click Open. Alternatively, install via Homebrew: brew tap manaflow-ai/cmux then brew install --cask cmux. Update with brew upgrade --cask cmux. Nightly builds available for testing.

How do you use this agent?

Launch cmux; it will read your Ghostty config. Use keyboard shortcuts: ⌘N new workspace, ⌘D split right, ⌘⇧L open browser in split. For remote, run cmux ssh user@remote, optionally with --command 'omp "investigate auth"'. Set up agent hooks with cmux hooks setup (or setup codex, setup --agent opencode) to enable session resume and notifications. Full documentation is at cmux.com/docs.

What are this agent's strengths and limitations?

Pros
  • Native Swift/AppKit app, fast startup and low memory compared to Electron apps.
  • Tight integration with Ghostty config, reusing themes and fonts, while adding sidebar and notifications.
  • Built-in programmable browser, agents can control it via API for efficient debugging.
  • Supports SSH remote workspaces, allowing agents to run remotely.
  • Session restore restores layout, scrollback, and browser history after restart.
Limitations
  • macOS only; no Windows or Linux support.
  • Depends on Ghostty and libghostty; requires having Ghostty or at least its config file.
  • Licensed under GPL-3.0-or-later, which may restrict commercial integration.
  • No official cross-platform support, migration cost for non-macOS users.
  • Notification features rely on agents supporting OSC or hook configuration; not all agents have it by default.

How does this agent compare with similar options?

Compared to tmux, cmux is a GUI app for macOS offering vertical tabs, built-in browser, and socket API without config files or prefix keys; tmux runs inside any terminal and is more universal. Compared to Electron-based agent orchestration tools, cmux is lighter and stays close to the terminal.

Key facts side by side with the most closely related agents.

Agent Source review Form / cost Stars Updated Language Full support on
cmux This agent 47 · Major gaps Desktop appFreemium ★ 28k today Swift Codex · Claude Code
agterm 75 · Good Desktop appFree ★ 677 today Swift Codex · Claude Code
TUIOS Terminal Workspace 59 · Major gaps CLIFree ★ 5.5k today Go —
wmux Agent Workspace 74 · Some gaps Desktop app ★ 431 today TypeScript Codex · Claude Code

How does FollowAgents rate this agent?

FollowAgents source review · FARS-2.1
Major gaps
47/ 100 5-point scale 2.4 / 5
This review covers the source as of Aug 09, 2026. The project has shipped 2 stable release(s) since, which have not been re-reviewed. The score and verdict describe the reviewed version only. Recent releases ↓
Trust 10/29
Reliability 6/14
Adaptability 10/18
Convention 9/18
Effectiveness 9/13
Verifiability 3/8
Why each dimension lost points
Trust10 / 29 · 1.7/5

Evidence shows: repository includes GPL-3.0 license, clearly open source; has CLI and socket API, but no explicit least-privilege design; has user confirmation mechanisms (e.g., auto-resume sessions require user consent), but not detailed; data flow transparency limited, no detailed data collection and transmission; sensitive data handling mentioned (e.g., dropping sensitive env vars on session restore), but not comprehensive; dependency security mentioned (e.g., pinned action versions), but not fully audited; external effects mentioned (e.g., auto-update), but not detailed; rollback mentioned (e.g., session restore), but no full rollback mechanism; source attribution mentioned (e.g., copyright notice), but not detailed. Deductions: most criteria only partially met, lacking detailed evidence.

Reliability6 / 14 · 2.1/5

Evidence shows: project has unit tests and CI workflows, but no test results; dependency availability mentioned (e.g., prebuilt xcframework), but not verified; failure messages mentioned (e.g., CI retry logic), but not detailed. Deductions: tests not executed, dependency availability not verified, failure messages insufficient.

Adaptability10 / 18 · 2.8/5

Evidence shows: clearly targets AI coding agent users, supports multiple scenarios (e.g., SSH, Claude Code Teams); capability boundaries stated (e.g., macOS only); trigger precision mentioned (e.g., notification system), but not detailed; environment fit stated (e.g., macOS versions). Deductions: trigger precision and some scenarios lack detailed evidence.

Convention9 / 18 · 2.5/5

Evidence shows: clear information architecture (README has TOC); detailed install notes (DMG, Homebrew); naming stability not explicit; rich examples and FAQ; known limitations mentioned (e.g., macOS only); license clear (GPL-3.0); versioning/changelog not provided; maintenance responsibility mentioned (e.g., community support). Deductions: naming stability, versioning/changelog, maintenance responsibility evidence insufficient.

Effectiveness9 / 13 · 3.5/5

Evidence shows: high output usability (CLI, API, docs); high marginal value (solves specific pain points); reasonable cost-benefit (free and open source). Deductions: no evidence of actual usage effectiveness.

Verifiability3 / 8 · 1.9/5

Evidence shows: claims supported by docs (e.g., README links to docs); cross-source verification limited (only internal docs); fact-inference separation unclear. Deductions: lack of external verification and clear separation.

Risks and how to mitigate them
  • Publisher identity unverified, treat with caution.
  • Dependency security not fully audited, recommend checking for vulnerabilities.
  • Session restore involves sensitive data, ensure secure handling.
  • Auto-update mechanism may have external effects, require user confirmation.
Evidence confidence: Low Reviewed Aug 09, 2026 Reviewed revision 6d37f62a4706 New commits since this review; the score may not cover them
See the full review method →

Recent releases

Latest entries from the project's GitHub Releases. Notes are quoted from upstream as written, not rewritten or tested by FollowAgents.

  1. Release notes excerpt
    The cmux app FFI (remote desktop core + sidebar layout reducer) as CCmuxAppFFI.xcframework (one static library, universal macOS arm64/x86_64). Source b17c7f9395f1fed20891728654581ac30af6a4d4. SwiftPM binaryTarget checksum (SHA-256 of the zip): 891bb8c8a69dcf5ae5b88035992856bd781e8ce93a99a06433bb8b3b3f887614
    View on GitHub ↗
  2. v0.65.2
    Release notes excerpt
    What's Changed * ci: run backend migrations gate on every PR again (revert #17415) by @teamleaderleo in https://github.com/manaflow-ai/cmux/pull/17432 * fix: repair main's red full CI (window crash loop, Cloud port and team regressions and test drift) by @teamleaderleo in https://github.com/manaflow-ai/cmux/pull/17433 * ci: route read-only Linux lanes through Blacksmith by @teamleaderleo in https://github.com/manaflow-ai/cmux/pull/17438 * ci: say whose failure it is in the CI attribution comment by @teamleaderleo in https://github.com/manaflow-ai/cmux/pull/17443 …
    View on GitHub ↗
  3. v0.65.1

FAQ

How does cmux relate to Ghostty?
cmux is not a fork of Ghostty; it uses libghostty as a library for terminal rendering, similar to how apps use WebKit for web views. Ghostty is a standalone terminal; cmux is a different app built on top of its rendering engine.
Which coding agents does cmux work with?
cmux is a terminal, so any agent that runs in a terminal works, including Claude Code, Codex, OpenCode, Gemini CLI, and more. It also has special integration for Claude Code teams.
How do notifications work?
When an agent needs attention, it sends standard terminal escape sequences (OSC 9/99/777), which cmux captures to show blue rings, sidebar badges, and desktop notifications. Alternatively, you can trigger via cmux notify or hooks.
What does session restore cover?
cmux restores window, workspace, and pane layout, working directories, scrollback, and browser history. It does not checkpoint arbitrary live process state; unsupported terminal apps like tmux or vim reopen as normal terminals.
Is cmux free?
Yes, cmux is free and open source under GPL-3.0-or-later. There is a Founders Edition for early access and funding, but the core app remains free.
View on GitHub ↗ Install ↓

Compare agents like this one

The same FARS review applied across the shortlist this agent qualifies for.

Related agents