Gatewayランブック
このページは、Gatewayサービスの初日セットアップと継続運用のために使用します。詳細なトラブルシューティング
症状から始める診断と、正確なコマンド手順およびログシグネチャ。
設定
タスク指向のセットアップガイドと完全な設定リファレンス。
シークレット管理
SecretRefの契約、ランタイムスナップショットの挙動、移行/再読み込み操作。
シークレットプラン契約
正確な
secrets applyのターゲット/パスルールと、ref専用認証プロファイルの挙動。5分でできるローカル起動
Gateway設定の再読み込みは、アクティブな設定ファイルパスを監視します(プロファイル/状態のデフォルトから解決されるか、設定されている場合は
OPENCLAW_CONFIG_PATH)。
デフォルトモードはgateway.reload.mode="hybrid"です。
最初の読み込みが成功した後、実行中のプロセスはアクティブなインメモリ設定スナップショットを提供し、再読み込みに成功するとそのスナップショットをアトミックに入れ替えます。ランタイムモデル
- ルーティング、コントロールプレーン、チャネル接続のための常時稼働プロセスが1つ。
- 以下のための単一の多重化ポート:
- WebSocket control/RPC
- HTTP APIs、OpenAI互換(
/v1/models,/v1/embeddings,/v1/chat/completions,/v1/responses,/tools/invoke) - Control UI とフック
- デフォルトのバインドモード:
loopback。 - デフォルトで認証が必要です。共有シークレット構成では
gateway.auth.token/gateway.auth.password(またはOPENCLAW_GATEWAY_TOKEN/OPENCLAW_GATEWAY_PASSWORD)を使用し、非loopbackの リバースプロキシ構成ではgateway.auth.mode: "trusted-proxy"を使用できます。
OpenAI互換エンドポイント
OpenClawの現在最も効果の高い互換サーフェスは次のとおりです。GET /v1/modelsGET /v1/models/{id}POST /v1/embeddingsPOST /v1/chat/completionsPOST /v1/responses
- ほとんどのOpen WebUI、LobeChat、LibreChat連携は最初に
/v1/modelsをプローブします。 - 多くのRAGおよびメモリパイプラインは
/v1/embeddingsを想定しています。 - エージェントネイティブのクライアントはますます
/v1/responsesを好むようになっています。
/v1/modelsはagent-firstです。openclaw、openclaw/default、openclaw/<agentId>を返します。openclaw/defaultは、常に設定済みのデフォルトエージェントにマップされる安定したエイリアスです。- バックエンドのプロバイダー/モデルオーバーライドを行いたい場合は
x-openclaw-modelを使用してください。それ以外では、選択されたエージェントの通常のモデルと埋め込み設定がそのまま制御を保持します。
ポートとバインドの優先順位
| 設定 | 解決順序 |
|---|---|
| Gatewayポート | --port → OPENCLAW_GATEWAY_PORT → gateway.port → 18789 |
| バインドモード | CLI/override → gateway.bind → loopback |
ホットリロードモード
gateway.reload.mode | 挙動 |
|---|---|
off | 設定の再読み込みなし |
hot | ホットセーフな変更のみ適用 |
restart | 再読み込みが必要な変更時に再起動 |
hybrid (default) | 安全ならホット適用し、必要なら再起動 |
オペレーターコマンドセット
gateway status --deepは追加のサービス検出(LaunchDaemons/systemd system
units/schtasks)のためのものであり、より深いRPCヘルスプローブではありません。
複数のGateway(同一ホスト)
ほとんどのインストールでは、マシンごとにGatewayは1つで十分です。1つのGatewayで複数の agentsとchannelsをホストできます。 複数のGatewayが必要なのは、意図的に分離またはレスキューボットを使いたい場合だけです。 便利な確認:gateway status --deepはOther gateway-like services detected (best effort)を報告し、 古いlaunchd/systemd/schtasksインストールがまだ残っている場合にクリーンアップのヒントを表示することがあります。gateway probeは、複数のターゲットが応答した場合にmultiple reachable gatewaysを警告することがあります。- それが意図的な場合は、Gatewayごとにポート、設定/状態、ワークスペースルートを分離してください。
リモートアクセス
推奨: Tailscale/VPN。 代替: SSHトンネル。ws://127.0.0.1:18789に接続します。
参照: Remote Gateway, Authentication, Tailscale。
監督実行とサービスライフサイクル
本番に近い信頼性のためには、監督付き実行を使用してください。- macOS (launchd)
- Linux (systemd user)
- Windows (native)
- Linux (system service)
ai.openclaw.gateway(デフォルト)またはai.openclaw.<profile>(名前付きプロファイル)です。openclaw doctorはサービス設定のドリフトを監査および修復します。1台のホスト上での複数のGateway
ほとんどの構成ではGatewayは1つで十分です。 複数使うのは、厳格な分離/冗長化のためだけにしてください(たとえばレスキュープロファイル)。 インスタンスごとのチェックリスト:- 一意の
gateway.port - 一意の
OPENCLAW_CONFIG_PATH - 一意の
OPENCLAW_STATE_DIR - 一意の
agents.defaults.workspace
開発プロファイルのクイックパス
19001が含まれます。
プロトコルのクイックリファレンス(オペレータービュー)
- 最初のクライアントフレームは
connectでなければなりません。 - Gatewayは
hello-okスナップショット(presence,health,stateVersion,uptimeMs, limits/policy)を返します。 hello-ok.features.methods/eventsは保守的な検出リストであり、 呼び出し可能なすべてのヘルパールートの自動生成ダンプではありません。- リクエスト:
req(method, params)→res(ok/payload|error)。 - 一般的なイベントには
connect.challenge、agent、chat、session.message、session.tool、sessions.changed、presence、tick、health、heartbeat、pairing/approvalライフサイクルイベント、およびshutdownが含まれます。
- 即時の受理ack(
status:"accepted") - 最終完了レスポンス(
status:"ok"|"error")。その間にagentイベントがストリームされます。
運用チェック
ライブネス
- WSを開いて
connectを送信する。 hello-okレスポンスとスナップショットを期待する。
レディネス
ギャップ回復
イベントは再送されません。シーケンスギャップがある場合は、続行前に状態(health, system-presence)を更新してください。
一般的な障害シグネチャ
| シグネチャ | 想定される問題 |
|---|---|
refusing to bind gateway ... without auth | 有効なGateway認証パスなしでの非loopbackバインド |
another gateway instance is already listening / EADDRINUSE | ポート競合 |
Gateway start blocked: set gateway.mode=local | 設定がremote modeになっている、または破損した設定からlocal-modeスタンプが欠落している |
unauthorized during connect | クライアントとGatewayの間の認証不一致 |
安全性の保証
- Gatewayプロトコルクライアントは、Gatewayが利用できない場合に即座に失敗します(暗黙の直接チャネルフォールバックはありません)。
- 無効な/
connectでない最初のフレームは拒否され、接続が閉じられます。 - 正常なシャットダウンでは、ソケットを閉じる前に
shutdownイベントが発行されます。
関連: