CLAUDE.md 設計完全ガイド — Claude Codeの生産性を爆上げする階層設計とワークフロー構築術【2026年最新】

元記事を読む
キュレーターコメント

「前と同じ指示を出したのに、また違う書き方をされた」という経験をしたClaude Codeユーザーに刺さる実践記事。サブエージェント設計の失敗談と学びが具体的で、すぐに自分の設定に反映できる内容だ。

概要

Claude Codeを使い始めて最初の数週間、「これは革命だ」と感じる人は多いはずだ。自然言語でコードを書いてもらえる、テストも走らせてくれる、リファクタリングまでやってくれる。だが1〜2ヶ月も経つと、こんな不満が出てくる。「前と同じ指示を出したのに、また違うスタイルで書いてくる」「プロジェクトのルールを毎回説明するのが面倒」。この壁を突破するカギが CLAUDE.md の設計 だ。今回は、本業・副業・個人開発を並行させながらClaude Codeを日常業務のパートナーとして使い込んでいるエンジニアが実際に運用する設計と、それを軸にしたワークフローを紹介する。

CLAUDE.mdの階層構造を理解する

Claude Codeは複数の CLAUDE.md を階層的に読み込む。どこに何を書くかの設計が、まず第一歩だ。

~/.claude/CLAUDE.md              ← グローバル設定(全プロジェクト共通)
<project>/.claude/rules/*.md     ← プロジェクトルール(条件付き適用)
<project>/CLAUDE.md              ← プロジェクト固有設定

公式の優先順位は Enterprise policy → Project memory → User memory の順。グローバル設定には「自分の仕事の進め方」だけを書き、プロジェクト固有情報(ディレクトリ構造・ビルドコマンド等)を混ぜてはいけない。全プロジェクトに影響してしまうからだ。

グローバル設定の実例(~/.claude/CLAUDE.md):

# グローバル設定

## 基本情報
- 結論ファースト。挨拶・前置き・段階報告は不要
- 敬語(です/ます体)で統一

## 行動原則
### 進め方
- 3ステップ以上のタスクは必ずPlanモードで開始する
- リサーチ・調査はサブエージェントに任せる
- サブエージェント1つにつき1タスク

### コンテキスト圧迫時の行動規範(焦ったら止まれ)
- コードを読まずに書かない
- 検証を省略しない
- 中途半端に終わらせるなら止まる
- 焦りを自覚したら宣言する

「焦ったら止まれ」セクションは特に重要だ。コンテキストが残り少なくなるとClaude Codeはショートカットを取りがちになる。このルールを明文化しておくことで「コンテキストが残り少ないため、ここで区切ります」と正直に宣言してくれるようになる。

プロジェクト設定:スキル発火条件の設計

プロジェクト固有の CLAUDE.md では、ディレクトリ構造だけでなく「トリガーワードと対応スキルのマッピング」を定義するのがポイントだ。

## ワークフロー
### スキル発火条件
| トリガーワード | 発動スキル | 動作 |
|--------------|-----------|------|
| 「おはよう」 | /daily-schedule | 今日の工程表を作成 |
| 「調べて」 | /deep-research | リサーチチーム起動 |
| 「記事を書いて」 | /write-article | 記事執筆チーム起動 |
| 「覚えておいて」 | /agent-memory | メモリに保存 |

「おはよう」と打つだけでGoogle Calendar・GitHub Issueを取得し、タスクを「緊急度 × 重要度 × 認知負荷」で分類、15分刻みの工程表を自動生成する。これが実際に動いているとなると、かなり強力だ。

サブエージェント設計:1エージェント1タスクの原則

.claude/agents/*.md にMarkdownファイルとして定義するサブエージェント。最大の失敗パターンは「1エージェントに複数の役割を持たせること」 だ。リサーチと分析を同じエージェントにやらせると、どちらも浅くなる。

リサーチチームの構成例(/deep-research スキル):

  • Phase 1(並列): Web調査エージェント / 技術深掘りエージェント / 批判的分析エージェント
  • Phase 2: シンセサイザー(統合・構造化)
  • Phase 3: レビュアー(品質チェック・差し戻し可能)
  • Phase 4: レポートライター → output/research/ に保存

並列実行することで多角的な視点が得られ、レビュアーが差し戻せるゲートを設けることで品質が担保される。レビュー工程を省略すると「構成が甘いまま執筆に入る」という手戻りが多発する——これは実際の失敗から学んだ教訓だ。

AIメモリの構造化:セッションをまたいだ知識の蓄積

プロジェクト内に独自メモリシステムを構築するのも効果的だ。

00_context/memories/
├── preferences.md              # 文体の好み、ツールの使い方
├── decisions.md                # 意思決定の記録(背景・決定・根拠)
├── context-log.md              # 進行中プロジェクトの状況
└── case-judgment-framework.md  # 判断パターン・基準

「覚えておいて」と伝えると /agent-memory スキルが起動し、内容を自動分類して適切なファイルに保存する。重複があればスキップ、矛盾があれば確認を求める仕組みも組み込める。なお、サブエージェントに memory: user を設定すれば ~/.claude/agent-memory/<エージェント名>/ に専用メモリが保存され、セッションをまたいで知識が蓄積される。

設計原則まとめ

試行錯誤から見つかった原則を一覧で整理する。

原則説明
階層を分けるグローバル・プロジェクト・ルールの3層で情報を配置
CLAUDE.mdは意思決定情報に絞るコーディング規約などはLinterに委譲
スキル発火条件を明示するトリガーワードと対応スキルをテーブルで定義
1エージェント1タスク複数の役割を持たせると出力が散漫になる
レビュー工程を必ず入れる差し戻し可能なゲートを設ける
コンテキスト管理を明文化する残量が少ないときの行動規範を書く

CLAUDE.mdは「プロジェクトの説明書」ではなく「AIとの仕事の進め方の設計書」だ。雑に書いている段階から、意図を持って設計する段階に移ると、Claude Codeの振る舞いが目に見えて安定する。元記事には各スキルの実際の定義例やMermaidフローチャートも掲載されており、そのまま参考にできる粒度で公開されている。Claude Codeを本格活用したいエンジニアには必読の内容だ。