CLAUDE.mdを公式ベストプラクティスに基づいて分析・最適化するスキル。内容を5カテゴリ(KEEP/RULES/SKILLS/HOOKS/REMOVE)に分類し、.claude/rulesへの移行、skillsへの分離、hooksの設定、冗長コンテンツの削除を提案・実行する。ユーザーが「CLAUDE.mdを最適化して」「CLAUDE.mdを圧縮して」「rulesに移行して」「claudemdが長い」「注意資源を節約」などと言ったときに使用する。
Claude Code 公式ドキュメントのベストプラクティスに基づき、CLAUDE.md を最適化するスキル。
根拠となる公式原則:
必ず EnterPlanMode ツールを呼び出してから作業を開始すること。 分析・プラン提示まではPlanモードで行い、ユーザーの承認後に ExitPlanMode で実行に移る。
ユーザーの指示からCLAUDE.mdの場所を判断する:
| ユーザーの意図 | 対象ファイル |
|---|---|
| パスを明示 | 指定されたパスのCLAUDE.md |
| 「このプロジェクトの」「ここの」 | カレントディレクトリの CLAUDE.md |
| 指定なし | カレントディレクトリ → 見つからなければ ~/.claude/CLAUDE.md |
CLAUDE.mdが存在しない場合はユーザーにパスを尋ねる。
合わせて以下も確認する:
.claude/rules/ ディレクトリの存在と既存ファイル.claude/settings.json の存在とhooks設定.claude/skills/ ディレクトリの存在CLAUDE.mdは以下の場所に配置でき、すべてマージして適用される:
| 場所 | 用途 |
|---|---|
~/.claude/CLAUDE.md | ユーザー個人の共通設定(全プロジェクト共通) |
プロジェクトルート CLAUDE.md | プロジェクト全体の設定(チーム共有) |
親ディレクトリの CLAUDE.md | モノレポのルートなど |
子ディレクトリの CLAUDE.md | サブパッケージ固有のルール |
| Enterprise managed policy | 組織の管理ポリシー(settings.json経由) |
矛盾チェック: 複数のCLAUDE.mdが存在する場合、内容が矛盾していないか確認する。矛盾がある場合はユーザーに報告して解消方法を提案する。
CLAUDE.mdの各セクション・各行を以下の 5カテゴリ に分類する:
セッション開始直後から必要で、かつClaudeの行動を変える内容:
.claude/rules/ に移動)特定のファイルパターンでのみ適用すべき指示:
rules/coding-style.mdrules/testing.mdrules/git.mdrules/infra.mdrules/api.md.claude/skills/ に移動)ドメイン知識や低頻度ワークフロー:
.claude/settings.json のhooksに設定)毎回確実に実行すべき検証・フォーマットの指示:
PreToolUse hook(matcher: Bash)PostToolUse hook(matcher: Edit|Write)PostToolUse hook(matcher: Edit|Write)PostToolUse hook(matcher: Edit|Write)以下は書かなくてよい:
@docs/api.md リンクで代替)分析結果をユーザーに提示する:
## CLAUDE.md 最適化プラン
### 現状
- 行数: XXX行(目標: 200行以下)
- 推定トークン数: 約XXXトークン
### 分析結果
| カテゴリ | 件数 | 内容(抜粋) |
|---|---|---|
| KEEP | X件 | Bashコマンド、アーキテクチャ決定、落とし穴 |
| RULES | X件 | コーディング規約→coding-style.md、テスト方針→testing.md |
| SKILLS | X件 | ドメイン知識→skills/domain.md |
| HOOKS | X件 | lint実行→PreToolUse、ビルドチェック→PostToolUse |
| REMOVE | X件 | 一般的ベストプラクティスX項目、冗長な説明X項目 |
### 最適化後の見込み
- CLAUDE.md: XXX行 → XX行(XX%削減)
- 作成される rules ファイル: X個
- 作成される skills ファイル: X個
- 追加される hooks: X個
### 作成ファイル一覧
- `.claude/rules/coding-style.md`(paths: src/**/*.ts)
- `.claude/rules/testing.md`(paths: **/*.test.*)
- `.claude/skills/<skill-name>/SKILL.md`
- `.claude/settings.json`(hooksを追加)
ユーザーに確認を取り、承認を得てから Step 4 に進む。
ユーザーの承認後、以下の順序で実行する:
.claude/rules/ ディレクトリを作成し、各rulesファイルを生成する。
rulesファイルのフォーマット(YAML リスト形式):
---