プラグイン要素間の依存関係や呼び出し順序を分析する。プラグイン整合性確認時、依存関係検証時、またはユーザーが要素間依存、呼び出し順序、循環依存、アーキテクチャ検証に言及した際に使用する。
Analyzes plugin element dependencies and call sequences to detect circular dependencies and architecture violations. Used when verifying plugin integrity, validating dependencies, or when users mention analyzing element relationships, call order, or architecture validation.
/plugin marketplace add RevTechStudio/rts-plugins/plugin install rts-plugin-generator@rts-pluginsThis skill inherits all available tools. When active, it can use any tool Claude has access to.
このSkillは、プラグイン内の要素(エージェント、スキル、コマンド)間の依存関係や呼び出し順序を分析する。プラグインの整合性を確認し、循環依存やアーキテクチャ違反を検出して、適切な依存関係の構築を支援する。
このSkillは以下の範囲をカバーする:
プラグインディレクトリから全ての要素を収集し、基本情報を抽出する。
実施内容:
収集対象:
agents/[agent-name].mdskills/*/SKILL.mdcommands/[command-name].md抽出情報:
良い例:
【要素収集結果】
プラグイン名: database-design-plugin
プラグインディレクトリ: D:\projects\database-design-plugin
エージェント (1個):
- database-design-agent
- 説明: データベース設計フェーズ全体に対する責任を持つ
- tools: "*"
スキル (7個):
ワークフロースキル:
- entity-definition-collector
- 説明: エンティティ定義を収集する
- normalization-processor
- 説明: 正規化を実施する
- er-diagram-generator
- 説明: ER図を生成する
- table-definition-writer
- 説明: テーブル定義書を作成する
- ddl-script-generator
- 説明: DDLスクリプトを生成する
コンベンションスキル:
- database-naming-conventions
- 説明: データベース命名規則を定義
- normalization-rules
- 説明: 正規化ルールを定義
コマンド (2個):
- design-database
- 説明: データベース設計全体を実行
- generate-schema
- 説明: スキーマ定義のみを生成
悪い例:
【要素収集結果】
何かある
各要素が参照する他の要素を分析し、依存関係を明確にする。
実施内容:
依存関係の検出方法:
良い例:
【依存関係分析結果】
コマンド: design-database
- 使用するエージェント:
- database-design-agent(必須)
- 使用するスキル:
- entity-definition-collector(必須)
- normalization-processor(必須)
- er-diagram-generator(必須)
- table-definition-writer(必須)
- ddl-script-generator(必須)
- database-naming-conventions(必須)
- normalization-rules(必須)
コマンド: generate-schema
- 使用するエージェント:
- database-design-agent(必須)
- 使用するスキル:
- entity-definition-collector(必須)
- normalization-processor(必須)
- database-naming-conventions(必須)
- normalization-rules(必須)
エージェント: database-design-agent
- 依存するスキル: なし
※アーキテクチャ規約に従い、エージェントは直接スキルを参照しない
スキル: entity-definition-collector
- 依存するスキル: なし
※アーキテクチャ規約に従い、スキルは他のスキルを参照しない
スキル: normalization-processor
- 依存するスキル: なし
スキル: er-diagram-generator
- 依存するスキル: なし
スキル: table-definition-writer
- 依存するスキル: なし
スキル: ddl-script-generator
- 依存するスキル: なし
スキル: database-naming-conventions
- 依存するスキル: なし
スキル: normalization-rules
- 依存するスキル: なし
悪い例:
【依存関係分析結果】
いろいろ依存している
コマンドにおけるスキルの呼び出し順序を分析する。
実施内容:
分析基準:
良い例:
【呼び出し順序分析結果】
コマンド: design-database
実行フロー:
1. database-design-agent が entity-definition-collector を使用してエンティティ定義を収集
- 入力: ユーザーからの要求、既存システムの情報
- 出力: エンティティ一覧、属性リスト
- 並列実行: 不可(最初のステップ)
2. database-design-agent が normalization-processor を使用して正規化を実施
- 入力: エンティティ定義(ステップ1の出力)
- 出力: 正規化されたテーブル定義
- 並列実行: 不可(ステップ1に依存)
- 使用する規約: normalization-rules
3. database-design-agent が以下のスキルを並列実行:
- er-diagram-generator: ER図を生成
- 入力: 正規化されたテーブル定義(ステップ2の出力)
- 出力: ER図(Mermaid形式)
- table-definition-writer: テーブル定義書を作成
- 入力: 正規化されたテーブル定義(ステップ2の出力)
- 出力: テーブル定義書(Markdown形式)
- ddl-script-generator: DDLスクリプトを生成
- 入力: 正規化されたテーブル定義(ステップ2の出力)
- 出力: DDLスクリプト
- 並列実行: 可能(全てステップ2の出力を使用、相互依存なし)
妥当性: OK
- 各ステップの入力と出力が明確
- 依存関係に基づいた順序
- 並列実行可能なステップが適切に識別されている
コマンド: generate-schema
実行フロー:
1. database-design-agent が entity-definition-collector を使用してエンティティ定義を収集
2. database-design-agent が normalization-processor を使用して正規化を実施
妥当性: OK
- 最小限のステップのみ実行
- 依存関係が明確
悪い例:
【呼び出し順序分析結果】
順番に実行する
要素間の循環依存を検出し、報告する。
実施内容:
検出方法:
良い例:
【循環依存検出結果】
循環依存: 検出されませんでした
依存関係グラフ:
design-database コマンド
↓
database-design-agent エージェント
↓
entity-definition-collector スキル
normalization-processor スキル
er-diagram-generator スキル
table-definition-writer スキル
ddl-script-generator スキル
database-naming-conventions スキル
normalization-rules スキル
generate-schema コマンド
↓
database-design-agent エージェント
↓
entity-definition-collector スキル
normalization-processor スキル
database-naming-conventions スキル
normalization-rules スキル
トポロジカルソート結果:
1. database-naming-conventions(コンベンション、依存なし)
2. normalization-rules(コンベンション、依存なし)
3. entity-definition-collector(ワークフロー、コンベンションに依存可能)
4. normalization-processor(ワークフロー、コンベンションに依存可能)
5. er-diagram-generator(ワークフロー、依存なし)
6. table-definition-writer(ワークフロー、依存なし)
7. ddl-script-generator(ワークフロー、依存なし)
8. database-design-agent(エージェント、スキルを使用)
9. design-database(コマンド、エージェントとスキルを使用)
10. generate-schema(コマンド、エージェントとスキルを使用)
アーキテクチャ規約遵守: OK
- エージェントは他の要素を参照していない
- スキルは他のスキルを参照していない
- コマンドのみがエージェントとスキルを参照している
悪い例(循環依存が存在する場合):
【循環依存検出結果】
循環依存: 検出されました
循環1:
skill-a → skill-b → skill-c → skill-a
問題: スキルが他のスキルを参照している(アーキテクチャ規約違反)
影響: スキルの独立性が損なわれ、再利用性が低下
解消方法:
- スキル間の参照を削除する
- 共通の処理をコンベンションスキルに分離する
- コマンドで依存関係を管理する
循環2:
command-a → agent-b → command-a
問題: コマンドとエージェントが相互参照している
影響: 無限ループの可能性
解消方法:
- エージェントからコマンドへの参照を削除する
- エージェントはスキルのみを使用するようにする
分析結果をまとめ、改善提案をユーザーに提示する。
実施内容:
提示形式:
【要素関係分析レポート】
プラグイン名: database-design-plugin
分析日時: 2025-11-15
【サマリー】
要素数:
- エージェント: 1個
- スキル: 7個(ワークフロー: 5個、コンベンション: 2個)
- コマンド: 2個
依存関係:
- 総依存数: 14個
- 循環依存: 0個
- アーキテクチャ規約違反: 0個
品質評価: 優良
- 循環依存なし
- アーキテクチャ規約遵守
- 依存関係が明確
【詳細分析結果】
依存関係マップ:
- design-database → database-design-agent, 5つのワークフロースキル, 2つのコンベンションスキル
- generate-schema → database-design-agent, 2つのワークフロースキル, 2つのコンベンションスキル
呼び出し順序:
- design-database: 3ステップ(ステップ3は3つのスキルを並列実行)
- generate-schema: 2ステップ(順次実行)
循環依存: なし
アーキテクチャ規約遵守:
- ✓ エージェントは他の要素を参照していない
- ✓ スキルは他のスキルを参照していない
- ✓ コマンドのみがエージェントとスキルを参照している
- ✓ 依存関係の方向が正しい(コマンド→エージェント→スキル)
【改善提案】
改善点: なし
このプラグインは適切に設計されています。
【推奨事項】
1. 定期的に要素関係を分析し、循環依存が発生していないか確認する
2. 新しい要素を追加する際は、アーキテクチャ規約を遵守する
3. コマンドの実行フローを明確に記述する
4. 並列実行可能なスキルを適切に識別する
【次のステップ】
1. プラグイン全体の品質検証(plugin-validator スキルを使用)
2. プラグインのパッケージング(plugin-packager スキルを使用)
良い例:
分析結果が明確で、問題点、改善提案、推奨事項が示されている。
悪い例:
【要素関係分析レポート】
分析した
問題なし
このスキルは以下を生成する:
検出例:
skill-a → skill-b → skill-a
対処法:
検出例:
エージェントがスキルを直接参照している
スキルが他のスキルを参照している
対処法:
検出例:
実行フロー: スキルを実行する
対処法: