optimise-claude について
Optimise Claudeは、CLAUDE.md、SKILL.md、AGENTS.mdなどのAI向け指示ファイルを監査・整理するスキルです。リポジトリのメンテナーが重複を減らし、構成を整え、分野固有の指示をスキルに移すのに役立ちます。
主な機能
- 01指示ファイルと行数の一覧化
- 02CLAUDE.mdの有用な指示の監査
- 03SKILL.mdのトークン使用量の削減
- 04フロントマターとセクション構成の確認
- 05スキルの重複と長大なAGENTS.mdの検出
活用シーン
- 01長いCLAUDE.mdの整理
- 02目標行数を超えるSKILL.mdの改修
- 03複数スキル間の指示の重複解消
- 04大きなAGENTS.mdの記述をスキルに抽出
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ ralphcrisostomo/ nuxt-development-skills --skill optimise-claudeインストール後、Claude Code で/optimise-claudeを入力して読み込まれたか確認します。
同梱ファイルREADME.md
詳細
Claude を最適化する
AI 指示ファイルのサイズ、関連性、構成を監査します。CLAUDE.md は毎回のセッションで読み込まれるため、ファイルが肥大化すると、Claude が実際の指示を無視する原因になります。SKILL.md の各行は、呼び出しのたびにトークンを消費します。どちらも簡潔に保つことで、レイテンシー、コスト、指示に従えない問題を減らせます。
対象範囲
すべての操作はプロジェクトルート($PWD)を対象とします。リポジトリ外のファイルは変更しないでください。
使用するタイミング
- CLAUDE.md が長く、Claude がルールを無視したり、すでに記載されている内容について質問したりする場合
- SKILL.md ファイルが約120行を超えている場合
- フロントマターまたはセクションの順序が標準形式ではない場合
- 複数のスキルに重複した内容がある場合
- AGENTS.md に30行を超えるインラインの指示ブロックがあり、スキルにすべき場合
ワークフロー
各フェーズを順番に実行します。該当しないフェーズはスキップしてください。
フェーズ1 — 棚卸しと優先度付け
- すべての CLAUDE.md(ルート、親ディレクトリ、子ディレクトリ)、
.agents/skills/配下の SKILL.md、および AGENTS.md を列挙します - ファイル、行数、フロントマターの有無(はい/いいえ)、標準セクションの有無(はい/いいえ)を記録します
- ファイルの種類ごとに違反項目を確認します(以下の基準を参照)
- 行数の降順で並べた優先度付けテーブルを出力します
| File | Lines | Type | Violations |
|------|------:|------|------------|
フェーズ2 — CLAUDE.md の監査
各 CLAUDE.md について、行ごとに次の判断基準を適用します。「これを削除すると、Claude は間違いを犯すか?」 そうでなければ削除します。
残すもの:
- Claude が推測できない Bash コマンド
- デフォルトと異なるコードスタイルのルール
- テストの実行方法と推奨するテストランナー
- リポジトリの慣例(ブランチ命名、PR の規則)
- プロジェクト固有のアーキテクチャ上の決定
- 開発環境固有の注意点(必須の環境変数)
- よくある落とし穴や、気づきにくい挙動
削除するもの:
- コードを読めば Claude が把握できる内容
- Claude がすでに知っている標準的な言語の規約
- 詳細な API ドキュメント(代わりにリンクします)
- 頻繁に変わる情報
- 長い説明やチュートリアル
- ファイルごとのコードベースの説明
- 「きれいなコードを書く」といった自明の実践事項
再構成するもの:
- ドメイン固有のワークフローや、必要に応じて参照する知識をスキル(SKILL.md)に移します
- 論理的なセクションには
@path/to/import構文を使い、大きな CLAUDE.md を分割します - 強調表現(
IMPORTANT、YOU MUST)は、Claude が繰り返し違反するルールに限って控えめに使います - 例外が一切ない重要なルールは、代わりにフックへの変換を提案します
フェーズ3 — SKILL.md のトークン使用量を削減
確認対象となった各スキルについて:
- 説明文を命令形の箇条書きに簡潔化します
- 冗長な例を最小限のコードフェンスにまとめます
- 親の AGENTS.md または CLAUDE.md で説明済みの重複する説明を削除します
- リスト項目間の空行を削除します
- 120行以下を目標とします。それでも超える場合は、明確な参照先を示したうえで詳細を
references/ファイルに移します - 複数のドメインを扱うスキルは、用途別の参照ファイルに分割し、関連するものだけを読み込みます
フェーズ4 — 構成とフロントマターを修正
- YAML フロントマター:
nameをディレクトリ名と一致させます(ケバブケース)。descriptionは "Use when" で始めます - セクションの順序:H1 タイトル → 使用するタイミング → ルール/指示 → クイックリファレンス → 検証
- 空のセクションやプレースホルダーのセクションを削除します
- 全体を通して命令形を使います
フェーズ5 — スキル間の重複を解消
- スキル間で繰り返されている内容のブロック(類似する行が5行を超えるもの)を特定します
- 共通の内容をルートの CLAUDE.md、AGENTS.md、または共有スキルに移します
- 重複箇所を「
<skill-name>を参照してください」のような1行の参照に置き換えます - スキルごとにトリガーが異なるものとなるよう、重複している
descriptionフィールドを書き換えます
フェーズ6 — 肥大化した AGENTS.md ブロックを抽出
- AGENTS.md 内で、30行を超えるインラインの指示ブロックを確認します
.agents/skills/<name>/SKILL.mdに新しいスキルを作成します- 元のブロックを、簡潔な参照とクイックリファレンスに置き換えます
- スキルの同期スクリプトがある場合は実行します
出力形式
## Optimisation Report
| File | Before | After | Delta |
|------|-------:|------:|------:|
| ... | 250 | 110 | -140 |
Total files audited: N
Total lines saved: N
Content migrated to skills: N
検証
- すべての CLAUDE.md の行が「削除すると間違いが起きるか?」というテストに合格している
- 120 行を超える SKILL.md はない
- すべての SKILL.md に、
nameとdescriptionを含む有効な YAML フロントマターがある - 2 つのスキル間で、同一の行が 5 行を超えて重複していない
- スキルへの参照がない状態で、30 行を超えるインライン指示ブロックを含む AGENTS.md はない
- ドメイン固有の内容は CLAUDE.md ではなく、スキルに記載されている
コメント
Markdown 対応