blueprint-claude-md について
blueprintの成果物や要件、プロジェクト構成をもとに、CLAUDE.mdを作成・更新するClaude Code向けスキルです。チーム共通の指示、個人設定、モジュール型ルールを扱い、既存文書のインポートにも対応します。
主な機能
- 01CLAUDE.mdの作成・更新
- 02既存文書への@imports追加
- 03CLAUDE.local.mdで個人設定を作成
- 04モジュール型.claude/rules/に対応
- 05プロジェクト情報との照合
活用シーン
- 01プロジェクト資料からチーム指示を整備
- 02PRD変更後にCLAUDE.mdを更新
- 03重複内容をインポート参照に置換
- 04個人用プロジェクト設定を分離
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ laurigates/ claude-plugins --skill blueprint-claude-mdインストール後、Claude Code で/blueprint-claude-mdを入力して読み込まれたか確認します。
詳細
ブループリントの成果物、PRD、プロジェクト構成に基づいて、プロジェクトのCLAUDE.mdファイルを生成または更新します。
このスキルを使う場面
| 次の場合にこのスキルを使います… | 次の場合は代替手段を使います… |
|---|---|
| チーム向けの指示を記載するCLAUDE.mdを作成または更新する必要がある | パス固有のルールには/blueprint:rulesを使います |
| 既存のCLAUDE.mdに@importsを追加したい | PRDからルールを作成するには/blueprint:generate-rulesを使います |
| 個人の好みを記載するCLAUDE.local.mdを作成する必要がある | 個々のルールファイルを直接編集します |
| インラインの内容を簡潔な@import構成に変換したい | 現在のメモリー設定を確認するだけの場合 |
CLAUDE.mdと自動メモリー
Claude Codeには、プロジェクトのコンテキストを扱う補完的なシステムが2つあります。CLAUDE.mdにはチームで共有する指示を記載してください。Claudeが独自に学習するパターンは含めません。
| CLAUDE.mdに記載する内容 | 自動メモリー(Claudeが管理)に記載する内容 |
|---|---|
| チームのコーディング標準 | デバッグで得た知見や回避策 |
| ビルド/テスト/Lintコマンド | 個人のワークフロー設定 |
| アーキテクチャ上の決定事項 | 時間をかけて学習したプロジェクト固有のパターン |
| 必須の規約 | ファイル間の関係やナビゲーションのショートカット |
| CI/CDワークフロー | よくある間違いとその修正方法 |
自動メモリーは~/.claude/projects/<project>/memory/に保存され、自動的に管理されます。自動メモリーに関する内容をCLAUDE.mdに重複して記載しないでください。
メモリーの階層(優先度:低 → 高)
- ユーザーレベルのルール:
~/.claude/rules/— すべてのプロジェクトに適用する個人ルール - CLAUDE.md(プロジェクト):チームで共有するプロジェクト指示(gitにコミット)
- CLAUDE.local.md:プロジェクト固有の個人設定(gitignore対象)
- .claude/rules/:モジュール式のパス固有ルール
- 管理ポリシー:組織全体に適用される指示(エンタープライズ、システムパス)
- 自動メモリー:Claude自身のメモ(
~/.claude/projects/<project>/memory/)
@import構文
CLAUDE.mdファイルでは、内容を簡潔に保つため、ほかのMarkdownファイルをインポートできます。
# Project: MyApp
@docs/architecture.md
@docs/conventions.md
@.claude/rules/testing.md
- パスはインポートを記述したファイルからの相対パスです
- 再帰的なインポートに対応しています(最大深度5)
- コードスパンやコードブロック内ではインポートは評価されません
- 外部ファイルを初めてインポートする際は、承認ダイアログが表示されます
内容をCLAUDE.mdに重複して記載するのではなく、既存のドキュメントを参照するために@importを使います。
手順:
-
現在の状態を確認する:
- プロジェクトのルートに既存の
CLAUDE.mdがあるか確認します - 既存の
CLAUDE.local.md(個人設定、gitignore対象)があるか確認します docs/blueprint/manifest.jsonを読み、設定を確認します~/.claude/rules/(ユーザーレベルのルール)を確認しますclaude_md_mode(single、modular、both)を特定します
- プロジェクトのルートに既存の
-
実行する操作を決定する(AskUserQuestionを使います):
{If CLAUDE.md exists:} question: "CLAUDE.md already exists. What would you like to do?" options: - "Update with latest project info" → merge updates - "Regenerate completely" → overwrite (backup first) - "Add missing sections only" → append new content - "Add @imports for existing docs" → replace inline content with imports - "Convert to modular rules" → split into .claude/rules/ - "Create CLAUDE.local.md" → personal preferences (gitignored) - "View current structure" → analyze and display {If CLAUDE.md doesn't exist:} question: "No CLAUDE.md found. How would you like to create it?" options: - "Generate from project analysis" → auto-generate - "Generate from PRDs" → use blueprint PRDs - "Generate with @imports (lean)" → auto-generate using imports for existing docs - "Start with template" → use starter template - "Use modular rules instead" → skip CLAUDE.md, use rules/ -
プロジェクトのコンテキストを収集する:
- プロジェクト構成:言語、フレームワーク、ビルドツールを検出します
- PRD:
docs/prds/*.mdから要件を読み取ります - 作業の概要:現在のフェーズと進捗を確認します
- 既存のルール:
.claude/rules/があれば、その内容を確認します - Gitの履歴:最近のパターンや規約を確認します
- 依存関係:パッケージマネージャーと主要なライブラリを確認します
-
CLAUDE.mdのセクションを生成する:
標準セクション(チームで共有する指示に焦点を当てます):
# Project: {name} ## Overview {Brief project description from PRDs or detection} ## Tech Stack - Language: {detected} - Framework: {detected} - Build: {detected} - Test: {detected} ## Development Workflow ### Getting Started {Setup commands} ### Running Tests {Test commands} ### Building {Build commands} ## Architecture {Key architectural decisions from PRDs — or use @import:} @docs/prds/architecture-prd.md ## Conventions ### Code Style {Detected or from PRDs} ### Commit Messages {Conventional commits if detected} ### Testing Requirements {From PRDs or rules} ## See Also {If modular rules enabled:} - `.claude/rules/` - Detailed rules by domain - `docs/prds/` - Product requirements省略するセクション(これらは自動メモリーが自動的に処理します):
- 「現在の重点事項」 — Claudeはこれを自動メモリーで追跡します
- 「主要なファイル」 — Claudeはファイル間の関係を自動的に学習します
- デバッグのヒント — Claudeはこれらを自動メモリーのトピックファイルに記録します
-
モジュール式ルールモードが「both」の場合:
- CLAUDE.mdは概要として使用します
- 詳細については
.claude/rules/を参照します:## 詳細ルール ドメイン固有のガイドラインについては、`.claude/rules/`を参照してください: - `development.md` - 開発ワークフロー - `testing.md` - テスト要件 - `frontend/` - フロントエンド固有のルール - `backend/` - バックエンド固有のルール
-
モジュール型ルールモードが「modular」の場合:
@import参照を使った最小限の CLAUDE.md を作成します- 詳細な内容を
.claude/rules/に移動します - 簡潔な CLAUDE.md の例:
# Project: {name} ## Overview {One-paragraph description} @docs/prds/main.md ## Development {Build, test, lint commands} ## Rules See `.claude/rules/` for detailed guidelines.
6b. 「Create CLAUDE.local.md」が選択されている場合:
- 個人の設定を記述する
CLAUDE.local.mdをプロジェクトのルートに作成します .gitignoreにまだ記載されていない場合は、CLAUDE.local.mdを追加します- テンプレート:
# Personal Preferences ## My Environment - IDE: {detected or ask} - Terminal: {detected or ask} ## My Workflow Preferences - {Personal conventions not shared with team}
6c. 「Add @imports」が選択されている場合:
- 既存の CLAUDE.md をスキャンし、他のファイルにある内容と重複するセクションを探します
- 重複する内容を
@path/to/source.mdインポートに置き換えます - CLAUDE.md のみに含まれる内容はインラインのまま残します
- 適用前に変更の差分を表示します
-
スマート更新(既存の CLAUDE.md がある場合):
- 既存のセクションを解析します
- 古くなった内容を特定します(PRD および構成と比較)
- セクションごとの更新を提案します:
question: "古くなったセクションが見つかりました。どれを更新しますか?" options: [list of sections] allowMultiSelect: true
-
モジュール型ルールとの同期:
.claude/rules/にルールが存在する場合- 重複する内容を検出します
- 重複の解消方法を提案します:
question: "CLAUDE.md と rules/ の間に重複する内容が見つかりました。どのように解決しますか?" options: - "CLAUDE.md に残し、rules から削除する" - "rules に残し、CLAUDE.md から参照する" - "両方に残す(混乱を招く可能性があります)"
-
マニフェストを更新:
- CLAUDE.md の生成/更新を記録します
- どの PRD が反映されたかを記録します
- タイムスタンプを更新します
-
タスクレジストリを更新:
docs/blueprint/manifest.jsonのタスクレジストリエントリを更新します:jq --arg now "$(date -u +%Y-%m-%dT%H:%M:%SZ)" \ '.task_registry["claude-md"].last_completed_at = $now | .task_registry["claude-md"].last_result = "success" | .task_registry["claude-md"].stats.runs_total = ((.task_registry["claude-md"].stats.runs_total // 0) + 1)' \ docs/blueprint/manifest.json > tmp.json && mv tmp.json docs/blueprint/manifest.json -
レポート:
✅ CLAUDE.md を更新しました! {Created | Updated}: CLAUDE.md {If created:} CLAUDE.local.md (個人設定、gitignore 対象) セクション: - Overview ✅ - Tech Stack ✅ - Development Workflow ✅ - Architecture ✅ - Conventions ✅ 使用した @imports:{count, if any} - @docs/prds/architecture.md - @.claude/rules/testing.md 使用したソース: - PRD:{list} - ルール:{list} - プロジェクトの検出内容:{what was detected} {If modular mode:} 注:詳細なルールは .claude/rules/ にあります CLAUDE.md は概要とクイックリファレンスとして機能します。 注:「Current Focus」と「Key Files」は Claude の 自動メモリで管理されます。CLAUDE.md で管理する必要はありません。 `/blueprint:status` を実行すると、設定全体を確認できます。
CLAUDE.md のベストプラクティス:
- 簡潔に保ちます(理想は 500 行未満)
- チームで共有する指示(標準、コマンド、アーキテクチャ)に重点を置きます
- 内容を重複させず、既存のドキュメントを参照するために
@importを使います - 個人の設定には
CLAUDE.local.mdを使います(自動的に gitignore 対象になります) - パス固有の詳細なルールは
.claude/rules/を参照します - 「Current Focus」、「Key Files」、デバッグのヒントは自動メモリに任せます
- PRD が大幅に変更されたときに更新します
-
次のアクションを選択(AskUserQuestion を使用):
question: "CLAUDE.md を更新しました。次に何をしますか?" options: - label: "ブループリントのステータスを確認(推奨)" description: "設定を確認するため、/blueprint:status を実行します" - label: "モジュール式ルールを管理" description: ".claude/rules/ のルールを追加または編集します" - label: "開発を続ける" description: "次のタスクに取り組むため、/project:continue を実行します" - label: "今回はここまで" description: "終了します — CLAUDE.md は保存されています"選択に応じた操作:
- "ブループリントのステータスを確認" →
/blueprint:statusを実行 - "モジュール式ルールを管理" →
/blueprint:rulesを実行 - "開発を続ける" →
/project:continueを実行 - "今回はここまで" → 終了
- "ブループリントのステータスを確認" →
テンプレートのセクション(プロジェクトの種類に応じてカスタマイズ):
| プロジェクトの種類 | 主なセクション |
|---|---|
| Python | 仮想環境、pytest、型ヒント |
| Node.js | パッケージマネージャー、テストランナー、ビルド |
| Rust | Cargo、clippy、unsafe の使用ルール |
| モノレポ | ワークスペース構成、共有依存関係 |
| API | エンドポイント、認証、エラー処理 |
| フロントエンド | コンポーネント、状態、スタイル |