首页 / agent-bus
🏢 一个企业级平台:把你的 AI agent、工具和人连接起来,管控每一次访问,并让每个 agent 在各自的隔离环境里安全运行。
💻 支持 Linux 和 macOS:Linux 上功能完整;macOS 上可用总线、runner 和命令行。
它不是单个工具,而是一整套平台:从 localhost 起步,可以扩展到多台主机、多个用户和团队。
它能给你什么
- 🔗 连接:按名字找到任何助手、脚本、服务或人。
- 🔍 发现:看到有谁在线,以及每个成员能做什么。
- 🛡️ 访问控制:决定谁可以调用、读取和管理每个名字。
- 🔑 密钥:共享的密码放在总线上;脚本自己的密码留在它所在的主机上。
- 🔒 安全通信:其他机器可以通过固定证书(certificate pinning)的 HTTPS 或 SSH 接入;一个端口同时提供 HTTP 和 HTTPS;在同一台主机上,则用只有你的账户能访问的私有 socket。
- 📦 隔离:脚本在隔离环境里运行,内存和进程数都有上限。
- 🧱 现成的助手组件:聊天、邮件、短信、数据库、服务器检查。
- ⏰ 定时调度:在指定时间或按固定节奏唤醒助手。
- 🚨 告警:服务器出错先交给助手处理,再通过 Slack(或 Telegram、短信)通知你。
- 🌐 客户端:提供六种常用编程语言的客户端库。
- 🖥️ Web 控制台:在一个页面上查看和管理一切。
- 📥 安装:一条命令、一个现成的容器,或一个安装包。
- 🧠 语义搜索:你的 AI 帮你查找和整理文档。
为什么需要它
- 🤝 你的 AI 助手各干各的。现在它们可以按名字互发消息,也能直接找你。怎么做
- 📬 对方不在线。消息会在对方的收件箱里一直等着,直到被读取。怎么做
- 🔑 你不敢把密码交给助手。现在它通过持有密码的助手组件来使用你的工具。怎么做
- ⏰ 例行工作得等有人想起来才做。现在提醒和每日检查会自动唤醒助手。怎么做
- 🚨 出了故障你很晚才知道。现在服务器一出问题就会交给助手,由它通过 Slack(或 Telegram、短信)告诉你。怎么做
- 🔄 更新服务器得一台台登录。现在推送一次代码,所有服务器都会自动更新并回报结果。怎么做
- 🧰 好用的脚本一直只是你自己的私货。现在任何脚本都能变成安全、可共享的团队工具。怎么做
- 👀 你看不清系统里在发生什么。现在一个网页就能告诉你哪里需要关注。怎么做
总线
大家都能找到彼此;谁能做什么由你决定。
问题:AI 会话、脚本和人彼此找不到、联系不上,也没人管得住谁可以用什么。
- 🔗 连接:按名字联系任何成员,无论在本机还是另一台机器上。
- 🔍 发现:看到有谁在线,并询问每个成员能做什么。
- 🛡️ 访问控制:针对每个人、每个 agent,决定谁可以调用它、读取它、管理它。
- 🗂️ 配置和共享密码集中在一处:跟随各自的名字保存,只有所有者、维护者和该 agent 本身能读取。
更多:访问控制。
🔐 密码分两处存放:多人或多台机器共用的放在总线上;脚本自己的密码跟着它的 runner,留在它所在的主机上。两处存储
Runner
AI 时代工具的加强版 systemd。问题在于:好用的脚本拿去共享不安全,做成服务来跑又很麻烦。
- 📦 隔离:默认只能看到自己的目录,碰不到其他程序。
- 📏 限额:内存和进程数都有限制;无法提供隔离的主机会拒绝运行它。
- 🔑 自己的密码:保存在所在主机的一个文件里;总线从不显示它们,如果直接在主机上设置,密码就不会离开这台主机。
- 🎛️ 网页控制:在网页上启动、停止、重启,查看运行状态和停止原因。
- 🔁 持续运行:常驻的助手组件崩溃后会被自动重启;按消息触发的脚本每次都全新启动。
底层实现:cgroups、带系统调用过滤的命名空间沙箱,以及 runner 自己的非特权账户。更多:隔离。
助手组件就是积木
🧱 我们的 agent 就像乐高积木:用它们可以轻松搭出复杂的系统,同时不牺牲安全性。
- 💬 聊天:Slack 和 Telegram。
- ✉️ 邮件:收信、写信,把邮箱接到某个 agent 或队列上。
- 📱 手机:发一条短信。
- ⏰ 调度:定时、按固定节奏,或稍后执行。
- 🖥️ 服务器:日志、磁盘、服务、代码。
- 🗄️ 数据:为你的 AI 提供安全的数据库访问,从只读到完全访问——密码始终留在服务器上。
- 🧠 RAG:给你的 AI 一份共享记忆:按你自己定义的主题整理文本,并按语义检索。
- 🌐 Web:AI 以纯文本或 Markdown 形式读取网页,并发起有限制的 HTTP 请求;可以只允许访问你指定的网站。
- 🤖 AI:向模型提问。
- 🪟 会话:一次调用就能启动一整批会话——AI 对话、监控程序,任何跑在终端里的东西——重启机器后也能用同样的方式全部恢复。
用四块积木拼出来的邮件客服台:
🔒 为什么依然安全:每块积木只拿到你授予的权限;持有密码的积木自己保管密码:你的 AI 只使用这块积木,永远看不到那个密码。客服台示例
从一台笔记本到多台主机
- 💻 从小处起步:总线、runner 和 AI 会话都跑在一台笔记本上。
- 🖧 加入服务器:每台服务器运行自己的 runner 和助手组件,连接同一条总线。
- 👥 加入人员和团队:用户、用户组,以及谁可以使用什么。
一个真实流程:服务器报错,通过 Slack 通知到你
- 🧩 每一步都是上面提到的积木:日志监视器、服务器检查和 Slack。日志监视器
八个用法示例
- 🔍 让第二个助手审查第一个助手的工作,并等待它的结论。
- ⏰ 每个工作日早上九点,唤醒一个助手检查前一晚的服务器日志。
- 🚨 服务器一记录错误,就有助手去排查,并通过 Slack(或 Telegram、短信)告诉你它发现了什么。
- 📜 每天在 Slack 上收到一条即将过期证书的提醒。
- 🔄 推送一次代码,所有跟踪它的服务器都会自动更新。
- 🗄️ 让助手回答“昨天有多少订单失败了”,而它始终拿不到数据库密码。
- ✉️ 让助手读取收到的客服邮件、起草回复,经你批准后发出。
- 🌙 今晚把任务交给另一台机器上的助手,明早来看它的答复。
从这里开始
- 用户指南:从零到跑起一个助手或脚本的最短路径。
- 安装,详见部署说明。
- 源码与文档:github.com/parf/ai-agent-bus。
详细介绍
为 agent 而生
Web 管理面板
集成
为 agent-bus 打造的工具——推荐的几种用法。
mdhouse——和 agent 聊文档
mdhouse 是一个本地运行、支持 git 的 Markdown 工作区。加上
mdhouse --agent-bus 就会多出一个聊天面板:针对你正在看的页面,向正在运行的 Claude Code、Codex 或
OpenCode 会话提问。agent 修改文件,页面实时更新,每个页面都有自己的历史记录。
agent 端不需要任何适配器:面板发的就是普通的总线消息,agent 像回复任何对端一样回复。本地总线、远程总线都能用—— mdhouse 的 Agent Bus 集成。
路线图
许可证
PolyForm Noncommercial;客户端库采用 MIT 许可证。