Agent Relay 是一个专为 OpenClaw 代理系统设计的消息中继服务,旨在解决跨实例代理通信的难题。它允许不同 OpenClaw 实例之间的代理相互发送消息,无需依赖复杂的 WebSocket 持久连接或轮询机制。通过简单的配置和一次性的 Webhook 注册,Agent Relay 实现了高效、可靠的消息传递,同时支持离线场景下的自动重试与队列保留。该工具的核心理念是‘无状态通信’,即各实例只需关心自身逻辑,而将消息路由与投递交由中继层处理。无论目标实例是否在线,消息都能被安全送达,极大提升了分布式代理架构的灵活性和鲁棒性。 其工作原理基于事件驱动模型:当你在某个实例上调用 `POST /publish` 发送消息时,Agent Relay 会立即尝试通过 WebSocket 推送给目标实例;若目标未连接,则消息会被存入 Redis 队列(默认保留7天),并触发目标实例的 Webhook 通知,使其在上线后主动拉取消息。这种混合模式兼顾了实时性与可靠性,避免了传统长连接带来的资源消耗和维护成本。此外,系统还支持广播、消息计数查询、实例列表管理等实用功能,为团队协作和多节点部署提供了完整的管理接口。 作为一个开源项目(GitHub: https://github.com/aaravgarg/agent-relay),Agent Relay 可轻松部署于 Railway、Fly.io 等现代云平台,也支持自行托管。你仅需设置几个环境变量(如 `RELAY_URL`、`TEAM_TOKEN`、`REDIS_URL`)即可完成接入,无需编写额外代码即可实现跨实例通信。无论是构建多代理协作系统,还是搭建去中心化的智能体网络,Agent Relay 都提供了一种轻量级、高可用的解决方案。
核心功能特点
- 支持跨 OpenClaw 实例间的代理消息传递,实现分布式代理通信
- 采用 WebSocket 即时推送 + 离线队列双重机制,确保消息必达
- 消息队列默认保留7天,具备自动过期清理能力
- 通过一次性 Webhook 注册完成配置,无需维护持久连接
- 提供广播、消息计数、实例列表等管理 API,便于运维监控
- 开源自托管方案,兼容 Railway/Fly 等平台,部署门槛低
适用场景
Agent Relay 特别适合需要多个 OpenClaw 代理协同工作的复杂场景。例如,在一个自动化工作流中,主代理负责任务调度,而多个子代理分别处理图像识别、文本分析或数据清洗等专项任务。当主代理需要将处理结果转发给特定子代理进行下一步操作时,传统的 WebSocket 直连方式会因为子代理可能处于休眠状态而失效。此时,Agent Relay 就能发挥关键作用:主代理发送消息后,即使子代理离线,消息也会被安全存储并在其唤醒后自动投递,从而实现真正的异步解耦。 另一个典型应用场景是多用户团队共享代理资源。假设一个开发团队拥有多个 OpenClaw 实例,每个成员运行自己的本地代理用于测试。他们希望彼此之间能快速交换调试信息或触发特定行为。使用 Agent Relay,团队成员只需注册各自的 Webhook 地址,即可像聊天一样向其他人的代理发送指令,无需担心对方是否在线。这种机制不仅提升了协作效率,还降低了因网络波动导致的信息丢失风险,尤其适用于远程办公或跨地域团队。 此外,对于构建去中心化 AI 代理网络的企业级应用,Agent Relay 提供了理想的通信基础设施。想象一下,一个由数百个轻量级智能体组成的生态系统,它们各自专注于不同领域(如客服、数据分析、内容生成),并通过 Agent Relay 动态发现并交互。由于系统不要求所有代理持续在线,而是按需唤醒,因此可以显著降低整体资源占用。而当某个代理完成任务后,它可以通过中继向其他相关代理发送结果,形成松耦合但高度协同的工作流,这正是 Agent Relay 所擅长的设计哲学。
