OpenClawSkills
GitHub
リファレンス • 5分で読める

RPC アダプター

外部 CLI(signal-cli、imsg)とゲートウェイパターン用の RPC アダプター

OpenClaw は JSON-RPC を介して外部 CLI を統合します。現在、2つのパターンが使用されています。

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 経由で行区切り(1行あたり1つの JSON オブジェクト)です。

- TCP ポートはなく、デーモンは不要です。

使用されるコアメソッド:

- watch.subscribe → notifications (method: "message")

- watch.unsubscribe

- send

- chats.list(プローブ/診断)

設定とアドレス指定(chat_id が推奨)については、iMessage を参照してください。

Tutorial.step

アダプターガイドライン

- ゲートウェイがプロセスを所有します(開始/停止はプロバイダーライフサイクルにバインドされています)。

- RPC クライアントを回復力のあるものにします:タイムアウト、終了時の再起動。

- 表示文字列よりも安定した ID(例:chat_id)を優先します。