RPCと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を参照してください。
アダプターのガイドライン
- ゲートウェイがプロセスを所有します(起動/停止はプロバイダーのライフサイクルに紐づけられます)。
- RPCクライアントは耐障害性を持たせます:タイムアウト、終了時の再起動。
- 表示文字列よりも安定したID(例:
chat_id)を優先します。