Rmux: Bộ đa nhiệm terminal có thể lập trình với phong cách SDK Playwright
Rmux là một terminal multiplexer mới được viết bằng ngôn ngữ Rust, giải quyết các hạn chế trong việc tự động hóa tmux truyền thống. Công cụ này cung cấp giao diện dòng lệnh tương thích với tmux và một SDK Rust mạnh mẽ, cho phép kiểm soát và tự động hóa terminal theo phong cách Playwright trên nhiều nền tảng.

Rmux là một giải pháp đa nhiệm terminal (terminal multiplexer) phổ quát được xây dựng cho "kỷ nguyên của các tác nhân AI" (agentic era). Được viết lại từ đầu bằng ngôn ngữ Rust, Rmux không chỉ duy trì khả năng tách rời (detachable) và quản lý phiên làm việc như tmux, mà còn thêm vào một lớp lập trình (programmable layer) mạnh mẽ.
Rmux Logo
Tại sao lại là Rmux?
Tác giả của dự án chia sẻ rằng Rmux ra đời từ sự thất vọng khi sử dụng tmux trong nhiều năm. Việc tự động hóa các tác vụ trên tmux thường rất khó khăn, đòi hỏi phải sử dụng grep và các lệnh sleep để "cạo" (scrape) dữ liệu đầu ra một cách thô sơ.
Rmux được thiết kế để giải quyết vấn đề này bằng cách cung cấp một SDK có kiểu dữ liệu (typed SDK) và các snapshot có cấu trúc. Điều này cho phép các nhà phát triển viết mã để điều khiển terminal một cách chính xác, tương tự như cách Playwright tự động hóa trình duyệt web.
Tính năng nổi bật
Rmux cung cấp hai giao diện chính hoạt động trên cùng một daemon (quy trình nền):
- CLI tương thích tmux: Hỗ trợ khoảng 90 lệnh của tmux, cho phép bạn sử dụng các phím tắt và cấu hình quen thuộc mà không cần thay đổi thói quen.
- SDK Rust bất đồng bộ: Cung cấp API để điều khiển terminal từ mã nguồn, bao gồm các ID pane ổn định, snapshot có cấu trúc và cơ chế chờ theo kiểu locator.
Rmux Version
Công cụ này hỗ trợ đa nền tảng native trên Linux, macOS và Windows (sử dụng ConPTY thực sự, không cần WSL), giúp việc triển khai và orchestration các tác vụ dài hạn trở nên dễ dàng hơn bao giờ hết.
Cài đặt nhanh
Bạn có thể cài đặt Rmux dễ dàng thông qua script cài đặt hoặc sử dụng Cargo:
macOS và Linux:
curl -fsSL https://rmux.io/install.sh | sh
Windows (PowerShell):
irm https://rmux.io/install.ps1 | iex
Từ Cargo:
cargo install rmux --locked
SDK và Tự động hóa
Điểm mạnh nhất của Rmux nằm ở khả năng lập trình. Dưới đây là ví dụ nhanh về cách sử dụng SDK để tạo một phiên làm việc, gửi lệnh và chờ kết quả:
use rmux_sdk::{EnsureSession, EnsureSessionPolicy, Rmux, SessionName, TerminalSizeSpec};
use std::time::Duration;
#[tokio::main]
async fn main() -> rmux_sdk::Result {
let rmux = Rmux::builder()
.default_timeout(Duration::from_secs(5))
.connect_or_start()
.await?;
let session_name = SessionName::new("work").expect("valid session name");
let session = rmux
.ensure_session(
EnsureSession::named(session_name)
.policy(EnsureSessionPolicy::CreateOrReuse)
.detached(true)
.size(TerminalSizeSpec::new(120, 32)),
)
.await?;
let pane = session.pane(0, 0);
pane.send_text("printf 'ready\\n' && sleep 1\n").await?;
pane.wait_for_text("ready").await?;
let snapshot = pane.snapshot().await?;
println!("{}x{}", snapshot.cols, snapshot.rows);
Ok(())
}
Hỗ trợ nền tảng và Kiến trúc
Rmux được xây dựng với kiến trúc modul hóa, chia sẻ cùng một giao thức địa phương (local protocol) giữa CLI, SDK và widget Ratatui. Điều này đảm bảo mọi tính năng có sẵn trên giao diện dòng lệnh đều có thể thực hiện được thông qua mã lập trình.
Platform Support
Hiện tại, dự án đang ở phiên bản v0.2.0 (bản xem trước công khai) và được cấp phép kép theo MIT và Apache License 2.0. Đây là một công cụ hứa hẹn cho những ai cần kiểm soát terminal ở mức độ sâu hơn, đặc biệt là trong các môi trường DevOps và phát triển AI agents.
Bài viết liên quan

Phần mềm
Plugin Checkmarx Jenkins bị xâm phạm trong cuộc tấn công chuỗi cung ứng
11 tháng 5, 2026

Phần mềm
Google khoe chiến tích "tokenmaxxing" và tung ra các tác nhân AI mới tại I/O 2026
19 tháng 5, 2026

Phần mềm
Google tung ra Antigravity 2.0: Ứng dụng lập trình thế hệ mới với công cụ CLI và gói đăng ký AI Ultra
19 tháng 5, 2026
