A minimal TUI for managing tmux sessions. No commands to memorize.
$ tp
╭──────────────────────────────────────────╮
│ tmux sessions │
│ │
│ ● main 3 windows attached │
│ ○ api-server 1 window detached │
│ ○ notes 2 windows detached │
│ │
╰──────────────────────────────────────────╯
↑/k ↓/j: navigate Enter: attach n: new
r: rename x: kill q/Esc: quit
tip: Ctrl-b d to detach from tmux
tp is a shortcut for tmux-pilot, installed automatically.
tmux is essential for running long-lived processes on remote servers — coding agents, builds, anything you want to survive closing your laptop. But the commands are hard to remember. tmux ls, tmux attach -t, tmux kill-session -t... every time.
tmux-pilot gives you a simple picker. No commands to memorize. Works reliably over SSH.
curl -fsSL https://raw.githubusercontent.com/blockful/tmux-pilot/main/install.sh | bashThis installs tmux-pilot and the tp shortcut to ~/.local/bin.
Homebrew
brew install blockful/tap/tmux-pilotGo
go install github.com/blockful/tmux-pilot/cmd@latestDownload binary
Grab the latest binary from Releases.
curl -fsSL https://raw.githubusercontent.com/blockful/tmux-pilot/main/install.sh | bashSame command as install. It detects your current version and skips if already up to date.
curl -fsSL https://raw.githubusercontent.com/blockful/tmux-pilot/main/install.sh | bash -s -- --uninstalltpThat's it. You see your sessions, you pick one.
| Key | Action |
|---|---|
↑/k |
Navigate up |
↓/j |
Navigate down |
Enter |
Switch to session |
n |
Create new session |
r |
Rename session |
x |
Kill session (stays in picker) |
q/Esc |
Quit |
tip: Ctrl-b d to detach from tmux (this is a tmux command, not tmux-pilot)
| Flag | Description |
|---|---|
-h, --help |
Show help |
-v, --version |
Show version |
-l, --list |
Print sessions as TSV (pipe-friendly) |
-S <path> |
Custom tmux socket path |
-L <name> |
Named tmux socket |
--no-color |
Disable colors (also respects NO_COLOR env) |
$ tp # open the picker
$ tp --list # non-interactive, TSV output
$ tp -S /tmp/custom.sock # use a specific tmux socket
$ tp --version # check installed version- ~1000 lines of Go
- One dependency:
golang.org/x/term(Go extended stdlib) - Raw ANSI rendering — no TUI framework
- In-place drawing — no alt screen escape sequences
- Works cleanly through SSH → tmux layers
MIT