跳到主要内容

AgentMux:远程服务器上 AI 编码 agent 的控制平面

· 阅读需 3 分钟

开源了 AgentMux:一个桌面应用,用来管理跑在远程服务器上的 AI 编码 agent。Go + Wails 3 + React,MIT 协议。

我的编码 agent 后来基本都挪到远程服务器上跑了 —— 一个 agent 一跑几十分钟,本地机器要开会、要休眠、要换网络,不太合适。麻烦在于管理:每次都得开终端、SSH、想一下这个项目在哪个目录、把 agent 起起来;机器和项目一多就开始记不住谁在跑什么,而连接一断,前台起的东西也跟着没了。

AgentMux 就是干这个的:所有服务器、项目和 agent 收在同一棵树里,按运行状态着色,谁在跑、跑到哪一步扫一眼就知道。

关键的一点是它启动的东西全在服务器的 tmux 会话里,桌面端不持有任何进程。所以关掉标签页只是 detach,关应用、断网、合盖都不影响 agent 继续干活,回来时终端还在原来的位置,滚动历史也在。

其它大致能做这些:

  • 真终端,xterm.js 直连 agent 所在的 pane,可以中途接手打字,不用先打断它
  • 一条指令发给多个 agent,每个单独回一张送达回执
  • SFTP 文件浏览器,双击文本文件用 Monaco 打开,保存是原子的、保留权限位,被别人改过会提示
  • 主机指标:CPU(分项与每核)、内存、磁盘、网卡、温度,有 NVIDIA 卡就把利用率和显存一起读出来
  • 安装面板:探测这台机器缺哪些 agent CLI(Claude Code、Codex、Gemini CLI、OpenCode、Aider、Cursor CLI),一键装,装的过程也在 tmux 里

密码和私钥口令落盘前用 AES-256-GCM 加密,主密钥放系统钥匙串,前端只知道某项凭据设了没有。它不代理 agent 的模型流量,也不碰 API key。

想试的话,release 页有 macOS、Windows、Linux 的包(没做签名,首次打开要多点一下)。从源码构建需要 Go 1.25+ 和 Node 20+,远端有 tmux 和一个 SSH 账号就行:

git clone https://github.com/tan-zhuo/AgentMux.git
cd AgentMux
cd frontend && npm install && npm run build && cd ..
go build -o agentmux .
./agentmux

还没做的也不少:原设计里的调度 AI 只搭好了管道,标签页内不能分屏,文件传输一次一个,指标历史只活在打开着的面板里。编辑器是 Monaco 不是 VS Code,跑不了插件,真需要的话在服务器上跑 code-server、让 AgentMux 用 tmux 守着它更合适。

代码在 github.com/tan-zhuo/AgentMux,欢迎试用和提 issue。

评论 / COMMENTS