gateway
GatewayはOpenClawのWebSocketサーバーです(チャネル、ノード、セッション、フック)。このページのサブコマンドは openclaw gateway … の下にあります。関連ドキュメント:
Gatewayの実行
ローカルのGatewayプロセスを実行します:
openclaw gateway
フォアグラウンドエイリアス:
openclaw gateway run
注意点:
- デフォルトでは、
~/.openclaw/openclaw.jsonにgateway.mode=localが設定されていない限り、Gatewayは起動を拒否します。アドホック/開発用の実行には--allow-unconfiguredを使用してください。 - 認証なしでループバックを超えてバインドすることはブロックされます(安全ガードレール)。
SIGUSR1は、許可されている場合にプロセス内再起動をトリガーします(commands.restartはデフォルトで有効です;commands.restart: falseを設定すると手動再起動をブロックしますが、gatewayツール/設定の適用/更新は引き続き許可されます)。SIGINT/SIGTERMハンドラはgatewayプロセスを停止しますが、カスタムターミナル状態は復元しません。CLIをTUIやraw-mode入力でラップしている場合は、終了前にターミナルを復元してください。
オプション
--port <port>: WebSocketポート(デフォルトは設定/環境変数から取得;通常18789)。--bind <loopback|lan|tailnet|auto|custom>: リスナーバインドモード。--auth <token|password>: 認証モードの上書き。--token <token>: トークンの上書き(プロセスのOPENCLAW_GATEWAY_TOKENも設定します)。--password <password>: パスワードの上書き(プロセスのOPENCLAW_GATEWAY_PASSWORDも設定します)。--tailscale <off|serve|funnel>: Tailscale経由でGatewayを公開します。--tailscale-reset-on-exit: シャットダウン時にTailscaleのserve/funnel設定をリセットします。--allow-unconfigured: 設定にgateway.mode=localがなくてもgatewayの起動を許可します。--dev: 開発用設定+ワークスペースが存在しない場合に作成します(BOOTSTRAP.mdをスキップします)。--reset: 開発用設定+認証情報+セッション+ワークスペースをリセットします(--devが必要です)。--force: 起動前に選択されたポートで既存のリスナーを強制終了します。--verbose: 詳細ログを出力します。--claude-cli-logs: コンソールにclaude-cliのログのみを表示します(およびそのstdout/stderrを有効にします)。--ws-log <auto|full|compact>: websocketログスタイル(デフォルトauto)。--compact:--ws-log compactのエイリアスです。--raw-stream: 生のモデルストリームイベントをjsonlとしてログ出力します。--raw-stream-path <path>: 生ストリームjsonlのパス。
実行中のGatewayへのクエリ
すべてのクエリコマンドはWebSocket RPCを使用します。出力モード:
- デフォルト: 人間が読みやすい形式(TTYでは色付き)。
--json: 機械可読なJSON(スタイリング/スピナーなし)。--no-color(またはNO_COLOR=1): ANSIを無効にしつつ人間向けレイアウトを維持します。
共有オプション(サポートされている場合):
--url <url>: Gateway WebSocket URL。--token <token>: Gatewayトークン。--password <password>: Gatewayパスワード。--timeout <ms>: タイムアウト/予算(コマンドごとに異なります)。--expect-final: 「最終」応答を待ちます(エージェント呼び出し)。
注意:--url を設定すると、CLIは設定や環境変数の認証情報にフォールバックしません。--token または --password を明示的に渡してください。明示的な認証情報がない場合はエラーになります。
gateway health
openclaw gateway health --url ws://127.0.0.1:18789
gateway status
gateway status はGatewayサービス(launchd/systemd/schtasks)とオプションのRPCプローブを表示します。
openclaw gateway status
openclaw gateway status --json
オプション:
--url <url>: プローブURLを上書きします。--token <token>: プローブのトークン認証。--password <password>: プローブのパスワード認証。--timeout <ms>: プローブタイムアウト(デフォルト10000)。--no-probe: RPCプローブをスキップします(サービスのみの表示)。--deep: システムレベルのサービスもスキャンします。
注意点:
gateway statusは、可能な場合、プローブ認証のために設定された認証SecretRefを解決します。- このコマンドパスで必要な認証SecretRefが解決されていない場合、プローブ認証は失敗する可能性があります;
--token/--passwordを明示的に渡すか、まずシークレットソースを解決してください。
gateway probe
gateway probe は「すべてをデバッグする」コマンドです。常に以下をプローブします:
- 設定されたリモートゲートウェイ(設定されている場合)、および
- リモートが設定されていても localhost(ループバック)。
複数のゲートウェイに到達可能な場合は、すべてを表示します。分離されたプロファイル/ポート(例:レスキューボット)を使用する場合、複数のゲートウェイがサポートされますが、ほとんどのインストールでは単一のゲートウェイを実行します。
openclaw gateway probe
openclaw gateway probe --json
SSH経由のリモート(Macアプリ同等)
macOSアプリの「SSH経由のリモート」モードは、ローカルポートフォワードを使用して、リモートゲートウェイ(ループバックのみにバインドされている可能性があります)を ws://127.0.0.1:<port> で到達可能にします。CLI同等コマンド:
openclaw gateway probe --ssh user@gateway-host
オプション:
--ssh <target>:user@hostまたはuser@host:port(ポートのデフォルトは22)。--ssh-identity <path>: アイデンティティファイル。--ssh-auto: 最初に発見されたゲートウェイホストをSSHターゲットとして選択します(LAN/WABのみ)。
設定(オプション、デフォルトとして使用):
gateway.remote.sshTargetgateway.remote.sshIdentity
gateway call <method>
低レベルRPCヘルパー。
openclaw gateway call status
openclaw gateway call logs.tail --params '{"sinceMs": 60000}'
Gatewayサービスの管理
openclaw gateway install
openclaw gateway start
openclaw gateway stop
openclaw gateway restart
openclaw gateway uninstall
注意点:
gateway installは--port、--runtime、--token、--force、--jsonをサポートします。- トークン認証にトークンが必要で、
gateway.auth.tokenがSecretRefで管理されている場合、gateway installはSecretRefが解決可能であることを検証しますが、解決されたトークンをサービス環境メタデータに永続化しません。 - トークン認証にトークンが必要で、設定されたトークンSecretRefが解決されていない場合、インストールは閉じて失敗し、フォールバックのプレーンテキストを永続化しません。
- 推論された認証モードでは、シェル専用の
OPENCLAW_GATEWAY_PASSWORD/CLAWDBOT_GATEWAY_PASSWORDはインストールのトークン要件を緩和しません;管理対象サービスをインストールする場合は、耐久性のある設定(gateway.auth.passwordまたは設定env)を使用してください。 gateway.auth.tokenとgateway.auth.passwordの両方が設定されていて、gateway.auth.modeが設定されていない場合、モードが明示的に設定されるまでインストールはブロックされます。- ライフサイクルコマンドはスクリプティング用に
--jsonを受け入れます。
ゲートウェイの発見(Bonjour)
gateway discover はGatewayビーコン(_openclaw-gw._tcp)をスキャンします。
- マルチキャストDNS-SD:
local. - ユニキャストDNS-SD(Wide-Area Bonjour): ドメイン(例:
openclaw.internal.)を選択し、スプリットDNS + DNSサーバーを設定します;詳細は /gateway/bonjour を参照してください。
Bonjour発見が有効(デフォルト)なゲートウェイのみがビーコンをアドバタイズします。Wide-Area発見レコードには以下が含まれます(TXT):
role(ゲートウェイの役割ヒント)transport(トランスポートヒント、例:gateway)gatewayPort(WebSocketポート、通常18789)sshPort(SSHポート;存在しない場合はデフォルト22)tailnetDns(MagicDNSホスト名、利用可能な場合)gatewayTls/gatewayTlsSha256(TLS有効 + 証明書フィンガープリント)cliPath(リモートインストール用のオプションヒント)
gateway discover
openclaw gateway discover
オプション:
--timeout <ms>: コマンドごとのタイムアウト(ブラウズ/解決);デフォルト2000。--json: 機械可読な出力(スタイリング/スピナーも無効になります)。
例:
openclaw gateway discover --timeout 4000
openclaw gateway discover --json | jq '.beacons[].wsUrl'