Agent Tmux Manager (ATM)
Real-time management for coding agents across tmux sessions.
What it does
ATM gives you a live dashboard and CLI for coding agents running in tmux, including Claude Code and pi. See context usage, cost, model, and activity at a glance — and control agents without switching panes.
- Dashboard — real-time TUI with session tree, context bars, cost tracking, and live terminal capture
- Agent control — spawn, kill, interrupt, send text, and reply to prompts from the CLI
- Workspaces — create tmux sessions with built-in ATM sidebars, or inject sidebars into existing sessions
- Layouts — preset multi-agent arrangements (solo, pair, squad, grid) with one command
- Tmux native — status bar integration, popup picker, vim-style keybindings
Install
|
Or via Cargo:
&&
Quick start
Sessions appear as you use supported coding-agent harnesses. Press Enter to jump to any session, q to quit.
CLI at a glance
ATM_SPAWN_PI_BIN=mise ATM_SPAWN_PI_ARGS='x pi'
ATM auto-creates ~/.config/atm/config.toml with defaults when spawn config is first loaded. Default spawn harness and per-harness spawn defaults can be configured there:
[]
= "pi"
[]
= "mise"
= ["x", "pi"]
Environment overrides still take precedence when set (ATM_SPAWN_PI_BIN/ARGS, then legacy ATM_SPAWN_BIN/ARGS); otherwise config values are used, then built-in defaults.
atm kill <id> # kill agent and close pane
atm interrupt <id> # Ctrl+C an agent
atm send <id> "fix the tests" # send text to agent
atm reply <id> --yes # accept a permission prompt
atm peek <id> --prompt # extract the active prompt
atm list -f json --status working # list working agents as JSON
atm status # one-line summary for tmux status bar
atm workspace create # new session with ATM sidebar + agent + shell
atm workspace attach # inject sidebar into current session
atm layout pair # two agents + ATM sidebar
How it works
Claude Code / pi ──hook/extension──▶ atmd (daemon) ◀──socket── atm (TUI/CLI)
atm setup registers supported harness integrations (Claude Code hooks and the pi extension). Harness events are forwarded to the atmd daemon over a Unix socket, and atm connects for real-time display.
Documentation
See the Wiki for the full user guide, tmux integration, architecture, and troubleshooting.
Building from source
License
MIT — see LICENSE.