Claude.md ~ Claude Codeの「記憶」を作る仕組み~
Claude Codeを使っていると、毎回同じ指示を書くことがあります。
例えば、
- 「コミットメッセージは日本語で」
- 「初心者向けに説明して」
- 「テストを書いてから実装して」
といった内容です。毎回入力するのは面倒ですが、この問題を解決する仕組みが Claude.md です。ここでは、Claude.mdの役割、配置場所、書き方のコツを解説します。
📌 Claude.mdとは?
Claude.mdとは、Claude Codeに覚えておいてほしいルールや知識を書くファイルです。
Claude Codeは起動時にこのファイルを自動で読み込みます。
❌ 毎回プロンプトで説明する のではなく、
✅ Claude.mdに一度書いておく だけで済みます。
🧠 Claude.mdを人間に例えると?
Claude.mdは、「新人エンジニア向けの業務マニュアル」のようなものです。
例えば新人が入社したとき、
- 命名規則
- コーディングルール
- 開発手順
- テスト方法
を説明します。
Claude.mdも同じです。Claude Codeに対して、「このプロジェクトではこう動いてください」を事前に教える仕組みです。
🎯 Claude.mdのメリット
① 毎回説明しなくてよい
例えば、コミットメッセージは日本語を毎回入力する必要がなくなります。
② プロジェクトを理解した状態で作業できる
Claude Codeは起動時に内容を読み込みます。
そのため、
- プロジェクトの目的
- 使用技術
- フォルダ構成
を理解した状態で開発できます。
③ コーディング規約を守りやすい
変数名はcamelCase
インデントはスペース2個
などを定義できます。
④ チームで共有できる
Claude.mdはGit管理できます。そのため、チーム全員が同じルールでClaude Codeを利用できます。
⚠️ 注意点
Claude.mdは万能ではありません。書いた内容を100%守るわけではありません。
特に以下の曖昧なため解釈に分かれるもの苦手です。
❌ 悪い例
きれいなコードを書く
適切に対応する
しっかりテストする
✅ 良い例
関数は1つの責務に限定する
変数名はcamelCaseを使用する
テストカバレッジ80%以上を維持する
具体的に書くことが重要です。
📂 Claude.mdの配置場所
Claude Codeでは主に4種類のメモリがあります。
| 種類 | 用途 |
|---|---|
| Project Memory | プロジェクト共通ルール |
| Project Rules | 特定ファイル用ルール |
| User Memory | 全プロジェクト共通ルール |
| Claude.local.md | 個人専用設定 |
① Project Memory
配置例
project/
├ Claude.md
├ src/
└ docs/
プロジェクト直下に配置します。
書く内容
- 技術スタック
- 命名規則
- テスト方針
- 開発ルール
など。
例
# Coding Rules
- TypeScriptを使用
- 関数名はcamelCase
- テストカバレッジ80%以上
② Project Rules
より細かい条件付きルールです。
例えば、
- テストファイルのみ
- 特定フォルダのみ
- 特定拡張子のみ
に適用できます。
イメージ
tests/
└ testing.md
テスト関連の作業時だけ読み込む。
③ User Memory
ユーザー全体の設定です。
どのプロジェクトでも共通で使われます。
例
初心者向けに説明する
コミットメッセージは日本語
テスト駆動開発を優先
向いている内容
| 内容 | 向き不向き |
|---|---|
| 説明スタイル | ◎ |
| コミットルール | ◎ |
| 開発思想 | ◎ |
| 技術スタック | ✕ |
④ Claude.local.md
個人だけで使うローカル設定です。
Git管理対象外です。
例
ローカルDBの接続先
開発サーバーURL
など。
⚠️ 注意
以下は記載しないようにしましょう。
- APIキー
- パスワード
- シークレット情報
- 本番環境接続情報
📑 他ファイルを読み込む方法
Claude.mdは別ファイルを参照できます。
例:
@docs/api-spec.md
@docs/coding-style.md
これにより、Claude.md をシンプルに保てます。
⚠️ ただし読み込みすぎると、Claudeのコンテキストを大量消費します。
🏗 推奨構成
初心者は以下の5章構成がおすすめです。
# Project Overview
# Tech Stack
# Directory Structure
# Coding Standards
# Development Workflow
① Project Overview
プロジェクト概要
ECサイト向けバックエンドAPI
商品管理と注文管理を担当
② Tech Stack
使用技術
Language: TypeScript
Framework: NestJS
Database: PostgreSQL
③ Directory Structure
フォルダの役割
src/domain
ビジネスロジック
src/api
API実装
tests
テストコード
④ Coding Standards
コーディング規約
- camelCaseを使用
- マジックナンバー禁止
- ES Modulesを使用
⑤ Development Workflow
開発ルール
- Conventional Commitsを使用
- テストを先に作成
- Pull Request必須
📏 適切なサイズ
初心者が最も失敗しやすいポイントです。
❌ 悪い例
1000行以上書く
大量のサンプルコードを載せる
✅ 良い例
100~200行程度
箇条書き中心
重要事項のみ
Claude.mdは、長いほど良いのではなく、短くて明確な方が効果的です。
💡 Claude.mdを書くコツ
曖昧な表現を避ける
OK:入力値は必ずバリデーションする
禁止事項だけ書かない
OK:例外を握り潰さない,必ずログ出力する
代替案まで書くと守られやすくなります。
📝 まとめ
Claude Codeを本格的に活用するなら、まず最初に整備すべきファイルがClaude.mdです。
「毎回同じ指示を書く」という作業をなくし、Claude Codeをチームメンバーのように育てていきましょう。