无头多路复用器
Unterm vs rmux
两者都让程序驱动终端。rmux 给你的代码一个库;Unterm 给你的 agent 一个协议——并给你一扇看着这一切的窗口。
rmux(public preview,v0.2)是 tmux 血统的 Rust 终端多路复用器:daemon 断线保活、约 90 条 tmux 兼容命令、Windows 原生 ConPTY、带结构化 pane 快照和 Playwright 式等待的类型化异步 SDK。它没有 GUI——是「代码使用终端」的基础设施,而且这件事做得确实好。
| 能力 | Unterm | rmux |
|---|---|---|
| 可从外部经 MCP 驱动 | ✓ | ✗ (SDK only) |
| 每个动作都有可脚本化 CLI | ✓ | ✓ tmux-compat |
| 内置 AI 编码 agent 启动器 | ✓ ×7 | ✗ |
| agent 自动接回终端 MCP | ✓ | ✗ |
| Agent 座舱(收件箱 · 编队 · 审阅) | ✓ | ✗ |
| 身份 profile(一窗一套凭据) | ✓ | ✗ |
| 多实例编排 | ✓ | ~ sessions |
| 会话录制 → markdown | ✓ md | ~ snapshots |
| MCP 截图 + 文件上传 | ✓ | ✗ |
| 右键即复制 / 粘贴手势 | ✓ gesture | — |
| 内置代理管理 | ✓ | ✗ |
| 本地优先,无云端 / 无登录 | ✓ | ✓ |
| AI 内嵌进终端 | ✓ agent-driven | ✗ |
| GPU 渲染 | ✓ | — (no GUI) |
| macOS + Linux + Windows | ✓ | ✓ |
| 客户端开源 | ✓ MIT | ✓ MIT/Apache |
| 原生界面语言 | ✓ ×9 | en |
| 价格 | $0 | $0 |
✓ 有 · ✗ 无 · ~ 部分 · ×N 数量。「AI 内嵌」那行的 ✗ 刻意如此 正是整个产品主张:Unterm 把 AI 留在外面,把终端本身作为它抓握的表面。
为什么选择 Unterm
- ✓ MCP,而不是 SDK。用 rmux 自动化意味着针对它的 Rust SDK 写代码、发代码。Unterm 暴露 99 个 MCP 方法——Claude Code、Codex、Gemini CLI 或任何 MCP 客户端零集成代码直接驱动真实终端,首次启动即被
setup-ai自动发现。 - ✓ 还有反方向。rmux 是单向的:代码驱动终端。Unterm 同时看得见舱内正在跑的 agent——每个 pane 的实时状态、等待优先的收件箱、带验证门禁审阅的 worktree 编队。终端是座舱,不只是被驱动的目标。
- ✓ 一个人类真正用的终端。Unterm 是你整天工作的 GPU 窗口:右键复制粘贴手势、身份 profile、9 种界面语言、脱敏 markdown 会话记录。rmux 完全没有渲染面——配哪个终端 App 得你自己解决。
rmux 更强的地方
rmux 的会话保活是真 tmux 级:SSH 断了 agent 的 shell 继续跑,任何地方重连。类型化快照和 wait_for_text 定位比文本匹配更精细;无头 daemon 也更适合根本不存在 GUI 的 CI 流水线。还能嵌进 Ratatui 应用。
一句话结论
在 CI 或服务器上构建「代码拥有终端会话」的系统?rmux 是很强的原语。在桌面与 AI agent 并肩工作、终端也是你自己住的地方?那是 Unterm——对 agent 协议原生,对你座舱原生。
MIT 许可 · macOS / Linux / Windows · 无需账号、无需登录。