// compare
mmux vs Agent Deck
Both run your AI coding agents inside tmux so they keep going after you close the terminal. Agent Deck is a Go session manager built around a list of agents with status, forks, MCP and skill management, a web UI and a phone-controlled conductor. mmux is a Rust workspace for one project at a time: agents, terminals and dev processes in a sidebar, the selected one live in the main pane, and a git panel next to it.
Last checked against Agent Deck v1.16.28 on .
// tl;dr
Pick Agent Deck if you run many agents across many projects and want fleet tooling around them: forking a conversation into a new worktree, toggling MCP servers and skills per session, Docker sandboxes, cost tracking, a browser UI, agents on remote SSH hosts, or a conductor you message from Telegram or Slack. It has far more agent-specific features than mmux.
Pick mmux if you want the agent, its dev server, a shell and git in one screen: the agent stays live in the main pane while you scan the sidebar, the built-in git panel stages, commits and pushes, and dev processes start, stop and hand over between worktrees. Closed sessions come back when you reopen the directory, with Claude, Codex, Pi and Grok resuming their conversations.
At a glance
| Capability | mmux | Agent Deck |
|---|---|---|
| Sessions survive closing the terminal or SSH | yes: everything runs in a per-directory tmux session | yes: each agent is its own tmux session |
| Work in an agent while the overview stays on screen | yes: sidebar, live main pane and git panel side by side | partly: list with a read-only preview; Enter attaches full screen, Ctrl+Q returns |
| Agent status in the list | yes: working, ready, needs input, crashed | yes: running, waiting, idle, error; hook-based for Codex and pi |
| Fork an agent conversation | no: not supported | yes: Claude, OpenCode, Pi, Codex, Oh My Pi; into a new worktree by default |
| Git worktrees | yes: one key; merge back with M; finished ones are cleaned up |
yes: per session; setup and teardown scripts, sparse checkout, jj |
| Git UI (stage, commit, push, diff) | yes: built-in panel with generated commit messages | no: none documented |
| Dev servers and scripts | yes: Processes with start, stop, teardown commands and logs | partly: run them in a shell session; no process type |
| MCP, skills and cost tracking | no: left to each agent | yes: MCP manager and socket pool, skills manager, cost dashboard |
| Docker sandbox for agents | no: not built in | yes: per session, project bind-mounted |
| Reach it from a phone or browser | partly: over SSH, with a single-column layout under 60 columns | yes: web UI, Telegram and Slack conductor, remote SSH hosts |
| Reopen after quit or restart | yes: agents and terminals restored; Claude, Codex, Pi, Grok resume | partly: sessions kept in a registry; restart resumes supported tools |
| Drive it from scripts and agents | yes: mmux send, wait, ask, answer |
yes: agent-deck session send, JSON output, conductors |
| License, language | GPLv3, Rust | MIT, Go |
Agent Deck facts from its README and TUI reference at v1.16.28. "None documented" means we did not find it in those docs, not that it can never be done.
What is Agent Deck?
Agent Deck describes itself as "mission control for your AI coding agents" and a "terminal session manager for AI coding agents" [1]. It is an open source project hosted at github.com/asheshgoplani/agent-deck, written in Go with Bubble Tea, MIT licensed, and runs on macOS, Linux and Windows through WSL [1][4]. You install it with a shell script, Homebrew or go install, and it needs tmux. The repository mentions no paid tier. Usage telemetry is opt-in and off until you agree [1].
The TUI is a grouped list of sessions with a preview pane that shows the last lines of the selected session and refreshes every two seconds [2]. Each session is a tmux session; Enter attaches to it and Ctrl+Q detaches back to the list. It knows about Claude Code, Gemini CLI, OpenCode, Codex, Copilot, Cursor, pi and several more, with different levels of integration per tool, and any other command can be added as a custom tool [1].
Around that list it adds conversation forking, an MCP manager with a shared socket pool, a skills manager, Docker sandboxes, cost tracking, a web UI (agent-deck web), remote instances over SSH, and "conductors": long-running agent sessions that watch the others and can be reached through Telegram or Slack [1][3][5]. The project releases often; v1.16.28 came out on 2026-10-10 [6].
Where Agent Deck is better
- Forking conversations.
fforks the selected session through the tool's own fork support, and by default puts the fork in a new worktree with the parent's uncommitted changes [1]. mmux has no fork. - Agent configuration tooling. MCP servers and Claude skills can be attached per session or per project from the TUI, a socket pool shares MCP processes across sessions, and per-group Claude accounts are supported [1]. mmux leaves all of that to each agent's own config.
- Remote and phone access. A browser UI, Telegram and Slack bridges through a conductor, and management of agent-deck instances on other machines over SSH [1][3]. mmux is reached over SSH like any terminal program and has no web UI.
- Docker sandboxes. A session can run in a container with the project mounted, and
agent-deck tryruns a one-shot sandboxed task [5]. mmux runs agents directly on the host. - Cost tracking. A dashboard (
$) shows token spend by day, session and model, with optional budget limits [1]. mmux does not track cost. - More worktree options. Sparse checkout for large monorepos, Jujutsu workspaces, bare-repository layouts, and setup plus teardown scripts per repository [1].
- Many projects in one list. Groups, fuzzy search, a global search across Claude conversations, archiving and profiles are built for dozens of sessions at once [1][2].
Where mmux is better
- The agent stays on screen. The selected agent, terminal or process runs live in the main pane next to the sidebar, so you type into it without leaving the overview. Agent Deck shows a preview and switches to the full tmux session when you attach.
- Git is part of the window. The git panel stages files and folders, commits with a suggested message, pushes, pulls, switches branches, shows diffs, and can schedule a commit for later. No separate tool needed.
- Dev processes are first class. Processes have start, stop and restart keys, an optional
stop:teardown such asdocker compose down, andmmux readfor their logs. Across worktrees only one checkout runs a given process at a time, so ports stay the same. - Worktrees as project boxes.
wcuts a worktree with a generated name that opens as its own box with its own agents, terminals and git panel.Mmerges it back, and finished worktrees (merged or pushed, clean, idle) are removed after 30 minutes by default. - Quit and come back. After
q, a crash or an update restart, reopening the directory restores the agents and terminals that were open, and Claude, Codex, Pi and Grok resume their conversations. - Desktop notifications over SSH. Bells and notification escapes from any session become desktop popups on the machine your terminal runs on, because mmux sends them as escape sequences through tmux.
- Small surface. One binary, a YAML file per project and an optional global one. Fewer features also means less to configure.
When to use which
Choose Agent Deck when
- you supervise ten or more agents across many repositories at once
- you want to fork a conversation to try a second approach
- you manage MCP servers, skills or Claude accounts per session
- you want to check on agents from a browser, Telegram or Slack
- agents should run in Docker containers, or you need cost tracking
Choose mmux when
- you work in one project (or one workspace of projects) at a time
- you want the agent, its dev server and git visible in one window
- you start and stop dev servers next to your agents, across worktrees
- you work over SSH and want notifications on your local desktop
- you want quit-and-reopen to bring your agents back mid-conversation
Moving from Agent Deck to mmux
- Install mmux. It needs tmux, which you already have for Agent Deck.
- In each project, run
mmux init. The wizard offers presets for Claude, Codex, Pi, Gemini, Amp, opencode and Grok, including their auto-approve modes. Other tools go underagents:in~/.mmux/config.yamlwith acmdandargs. - If you used
.agent-deck/worktree-setup.sh, move it toworktrees: setup:inmmux.yaml, and list gitignored files to copy underworktrees: copy:. - Add dev servers as
processes:inmmux.yamlinstead of running them in shell sessions. - For several repositories in one sidebar, run
mmux init workspacein their parent directory. - Scripts that called
agent-deck session sendcan usemmux sendandmmux wait.
curl -fsSL https://mmux.org/install.sh | sh
cd ~/some/project
mmux init
mmux
Your conversations live in each agent's own history, not in Agent Deck, so nothing needs exporting. The two tools can also stay installed side by side: Agent Deck names its tmux sessions agentdeck_* [1], and mmux sets its tmux options per session, never globally.
FAQ
What is the main difference between mmux and Agent Deck?
Agent Deck is a list of agent sessions with fleet features around it: forks, MCP and skill management, Docker sandboxes, cost tracking, a web UI and remote control through Telegram or Slack. mmux is a single-project workspace where the selected agent runs live next to a sidebar of agents, terminals and dev processes and a built-in git panel.
Are mmux and Agent Deck free?
Yes. Both are free and open source. Agent Deck is MIT licensed and written in Go. mmux is GPLv3 licensed and written in Rust.
Can mmux fork an agent conversation like Agent Deck?
No. Agent Deck forks Claude, OpenCode, Pi, Codex and Oh My Pi sessions through each tool's native fork support. mmux has no fork feature; you can start another agent in a new worktree with w or mmux worktree new, but it starts a fresh conversation.
Which one works better from a phone?
Agent Deck, if you want an app-like experience: it has a browser UI and a conductor you can message from Telegram or Slack. mmux works over SSH from a phone terminal and switches to a single-column layout under 60 columns, but it has no web UI or chat bridge.
Can I run Agent Deck and mmux on the same machine?
Yes. Agent Deck creates tmux sessions named agentdeck_* and can use its own tmux socket. mmux runs one tmux session per directory and sets its options per session, never globally.
Sources
Other comparisons
- mmux vs CCManagerA TUI for parallel agent CLIs across worktrees and projects that runs without tmux; mmux keeps agents alive in tmux and adds shells, processes and git.
- mmux vs Claude SquadRuns each agent in its own tmux session and git worktree; mmux creates worktrees on demand and adds dev processes and a git panel.
- mmux vs PaseoA daemon that runs your agent CLIs, with desktop, iOS, Android, web and CLI clients; mmux keeps everything in one terminal session.
- mmux vs tmuxThe general-purpose terminal multiplexer mmux itself runs on: panes, windows and full configuration, with no notion of agents.
- mmux vs workmuxA CLI that pairs each git worktree with a tmux window and uses tmux as the interface; mmux puts its own TUI on a hidden tmux session.
Try mmux
One binary for macOS, Linux and WSL. Run mmux in any project directory.
curl -fsSL https://mmux.org/install.sh | sh