Gateway サービスランブック
このページは、Gateway サービスの day-1 起動および day-2 運用に使用してください。Deep troubleshooting
症状別の診断ガイド(正確なコマンド手順およびログシグネチャ付き)。
Configuration
タスク指向のセットアップガイド + 完全な設定リファレンス。
5分でローカル起動
Gateway の設定リロードは、アクティブな設定ファイルパス(profile/state のデフォルトから解決、または
OPENCLAW_CONFIG_PATH が設定されている場合はそれ)を監視します。
デフォルトモード: gateway.reload.mode="hybrid"(安全な変更はホット適用、重大な変更は再起動)。ランタイムモデル
- ルーティング、コントロールプレーン、およびチャネル接続のための常時稼働プロセス。
- 以下のための単一の多重化ポート:
- WebSocket コントロール/RPC
- OpenResponses(HTTP):
/v1/responses。 - コントロール UI とフック
- デフォルトのバインドモード:
loopback。 - Gateway の認証はデフォルトで必須です。
gateway.auth.token(またはOPENCLAW_GATEWAY_TOKEN)もしくはgateway.auth.passwordを設定してください。Tailscale Serve のアイデンティティを使用しない限り、クライアントはconnect.params.auth.token/passwordを送信する必要があります。 クライアントは Tailscale Serve ID を使用しない限り、connect.params.auth.token/passwordを送信する必要があります。
ポートとバインドの優先順位
| 設定 | 解決順序 |
|---|---|
ベースポート = gateway.port(または OPENCLAW_GATEWAY_PORT / --port) | --port → OPENCLAW_GATEWAY_PORT → gateway.port → 18789 |
| バインドモード | CLI/override → gateway.bind → loopback |
ホットリロードモード
gateway.reload.mode="off" で無効化できます。 | 動作 |
|---|---|
off | 設定の再読み込みなし |
hot | ホットセーフな変更のみ適用 |
restart | 再起動が必要な変更時に再起動 |
hybrid(デフォルト) | 安全な場合はホット適用、必要な場合は再起動 |
オペレーターコマンドセット
リモートアクセス
推奨: Tailscale/VPN。 フォールバック: SSHトンネル。ws://127.0.0.1:18789 に接続します。
参照: Remote Gateway, Authentication, Tailscale。
監視およびサービスライフサイクル
本番相当の信頼性を確保するには supervised 実行を使用してください。- macOS (launchd)
- Linux (systemd user)
- Linux (system service)
ai.openclaw.gateway(デフォルト)または ai.openclaw.<profile>``(名前付きプロファイル)。 openclaw doctor` はサービス設定のドリフトを監査し、修復します。複数 Gateway(同一ホスト)
ほとんどのセットアップでは 1つ の Gateway を実行するべきです。 厳密な分離や冗長性が必要な場合(例: レスキュープロファイル)のみ複数を使用してください。 インスタンスごとのチェックリスト:- 一意の
gateway.port - 一意の
OPENCLAW_CONFIG_PATH - 一意の
OPENCLAW_STATE_DIR - 一意の
agents.defaults.workspace
Dev プロファイル(--dev)
19001 が含まれます。
プロトコル(オペレーター視点)
- 最初のクライアントフレームは
connectである必要があります。 - Gateway は
hello-okスナップショット(presence,health,stateVersion,uptimeMs, limits/policy)を返します。 - リクエスト:
{type:"req", id, method, params}→{type:"res", id, ok, payload|error} - 一般的なイベント:
connect.challenge,agent,chat,presence,tick,health,heartbeat,shutdown。
- 即時の受理 ack(
status:"accepted") agentのレスポンスは 2 段階です。まずresの ack{runId,status:"accepted"}、次に実行完了後の最終res{runId,status:"ok"|"error",summary}。ストリーミング出力はevent:"agent"として到着します。
運用チェック
稼働確認
- WS を開いて
connectを送信します。 - スナップショット付きの
hello-okレスポンスが返ることを確認してください。
準備状況
ギャップリカバリー
イベントは再生されません。 シーケンスにギャップが発生した場合は、続行する前に状態(health、system-presence)を更新してください。
一般的な障害シグネチャ
| シグネチャ | `refusing to bind gateway … |
|---|---|
| without auth` トークン/パスワードなしでの非ループバックバインド | another gateway instance is already listening / EADDRINUSE |
| ポートの競合 | Gateway start blocked: set gateway.mode=local |
| 設定がリモートモードになっている | 接続中に unauthorized が発生 |
| クライアントとGateway間の認証不一致 | 完全な診断手順については、Gateway Troubleshooting を参照してください。 |
安全性の保証
- 正常終了時には、ソケットが閉じられる前に
shutdownイベントが送出されます。 - 接続以外の最初のフレームや不正な JSON は拒否され、ソケットはクローズされます。
- 関連:
Troubleshooting
- Background Process
- Configuration
- Health
- Doctor
- Authentication
- canvasホストはGateway HTTPサーバー(
gateway.portと同じポート)で提供されます