#03

CLAUDE.mdを育てる

上級

CLAUDE.mdをプロジェクトの成長に合わせて継続的に改善し、階層構造を活用する方法を学びます。

座学

この講座で学べること

  • CLAUDE.mdは最初から完璧に作る必要がなく使いながら育てるものだと理解する
  • 「また同じ指示をした」と気づいたときにCLAUDE.mdに追記するサイクルを身につける
  • CLAUDE.md自体をClaude Codeに整理・改善させる方法を習得する
  • 100行を超えたら定期的に削除・整理する習慣を身につける

CLAUDE.mdはClaude Codeへの「いつも守ってほしいこと」を書いておくファイルです。「このプロジェクトではTypeScriptを使う」「コメントは日本語で書く」「デプロイ前には必ずテストを実行する」といったルールを書いておくと、毎回同じ指示を出す手間がなくなります。Claude Codeはセッション起動時に自動でCLAUDE.mdを読み込むため、一度書いておけば以後は意識しなくてもルールに従った動作をしてくれます。

CLAUDE.mdは最初から完璧に作ろうとしなくて構いません。プロジェクトを進めながら「また同じ間違いをされた」「毎回この指示を出している」と気づいたときに1行追記するだけで、少しずつ賢くなっていきます。良いCLAUDE.mdは一気に書くものではなく、実際に使いながら育てていくものです。

書くべき内容は4つのカテゴリに整理できます。①プロジェクト概要(何を作っているか・技術スタック)、②コーディングルール(命名規則・コメント言語・フォーマット)、③作業ルール(テスト必須・コミット前の確認事項)、④禁止事項(触れてはいけないファイル・避けるべき実装パターン)。特に「禁止事項」を明記しておくと、意図しない変更を防げます。

CLAUDE.mdの配置場所によって適用範囲が変わります。リポジトリのルートに置くとプロジェクト全体に適用され、サブフォルダに置くとそのフォルダ内のみに適用されます。たとえば `frontend/CLAUDE.md` にフロントエンド固有のルール、`backend/CLAUDE.md` にバックエンド固有のルールを分けて書くことで、モノリポ(複数プロジェクトを1リポジトリで管理する構成)でも細かく制御できます。

100行を超えると指示の優先順位がClaude Codeに伝わりにくくなってきます。不要になった指示は定期的に削除しましょう。「このCLAUDE.mdを読んで、重複している部分を統合して、不要な指示を削除して、100行以内に整理して」とClaude Code自身に頼むと、自分で読んで改善してくれます。

CLAUDE.mdの成長タイムライン

初期〜20行
  • プロジェクト概要
  • 使用技術
  • 基本ルール
開発中20〜60行
  • コーディング規約
  • よくある失敗パターン
  • 使ってはいけない方法
完成後40〜80行
  • デプロイ手順
  • 定期メンテのルール
  • チームへの引き継ぎ事項

⚠️ 100行を超えると品質が低下します。不要になった指示は定期的に削除しましょう。「このCLAUDE.mdを改善して」とClaude Codeに依頼するのも有効です。

CLAUDE.mdはリポジトリのルートに置くとプロジェクト全体に適用されます。サブフォルダに置くとそのフォルダ内のみに適用されます。

実践手順

現在のCLAUDE.mdを確認する

プロジェクトルートにCLAUDE.mdがあるか確認します。

zsh
cat CLAUDE.md

プロジェクト固有のルールを追記する

Claude Codeに依頼してCLAUDE.mdを改善します。

zsh
CLAUDE.mdに「コミットメッセージは日本語で書く」「変数名は英語のキャメルケース」のルールを追加してください

CLAUDE.md自体をClaude Codeに改善してもらう

既存のCLAUDE.mdをClaude Code自身に整理・改善してもらいます。

zsh
このCLAUDE.mdを読んで、冗長な部分を削除し、より明確な指示に書き直してください

確認チェック

講座を終える前に、以下の項目を確認しましょう。

よくある質問

Q. CLAUDE.mdに書いたルールをClaude Codeが守ってくれません

A. よくある原因は3つです。①CLAUDE.mdが正しいフォルダに置かれていない(作業フォルダのルートに置く必要があります)、②指示が曖昧すぎる(「コメントは日本語で」ではなく「コードコメントは必ず日本語で書くこと。英語コメントは不可」のように明確に書く)、③CLAUDE.mdが100行を超えて後半の指示が無視されている(整理して100行以内に収める)。

Q. グローバルCLAUDE.md(~/.claude/CLAUDE.md)とプロジェクトCLAUDE.mdはどちらが優先されますか?

A. 両方が読み込まれて組み合わせて適用されます。競合する場合はプロジェクト側のCLAUDE.mdが優先されます。グローバルには全プロジェクト共通のルール(言語設定・基本的なコーディングスタイル)を書き、プロジェクトには固有のルールを書く使い分けが効果的です。

Q. CLAUDE.mdとSkillsを両方使っていますが、どう使い分ければいいですか?

A. CLAUDE.mdには「常時適用するルール」、Skillsには「特定の作業をするときだけ参照する手順」を書きます。「コメントは日本語で」はCLAUDE.md向き、「週報を書くときの手順」はSkills向きです。判断基準は「毎回の作業全般に適用したいか(CLAUDE.md)、特定作業のときだけ使うか(Skills)」です。

関連講座

「確認チェック」の全項目にチェックを入れると完了できます