cmux: The Complete Guide to the AI-Optimized Terminal for macOS

If you're running Claude Code, Codex, Gemini, or OpenCode sessions in parallel, you know the pain: too many terminal tabs, context-free notifications saying "Claude is waiting for your input," and no way to tell which agent needs you. cmux was built to solve exactly this.
Created by manaflow-ai, cmux is a native macOS terminal application built in Swift/AppKit, powered by libghostty for GPU-accelerated rendering, with vertical tabs, an intelligent notification system, an in-app scriptable browser, and a CLI/socket API for full automation. It reads your existing Ghostty config — no migration needed.
With 4,800+ GitHub stars, 293 forks, 24 releases, 32 contributors, and its own r/cmux subreddit, cmux has rapidly become the terminal of choice for developers orchestrating multiple AI coding agents.
What Is cmux?
cmux is a Ghostty-based macOS terminal designed specifically for AI coding workflows. Its name reflects its heritage — a modern take on tmux built around the Ghostty terminal engine, optimized for the era of AI coding agents.
Key Stats
| Metric | Value |
|---|---|
| GitHub Stars | 4,800+ |
| Forks | 293 |
| Releases | 24 |
| Contributors | 32 |
| Language | Swift |
| License | AGPL-3.0 |
| Created | January 2026 |
| Last Updated | March 2026 (daily) |
| Homepage | cmux.dev |
| Topics | amp, claude-code, codex, gemini, ghostty, opencode, terminal, tmux |
The Problem It Solves
The creator explains it directly:
"I run a lot of Claude Code and Codex sessions in parallel. I was using Ghostty with a bunch of split panes, and relying on native macOS notifications to know when an agent needed me. But Claude Code's notification body is always just 'Claude is waiting for your input' with no context, and with enough tabs open I couldn't even read the titles anymore."
Traditional terminal setups fail for parallel AI agent workflows because:
- Notifications are context-free — macOS notifications from Claude Code all look identical
- Tab overload — horizontal tabs collapse into unreadable labels
- No agent awareness — terminals don't understand agent states
- Electron tax — GUI orchestrators like Cursor or VS Code add memory overhead
Core Features
🏗️ Native macOS App (Swift/AppKit)
cmux is not Electron, not Tauri — it's a native Swift/AppKit application. This means:
- Fast startup — near-instant launch
- Low memory — no JavaScript runtime overhead
- macOS-native UI — proper AppKit widgets, menu bar integration, keyboard shortcuts
- Sparkle auto-updates — download once, auto-updates forever
⚡ GPU-Accelerated Rendering (libghostty)
The terminal rendering is powered by libghostty, the engine behind the popular Ghostty terminal. This gives cmux:
- GPU-accelerated drawing — smooth scrolling and rendering
- Ghostty config compatibility — reads
~/.config/ghostty/configfor themes, fonts, and colors - Zero migration — if you already use Ghostty, cmux inherits your setup
📌 Vertical + Horizontal Tabs
The sidebar with vertical tabs is cmux's signature feature. Each tab displays:
- Git branch — which branch the workspace is on
- Linked PR status/number — pull request integration
- Working directory — current path
- Listening ports — active dev server ports
- Latest notification text — what the agent last said
🔔 Intelligent Notification System
The notification system is built for AI agents:
- OSC 9/99/777 support — picks up standard terminal notification sequences
cmux notifyCLI — wire into agent hooks (Claude Code, OpenCode, Codex, etc.)- Blue ring indicator — when an agent is waiting, its pane gets a blue ring
- Sidebar highlights — the tab lights up in the sidebar
- Cmd+Shift+U — jump to the most recent unread notification
This means you can have 10 Claude Code sessions running and instantly see which one needs your attention.
🌐 In-App Scriptable Browser
cmux includes an integrated browser with a scriptable API ported from agent-browser:
- Accessibility tree snapshots — agents can read page structure
- Element refs — click, fill forms, interact with UI elements
- JavaScript evaluation — execute JS in the browser context
- Split view — place browser next to terminal for agent interaction with dev servers
🔧 CLI & Socket API
Everything in cmux is scriptable:
- Create workspaces and tabs
- Split panes (horizontal/vertical)
- Send keystrokes programmatically
- Open URLs in the browser
- Trigger notifications
- Automate complex workflows
Installation
DMG (Recommended)
Download the .dmg from cmux.dev, drag to Applications. Auto-updates via Sparkle.
Homebrew
brew tap manaflow-ai/cmux
brew install --cask cmux
# Update later
brew upgrade --cask cmux
Nightly Builds
A separate nightly app with its own bundle ID runs alongside stable:
Session Restore
On relaunch, cmux restores:
- ✅ Window/workspace/pane layout
- ✅ Working directories
- ✅ Terminal scrollback (best effort)
- ✅ Browser URL and navigation history
- ❌ Live process state (active Claude Code/tmux/vim sessions — not yet)
The Zen of cmux
The project philosophy deserves highlighting:
"cmux is not prescriptive about how developers hold their tools. It's a terminal and browser with a CLI, and the rest is up to you."
"cmux is a primitive, not a solution. It gives you a terminal, a browser, notifications, workspaces, splits, tabs, and a CLI to control all of it."
"Give a million developers composable primitives and they'll collectively find the most efficient workflows faster than any product team could design top-down."
This is fundamentally different from orchestrator tools that force you into their workflow. cmux gives you building blocks — you compose them.
cmux vs Alternatives
| Feature | cmux | CodeMux | Canopy | TmuxAI | Warp | Kaku |
|---|---|---|---|---|---|---|
| Stars | 4.8K | N/A | 1K+ | 500+ | N/A (Closed) | 200+ |
| Platform | macOS native | Web UI | Desktop | tmux plugin | macOS/Linux | macOS |
| Engine | libghostty | Custom | tmux | tmux | Custom | Custom |
| Built with | Swift/AppKit | JS | Electron | Python | Rust | Swift |
| GPU Accel | ✅ | ❌ | ❌ | ❌ | ✅ | ❌ |
| Vertical tabs | ✅ With git/PR/ports | ❌ | ✅ Basic | ❌ | ❌ | ❌ |
| Agent notifications | ✅ Blue ring + sidebar | ✅ | ✅ | ❌ | ❌ | ✅ |
| In-app browser | ✅ Scriptable | ❌ | ❌ | ❌ | ❌ | ❌ |
| CLI/API | ✅ Socket API | ❌ | ✅ | ❌ | ✅ | ❌ |
| Ghostty compat | ✅ | ❌ | ❌ | ❌ | ❌ | ❌ |
| Open source | ✅ | ❌ | ✅ | ✅ | ❌ | ✅ |
| Price | Free | Free | Free | Free | Free tier | Free |
When to Choose Each
- cmux: You want a native macOS terminal optimized for parallel AI agents with vertical tabs, smart notifications, scriptable browser, and Ghostty compatibility. Best for Claude Code / Codex power users.
- CodeMux: Web UI-based multiplexer for vibe coding with AI. Good if you prefer browser-based interfaces.
- Canopy: Built on tmux with session persistence. Better if you need guaranteed session survival across crashes.
- TmuxAI: If you're already deeply invested in tmux and want AI assistance without switching tools.
- Warp: General-purpose modern terminal with AI command suggestions. Not specifically designed for agent workflows.
- Kaku: macOS terminal with AI error recovery and centralized AI settings page.
Founder's Edition
cmux is free, open source, and always will be. The Founder's Edition supports development and provides early access to:
- Prioritized feature requests and bug fixes
- cmux AI — contextual intelligence for every workspace, tab, and panel
- iOS app — terminals synced between desktop and phone
- Cloud VMs — remote development environments
- Voice mode — voice-controlled terminal interactions
Frequently Asked Questions
Does cmux work on Linux or Windows?
Currently macOS only. It's a native Swift/AppKit application.
Do I need Ghostty installed?
No. cmux bundles libghostty internally. But if you have a Ghostty config, cmux reads it automatically.
Does it work with Claude Code?
Yes — this is the primary use case. Use cmux notify with Claude Code's notification hooks.
Can I replace tmux with cmux?
For AI agent workflows, yes. For server-side session persistence (SSH), tmux is still better since cmux doesn't restore live processes yet.
Is it free?
Yes. Free and open source under AGPL-3.0. The Founder's Edition is an optional paid tier for early access to premium features.
Conclusion
cmux fills a gap that no other tool addresses quite as well: a native, GPU-accelerated macOS terminal purpose-built for the new reality of running multiple AI coding agents in parallel. With its vertical tabs showing git/PR/port context, blue-ring notification system for agent awareness, scriptable in-app browser, and CLI/socket API for automation, it transforms the chaotic experience of juggling Claude Code, Codex, and Gemini sessions into a streamlined workflow.
With 4,800+ stars in just two months and an active community on Discord and Reddit, cmux is rapidly establishing itself as essential infrastructure for the AI-assisted development era.
