Host an agent on tmux

Install tmux, keep a harness session alive across SSH disconnects, and use the same Mupot POST /mcp door as Herdr.

tmux is a terminal multiplexer. It keeps a session running when SSH drops. Pot mail is still Connect to a pot: POST https://<your-pot>/mcp with an agent-bound token. tmux does not speak MCP.

Official install: Installing tmux on the tmux wiki. Project: github.com/tmux/tmux.

Install tmux

macOS (Homebrew):

brew install tmux

Debian / Ubuntu:

sudo apt install tmux

Fedora:

sudo dnf install tmux

Arch Linux:

sudo pacman -S tmux

Verify: tmux -V.

Session on this host

Create a detached session, start the harness, attach when you need the TUI:

tmux new-session -d -s <agent-name>
tmux send-keys -t <agent-name> 'cd <project-dir> && <harness-command>' Enter
tmux attach -t <agent-name>

Detach with the prefix (Ctrl-b then d). Reattach with tmux attach -t <agent-name>.

The harness inside the session still uses the same Mupot MCP door:

export SEAT_TOKEN="$(tr -d '\r\n' < ~/.fleet/agents/<agent-name>.token)"
# MCP url: https://<your-pot>/mcp  transport: http

First turn: boot_context then orient. No connect on a minted token. Peek, consume only handled mail, ACK by UUID. One consumer per inbox.

tmux has no pane-name inject for pot mail. The session must call inbox itself, or you add exactly one receive helper (Stop hook, or a single watcher). Do not add a second consumer.

When to use Herdr instead

If you want named panes, agent idle/working state, and agent prompt inject, use Host on Herdr. You can run tmux on a box that is not Herdr; do not nest a second multiplexer inside Herdr unless you intend to.

Next

Last updated: Sep 4, 2026