Tools
軌跡バンドル
Trajectory キャプチャは、OpenClaw のセッションごとのフライトレコーダーです。各エージェント実行の
構造化されたタイムラインを記録し、/export-trajectory は現在のセッションを、
次の内容を含む編集済みサポートバンドルとしてパッケージ化します。
- モデルに送信されたプロンプト、システムプロンプト、ツール
- 回答に至ったトランスクリプトメッセージとツール呼び出し
- 実行がタイムアウト、中止、Compaction、またはプロバイダーエラーになったかどうか
- 有効だったモデル、plugins、skills、ランタイム設定
- プロバイダーが返した使用量とプロンプトキャッシュのメタデータ
広範な Gateway サポートレポートについては、代わりに
/diagnostics から始めてください。これは
サニタイズ済みの Gateway バンドルを収集し、OpenAI Codex ハーネスセッションの場合は、承認後に Codex
フィードバックを OpenAI に送信できます。セッションごとの詳細なプロンプト、ツール、
トランスクリプトのタイムラインが必要な場合は、/export-trajectory を使用してください。
クイックスタート
アクティブなセッションで送信します(別名 /trajectory)。
/export-trajectoryOpenClaw はワークスペース内の次の場所にバンドルを書き込みます。
.openclaw/trajectory-exports/openclaw-trajectory-<session>-<timestamp>/相対出力ディレクトリ名を渡すと、この場所を上書きできます。
/export-trajectory bug-1234名前は .openclaw/trajectory-exports/ 内で解決されます。絶対パスと
~ パスは拒否されます。
Trajectory バンドルには、プロンプト、モデルメッセージ、ツールスキーマ、ツール 結果、ランタイムイベント、ローカルパスが含まれる可能性があるため、チャットコマンドは常に exec 承認を経由して実行されます。バンドルを作成する場合に限り、エクスポートを一度承認してください。 allow-all は使用しないでください。グループチャットでは、OpenClaw は Trajectory の 詳細を共有ルームに投稿する代わりに、承認プロンプトとエクスポート結果を所有者へ非公開で送信します。
ローカルでの確認やサポートワークフローでは、基盤となる CLI コマンドを 直接実行します。
openclaw sessions export-trajectory --session-key "agent:main:telegram:direct:123" --workspace .その他のフラグ:--output <path>(
.openclaw/trajectory-exports 内のディレクトリ名)、--store <path>(セッションストアの上書き)、
--agent <id>(ストア解決用のエージェント ID)、--json(構造化出力)。
アクセス
Trajectory のエクスポートは所有者コマンドです。送信者は通常のコマンド 認可チェックに加えて、チャネルの所有者チェックにも合格する必要があります。
記録される内容
OpenClaw のエージェント実行では、Trajectory キャプチャがデフォルトで有効です。
ランタイムイベントには次が含まれます。
session.startedtrace.metadatacontext.compiledprompt.submittedmodel.fallback_step。ソースモデル、次のモデル、失敗理由・詳細、チェーン内の位置、およびチェーンが進行したか、成功したか、尽きたかを含みますmodel.completedtrace.artifactssession.ended
トランスクリプトイベントは、アクティブなセッションブランチから再構築されます。ユーザー メッセージ、アシスタントメッセージ、ツール呼び出し、ツール結果、Compaction、モデル 変更、ラベル、カスタムセッションエントリが含まれます。
イベントは、このスキーママーカーを使用した JSON Lines として書き込まれます。
{ "traceSchema": "openclaw-trajectory", "schemaVersion": 1}バンドルファイル
| ファイル | 内容 |
|---|---|
manifest.json |
バンドルスキーマ、ソースファイル、イベント数、生成されたファイルの一覧 |
events.jsonl |
順序付けされたランタイムとトランスクリプトのタイムライン |
session-branch.json |
編集済みのアクティブなトランスクリプトブランチとセッションヘッダー |
metadata.json |
OpenClaw のバージョン、OS/ランタイム、モデル、設定スナップショット、plugins、skills、プロンプトメタデータ |
artifacts.json |
最終ステータス、エラー、使用量、プロンプトキャッシュ、Compaction 回数、アシスタントテキスト、ツールメタデータ |
prompts.json |
送信されたプロンプトと、選択されたプロンプト構築の詳細 |
system-prompt.txt |
キャプチャされている場合、最新のコンパイル済みシステムプロンプト |
tools.json |
キャプチャされている場合、モデルに送信されたツール定義 |
manifest.json は、特定のバンドルに存在するファイルを一覧表示します。セッションで
対応するランタイムデータがキャプチャされなかった場合、一部のファイルは省略されます。
キャプチャの保存先
ランタイム Trajectory イベントは、セッションとともにエージェントごとの SQLite データベースに保存されます。Trajectory をエクスポートすると、編集済みの JSONL サポートバンドルが生成されます。 稼働中のランタイムキャプチャは、セッションに隣接する JSONL サイドカーではありません。
古いリリースや明示的なレガシーファイルのエクスポートにより、従来の .trajectory.jsonl および
.trajectory-path.json ファイルが引き続き現れる場合があります。セッションのメンテナンスでは
これらのファイルをクリーンアップ対象として扱い、アクティブなキャプチャではデータベース行を書き込みます。
キャプチャの無効化
export OPENCLAW_TRAJECTORY=0これにより、OpenClaw の起動前にランタイム Trajectory キャプチャが無効になります。
/export-trajectory では引き続きトランスクリプトブランチをエクスポートできますが、コンパイル済みコンテキスト、
プロバイダーの生成物、プロンプトメタデータなど、ランタイムのみのデータが欠落する可能性があります。
フラッシュタイムアウトの調整
OpenClaw は、エージェントのクリーンアップ中にランタイム Trajectory 行をフラッシュします。デフォルトの
クリーンアップタイムアウトは 10,000 ms です。低速なディスクや大規模なストアでは、
OpenClaw を起動する前に OPENCLAW_TRAJECTORY_FLUSH_TIMEOUT_MS を設定します。
export OPENCLAW_TRAJECTORY_FLUSH_TIMEOUT_MS=30000これは、OpenClaw が openclaw-trajectory-flush タイムアウトをログに記録して
続行するタイミングを制御します。Trajectory のサイズ上限は変更しません。明示的なタイムアウトを渡さない
すべてのエージェントクリーンアップ手順を調整するには、OPENCLAW_AGENT_CLEANUP_TIMEOUT_MS を設定します。
プライバシーと制限
Trajectory バンドルはサポートとデバッグ用であり、公開投稿用ではありません。OpenClaw は エクスポートファイルへ書き込む前に、機密値を編集します。
- 認証情報および既知のシークレットらしいペイロードフィールド
- 画像データ
- ローカル状態のパス
- ワークスペースのパス(
$WORKSPACE_DIRに置換) - 検出されたホームディレクトリのパス
エクスポーターは入力サイズにも上限を設けます。
- ランタイムキャプチャ:稼働中のキャプチャは 10 MiB を上限とするローリングウィンドウで、新しいイベント用の領域を確保するため最も古いイベントを破棄します。エクスポートでは、最大 50 MiB の既存の従来型ランタイムサイドカーファイルを受け付けます
- セッションファイル:50 MiB
- エクスポートごとのランタイムイベント:200,000
- エクスポートされるイベントの合計:250,000
- 個々のランタイムイベント行は 256 KiB を超えると切り詰められます
チーム外へ共有する前に、バンドルを確認してください。編集はベストエフォートであり、 アプリケーション固有のすべてのシークレットを把握できるわけではありません。
トラブルシューティング
エクスポートにランタイムイベントがない場合:
- OpenClaw が
OPENCLAW_TRAJECTORY=0なしで起動されたことを確認します - セッションでもう一度メッセージを実行してから、再度エクスポートします
runtimeEventCountについてmanifest.jsonを調べます
コマンドが出力パスを拒否する場合:
bug-1234のような相対名を使用します/tmp/...または~/...を渡さないでください- エクスポートを
.openclaw/trajectory-exports/内に保持します
サイズエラーでエクスポートが失敗した場合、セッションまたはサイドカーが上記の エクスポート安全上限を超えています。新しいセッションを開始するか、より小さな 再現ケースをエクスポートしてください。