atmd 0.2.3

ATM daemon - session registry and broadcast server for monitoring coding agents
Documentation

Agent Tmux Manager (ATM)

Build Status License: MIT

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

curl -sSL https://raw.githubusercontent.com/damelLP/agent-tmux-manager/main/scripts/install.sh | sh

Or via Cargo:

cargo install atm && atm setup

Quick start

atm                    # launch TUI (starts daemon automatically)

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 -m opus -d right         # spawn default harness with model and direction
atm spawn --harness pi             # spawn a specific harness
ATM_SPAWN_PI_BIN=mise ATM_SPAWN_PI_ARGS='x pi' atm spawn --harness 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:

[harness]
default = "pi"

[harness.pi]
binary = "mise"
default_args = ["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

git clone https://github.com/damelLP/agent-tmux-manager.git
cd agent-tmux-manager
cargo build --release

License

MIT — see LICENSE.