xmux zer0ken
winget install --id=zer0ken.xmux -e A cross-machine, cross-mux session switcher
winget install --id=zer0ken.xmux -e A cross-machine, cross-mux session switcher
English · 한국어
A cross-machine, cross-mux session switcher.

Open a session from the landing screen

Switch sessions

Walk up to the host and the machine

Log in to a password machine

Resize the nav

Place the nav

Auto-hide the nav

xmux owns the terminal it is launched in and splits it in two. The nav holds a
card for every session on this machine, on its WSL distributions, and on every ssh
host it reaches, and the terminal view shows the selected session through a
live mux client. Hosts come from ~/.ssh/config and from the machines this one
already reaches, and each host's mux is detected from what it runs.
xmux works over ssh and the mux each host already runs, so it is installed only on the machine it is used from. It is not an alternative to tmux: it makes reaching tmux sessions simpler.
macOS, Linux, WSL, Android Termux:
curl -fsSL https://github.com/zer0ken/xmux/releases/latest/download/install.sh | sh
Windows PowerShell:
irm https://github.com/zer0ken/xmux/releases/latest/download/install.ps1 | iex
Windows CMD:
curl -fsSL https://github.com/zer0ken/xmux/releases/latest/download/install.cmd -o install.cmd && install.cmd && del install.cmd
INSTALL.md covers Homebrew, WinGet, and Cargo, pinning a version,
updating, and removing xmux.
xmux
The landing screen lists every session as the machines answer. In the nav:
↑ / ↓ move the selection.Enter sends the keyboard to the selected session.Ctrl-g then Tab returns focus to the nav.Ctrl-g ? lists every key, and Ctrl-g q quits.The accent background marks the selection, where the next key acts. Hover
previews the item under the pointer without moving the selection; over a selected
item, it adds an underline. A standalone card has one blank cell inside each side
of its selection or hover background. A part of a shared label, such as the machine
or mux in machine/mux, highlights only its text. A selected standalone card can
show ⏎ while the nav has focus; shared label parts carry no Enter mark.
| Platform | Muxes |
|---|---|
| unix-likes | tmux, GNU screen, zellij, abduco, tuios, herdr |
| Windows | psmux, herdr |
Remote hosts need ssh on the machine that runs xmux and one of these muxes.
INSTALL.md - every install path, the install check, upgrading, and pinning a versiondocs/guide.md - the command line, hosts and login, configuration, and the control socketdocs/keybind.md - every key, the prefix, popups, and the mousedocs/principles.md - the design principlesdocs/requirements.md - the behavior requirementsCONTEXT.md - the vocabulary and the design overviewAGENTS.md - the per-directory working notesMIT. The full text is in LICENSE.