AI のコンテキストとは — 毎回送られる中身と量
5 分で読む
AI エージェント(Claude Code、Codex、Google Antigravity の CLI など)に 1 行話しかけると、AI エージェントはその 1 行の文だけをモデルに送っているわけではありません。裏側で、システムプロンプト、ツールの説明、指示ファイル、過去の会話履歴をまとめて、1 つの長い文章として AI モデルへ送っています。この「AI モデルへまとめて送り直している情報の全体」を、コンテキスト(Context)と呼びます。
なぜ短い質問でもトークンが大量に消費されるのか、コンテキストの中身には何が含まれ、どれほどの量になるのかを、IT連携マップ編集部が 3 つの実用製品で計測・検証しました。
コンテキストには何が入るのか?
AI エージェントが AI モデルに送信するコンテキストは、主に次の 6 つの要素で構成されています。
| 中身(構成要素) | 英語表記・画面項目 | 誰が書くか | いつモデルへ送られるか |
|---|---|---|---|
| ① システムプロンプト | System prompt | 製品の開発元 | 毎回 |
| ② 組み込みツールの説明 | System tools | 製品の開発元 | 毎回 |
| ③ 外部ツールの説明 | MCP tools | 外部ツール・連携サービス | 毎回(設定による/名前だけ送る場合もある) |
| ④ 指示ファイル(業務ルール) | Memory files(AGENTS.md・CLAUDE.md など) | 利用者・チーム | 毎回、全文 |
| ⑤ スキルの説明 | Skills(SKILL.md の概要) | 利用者・開発元 | 毎回、概要説明だけ |
| ⑥ 会話履歴・ツールの実行結果 | Messages(User messages / Tool calls) | 利用者と AI エージェント | 毎回、会話や作業が進むごとに累積して増える |
AI モデル自体には「過去の記憶」がありません。 そのため、チャットで 1 ターン話すたびに、AI エージェントは「あなたの役割(システムプロンプト)」「使える道具(ツール定義)」「社内ルール(指示ファイル)」「ここまでの全会話と実行結果(履歴)」を、毎回すべて最初から送り直しています。これが、質問が 1 行でもトークンを大量に消費する根本的な理由です。
1 行話しかけると、どれくらいの量が送られるのか?
IT連携マップ編集部は 2026 年 10 月に、何も設定していない空のフォルダを用意し、各製品に対して Reply with the word ok. (ok と答えてください)とだけ 1 行送信しました。このとき、AI モデルが実際に受け取った入力トークン数を、各製品が出す記録(usage)で確かめました。トークンは、AI が文章量を計測する基本単位です(トークン(AI)とは)。
| AI エージェント(モデル) | 入力のトークン数(3 回の中央値) |
|---|---|
| Claude Code 2.1.302(Claude Fable 5.1) | 18,920 |
| Antigravity の CLI 1.4.2(Gemini 4 Argon) | 14,709 |
| Codex 0.163.0(GPT-5.6 Terra) | 13,084 |
ユーザーが送信した質問はわずか 5 単語ですが、AI モデルには 1 万 3 千〜1 万 9 千トークン という長大な文章が送られていました。この大半は「システムプロンプト」と「組み込みツールの説明」です(内訳の詳細)。
何が毎回入り、何が使うときだけ入るのか?
コンテキストに含まれる情報は、「最初から毎回全文が入るもの」と「必要になった瞬間にだけ読み込まれるもの」に明確に分かれます。
| 中身 | 読み込みの仕組み | 詳しい解説 |
|---|---|---|
| 指示ファイル(AGENTS.md など) | 起動時に全文が読み込まれ、毎回の会話で送られる | AGENTS.md とは |
| スキル(SKILL.md) | 起動時は名前と説明だけが入り、実際に使うときに本文が読まれる | AI のスキル(SKILL)とは |
| MCP サーバーのツール | ツール名だけを一覧に載せ、必要になった時点で詳細仕様を読む(遅延読み込み) | 内訳の詳細 |
| ファイル | AI が作業中に読み込んだ瞬間から会話履歴に入り、以後は毎ターン送られる | ファイルの活用 |
| 毎回同じ部分(プレフィックス) | 2 回目以降はキャッシュから読み取られ、その部分の料金が通常の 1 割以下になる | プロンプトキャッシュとは |
コンテキストの量が多いと、何が起きるのか?
コンテキストの肥大化は、単なる費用の問題にとどまらず、AI の作業品質そのものを著しく低下させます。
| 発生する問題 | 原因 | 詳しい解説 |
|---|---|---|
| 費用が増え、使用量制限に早く達する | 料金と使用量は、質問の文ではなく、送られたトークンの合計で数える | トークンを使いすぎるとき |
| 大事な所を見落とす | トークンが増えるほど、正確さと想起(recall)が落ちる Claude API Docs(context-windows)原文As token count grows, accuracy and recall degrade出典を開く確認 2026-10-18 |
Lost in the Middle とは |
| 会話が長くなると指示を守らなくなる | コンテキストウィンドウの上限に近づくと古い会話が圧縮(compact)され、細かい指示が落ちることがある | AI の物忘れ |
自分の環境では、どう確かめるのか?
使用している AI エージェントが現在どれくらいのコンテキストを消費しているかは、以下のコマンドで即座に確認できます。
| AI エージェント | 確認方法 |
|---|---|
| Claude Code | /context(ターミナルで claude -p "/context" を実行しても内訳が表示される) |
| Codex | /status(使用モデル、消費トークン数、残りのコンテキスト枠を表示) |
| Antigravity の CLI | /context(項目別の消費トークン数と自動読み込みファイル一覧を表示) |
IT連携マップ編集部ではこのコマンドを使って確認したところ、Claude Code の指示ファイル(Memory files)だけで 349.4k トークン(コンテキストウィンドウの 34.9%)を使っていたことが分かり、ファイルを整理して 34.9k トークンまで減らしました(前後の数値比較)。
ここから先は調査の詳細です(約 7 分)。上のカードだけで決められます。調べた 1 件ずつの記録は IT連携マップ に、出典 URL と調査日つきで公開しています。
調査の詳細
計測は 2026 年 10 月に実施しました。各 AI エージェントの挙動を正確に測るため、既存の設定ファイルや余計な環境変数が自動で読み込まれないよう、env -i を用いて必要な変数のみを与え、Git リポジトリ外の完全に空のディレクトリ上で測定を行いました。
画面の項目と、6 つの中身の対応
Claude Code のターミナル画面(claude -p "/context")や、Antigravity のコンテキスト詳細画面(/context)を開くと、現在のトークン消費内訳が英語で表示されます。それぞれの項目が意味する内容は以下のとおりです。
- System prompt(システムプロンプト):AI エージェントとしての基本動作、思考手順、出力方針を定めたシステム指示です。
- System tools(組み込みツールの説明):ファイルの読み書きやコマンドの実行など、AI エージェントに最初から入っているツールの説明です。
- MCP tools(外部拡張ツールの説明):Model Context Protocol(MCP)経由で接続した外部データベースや外部ツールの説明です。
- Memory files(指示ファイル):利用者が作業フォルダやホームディレクトリに置いた
CLAUDE.md、AGENTS.md、GEMINI.md、および自動記録ファイル(MEMORY.md)の全文です。 - Skills(スキルの説明):登録された各スキル(SKILL)の名前と説明(description)です。普段は本文を読み込まず、説明文だけをコンテキストに置いて消費を抑えています。
- Messages / User messages(会話履歴):利用者が入力したプロンプトや、過去のターンの指示文です。
- Tool calls / Agent responses(ツールの実行結果・モデルの返答):AI が実際にファイルを読んだ中身や、コマンドを実行して得られた出力結果です。一度読み込まれたファイルの中身は、その会話が終わるまでずっと履歴として残り続けます。
- MCP tools (deferred) / System tools (deferred)(後回しにしたツール):ツールの説明全文を最初からは送らず、ツール名だけを保持しておき、「AI が必要とした瞬間に初めて詳細を読み込む」仕組みです。編集部の Claude Code では、13.4k トークン分の説明が後回しになっていました。
- Autocompact buffer(自動圧縮用の予備バッファ):会話がコンテキストウィンドウの上限に近づいたときに、古い会話を圧縮して空きを作る(コンテキスト圧縮)ために取ってある枠です。
何も置かないフォルダで、何がどれだけ送られたか
Claude Code と Antigravity の CLI で、項目別の消費トークン数を測った結果は以下のとおりです。
| 中身(構成要素) | Claude Code 2.1.302 (claude -p "/context") |
Antigravity の CLI 1.4.2 (/context) |
|---|---|---|
| システムプロンプト(System prompt) | 4.4k | 3.9k |
| 組み込みツールの説明(System tools) | 8.3k | 12.9k |
| SKILL の説明(Skills) | 2.2k(標準搭載の SKILL 14 個分) | 3.3k |
| サブエージェント(Subagents) | — | 686 |
| 会話(Messages・User messages) | 10 トークン | 153 トークン |
| 合計 | 14.9k | 21.0k |
| 後回しにしたツールの説明(Deferred tools・初期計算には含まれない) | 13.4k | — |
Antigravity の CLI 画面では、ユーザーのグローバル指示ファイル(~/.gemini/GEMINI.md)とグローバル SKILL ディレクトリが自動読み込み対象として表示されました。
※なお、画面に出るトークン数と、各製品の記録(usage)の入力トークン数は一致しません(Claude Code は画面 14.9k に対し記録 18,920、Antigravity は画面 21.0k に対し記録 14,709)。比較する際は、同一の集計方法で比較する必要があります。
指示ファイル・SKILL・MCP のツールを足すと、何が増えるか
Claude Code において、 出典を開く確認 2026-10-18CLAUDE.md(5,000 バイト・日本語で約 1,700 文字)、SKILL 3 つ、ツールを 10 個持つ MCP サーバーを配置して /context を再確認したところ、指示ファイル(Memory files)が 1.7k、SKILL の説明が 2.2k から 2.3k に増加しました。このとき、MCP サーバーが持つ 10 個のツール説明(803 トークン)は「後回し(deferred)」として扱われ、初期のコンテキストには算入されませんでした。Claude Code Docs(context-window)原文
CLAUDE.md, auto memory, MCP tool names, and skill descriptions all load into context.
MCP サーバーに登録するツールの数を変えて同じ質問を行ったときに測った入力トークン数は、以下のとおりです(Claude Code 2.1.302、3 回の中央値)。
| MCP サーバーのツールの数 | 入力のトークン数 | 0 個との差 | 郵便番号を調べるツールを正しく選んだ回数 |
|---|---|---|---|
| 0 | 18,946 | — | — |
| 10 | 19,096 | +150 | 3/3 |
| 50 | 19,748 | +802 | 3/3 |
| 150 | 21,428 | +2,482 | 3/3 |
ツール 1 つあたり約 16 トークンしか増えておらず、ツールの名前だけが入った量です。「住所の郵便番号を調べるには、どのツールを使うべきか。ツールの名前だけを答え、実行はしないでください」と質問したところ、150 個ものツールが登録されている状態からでも、3 回とも正しく該当ツールを特定・選択できました。
IT連携マップ編集部の指示ファイルを縮めた前後
| 項目 | 縮める前 | 縮めた後 |
|---|---|---|
| 指示ファイルの総容量(2 ファイルの合計) | 867,135 バイト | 56,626 バイト |
| Claude Code 画面上の指示ファイル(Memory files) | 349.4k トークン(コンテキストウィンドウの 34.9%) | 34.9k トークン |
縮めた後の 34.9k トークンの内訳は、ルートの指示ファイルが 7.2k、下位フォルダの指示ファイルが 18.5k、Claude Code が自動で書く自動メモリ(MEMORY.md)が 9.1k でした。指示ファイルに過去のすべての経緯を書き込まず、不要な記録をアーカイブしたことで、毎ターン送られるベーストークンを 31 万トークン以上削減できました。
各製品の公式ドキュメントにおける仕様
| 製品 | 公式ドキュメントの記載内容 |
|---|---|
| Claude Code | CLAUDE.md は、システムプロンプトの直後に、利用者(user)のメッセージとして渡される Claude Code Docs(memory)原文CLAUDE.md content is delivered as a user message after the system prompt, not as part of the system prompt itself.出典を開く確認 2026-10-18 |
| Claude Code | 通常の会話では SKILL の説明文だけをコンテキストに含め、本文は実際に使う瞬間に読み込む Claude Code Docs(skills)原文In a regular session, skill descriptions are loaded into context so Claude knows what's available, but full skill content only loads when invoked.出典を開く確認 2026-10-18 |
| Codex | 作業を開始する前に、まず AGENTS.md を読み込む |
| Antigravity | 常に有効な共通ルール(AGENTS.md・GEMINI.md を含む)は、毎回のシステムプロンプト内に全文が埋め込まれる Google Antigravity Docs(rules)原文Antigravity injects the full content into the system prompt on every turn.出典を開く確認 2026-10-18 |
| Antigravity | 会話の開始時には、SKILL の名前と説明の一覧だけをモデルに提示する Google Antigravity Docs(skills)原文When you start a conversation, the agent sees a list of available skills with their names and descriptions.出典を開く確認 2026-10-18 |
自分で測るコマンド
AI モデルが実際に受け取った総入力トークン数は、以下のコマンドで取得できる JSON 形式のログ内(usage フィールド)で確認できます。Claude Code では input_tokens・cache_creation_input_tokens・cache_read_input_tokens の合計、Codex では input_tokens、Antigravity では input_tokens と cache_read_tokens の合計が、モデルへ送られた真の総量となります。
claude -p "Reply with the word ok." --output-format json
codex exec --json --skip-git-repo-check "Reply with the word ok."
agy -p "Reply with the word ok." --output-format json
同一セッションで会話を続ける場合、Codex や Antigravity の CLI は累積値を表示するため、各ターンの消費量は前ターンの数値を差し引くことで算出できます。