Show HN: Rmux – A programmable terminal multiplexer with a Playwright-style SDK

https://news.ycombinator.com/rss Hits: 10
Summary

ImportantCurrent release: v0.2.0, published on 18 May 2026. All 90 tmux-compatible commands are implemented, but bugs are expected — this is a fresh public preview. Please file issues if you hit one. RMUX exists because I believe the tmux use case has only been partially explored. My own starting point was simple: I wanted to run long-lived agents over SSH without losing their terminals, while still being able to inspect, script, and orchestrate everything around them. So I rebuilt that idea from scratch in Rust: a blazing-fast, tmux-compatible multiplexer with a typed SDK, persistent sessions, structured snapshots, and native local transports on Linux, macOS, and Windows, including Windows Named Pipes. No WSL required. RMUX is usable by agents, headless CLI workflows, and humans alike: you can give terminal apps detachable execution, reconnect later, inspect their state, drive them from code, or simply use it for normal tmux-style terminal work. Short, real examples of what RMUX can be used for. Prebuilt binary for macOS and Linux: curl -fsSL https://rmux.io/install.sh | sh Prebuilt binary for Windows PowerShell: irm https://rmux.io/install.ps1 | iex Direct downloads and SHA256 checksums are available from the v0.2.0 GitHub Release. From crates.io with Cargo: cargo install rmux --locked From a local checkout: cargo install --path . --locked For Rust applications: cargo add rmux-sdk cargo add ratatui-rmux The full RMUX documentation is available at rmux.io/docs. It includes installation guides, CLI references, SDK examples, terminal automation examples, and API documentation. rmux new-session -d -s work rmux split-window -h -t work rmux send-keys -t work 'echo "hello from rmux"' Enter rmux attach-session -t work Use command help locally: rmux list-commands rmux new-session --help rmux split-window --help [dependencies] rmux-sdk = "0.2" tokio = { version = "1", features = ["rt-multi-thread", "macros"] } use std::time::Duration; use rmux_sdk::{ EnsureSession, EnsureSe...

First seen: 2026-05-21 09:56

Last seen: 2026-05-21 20:06