第3部 コンテキスト · 第7回 / 全20回 · 15分くらい
前提を「いつも読む・必要なときに読む・探して読む」の3段に分ける
前提を全部 CLAUDE.md に書くと、すぐに長くなり、守られにくくなります。この回では、前提を「いつ読ませるか」で3段に配り分けます。それぞれの段で、Claude Code が実際にどう読み込んでいるかを、ドキュメントで確かめながら進めます。
履修 0 / 20 回
この回を読み終えると、できるようになること
- CLAUDE.md がいつ・どこから読み込まれるか、長さの目安、@ で読み込んだファイルの扱いを説明できる
- スキルの説明文がなぜ「呼ばれる条件」になるのか、説明できる
- 自分の前提を、使う頻度と長さで3段に振り分けられる
専門用語は、初めて出たところで括弧に短い説明を付けています。説明が長くなるものには ※番号を付け、ページの終わりの用語メモにまとめました。
11段目:いつも読む(CLAUDE.md)
CLAUDE.md は、毎回の会話の始めに読み込まれます。Claude Code のドキュメントによると、作業しているフォルダとその上の階層にある CLAUDE.md と CLAUDE.local.md(自分だけの設定を書くファイル。共有しない)は起動時に読まれ、下の階層にあるものは、そのフォルダの作業を始めたときに読まれます。
長さの目安は1ファイル200行以内です。長くなると窓を多く使ううえに、守られにくくなるとされています。また、@ファイル名 で別のファイルを読み込ませる書き方がありますが、ドキュメントには「整理には役立つが、読み込んだファイルも起動時に全部読まれるので、窓の消費は減らない」とはっきり書かれています。
だから1段目には、ほぼすべての作業の判断に効くものだけを置きます。目安は「これを読まずに作業したら、事故が起きるか」。起きないなら、ここに置く必要はありません。
2特定の場所でだけ効くルールは、場所ごとに分ける
ドキュメントでは、コードの一部にしか関係しない指示は、パスを指定したルール※1に移すよう勧めています。指定したファイルを扱うときだけ読み込まれるので、ふだんの窓を使いません。
たとえば「テストのファイルは〜の形で書く」というルールは、テストを書くときにしか要りません。1段目に置いておく理由はありません。
32段目:必要なときに読む(スキル)
スキル※2は、ふだんは名前と短い説明だけを見せておき、必要になったときに本文を読み込む仕組みです。記事の書き方、公開の手順、特定のツールのくせなど、決まった作業でしか使わない前提は、ここに移します。
どのスキルを呼ぶかは、AIが説明文を読んで判断します。だから説明文は「何のスキルか」より「どんな頼まれ方をしたときに使うか」を書くほうが効きます。ドキュメントによると、説明文と when_to_use(使う場面を補足する欄)は、一覧に載せるときに合わせて1,536文字で切られます。大事な使い方を先に書いておきます。
---
name: note-article
description: note 記事の下書き・書き直し・タイトル案を頼まれたときに使う。文体ルールと伏せ語の一覧を含む。
---
# 手順
1. 文体ルール(rules.md)を読む
2. ... 4スキルの本文も、読めば窓を使う
スキルの本文は、呼ばれたあとは会話の中に残ります。ドキュメントによると、会話が要約されるときにも、呼んだスキルは直近の分が要約のあとに付け直されます(1つにつき最初の5千トークンまで、全部で2万5千トークンまで)。
つまり、スキルの本文が長いと、呼んだあとの会話ではずっと窓を使い続けます。本文には判断に必要な手順を書き、決まった処理(変換、集計、整形)はスキルと一緒に置いたスクリプトに任せるほうが、窓も節約でき、結果もぶれません。
53段目:探して読む(検索)
過去の記事、議事録、大きなコードの大部分のように、量が多すぎて読ませきれないものは、必要な部分だけを探して読ませる段に置きます。
Anthropic の記事では、これを「必要になったときに読む(just in time)」やり方として紹介しています。全部を先に読ませるのではなく、ファイルのパスや検索の手がかりだけを持たせておき、必要になったら道具で読み込む、という考え方です。Claude Code が grep(文字列でファイルの中身を探すコマンド)や glob(名前のパターンでファイルを探すこと)で必要なファイルだけを開くのも、このやり方です。
検索の質が、そのまま答えの質になります。何が読み込まれたのかを、あとから確かめられるようにしておくと安心です。
6振り分けの物差し:使う頻度と長さ
| 短い | 長い | |
|---|---|---|
| 毎回使う | 1段目(CLAUDE.md) | 要点だけ1段目、詳しくは2段目へ |
| ときどき使う | 2段目(スキル)か、場所ごとのルール | 2段目(本文は短く、残りは別ファイルへ) |
| めったに使わない | 2段目 | 3段目(検索) |
迷ったら、1段目から外してみて、困るかどうかを試すのがいちばん早いです。困ったら戻せばすみます。
誤解よくある思い違い
@ で別ファイルに分ければ、CLAUDE.md は軽くなる
@ で読み込んだファイルも起動時に全部読まれるので、窓の消費は変わりません。軽くしたいなら、スキルや場所ごとのルールに移します。
スキルは呼ばれるまで窓を使わないので、本文はいくら長くてもよい
呼んだあとは会話に残り、要約のあとも付け直されます。本文は短くし、決まった処理はスクリプトに任せます。
演習手を動かして確かめる
演習1
次の前提を、3段のどこに置くか決めてください。
- このリポジトリでは pnpm を使う(npm を使わない)
- note 記事の文体ルール(80行)
- 過去3年分の議事録
- 本番のデータベースには触らない
答えを見る
- 1段目。ほぼすべての作業に関わり、短い
- 2段目(スキル)。記事を書くときだけ使う
- 3段目(検索)。長く、めったに全体は要らない
- 1段目に理由だけを書き、止めるのはフックや権限の設定で(第9回)。破られたら困るので、ことばだけに任せない
演習2
「記事を書くスキル」を作ったのに、「note の下書きを作って」と頼んでも呼ばれません。説明文は「記事作成を支援するスキル」でした。どう直しますか。
答えを見る
説明文に、実際の頼まれ方を書きます。たとえば「note 記事の下書き・書き直し・タイトル案を頼まれたときに使う」。AIは説明文と頼まれた文を見比べて呼ぶかどうかを決めるので、「支援する」のような抽象的な言葉より、頼むときに使う言葉が入っているほうが呼ばれやすくなります。
頼み方そのまま使える頼み方の例
自分の CLAUDE.md を読み、各項目を次の3つに振り分けてください。
- 1段目(いつも読む):ほぼすべての作業の判断に効く。残す
- 2段目(必要なときに読む):特定の作業にしか効かない。スキルか場所ごとのルールに移す。移す先の名前と、頼まれ方で書いた説明文も提案する
- 3段目(探して読む):長く、めったに使わない。別ファイルにして、必要なときに探す
振り分けた理由を1行ずつ添え、1段目に残る行数の合計も出してください。変更はせずに止まってください。
(ここに CLAUDE.md を貼る) 用語メモ本文の ※番号の説明
出典確かめた資料(2026年10月時点)
- Claude Code Docs「How Claude remembers your project」 CLAUDE.md の読み込まれ方、200行の目安、@ での読み込みは窓の消費を減らさない、パスを指定したルール。
- Claude Code Docs「Extend Claude with skills」 説明文で呼ぶかを決める、一覧では1,536文字で切られる、要約のあとの付け直し(5千・2万5千トークン)。
- Anthropic「Effective context engineering for AI agents」 必要になったときに読む(just in time)やり方。