发现 AI 代理的未来

OpenAB (Open Agent Broker)

收录于 2026年5月3日
智能体与应用工具
开源
工作流自动化RustDockerAI代理智能体与应用工具开发者工具/代码协议/API/集成

轻量级云原生 ACP 桥接工具,将 Discord、Slack 等聊天平台与 Kiro CLI、Claude Code、Codex 等 AI 编程 CLI 连接,实现聊天即编码的团队协作体验。

OpenAB(Open Agent Broker)是一个用 Rust(99.1%)编写的轻量级、安全、云原生的 ACP(Agent Client Protocol)桥接工具。它将 Discord、Slack 等聊天平台与任何 ACP 兼容的编程 CLI(如 Kiro CLI、Claude Code、Codex、Gemini、OpenCode、Copilot CLI、Cursor 等)连接起来,使团队成员可以在即时通讯频道中通过 @bot 直接与 AI 编程助手交互。

核心架构#

核心通信基于 ACP 协议(基于 stdio 的 JSON-RPC),OpenAB 作为中间层在上游对接聊天平台适配器,在下游通过 Session Pool 管理多个 CLI 进程。适配器模式(ChatAdapter trait + AdapterRouter)实现了平台无关的消息路由。

┌──────────────┐  Gateway WS   ┌──────────────┐  ACP stdio    ┌──────────────┐
│   Discord    │◄─────────────►│              │──────────────►│  coding CLI  │
│   User       │               │    openab    │◄── JSON-RPC ──│  (acp mode)  │
├──────────────┤  Socket Mode  │    (Rust)    │               └──────────────┘
│   Slack      │◄─────────────►│              │
│   User       │               └──────┬───────┘
├──────────────┤                      │ WebSocket (outbound)
│   Telegram   │◄──webhook──┐         │
│   LINE       │◄──webhook──┤  ┌──────▼───────┐
│  Feishu/Lark │◄───WS──────┤  │Custom Gateway│
│ Google Chat  │◄──webhook──┘  │(standalone)  │
└──────────────┘              └──────────────┘

聊天平台适配#

  • Discord 原生适配:基于 serenity 库,支持 @提及触发、线程化对话、Edit-streaming(每 1.5 秒实时更新消息展示 token 流式输出)、Emoji 状态反应(👀→🤔→🔥/👨‍💻/⚡→👍 + 随机表情,含防抖和卡顿检测)、语音消息 STT(Groq/OpenAI/本地 Whisper)
  • Slack 原生适配:Socket Mode 连接,支持 @提及触发、线程化对话
  • Custom Gateway 扩展:独立组件,通过 Webhook/WebSocket 对接 Telegram、LINE、飞书/Lark、Google Chat
  • 多平台同时运行:单实例可同时启用 Discord + Slack 适配器

Agent 后端管理#

支持 7 种 Agent 后端,可通过配置文件切换:Kiro CLI(默认)、Claude Code、Codex、Gemini、OpenCode、Copilot CLI(⚠️稳定性待确认)、Cursor。支持多 Agent 模式,可同时运行不同后端。

每个聊天线程对应一个独立的 CLI 进程会话,Session Pool 按线程 key 管理连接,支持自动生命周期管理(可配 max_sessions 和 session_ttl_hours)。

配置与部署#

配置文件支持 TOML 格式及 ${ENV_VAR} 环境变量展开,也支持从远程 URL 加载配置(--config https://...)。频道和用户级权限通过白名单机制控制。

部署方面提供 Dockerfile、Kubernetes manifests 和 Helm chart(helm repo add openab https://openabdev.github.io/openab),PVC 持久化认证信息,适合团队级基础设施长期运行。本地开发可通过 cargo run 直接启动。

核心源码结构#

路径职责
src/main.rs多适配器启动、清理、关闭
src/adapter.rsChatAdapter trait, AdapterRouter
src/config.rsTOML 配置解析 + ${ENV_VAR} 展开
src/discord.rsDiscord 适配器(基于 serenity)
src/slack.rsSlack 适配器(Socket Mode)
src/media.rs图片压缩 + STT 下载
src/acp/protocol.rsJSON-RPC 类型定义 + ACP 事件分类
src/acp/connection.rsCLI 进程生成 + stdio JSON-RPC 通信
src/acp/pool.rsSession pool 管理

待确认信息#

  • 当前版本为 v0.8.3-beta.2,仍处于 beta 阶段,API 和配置格式是否存在 breaking changes 待确认
  • Custom Gateway 的具体部署方式在 README 中未详述
  • 语音消息 STT 的详细配置选项指向 docs/stt.md,未在 README 中展开
  • 未见 Session Pool 并发上限、内存占用、延迟等基准性能数据

保持更新

获取最新的 AI 工具和趋势,直接发送到您的收件箱。没有垃圾邮件,只有智能。