Developer and self-hosted
Raft
Raft は、ローカルの Raft CLI を介して OpenClaw エージェントを Raft External Agent に接続します。Raft は認証済みのウェイクヒントを Gateway に送信し、その後エージェントが Raft CLI を使用してメッセージを確認および送信します。ダイレクトチャットのみ対応します(グループには対応しません)。
インストール
Raft は公式の外部 Plugin です。Gateway ホストにインストールします。
openclaw plugins install @openclaw/raftopenclaw gateway restart詳細:Plugin
前提条件
- External Agent を備えた Raft ワークスペース。
- OpenClaw Gateway と同じホストの、サービスの
PATHにインストールされた Raft CLI。 - すでにサインイン済みで、その External Agent に関連付けられている Raft CLI プロファイル。
Plugin は Raft の認証情報を保存しません。Raft CLI がその認証情報を自身のプロファイルに保持します。
設定
設定でプロファイルを指定します。
{ channels: { raft: { enabled: true, profile: "openclaw", }, },}デフォルトアカウントでは、代わりに Gateway 環境で RAFT_PROFILE を設定できます。
RAFT_PROFILE=openclaw1 つの Gateway を複数の Raft External Agent に接続する場合は、名前付きアカウントを使用します。
{ channels: { raft: { accounts: { support: { profile: "support-agent", }, engineering: { profile: "engineering-agent", }, }, }, },}対話形式のセットアップでも同じプロファイルが記録されます。
openclaw channels add --channel raft仕組み
Gateway の起動時に、Plugin は次の処理を行います。
- 一時ポートで local loopback 専用の HTTP ウェイクエンドポイントを開きます。
- そのエンドポイントとプロセス単位のトークンを指定して
raft --profile <profile> agent bridgeを起動します。 - ローカルブリッジから送信された、リプレイ識別子を持つ認証済みかつコンテンツを含まないウェイクヒントのみを受け入れます。
- すべてのウェイクペイロードに、
eventId、attemptId、messageId、delivery_id、wake_id、またはidのいずれかを必須とします。 - ブリッジイベント ID に基づいて、再試行されたウェイク配信を 24 時間重複排除します。この処理は Gateway の再起動をまたぐ場合にも適用されます。
- 現在のブリッジ用の安定したランタイムセッションと、Raft CLI プロトコル用の空のアクティビティドレインバッチを返します。
- 受け入れたウェイクごとに、直列化された OpenClaw エージェントターンを 1 つ開始します。
ブリッジが Raft の配信再試行と再接続を担当します。OpenClaw のターンが受信するのはウェイク通知のみであり、コピーされた Raft メッセージ本文ではありません。保留中のメッセージの読み取りと応答の送信には CLI を使用します。
raft --profile openclaw message checkraft --profile openclaw message send確認
OpenClaw が CLI を検出でき、プロファイルが設定されていることを確認します。
openclaw channels status --probeopenclaw plugins inspect raft --runtime --json次に、Raft External Agent にメッセージを送信します。Gateway のログには、Raft ブリッジの起動に続いて受信ウェイクが表示されます。エージェントは、設定された Raft プロファイルを使用して保留中のメッセージを確認します。
トラブルシューティング
Raft CLI が見つからない
Gateway ホストに Raft CLI をインストールし、サービスの PATH で raft を使用可能にします。raft --help で確認してから、Gateway を再起動します。
ブリッジが直ちに終了する
設定されたプロファイルがサインイン済みであり、対象の Raft External Agent に属していることを確認します。CLI の診断を確認するには、raft --profile <profile> agent bridge を直接実行します。
ウェイクを受信しても Raft の応答が送信されない
エージェントが Raft CLI を呼び出さない場合、これは想定された動作です。ウェイクブリッジはメッセージ本文や自動的な最終応答を伝送しません。エージェントのツールポリシーを確認し、raft --profile <profile> message check と message send を実行できることを確認します。