> ## Documentation Index
> Fetch the complete documentation index at: https://docs2.openclaw.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# 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](/ja-JP/channels/signal) を参照してください。

## パターン B: stdio 子プロセス (imsg)

* OpenClaw は [iMessage](/ja-JP/channels/imessage) 用の子プロセスとして `imsg rpc` を起動します。
* JSON-RPC は stdin/stdout 上で行区切りです (1 行につき 1 つの JSON オブジェクト)。
* TCP ポートもデーモンも不要です。

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

* `watch.subscribe` → 通知 (`method: "message"`)
* `watch.unsubscribe`
* `send`
* `chats.list` (プローブ/診断)

セットアップとアドレス指定については [iMessage](/ja-JP/channels/imessage) を参照してください (表示文字列より `chat_id` を推奨)。

## アダプターのガイドライン

* Gateway がプロセスを所有します (開始/停止はプロバイダーのライフサイクルに紐づきます)。
* RPC クライアントの回復性を保ちます: タイムアウト、終了時の再起動。
* 表示文字列より安定した ID (例: `chat_id`) を優先します。

## 関連

* [Gateway プロトコル](/ja-JP/gateway/protocol)
