cmux
macOS terminal built on libghostty with vertical tabs, splits, agent notifications and a scriptable browser pane for running AI coding agents.
cmux is a macOS terminal from Manaflow, written in Swift and AppKit, that embeds libghostty, Ghostty's terminal core, for GPU rendering. It is built for running many AI coding agents such as Claude Code and Codex in parallel. It adds a vertical-tab sidebar and a notification system on top of Ghostty-compatible terminals. It suits developers on macOS 14 or later who keep many agent sessions open and want to see which one is waiting for input.
Terminal appearance comes from Ghostty config. cmux reads ~/.config/ghostty/config and Ghostty's macOS location, then applies cmux-only overrides from ~/Library/Application Support/com.cmuxterm.app/config.ghostty. App behavior, the sidebar, workspace colors and keyboard shortcuts are set in the Settings window or in ~/.config/cmux/cmux.json, which has a published JSON schema and reloads on save. cmux controls some Ghostty settings itself: term is always xterm-256color, and window options handled by Ghostty.app's own code have no effect.
Each window holds workspaces, shown as vertical tabs that list the git branch, linked PR, working directory, listening ports and latest notification text. Workspaces split into panes, and each pane holds horizontal tabs. Notifications come from OSC 9, 99 and 777 sequences or the cmux notify command. A pane waiting for attention gets a blue ring, and Cmd+Shift+U jumps to the latest unread. A CLI and socket API create workspaces, split panes and send keystrokes. A built-in browser pane has a scriptable API ported from agent-browser, and cmux ssh opens workspaces on remote machines. Ligatures and the kitty graphics protocol work because they come from libghostty.
cmux runs only on macOS. An iOS app that attaches to the Mac's terminals is in TestFlight beta. Session restore brings back the layout, working directories and best-effort scrollback, but not running processes, unless you opt into tmux or zellij integration. The app is GPL-3.0-or-later, while the server components under web/ and some workers/ and services/ directories use the Business Source License 1.1. The project releases often, and its terminal core is a fork of Ghostty with local patches.
cmux alternatives
Windows Terminal
Microsoft's terminal for Windows that hosts PowerShell, cmd and WSL shells in tabs and panes, with GPU text rendering and JSON settings.
gpu · mux · ligatures · images
Tabby
Cross-platform Electron terminal with a built-in SSH, Telnet and serial client, saved connection profiles and a plugin system.
mux · ligatures · images
Alacritty
Cross-platform OpenGL terminal emulator written in Rust, configured with a TOML file and leaving tabs and splits to a multiplexer like tmux.
gpu
Warp
Terminal written in Rust with an IDE-style command editor, command output grouped into blocks, and built-in AI agents.
gpu · ligatures
Termux
Android terminal emulator and Linux environment that installs packages through its own apt repository, no root required.
Ghostty
Terminal emulator written in Zig with GPU rendering and a native UI on each platform: Swift/AppKit on macOS, GTK on Linux.
gpu · mux · ligatures · images
add a badge to your README
Maintain cmux? Show that it's featured on trmn. The badge links back to this page.
[](https://www.trmn.sh/terminals/cmux?utm_source=badge)<a href="https://www.trmn.sh/terminals/cmux?utm_source=badge"><img src="https://www.trmn.sh/badge/terminals/cmux.svg" alt="Featured on trmn" height="20"></a>