RPC and API
RPC アダプター
OpenClaw は JSON-RPC 経由で外部 CLI と統合します。現在は 2 つのパターンが使われています。
パターン A: HTTP デーモン (signal-cli)
signal-cliは HTTP 上の JSON-RPC を使うデーモンとして実行されます。- イベントストリームは SSE (
/api/v1/events) です。 - ヘルスプローブ:
/api/v1/check。 channels.signal.autoStart=trueの場合、ライフサイクルは OpenClaw が管理します。
セットアップとエンドポイントについては Signal を参照してください。
パターン B: stdio 子プロセス (レガシー: imsg)
注: 新しい iMessage セットアップでは、代わりに BlueBubbles を使用してください。
- OpenClaw は
imsg rpcを子プロセスとして起動します (レガシー iMessage 統合)。 - JSON-RPC は stdin/stdout 上で行区切りです (1 行につき 1 つの JSON オブジェクト)。
- TCP ポートもデーモンも不要です。
使用されるコアメソッド:
watch.subscribe→ 通知 (method: "message")watch.unsubscribesendchats.list(プローブ/診断)
レガシーセットアップとアドレッシング (chat_id 推奨) については iMessage を参照してください。
アダプターのガイドライン
- Gateway がプロセスを管理します (開始/停止はプロバイダーのライフサイクルに連動します)。
- RPC クライアントは回復力を持たせます: タイムアウト、終了時の再起動。
- 表示文字列よりも安定した ID (例:
chat_id) を優先します。