はじめに:AI が指示を守らないのは、なぜか
- 「指示したはずのルールを、AI が途中で守らなくなる」
- 「細かい条件をたくさん渡したのに、半分も守ってくれない」
- 「会話を続けていたら、トークンが急に増えて、使用量制限に達してしまった」
Claude Code・Codex・Antigravity の CLI といった AI エージェントを仕事で使うと、こうした壁に当たります。AI が指示を守らない原因は、指示の文面だけではありません。指示を書く場所、資料との並べ方、指示の数、会話の長さでも、守られ方は変わります。
IT連携マップ編集部は、この 3 つの製品で、指示ファイルの読まれ方、資料と指示の並べ方、キャッシュの効き方などを実験しました。この記事は、その結果を 6 つの原則にまとめた総括編です。図の ① 〜 ⑥ が、この記事の 6 つの原則です。くわしい数と出典は、各節の最後と記事の最後で案内する IT連携マップの guide にあります。
1. 原則 1:毎回守らせたい指示は AGENTS.md に書く
AI エージェントに毎回守らせたい指示は、チャットへ毎回入力するのではなく、プロジェクトの作業フォルダに置く指示ファイル AGENTS.md に書きます。「コードのコメントは英語で書く」「テストコードを先に作成する」といった共通の約束事を指示ファイルに書いておくと、AI エージェントは起動時にその指示ファイルを自動で読み込みます。ただし、読み込む指示ファイルの名前と、一度に読み込める大きさの上限は製品ごとに異なります。
IT連携マップ編集部が合言葉を含む指示ファイルを置いて実験したところ(各 3 回)、Codex は AGENTS.md のみを読み込み、Antigravity の CLI は AGENTS.md と GEMINI.md の双方を読み込み、Claude Code は CLAUDE.md を優先して読み込みました(CLAUDE.md が存在しない場合のみ AGENTS.md を読み込みました)。末尾に S の付かない AGENT.md は、Claude Code と Codex は読み込まず、Antigravity の CLI も 6 回中 1 回しか読み込みませんでした。
複数の製品で指示を共通化して守らせるための使い方は、次の 3 つです。
- 指示ファイルの名称は、末尾に S を付けた
AGENTS.mdにします。末尾に S の付かない単数形のAGENT.mdは、ほとんど読み込まれません(Antigravity の CLI が 6 回中 1 回読んだだけ)。 - Claude Code 向けには、
CLAUDE.mdに@AGENTS.mdと 1 行だけ書きます。@記法は Claude Code が外部ファイルを取り込む公式の仕組みであり、指示の本体をAGENTS.mdの 1 か所にまとめたまま、3 つの製品すべてに同じ指示を渡せます。 - Codex は、指示ファイルの先頭 32 KiB(32,768 バイト)までしか読みません。日本語の文字は 1 字 3 バイトなので、日本語だけなら約 1 万 900 字です。それより後ろに書いた指示は読み込まれません。
IT連携マップ編集部が、指示ファイルの先頭・中間・末尾に異なる合言葉を埋め込み、ファイルの大きさを 20KB・50KB・150KB・550KB と大きくして実験しました(各 3 回)。Codex は 20KB では末尾まで指示に従いましたが、公式文書の上限である先頭 32 KiB(32,768 バイト)で読み込みを打ち切りました。Claude Code は 550KB でも全文を読み込みましたが、毎回の入力トークンが増加して利用量の上限に早く達します。Antigravity の CLI は 20KB では 3 回とも末尾まで従いましたが、公式文書の上限である 24,000 バイトを超えると回によって挙動が異なりました。指示ファイルは短く保ちます。
👉 くわしくは:AGENTS.md とは — 各製品がどのファイルを読むか、Codex の 32 KiB の上限、CLAUDE.md・GEMINI.md との違い。
2. 原則 2:指示と命令をプロンプトの途中に書かない
長い仕様書や参考資料を読ませて仕事を頼むときは、指示と命令をプロンプトの先頭か末尾に書き、資料の途中には書きません。ここでの命令は、AI にしてほしいことそのもの(例:「書き直してください」)です。指示は、やり方の手順や方針(例:「です・ます調で書く」)です。
AI 大手 3 社の手引きの勧めは、少しずつ異なります。Anthropic は長い資料を質問・指示・例より上に、Google は質問を最後に、OpenAI は指示を資料の前と後の両方に書くよう勧めています。ただし、どの会社も、指示を資料の外(前か後)に書くよう勧めていて、資料の途中に書けとは言っていません。
図のとおり、総務省の白書を資料にして、3 つの実験をしました(指示に従った数をプログラムで採点)。
- 実験 1(並べ方):資料・命令・指示の順番を 8 通りに変えました。Claude Fable 5.1・Gemini 4 Argon・Gemini 3.8 Flash Low は、順序に関わらず指示を全部守りました。差が出たのは Claude Haiku 5.5 だけで、ツールなしでは資料を最後に置いた並び(7.8 点)が先頭に置いた並び(6.7 点)より高く、ツールや CLAUDE.md がプロンプトの前に入ると、その差は 0.5 点未満でした。
- 実験 2(資料の中の指示):約 4 万字の資料の途中(25%・50%・75% の位置)に「各行の先頭に◆を付けること」という指示を差し込むと、Claude Fable 5.1 は 9 回中 0 回、Claude Haiku 5.5 は 36 回中 8 回しか従いませんでした。先頭に書いた指示には従いました。Claude のモデルは見落としたのではなく、従わなかった回の多くで、返事に従わない理由を書いていました(例:「資料本文の一部と判断し、適用していません」・言い方は回ごとに違います)。資料の中の指示は、資料の中身として扱われます。
- 実験 3(資料の長さ):資料を約 7 千字に短くしても、Claude Fable 5.1 は真ん中の指示に従いませんでした。資料が長いほど守られない、という結果にはなりませんでした。
結論として、3 社の勧めと編集部の実験の結果は少しずつ異なりますが、指示と命令をプロンプトの途中に書かなければ良い、ということです。
👉 くわしくは:
- AI が指示に従わないとき — 並べ方ごとの点と、途中の指示に従わなかった回の返事。
- Lost in the Middle とは — 長い入力の真ん中を見落とす現象を示した論文と、論文が測っていないこと。
3. 原則 3:指示を少なく、明確に書く
指示は、たくさん書くほど守られるわけではありません。研究では、同時に渡す指示が多いほど、守られる割合は下がりました。システムプロンプトに書いた指示も、必ず守られるとは限りません。
- 指示が多すぎるとき:単純な指示を 500 個まとめて渡した研究(IFScale・2025 年)では、最もよいモデルでも、守った割合は 68% でした。
- 指示が食い違うとき:システムプロンプト(system prompt)とユーザープロンプト(user prompt)に食い違う指示を書いた研究では、AI モデルがシステムプロンプトの指示に従った割合は、最もよいモデルでも 63.8% でした。OpenAI の GPT-4.1 の手引きも、指示が食い違うと、プロンプトの終わりに近い方に従いやすいと書いています。
そこで、指示は少なく、明確に書きます。
- 抽象的な言葉を、具体的な手順に変えます。「丁寧に動作確認せよ」ではなく、「実装後は
npm testを実行し、終了コード 0 を確かめてから完了とする」と書きます。 - 指示ファイルは短くします。Claude Code の文書は、1 ファイル 200 行未満を目安にしています。ときどきしか使わない手順は、指示ファイルに並べず、原則 6 の SKILL に分けます。
👉 くわしくは:プロンプトとは — プロンプトが届く 3 つの場所(システムプロンプト・指示ファイル・利用者のメッセージ)、指示が食い違ったときの優先順位、指示の数の研究。
4. 原則 4:指示ファイルの先頭を変えない(プロンプトキャッシュを活かす)
トークンの料金を抑えるには、指示ファイルの先頭を変えないことです。プロンプトキャッシュは、毎回同じ先頭部分(プレフィックス)を、2 回目からキャッシュから読み取る仕組みです。キャッシュから読み取られた部分の料金は、通常の 0.1 倍前後に下がります。先頭部分が 1 文字でも変わると、そこから後ろはキャッシュから読み取られなくなります。
20KB の指示ファイルを置いたフォルダで「ok と答えて」を 5 回送り、3 つの製品でどれだけキャッシュから読み取られたかを実験しました。
| AI エージェント | 別の会話にした場合(2〜5 回目) | 同じ会話を続けた場合(3〜5 ターン目) | キャッシュの読み取り料金 |
|---|---|---|---|
| Claude Code 2.1.302 | 99.99% | 99.7% | 通常の 0.1 倍(90% 引き) ※一部のモデルは 0.05 倍・0.025 倍 |
| Codex 0.163.0 | 0〜64.7% | 97.4% | 通常の 0.1 倍(90% 引き) |
| Antigravity の CLI 1.4.2 | 0% | 88.4% | 通常の 0.05 倍(95% 引き) ※Gemini 4 Argon の API 料金。2026 年 11 月 30 日までは入力 $2.00 に対し $0.10、12 月 1 日からは $4.00 に対し $0.20(割合は同じ) |
キャッシュが外れる操作は、次の 3 つです。
- 指示ファイルに日時を書く:
AGENTS.mdに「更新日時:2026-10-18 22:00」のような毎回変わる日時を書くと、Claude Code では毎回 10,774 トークンがキャッシュから外れ、そのたびにキャッシュへ書き込む料金がかかりました。日時を指示ファイルの先頭に書いても末尾に書いても、結果は同じでした。 - 会話の途中で指示ファイルを書き換える:書き換えると、指示ファイルより後ろは、キャッシュから読み取られなくなります。
- 会話の途中で AI モデルを変える:Claude Sonnet 5.5 に変えると、12,764 トークンを書き直しました。
👉 くわしくは:
- プロンプトキャッシュとは — 3 社の割引率、キャッシュが効く条件、効かなくなる操作。
- AI のトークンが早く減るとき — 指示ファイル・ツール・キャッシュ・会話の長さの 4 つを確かめる順番。
- トークン(AI)とは — 日本語 1,000 字が何トークンになるか、料金と上限をトークンで数える理由。
5. 原則 5:会話が長くなったら、要点をまとめて新しい会話を開く
1 つの会話で長くやり取りすると、AI が指示を守らなくなることがあります。原因は、図の上の 3 つです。会話が長いこと、古い会話がコンテキスト圧縮(compact)でまとめられること、指示が会話の中にしか無いことです。
編集部の実験では、関係の無いターンを 20 回はさんでも(入力は約 3 万トークン)、Claude Fable 5.1 は最初の指示 8 項目に全部従いました。ただし会話が長くなると、毎回送る入力が増えます。何も置かない空のフォルダで「ok と答えて」と頼んだだけでも、AI モデルには毎回 13,084〜18,920 トークン(Claude Code 18,920・Antigravity の CLI 14,709・Codex 13,084)が送られていました。コンテキストウィンドウの上限に近づくと、コンテキスト圧縮で古い会話がまとめられ、細かい指示が落ちることがあります。研究でも、古いモデル(LLaMA2-chat-70B と GPT-3.5)でシステムプロンプトの指示が 8 ターン以内にずれ始めた例(2024 年)や、条件をターンごとに 1 つずつ足すと 6 つの作業の平均で成績が 39% 下がった例(2025 年)があります。
直し方は、図の 4 つです。
- 毎回守らせる指示は、指示ファイル(
AGENTS.md・CLAUDE.md)に移す。Claude Code は、プロジェクトのルートの指示ファイルを、圧縮の後もディスクから読み直します。 - ここまでの指示と決めたことを AI にまとめさせ、新しい会話の最初に貼る。Claude Code は、新しい会話を開いても先頭が同じなら、2 回目から 99.99% がキャッシュから読み取られたので、料金は大きく増えません。
- 圧縮のときに残す物を指示する。Claude Code では
/compactの後に残したい焦点を書けます。CLAUDE.mdに Compact Instructions の節を書くこともできます。 - 関係の無い作業(エラーの調査など)は、別の会話やサブエージェントに分ける。
👉 くわしくは:
- 長い会話で指示に従わなくなるとき — 原因と 4 つの直し方、関係の無いターンを 20 回はさんだ実験。
- AI のコンテキストとは — 3 つの製品が AI モデルへ毎回送る中身と、その量。
- コンテキストウィンドウとは — 「100 万トークン」でも、全部を同じように使えるとは限らない理由。
6. 原則 6:長い資料はファイル、専門手順は SKILL として渡す
長い仕様書や、特定の仕事の手順書は、チャットに貼らずに、長い資料はファイルで、ときどき使う専門手順は SKILL として渡します。図のとおり、置き場所によって、AI に届く時が違うからです。
- 指示ファイル:最初のターンから毎回、全文が届きます。毎回守らせたい指示だけを書きます。
- SKILL:最初は名前と説明だけが届きます(Claude Code では入力が 28 トークン増えただけ)。AI が使うと決めたときに本文を読み、その後のターンは、読んだ本文が会話の一部として毎回届きます。
- ファイル:AI が読むまでは届きません。読んだ後は、中身が会話の一部として毎回届きます。
- 会話に貼る:貼ったときから、その会話では毎回届きます。
ただし、トークンを減らすためにファイルにしても、トークンは減りません。2,893 字の資料をファイルで渡すと、AI がファイルを読むツールを呼ぶ分だけ、2 ターンの入力の合計が約 2 万トークン増えました。長い資料をファイルで渡す理由は、AI に長い出力を会話ではなくファイルへ直接書かせ、会話の履歴が長文で膨らむのを防ぐためです。
MCP のツールも、同じ考え方で数を絞ります。
- Claude Code は、使うときまでツールの説明を読み込まない作り(後回し・deferred)に対応していて、MCP のツールを 150 個増やしても、最初の入力の増加は 2,482 トークンでした。
- Anthropic の文書は、使えるツールが 30〜50 個を超えると、正しいツールを選ぶ力が落ちると書いています。
👉 くわしくは:
- 指示はどこに書くか — 会話・AGENTS.md・SKILL・ファイルで、指示 8 項目の守られ方とトークンを比べた実験。
- AI のスキル(SKILL)とは — SKILL がいつ、どれだけ読み込まれるか。
- 長い資料は会話に貼るか、ファイルで渡すか — ファイルで渡したときのトークンの増え方と、その理由。
7. 3 つの製品の違いの早見表
3 つの製品の違いを、実験の結果と各社の文書から 1 つの表にまとめました。
| 比べること | Claude Code 2.1.302 | Codex 0.163.0 | Antigravity の CLI 1.4.2 |
|---|---|---|---|
| 自動で読む指示ファイル |
CLAUDE.md(無いときだけ AGENTS.md) |
AGENTS.md だけ |
AGENTS.md と GEMINI.md(両方読む) |
| 読む大きさの上限 | 550KB でも全文(文書では 4 MiB まで) | 先頭 32 KiB(32,768 バイト) | 文書では 1 ファイル 24,000 バイト(実験では回によって違った) |
S の無い AGENT.md
|
読まない(0/3) | 読まない(0/3) | 6 回中 1 回だけ読んだ(1/6) |
| SKILL を置いただけのとき | 説明だけ(+28 トークン) | 回によって違った | 本文まで読んだ(3/3) |
| MCP のツールの後回し(deferred) | 対応(150 個で +2,482 トークン) | この実験では測っていない | この実験では測っていない |
| 別の会話でのキャッシュ | 2 回目から 99.99% | 0〜64.7% | 0%(同じ会話の中では 88.4%) |
| 送る中身を見るコマンド | /context |
/status |
/context |
| コンテキスト圧縮(compact) | 約 96.7 万トークンで自動・/compact でも |
コンテキストウィンドウの 90% で自動・/compact でも |
古いターンを要約(checkpoint)にまとめる |
8. もっと詳しく — 困りごとから選ぶ IT連携マップの guide
この記事の 6 つの原則は、IT連携マップの guide 13 本から要点をまとめたものです。設定のしかた、実験の数と出典は、次の guide にあります。
困っていることを今すぐ直したい
| 困りごと・知りたいこと | guide | わかること |
|---|---|---|
| 指示が守られない | AI が指示に従わないとき | 確かめる順番と、8 通りの並べ方ごとの点 |
| トークンが早く減る | AI のトークンが早く減るとき | 指示ファイル・ツール・キャッシュ・会話の長さを確かめる順番 |
| 長い会話で指示を忘れる | 長い会話で指示に従わなくなるとき | 原因と 4 つの直し方 |
仕組みを知って、置き場所と書き方を決めたい
| 困りごと・知りたいこと | guide | わかること |
|---|---|---|
| 指示ファイルを作りたい | AGENTS.md とは |
CLAUDE.md・GEMINI.md との違い、どの製品がどれを読むか、Codex の 32 KiB の上限 |
| 指示の書き方と優先順位を知りたい | プロンプトとは | プロンプトが届く 3 つの場所、食い違ったときの優先順位、並べ方と数 |
| キャッシュで料金を下げたい | プロンプトキャッシュとは | 3 社の割引率、キャッシュが効く条件と効かなくなる操作 |
| 指示をどこに置くか決めたい | 指示はどこに書くか | 会話・AGENTS.md・SKILL・ファイルの守られ方とトークン |
| 手順を SKILL に分けたい | AI のスキル(SKILL)とは | SKILL がいつ、どれだけ読み込まれるか |
| 長い資料をファイルで渡したい | 長い資料は会話に貼るか、ファイルで渡すか | 会話に貼る場合とファイルで渡す場合のトークンの違い |
| 毎回送られる中身を知りたい | AI のコンテキストとは | 空のフォルダでも 1 万トークンを超える中身の内訳 |
言葉の意味を正しく知りたい
| 困りごと・知りたいこと | guide | わかること |
|---|---|---|
| トークンとは何か | トークン(AI)とは | 日本語 1,000 字が何トークンか |
| 一度に読める量を知りたい | コンテキストウィンドウとは | 「100 万トークン」でも、全部を同じように使えるとは限らない理由 |
| 真ん中を見落とす現象を知りたい | Lost in the Middle とは | 論文が測ったことと、今の AI での実験の結果 |
読者アンケート実施中
このテーマをもっと深掘りしてほしい方は、記事に「いいね」をお願いします。「いいね」の多いテーマから順に追加調査し、結果は新着記事でお知らせします(フォローしていただくと通知が届きます)。