agents-analyze について
agents-analyzeは、プラグイン群を調査し、サブエージェントへの委譲機会を見つけるスキルです。プラグインやエージェントの保守担当者向けに、既存の担当範囲を整理し、モデル、ツール権限、委譲の不足を特定します。
主な機能
- 01プラグイン、スキル、既存エージェントの一覧化
- 02出力分離に適した作業の特定
- 03エージェントのモデルとツール権限の確認
- 04委譲の不足と統合機会の分析
- 05新規エージェントや修正の提案
活用シーン
- 01プラグイン群全体のサブエージェント需要の監査
- 02単一プラグインに絞った担当範囲の分析
- 03Opus標準への準拠状況の確認
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ laurigates/ claude-plugins --skill agents-analyzeインストール後、Claude Code で/agents-analyzeを入力して読み込まれたか確認します。
詳細
/agents:analyze
プラグインコレクションを分析し、冗長な出力の分離、制約の適用、動作の特化によってワークフローを改善できるサブエージェントの活用箇所を特定します。
このスキルを使う場面
| このスキルを使う場面… | 代わりに兄弟スキルを使う場面… |
|---|---|
| サブエージェントを活用できる箇所を見つけるため、プラグインコレクション全体を監査する場合(冗長な出力を伴うスキル、モデルの不一致、ツールへの過剰な権限) | 単一のエージェントのフロントマター、ツールリスト、プロンプトの完全性を監査する場合 — agent-patterns-plugin:meta-audit を使います |
| 委譲の不足箇所をマッピングし、新しいエージェントの提案リストを作成する場合 | 提案に基づいて新しいエージェントファイルを作成する場合 — agent-patterns-plugin:custom-agent-definitions を使います |
| すべてのエージェントが Opus で実行されること(常に Opus を使う標準)を確認する場合 | エージェントのフック、権限、または settings.json の接続を設定する場合 — hooks-plugin:hooks-configuration を使います |
単一プラグインのスキルに絞って分析する場合(--focus <plugin>) | 実行時に複数のエージェントを連携させる場合 — agent-patterns-plugin:agent-teams または parallel-agent-dispatch を使います |
エージェント機能の最適化
| コンテキスト | コマンド |
|---|---|
| すべてのプラグインを一覧表示する | find . -maxdepth 1 -type d -name '*-plugin' |
| プラグインごとのスキル数を数える | find <plugin>/skills -name 'SKILL.md' -o -name 'skill.md' | wc -l |
| 既存のエージェントを一覧表示する | find agents-plugin/agents -maxdepth 1 -name '*.md' |
| エージェントのモデルフィールドを確認する | grep -r '^model:' agents-plugin/agents/ |
| エージェントの allowed-tools を確認する | grep -r '^allowed-tools:' agents-plugin/agents/ |
| スキルのツール権限を確認する | grep -r '^allowed-tools:' */skills/*/SKILL.md |
コンテキスト
- プラグインディレクトリ:!
find . -maxdepth 1 -type d -name '*-plugin' - 既存のエージェント:!
find . -path '*/agents-plugin/agents/*' -maxdepth 3 -name '*.md' - スキル:!
find . -path '*/skills/*/skill.md' - スキル(ユーザーが呼び出し可能):!
find . -path '*/skills/*/SKILL.md' -not -path './agents-plugin/*'
パラメーター
$1:任意の--focus <plugin-name>。単一のプラグインを詳細に分析します
タスク
プラグインコレクションを体系的に分析し、サブエージェントを活用できる箇所を特定します。
ステップ 1:現状のインベントリ作成
リポジトリをスキャンして、次のインベントリを作成します。
- すべてのプラグインと、それぞれのスキル数/コマンド数を一覧表示する
agents-plugin/agents/にある既存のエージェントを読み、現在の対応状況を把握する--focusが指定されている場合は、そのプラグインだけに分析を絞る
ステップ 2:サブエージェントの活用機会を特定する
各プラグイン(または対象に絞ったプラグイン)について、次の基準に照らしてスキルとコマンドを評価します。
コンテキスト分離(主な価値)
分離によって利点が得られる、冗長な出力を生む操作:
| 指標 | 例 |
|---|---|
| ビルドツール | docker build、cargo build、webpack、tsc |
| インフラ運用 | terraform plan/apply、kubectl describe |
| テストランナー | テストスイート全体の出力、カバレッジレポート |
| プロファイリングツール | フレームグラフ、ベンチマーク結果 |
| セキュリティスキャナー | 脆弱性レポート、監査出力 |
| ログ分析 | アプリケーションログ、システムログ |
| パッケージマネージャー | 依存関係ツリー、監査結果 |
制約の適用
特定のツールに限定すべき操作:
| 制約 | 理由 |
|---|---|
| 読み取り専用の分析 | セキュリティ監査、コードレビュー — 書き込み不可 |
| ネットワークなし | 純粋なコード分析タスク |
| bash の制限 | 任意のコマンドを実行すべきではないタスク |
モデル:常に Opus
すべてのプラグインエージェントは model: opus で実行されます。サブエージェントの出力はツールの結果としてメインループに戻るため、性能の低い委任先を使うと、その後のすべての処理の品質が気づかないうちに低下します。また、Opus-low は品質とトークン数の両方で Sonnet-high を上回ります。そのため、コストを調整する手段は model ではなく effort(セッション設定)です。機械的な処理を行うエージェントも Opus を使い続け、モデルを格下げするのではなく effort を下げます。
| 監査結果 | 推奨事項 |
|---|---|
エージェントファイルで model: opus を宣言している | OK — 変更不要 |
エージェントファイルで sonnet / haiku / opus 以外のモデルを宣言している | フラグを立てる — model: opus を推奨し、機械的な処理を行うエージェントは代わりに effort を下げるよう記載する |
エージェントファイルで model: を省略している | フラグを立てる — エージェントには model: opus の明示が必要 |
Opus 以外が認められている唯一のサブエージェントは agent-patterns-plugin:cold-read-gate の haiku リーダーです。これはエージェントファイルではなく、スキル内に記述された Agent(model: haiku) のディスパッチ(測定器)なので、例外となる */agents/*.md はありません。scripts/check-agent-model.sh のリントでこれを適用します。.claude/rules/agent-development.md の「エージェントのモデル選択」を参照してください。
ステップ 3:ギャップ分析
特定した機会と既存のエージェントを比較します。
- 不足しているエージェント:対応するエージェントがないスキル
- Opus 以外のエージェント:
model: opus(Opus 常用基準)以外のモデルを使用するエージェントファイル - ツールの過剰な権限:不要なツールを持つエージェント
- 統合の機会:統合できる可能性のある複数のエージェント
- 委任のマッピング:
/delegateが存在しないエージェントを参照していないか確認する
ステップ 4:推奨事項の作成
新しいエージェントを推奨する場合は、それぞれについて以下を指定します。
### Proposed: <agent-name>
- **Model**: opus (always; tune `effort` down for mechanical agents, never the model)
- **Covers plugins**: <list>
- **Context value**: <what verbose output it isolates>
- **Tools**: <minimal set>
- **Constraint**: <read-only, no-network, etc.>
- **Priority**: HIGH | MEDIUM | LOW
- **Rationale**: <why this is better than inline execution>
既存のエージェントのモデル/ツールを修正する場合:
### Fix: <agent-name>
- **Current model**: <non-opus> → **Recommended**: opus (then dial `effort` down if mechanical)
- **Reason**: <why the change improves things — e.g. restores the always-Opus standard>
ステップ 5:実装の確認
新しいエージェントを推奨する場合は、以下を確認します。
- エージェント名が既存のものと重複していない
- エージェントが
/delegateコマンドで参照されるギャップを埋めている - モデルが
opusである(Opus 常用基準。コスト調整にはモデルではなくeffortを使う) - ツールセットが最小限である(最小権限の原則)
- エージェントの「行うこと/行わないこと」の境界が明確である
出力形式
## Sub-Agent Analysis Report
**Scope**: [All plugins | focused plugin name]
**Date**: [today]
**Plugins analyzed**: N
**Existing agents**: N
**Skills without agent coverage**: N
### Current Coverage Map
| Domain | Agent | Skills Covered | Gaps |
|--------|-------|----------------|------|
| ... | ... | ... | ... |
### Recommended New Agents
[Proposals from Step 4]
### Recommended Fixes
[Model/tool corrections from Step 4]
### Delegation Mapping Updates
[Any updates needed for /delegate command's agent reference table]
### Priority Summary
| Priority | Count | Top Recommendation |
|----------|-------|-------------------|
| HIGH | N | ... |
| MEDIUM | N | ... |
| LOW | N | ... |
後続アクション
分析結果を提示した後:
- 推奨事項を実装するかどうかユーザーに尋ねます
- 実装する場合は、
agents-plugin/agents/にある既存のパターンに従ってエージェントファイルを作成します - 新しいエージェントを
agents-plugin/README.mdに追加します - 必要に応じて、
/delegateコマンドのエージェント参照テーブルを更新します