amux 是面向 AI 编程智能体的开源控制平面,目标是把多个并行编码代理组织成一个可协调的“AI 工程团队”,并通过网页仪表盘或手机统一操作。项目采用本地优先、自托管架构,数据存于 SQLite,交付形式为单个 Rust 二进制。
主要能力围绕共享协作展开。共享看板中的任务认领是原子操作,采用 compare-and-swap,两个工作器不会抢到同一张卡;任务“完成”需要证据,“已验证”需要同伴检查。每个工作器都能看到团队中谁在线、各自负责什么、正在做什么,并可在打断同伴前先查看其终端。工作器之间可用带来源标记的消息互相 @,服务器记录真实发送者,使来源可核验。使用者可从仪表盘或手机直接向任意运行中的会话输入内容,实现任务中途纠偏而不必停止运行。调度方面支持 cron 式重复提示(如每天 9 点、每 15 分钟)以及面向隔夜运行的自节奏自主循环。工作器可组织为共享记忆、环境与门禁的分组通道,配置解析顺序为卡片 → 工作器 → 分组 → 全局。运行中的工作器可切换模型或提供商,按任务选择模型并保留上下文。所有提示、回复和投递都作为账本记录保存,可供后续查询。自愈看门狗可自动压缩、重启崩溃的会话并重放最后一条消息。
系统由八个基础原语构成:board(共享看板与原子认领、类型和状态门禁)、workers(并行代理会话,默认使用 tmux,具备持久身份)、schedulers(cron 式周期与一次性任务及审计运行历史)、filesystem(浏览、编辑、搜索工作器工作目录,含文件查看器与媒体管线)、groups(工作器标签,用于可见性、门禁、记忆与环境的作用域)、memories(全局 → 分组 → 工作器的分层指令与知识)、environment(同样分层的环境变量,控制工作器可访问哪些第三方 API)、messages(工作器之间及人与工作器之间的文本,在轮次边界投递)。按作用域读写配置统一走 GET/PUT /api/scope。
使用方式以上述单命令安装脚本为主。脚本会检查前置条件(Rust 工具链、tmux,安装任何内容前会提示确认),构建工作区,把服务端和 CLI 安装到 ~/.local/bin,在 macOS 加载 launchd 代理,首次启动时生成 ~/.amux(数据库、TLS、认证令牌),等待 /health 就绪,并打印访问地址 https://localhost:8824,接受一次自签名证书警告后即可从仪表盘添加第一个工作器。重复运行 install.sh 会就地升级且不触碰数据;uninstall.sh 移除二进制与代理但保留 ~/.amux。日常命令包括 make run(拉取代码后重建 release 并安装,launchd 管理的服务自动接管)和 make dev(用于迁移或功能开发,避免影响线上数据库)。环境要求为 tmux 3.2+,以及 Claude Code、Codex CLI、Gemini CLI 中至少一个。Linux 方面,在带 systemd 的发行版(Ubuntu 22.04+、Debian 11+、Fedora 36+)上安装脚本会自动创建并启用 amux-server.service、amux-builder.service 和 amux-builder.timer 三个用户级服务;无 systemd 的发行版需手动运行服务。
项目还提供 .mdai 计算型 Markdown 文件:它是由模型产出值的 DAG 节点,通过 YAML frontmatter 中的 sources 连接文件、文件夹、其他 .mdai 或 amux:messages 实时来源,每条连接带独立提示词,正文为综合指令;打开节点会按上游优先、深度优先运行整条链,并具备循环检测和输入哈希缓存,每次打开记录运行历史。默认模型为最快的 Claude 模型(当前为 Haiku 4.5),可由每文件 model: 或 AMUX_HELPER_MODEL 覆盖。命令行客户端 amux-rs 按 --url、$AMUX_RS_URL、$AMUX_URL 顺序查找服务器,回退到 https://localhost:8824;看板变更遵循状态门禁,遇到 409 会打印检查清单和确切重试命令。
限制与注意事项:项目采用 MIT + Commons Clause 许可,可免费使用、修改和自托管,但商业转售需单独许可。herdr 终端后端不在 CI 覆盖范围内,其测试模拟进程边界,绿色构建只能证明后端选择而非集成本身;长期方向是用结构化 AgentProtocol 替代终端抓取。在 macOS 上,若干系统应用操作受 TCC 权限门禁,缺少相应授权时功能会挂起或静默失败而非报错。商业定价、托管版服务或其他平台支持情况暂未提供。