One terminal. Every tmux session. Every box.
curl -fsSL https://raw.githubusercontent.com/MoarNachos/tm/main/install.sh | bash
Automatically discovers every host in your ~/.ssh/config and lists their tmux sessions alongside your local ones.
If you can `ssh host`, tm can see it. Key-based auth only — no password prompts, ever.
Hosts are queried in parallel with short timeouts. Unreachable boxes are skipped silently, never block you.
Attach to a remote session over ssh -t, or switch-client locally when you're already inside tmux.
Create new sessions on any host and kill sessions anywhere — with confirmation before anything destructive.
A single Python file built on rich. No daemon, no state, no lock-in. Read it in five minutes.
tm parses the Host entries in your ~/.ssh/config (wildcards are ignored), then runs
tmux list-sessions locally and over ssh on each host in parallel, using
BatchMode=yes so only key-authenticated hosts respond.
a — attach by #, name, or host:namen — new session, on any hostk — kill a session (asks first)r — rescan all hostsq — quitCommands: tm local and tm remote scope the view,
tm ls lists everything and exits, tm attach <name> jumps straight into a
session, tm update self-updates to the latest release, tm help shows usage.
Requirements: Python 3.8+, tmux, and ssh keys for any remote boxes.