Skip to main content

TUI for humans. Deterministic agent CLI for AI workflows. One interface to see, control, and automate tmux.

Project description

tmuxx

Your terminal, orchestrated. By you and your agents.

  _|
_|_|_|_|  _|_|_|  _|_|    _|    _|  _|    _|  _|    _|
  _|      _|    _|    _|  _|    _|    _|_|      _|_|
  _|      _|    _|    _|  _|    _|  _|    _|  _|    _|
    _|_|  _|    _|    _|    _|_|_|  _|    _|  _|    _|

TUI for humans. Deterministic agent CLI for AI workflows. One interface to see, control, and automate tmux.

Install

pip install tmuxx
# or, on managed systems (Debian/Ubuntu):
pipx install tmuxx
# optional Node wrapper (expects tmuxx binary in PATH):
npm install -g tmuxx

Requires Python 3.10+ and tmux. The npm package is a thin wrapper that forwards to the tmuxx binary.

Usage

# default: interactive TUI with pane activity indicators
tmuxx

# explicit TUI mode
tmuxx tui

# deterministic agent automation mode
tmuxx agent --help

# binary version
tmuxx --version

TUI Features

The interactive TUI now displays pane-level activity status:

  • = idle — pane at shell prompt (available)
  • = running — agent actively processing
  • = waiting — agent blocked on permission/input

Worktree footer shows all agent branches with status badges:

  • Click a branch to jump to that window
  • ! badge warns if agent needs your input

Keybindings

Key Action
n New session
w New window
h Split pane horizontally
v Split pane vertically
k Kill selected session/window/pane
r Rename session or window
s Activate selected window/pane
a Attach to session
y Yank (copy) preview to clipboard
b Toggle sidebar
? Show help menu
R Force refresh
+ / - Resize pane up/down
[ / ] Resize pane left/right
q Quit

Agent Orchestration

Run parallel AI agents in isolated git worktrees, each with its own branch and tmux window. Monitor all agents with pane-level activity visibility — see which ones are running, idle, or blocked on user input.

Deterministic Workflow Commands

tmuxx agent start-task <session_name> "<prompt>" [--branch ...] [--base-branch ...] [--agent-command ...]
tmuxx agent task-report <branch>
tmuxx agent complete-task <branch> [--test-command ...] [--commit-message ...]
tmuxx agent abort-task <branch>

Recommended command flow for skills:

  1. start-task creates worktree + tmux window and runs the agent command.
  2. task-report provides branch status, diff, and log presence with stable fields.
  3. complete-task or abort-task performs capture + cleanup in one operation.

JSON-first Mode

All tmuxx agent commands support --json for machine-safe parsing:

tmuxx agent list-worktrees --json
tmuxx agent start-task dev "fix login bug" --json
tmuxx agent task-report fix-login-bug --json
tmuxx agent complete-task fix-login-bug --test-command "pytest -q" --json

run-and-capture is scoped to the command you send (it returns command-local output, not full pane scrollback).

Full Command Surface

# introspection
tmuxx agent list-sessions
tmuxx agent capture-pane %1 --lines 200
tmuxx agent capture-window @2
tmuxx agent screenshot-window @2 --output ./window.png

# session/window/pane operations
tmuxx agent create-session dev
tmuxx agent create-window dev --name logs
tmuxx agent split-pane %3 --horizontal
tmuxx agent send-command %3 -- npm test
tmuxx agent send-text %3 -- "draft note in shell"
tmuxx agent send-keys %3 C-c
tmuxx agent send-keys %3 --literal -- "echo hello"
tmuxx agent run-and-capture %3 --wait-seconds 2 --lines 300 -- pytest -q

# worktree operations
tmuxx agent launch-agent dev "add auth tests" --base-branch feat-auth
tmuxx agent list-worktrees
tmuxx agent diff-worktree feat-auth-tests
tmuxx agent merge-worktree feat-auth-tests --test-command "pytest -q"
tmuxx agent discard-worktree feat-auth-tests
tmuxx agent read-agent-log feat-auth-tests

Legacy MCP Compatibility (Optional)

tmuxx is now single-binary first. If you still need MCP for external clients, the legacy module remains in source.

pip install "tmuxx[mcp]"
python tmux_mcp.py

License

MIT

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

tmuxx-0.3.8.tar.gz (35.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

tmuxx-0.3.8-py3-none-any.whl (35.7 kB view details)

Uploaded Python 3

File details

Details for the file tmuxx-0.3.8.tar.gz.

File metadata

  • Download URL: tmuxx-0.3.8.tar.gz
  • Upload date:
  • Size: 35.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for tmuxx-0.3.8.tar.gz
Algorithm Hash digest
SHA256 ecb80ff2a800d5da1f3f36f4ebe70a4a8bbd193c4b2dcbadf803022dc55ce658
MD5 85e29ccb8b1a2d76a88c543f4bb678aa
BLAKE2b-256 614e29fa85efcc90355552fba74336628cd8d82968f84372c6fe77dfcf0ac3fd

See more details on using hashes here.

File details

Details for the file tmuxx-0.3.8-py3-none-any.whl.

File metadata

  • Download URL: tmuxx-0.3.8-py3-none-any.whl
  • Upload date:
  • Size: 35.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for tmuxx-0.3.8-py3-none-any.whl
Algorithm Hash digest
SHA256 5a87028ccd7ac42b91183732b423baa2c0041b7965973c21a8d105f6b3b3f995
MD5 97559935ea9ebf94b5624ff0e1083adb
BLAKE2b-256 0e7b86fe7a610a2064e0085163a929662833fcff2f4b52183fa4efecb1281dab

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page