rmux  by Helvesec

Code-driven CLI and TUI automation via a universal terminal multiplexer

Created 1 month ago
2,375 stars

Top 18.6% on SourcePulse

GitHubView on GitHub
Project Summary

Summary

RMUX is a universal, async, typed terminal multiplexer engine designed to programmatically drive any CLI or TUI application. It targets developers and power users seeking robust automation and control across Linux, macOS, and Windows, offering native cross-platform execution and typed SDKs for seamless integration.

How It Works

Built in Rust, RMUX functions as a local daemon, managing shells, panes, and sessions while clients attach via IPC. Its core innovation lies in providing typed SDKs for Rust, Python, and TypeScript, enabling code-driven terminal interaction. It boasts extensive tmux command compatibility (90+ commands) and features a novel web sharing capability with post-quantum end-to-end encryption for secure remote access.

Quick Start & Requirements

Installation is streamlined via multiple package managers (brew, winget, scoop, choco, nix, cargo) or a direct PowerShell installer. No specific hardware prerequisites are listed beyond standard OS compatibility. Comprehensive documentation, examples, and demos are available at rmux.io/docs.

Highlighted Details

  • Universal engine with typed SDKs for Rust, Python, and TypeScript.
  • Native cross-platform runtime supporting Linux, macOS, and Windows.
  • Extensive tmux command compatibility (90+ commands) with focused tests.
  • Web Share feature offering hybrid post-quantum E2E encryption.
  • Ratatui widget for rendering live RMUX panes within Rust applications.
  • Direct integration with Claude via rmux claude command.

Maintenance & Community

The project primarily utilizes GitHub Issues for feature requests and bug reports. Specific community channels (Discord/Slack), active maintainer details, or sponsorship information are not detailed in the README.

Licensing & Compatibility

RMUX is dual-licensed under the permissive MIT License or Apache License 2.0, allowing for broad compatibility, including commercial use and integration into closed-source projects.

Limitations & Caveats

Version lag may occur with some package managers. The CLI may involve a "tiny public CLI" dispatcher alongside a "private full CLI helper" depending on installation. While aiming for tmux compatibility, unsupported plugin lines are ignored without aborting startup, suggesting potential partial support for complex tmux configurations. OS and terminal boundary code is isolated in lower-level crates.

Health Check
Last Commit

19 hours ago

Responsiveness

Inactive

Pull Requests (30d)
20
Issues (30d)
37
Star History
684 stars in the last 30 days

Explore Similar Projects

Starred by Patrick Kidger Patrick Kidger(Core Contributor to JAX ecosystem), Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), and
7 more.

vibetunnel by amantus-ai

0.2%
5k
Turn any browser into your terminal
Created 1 year ago
Updated 2 days ago
Feedback? Help us improve.