ダッシュボード(Control UI)

Gateway ダッシュボードはデフォルトで / で配信されるブラウザ Control UI です (gateway.controlUi.basePath でオーバーライド可能)。

ローカル Gateway へのアクセス:

主要リファレンス:

認証は WebSocket ハンドシェイク時に connect.params.auth(トークンまたはパスワード)で適用されます。gateway.auth については Gateway 設定 を参照してください。

セキュリティ注記: Control UI は管理画面です(チャット、設定、exec 承認)。 公開しないでください。UI はダッシュボード URL のトークンを現在のブラウザタブセッションと選択された Gateway URL 用に sessionStorage に保持し、ロード後に URL から除去します。 localhost、Tailscale Serve、または SSH トンネルの使用を推奨します。

クイックパス(推奨)

  • オンボーディング後、CLI がダッシュボードを自動で開き、クリーンな(トークンなしの)リンクを表示します。
  • いつでも再度開けます: openclaw dashboard(リンクをコピーし、可能ならブラウザを開き、ヘッドレスの場合は SSH ヒントを表示)。
  • UI が認証を求めた場合、gateway.auth.token(または OPENCLAW_GATEWAY_TOKEN)のトークンを Control UI の設定に貼り付けてください。

トークンの基本(ローカル vs リモート)

  • Localhost: http://127.0.0.1:18789/ を開きます。
  • トークンソース: gateway.auth.token(または OPENCLAW_GATEWAY_TOKEN)。openclaw dashboard はワンタイムブートストラップ用に URL フラグメント経由で渡すことができ、Control UI は localStorage ではなく、現在のブラウザタブセッションと選択された Gateway URL 用に sessionStorage に保持します。
  • gateway.auth.token が SecretRef 管理の場合、openclaw dashboard は設計上トークンなしの URL を表示/コピー/開きます。外部管理トークンがシェルログ、クリップボード履歴、ブラウザ起動引数に露出するのを防ぎます。
  • gateway.auth.token が SecretRef として設定されているが現在のシェルで解決されていない場合でも、openclaw dashboard はトークンなしの URL と実行可能な認証セットアップガイダンスを表示します。
  • 非 localhost の場合: Tailscale Serve(gateway.auth.allowTailscale: true の場合、Control UI/WebSocket はトークンレス。信頼された Gateway ホストを前提。HTTP API はトークン/パスワードが必要)、Tailnet バインド + トークン、または SSH トンネルを使用してください。Web サーフェス を参照。

「unauthorized」/ 1008 が表示された場合

  • Gateway に到達可能か確認(ローカル: openclaw status。リモート: SSH トンネル ssh -N -L 18789:127.0.0.1:18789 user@host の後に http://127.0.0.1:18789/ を開く)。
  • AUTH_TOKEN_MISMATCH の場合、Gateway がリトライヒントを返すと、クライアントはキャッシュされたデバイストークンで信頼されたリトライを 1 回行うことがあります。リトライ後も認証が失敗する場合は、トークンのずれを手動で解決してください。
  • トークンのずれの修復手順は トークンドリフト回復チェックリスト に従ってください。
  • Gateway ホストからトークンを取得または提供:
    • プレーンテキスト設定: openclaw config get gateway.auth.token
    • SecretRef 管理設定: 外部シークレットプロバイダを解決するか、このシェルで OPENCLAW_GATEWAY_TOKEN をエクスポートし、openclaw dashboard を再実行
    • トークン未設定: openclaw doctor --generate-gateway-token
  • ダッシュボードの設定で、認証フィールドにトークンを貼り付けて接続してください。