Initial commit

This commit is contained in:
Zhongwei Li
2025-11-30 08:51:41 +08:00
commit e19586cfce
31 changed files with 7129 additions and 0 deletions

View File

@@ -0,0 +1,294 @@
---
name: agent-generator
description: ユーザーの責任範囲定義から、Agentのマークダウンファイルを生成する。エージェント作成時、プラグイン要素生成時、またはユーザーがエージェント定義、責任範囲、Agent生成、エージェントドキュメントに言及した際に使用する。
---
# Agent Generator
## 概要
このSkillは、ユーザーが提供する責任範囲や対象フェーズの情報を基に、Agentのマークダウンファイルを生成する。ユーザーとの対話を通じて必要な情報を収集し、標準化されたエージェントのドキュメントを作成する。
## 責任範囲
このSkillは以下の範囲をカバーする:
- 既存エージェントの確認と重複チェック
- ユーザーとの対話による責任範囲情報の収集
- 対象フェーズや役割の明確化
- エージェントファイルの生成
- プラグインアーキテクチャ規約の遵守確認
- markdownlint検証の実施
- ユーザーフィードバックの収集と反映
## ワークフロー
### フェーズ1: 既存エージェント確認
エージェント生成前に、既存のエージェントを確認し、重複を避ける。
**実施内容:**
1. プラグインディレクトリ内の既存エージェントを確認する
2. 作成予定のエージェントと同じ責任範囲のエージェントが存在しないか確認する
3. 作成予定のエージェント内容と重複する記述が他のエージェントに含まれていないか確認する
4. 既存エージェントで代用できる場合はユーザーに提案する
5. 重複が避けられない場合は、どの内容を削除すべきかユーザーと確認する
**確認対象:**
- プラグインディレクトリ内のagentsディレクトリ内のドキュメント
**質問例:**
```markdown
【既存エージェント確認】
プラグインディレクトリ内の既存エージェントを確認しました。
以下のエージェントと責任範囲が重複する可能性があります:
- [既存エージェント名]: [既存エージェントの説明]
作成予定のエージェントから、これらの重複内容を除外してよろしいですか?
```
**既存エージェントで代用可能な場合:**
```markdown
【確認】
作成予定のエージェントと同じ責任範囲のエージェントが既に存在します:
- [既存エージェント名]: [既存エージェントの説明]
既存エージェントで十分な場合は、新規作成は不要です。
それでも新規作成が必要ですか?必要な場合は、既存エージェントとの違いを教えてください。
```
### フェーズ2: 情報収集
ユーザーとの対話を通じて、エージェントに必要な情報を収集する。
**実施内容:**
1. エージェントの目的と役割を確認する
2. 責任範囲内の項目を把握する
3. 責任範囲外の項目を把握する
4. 対象フェーズや役割を明確にする
5. 注意事項として記述すべき内容を確認する
6. 使用可能なツールtoolsを確認する
7. 表示色colorの希望を確認する
8. ユーザーとの対話時は、明確なタイトル付き質問、複数選択肢の提示、推奨オプションの明示を行う
**質問例:**
```markdown
【責任範囲の確認】
このエージェントが担当する責任範囲を確認します。以下のどの範囲ですか?
1. 特定フェーズ全体(要件定義、設計、実装など)【推奨】
2. 特定領域全体(セキュリティ、パフォーマンス、品質管理など)
3. 複数フェーズにまたがる横断的な役割
```
### フェーズ3: コンテンツ生成
収集した情報を基に、エージェントファイルのコンテンツを生成する。
**実施内容:**
1. フロントマターname, description, tools, model, colorを作成する
2. 役割セクションを記述する
3. 責任範囲を定義する(責任範囲内と責任範囲外に分けて記述)
4. 注意事項を記述する
**フロントマターの作成:**
```markdown
---
name: エージェント名(ケバブケース、例: requirements-agent
description: エージェントの簡潔な説明1行、50文字以内
tools: 使用可能な外部ツール(例: "*", "Read", "Write", "Bash"など)
model: inherit通常はinherit、特定のモデルを指定する場合のみ変更
color: 表示色(例: blue, green, redなど
---
```
**役割の記述:**
- エージェントの目的と役割を明確に記述する
- 担当する責任範囲の概要を説明する
- 簡潔に1〜2段落で記述する
**責任範囲の定義:**
責任範囲は「責任範囲内」と「責任範囲外」の2つのサブセクションに分けて記述する。
**責任範囲内:**
- 太字の見出しと説明を組み合わせた形式で記述する
- 「**[項目名]:** [説明]」の形式を使用する
- 3〜5項目程度を記述する
- エージェントが担当する具体的な範囲を明確にする
**責任範囲外:**
- 同様に太字の見出しと説明を組み合わせた形式で記述する
- エージェントが担当しない範囲を明確にする
- 混同しやすい範囲や誤解されやすい点を記述する
- 2〜3項目程度を記述する
**注意事項の記述:**
- エージェントを使用する際の注意点を箇条書きで記述する
- 制約事項、前提条件、重要な指針などを含める
- 3〜5項目程度を記述する
**プラグインアーキテクチャ規約の遵守:**
生成するエージェントは、プラグインアーキテクチャ規約に従う必要がある(独立性の原則、汎用性の原則など)。
**重要な制約:**
- 他のエージェント、スキル、コマンドを参照しない
- 固有名詞を含めない
- 具体的なワークフローは記述しない(それはスキルの役割)
- 責任範囲の定義に集中する
**重複最小化の確認:**
既存エージェントと重複する内容が含まれていないかを確認し、エージェント固有の内容のみを記述する。
### フェーズ4: 検証
生成したコンテンツを検証し、品質を確保する。
**実施内容:**
1. 設計原則の遵守を確認する
2. markdownlint検証を実施する
3. テンプレート構造の整合性を確認する
4. ユーザーにプレビューを提示する
5. フィードバックを収集する
6. 必要に応じて修正する
**プラグインアーキテクチャ規約の確認:**
- プラグインアーキテクチャ規約に従っている
- 既存エージェントと重複する内容が含まれていない
- 他の要素(エージェント、スキル、コマンド)を参照していない
- 固有名詞が使用されていない
- 具体的なワークフローが含まれていない
## アウトプット
このスキルは以下を生成する:
- **エージェントファイル**: エージェントの定義ファイル(ファイル名=エージェント名(ケバブケース))
- フロントマターname, description, tools, model, color
- 役割
- 責任範囲(責任範囲内、責任範囲外)
- 注意事項
## 想定されるエラーと対処法
### エラー1: 責任範囲が曖昧
**検出例:**
```markdown
このエージェントは、いろいろな作業を担当する
```
**対処法:**
- 具体的な表現を使用する(要件定義フェーズ全体、セキュリティ領域全体など)
- 責任範囲を明確に列挙する
- 「〜に対する責任を持つ」という表現を使用する
### エラー2: 具体的なワークフローが含まれている
**検出例:**
```markdown
## ワークフロー
1. ユーザーから要件をヒアリングする
2. 要件を整理する
3. 要件定義書を作成する
```
**対処法:**
- ワークフローは削除する(それはスキルの役割)
- 責任範囲の定義に集中する
- 「要件定義フェーズ全体に対する責任を持つ」という表現に置き換える
### エラー3: 他の要素を参照している
**検出例:**
```markdown
このエージェントは、requirements-structurer スキルを使用して要件を整理する
```
**対処法:**
- 他の要素への参照を削除する
- 汎用的な表現に置き換える(「要件を整理する責任を持つ」など)
## ベストプラクティス
- 責任範囲は3〜5項目に抑える多すぎると複雑になる
- 具体的なワークフローは記述しない(それはスキルの役割)
- 他の要素(エージェント、スキル、コマンド)を参照しない
- 固有名詞を使用しない
- markdownlint検証は必ず実施する
- ユーザーフィードバックを反映して改善する
## チェックリスト
### 既存エージェント確認完了時
- [ ] プラグインディレクトリ内の既存エージェントを確認した
- [ ] 同じ責任範囲のエージェントが存在しないことを確認した
- [ ] 重複する内容が他のエージェントに含まれていないことを確認した
- [ ] 既存エージェントで代用できない理由が明確である
- [ ] 重複する内容を除外する方針を決定した
### 情報収集完了時
- [ ] エージェントの目的と役割が明確になっている
- [ ] 責任範囲内の項目を把握している
- [ ] 責任範囲外の項目を把握している
- [ ] 対象フェーズや役割が明確になっている
- [ ] 注意事項として記述すべき内容が確認されている
- [ ] 使用可能なツールtoolsが確認されている
### コンテンツ生成完了時
- [ ] フロントマターname, description, tools, model, colorが記述されている
- [ ] 役割が簡潔に記述されている
- [ ] 責任範囲内が明確に定義されている3〜5項目
- [ ] 責任範囲外が明確に定義されている2〜3項目
- [ ] 注意事項が記述されている3〜5項目
- [ ] 太字の見出しと説明の形式が正しく使用されている
- [ ] プラグインアーキテクチャ規約に従っている
- [ ] 既存エージェントと重複する内容が含まれていない
- [ ] 他の要素(エージェント、スキル、コマンド)を参照していない
- [ ] 固有名詞が使用されていない
- [ ] 具体的なワークフローが含まれていない
### 検証完了時
- [ ] プラグインアーキテクチャ規約の遵守を確認した
- [ ] markdownlint検証を実施したエラーなし
- [ ] テンプレート構造の整合性を確認した
- [ ] ユーザーにプレビューを提示した
- [ ] フィードバックを収集した
- [ ] 必要な修正を完了した
### 最終確認
- [ ] エージェントファイルが生成されている
- [ ] すべてのセクションが適切に記述されている
- [ ] プラグインアーキテクチャ規約が遵守されている
- [ ] markdownlint検証に合格している
- [ ] ユーザーの承認を得ている