tmuy is a terminal multiplexer for agents.
Like tmux, but stripped down for agent workflows: one named PTY-backed session per task, no panes, no windows, just durable terminals you can attach to, send input to, tail, wait on, and script.
Session data lives in files in ~/.tmuy.
Sandboxing via Bubblewrap on Linux.
tmux is optimized for humans managing layouts. tmuy is optimized for agents and task-oriented workflows.
- one session = one task
- stable names and hashes, easier for scripts and supervisors to target
- built-in
send,tail,wait,inspect, and--json - logs and metadata are persisted automatically
curl -fsSL https://raw.githubusercontent.com/nick1udwig/tmuy/master/install.sh | shOr:
curl -fsSL https://raw.githubusercontent.com/nick1udwig/tmuy/master/install.sh | sh -s -- -b ~/.local/binPin a specific release:
curl -fsSL https://raw.githubusercontent.com/nick1udwig/tmuy/master/install.sh | sh -s -- -v v0.2.0Build from source:
cargo install --path .Start a shell session:
tmuy new iosReconnect later:
tmuy attach ios
tmuy send ios "git status"
tmuy tail -f ios
tmuy wait ios --timeout-secs 300Run a one-off command in its own PTY:
tmuy new tests -- /bin/sh -lc "cargo test --locked"
tmuy tail testsRun a restricted session on Linux:
tmuy new review --fs ro:. --net off -- /bin/sh -lc "rg TODO src"- keep a Codex or Claude Code session alive while you switch devices
- run mobile dev tasks over SSH without losing the terminal state
- supervise long-running builds or test runs
- give an agent a sandboxed terminal with limited filesystem or network access
- Linux and macOS support normal sessions
- restricted sandboxing is currently Linux-only via
bubblewrap - session data lives under
~/.tmuyby default
For more detail, see docs/spec.md.