从tmux平滑迁移到RMUX:90+兼容命令清单与10分钟上手教程
【免费下载链接】rmuxUniversal Rust multiplexer with a typed SDK — drive any CLI or TUI app from code. Native on Linux, macOS, and Windows.项目地址: https://gitcode.com/gh_mirrors/rm/rmux
RMUX 是一款用 Rust 编写的终端复用器(Terminal Multiplexer),实现了90 多个 tmux 命令,原生支持 Linux、macOS 和 Windows(无需 WSL)。如果你正在使用 tmux,RMUX 让你几乎零成本迁移:熟悉的命令、快捷键和配置文件都能继续工作,同时还能解锁 Web 共享、类型化 SDK 等 tmux 没有的新能力。
为什么选择 RMUX?🧭
对于 tmux 老用户,RMUX 的核心价值可以概括为三点:
| 维度 | tmux | RMUX |
|---|---|---|
| 平台 | 主要为 Unix 系 | 原生 Linux / macOS /Windows(无 WSL) |
| 命令兼容 | — | 90+ tmux 命令,带兼容性测试矩阵 |
| 自动化 | shell 脚本 | Rust / Python / TypeScript 类型化 SDK |
| 共享终端 | 基本靠 tmate 等外部方案 | 内置 Web Share,端到端加密 |
RMUX 明确采用「与 tmux 行为对齐(ISO required)」的兼容策略:list-panes -s、new-session -e、load-buffer -等常用行为都经过与 tmux 的 head-to-head 探测验证。完整的兼容决策记录见 docs/tmux-compat-decisions.md。
5分钟安装 RMUX 📦
各平台都有官方安装方式,任选其一即可:
| 平台 | 安装命令 |
|---|---|
| macOS / Homebrew | brew install rmux |
| Windows / WinGet | winget install rmux |
| Windows / Chocolatey | choco install rmux |
| 跨平台 / Cargo | cargo install rmux --locked |
| Nix | nix profile install github:Helvesec/rmux |
💡 也可以从源码构建或拉取仓库:
git clone https://gitcode.com/gh_mirrors/rm/rmux
安装完成后,验证版本:
rmux -V rmux diagnose --human # 体检式诊断环境是否健康10分钟上手:tmux 命令无缝对应 ⚡
好消息是:你已经在会用了。RMUX 的常用命令与 tmux 一一对应:
| 你想做的事 | tmux | RMUX(完全相同) |
|---|---|---|
| 新建会话 | tmux new -s work | rmux new-session -s work |
| 分屏 | tmux split-window -h | rmux split-window -h |
| 列出会话/面板 | tmux ls/tmux list-panes -s | rmux list-sessions/rmux list-panes -s |
| 发送按键 | tmux send-keys | rmux send-keys |
| 读取粘贴缓冲 | tmux load-buffer - | rmux load-buffer - |
不确定某个命令是否支持?两条命令帮你确认:
rmux list-commands # 查看全部 tmux 兼容命令面 rmux split-window --help # 单条命令的帮助快捷键保持 tmux 习惯
默认 prefix 仍是Ctrl-b,prefix + %左右分屏、prefix + "上下分屏、prefix + [进入复制模式等经典操作全部保留。如果想改成Ctrl-a或调整鼠标、剪贴板行为,项目内置了一份对 tmux 用户非常友好的起步配置,可直接参考 docs/examples/human-friendly.conf,撰写思路见 docs/human-friendly-config.md。
迁移清单:老配置和生态如何平滑过渡 🔄
1️⃣ 配置文件:tmux.conf 自动兜底
RMUX 优先读取.rmux.conf(Linux/macOS 位于~/.rmux.conf,Windows 位于%USERPROFILE%\.rmux.conf)。
关键在于:如果找不到 RMUX 配置,它会尽力解析你现有的tmux.conf。不受支持的插件行只会被报告而不会中断启动——也就是说,你的老配置大概率可以原样生效。如想关闭这一兜底行为,设置环境变量RMUX_DISABLE_TMUX_FALLBACK=1即可。
2️⃣ tmux drop-in:让外部工具继续调用 tmux
有些工具(比如 Claude Code 的 teammate 模式)只会调用tmux这个二进制。RMUX 提供了 drop-in 机制,通过一个tmuxshim 把它们平滑接入 RMUX:
rmux doctor tmux-dropin # 检查 shim 是否就绪、给出建议 rmux setup tmux-shim # 一键创建 tmux shim对应行为由 tests/socket_dropin.rs 中的集成测试持续保障。同时,tmux 式的$TMUX环境变量在 drop-in 调用下也会被正确识别,保证会话指向同一个 socket。
3️⃣ 建议的迁移步骤(10分钟版)
- 装 RMUX(约 1 分钟):用上面任意一条安装命令
- 体检(1 分钟):
rmux diagnose --human - 跑通老配置(2 分钟):
rmux new -s work,确认 tmux.conf 兜底生效 - 验证命令面(2 分钟):
rmux list-commands对照你的常用命令 - 给外部工具上 shim(3 分钟):
rmux setup tmux-shim
RMUX 独有的进阶能力 🚀
迁完之后,这些 tmux 没有的功能可以直接体验:
Web Share:把终端面板分享给浏览器
一条命令把某个会话共享到浏览器,终端执行仍在本地进行,链路采用混合抗量子端到端加密:
rmux new-session -d -s work rmux web-share -t workClaude Teammate 模式:AI 协作开箱即用
运行rmux claude即可在 RMUX 工作区中启动 Claude Code,并自动携带--teammate-mode tmux参数——底层正是借助上面的 tmux shim 实现的,不会与你系统里已装的 tmux 冲突:
类型化 SDK:用代码驱动任意 CLI / TUI
RMUX 是少数可以从代码里精确操控终端复用器的工具,官方提供 Rust(rmux-sdk)、Python(librmux)、TypeScript(@rmux/sdk)三套 SDK,支持等待面板输出、快照、按键广播等自动化原语,SDK 概览见 docs/scripting-sdk.md。
常见问题 FAQ ❓
Q:RMUX 是 tmux 的完全克隆吗?不是字节级克隆,而是「有策略的兼容」:该对齐的行为严格对齐,个别 tmux 已知缺陷(丢数据、挂起等)会刻意保持更安全的行为。差异清单全部公开在 docs/tmux-compat-decisions.md。
Q:迁移后原来的 tmux 还能共存吗?可以。作为rmux调用时不会读取$TMUX,不会抢占你已安装的 tmux;只有显式设置 drop-in shim 的工具才会被路由到 RMUX。
Q:Windows 用户需要 WSL 吗?不需要。RMUX 在 Windows 上是原生运行时,这是它相对 tmux 最直观的优势。
Q:出问题怎么排查?优先rmux diagnose --human看人类可读诊断;若怀疑是 tiny CLI 兼容问题,可设置RMUX_DISABLE_TINY_CLI=1强制走完整 CLI 再试。
写在最后
从 tmux 到 RMUX,本质上只是把tmux换成rmux,再加上一份.rmux.conf(甚至什么都不加)就完成了迁移。省下的时间,可以留给 RMUX 真正让你升级的地方:Windows 原生体验、浏览器加密共享,以及用三语言 SDK 编写自动化脚本。现在就可以试试:装一个 RMUX,跑一句rmux new -s work,你的 tmux 肌肉记忆立刻就能用。💪
【免费下载链接】rmuxUniversal Rust multiplexer with a typed SDK — drive any CLI or TUI app from code. Native on Linux, macOS, and Windows.项目地址: https://gitcode.com/gh_mirrors/rm/rmux
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考