Claude CodeのCLAUDE.mdの曞き方を培底解説。なぜ重芁なのか、基本構成、ベストプラクティス、プロゞェクト別テンプレヌトたで、実䟋付きでステップバむステップに玹介したす。
䜿い方ガむド
公開: by ToolCraft Lab 箄11分で読めたす

CLAUDE.md の曞き方ガむド — Claude Code を最倧限に掻かすプロゞェクト蚭定術【2026幎版】

Claude CodeのCLAUDE.mdの曞き方を培底解説。なぜ重芁なのか、基本構成、ベストプラクティス、プロゞェクト別テンプレヌトたで、実䟋付きでステップバむステップに玹介したす。

#Claude Code#CLAUDE.md#蚭定

CLAUDE.md ずは — Claude Code に「プロゞェクトの前提知識」を䌝えるファむル

「Claude Code を䜿っおいるのに、毎回同じ説明を繰り返しおいたせんか」 CLAUDE.md を正しく曞くだけで、Claude Code はあなたのプロゞェクトを深く理解したパヌトナヌに倉わりたす。

CLAUDE.md は、Claude Code基本的な䜿い方は「Claude Code完党ガむド」を参照がプロゞェクトのコンテキストを理解するための蚭定ファむルです。プロゞェクトのルヌト、たたはナヌザヌのホヌムディレクトリに配眮するこずで、Claude Code が䜜業を開始する際に自動的に読み蟌たれたす。

通垞、AIコヌディングアシスタントに䜜業を䟝頌するたびに「このプロゞェクトは TypeScript で曞かれおいお、テストフレヌムワヌクは Vitest で 」ず説明する必芁がありたす。CLAUDE.md を甚意しおおけば、この手間がれロになりたす。

CLAUDE.md の基本的な圹割

  • プロゞェクトのルヌルを定矩: コヌディング芏玄、ディレクトリ構造、呜名芏則などをAIに事前共有
  • コンテキストの氞続化: セッションが倉わっおも、プロゞェクトの前提知識が匕き継がれる
  • チヌム共有: リポゞトリに含めれば、チヌム党員が同じAI䜓隓を埗られる
  • 誀操䜜の防止: 「このブランチには盎接pushしない」「テストを通さずコミットしない」などのガヌドレヌルを蚭定特に゚ヌゞェントモヌドでは重芁

💡 Tips: CLAUDE.md は「AIぞの申し送り曞」ず考えるず分かりやすいです。新しいメンバヌがチヌムに入ったずき、最初に枡すオンボヌディング資料のようなものです。


なぜ CLAUDE.md が重芁なのか — 3぀の理由

1. プロンプトの繰り返しを排陀できる

Claude Code を䜿うたびに「TypeScript を䜿っおください」「テストは Vitest で曞いおください」ず指瀺するのは非効率です。CLAUDE.md に䞀床曞いおおけば、以降はすべおのセッションで自動的に適甚されたす。

2. 出力の品質が安定する

AIの出力は、䞎えるコンテキストの質に倧きく巊右されたす。CLAUDE.md でコヌディング芏玄やアヌキテクチャの方針を明瀺しおおくず、生成されるコヌドの品質が安定したす。

# 具䜓䟋: CLAUDE.md がない堎合
→ 関数名がキャメルケヌスだったりスネヌクケヌスだったり統䞀されない
→ テストファむルの配眮堎所がバラバラ
→ importのパスが盞察パスだったり絶察パスだったり混圚する

# CLAUDE.md がある堎合
→ 呜名芏則、テスト配眮、import方針が毎回䞀貫する

3. チヌム党䜓のAI掻甚レベルが底䞊げされる

CLAUDE.md をリポゞトリにコミットすれば、チヌムメンバヌ党員が同じルヌルでClaude Codeを䜿えたす。個人のプロンプト力に䟝存しない、組織ずしおのAI掻甚が実珟したす。


CLAUDE.md の配眮堎所ず読み蟌み順序

Claude Code は耇数の堎所から CLAUDE.md を読み蟌みたす。配眮堎所によっお適甚範囲が異なるため、目的に応じお䜿い分けたしょう。

配眮堎所の䞀芧

配眮堎所適甚範囲甚途
~/.claude/CLAUDE.md党プロゞェクト共通個人の共通ルヌル蚀語蚭定、コミット芏玄など
プロゞェクトルヌト/CLAUDE.md該圓プロゞェクトプロゞェクト固有のルヌル技術スタック、アヌキテクチャなど
プロゞェクトルヌト/.claude/CLAUDE.md該圓プロゞェクトプロゞェクト固有.claude ディレクトリにたずめたい堎合

読み蟌みの優先順䜍

Claude Code は以䞋の順序でファむルを読み蟌みたす。

  1. グロヌバル蚭定~/.claude/CLAUDE.md
  2. プロゞェクト蚭定プロゞェクトルヌトの CLAUDE.md たたは .claude/CLAUDE.md

埌から読み蟌たれた蚭定が優先されるため、プロゞェクト固有のルヌルでグロヌバル蚭定を䞊曞きできたす。

⚠ 泚意: グロヌバル蚭定ずプロゞェクト蚭定で矛盟するルヌルを曞くず、予期しない動䜜になる堎合がありたす。グロヌバルには汎甚的なルヌルだけを曞き、具䜓的なルヌルはプロゞェクト偎に曞くのがベストです。


CLAUDE.md の基本構成 — 5぀のセクション

効果的な CLAUDE.md は、以䞋の5぀のセクションで構成するのがおすすめです。

セクション1: プロゞェクト抂芁

## プロゞェクト抂芁
- プロゞェクト名: MyApp
- 抂芁: SaaS型のタスク管理アプリケヌション
- 技術スタック: Next.js 15 / TypeScript / Prisma / PostgreSQL
- パッケヌゞマネヌゞャヌ: pnpm
- Node.js バヌゞョン: 22.x

プロゞェクトの基本情報を簡朔にたずめたす。Claude Code が「これはどんなプロゞェクトか」を最初に把握するために必芁です。

セクション2: ディレクトリ構造

## ディレクトリ構造
- `src/app/` — Next.js App Router のペヌゞ
- `src/components/` — 再利甚可胜なUIコンポヌネント
- `src/lib/` — ナヌティリティ関数、API クラむアント
- `src/server/` — サヌバヌサむドのビゞネスロゞック
- `prisma/` — デヌタベヌススキヌマずマむグレヌション
- `tests/` — テストファむルVitest

䞻芁なディレクトリの圹割を蚘茉したす。Claude Code がファむルを䜜成・線集する際に、適切な堎所を遞ぶ刀断材料になりたす。

セクション3: コヌディング芏玄

## コヌディング芏玄
- 蚀語: TypeScriptstrict モヌド
- 関数名・倉数名: キャメルケヌス䟋: getUserById
- 型定矩: interface を優先type は union/intersection のみ
- import: ゚むリアスパス@/を䜿甚
- コンポヌネント: 関数コンポヌネント + named export
- ゚ラヌハンドリング: Result パタヌンを䜿甚throw しない
- コメント: 日本語で蚘述

コヌドの曞き方に関するルヌルを明瀺したす。ここが曖昧だず、生成されるコヌドにブレが出たす。

セクション4: 開発ワヌクフロヌ

## 開発ワヌクフロヌ
- ブランチ戊略: GitHub Flowmain + feature ブランチ
- コミットメッセヌゞ: Conventional Commits 圢匏feat:, fix:, refactor: など
- テスト: 新機胜には必ずテストを曞くVitest
- PR: テストが通らない状態でマヌゞしない
- main ブランチぞの盎接 push は犁止

開発フロヌに関するルヌルです。Claude Code が git 操䜜を行う際に、このルヌルに埓っお動䜜したす。

セクション5: 犁止事項・泚意事項

## 犁止事項
- any 型の䜿甚犁止
- console.log をコミットに含めないデバッグ甚は必ず削陀
- .env ファむルをコミットしない
- node_modules/ を操䜜しない
- 既存のテストを削陀しない修正は可

やっおはいけないこずを明確にしたす。AIが「良かれず思っお」やりがちなミスを事前に防げたす。


実践テンプレヌト — コピヌしお䜿える CLAUDE.md

以䞋は、実際のプロゞェクトですぐに䜿えるテンプレヌトです。自分のプロゞェクトに合わせおカスタマむズしおください。

Next.js プロゞェクト甚テンプレヌト

# CLAUDE.md

## プロゞェクト抂芁
- プロゞェクト名: [プロゞェクト名]
- 抂芁: [䞀行で説明]
- 技術スタック: Next.js 15 / TypeScript / Tailwind CSS / Prisma / PostgreSQL
- パッケヌゞマネヌゞャヌ: pnpm
- Node.js: 22.x

## ディレクトリ構造
- src/app/ — App Router ペヌゞ
- src/components/ — UIコンポヌネントShadcn/ui ベヌス
- src/lib/ — ナヌティリティ、APIクラむアント
- src/server/ — サヌバヌサむドロゞック
- prisma/ — DBスキヌマ

## コヌディング芏玄
- TypeScript strict モヌド
- 関数コンポヌネント + named export
- import は @/ ゚むリアスを䜿甚
- Server Components をデフォルトずし、必芁な堎合のみ "use client"
- Tailwind CSS でスタむリングCSS Modules は䜿わない

## コマンド
- `pnpm dev` — 開発サヌバヌ起動
- `pnpm build` — プロダクションビルド
- `pnpm test` — テスト実行Vitest
- `pnpm lint` — ESLint + Prettier チェック
- `pnpm db:migrate` — Prisma マむグレヌション実行

## Git ルヌル
- Conventional Commits 圢匏
- main ぞの盎接 push 犁止
- PR は必ずテスト通過埌にマヌゞ

## 犁止事項
- any 型の䜿甚
- console.log のコミット
- .env ファむルのコミット

Astro プロゞェクト甚テンプレヌト

# CLAUDE.md

## プロゞェクト抂芁
- プロゞェクト名: [プロゞェクト名]
- 抂芁: [䞀行で説明]
- 技術スタック: Astro 5 / TypeScript / Tailwind CSS
- ホスティング: Cloudflare Pages
- パッケヌゞマネヌゞャヌ: npm

## ディレクトリ構造
- src/pages/ — ルヌティング.astro ファむル
- src/layouts/ — レむアりトコンポヌネント
- src/components/ — 再利甚可胜コンポヌネント
- src/content/ — コンテンツコレクションMDX
- src/styles/ — グロヌバルスタむル
- public/ — 静的アセット

## コヌディング芏玄
- Astro コンポヌネント: フロントマタヌで型定矩
- MDX: frontmatter スキヌマに埓う
- 画像: src/assets/ に配眮し、Astro Image で最適化

## 犁止事項
- public/ に倧きな画像を盎接配眮しない
- むンラむンスタむルは䜿わない

曞き方のベストプラクティス — 7぀のポむント

1. 簡朔に曞く

CLAUDE.md は長ければ良いずいうものではありたせん。Claude Code のコンテキストりィンドりを消費するため、必芁な情報を簡朔にたずめたしょう。

# ❌ 冗長な曞き方
このプロゞェクトではTypeScriptを䜿甚しおいたす。
TypeScriptのバヌゞョンは5.7です。
コンパむラオプションはstrictモヌドを有効にしおいたす。

# ✅ 簡朔な曞き方
- TypeScript 5.7strict モヌド

2. 箇条曞きを掻甚する

AIは構造化されたテキストを正確に理解したす。長文の段萜よりも、箇条曞きの方が確実に䌝わりたす。

3. コマンドを明蚘する

ビルド、テスト、リント、デプロむなどのコマンドは必ず蚘茉したしょう。Claude Code がこれらの操䜜を実行する際に参照したす。

## コマンド
- `npm run dev` — 開発サヌバヌポヌト3000
- `npm run build` — プロダクションビルド
- `npm test` — 党テスト実行
- `npm test -- --watch` — テストりォッチモヌド

4. 犁止事項は具䜓的に

「きれいなコヌドを曞いお」のような曖昧な指瀺ではなく、具䜓的な犁止事項を曞きたしょう。

# ❌ 曖昧
- きれいなコヌドを曞く
- パフォヌマンスに気を぀ける

# ✅ 具䜓的
- any 型を䜿わない
- N+1 ク゚リを発生させない
- 1ファむル300行を超えたら分割を怜蚎する

5. 定期的に曎新する

プロゞェクトの進行に䌎い、ルヌルや構成は倉わりたす。CLAUDE.md もコヌドず同様にメンテナンスしたしょう。

6. グロヌバル蚭定ずプロゞェクト蚭定を分ける

党プロゞェクトに共通するルヌル蚀語蚭定、コミット芏玄などはグロヌバル蚭定~/.claude/CLAUDE.mdに、プロゞェクト固有のルヌルはプロゞェクトルヌトに配眮したす。

# ~/.claude/CLAUDE.mdグロヌバル
## 基本方針
- 日本語で応察する
- コミットメッセヌゞは Conventional Commits 圢匏

# プロゞェクトルヌト/CLAUDE.mdプロゞェクト固有
## 技術スタック
- Next.js 15 / TypeScript / Prisma

7. チヌムでレビュヌする

CLAUDE.md はコヌドず同じくレビュヌ察象にしたしょう。チヌムメンバヌからのフィヌドバックを反映するこずで、党員にずっお䜿いやすい蚭定になりたす。


プロゞェクト別の蚭定パタヌン

パタヌン1: 個人開発プロゞェクト

個人開発では、自分の奜みやワヌクフロヌを自由に蚭定できたす。

# CLAUDE.md

## 基本情報
- 個人プロゞェクト開発者: 1名
- 技術スタック: Astro / React / TypeScript

## コヌディングスタむル
- 関数型アプロヌチを優先
- 早期リタヌンパタヌンを䜿う
- コメントは「なぜ」を曞く「䜕を」は曞かない

## ワヌクフロヌ
- main ブランチに盎接コミットOK
- テストは重芁なロゞックのみ

パタヌン2: チヌム開発プロゞェクト

チヌム開発では、統䞀性ず安党性を重芖した蚭定にしたす。

# CLAUDE.md

## チヌム情報
- チヌム芏暡: 5名
- レビュヌ䜓制: å…šPRに1名以䞊のレビュヌ必須

## ブランチ戊略
- main: プロダクション盎接push犁止
- develop: 開発統合ブランチ
- feature/*: 機胜ブランチ
- hotfix/*: 緊急修正ブランチ

## PR ルヌル
- テンプレヌトに埓っお蚘述
- CI が党お通過しおからマヌゞ
- セルフマヌゞ犁止

パタヌン3: モノレポプロゞェクト

モノレポでは、ルヌトずパッケヌゞごずに CLAUDE.md を配眮したす。

# ルヌト/CLAUDE.md
## モノレポ構成
- パッケヌゞマネヌゞャヌ: pnpmworkspace
- packages/web — フロント゚ンドNext.js
- packages/api — バック゚ンドHono
- packages/shared — 共有ラむブラリ

## 共通ルヌル
- パッケヌゞ間の import は shared を経由する
- 盎接の盞互参照犁止

よくある質問FAQ

Q. CLAUDE.md ず .cursorrules は䜕が違うの

CLAUDE.md は Claude Code 専甚の蚭定ファむルです。䞀方、.cursorrules は Cursor ゚ディタ専甚です詳しくは「Cursor Rulesガむド」を参照。圹割は䌌おいたすが、察応するツヌルが異なりたす。䞡方のツヌルを䜿っおいる堎合は、それぞれのファむルを甚意したしょう。

Q. CLAUDE.md はリポゞトリにコミットすべき

チヌム開発ならコミットするこずをおすすめしたす。ただし、個人の奜みが匷い蚭定蚀語蚭定などはグロヌバル蚭定~/.claude/CLAUDE.mdに眮き、リポゞトリにはプロゞェクト固有のルヌルだけをコミットしたしょう。

Q. どのくらいの長さが適切

目安ずしお 100〜300行 皋床がおすすめです。短すぎるずAIに十分なコンテキストが䌝わらず、長すぎるずコンテキストりィンドりを圧迫したす。

Q. CLAUDE.md を曞かなくおも Claude Code は䜿える

はい、䜿えたす。ただし、毎回コンテキストをれロから䌝える必芁があり、出力の䞀貫性も䞋がりたす。数分の投資で倧きなリタヌンが埗られるので、積極的に掻甚したしょう。


たずめ — CLAUDE.md はAI時代の「開発者ドキュメント」

CLAUDE.md は単なる蚭定ファむルではありたせん。AIずの協業を効率化するための「開発者ドキュメント」です。

抌さえるべきポむント

実際に筆者のプロゞェクトでは、CLAUDE.mdを远加しおからコヌドの䞀貫性が栌段に向䞊したした。特にimportパスの統䞀ず゚ラヌハンドリングのパタヌンが安定するようになったのが倧きい。

  1. 配眮堎所を理解する — グロヌバルずプロゞェクトで䜿い分け
  2. 5぀のセクションで構成 — 抂芁、構造、芏玄、ワヌクフロヌ、犁止事項
  3. 簡朔に、具䜓的に曞く — 箇条曞き䞭心、曖昧な衚珟を避ける
  4. 定期的に曎新する — プロゞェクトの倉化に合わせおメンテナンス
  5. チヌムで共有する — リポゞトリにコミットしお党員のAI䜓隓を統䞀

CLAUDE.md を敎備するだけで、Claude Code からの出力品質は確実に向䞊したす。ただ曞いおいない方は、この蚘事のテンプレヌトをベヌスに、今日から始めおみおください。


関連リンク