入門
CLAUDE.md でプロジェクトのルールを定義する
CLAUDE.md ファイルを使ってプロジェクト固有の指示を永続化し、全セッションで自動適用する方法
memoryconfigurationproject-setup
クイック実践ガイド -- CLAUDE.mdの基本設定を5分で試せるレシピです。体系的に学びたい方は CLAUDE.mdガイド をご覧ください。
CLAUDE.md でプロジェクトのルールを定義
CLAUDE.md は、Claude Code のセッション開始時に自動的に読み込まれる指示ファイルです。プロジェクトの規約、技術スタック、開発ルールを記述することで、すべてのセッションで一貫したコンテキストを提供できます。
メモリの階層構造
Claude Code には複数レベルのメモリがあります。
| レベル | ファイルパス | 用途 | Git管理 |
|---|---|---|---|
| エンタープライズポリシー | /Library/Application Support/ClaudeCode/CLAUDE.md | 組織全体のルール | いいえ |
| プロジェクトメモリ | ./CLAUDE.md | チーム共有の指示 | はい |
| ユーザーメモリ | ~/.claude/CLAUDE.md | 個人設定 | いいえ |
初期化方法
> /init
/init コマンドを実行すると、プロジェクトの構造を分析して CLAUDE.md の初期テンプレートを生成します。
実践的な CLAUDE.md の例
# Project: E-Commerce API
## Tech Stack
- Runtime: Node.js 20+
- Framework: Hono
- Database: PostgreSQL via Drizzle ORM
- Testing: Vitest
## Commands
- Build: `npm run build`
- Test: `npm run test`
- Lint: `npm run lint`
- Dev: `npm run dev`
## Conventions
- All API responses follow { success, data?, error? } format
- Use Zod for input validation
- Error handling: always catch with `error instanceof Error`
- File max length: 400 lines
インポート機能
CLAUDE.md から他のファイルをインポートできます。最大5ホップまで再帰的にインポートされます。
# CLAUDE.md
@docs/conventions.md
@docs/api-patterns.md
Rules ディレクトリの活用
.claude/rules/ ディレクトリに Markdown ファイルを配置すると、パススコープルールとして機能します。ファイルパスの glob パターンに基づいて条件付きでロードされます。
.claude/rules/
typescript.md # 常にロード(パス指定なし)
react-components.md # .tsx ファイル読み込み時のみロード(パス指定あり)
ベストプラクティス
- コマンドを明記 -- ビルド、テスト、lint の各コマンドを必ず記載
- コーディング規約を書く -- 命名規則、エラーハンドリングの方針
- 頻繁に更新 -- プロジェクトの進化に合わせて CLAUDE.md も更新
- チームで共有 -- Git で管理し、チーム全体で一貫性を維持
あわせて読む
- # プレフィックスで素早くメモリに追加する - 会話中に即座にメモリに追加する方法
- /compact でコンテキストウィンドウを最適化する - コンテキスト圧縮とパフォーマンス管理
関連コンテンツ
Tips
Hook でツール実行を自動化する
PreToolUse, PostToolUse, SessionStart などのフックを使って、ツール実行前後に自動処理を組み込む方法
Tips
Notepad と Project Memory でプロジェクト知識を永続化する
oh-my-claudecode の Notepad システムと Project Memory を活用して、セッションをまたいでプロジェクト知識を蓄積・活用する方法
Tips
# プレフィックスで素早くメモリに追加する
入力の先頭に # を付けるだけで、CLAUDE.md に即座にメモリを追加できるクイックメモリ機能の使い方
Tips
Skill を定義して再利用可能なプロンプトを作る
.claude/skills/ に SKILL.md ファイルを作成し、ユーザーとClaudeの両方から呼び出せるスキルを定義する方法