cmux
A native macOS terminal built on Ghostty with vertical tabs and notifications when an agent needs your input
Low risk
We rate an entry low when it mostly gives the agent instructions and reference material.
Why this level
- A terminal application with the same system access as a regular terminal
Install
In your terminal, with SkillFoxx CLI
npx skillfoxx add cli/cmuxDetects the agents on your machine, checks the risk and pins the version.
Other ways to install
Install the tool
brew install cmuxCommands for macOS and Linux, on Windows run them in Git Bash.
Install: brew tap manaflow-ai/cmux && brew install --cask cmux, or download the DMG from GitHub Releases. Wire cmux notify into your agent's hooks for notifications.
Other ways from the author
brew tap manaflow-ai/cmux
brew install --cask cmuxThis is third-party code. Review the repository files before installing.
What it does
cmux is a Swift and AppKit terminal for people running many parallel Claude Code, Codex or OpenCode sessions at once. A sidebar with vertical tabs shows the git branch, PR status, working directory, and the latest notification for each workspace. The notification system catches terminal escape sequences (OSC 9/99/777) through the cmux notify CLI, which you can wire into agent hooks: a pane with a waiting agent gets a blue ring. A built-in browser with a scriptable API lets an agent read the page's accessibility tree, click and fill forms right next to the terminal, and cmux ssh spins up a workspace for a remote machine.
Who it is for. For macOS developers running several coding agent sessions in parallel who want to see at a glance which one is waiting on them.
Good fit when
- You run several Claude Code or Codex sessions at once and lose track of which one is waiting for you
- You want a terminal showing git and PR status right in the tabs, without switching to a separate client
- You want a built-in browser an agent can drive right next to the terminal
Not a fit when
- You are not on macOS: the app is native to Mac only
- A plain terminal or tmux with no agent integration is enough
Example request
Split the window into a terminal and browser pane and open localhost:3000 in the browser while I work with Claude Code in the next tabLimitations
macOS only. Agent notifications need the agent or a hook to emit the right escape sequences, otherwise the highlight will not trigger.
How to disable. Remove the app with brew uninstall --cask cmux, or drag cmux.app from Applications to the Trash.
Security check
- A terminal application with the same system access as a regular terminal
README in short
The README explains that the author kept losing track of context across many Claude Code and Codex sessions with generic system notifications, and built cmux as a native Mac terminal on Ghostty. Key features: a sidebar with git branch and PR status, an escape-sequence notification system with a cmux notify CLI, a built-in scriptable browser based on agent-browser, SSH workspace support, and a tmux-free Claude Code Teams mode. Everything is also scriptable via CLI and socket API. Open source under GPL.
FAQ
Is this an Electron app?
No, cmux is written in Swift and AppKit with libghostty rendering, so it does not lag like typical Electron orchestrators.
Do I need tmux?
No, Claude Code Teams mode and splits work without tmux, through cmux's native panes.
Related
An MCP server built into the Netdata agent: metrics, logs, alerts and live process, service and container data for an AI assistant
GitHub's official MCP server: code, issues, pull requests, Actions and security alerts straight from the agent
Agent Skills for Google products
Agent Skills for Google products and technologies
Official Google skill collection for working with Google Cloud, BigQuery, GKE, ads and analytics from an agent
AWS's official MCP server suite: docs, IaC, containers, serverless, databases, cost and monitoring