CLAUDE.md の書き方と置き場所、AGENTS.md との関係

先に結論

CLAUDE.md の置き場所

CLAUDE.md は何か所かに置けます。読み込みは、範囲の広いものから狭いものの順です。

範囲場所用途共有される相手
組織(管理者が配る)Linux/WSL: /etc/claude-code/CLAUDE.md、macOS: /Library/Application Support/ClaudeCode/CLAUDE.md、Windows: C:\Program Files\ClaudeCode\CLAUDE.md会社全体の決まりそのマシンの全員
ユーザー~/.claude/CLAUDE.md自分の好み(全プロジェクト共通)自分だけ
プロジェクト./CLAUDE.md または ./.claude/CLAUDE.mdこのリポジトリのチームの決まりチーム(Git 経由)
ローカル./CLAUDE.local.md(.gitignore に追加)このプロジェクトでの自分用メモ(試験環境の URL など)自分だけ

読み込みのしくみ:

大きなプロジェクトでは .claude/rules/ にファイルを分けられます。paths を指定したルールは、合うファイルを扱うときだけ読まれます。

書くこと

公式の方針は「毎回のセッションで必要な事実だけを書く」です。ビルドやテストのコマンド、決まりごと、構成、「いつも X する」というルールなどです。書くとよいもの:

ルールは確かめられる形で書きます。「きれいに整形する」より「インデントは2スペース」のほうが守られます。見出しと箇条書きでまとめます。

小さな例:

# コマンド
- ビルド: `npm run build`
- 1ファイルだけテスト: `npm test -- path/to/file.test.ts`

# コードの書き方
- ES modules(import/export)を使う。CommonJS(require)は使わない
- API ハンドラーは `src/api/handlers/` に置く

# 作業の流れ
- コミット前に `npm test` を実行する
- ブランチ名は `feature/<短い名前>`

@path/to/file で別のファイルを取り込めます。たとえば CLAUDE.md に次の1行を書きます。

概要は @README を参照。

@ の参照はそのまま書きます。バッククォートで囲んだ @パス は取り込まれません。相対パスは、取り込みを書いたファイルの場所が起点です。取り込みの入れ子は4段までです。取り込んだファイルも起動時に読まれるので、整理には役立ちますが読み込む量は減りません。

最初の下書きは /init で作れます。Claude がコードを見て CLAUDE.md のたたき台を書きます。すでにある場合は上書きせず、改善案を出します。

書かないこと

1行ごとに「これを消したら Claude は間違えるか?」と考え、間違えないなら消します。また、CLAUDE.md は「お願い」であって強制ではありません。毎回必ず実行したいことはフックにします。

AGENTS.md との関係

AGENTS.md は、ほかのコーディングエージェントが使う指示ファイルです。Claude Code の公式ドキュメントによると(直接読むには v2.1.277 以降が必要):

リポジトリの状態Claude が読むもの
AGENTS.md があり、起動フォルダとその上に CLAUDE.md も CLAUDE.local.md も無いAGENTS.md
AGENTS.md と CLAUDE.md(または CLAUDE.local.md)の両方があるCLAUDE.md だけ
CLAUDE.md の中で @AGENTS.md を取り込んでいるCLAUDE.md(AGENTS.md も取り込まれる)

~/.claude/CLAUDE.md はこの判定に数えません。CLAUDE.local.md は数えるので、追加すると(初期設定では)AGENTS.md は読まれなくなります。

ツール間で1つのファイルを共有したいときは、AGENTS.md の隣に次の CLAUDE.md を置き、Claude 専用の指示はその下に書きます。

@AGENTS.md

## Claude Code
`src/billing/` の変更は plan mode で行う。

読むファイルは /config の Project instructions でも変えられます(たとえば claude-md-and-agents-md で両方を読む)。

あとから直す

スマホやブラウザから直す(PlainHub)

プロジェクトの CLAUDE.md は Git リポジトリにある普通の Markdown ファイルです。ルールを直すのに、パソコンを開く必要はありません。PlainHub は、自分の GitHub リポジトリにある Markdown ファイルをブラウザで編集できるエディタです。スマホのブラウザでも使えます。保存するたびに Git のコミットになるので、履歴が残ります。ファイルは GitHub とブラウザの間でやり取りされ、PlainHub には保存されません。Claude Code を使っているなら、npm パッケージ plainhub の MCP サーバー(claude mcp add plainhub -- plainhub-mcp)で、Claude にファイルを PlainHub のエディタで開かせられます。

サインインせずに PlainHub を試す

よくある質問

./CLAUDE.md と ./.claude/CLAUDE.md はどちらがよい?
どちらもプロジェクト用として使えます。どちらかに決めてコミットします。

CLAUDE.local.md はまだ使える?
使えます。現在の公式ドキュメントにも、自分用のプロジェクトメモとして ./CLAUDE.local.md が載っています。.gitignore に追加します。同じフォルダの CLAUDE.md の後に読まれます。

CLAUDE.md を書いたのに守ってくれない。何を確認する?
まず /context で読み込まれているか確認します。ルールを具体的にし、食い違うルールを消し、ファイルを短くします。サブフォルダの CLAUDE.md は、そのサブフォルダで作業するときだけ読まれます。


出典(Sources)

Checked: 2026-10-20