--- name: agent-sort description: 並行リポジトリ対応のレビューパスを使用して、スキル、コマンド、ルール、フック、エクストラを DAILY と LIBRARY のバケットに分類することで、特定のリポジトリ向けのエビデンスに基づいた ECC インストール計画を構築します。プロジェクトが完全なバンドルをロードする代わりに実際に必要なものに ECC をトリミングする必要がある場合に使用します。 origin: ECC --- # エージェントソート リポジトリにデフォルトのフルインストールではなく、プロジェクト固有の ECC サーフェスが必要な場合にこのスキルを使用します。 目標は「便利そうなもの」を推測することではありません。目標は実際のコードベースからのエビデンスで ECC コンポーネントを分類することです。 ## 使用タイミング - プロジェクトが ECC のサブセットのみを必要とし、フルインストールがノイズが多すぎる場合 - リポジトリスタックが明確だが、誰もスキルを一つずつ手動でキュレーションしたくない場合 - チームが意見ではなく grep エビデンスに基づく繰り返し可能なインストール決定を望む場合 - 常にロードされる毎日のワークフローサーフェスと検索可能なライブラリ/参照サーフェスを分離する必要がある場合 - リポジトリが間違った言語、ルール、またはフックセットにドリフトし、クリーンアップが必要な場合 ## 非交渉ルール - 現在のリポジトリを真実の源として使用し、一般的な好みではない - すべての DAILY 決定は具体的なリポジトリエビデンスを引用すること - LIBRARY は「削除」を意味しない;「デフォルトでロードせずにアクセス可能に保つ」を意味する - 現在のリポジトリが使用できないフック、ルール、スクリプトをインストールしない - ECC ネイティブのサーフェスを優先;2 番目のインストールシステムを導入しない ## 成果物 この順序で成果物を生成する: 1. DAILY インベントリ 2. LIBRARY インベントリ 3. インストール計画 4. 検証レポート 5. プロジェクトがルーターを望む場合はオプションの `skill-library` ルーター ## 分類モデル 2 つのバケットのみを使用する: - `DAILY` - このリポジトリのすべてのセッションでロードすべき - リポジトリの言語、フレームワーク、ワークフロー、またはオペレーターサーフェスに強くマッチ - `LIBRARY` - 保持するのに有用だが、デフォルトでロードする価値はない - 検索、ルータースキル、または選択的な手動使用を通じてアクセス可能に維持すべき ## エビデンスソース 分類を行う前にリポジトリローカルのエビデンスを使用する: - ファイル拡張子 - パッケージマネージャーとロックファイル - フレームワーク設定 - CI とフック設定 - ビルド/テストスクリプト - インポートと依存関係マニフェスト - スタックを明示的に説明するリポジトリドキュメント 有用なコマンド: ```bash rg --files rg -n "typescript|react|next|supabase|django|spring|flutter|swift" cat package.json cat pyproject.toml cat Cargo.toml cat pubspec.yaml cat go.mod ``` ## 並行レビューパス 並行サブエージェントが利用可能な場合、レビューをこれらのパスに分割する: 1. エージェント - `agents/*` を分類 2. スキル - `skills/*` を分類 3. コマンド - `commands/*` を分類 4. ルール - `rules/*` を分類 5. フックとスクリプト - フックサーフェス、MCP ヘルスチェック、ヘルパースクリプト、OS 互換性を分類 6. エクストラ - コンテキスト、例、MCP 設定、テンプレート、ガイダンスドキュメントを分類 サブエージェントが利用できない場合、同じパスを順次実行する。 ## コアワークフロー ### 1. リポジトリを読む 何かを分類する前に実際のスタックを確立する: - 使用中の言語 - 使用中のフレームワーク - 主要なパッケージマネージャー - テストスタック - lint/フォーマットスタック - デプロイ/ランタイムサーフェス - 既に存在するオペレーター統合 ### 2. エビデステーブルを構築する すべての候補サーフェスについて記録する: - コンポーネントパス - コンポーネントタイプ - 提案されたバケット - リポジトリエビデンス - 短い正当化 このフォーマットを使用する: ```text skills/frontend-patterns | skill | DAILY | 84 .tsx files, next.config.ts present | コアフロントエンドスタック skills/django-patterns | skill | LIBRARY | no .py files, no pyproject.toml | このリポジトリではアクティブでない rules/typescript/* | rules | DAILY | package.json + tsconfig.json | アクティブな TS リポジトリ rules/python/* | rules | LIBRARY | zero Python source files | アクセス可能に保つのみ ``` ### 3. DAILY か LIBRARY かを決定する `DAILY` に昇格させる場合: - リポジトリが対応するスタックを明確に使用している - コンポーネントが十分に一般的で、すべてのセッションで役立つ - リポジトリが既に対応するランタイムまたはワークフローに依存している `LIBRARY` に降格させる場合: - コンポーネントがオフスタック - リポジトリが後で必要とするかもしれないが、毎日は必要ない - 即時の関連性なしにコンテキストオーバーヘッドを追加する ### 4. インストール計画を構築する 分類をアクションに変換する: - DAILY スキル -> `.claude/skills/` にインストールまたは保持 - DAILY コマンド -> まだ有用な場合のみ明示的なシムとして保持 - DAILY ルール -> 対応する言語セットのみインストール - DAILY フック/スクリプト -> 互換性のあるもののみ保持 - LIBRARY サーフェス -> 検索または `skill-library` を通じてアクセス可能に保つ リポジトリが既に選択的インストールを使用している場合、別のシステムを作成するのではなくその計画を更新する。 ### 5. オプションのライブラリルーターを作成する プロジェクトが検索可能なライブラリサーフェスを望む場合、作成する: - `.claude/skills/skill-library/SKILL.md` そのルーターは含むべき内容: - DAILY と LIBRARY の短い説明 - グループ化されたトリガーキーワード - ライブラリ参照がある場所 ルーター内にすべてのスキル本体を重複させない。 ### 6. 結果を検証する 計画が適用された後、確認する: - すべての DAILY ファイルが期待される場所に存在する - 古い言語ルールがアクティブなままでない - 互換性のないフックがインストールされていない - 結果のインストールが実際にリポジトリスタックと一致する 以下を含むコンパクトなレポートを返す: - DAILY カウント - LIBRARY カウント - 削除された古いサーフェス - 未解決の質問 ## ハンドオフ 次のステップがインタラクティブなインストールまたは修復の場合、ハンドオフ先: - `configure-ecc` 次のステップが重複のクリーンアップまたはカタログレビューの場合、ハンドオフ先: - `skill-stocktake` 次のステップがより広いコンテキストのトリミングの場合、ハンドオフ先: - `strategic-compact` ## 出力フォーマット この順序で結果を返す: ```text STACK - 言語/フレームワーク/ランタイムのサマリー DAILY - エビデンスを伴う常にロードされるアイテム LIBRARY - エビデンスを伴う検索可能/参照アイテム INSTALL PLAN - インストール、削除、またはルーティングすべきもの VERIFICATION - 実行されたチェックと残っているギャップ ```