features
Everything a terminal needs. Nothing a phone can't do.
mtmux is a faithful tmux client that happens to run in a browser tab. The hard parts are input, layout and getting there at all — so that is where the work went.
01 — input
The modifier row
Mobile keyboards hide the keys terminals live on. mtmux puts them back: a persistent row with the prefix key, esc, ctrl, alt, tab and the arrows. Modifiers latch, so ⌃b % is two taps rather than a contortion.
- The prefix key is a real key, not a menu item
- Modifiers latch, so chords are taps rather than holds
- A hardware Bluetooth keyboard passes chords straight through
- Signal buttons for the interrupts you actually send
02 — layout
Reflow, not squinting
A three-column layout on a 34-inch monitor is unusable at 390px. Reflow restacks panes vertically, keeps the focused pane full width, and never resizes the underlying tmux window — so your desktop layout is exactly where you left it.
- Per-device client size, independent of the server window
- Tap a pane to focus it, and the rest get out of the way
- A session and window switcher built for a thumb
- On a tablet, real splits with room to actually use them
03 — the rest
Details that decide whether you keep it
Truecolor and glyphs
24-bit colour, powerline separators, box drawing and Nerd Font icons, rendered on a WebGL canvas.
Copy-mode that copies
Select in copy-mode and the selection lands in the device clipboard as well as the tmux buffer.
Scrollback search
Search a pane's history and jump between matches, with the same keys you already use.
Reconnects on its own
A dropped WebSocket reconnects and reattaches without you doing anything. Cellular handoffs are survivable.
Sessions, windows and panes
Create, rename, switch and kill from the UI — the operations you would otherwise reach for the prefix key to do.
A file browser
Read a diff or a log in the same tab. Paths are allow-listed, so a paired browser only reaches what you allow.
Themes and type
Terminal theme, font size and cursor style are per-device and persisted, because a phone wants different values than a desktop.
No account required
Signing in is optional and only buys more registered servers. The tunnel and local mode work without one.
Honest offline behaviour
When the connection is gone, the UI says so instead of showing you a frozen screen you might mistake for a live one.
0
ports to forward on your router
0
SSH keys stored on your phone
1
times you enter the pairing code
1
command to run on the machine
See it on your own session.
Install, run mtmux, scan the code. Two minutes, no account.