「コンテキスト」とは、1回の実行で OpenClaw がモデルへ送信するすべてです。これはモデルのコンテキストウィンドウ(トークン制限)によって制限されます。 初心者向けの考え方:Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
- システムプロンプト(OpenClaw が構築): ルール、ツール、Skillsリスト、時刻/ランタイム、注入されたワークスペースファイル。
- 会話履歴: このセッションでのあなたのメッセージ + アシスタントのメッセージ。
- ツール呼び出し/結果 + 添付ファイル: コマンド出力、ファイル読み取り、画像/音声など。
クイックスタート(コンテキストを確認)
/status→ 「ウィンドウはどのくらい埋まっているか」をすばやく確認する表示 + セッション設定。/context list→ 注入されているもの + おおよそのサイズ(ファイルごと + 合計)。/context detail→ より詳細な内訳: ファイルごと、ツールスキーマサイズごと、Skillsエントリサイズごと、システムプロンプトサイズ。/context map→ 現在のセッションで追跡されているコンテキスト寄与要素の、WinDirStat風ツリーマップ画像。/usage tokens→ 通常の返信に、返信ごとの使用量フッターを追加。/compact→ 古い履歴をコンパクトなエントリに要約して、ウィンドウ領域を空ける。
出力例
値はモデル、プロバイダー、ツールポリシー、ワークスペース内の内容によって変わります。/context list
/context detail
/context map
最新のキャッシュ済み実行レポートから生成された画像を送信します。セッション内で通常のメッセージがまだ実行レポートを生成していない場合、/context map は推定をレンダリングせず、利用不可メッセージを返します。長方形の面積は、追跡されているプロンプト文字数に比例します:
- 注入されたワークスペースファイル
- ベースのシステムプロンプトテキスト
- Skillsプロンプトエントリ
- ツールJSONスキーマ
/context list、/context detail、/context json はオンデマンド推定を確認できます。
コンテキストウィンドウに含まれるもの
モデルが受け取るものはすべて含まれます。例:- システムプロンプト(すべてのセクション)。
- 会話履歴。
- ツール呼び出し + ツール結果。
- 添付ファイル/文字起こし(画像/音声/ファイル)。
- Compaction要約と剪定アーティファクト。
- プロバイダーの「ラッパー」または非表示ヘッダー(表示されなくても含まれます)。
OpenClaw がシステムプロンプトを構築する方法
システムプロンプトはOpenClawが所有し、各実行で再構築されます。含まれる内容:- ツールリスト + 短い説明。
- Skillsリスト(メタデータのみ。下記参照)。
- ワークスペースの場所。
- 時刻(UTC + 設定されている場合は変換されたユーザー時刻)。
- ランタイムメタデータ(ホスト/OS/モデル/thinking)。
- Project Context の下に注入されたワークスペースのブートストラップファイル。
注入されたワークスペースファイル(Project Context)
デフォルトでは、OpenClaw は固定セットのワークスペースファイルを注入します(存在する場合):AGENTS.mdSOUL.mdTOOLS.mdIDENTITY.mdUSER.mdHEARTBEAT.mdBOOTSTRAP.md(初回実行のみ)
agents.defaults.bootstrapMaxChars(デフォルト 12000 文字)を使ってファイルごとに切り詰められます。OpenClaw はさらに、agents.defaults.bootstrapTotalMaxChars(デフォルト 60000 文字)により、ファイル全体にまたがるブートストラップ注入の合計上限も適用します。/context はraw と injectedのサイズ、および切り詰めが発生したかどうかを表示します。
切り詰めが発生した場合、ランタイムは Project Context の下にプロンプト内警告ブロックを注入できます。これは agents.defaults.bootstrapPromptTruncationWarning(off、once、always; デフォルト once)で設定します。
Skills: 注入とオンデマンド読み込み
システムプロンプトには、コンパクトなSkillsリスト(名前 + 説明 + 場所)が含まれます。このリストには実際のオーバーヘッドがあります。 Skill指示はデフォルトでは含まれません。モデルは必要な場合のみ、SkillのSKILL.md を read することが期待されます。
ツール: コストは2種類ある
ツールは2つの方法でコンテキストに影響します:- システムプロンプト内のツールリストテキスト(「Tooling」として表示されるもの)。
- ツールスキーマ(JSON)。これらは、モデルがツールを呼び出せるように送信されます。プレーンテキストとしては表示されませんが、コンテキストに含まれます。
/context detail は、どれが支配的か確認できるように、最大のツールスキーマを内訳表示します。
コマンド、ディレクティブ、「インラインショートカット」
スラッシュコマンドは Gateway によって処理されます。いくつか異なる挙動があります:- スタンドアロンコマンド:
/...だけのメッセージはコマンドとして実行されます。 - ディレクティブ:
/think、/verbose、/trace、/reasoning、/elevated、/model、/queueは、モデルがメッセージを見る前に取り除かれます。- ディレクティブのみのメッセージはセッション設定を保持します。
- 通常のメッセージ内のインラインディレクティブは、メッセージごとのヒントとして機能します。
- インラインショートカット(許可リスト済み送信者のみ): 通常のメッセージ内の特定の
/...トークンは即時実行できます(例: 「hey /status」)。モデルが残りのテキストを見る前に取り除かれます。
セッション、Compaction、剪定(保持されるもの)
メッセージ間で何が保持されるかは、仕組みによって異なります:- 通常履歴は、ポリシーによってCompaction/剪定されるまでセッショントランスクリプトに保持されます。
- Compactionは要約をトランスクリプトに保持し、最近のメッセージはそのまま維持します。
- 剪定は、コンテキストウィンドウの領域を空けるために、古いツール結果を_メモリ内_プロンプトから削除しますが、セッショントランスクリプトは書き換えません。完全な履歴は引き続きディスク上で確認できます。
legacy コンテキストエンジンを使用します。kind: "context-engine" を提供するPluginをインストールし、plugins.slots.contextEngine で選択すると、OpenClaw は代わりにコンテキストの組み立て、/compact、および関連するサブエージェントのコンテキストライフサイクルフックをそのエンジンへ委譲します。ownsCompaction: false にしても、legacyエンジンへ自動フォールバックはしません。アクティブなエンジンは引き続き compact() を正しく実装する必要があります。完全なプラグ可能インターフェイス、ライフサイクルフック、設定については、コンテキストエンジンを参照してください。
/context が実際に報告するもの
/context は、利用可能な場合は最新の実行で構築されたシステムプロンプトレポートを優先します:
System prompt (run)= 最後の埋め込み(ツール対応)実行から取得され、セッションストアに保持されたもの。System prompt (estimate)= 実行レポートが存在しない場合(またはレポートを生成しないCLIバックエンド経由で実行している場合)に、その場で計算されたもの。
関連
Context engine
Pluginによるカスタムコンテキスト注入。
Compaction
長い会話を要約して、モデルウィンドウ内に収める。
System prompt
システムプロンプトがどのように構築され、各ターンで何を注入するか。
Agent loop
受信メッセージから最終返信までの、完全なエージェント実行サイクル。