TUI(ターミナル UI)

クイックスタート

  1. Gateway を起動します。
openclaw gateway
  1. TUI を開きます。
openclaw tui
  1. メッセージを入力して Enter を押します。

リモート Gateway:

openclaw tui --url ws://<host>:<port> --token <gateway-token>

Gateway がパスワード認証の場合は --password を使用してください。

画面の見方

  • ヘッダー: 接続 URL、現在のエージェント、現在のセッション。
  • チャットログ: ユーザーメッセージ、アシスタントの返信、システム通知、ツールカード。
  • ステータス行: 接続/実行状態(接続中、実行中、ストリーミング、アイドル、エラー)。
  • フッター: 接続状態 + エージェント + セッション + モデル + think/fast/verbose/reasoning + トークン数 + deliver。
  • 入力: オートコンプリート付きテキストエディター。

メンタルモデル: エージェントとセッション

  • エージェントは一意のスラッグです(例: mainresearch)。Gateway がリストを公開します。
  • セッションは現在のエージェントに所属します。
  • セッションキーは agent:<agentId>:<sessionKey> として保存されます。
    • /session main と入力すると、TUI は agent:<currentAgent>:main に展開します。
    • /session agent:other:main と入力すると、そのエージェントセッションに明示的に切り替えます。
  • セッションスコープ:
    • per-sender(デフォルト): 各エージェントに複数のセッション。
    • global: TUI は常に global セッションを使用(ピッカーが空の場合があります)。
  • 現在のエージェント + セッションは常にフッターに表示されます。

送信と配信

  • メッセージは Gateway に送信されます。プロバイダへの配信はデフォルトでオフです。
  • 配信をオンにする方法:
    • /deliver on
    • または設定パネル
    • または openclaw tui --deliver で起動

ピッカーとオーバーレイ

  • モデルピッカー: 利用可能なモデルを一覧表示し、セッションオーバーライドを設定。
  • エージェントピッカー: 別のエージェントを選択。
  • セッションピッカー: 現在のエージェントのセッションのみ表示。
  • 設定: deliver、ツール出力の展開、thinking の表示をトグル。

キーボードショートカット

  • Enter: メッセージ送信
  • Esc: アクティブな実行を中止
  • Ctrl+C: 入力をクリア(2 回押すと終了)
  • Ctrl+D: 終了
  • Ctrl+L: モデルピッカー
  • Ctrl+G: エージェントピッカー
  • Ctrl+P: セッションピッカー
  • Ctrl+O: ツール出力の展開/折りたたみを切り替え
  • Ctrl+T: thinking の表示を切り替え(履歴を再読み込み)

スラッシュコマンド

基本:

  • /help
  • /status
  • /agent <id>(または /agents
  • /session <key>(または /sessions
  • /model <provider/model>(または /models

セッション制御:

  • /think <off|minimal|low|medium|high>
  • /fast <status|on|off>
  • /verbose <on|full|off>
  • /reasoning <on|off|stream>
  • /usage <off|tokens|full>
  • /elevated <on|off|ask|full>(エイリアス: /elev
  • /activation <mention|always>
  • /deliver <on|off>

セッションライフサイクル:

  • /new または /reset(セッションをリセット)
  • /abort(アクティブな実行を中止)
  • /settings
  • /exit

その他の Gateway スラッシュコマンド(例: /context)は Gateway に転送され、システム出力として表示されます。スラッシュコマンド を参照。

ローカルシェルコマンド

  • 行の先頭に ! を付けると、TUI ホストでローカルシェルコマンドを実行します。
  • TUI はセッションごとに 1 回、ローカル実行の許可を求めます。拒否するとそのセッションでは ! が無効になります。
  • コマンドは TUI の作業ディレクトリで新しい非対話シェルで実行されます(持続的な cd/env はなし)。
  • ローカルシェルコマンドの環境には OPENCLAW_SHELL=tui-local が設定されます。
  • 単独の ! は通常のメッセージとして送信されます。先頭のスペースはローカル実行をトリガーしません。

ツール出力

  • ツールコールは引数 + 結果のカードとして表示されます。
  • Ctrl+O で折りたたみ/展開表示を切り替えます。
  • ツール実行中は、部分的な更新が同じカードにストリーミングされます。

ターミナルカラー

  • TUI はアシスタント本文をターミナルのデフォルト前景色で表示するため、ダーク/ライトどちらのターミナルでも読みやすくなっています。
  • ライト背景のターミナルで自動検出が正しくない場合は、openclaw tui の起動前に OPENCLAW_THEME=light を設定してください。
  • 元のダークパレットを強制するには OPENCLAW_THEME=dark を設定してください。

履歴とストリーミング

  • 接続時に TUI は最新の履歴を読み込みます(デフォルト 200 メッセージ)。
  • ストリーミングレスポンスは確定するまでその場で更新されます。
  • TUI はより豊富なツールカードのためにエージェントツールイベントも監視します。

接続の詳細

  • TUI は mode: "tui" で Gateway に登録します。
  • 再接続時にシステムメッセージが表示されます。イベントのギャップはログに記録されます。

オプション

  • --url <url>: Gateway WebSocket URL(デフォルトは設定または ws://127.0.0.1:<port>
  • --token <token>: Gateway トークン(必要な場合)
  • --password <password>: Gateway パスワード(必要な場合)
  • --session <key>: セッションキー(デフォルト: main、スコープが global の場合は global
  • --deliver: アシスタントの返信をプロバイダに配信(デフォルトはオフ)
  • --thinking <level>: 送信時の thinking レベルをオーバーライド
  • --timeout-ms <ms>: エージェントタイムアウト(ミリ秒)(デフォルトは agents.defaults.timeoutSeconds

注意: --url を設定した場合、TUI は設定や環境変数の認証情報にフォールバックしません。 --token または --password を明示的に渡してください。明示的な認証情報がない場合はエラーになります。

トラブルシューティング

メッセージ送信後に出力がない場合:

  • TUI 内で /status を実行して Gateway の接続状態とアイドル/ビジー状態を確認。
  • Gateway ログを確認: openclaw logs --follow
  • エージェントが実行可能か確認: openclaw statusopenclaw models status
  • チャットチャンネルでメッセージを期待している場合は、配信を有効にしてください(/deliver on または --deliver)。
  • --history-limit <n>: 読み込む履歴エントリ数(デフォルト 200)

接続のトラブルシューティング

  • disconnected: Gateway が動作していること、--url/--token/--password が正しいことを確認。
  • ピッカーにエージェントがない: openclaw agents list とルーティング設定を確認。
  • セッションピッカーが空: global スコープの可能性、またはまだセッションがない。