Files
2025-11-30 08:51:41 +08:00

16 KiB
Raw Permalink Blame History

name, description
name description
responsibility-mapper 作業の責任範囲を整理し、エージェント定義に必要な情報を抽出する。エージェント設計時、責任範囲整理時、またはユーザーが責任範囲、役割分担、責任境界、エージェント構成に言及した際に使用する。

Responsibility Mapper

概要

このSkillは、ユーザーが提供する作業や業務の情報を基に、責任範囲を整理し、エージェント定義に必要な情報を抽出する。ユーザーとの対話を通じて責任の境界を明確にし、適切なエージェント構成を提案する。

責任範囲

このSkillは以下の範囲をカバーする:

  • 作業や業務の責任範囲の収集
  • 責任範囲の分類と整理
  • 責任範囲内・責任範囲外の明確化
  • エージェント候補の特定と分類
  • 推奨エージェント構成の提案
  • エージェント定義情報の作成

ワークフロー

フェーズ1: 責任収集

ユーザーとの対話を通じて、作業や業務の責任範囲に関する情報を収集する。

実施内容:

  1. 対象となる作業や業務を確認する
  2. 作業の目的と範囲を把握する
  3. 担当者や役割を特定する
  4. 責任の境界を確認する
  5. 関連する作業やシステムを把握する

質問例:

【責任範囲の確認】
エージェントに担当させたい責任範囲を教えてください。

1. フェーズ全体(例: 要件定義フェーズ全体、設計フェーズ全体)
2. 領域全体(例: セキュリティ領域全体、品質管理領域全体)
3. 特定の役割(例: レビュー担当、ドキュメント作成担当)
4. その他(具体的に教えてください)

良い例:

責任範囲: データベース設計フェーズ全体
目的: データベーススキーマの設計、正規化、ドキュメント作成を一貫して管理する
担当者: データベースエンジニア、バックエンド開発者
境界:
- 開始: 要件定義が完了し、エンティティの候補が特定された時点
- 終了: テーブル定義書とDDLスクリプトが作成され、レビューが完了した時点
関連:
- 前工程: 要件定義(エンティティ候補の提供)
- 後工程: データベース構築DDLスクリプトの実行

悪い例:

責任範囲: データベース
目的: いろいろやる
担当者: 誰か
境界: よくわからない

フェーズ2: 責任分類

収集した責任範囲を、カテゴリ別に分類し整理する。

実施内容:

  1. 責任範囲をフェーズ別、領域別、役割別に分類する
  2. 責任の粒度を評価する(大きすぎる、適切、小さすぎる)
  3. 責任の重複を確認する
  4. 責任のギャップを特定する
  5. 責任の優先順位を付ける

分類基準:

  • フェーズ別: 開発プロセスの特定フェーズに対する責任(要件定義、設計、実装など)
  • 領域別: 特定の技術領域や品質領域に対する責任(セキュリティ、パフォーマンス、テストなど)
  • 役割別: 特定の役割や作業に対する責任(レビュー、ドキュメント作成、検証など)

良い例:

【責任分類結果】

フェーズ別責任:
- データベース設計フェーズ全体
  - エンティティ定義
  - 正規化
  - ER図作成
  - テーブル定義書作成
  - DDLスクリプト生成

粒度評価: 適切
- 1つのフェーズとして明確な範囲がある
- 作業の開始と終了が明確
- 成果物が定義されている

重複確認:
- 要件定義フェーズとの境界: エンティティ候補の特定は要件定義の責任
- データベース構築フェーズとの境界: DDLスクリプトの実行は構築の責任

優先順位:
1. エンティティ定義(最も重要、後続作業の基礎)
2. 正規化(品質の要)
3. テーブル定義書作成(ドキュメント)
4. ER図作成可視化
5. DDLスクリプト生成自動化

悪い例:

【責任分類結果】

フェーズ: いろいろ
粒度: たぶん良い
重複: 知らない

フェーズ3: 範囲定義

責任範囲内と責任範囲外を明確に定義する。

実施内容:

  1. 責任範囲内の項目を列挙する
  2. 責任範囲外の項目を列挙する
  3. 境界が曖昧な項目を明確にする
  4. 注意事項を整理する
  5. 制約条件を確認する

定義基準:

  • 責任範囲内: エージェントが明確に担当する範囲
    • 具体的で検証可能
    • 開始と終了が明確
    • 成果物が定義されている
  • 責任範囲外: エージェントが担当しない範囲
    • 混同しやすい範囲
    • 他のエージェントや人間の責任
    • 明示的に除外すべき範囲

良い例:

【責任範囲定義】

責任範囲内:

**エンティティ定義:** エンティティの特定、属性の定義、関連の整理を行う
**正規化:** 第1正規形〜第3正規形への変換、正規化ルールの検証を行う
**ER図作成:** エンティティ関連図の生成、レイアウト最適化を行う
**テーブル定義書作成:** テーブル定義、カラム定義、制約定義をドキュメント化する
**DDLスクリプト生成:** データベース製品別のCREATE TABLE文、制約定義を生成する

責任範囲外:

**エンティティ候補の特定:** 要件定義フェーズの責任であり、このエージェントは候補を受け取る側
**DDLスクリプトの実行:** データベース構築フェーズの責任であり、このエージェントはスクリプトを提供する側
**パフォーマンスチューニング:** データベース運用の責任であり、設計フェーズでは考慮するが実施しない

注意事項:

- エンティティ定義は要件定義からの引き継ぎを明確にする
- 正規化は必ずルールに基づいて実施する
- ER図は自動生成を基本とし、手動調整は最小限にする
- テーブル定義書はMarkdown形式で作成する
- DDLスクリプトは対象データベース製品を明示する

悪い例:

【責任範囲定義】

責任範囲内: データベースのこと
責任範囲外: データベース以外のこと

フェーズ4: エージェント分類

定義した責任範囲を基に、エージェント候補を特定し分類する。

実施内容:

  1. 責任範囲からエージェント候補を特定する
  2. エージェントの役割を定義する
  3. エージェントの使用可能なツールを確認する
  4. エージェントの表示色を決定する
  5. エージェント間の依存関係を整理する

分類基準:

  • 1エージェントは1つの明確な責任範囲を持つ
  • エージェントの粒度は適切である(大きすぎず、小さすぎず)
  • エージェント間の境界が明確である
  • エージェントの役割が重複していない

良い例:

【エージェント分類結果】

エージェント候補:

1. database-design-agent
   - 役割: データベース設計フェーズ全体に対する責任を持つ
   - 責任範囲: エンティティ定義、正規化、ER図作成、テーブル定義書作成、DDLスクリプト生成
   - 使用可能なツール: All tools (Read, Write, Bash, Grep, Glob など)
   - 表示色: blue設計フェーズを示す色
   - モデル: inheritデフォルトモデルを使用

   責任範囲内:
   - エンティティ定義: エンティティの特定、属性の定義、関連の整理を行う
   - 正規化: 第1正規形〜第3正規形への変換、正規化ルールの検証を行う
   - ER図作成: エンティティ関連図の生成、レイアウト最適化を行う
   - テーブル定義書作成: テーブル定義、カラム定義、制約定義をドキュメント化する
   - DDLスクリプト生成: データベース製品別のCREATE TABLE文、制約定義を生成する

   責任範囲外:
   - エンティティ候補の特定: 要件定義フェーズの責任
   - DDLスクリプトの実行: データベース構築フェーズの責任
   - パフォーマンスチューニング: データベース運用の責任

   注意事項:
   - エンティティ定義は要件定義からの引き継ぎを明確にする
   - 正規化は必ずルールに基づいて実施する
   - ER図は自動生成を基本とし、手動調整は最小限にする
   - テーブル定義書はMarkdown形式で作成する
   - DDLスクリプトは対象データベース製品を明示する

依存関係:
- 前工程: 要件定義エージェント(エンティティ候補の提供を受ける)
- 後工程: データベース構築エージェントDDLスクリプトを提供する
- 使用するスキル: entity-definition-collector, normalization-processor, er-diagram-generator など

悪い例:

エージェント: データベース担当
役割: データベースのことをやる

フェーズ5: 推奨提示

分類結果を基に、推奨されるエージェント構成をユーザーに提示する。

実施内容:

  1. 推奨されるエージェント構成を提示する
  2. 各エージェントの定義情報をまとめる
  3. エージェント間の関係を図示する
  4. 実装の優先順位を提案する
  5. 次のステップ(エージェントの詳細設計)を案内する

提示形式:

【推奨エージェント構成】

エージェント数: 1個

エージェント1: database-design-agent
- 説明: データベース設計フェーズ全体に対する責任を持つ
- 責任範囲: エンティティ定義、正規化、ER図作成、テーブル定義書作成、DDLスクリプト生成
- 表示色: blue
- 使用可能なツール: All tools

【責任範囲マップ】

database-design-agent の責任範囲:

責任範囲内:
- エンティティ定義
- 正規化
- ER図作成
- テーブル定義書作成
- DDLスクリプト生成

責任範囲外:
- エンティティ候補の特定(要件定義の責任)
- DDLスクリプトの実行データベース構築の責任
- パフォーマンスチューニング(データベース運用の責任)

【エージェント定義情報】

database-design-agent 用のエージェント定義ファイル情報:

フロントマター:
- name: database-design-agent
- description: データベース設計フェーズ全体に対する責任を持つ
- tools: "*"
- model: inherit
- color: blue

役割:
データベース設計フェーズ全体に対する責任を持ち、エンティティ定義から DDL スクリプト生成までを一貫して管理する。要件定義フェーズから引き継いだエンティティ候補を基に、正規化されたテーブル定義を作成し、ER 図とテーブル定義書、DDL スクリプトを生成する。

責任範囲:
(上記の責任範囲内・外をそのまま使用)

注意事項:
- エンティティ定義は要件定義からの引き継ぎを明確にする
- 正規化は必ずルールに基づいて実施する
- ER図は自動生成を基本とし、手動調整は最小限にする
- テーブル定義書はMarkdown形式で作成する
- DDLスクリプトは対象データベース製品を明示する

【実装優先順位】

優先度1必須:
- database-design-agent の作成

【次のステップ】

1. database-design-agent の詳細設計agent-generator スキルを使用)
2. 関連するスキルの設計workflow-analyzer スキルを使用)
3. コマンドの設計command-generator スキルを使用)

良い例:

推奨構成が明確で、エージェント定義情報が詳細に記述されており、次のステップが案内されている。

悪い例:

エージェントを作る

アウトプット

このスキルは以下を生成する:

  • 責任範囲マップ: 作業と責任範囲の対応関係を整理したマッピング
  • 推奨エージェント構成: 責任範囲を実現するために必要なエージェントの推奨案
  • エージェント定義情報: 各エージェントの責任範囲内・外、注意事項などの詳細情報

想定されるエラーと対処法

エラー1: 責任範囲が曖昧

検出例:

責任範囲: データベース全般

対処法:

  • 具体的な作業や成果物を明示する
  • 開始条件と終了条件を明確にする
  • 責任の境界を明示する

エラー2: 責任範囲が大きすぎる

検出例:

責任範囲: システム開発全体

対処法:

  • 責任範囲をフェーズ別、領域別、役割別に分割する
  • 1エージェントは1つの明確な責任範囲を持つようにする
  • 複数のエージェントに分割することを検討する

エラー3: 責任範囲内・外が不明確

検出例:

責任範囲内: いろいろ
責任範囲外: その他

対処法:

  • 具体的な作業や成果物を列挙する
  • 「〜を行う」という動詞で表現する
  • 混同しやすい範囲を明示的に除外する

ベストプラクティス

  • 責任範囲は具体的で検証可能にする
  • 責任の境界を明確にする(開始条件、終了条件)
  • 責任範囲内・外を明示的に定義する
  • エージェントの粒度は適切にする1エージェント1責任
  • 推奨構成は実装の優先順位を明示する
  • エージェント定義情報は詳細に記述する

チェックリスト

責任収集完了時

  • 対象となる作業や業務が確認されている
  • 作業の目的と範囲が把握されている
  • 担当者や役割が特定されている
  • 責任の境界が確認されている
  • 関連する作業やシステムが把握されている

責任分類完了時

  • 責任範囲がフェーズ別、領域別、役割別に分類されている
  • 責任の粒度が評価されている
  • 責任の重複が確認されている
  • 責任のギャップが特定されている
  • 責任の優先順位が付けられている

範囲定義完了時

  • 責任範囲内の項目が列挙されている
  • 責任範囲外の項目が列挙されている
  • 境界が曖昧な項目が明確になっている
  • 注意事項が整理されている
  • 制約条件が確認されている

エージェント分類完了時

  • エージェント候補が特定されている
  • エージェントの役割が定義されている
  • エージェントの使用可能なツールが確認されている
  • エージェントの表示色が決定されている
  • エージェント間の依存関係が整理されている
  • エージェントの粒度が適切である

推奨提示完了時

  • 推奨エージェント構成が明確に提示されている
  • 各エージェントの定義情報がまとめられている
  • エージェント間の関係が図示されている
  • 実装の優先順位が提案されている
  • 次のステップが案内されている
  • ユーザーの承認を得ている

最終確認

  • 責任範囲マップが作成されている
  • 推奨エージェント構成が提示されている
  • エージェント定義情報が作成されている
  • すべてのアウトプットが明確で理解しやすい
  • ユーザーが次のステップに進める状態になっている