CLAUDE.mdで「自分専用AI」を設計する
このレッスンで学ぶこと
- □CLAUDE.mdの役割と配置場所
- □何を書くべきか — プロジェクト概要・スタイル・禁止事項
- □階層構造 — グローバル・プロジェクト・サブディレクトリ
- □良いCLAUDE.mdの実例とアンチパターン


CLAUDE.mdとは — AIへの「業務引き継ぎ書」
CLAUDE.mdは、Claude Codeがセッション開始時に自動で読み込む設定ファイルです。プロジェクトのルート、または ~/.claude/ に配置します。
Claude Codeは毎回新しいセッションで起動するため、前回の会話内容を覚えていません。CLAUDE.mdがあれば、「このプロジェクトはどういうもので、どういうルールで動くべきか」をAIが最初から理解した状態で作業を始められます。
CLAUDE.mdが解決する問題
| CLAUDE.mdなし | CLAUDE.mdあり |
|---|---|
| 毎回「TypeScriptで書いて」と指示 | 最初からTypeScriptで書いてくれる |
| 英語でコメントを書かれる | 日本語コメントがデフォルト |
| テストなしでコミットされる | テスト必須のルールが適用される |
| プロジェクト構成を毎回説明 | ディレクトリ構造を把握済み |
読み込みの仕組み
何を書くべきか — 4つの必須カテゴリ
CLAUDE.mdに書く内容は大きく4つに分かれます。最初から完璧を目指す必要はなく、使いながら育てていくのがベストプラクティスです[1]。
プロジェクト概要
何のプロジェクトか、技術スタック、ディレクトリ構造。AIが「自分が今どこにいるか」を把握するための情報。
コーディングスタイル
言語、命名規則、コメントの言語、フォーマット。AIが生成するコードのスタイルを統一するための指示。
禁止事項
AIにやってほしくないことを明示する。「やるな」と書かないとAIは親切心でやってしまうことがある。
よく使うコマンド
ビルド、テスト、デプロイのコマンド。AIがプロジェクト固有の操作を正確に実行できるようになる。


階層構造 — グローバル・プロジェクト・サブディレクトリ
CLAUDE.mdは3つのレベルで配置でき、すべてが結合されてコンテキストになります[3]。
- 1グローバル
~/.claude/CLAUDE.md全プロジェクト共通の設定。「日本語で応答する」「コミットメッセージは英語」など、自分のスタイルを定義する場所。
- 2プロジェクト
./CLAUDE.mdプロジェクト固有の設定。技術スタック、ディレクトリ構造、テストの実行方法など。gitにコミットしてチームで共有可能。
- 3サブディレクトリ
./src/components/CLAUDE.md特定ディレクトリに入ったときだけ読み込まれる追加コンテキスト。コンポーネントの命名規則やAPIルートの認証パターンなど。
使い分けの目安
実例 — シンプルなCLAUDE.mdから始める
Anthropicの公式ベストプラクティスでも、「短く始めて反復的に改善する」ことが推奨されています[1]。
ステップ1: 最初の3行(Day 1)
ステップ2: 1週間後に追加

アンチパターン — こうすると失敗する
長すぎる(数百行)
CLAUDE.mdはセッション開始時にコンテキストウィンドウに入る。長すぎると他の情報を入れる余地がなくなる。50行以内が目安。詳細は別ファイルに分割する。
曖昧すぎる
「きれいなコードを書いて」は指示にならない。「関数は50行以内」「変数名はキャメルケース」のように具体的に書く。AIは曖昧な指示を自分なりに解釈してしまう。
更新されない
プロジェクトが進化してもCLAUDE.mdが初期のまま。技術スタックが変わった、ディレクトリ構造が変わった場合は必ず反映する。「生きたドキュメント」であることが重要。
秘密情報を書く
APIキーやパスワードをCLAUDE.mdに書かない。gitにコミットされるファイルなので、環境変数の名前は書いてもいいが、値は絶対に書かない。
よくある落とし穴
$ cd ~/claude-practice && claude💡Lesson 3で作ったフォルダを使う
$ CLAUDE.mdを作って。内容は「このプロジェクトは練習用。日本語で応答。ファイル変更前に必ず確認」の3行で✅ Created CLAUDE.md\n\n内容:\n# 練習用プロジェクト\n- 日本語で応答すること\n- ファイルを変更する前に必ず内容を確認すること
💡たった3行でも、Claude Codeの動き方が変わる
$ /exitSession saved. Goodbye!
💡/exitでセッション保存して終了
$ claude╭──────────────────────────────────────╮\n│ Welcome to Claude Code! │\n│ │\n│ 📄 Found CLAUDE.md │\n╰──────────────────────────────────────╯
💡「Found CLAUDE.md」と表示されたら成功。以降のセッションでルールが自動適用される
✅ これがCLAUDE.mdの基本。ここから少しずつルールを追加して「自分専用AI」を育てていこう。
Lesson 5 まとめ
- ✅CLAUDE.mdはAIへの「業務引き継ぎ書」。セッション開始時に自動で読み込まれる
- ✅書くべき4要素: プロジェクト概要・コーディングスタイル・禁止事項・よく使うコマンド
- ✅3つの階層: グローバル → プロジェクト → サブディレクトリで段階的に適用
- ✅3行から始めて育てる。最初から完璧にしようとしない
あなたの番です
出典・参考文献
本レッスンで引用したデータの原典一覧です。数値は各調査の公開時点のものであり、閲覧時期により更新されている可能性があります。
- [1]Claude Code: Best practices for agentic coding — Anthropic(2025)
- [2]Claude Code Overview — Anthropic Docs(2025)
- [3]Memory - Claude Code — Anthropic Docs(2025)
よくある質問
CLAUDE.mdはgitにコミットすべき?
はい。プロジェクトレベルのCLAUDE.mdはチームメンバーと共有できるため、gitにコミットするのが推奨です。ただしAPIキーなどの秘密情報は絶対に含めないでください。
CLAUDE.mdとsettings.jsonの違いは?
CLAUDE.mdは自然言語で書くプロジェクトのルール・文脈です。settings.jsonはMCPサーバー接続やHooksなどの技術的な設定ファイルです。CLAUDE.mdが「何をすべきか」、settings.jsonが「どう接続するか」と考えると分かりやすいです。
CLAUDE.mdが長くなりすぎたらどうする?
50行を超えたら分割のサインです。詳細なルールは.claude/rules/に、参照情報は.claude/reference/に移動しましょう。CLAUDE.mdには概要と「どこに何があるか」のポインターだけ残します。次のレッスンで詳しく解説します。
CLAUDE.mdでAIの土台ができた。次はコンテキストの与え方を磨いて、AIの精度をさらに上げよう。
Lesson 6: コンテキスト設計 →