manaflow-ai/cmux
Open source Ghostty-based macOS terminal with vertical tabs and notifications for AI coding agents. Built for multitasking, organization, and programmability.
What is cmux?
cmux is a native macOS terminal application built on top of the Ghost‑like ( Ghostty ) rendering engine. It adds a rich UI layer that lets you work with multiple terminal panes, a vertical‑sidebar, and an in‑app browser while keeping the look‑and‑feel of a regular terminal. The key selling point is its notification system that highlights the pane where an AI coding‑agent (Claude Code, Codex, OpenCode, etc.) is waiting for input, so you can spot the right window instantly.
Core features (as described in the README)
| Feature | What it does | Why it matters for AI‑agent work |
|---|---|---|
| Notification rings & panel | Blue ring around a pane and a badge in the sidebar when an agent needs attention; a panel lists all pending notifications. | Lets you see at a glance which agent is waiting, even across many split panes. |
| Vertical & horizontal tabs | Sidebar shows git branch, PR status, working directory, listening ports, and the latest notification text. Tabs can be split both vertically and horizontally. | Gives context (branch, PR) next to each agent session, reducing mental switching. |
| In‑app browser | A split‑screen browser pane that can be scripted via an API ported from agent‑browser. | Agents can interact with a live dev server (click, fill forms, run JS) without leaving the terminal. |
| SSH workspaces | cmux ssh user@host creates a remote workspace; browser panes route through the remote network, and you can drag‑and‑drop files to upload via scp. |
Run agents on remote machines while keeping the same UI and notification experience. |
| Claude Code Teams integration | cmux claude‑teams spawns Claude Code teammates as native splits with sidebar metadata. |
Makes multi‑agent Claude sessions visible and controllable. |
| Custom commands | Define project‑specific actions in cmux.json that appear in the command palette. |
Quick one‑click shortcuts for common agent or build steps. |
| Programmable CLI & socket API | Create workspaces, split panes, send keystrokes, automate the browser, etc. | Enables scripting of complex workflows or integration with other tools. |
| Native macOS app (Swift/AppKit) | No Electron/Tauri; fast start‑up, low memory, GPU‑accelerated via libghostty. | Better performance for heavy‑weight coding sessions. |
| Ghostty compatibility | Reads existing ~/.config/ghostty/config for themes, fonts, colours. |
You can keep your current Ghostty configuration. |
| Session restore | Saves layout, directories, scrollback, browser history; can resume agent sessions via hooks. | Pick up where you left off after a crash or restart. |
| Cross‑platform extensions | iOS beta client, Nightly builds, Homebrew Cask installer. | Easy installation and early‑access testing. |
Who might benefit?
- Developers who run multiple LLM‑powered coding agents (Claude Code, Codex, OpenCode, etc.) and need a way to see which one is waiting for input.
- Teams that orchestrate agents across local and remote machines – the SSH workspaces keep everything in one UI.
- Power users who like scriptable tooling – the CLI/socket API lets you automate pane creation, browser actions, and notifications.
- Anyone already using Ghostty – you can keep your theme and get extra UI primitives without switching terminals.
How to get it
- DMG – download the latest
.dmgfrom the GitHub releases page and drag to Applications (auto‑updates via Sparkle). - Homebrew –
brew tap manaflow-ai/cmux && brew install --cask cmux. - Nightly – separate bundle for testing the newest
mainbranch.
Limitations (from the README)
- macOS‑only for now (the iOS client is still beta).
- The app itself does not provide any AI model; it simply hosts whatever terminal‑based agents you run.
- Session restore does not checkpoint live process state – only layout, scrollback, and browser history.
Quick start checklist
- Install via DMG or Homebrew.
- Launch cmux; your existing Ghostty theme is applied automatically.
- Open a workspace (
⌘ N) and run an AI coding agent (e.g.,claude‑code). - When the agent needs input, watch for the blue ring and sidebar badge.
- Use
⌘ Shift Uto jump to the latest unread notification. - Optionally add project‑specific shortcuts in
~/.config/cmux/cmux.json.
In a sentence: cmux is a native macOS terminal that adds a sidebar, notification system, split‑screen browser, and programmable API to make working with multiple AI coding agents smoother and more visible.
Related
- Project
- Project
- Project
- Project
- Project