cmux is a native macOS terminal built on Ghostty, designed for developers who run multiple AI coding agents (Claude Code, Codex, OpenCode, Gemini, Amp, and others) in parallel and need to know when one of them needs attention. It's aimed at terminal-first developers who want a fast, scriptable workspace instead of an opinionated GUI orchestrator.
Instead of relying on generic macOS notifications that just say "waiting for input," cmux adds a sidebar with vertical tabs showing git branch, PR status, working directory, open ports, and the latest notification text per workspace. Panes light up with a visual ring when an agent needs you, and a notification panel lets you jump straight to the most recent unread item.
cmux ssh user@remote opens a remote workspace, routes browser panes through the remote network, and supports dragging files into remote sessionscmux claude-teams spins up teammate mode as native splits with sidebar metadata, no tmux required~/.config/ghostty/config and renders via libghosttycmux fits developers running several coding agents concurrently across multiple panes or tabs and who lose track of which one needs input. It also suits anyone doing remote development over SSH who wants browser panes and file drag-and-drop to work transparently against the remote host, and teams experimenting with Claude Code's teammate mode without wiring up tmux manually.
It's a good fit if you already use Ghostty or want its config/theme compatibility and GPU-accelerated rendering, and if you'd rather script your own workflow via CLI/socket API than adopt a prescriptive agent-orchestration product.
It is not a fit if you need cross-platform support: cmux is macOS-only (built in Swift/AppKit). It's also not the right tool if you want a fully managed, opinionated agent dashboard rather than terminal primitives you assemble yourself, or if you don't run coding agents at all and just need a general-purpose terminal emulator.
The simplest path is the signed DMG from the releases page:
cmux-macos.dmg from the GitHub releases page.cmux auto-updates afterward via Sparkle, so you only need to download once.
Alternatively, install via Homebrew:
brew tap manaflow-ai/cmux
brew install --cask cmux
To update later:
brew upgrade --cask cmux
A nightly build (built from the latest main commit) is also available as a separate app with its own bundle ID, so it can run alongside the stable release.
After installing, set up agent resume hooks for CLIs already on your PATH:
cmux hooks setup
cmux hooks setup codex
cmux hooks setup --agent opencode
cmux hooks setup detects and installs hooks for supported agents (Claude Code, Codex, Grok, OpenCode, Pi, Amp, Cursor CLI, Gemini, Rovo Dev, Copilot, CodeBuddy, Factory, Qoder) and prints a summary for any it skips.