OpenClawSkills
GitHub
参考 • 5 分钟阅读

RPC 适配器

用于外部 CLI(signal-cli、imsg)和网关模式的 RPC 适配器

OpenClaw 通过 JSON-RPC 集成外部 CLI。目前使用两种模式。

Tutorial.step

模式 A:HTTP 守护进程(signal-cli)

- signal-cli 作为守护进程运行,通过 HTTP 使用 JSON-RPC。

- 事件流是 SSE(/api/v1/events)。

- 健康探测:/api/v1/check。

- 当 channels.signal.autoStart=true 时,OpenClaw 拥有生命周期。

有关设置和端点,请参阅 Signal。

Tutorial.step

模式 B:stdio 子进程(imsg)

- OpenClaw 将 imsg rpc 作为子进程生成。

- JSON-RPC 通过 stdin/stdout 逐行分隔(每行一个 JSON 对象)。

- 无 TCP 端口,无需守护进程。

使用的核心方法:

- watch.subscribe → 通知(method: "message")

- watch.unsubscribe

- send

- chats.list(探测/诊断)

有关设置和寻址(首选 chat_id),请参阅 iMessage。

Tutorial.step

适配器指南

- 网关拥有进程(启动/停止与提供程序生命周期绑定)。

- 保持 RPC 客户端弹性:超时,退出时重启。

- 优先使用稳定的 ID(例如 chat_id)而不是显示字符串。