会话持久化
断开客户端、休眠笔记本、网络中断——Agent 照跑不误。重新打开就连回同一个 pane,滚动缓冲区完整保留。四小时的迁移任务不再依赖一条 SSH 不断。
在构建机、GPU 机、预发机——以及本机上,运维 Claude Code、Codex、Gemini CLI、Grok CLI、Aider 等编程 Agent。每个 Agent 跑在所属主机的 tmux 会话里:关闭客户端、合盖休眠、网络中断, 工作照常进行。现在,平板与手机上也一样。
AgentMux 不持有 Agent 进程,而是连接到主机上的 tmux 会话——持久化由结构保证, 而不是由客户端的在线状态保证。
断开客户端、休眠笔记本、网络中断——Agent 照跑不误。重新打开就连回同一个 pane,滚动缓冲区完整保留。四小时的迁移任务不再依赖一条 SSH 不断。
每个 Agent 的 pane 是完整终端——颜色、鼠标、选中、搜索——而不是只读的会话记录。可以中途介入、纠正 Agent,再把控制权交回去,无需重启任务。
终端区最多拆成 3×3 九个窗格,跨主机同屏、各自独立操作。分隔缝可拖动,双击标签临时全屏,窗格布局随窗口宽度智能折行,下次启动自动恢复。
一条指令发给任意选中的 Agent,每个返回一张回执,确认是否真的送达。对集群的批量操作是可审计的,而不是假定成功。
Ollama 本地模型可以接一个目标——比如查明某个 Agent 为何卡住——一次一个工具调用地推进。任何写操作都挂起等待你的显式审批,定时巡检严格只读。
项目事实、偏好与 Agent 活动被索引,可按原文或语义检索。Embedding 本地生成,内容不出本机;命中已知模式的凭据在入库前自动脱敏。
同一个二进制可以无头运行,平板浏览器打开就是完整的 AgentMux——终端、Agent、工具箱、文件浏览一个不少。安卓另有内嵌完整核心的独立 App:SSH 直接从设备发起,不依赖任何一台常开的机器。
在提问、跑完等你看结果、还是闲在提示符前——过去在树上都只是「running」。现在轮询会读每个 pane 并分类,需要人介入的转变亮起标记,有人真的去看了才落下。
启动后与每六小时检查一次新版:下载、校验 sha256、原地替换重启,失败自动回滚。整套配置也能加密成一个文件带去另一台电脑,导入永不覆盖已有条目。
以下全部为应用实拍截图,非概念渲染。
附着到任何 Agent 的 tmux pane:全彩输出、鼠标报告、搜索与选中。右侧面板同时给出进程状态、最近输出与操作按钮。

把同一条指令下发给任意选中的 Agent——跨项目、跨主机。每个 Agent 返回送达回执,批量操作从「假定成功」变成「逐个确认」。

安装面板先探测主机,只展示它真正能装的 Agent CLI 与运行时,并说明其他项为何不可用。安装在 tmux 内执行,连接中断也不会留下装了一半的包。

默认采用 Apple 系统色板,另有 Nord、Solarized 等六套主题,含浅色模式。信息密度为长时间值守而调校。

桌面之外多了两条路径:无头 serve 模式让任何浏览器成为完整客户端;安卓则有内嵌核心的独立 App。两者用的是同一份前端与同一个核心,不是缩水版。
Release 附带专用服务器版 agentmux-server-linux-{amd64,arm64}——完全静态,不需要 GTK/WebKit,也不需要图形界面,复制到任何 Linux 服务器裸启动即服务。桌面版加 --serve 进入同一模式。首次启动生成访问令牌并打印在日志里(存于数据目录 serve-token,也可用 AGENTMUX_TOKEN 指定)。
平板浏览器访问 http://主机:8642,输入一次令牌——终端、Agent、工具箱、文件浏览全部可用。iPad 上「分享 → 添加到主屏幕」、安卓上「添加到主屏幕」,之后它就是一个独立 App。关闭浏览器不会停掉任何东西——和关掉桌面窗口一样,Agent 都活在远端 tmux 里。
每个 Release 附带 agentmux-android.apk(Android 8.0+ · arm64),内嵌与服务器版同源的完整核心,由前台服务拉起——锁屏也不会被冻结,SSH 直接从设备发起,配置与密钥留在本机。手机与平板的布局也重做过:窄屏下侧栏改为覆盖式抽屉,底部导航栏把集群树、命令面板、详情与设置放到拇指够得到的位置,并尊重安全区。
除了平板与手机,8 月这一轮更新还落地了以下能力。
终端掉线不等于任务结束——远端 tmux 还在跑。管道会被重建:同一个 shell id、同一份滚动缓冲、同一个 pane,退避从 1 秒到 15 秒,约五分钟后仍保留手动重连按钮。TCP 与 SSH 双 keepalive 各答一个问题;一次性命令终端不会被重跑。
有些活必须看见画面。右键主机,3389 与 5900 经它已有的那条 SSH 连接转发到本机,交给系统自带的查看器(远程桌面连接 / 屏幕共享 / Remmina)。只监听环回的桌面因此无需对外开放任何端口。
启动后与每六小时检查一次发布源,有新版本就在标题栏下方拉起一行横幅:升级重启、看更新说明、或稍后。下载带进度条并校验发布的 sha256,替换失败自动回滚到正在运行的那个版本。
主机、目录、项目、工作区与 Agent 定义写进一个口令加密的文件(Argon2id + AES-256-GCM),在另一台电脑打开。导入永不覆盖:同址主机、同名项目、同机同路径一律保留原样,同一个文件导入两次不会多出任何东西。
指标面板不再只讲主机在干什么,也讲它是什么:CPU 型号、内存条规格、物理磁盘与显卡。这些是静态信息,走一次性读取并按会话缓存,不占三秒一次的轮询。
一键安装新增 Grok CLI、Docker(六种方式,网络需要时自动切镜像,装完顺手起守护进程并加用户组)与 Ollama;界面新增繁體中文——按台湾用语重写的完整词表,不是简繁字符转换。
这些不是配置项,而是设计决定——多数约束无法被关闭。
密码与密钥口令以 AES-256-GCM 加密后落盘,密钥保存在系统钥匙串(Keychain / Credential Manager / Secret Service)。钥匙串不可用时降级为 0600 文件并在状态栏明示。
首次连接即固定主机密钥,之后任何不匹配都会中止连接并给出解释——中间人替换无法静默通过。
任何机密都不会跨入 UI 进程——界面只知道「某项机密已设置」,拿不到内容本身。
编排器只能调用固定白名单内的工具,每个工具在声明时就绑定风险等级。执行必须经过唯一的门:风险级 × 主机信任级 × 触发来源共同决定放行与否。
定时巡检被无条件拒绝一切非只读工具,该限制不可配置。它可以报告哪个 Agent 停滞了,但没有权力去动它。
每次编排运行的每一步都被记录——包括被拒绝、被否决、被搁置的提案。远程主机的输出以「数据」标记进入模型上下文,指令形状的文本会在审批卡片上触发警示。
迁移、重构、测试战役——跑得比一个工作日、比一条网络连接都久的任务。
三到五十台主机并发跑 Agent,收进一棵树:逐 Agent 状态 + 最近输出。
一次操作指挥整个舰队,并拿到每一份送达确认。
不用手拼安装命令,把一台新机器带到能干活的状态。
定时只读巡检,报告哪些 Agent 停滞了——但无权动手。
规划、embedding 与记忆全部本地运行;不代理 Agent 的模型流量,不读 API Key。
类 Unix 远程主机只需要 tmux 和一个 SSH 账号——tmux 缺失时 AgentMux 可以代装;远程 Windows 启用 OpenSSH 即可。 本机更简单:连凭据都不用。
阅读完整文档→远程机:地址、用户,ssh-agent / 密钥 / 密码任选其一,支持跳板机。本机:只要起个名字。
指定主机上的工作目录。也可以直接浏览主机文件,找到目录就地添加——名字、路径、主机都是现成的。
一个名字加一条启动命令。点 Start,它就跑在该主机的 tmux 会话里了。
claude --dangerously-skip-permissions附着 Agent、开 shell、装 CLI、换主题——最快的路径都在这里。
Ctrl / ⌘ + K全部由 GitHub Actions 从打了 tag 的 commit 产出,每个文件附带 .sha256 校验和。
任意 Linux · amd64 与 arm64 · 无需 GTK/WebKit 与显示器
agentmux-server-linux-amd64.tar.gz
agentmux-server-linux-arm64.tar.gz
xattr -dr com.apple.quarantine);Windows 选择「更多信息 → 仍要运行」。
使用 curl -L -O 下载可避免 macOS 隔离属性。
不会。目标、提示词与仓库约定始终归你。编排器只做调查和提案,任何会修改主机的动作都需要你显式审批后才会执行。
远程类 Unix 主机(Linux / macOS)需要 POSIX shell、tmux 与 SSH(缺 tmux 时 AgentMux 可以代装);远程 Windows 主机启用 OpenSSH Server 即可——会话由 AgentMux 自带的守护进程托管,首次使用时经 SFTP 自动部署。本机在 Linux / macOS 直接可用;Windows 上同一台电脑提供两种本机主机——WSL 发行版(tmux 所在),以及原生 Windows(PowerShell,由同一守护进程持久化,关窗口同样不停工作)。
不是。只有本地编排与记忆的语义检索需要 Ollama(一个对话模型 + 一个 embedding 模型)。不装它,应用的其余全部功能完整可用。
不能,这是刻意的边界。Agent 的模型流量从主机直连各家服务商,AgentMux 不代理、也不读取 API Key——因此既报告不了成本,也无法强制预算。
每份安装服务一位操作者:状态、凭据与决策日志都在本工作站上,没有共享服务端、团队账号或集中审计。两个人管同一批主机会看到同样的 tmux 会话,但各自保留历史。
不会。删除工作区或 Agent 记录只是移除本地记录,tmux 会话继续运行。唯一会销毁运行中会话的操作叫 Kill,它会先确认,并明确说明将失去什么。
两条路径。其一,在任意一台 Linux 上跑无头服务端(专用的 agentmux-server-linux-{amd64,arm64},或桌面版加 --serve),平板浏览器访问 http://主机:8642 并输入一次令牌,再「添加到主屏幕」当独立 App 用——iPad 走的就是这条。其二,安卓可以直接装 agentmux-android.apk,它内嵌了完整核心,什么服务端都不用。
serve 模式下核心跑在你的某台机器上,平板只是客户端——好处是手机、平板、桌面看到的是同一份状态。APK 把核心装进了设备本身:SSH 从手机直接发起,配置与密钥存在设备本地,不需要任何一台常开的机器。前台服务保活是必须的——没有它,锁屏后安卓会冻结进程并掐断所有 SSH 连接。
它默认只做令牌鉴权(首次启动生成,存在数据目录的 serve-token)。内网或 VPN 内使用足够;要经公网访问,请放在 HTTPS 反向代理之后,别把明文 HTTP 直接对外。