Claude Codeを導入したものの、「毎回同じ指示をしている気がする」「チームのコーディング規約を守ってくれない」といったストレスを感じていませんか?
その原因は、AIに「プロジェクトの文脈」が共有されていないことにあります。人間ならオンボーディングで一度説明すれば済むことも、AIはセッションのたびに忘れてしまうからです。
この記事では、Claude Codeの記憶装置である「CLAUDE.md」の正しい書き方と、実務ですぐに使えるテンプレートを解説します。単なる設定ファイルではなく、「AI専任の引き継ぎ資料」として作り込むことで、開発体験は劇的に向上します。
一言で言えば、CLAUDE.mdはClaude Codeに対する「永続的な記憶」です。
通常、Claude Codeとのセッションは毎回リセットされますが、このファイルがルートディレクトリに存在すると、Claudeは会話の開始時に必ずこの内容を読み込みます。つまり、「このプロジェクトは何を目指していて、どんなルールで動いているか」を、あらかじめ脳にインストールした状態で作業を開始できるのです。
現場のエンジニアが最も疲弊するのは、本質的なロジックの議論ではなく、「インデントは2スペースで」「コミットメッセージは日本語で」といった形式的な指摘の繰り返しではないでしょうか。
CLAUDE.mdを適切に設定することは、こうした「不毛なラリー」をゼロにするための投資です。これは単なるツール設定を超えた、開発チームにおけるDX(デジタルトランスフォーメーション)の第一歩と言えます。

では、具体的に何を書けばいいのでしょうか。 多くの現場で求められるのは、「思考の論理性」と「出力の日本語化」、そして「安全性の担保」です。
以下に、日本の開発チームですぐに使えるテンプレートを用意しました。これをコピーして、プロジェクトのルートディレクトリにCLAUDE.md(ファイル名は大文字必須です)として保存してください。
- **Overview**: [ここにプロジェクトの概要を1行で記述。例:社内向け経費精算SaaSの管理画面]
- **Tech Stack**:
- Frontend: React, TypeScript, Tailwind CSS
- Backend: Node.js, Express
- DB: PostgreSQL
# Core Rules (絶対遵守)
- **Language**:
- Thinking Process: English (for better logic)
- Final Response: Japanese (丁寧語で回答すること)
- **Security**:
- `.env` ファイルやAPIキーの中身は絶対に出力しないこと。
- 認証情報は環境変数から読み込むコードのみを提案すること。
# Coding Standards
- **Style**:
- 変数名は `camelCase`、コンポーネント名は `PascalCase`。
- 関数コンポーネントは `const` 定義を使用する。
- コメントは「なぜそうしたか(Why)」を重視して日本語で記述する。
- **Testing**:
- コード変更後は必ず `npm test` を実行し、パスすることを確認してから回答すること。
# Common Commands
- Build: `npm run build`
- Test: `npm test`
- Lint: `npm run lint`
- Start: `npm run dev`
Thinking Process: English と指定することで、Claude本来の論理性能を最大限に引き出しつつ、出力は読みやすい日本語に限定しています。実務的には、このファイルをGitで管理することで、Backlog**などのプロジェクト管理ツールに記載されている仕様と同様に、チーム全員(とAI)が同じルールを共有できるようになります。
プロジェクトが大規模になると、CLAUDE.mdが数百行に膨れ上がり、AIが指示を無視し始めることがあります。これを防ぐための最新トレンドが、.claude/rules/ ディレクトリを使ったルールの分割管理です。
2025年以降のベストプラクティスでは、すべてのルールを1つのファイルに詰め込むのではなく、コンテキストに応じて必要なルールだけをAIに渡す手法が推奨されています。
例えば、以下のようにファイルを分割します。
.claude/rules/frontend.md.claude/rules/backend.md.claude/rules/testing.mdそして、各ファイル内で「どのファイルを触る時にこのルールを適用するか」を定義します。
# Frontend Rules
- UIコンポーネントはAtomic Designに基づいて配置すること。
- スタイリングにはTailwind CSSのユーティリティクラスを優先すること。
このように設定すると、ClaudeがReactコンポーネントを編集する時だけfrontend.mdが読み込まれます。これにより、AIのメモリ(コンテキストウィンドウ)を節約し、回答の精度を高く保つことができます。

「何を書けばいいかわからない」という場合は、Claude Codeに搭載されている自動生成機能を活用しましょう。
(※見出しでは検索されやすい iso/init と表記しましたが、実際のコマンドは claude init またはREPL内での /init です)
ターミナルでプロジェクトのルートに移動し、以下のコマンドを実行します。
claude init
または、Claude Codeの対話モード中に /init と入力します。
Claudeが現在のコードベース(package.jsonやディレクトリ構造)をスキャンし、使用されている言語やフレームワークを特定して、CLAUDE.mdのドラフトを自動生成してくれます。
ここが最も重要です。自動生成されたファイルは、往々にして「コードを見ればわかること」まで記述されており、冗長です。
npm install のような一般的なコマンドの説明、自明なディレクトリ構成。自動生成はあくまで「下書き」です。そこにチームの魂(暗黙知)を吹き込む作業こそが、エンジニアの腕の見せ所と言えるでしょう。

CLAUDE.mdは一度書いて終わりではありません。チームで開発を進める中で、「またAIが同じミスをしたな」と感じたら、その都度ルールを追記・修正していくものです。
.claude/rules/** でルールを分割する。このサイクルを回すことで、Claude Codeは単なるツールから、阿吽の呼吸で動く「最強のパートナー」へと進化します。まずは今日、テンプレートをコピペして、その変化を体感してみてください。
CLAUDE.md を作成し、本記事のテンプレートを貼り付ける。セールスや採用などのミーティングに関する業務を効率化し生産性を高める日程調整ツール。どの日程調整ツールが良いか選択にお困りの方は、まず無料で使い始めることができサービス連携や、必要に応じたデザインや通知のカスタマイズなどの機能が十分に備わっている日程調整ツールの導入がおすすめです。


