Skip to content

Next Term vs cmux

cmux is a free, open-source (GPL-3.0) macOS terminal for AI coding agents, written in Swift and AppKit and rendered with libghostty. It has vertical tabs that show each workspace’s git branch, pull request, working folder, listening ports and latest notification, split panes, a scriptable browser pane, workspaces over ssh, and it restores windows, panes and supported agents’ sessions after a restart. Agents tell cmux they need you through terminal notification sequences or hooks, and a CLI and socket let scripts create workspaces, send input and read the screen. Next Term is the closest kind of app to cmux: also a free, open-source, native macOS terminal for agents, but MIT-licensed, and it reads each agent’s status from its screen or its output, with nothing to install, adds a code editor with side-by-side diffs, per-hunk staging and the Git Log, and is an MCP server through which one agent runs the others. Choose cmux for a Ghostty-based agent terminal with a browser pane and cloud machines. Choose Next Term to review and commit agents’ work in the same window, and to let an agent orchestrate the rest over MCP.

FeatureNext Termcmux
PlatformsmacOS 13 or latermacOS 14 or later; an iOS app in beta
Price and licenceFree, MITFree app, GPL-3.0; paid plans for cloud machines
Native interface✓ Swift and AppKit✓ Swift and AppKit, rendered with libghostty
Tabs and split panes✓ Tabs on top or in a list down the terminal’s left or right, and splits✓ Vertical tabs, workspaces and splits
Status of each agent✓ For the 21 agents it recognises, with no setup: working, done, waiting on you (with the question, for Claude Code, Codex, Command Code and OpenCode), failed. Read from the screen for Claude Code, Codex, Command Code, Gemini CLI and OpenCode, and from output timing for the rest✓ A ring around the pane and an unread badge when an agent sends a notification sequence or a hook calls cmux notify
Notifications✓ When an agent finishes or needs you, quoting Claude Code’s, Codex’s, Command Code’s and OpenCode’s questions; Dock badge; ⇧⌘U goes to the agent that has waited longest, in any window✓ A notification panel; jump to the latest unread
One agent runs the others✓ An MCP server: start, prompt, wait for and read agents, across projects; agents offer to run parallel tasks in tabs of their own, one agent each, after your yesPartly: a CLI and socket API that create workspaces and splits, send input and read the screen
Code editor✓ 112 grammars, Go to File (⌘P)—
Side-by-side diffs, per-hunk staging, Git Log and blame✓ And Git Diff (⌃⌘G): everything a branch changed, in one tab— Branch and pull request shown on the tab
Agents as their IDE✓ Claude Code, Gemini CLI, Qwen Code, Copilot CLI and OpenCode see your selection; all but OpenCode open their edits as diffs—
Browser pane—✓ Scriptable: navigate, click, type, read the page
Agents on your servers✓ Remote tabs over ssh, kept running in tmux or herdr, with the same status marks; under herdr, a row, a notice and an MCP id for each of its agents✓ Workspaces over ssh; attach to remote tmux sessions
Resume agents’ sessions✓ Brings back windows, tabs, splits and scrollback after an update or a quit; Claude Code, Codex and Qwen Code resume by themselves, other agents’ resume commands wait for ↩︎; lists the sessions eight agents kept for each project, to resume or fork✓ Restores the layout and resumes supported agents after a restart
Cloud machines—✓ Paid plans
  • You want Ghostty’s rendering and configuration in a terminal built around agents.
  • You want a browser next to your agents, one your agents can drive themselves.
  • You want cloud machines or a phone app for agents that keep running when your Mac is closed.
  • You want status with nothing to install. Next Term reads Claude Code, Codex, Command Code, Gemini CLI and OpenCode’s state from their own screens, and from output timing for 16 more agents. When Claude Code, Codex, Command Code or OpenCode waits on you, the notification quotes its question.
  • You want to review agents’ work where they run them: an editor, side-by-side diffs with per-hunk stage, unstage and roll back (⌥⌘G), the Git Log (⌥⌘L), blame, and a project sidebar with git status and line counts.
  • You want an orchestrator agent, not a script. Next Term’s MCP server registers itself in Claude Code, Codex, Gemini CLI and seven more agents, so an agent can start others in new tabs, wait until they stop, read their screens and answer their questions, guarded so an answer never lands on a newer question.
  • You want your agents to see your editor. Five agents connect to Next Term as their IDE: your selection goes with the next prompt, and the proposed edits of four of them (all but OpenCode) open as diffs to accept or reject.
  • You prefer the MIT licence.
  • You want your agents’ API keys out of plain-text config files. Secrets keeps them sealed on your Mac; agents use a key by name, after you approve with Touch ID or your password, and never get its value back.
  • Open the same folder in both. Agents write to the same files, so you can run agents in cmux and review and commit their changes in Next Term (nxtrm . opens the folder).
  • Agents in cmux can still use Next Term’s MCP server. An agent with Next Term’s server registered can start more agents in Next Term tabs, wherever it runs.
  • Bring your cmux setup. Next Term › Import Settings and Shortcuts… reads what cmux reads, Ghostty’s configuration and cmux’s own, and cmux’s own shortcuts: font, theme colours, cursor and the keys that have a Next Term command, shown before they apply. Only the shortcuts are read from cmux’s settings file, never its actions, commands or hooks.

No. cmux is its own Swift and AppKit app that uses libghostty to draw the terminal, and reads Ghostty’s configuration. Next Term is also native Swift and AppKit, with its own terminal built on SwiftTerm.

cmux shows an agent’s notification when the agent sends a terminal notification sequence or a hook runs cmux notify. Next Term reads the state from the agent’s screen for Claude Code, Codex, Command Code, Gemini CLI and OpenCode, and from output timing for other agents, so there is nothing to configure; when Claude Code, Codex, Command Code or OpenCode asks for permission, the notification quotes the question.

Can agents control cmux like Next Term’s MCP server?

Section titled “Can agents control cmux like Next Term’s MCP server?”

Partly. cmux has a CLI and a socket that create workspaces, send input, read the screen and drive its browser, which an agent can call through its shell. Next Term’s MCP server gives agents typed tools made for orchestration: each tab’s agent state, waiting until an agent stops, answering its question by id, and changes to files, commits and panes that wait for your approval on the Mac.

Checked October 2026 against cmux’s own site, documentation and repository. Products change quickly; if something here is out of date, please open an issue.