cmux is a native macOS terminal application built in Swift that provides vertical tabs, notifications, an in-app browser, and AI-agent orchestration across workspaces and splits. It integrates with Ghostty config, offers a CLI/socket API, and supports SSH and Claude Code teams.
Collecting history — the radar snapshots this repo daily. The trend line appears after 3 days of data (1 so far).
What it is
cmux is a Ghostty-based macOS terminal with vertical tabs and notifications for AI coding agents. It is built as a native Swift/AppKit app and reads Ghostty themes from ~/.config/ghostty/config. It provides a sidebar with vertical tabs, a notification panel, an in-app browser, and support for multiple workspaces and splits. It includes features such as browser import, custom commands, and a CLI/socket API to control workspaces, splits, keystrokes, and the browser. It is open source and GPL-licensed. The project focuses on multitasking and programmability for coding agents like Claude Code, Codex, and OpenCode, among others, and supports multiple agents and subagents with native panes and splits.
How it works
cmux renders terminal content via libghostty and exposes a programmable surface through a CLI and socket API. It supports creating workspaces and splits, sending keystrokes, and opening URLs in an embedded browser. Notifications ring around panes and unread badges appear in the sidebar to indicate agent attention. The app can restore sessions, including window/workspace/pane layout, working directories, and browser state, on relaunch. Nightly builds exist as a separate app with its own bundle ID and Sparkle feed.
Getting started
Install options include:
- DMG (recommended): Open the .dmg and drag cmux to Applications; it auto-updates via Sparkle.
- Homebrew:
brew tap manaflow-ai/cmux
brew install --cask cmux
To update:
brew upgrade --cask cmux
Initial launch may prompt to confirm opening from an identified developer.
On first launch, the app reads Ghostty configs from the user’s home config and can be configured via the docs. For session restoration and resume, see the Session restore section in the documentation.
Recent releases
Latest releases include:
- v0.64.22 (2026-08-03): Fix noclobber 'cannot overwrite existing file' error; Preserve CLAUDE_SECURESTORAGE_CO.
- v0.64.21 (2026-08-03): Diagnose Iroh session path flaps; Match cmux-tui Alt+N pane distribution to Zellij.
- nightly Nightly (2026-02-15): Automated nightly build for
c9e66e8.
The README references a Nightly download and notes that cmux NIGHTLY is a separate app with its own bundle ID and Sparkle feed.
Traction
GitHub stars: 25576 Forks: 2146 Open issues: 3971
Behind the repo
There is no explicit founder/company section in the provided facts other than the project name and GitHub page; no linked startup/organization data is included beyond the repository itself.
Caveats
License: none listed Platform: macOS only Created: 2026-01-28 Last push: 2026-08-04
Commands and snippets
Install examples quoted exactly from README:
brew tap manaflow-ai/cmuxbrew install --cask cmuxbrew upgrade --cask cmuxSession restore examples:
cmux hooks setup
cmux hooks setup codex
cmux hooks setup --agent opencode
Resume commands examples:
cmux surface resume set --kind tmux --checkpoint work --shell "tmux attach -t work"
cmux surface resume show --json
cmux surface resume clear --checkpoint work
Restore instructions:
File > Reopen Previous Session
⌘ ⇧ O
cmux restore-session
json






