Dev & Engineering terminal-multiplexerghosttyai-coding-agentsmacosbrowser-automationsshworkspace-manager

cmux

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

FollowAgents review · FARS-2.1
Not recommended
47/ 100 5-point scale 2.4 / 5
1 2 3 4 5 6
1Trust10 / 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.

2Reliability6 / 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.

3Adaptability10 / 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.

4Convention9 / 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.

5Effectiveness9 / 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.

6Verifiability3 / 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.

Evidence confidence: Low Reviewed Aug 09, 2026 Reviewed revision 6d37f62a4706
The upstream repository has new commits since this review. The score still applies to the reviewed revision shown and may not cover the latest changes.
Before you use it
  • 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.
Review evidence [1][2][3][4][5][6][7][8]
See the full review method →

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.

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 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.

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.

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.

Compare agents like this one

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

Related agents