mcpField
S
skill-organizer

skill-organizer

github.com/massgenエージェントワークフロー1.1k86 回インストール20 週間前に更新
リポジトリ

skill-organizer について

skill-organizerはエージェントのスキル群を調査し、重複するスキルを統合して簡潔なルーティング用レジストリを作成します。スキルが増えてきた環境の整理に使えます。

主な機能

  1. 01インストール済みスキルの一覧化
  2. 02重複・混同しやすいスキルの特定
  3. 03関連スキルの親スキルへの統合
  4. 04簡潔な SKILL_REGISTRY.md の生成
  5. 05組み込みスキルの統合なしでの登録

活用シーン

  1. 01増加したスキル群の整理
  2. 02重複・類似するスキル項目の削減
  3. 03エージェントのプロンプト用ルーティングガイドの作成

インストール

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

$npx skills add https://github.com/massgen/massgen --skill skill-organizer

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

詳細

スキルオーガナイザー

インストール済みのすべてのスキルを読み込み、重複や混同しやすい点を特定し、適切な場合は統合して、エージェントのシステムプロンプトでルーティングガイドとして使える、簡潔な SKILL_REGISTRY.md を作成します。

これが必要な理由

モデルには、スキルを選択できる容量(kappa)があり、その規模は約50~100項目です。それを超えると、選択精度が低下します。ログ分析や手動作成によってスキルが増えるにつれ、スキルライブラリがこのしきい値を超える可能性があります。このスキルは、ライブラリを整理し、ルーティングガイドを簡潔に保ちます。

参考:スキルライブラリによる LLM エージェントのスケーリング

ワークフロー

ステップ1:棚卸し

.agent/skills/ フォルダー内のすべてのスキルディレクトリを一覧表示します。

次に、各スキルの SKILL.md を読み、対象範囲、品質、重複を把握します。 各スキルは、SKILL.md ファイルを含む .agent/skills/ のサブディレクトリにあります。

ステップ2:重複または混同しやすいスキルを特定する

以下を探します。

  • 名前が少し異なるだけで、同じことを行うスキル
  • 対象範囲が大きく重複するスキル(一方が他方の一部である場合など)
  • 複数のセクションを持つ、より幅広い単一のスキルにまとめられるスキル
  • 異なるログ分析セッションから作成された、ほぼ同一のスキル
ステップ3:階層型の親スキルに統合する

重複または関連するスキルのグループごとに、各サブ機能を扱うセクションを含む単一の親スキルを作成します。

  1. より幅広い親スキル名とディレクトリを選びます(例:react-frontend、nodejs-backend、web-testing を別々に置く代わりに web-app-dev を使用する)。
  2. 各サブ機能のセクションに明確なラベルを付けた、包括的な SKILL.md を1つ作成します。エージェントが特定のタスクに必要なセクションだけを読めるよう、各セクションは自己完結させます。
  3. 統合するスキルに含まれるリソース(テンプレート、例、設定)を、親スキルディレクトリ内のサブディレクトリに移動します。
  4. 重複するスキルディレクトリを削除します。

統合する際は、以下の基準でスキルを優先します。

  • より品質の高い指示や例がある
  • 含まれるリソースがより充実している
  • より説明的で汎用的な名前である

目標は、より少数で充実したスキルです。よく書かれた4つのセクションを持つ親スキルのほうが、内容の浅い4つの個別スキルより優れています。

ステップ4:SKILL_REGISTRY.md を生成する

.agent/skills/SKILL_REGISTRY.md を、簡潔なルーティングガイドとして作成します。

# Skill Registry

## <Category> (<count>)

- **skill-name**: What it does in one sentence.
  Use when: <trigger condition — when should the agent read this skill?>
  Sections: <comma-separated list of sections/sub-capabilities within the skill>

- **skill-name**: What it does in one sentence.
  Use when: <trigger condition>

## Recently Added
- **new-skill** (project): Frontmatter description — not yet categorized

レジストリは以下の要件を満たす必要があります。

  • スキルをアルファベット順ではなく、目的や分野ごとにグループ化する
  • 各スキルについて、役割、参照するタイミング、含まれるセクションを記載する
  • 「Use when」の行は重要です。エージェントに SKILL.md 全体を読み込むタイミングを伝えます
  • 該当する場合、「Sections」の行で、スキルに含まれるサブ機能を示します
  • エントリ数を合計50未満に抑える(必要に応じて積極的に統合する)
  • 前回の整理以降に作成されたスキルを記載する「Recently Added」セクションを含める
  • スキルの内容全体を重複して記載しない。選択時のルーティングに必要な情報だけを記載する
ステップ5:報告する

実施内容を要約します。

  • 見つかったスキルの数
  • 統合したスキル(旧名 -> 新しい名前)
  • そのまま残したスキル
  • 最終的なレジストリの構成

制約

  • キーワードマッチング、Jaccard 類似度、ヒューリスティックな分類は使用しないでください。各スキルの役割を理解したうえで判断してください。
  • 積極的に統合してください。重複の多い多数のスキルより、品質の高い少数のスキルのほうが優れています。
  • 統合の際は、含まれるリソース(テンプレート、例、設定)をすべて保持してください。
  • SKILL_REGISTRY.md はドキュメントではなく、ルーティングガイドです。簡潔に保ってください。
  • massgen/skills/ 内のスキル(組み込み)は、統合や削除をせず、レジストリに記載するだけにしてください。

コメント