OpenClawSkills
GitHub
コア概念 • 5分で読める

コンテキスト

コンテキスト:モデルに何が見えるか、どう構築されるか、どう確認するか。

"コンテキスト"は、OpenClaw が実行のためにモデルに送信するすべてのものです。モデルのコンテキストウィンドウ(トークン制限)によって制限されます。

初心者のメンタルモデル:

- システムプロンプト(OpenClaw構築):ルール、ツール、スキルリスト、時間/ランタイム、注入されたワークスペースファイル。

- 会話履歴:あなたのメッセージ + このセッションでのアシスタントのメッセージ。

- ''ツール呼び出し/結果 + 添付ファイル'':コマンド出力、ファイル読み取り、画像/オーディオなど。'
''
'コンテキストは"メモリ"とは異なります。メモリはディスクに保存して後で再読み込みできますが、コンテキストはモデルの現在のウィンドウ内にあるものです。

Tutorial.step

クイックスタート(コンテキストの確認)

- ''/status'' → "ウィンドウがどれくらいいっぱいか"のクイックビュー + セッション設定。

- ''/context list'' → 注入されたコンテンツ + おおよそのサイズ(ファイルごと + 合計)。

- ''/context detail'' → より深い内訳:ファイルごと、ツールスキーマサイズごと、スキルエントリサイズごと、システムプロンプトサイズ。

- ''/usage tokens'' → 各返信に使用量フッターを追加します。

- ''/compact'' → 古い履歴をコンパクトなエントリに要約してウィンドウスペースを解放します。

参照:''スラッシュコマンド''、''トークン使用量とコスト''、''圧縮''。

Tutorial.step

What counts toward the context window

値はモデル、プロバイダー、ツールポリシー、ワークスペースの内容によって異なります。

Tutorial.step

`/context list`

Terminal
🧠 Context breakdown
Workspace: '<workspaceDir>'
Bootstrap max/file: 20,000 chars
Sandbox: mode=non-main sandboxed=false
System prompt (run): 38,412 chars (~9,603 tok) (Project Context 23,901 chars (~5,976 tok))

Injected workspace files:
- AGENTS.md: OK | raw 1,742 chars (~436 tok) | injected 1,742 chars (~436 tok)
- SOUL.md: OK | raw 912 chars (~228 tok) | injected 912 chars (~228 tok)
- TOOLS.md: TRUNCATED | raw 54,210 chars (~13,553 tok) | injected 20,962 chars (~5,241 tok)
- IDENTITY.md: OK | raw 211 chars (~53 tok) | injected 211 chars (~53 tok)
- USER.md: OK | raw 388 chars (~97 tok) | injected 388 chars (~97 tok)
- HEARTBEAT.md: MISSING | raw 0 | injected 0
- BOOTSTRAP.md: OK | raw 0 chars (~0 tok) | injected 0 chars (~0 tok)

Skills list (system prompt text): 2,184 chars (~546 tok) (12 skills)
Tools: read, edit, write, exec, process, browser, message, sessions_send, …
Tool list (system prompt text): 1,032 chars (~258 tok)
Tool schemas (JSON): 31,988 chars (~7,997 tok) (counts toward context; not shown as text)
Tools: (same as above)

Session tokens (cached): 14,250 total / ctx=32,000
Tutorial.step

`/context detail`

Terminal
🧠 Context breakdown (detailed)
…
Top skills (prompt entry size):
- frontend-design: 412 chars (~103 tok)
- oracle: 401 chars (~101 tok)
… (+10 more skills)

Top tools (schema size):
- browser: 9,812 chars (~2,453 tok)
- exec: 6,240 chars (~1,560 tok)
… (+N more tools)
Tutorial.step

コンテキストウィンドウに影響するもの

モデルが受信するすべてのものがカウントされます。これには以下が含まれます:

Skill instructions are _not_ included by default. The model is expected to ''read'' the skill's ''SKILL.md'' **only when needed**.

- Conversation history.

- ツール呼び出し + ツール結果。

- 添付ファイル / スクリプト(画像/オーディオ/ファイル)。

- 圧縮サマリーとプルーニングアーティファクト。'
'- プロバイダーの"ラッパー"または非表示ヘッダー(見えませんが、カウントされます)。

Tutorial.step

OpenClaw がシステムプロンプトを構築する方法

システムプロンプトはOpenClaw 所有であり、実行ごとに再構築されます。これには以下が含まれます:

- ツールリスト + 簡単な説明。

- スキルリスト(メタデータのみ。以下を参照)。

''/context detail'' breaks down the biggest tool schemas so you can see what dominates.

- 時間(設定されている場合は UTC + 変換されたユーザー時間)。

- ランタイムメタデータ(ホスト/OS/モデル/思考)。

- ''プロジェクトコンテキスト''の下に注入されたワークスペースブートストラップファイル。'
''
'完全な内訳:''システムプロンプト''。

Tutorial.step

注入されたワークスペースファイル(プロジェクトコンテキスト)

デフォルトでは、OpenClaw は一連の固定されたワークスペースファイルを注入します(存在する場合):

- ''/...''

- **Directives**: ''/think'', ''/verbose'', ''/reasoning'', ''/elevated'', ''/model'', ''/queue'' are stripped before the model sees the message.

- Directive-only messages persist session settings.

- Inline directives in a normal message act as per-message hints.

- ''/...''

Details: [Slash commands](/tools/slash-commands).

- ''BOOTSTRAP.md''(初回実行のみ)'
''
'大きなファイルは、''agents.defaults.bootstrapMaxChars''(デフォルト ''20000'' 文字)を使用してファイルごとに切り捨てられます。''/context'' は''生サイズと注入サイズ''、および切り捨てが発生したかどうかを表示します。

Tutorial.step

スキル:注入されたコンテンツとオンデマンドコンテンツ

What persists across messages depends on the mechanism:

ReferenceConceptsContextPage step 08: P2

Tutorial.step

ツール:2つのコストがあります

''/context'' prefers the latest **run-built** system prompt report when available:

- ''System prompt (run)'' = captured from the last embedded (tool-capable) run and persisted in the session store.

2. ''ツールスキーマ'' (JSON)。これらはモデルがツールを呼び出せるようにモデルに送信されます。プレーンテキストとして考えなくても、コンテキストにカウントされます。'
''
'''System prompt (estimate)'' は、最大のツールスキーマを分解して、何が支配的かを確認できます。

Tutorial.step

コマンド、ディレクティブ、"インラインショートカット"

スラッシュコマンドはゲートウェイによって処理されます。いくつかの異なる動作があります:

- ''スタンドアローンコマンド'':''/...'' のみのメッセージはコマンドとして実行されます。

- ''ディレクティブ'':''/think''、''/verbose''、''/reasoning''、''/elevated''、''/model''、''/queue'' は、モデルがメッセージを確認する前に削除されます。

- ディレクティブのみのメッセージはセッション設定を保持します。

- 通常のメッセージ内のインラインディレクティブは、メッセージごとのプロンプトとして機能します。

- ''インラインショートカット''(ホワイトリストに登録された送信者のみ):通常のメッセージ内の特定の ''/...'' トークンはすぐに実行できます(例:「hey /status」)、モデルが残りのテキストを確認する前に削除されます。'
''
'詳細:''スラッシュコマンド''。

Tutorial.step

セッション、圧縮、プルーニング(何が持続するか)

メッセージ間で何が持続するかはメカニズムによって異なります:

- 通常の履歴は、ポリシーによって圧縮/プルーニングされるまでセッションレコードに残ります。

- 圧縮は、レコードにサマリーを保持し、最新のメッセージをそのままにします。

- ''プルーニング''は、実行のメモリ内プロンプトから古いツール結果を削除しますが、レコードを書き換えません。'
''
'ドキュメント:''セッション''、''圧縮''、''セッションプルーニング''。

Tutorial.step

`/context` が実際に報告する内容

''/context'' は、最新の''実行時構築''システムプロンプトレポートを優先します(利用可能な場合):

- ''System prompt (run)'' = 最後の埋め込み(ツール対応)実行からキャプチャされ、セッションストレージに保持されます。

- ''System prompt (estimate)'' = 実行レポートが存在しない場合(またはレポートを生成しない CLI バックエンド経由で実行する場合)に動的に計算されます。

どちらの場合でも、スケールと主要な貢献者を報告します。完全なシステムプロンプトまたはツールスキーマをダンプしません。