This release includes 4 security fixes for security teams reviewing exposed deployments.
Topics
+6 more
Affected surfaces
Summary
AI summaryBroad release touches Fixed and Hardened Issues, tmux Compatibility, SDK and Reliability, and Highlights.
Full changelog
RMUX 0.9.1
RMUX 0.9.1 is a security, compatibility, and reliability release for the 0.9 series. It strengthens access control, improves Windows terminal behavior, completes several tmux-compatible
features, and makes SDK pane operations more resilient.
Highlights
- Added visible pane scrollbars and copy-mode line-number gutters, including styling, geometry, and mouse interaction.
- Hardened server-access authorization across attaches, control clients, prompts, menus, mode trees, and delayed operations.
- Improved Windows clipboard, multiline bracketed paste, terminal input, and exclusive-action handling.
- Strengthened stable pane identity across reindexing, moves, delayed commands, and SDK operations.
- Improved daemon shutdown, process cleanup, Unix socket recovery, and special-file buffer I/O.
- Produced signed, immutable, and independently verifiable artifacts through RMUX's exact-candidate release pipeline.
Fixed and Hardened Issues
-
#125 (https://github.com/Helvesec/rmux/issues/125) — Fixed keyboard-driven begin-selection and select-line jumping to a previously cached mouse position. Mouse coordinates are now
consumed only by commands originating from the applicable mouse event. -
#92 (https://github.com/Helvesec/rmux/issues/92) — Completed Windows multiline bracketed-paste handling across LF/CRLF input, fragmented reads, isolated leading characters, and
intervening console key noise. -
#91 (https://github.com/Helvesec/rmux/issues/91) — Further hardened OSC 52 clipboard handling by binding replies to their originating attach generation and routing queries only
through eligible attached clients. -
#94 (https://github.com/Helvesec/rmux/issues/94) — Extended stable-pane identity guarantees beyond snapshots to composite SDK operations, render streams, moves, reindexing, and
cancelled reads.
Security
- Revalidate server-access authority during attach and control registration and before delayed or interactive operations execute.
- Keep Unix socket permissions synchronized with access-control changes and socket rebinding.
- Prevent late or timed-out OSC 52 replies from satisfying later clipboard requests.
- Reject Windows batch scripts in structured argv mode, where cmd.exe cannot safely preserve arbitrary argument boundaries.
tmux Compatibility
- Render pane scrollbars and copy-mode line-number gutters with compatible styles and mouse hit-testing.
- Implement list-windows -a across sessions.
- Improve repeated target precedence, sourced-command target resolution, linked-window mutations, lifecycle hooks, and final-window removal.
- Keep if-shell -F synchronous when combined with -b, matching tmux 3.7b behavior.
- Keep keyboard copy-mode selections anchored to the keyboard cursor when mouse mode is enabled.
- Prevent background run-shell and if-shell queues from reusing stale mouse coordinates.
- Improve get-clipboard, focus-follows-mouse, float comparisons, and linked-pane selection behavior.
SDK and Reliability
- Pin composite pane operations to stable pane IDs across moves and reindexing.
- Preserve in-flight render updates when a pending next() call is cancelled.
- Bind guarded delayed actions to the exact client, session, window occurrence, pane, or output generation they captured.
- Make special-file buffer I/O cancellable and handle empty-writer FIFOs correctly on macOS.
- Restore private and custom Unix sockets safely at startup and after SIGUSR1.
- Join accepted daemon tasks and tracked status-job process trees during shutdown.
- Fence and reset Windows terminal input around exclusive terminal actions.
Packaging
-
#104 (https://github.com/Helvesec/rmux/pull/104) — Added prefix-aware discovery of private helpers under lib/rmux/libexec, improving compatibility with Arch Linux and other Unix
package layouts. -
Publish Linux x86_64 and arm64, macOS Intel and Apple Silicon, Windows x86_64, Debian, RPM, and Snap artifacts.
-
Provide SHA256 checksums, Sigstore release authorization, and SLSA Build Level 2 provenance attestations.
-
The stable tag and GitHub Release are signed and immutable.
Upgrade Notes
RMUX 0.9.1 keeps detached RPC wire version 5 and remains wire-compatible with RMUX 0.9.0.
Restart long-running RMUX servers after upgrading so all fixes take effect:
rmux kill-server
See SECURITY.md (https://github.com/Helvesec/rmux/blob/v0.9.1/SECURITY.md#verifying-releases) for release verification instructions.
Contributor
Thanks to @BarbUk (https://github.com/BarbUk) for the prefix-aware Unix helper discovery contributed through #104 (https://github.com/Helvesec/rmux/pull/104).
Direct downloads, checksums, and signature material are available below.
Security Fixes
- Revalidate server-access authority during attach, control registration, and before delayed/interactive operations (hardens access control)
- Synchronize Unix socket permissions with access‑control changes to prevent permission drift
- Prevent late/timed‑out OSC 52 clipboard replies from satisfying later requests (prevents reply hijacking)
- Reject Windows batch scripts in structured argv mode where cmd.exe cannot safely preserve argument boundaries
Weekly OSS security release digest.
The CVE patches and breaking changes that affected production tools this week. One email, every Sunday.
No spam, unsubscribe anytime.
Share this release
About Rmux
All releases →Beta — feedback welcome: [email protected]