mcpField
S
skill-cleaner

skill-cleaner

github.com/steipeteエージェントワークフロー7.4k596 回インストール1 週間前に更新
リポジトリ

skill-cleaner について

Skill の一覧、プロンプト予算への影響、重複、最近の利用状況を、指定したルートやログから調べる Node.js 分析ツールです。レポートで整理を提案し、依頼があるまで編集は行いません。

主な機能

  1. 01Skill のプロンプト予算使用量を推定
  2. 02重複および類似 Skill の検出
  3. 03ログから未使用候補を特定
  4. 04Skill ルートと無効状態を監査
  5. 05変更せずに整理レポートを生成

活用シーン

  1. 01プロンプト予算に合わせて Skill の説明を短縮
  2. 02リポジトリ間の重複 Skill を比較
  3. 03有効・無効な Skill ルートを確認
  4. 04保持または削除する Skill を選定

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/steipete/agent-scripts --skill skill-cleaner

インストール後、Claude Code で/skill-cleanerを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

agents/
openai.yaml
scripts/
skill-cleaner.test.ts
skill-cleaner.ts

詳細

スキルクリーナー

スキルプロンプトの予算を削減する場合、重複したスキルを見つける場合、有効/無効なスキルのルートを監査する場合、または削除するスキル/プラグインを決める場合に使用します。

ワークフロー

  1. このスキルのディレクトリまたはリポジトリのルートからアナライザーを実行します。
node --experimental-strip-types skills/skill-cleaner/scripts/skill-cleaner.ts --months 3

便利なバリエーション:

node --experimental-strip-types skills/skill-cleaner/scripts/skill-cleaner.ts --no-logs
node --experimental-strip-types skills/skill-cleaner/scripts/skill-cleaner.ts --no-live --no-logs
node --experimental-strip-types skills/skill-cleaner/scripts/skill-cleaner.ts --months 6 --max-log-mb 800 --deep-logs
node --experimental-strip-types skills/skill-cleaner/scripts/skill-cleaner.ts --context-tokens 272000 --budget-percent 2 --no-logs
node --experimental-strip-types skills/skill-cleaner/scripts/skill-cleaner.ts --root ~/Dropbox/boxd/skills --no-logs
node --experimental-strip-types skills/skill-cleaner/scripts/skill-cleaner.ts --root ~/.agents/skills --root-only --no-logs
  1. 次の順番でレポートを読みます。
  • Skill Budget:現在の Codex インベントリ、2% の予算、予算に対する使用量、説明文全体による圧迫度。
  • Description candidates:文法を緩めることでプロンプトの予算を節約できる、長い説明文。
  • Duplicates:Codex、プラグインキャッシュ、リポジトリ内の同階層、個人のスキルルートにある、同じスキル名または非常によく似た説明文/本文。
  • Unused candidates:最近の Codex/OpenClaw ログで、ユーザーが言及していない、または実際に SKILL.md を読み込んでいないスキル。
  • Root summary:スキルの配置元と、設定で無効とマークされているかどうか。
  1. 削除または編集する前に:
  • 残すコピーが存在し、読み込まれていることを確認します。
  • Codex の組み込みスキルで対応できる場合は、リポジトリ内または agent-scripts 内の重複を優先的に削除します。
  • リポジトリのポリシーや実運用に関する内容を含む、リポジトリ内の OpenClaw メンテナー用スキルは残します。
  • 説明文では、トリガーとなる名詞(製品、ツール、アクション、対象物)を維持します。

アナライザーに関する補足

  • デフォルトでは、codex debug prompt-input によって、モデルに表示されるスキルの正確な一覧、順序、名前、エイリアス化されたパスを取得します。--no-live を指定すると、より広範なファイルシステムのフォールバックが強制されます。
  • 重複、無効化、アーカイブ済みキャッシュの診断には、引き続き広範なファイルシステムのスキャンを使用します。ただし、読み込み済みのインベントリとしては扱いません。
  • スクリプトは、Codex でモデルに表示される行の形式を模倣します:- name: description (file: path)。
  • Codex に準じたフロントマターのルールを適用します。YAML フロントマターのみを対象とし、親ディレクトリ名をデフォルトの名前として使用し、name と description を単一行に整形します。
  • codex core-skills/src/render.rs に従い、未加工の context_window の 2%、トークンコストは ceil(utf8_bytes / 4) として計算し、説明文全体 → 説明文を均等に切り詰める → 最低限の行を省略、の順に処理します。エイリアステーブルの行コストも含まれます。
  • ~/.codex/models_cache.json から GPT-5.5 の context_window を読み取ります。取得できない場合は、272,000 トークンと 2% を使用します。
  • デフォルトでは、通常の Codex/プラグイン/リポジトリのスキルルートのみをスキャンします。Dropbox のアーカイブなどの追加フォルダーは、--root <path> を指定した場合のみ含まれます。
  • --root-only には、少なくとも 1 つの --root <path> が必要です。現在の Codex インベントリをスキップし、指定されたルートのみをスキャンします。
  • ルートの重複は実体パスで排除されるため、~/.codex/skills/agent-scripts -> ~/Projects/agent-scripts/skills のようなシンボリックリンクのルートによって、誤った重複が発生することはありません。
  • 重複名については、説明文/本文の類似度を報告し、本文がほぼ同一のコピーである場合に限って削除候補を提案します。残す優先順位のデフォルトは、Codex システムの直接組み込みスキル、Codex の直接スキル、プラグインスキル、個人/リポジトリ内のコピーの順です。
  • デフォルトでは、~/.codex/history.jsonl と最近の ~/.codex/sessions/**/*.jsonl をスキャンします。アーカイブ済みセッションや一般的な OpenClaw/Clawd のログフォルダーも対象にするには、--deep-logs を追加します。
  • 使用状況の証拠はヒューリスティックです。ユーザーによる $skill/use skill の言及、およびツール呼び出しの引数で確認されたパスを使用します。

出力ポリシー

  • まず提案を行い、ユーザーに依頼された場合にのみ編集します。
  • クリーンアップの適用を依頼された場合は、説明文、削除、設定による無効化に分けて、小規模なコミットを作成します。
  • 無視対象または未追跡のスキルディレクトリは、削除先を明示するか、破棄して問題ないことを確認せずに削除しないでください。

コメント