logoalt Hacker News

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

137 pointsby shideneyutoday at 9:22 AM66 commentsview on HN

Author here. RMUX started from a frustration: I've used tmux for years and got tired of scraping output with grep and sleeps to automate anything. So I rebuilt the multiplexer from scratch in Rust, with a programmable layer on top.

Two surfaces: a tmux-compatible CLI (~90 commands, your keybindings just work), and a typed async Rust SDK on the same daemon — stable pane IDs, structured snapshots, locator-style waits. The idea is Playwright-style automation, but for terminals.

Native on Linux, macOS, Windows (real ConPTY, no WSL).

Demos and docs at rmux.io. Happy to answer questions about the daemon protocol, ConPTY, or the SDK design.


Comments

pamatoday at 11:42 AM

Congrats on the launch. If emacs was unavailable and I needed tmux, I would try it. I am old school, and use emacs daemons for all shell multiplexing. The agents dont need explanations and know how to use emacsclient to create, read, or send inputs to named buffers that run the shells. Elisp is powerful, so manipulating windows is a breeze. Lots of people on tmux would benefit from this design though.

show 2 replies
eddyaipttoday at 1:13 PM

The Playwright-style snapshot/wait layer is the interesting part to me. A lot of agent terminal automation still breaks because the tool can send keys but can't prove which pane or terminal state it actually reached. Stable pane IDs plus explicit waits should make replay and debugging much saner than the usual grep+sleep loops.

show 1 reply
florianisttoday at 10:32 AM

The paragraph on the website inviting us to switch to rmux from tmux claims that tmux is programmed in C++. tmux is made in C.

show 1 reply
kloudtoday at 11:36 AM

Cool project, I like the idea of having tmux-compatible CLI. I used Zellij to get better UX, but many agent tools integrate with tmux. This way agent tools can still integrate tmux as a defacto standard for programmatic interface while having better interface for users.

But I wonder if tmux/rmux design is suboptimal since it couples session persistence and window management together. Do you have an opinion the design which separates the responsibilities? An example that pioneered this approach is abduco, and libghostty-based zmx being a modern implementation.

show 1 reply
btowntoday at 12:18 PM

Very cool! I think the hype around “agents are so good that you never actually need to see the underlying commands they are running or interact with the terminal session that they’re running” misses out on a lot of very important use cases, particularly around long running processes that may be shared across multiple agents. This will be very cool to see how best practices evolve!

show 1 reply
Sirentaltoday at 9:42 AM

The website is a little too obviously made by Claude. The first thing I noticed is the classic "pill with pulsing green dot that says something is active or live" claudism.

show 8 replies
cultofmetatrontoday at 10:04 AM

a week ago I was using cmux but its osx only and doen't work on remote terminals. then I switched to herdr which is great so far except its not s great at managing panes. I can't move them around or change ordering. now another terminal multiplexer. I'm getting whiplash.

all that said, none of the existing solutions are perfect and rust codebases are nice. how easy is it to reorder panes? is there a cli that lets me control the panel layout via a skill file and allow my opencode session to target and send data to other panes?

show 4 replies
jochtoday at 2:29 PM

Very nice!

I created `ygg`[0] a while back to easily spawn a new worktree when working with Claude/codex, and it also spawns that in a dedicated zellij tab. I think making the terminal multiplexer pluggable, so it would be easy to integrate something like this.

[0] https://github.com/joch/ygg

luizfwolftoday at 10:07 AM

I found the project quite interesting but what's the advantage over just using tmux with a hotkey to send keys?

show 3 replies
0x1ceb00datoday at 11:33 AM

Getting this error when installing from git bash:

$ curl -fsSL https://rmux.io/install.sh | sh rmux install: unsupported OS: MINGW64_NT-10.0-26200

notorandittoday at 11:48 AM

Scriptable terminal multiplexer?

Interesting portable scripting thingy. But it would only work with portable tools, not just everything. Especially with Windows tools.

show 1 reply
cat-whisperertoday at 11:33 AM

I used to use ghostty's applescript and built that into a claude skill. It worked like a charm. But this feels super interesting for programmability

kosolamtoday at 9:56 AM

Hey, I automate tmux all the time with send keys and capture.. how is your project improves vs tmux or zellij?

show 4 replies
small_modeltoday at 9:50 AM

Never had the need to do playwright automation for tmux, so not sure why I would use this above tmux which works well.

show 1 reply
yes_but_notoday at 12:01 PM

Floating panes seems not possible, or are they?

show 1 reply
elromuloustoday at 10:22 AM

Can someone describe the pros/cons vs zellij?

show 1 reply
DeathArrowtoday at 11:25 AM

1. ask Claude to rewrite X in Rust

2. ask Claude to make a website and claim R is better than X because it's Rust

3. advertise on HN, X and Reddit

4. ???

5. profit!

show 2 replies
perkovskytoday at 2:49 PM

[dead]

nikhilpareek13today at 10:17 AM

[dead]