デバッグ
このページでは、ストリーミング出力のデバッグ補助ツールについて説明します。特にプロバイダーが推論を通常のテキストに混入する場合に役立ちます。
ランタイムデバッグオーバーライド
チャットで /debug を使用すると、ランタイム限定の設定オーバーライドを設定できます(メモリのみ、ディスクには書き込まれません)。
/debug はデフォルトで無効です。commands.debug: true で有効にしてください。
openclaw.json を編集せずにマイナーな設定を切り替えたい場合に便利です。
例:
/debug show
/debug set messages.responsePrefix="[openclaw]"
/debug unset messages.responsePrefix
/debug reset
/debug reset はすべてのオーバーライドをクリアし、ディスク上の設定に戻します。
ゲートウェイ watch モード
素早い開発イテレーションには、ファイルウォッチャーでゲートウェイを実行してください:
pnpm gateway:watch
これは以下に対応します:
node --watch-path src --watch-path tsconfig.json --watch-path package.json --watch-preserve-output scripts/run-node.mjs gateway --force
gateway:watch の後にゲートウェイ CLI フラグを追加すると、再起動のたびに渡されます。
開発プロファイル + 開発ゲートウェイ (—dev)
dev プロファイルを使用して状態を分離し、安全で使い捨てのデバッグ環境を構築できます。--dev フラグは 2つ あります:
- グローバル
--dev(プロファイル):~/.openclaw-dev配下に状態を分離し、デフォルトのゲートウェイポートを19001に設定します(派生ポートも連動)。 gateway --dev:設定やワークスペースがない場合にデフォルト設定を自動作成(BOOTSTRAP.md をスキップ)。
推奨フロー(dev プロファイル + dev ブートストラップ):
pnpm gateway:dev
OPENCLAW_PROFILE=dev openclaw tui
グローバルインストールがまだない場合は、pnpm openclaw ... で CLI を実行してください。
動作内容:
-
プロファイル分離(グローバル
--dev)OPENCLAW_PROFILE=devOPENCLAW_STATE_DIR=~/.openclaw-devOPENCLAW_CONFIG_PATH=~/.openclaw-dev/openclaw.jsonOPENCLAW_GATEWAY_PORT=19001(ブラウザ/canvas も連動)
-
開発ブートストラップ(
gateway --dev)- 設定ファイルがない場合に最小限の設定を書き込みます(
gateway.mode=local、ループバックにバインド)。 agent.workspaceを開発ワークスペースに設定。agent.skipBootstrap=true(BOOTSTRAP.md をスキップ)。- ワークスペースファイルがない場合にシード:
AGENTS.md、SOUL.md、TOOLS.md、IDENTITY.md、USER.md、HEARTBEAT.md。 - デフォルトの身元:C3‑PO(プロトコルドロイド)。
- 開発モードではチャンネルプロバイダーをスキップ(
OPENCLAW_SKIP_CHANNELS=1)。
- 設定ファイルがない場合に最小限の設定を書き込みます(
リセットフロー(新規開始):
pnpm gateway:dev:reset
注意:
--devはグローバルプロファイルフラグで、一部のランナーに食べられます。 明示的に指定する必要がある場合は、環境変数形式を使用してください:
OPENCLAW_PROFILE=dev openclaw gateway --dev --reset
--reset は設定、認証情報、セッション、開発ワークスペースをクリア(rm ではなく trash を使用)してから、デフォルトの開発環境を再作成します。
ヒント: 非開発ゲートウェイがすでに稼働中(launchd/systemd)の場合は、先に停止してください:
openclaw gateway stop
生のストリームログ(OpenClaw)
OpenClaw は、フィルタリング/フォーマット前の生のアシスタントストリームをログに記録できます。 推論がプレーンテキストのデルタとして到着しているのか、別の thinking ブロックとして到着しているのかを確認する最良の方法です。
CLI で有効化:
pnpm gateway:watch --raw-stream
パスのオーバーライド(任意):
pnpm gateway:watch --raw-stream --raw-stream-path ~/.openclaw/logs/raw-stream.jsonl
環境変数での設定:
OPENCLAW_RAW_STREAM=1
OPENCLAW_RAW_STREAM_PATH=~/.openclaw/logs/raw-stream.jsonl
デフォルトファイル:
~/.openclaw/logs/raw-stream.jsonl
生のチャンクログ(pi-mono)
ブロックに解析される前の生の OpenAI 互換チャンクをキャプチャするため、pi-mono は別のロガーを公開しています:
PI_RAW_STREAM=1
パス(任意):
PI_RAW_STREAM_PATH=~/.pi-mono/logs/raw-openai-completions.jsonl
デフォルトファイル:
~/.pi-mono/logs/raw-openai-completions.jsonl
注意: これは pi-mono の
openai-completionsプロバイダーを使用するプロセスのみが出力します。
安全上の注意
- 生のストリームログには、完全なプロンプト、ツール出力、ユーザーデータが含まれる可能性があります。
- ログはローカルに保管し、デバッグ後に削除してください。
- ログを共有する場合は、シークレットや個人情報を事前に除去してください。