AgentCEO

2026-03-26

Claude Code CLAUDE.mdの書き方 — AIへの業務マニュアル設計

CLAUDE.mdはClaude Codeへの業務マニュアル。ゴール・フォルダ構成・スキル一覧・禁止操作の4要素で、AIが毎セッション即戦力になる設計方法を解説。

3行で分かるこの記事

CLAUDE.mdはリポジトリのルートに置く「AIへの業務マニュアル」。ゴール・フォルダ構成・スキル一覧・禁止操作の4要素を書くだけで、Claude Codeが毎セッション即戦力になる。実際に136案件で使っている設計パターンを公開する。


CLAUDE.mdとは何か

Claude Codeはセッションが切れると全部忘れる。

136案件を回していると、1日に5〜10回セッションが切り替わる。そのたびに「この案件の状況は...」「このリポジトリでは...」と教え直すと、スイッチングコストだけで1日の時間が消える。

CLAUDE.mdは、この問題を解決するファイル。リポジトリのルートに置くと、Claude Codeが起動時に自動で読み込む。

~/dev/
├── CLAUDE.md          ← ここに置く(全リポジトリ共通)
└── projects/
    └── 051_A社/
        └── 06_開発/
            └── aipos/
                └── CLAUDE.md  ← プロジェクト固有も置ける

人間の新人マニュアルと同じ構造。 ただし人間は1回覚えれば忘れないが、AIは毎回読む必要がある。


最小構成: この4つだけ書く

CLAUDE.mdに書くべきは4つだけ。

1. ゴール

## ゴール
1人で、エージェント(Claude Code)を使いつつ、開発工程を回せるようになる

1行でいい。「このリポジトリで何をするか」が分かればいい。ゴールがないとCCは方向性を見失う。

2. フォルダ構成

## フォルダ構成
| パス | 説明 |
|------|------|
| `README.md` | ダッシュボード(人間用) |
| `CLAUDE.md` | このファイル(AI用) |
| `.claude/skills/` | スキル定義 |
| `projects/` | 案件群(.gitignore) |

CCは「どこに何があるか」を知らないと、関係ないファイルを読みに行って時間を浪費する。テーブル形式が見やすい。

3. スキル一覧

## スキル一覧
| スキル | やること |
|--------|----------|
| `/dev-init` | 案件フォルダ作成 |
| `/dev-minutes` | 文字起こし→議事録 |
| `/dev-followup` | フォローメール生成 |

使えるスキルと、その入出力を明示する。CCは一覧があると「この場面ではこのスキルを使えばいい」と判断できるようになる。

4. 禁止操作

## 禁止操作
- `rm -rf` / `git push --force` / `git reset --hard` / `sudo`
- プロジェクトルートに画像ファイルを保存しない

やってはいけないことを明示する。 これがないと、CCが善意で rm -rf したり、git push --force で履歴を壊したりする。


実践: 136案件で使っているCLAUDE.md

実際の構成はこう。最小構成の4つに加えて、運用で必要になったものを足している。

CLAUDE.md の全体構造
├── ゴール                    ← 1行
├── フォルダ構成              ← テーブル
├── スキル一覧                ← テーブル(40スキル分)
├── Skill vs Agent            ← スキルとサブエージェントの違い
├── 案件フォルダ構成          ← 案件ごとのテンプレ
├── 詳細ドキュメント参照先    ← 外部ファイルへのポインタ
├── クイックリファレンス      ← コマンド集
├── 禁止操作                  ← 絶対にやってはいけないこと
├── 環境変数                  ← 必要なキー一覧
├── GitHub運用ルール          ← private必須、等
├── ポート割当ルール          ← 案件番号ベース
├── 心得                      ← 判断の指針
└── アクティブプロジェクト文脈 ← 今動いてる案件の概要

全部入りにしない

CLAUDE.mdが長すぎるとCCのコンテキストを圧迫する。コツは:

  • 概要だけCLAUDE.mdに書く
  • 詳細は別ファイルに分けて参照させる
## 詳細ドキュメント
| 参照先 | 内容 |
|--------|------|
| `.claude/config/guides/workflow.md` | 開発フロー |
| `.claude/config/guides/coding-rules.md` | コーディング規約 |
| `.claude/config/stacks/` | 技術スタック定義 |

CCは必要なときだけ参照ファイルを読みに行く。全部CLAUDE.mdに詰め込む必要はない。


スキル定義の書き方

スキルはCLAUDE.mdに一覧を書き、詳細は .claude/skills/{name}/SKILL.md に分離する。

CLAUDE.mdに書くこと(一覧)

| `/dev-minutes` | 文字起こし→議事録(VAT分析) |

1行で何をするか分かればいい。

SKILL.mdに書くこと(詳細)

---
description: 文字起こしから議事録を生成する
model: claude-opus-4-5-20251101
allowed-tools: Read, Write, Edit, Glob, Grep, Bash, Agent
---

## 入力
- `01_文字起こし/` 配下のテキストファイル

## 出力
- `02_議事録/YYYY-MM-DD_会議名.md`

## 手順
1. 文字起こしファイルを読む
2. VAT分析で構造化する
3. 温度判定(A/B/C)を付ける
4. 議事録ファイルを出力する

入力・出力・手順の3点セット。 料理のレシピと同じ構造。


よくあるミス5つ

1. ゴールを書かない

CCが「何のためにこのリポジトリがあるか」を理解できない。コードレビューを頼んだのにリファクタリングを始める、といった暴走の原因になる。

2. フォルダ構成を書かない

CCが最初に findls で探索を始める。100ファイル以上あるリポジトリだと、それだけで30秒〜1分を浪費する。

3. 禁止操作を書かない

CCは善意でクリーンアップする。git push --force で履歴を消す。rm -rf node_modules でキャッシュを消す。「やってはいけない」を明示しないと、AIは最適と判断した操作を実行する。

4. CLAUDE.mdに全部詰め込む

500行超えるとコンテキストを圧迫する。概要をCLAUDE.md、詳細を別ファイルに分離する。

5. 更新しない

CLAUDE.mdが古いと、存在しないスキルを呼んだり、古いフォルダ構造を前提に動いたりする。案件構成やスキルが変わったら更新する。最終更新日を書いておくと、鮮度が分かる。


階層構造で管理する

プロジェクトが複数ある場合、CLAUDE.mdを階層的に配置する。

~/dev/
├── CLAUDE.md                    ← 全リポジトリ共通(スキル一覧、禁止操作、心得)
└── projects/
    ├── 051_A社/
    │   └── 06_開発/
    │       └── aipos/
    │           └── CLAUDE.md    ← プロジェクト固有(技術スタック、API、デプロイ先)
    └── 072_B社/
        └── 06_開発/
            └── capaplanner/
                └── CLAUDE.md    ← プロジェクト固有

Claude Codeは起動時に、カレントディレクトリから上に向かってCLAUDE.mdを探す。プロジェクト固有 → 全体共通の順で読み込まれる。


心得セクションの設計

CLAUDE.mdの中で一番効くのが「心得」。

## 心得
- 雑な指示は雑な事故を呼ぶ
- 承認ゲートをスキップしない
- 集計値が合っていても詳細データは元データと照合する
  → AIが「加工・集約」を挟んだ数値はハルシネーションしやすい

心得はルールではなく判断の指針。「こうしろ」ではなく「こう考えろ」を書く。

実際にあった事故から生まれた心得:

  • 「集計値が合っていても詳細を確認」→ AIが商品レベルで粗利率を+5pt水増しした実績から
  • 「承認ゲートをスキップしない」→ CCが勝手にデプロイした事故から

心得は事故の教訓集。 先に書くのではなく、痛い目を見てから追加していく。


テンプレート

最小構成のテンプレートを置いておく。コピーして使える。

# プロジェクト名 CLAUDE.md

## ゴール

(1行でこのリポジトリの目的を書く)

## フォルダ構成

| パス | 説明 |
|------|------|
| `src/` | ソースコード |
| `docs/` | ドキュメント |
| `tests/` | テスト |

## スキル一覧

| スキル | やること |
|--------|----------|
| (使うスキルを列挙) | |

## コマンド

```bash
# テスト
npm test

# 開発サーバー
npm run dev

禁止操作

  • rm -rf / git push --force / sudo
  • (プロジェクト固有の禁止事項)

環境変数

| 変数名 | 用途 | |--------|------| | DATABASE_URL | DB接続 |


最終更新: YYYY-MM-DD


---

## FAQ

### Q. CLAUDE.mdとREADME.mdの違いは?

READMEは人間向け、CLAUDE.mdはAI向け。READMEにはプロジェクトの概要・セットアップ手順を書く。CLAUDE.mdにはAIが作業するために必要な情報(スキル一覧・禁止操作・フォルダ構成)を書く。

### Q. .claude/ ディレクトリは何?

Claude Codeの設定ディレクトリ。スキル定義(`.claude/skills/`)、サブエージェント(`.claude/agents/`)、設定(`.claude/config/`)を格納する。CLAUDE.mdはこのディレクトリの「目次」として機能する。

### Q. チーム開発でも使える?

使える。CLAUDE.mdをリポジトリにコミットすれば、チーム全員が同じAI設定で作業できる。個人設定は `.claude/settings.local.json` に分離する。

### Q. どのくらいの頻度で更新すべき?

スキルの追加・削除、フォルダ構成の変更、重大な事故があったとき。目安は月1〜2回。最終更新日を書いておくと鮮度を判断しやすい。

---

## 次に読む記事

- [AI駆動開発 完全ガイド](/articles/ai-driven-development-guide) — 全体像に戻る
- [40スキル作って毎日使うのは5つだけだった](/articles/five-skills-daily) — スキルの詳細
- [AI受託開発 1人で回す案件管理術](/articles/solo-ai-project-management) — フォルダ構造の実践

関連記事