メインコンテンツへスキップ
← 記事一覧に戻る

CLAUDE.md 設定のススメ — Claude Codeを10倍使いこなすプロジェクト設定術

7 min readAI開発ツール
#Claude Code#CLAUDE.md#AI開発ツール#設定

CLAUDE.mdとは

CLAUDE.mdは、Claude Codeに「このプロジェクトではこう動いてほしい」と伝えるための設定ファイルです。プロジェクトのルートに置くだけで、Claudeが毎回自動的に読み込みます。

💡

の体験談

筆者は5つのプロジェクトを並行運用していますが、CLAUDE.mdを整備してからClaude Codeの「的外れな回答」が激減しました。体感で作業効率が2〜3倍になっています。

この記事でわかること:

  • CLAUDE.mdの基本的な書き方
  • 実運用で効果の高い設定パターン
  • プロジェクト規模別のテンプレート
  • やりがちな失敗と対策

CLAUDE.mdの基本構成

最低限、以下の3つを書けばすぐに効果が出ます。

# プロジェクト名

## 技術スタック
- Next.js 16 (App Router) + TypeScript
- Supabase (Auth, DB)
- Stripe (決済)

## 重要ルール
- 〇〇のクライアントは既存ユーティリティを使う(新規作成しない)
- 環境変数は `.env.local` 参照(コミット禁止)

## ディレクトリ構成の要点
- `app/[locale]/` — ページ
- `app/api/` — APIルート
- `lib/` — ユーティリティ

これだけで、Claudeは技術スタックを把握し、既存の設計パターンを尊重してくれます。

効果の高い設定パターン5選

パターン1:読み取り禁止ディレクトリ

Claudeが node_modules/ を探索し始めると、数万トークンが一瞬で消えます。

### 読み取り禁止ディレクトリ
- node_modules/
- .next/
- dist/
- build/
- coverage/

効果:トークン消費を大幅に削減

パターン2:探索→実装のワークフロー制御

### 探索フェーズ
- まずディレクトリ構造とimport関係から推測する
- ファイル全文は必要になるまで読まない
- 候補は最大5ファイルまで
- 有力な1ファイルが見つかった時点で停止

### 実装フェーズ
- 原則1ファイルのみ変更
- 他ファイル参照は最大1つまで
- リファクタ禁止・横展開禁止
- 最小差分で解決する

パターン3:出力フォーマットの制御

Claudeはデフォルトで丁寧すぎる回答をします。短く的確にしてもらいましょう。

### 出力ルール
- 長文説明禁止
- 出力は以下を優先: 対象ファイル、理由、次の1アクション
- コード修正は diff 形式を優先

パターン4:既存ユーティリティの明示

「なぜか新しいファイルを作られる」問題の解決策です。

## Supabase クライアント(重要)
新規にクライアントを作成しないこと。以下の既存ユーティリティを使う:

| ファイル | 用途 |
|---------|------|
| `lib/supabase/client.ts` | ブラウザ用 |
| `lib/supabase/server.ts` | サーバー用 |

パターン5:停止ルール

Claudeが暴走して大量のコードを書き換えるのを防ぎます。

### 停止ルール
- 有力候補が見つかったらそれ以上探索しない
- 指示されていない範囲に広げない
- 不確実でも一旦止まってユーザーに確認する

プロジェクト規模別テンプレート

小規模(個人プロジェクト・スクリプト)

# プロジェクト名

## 概要
[1行で何をするプロジェクトか]

## 技術スタック
- [言語/フレームワーク]

## ルール
- 日本語でコミュニケーション
- 最小差分で解決する

中規模(SaaS・Webアプリ)

# プロジェクト名

## 技術スタック
[使用技術一覧]

## 重要ルール
[やってはいけないこと、使うべき既存コードの指定]

## ディレクトリ構成の要点
[主要ディレクトリの説明]

## 節約運用ルール
[探索・実装・出力のルール]

## 読み取り禁止ディレクトリ
[除外リスト]

大規模(モノレポ・チーム開発)

モノレポの場合、ルートと各サブプロジェクトの両方にCLAUDE.mdを配置します。

repo/
├── CLAUDE.md          ← 共通ルール
├── frontend/
│   └── CLAUDE.md      ← フロント固有ルール
├── backend/
│   └── CLAUDE.md      ← バックエンド固有ルール

ルートのCLAUDE.mdから各サブプロジェクトを参照することもできます。

AGENTS.mdとの使い分け

Claude Codeには AGENTS.md という別の設定ファイルもあります。

ファイル役割
CLAUDE.mdプロジェクト全般のルール・構成・制約
AGENTS.mdアーキテクチャ詳細・API仕様・技術的注意事項

筆者の場合、CLAUDE.mdに「何を使うか」、AGENTS.mdに「どう使うか」を書いています。

よくある失敗パターン

❌ 設定が長すぎる

CLAUDE.md自体が巨大だと、それを読むだけでトークンを消費します。100行以内を目安にしましょう。

❌ 抽象的すぎるルール

# 悪い例
- きれいなコードを書くこと
- ベストプラクティスに従うこと

# 良い例
- Supabaseクライアントは lib/supabase/client.ts を使う
- APIルートは app/api/ 配下に作る

❌ 設定を更新しない

プロジェクトが進化してもCLAUDE.mdが古いままだと、Claudeが間違った前提で動きます。大きな構成変更の後は必ず更新しましょう。

まとめ

やること効果優先度
技術スタック記載Claudeが正しい技術で書く★★★
読み取り禁止設定トークン大幅削減★★★
既存ユーティリティ明示不要なファイル作成防止★★★
探索ワークフロー制御効率的な作業進行★★☆
出力ルール回答の簡潔化★★☆
停止ルール暴走防止★★☆

CLAUDE.mdは「Claudeへのオンボーディング資料」です。新しいメンバーに渡すつもりで書くと、自然と良い設定になります。

次に読む

Claude Code Hooks で事故を防ぐ — git secrets / 本番 DB 保護の実装 (¥500)

CLAUDE.md でプロジェクト設定を整えたら、次は「うっかり事故」の防止です。Hooks を使った 9 つの安全装置で、Claude Code 運用を本番事故ゼロにする実装を有料記事で全公開しています。

← 記事一覧に戻る