← Back to skills

CURATED FROM PUBLIC GIT

team-builder

並列チームを構成して派遣するためのインタラクティブなエージェント選択ツール

↓ 0★ 0by greatsage_sh
96789caaf905
skillmarket install greatsage_sh/team-builder
Public Git sourcehttps://github.com/affaan-m/ECC.gitcommit 96789caaf90501ff9b55bf1b00f1c28cf3fccbeb
Part of skillsetECC →

About this skill

---
name: team-builder
description: 並列チームを構成して派遣するためのインタラクティブなエージェント選択ツール
origin: community
---

# チームビルダー

オンデマンドでエージェントチームを閲覧・構成するためのインタラクティブメニュー。フラット構成またはドメインサブディレクトリで整理されたエージェントコレクションに対応する。

## 使用場面

* 複数のエージェントロール(markdownファイル)があり、あるタスクにどのエージェントを使うか選択したい場合
* 異なるドメインから(例えば、セキュリティ + SEO + アーキテクチャ)臨時チームを結成したい場合
* 決定する前に利用可能なエージェントを閲覧したい場合

## 前提条件

エージェントファイルはロール、プロンプト(アイデンティティ、ルール、ワークフロー、成果物)を含むmarkdownファイルである必要がある。最初の `# Heading` がエージェント名として使用され、最初の段落が説明として使用される。

フラット構成とサブディレクトリの両方のレイアウトをサポートする:

**サブディレクトリレイアウト** —— ドメインはフォルダー名から推論される:

```
agents/
├── engineering/
│   ├── security-engineer.md
│   └── software-architect.md
├── marketing/
│   └── seo-specialist.md
└── sales/
    └── discovery-coach.md
```

**フラットレイアウト** —— ドメインは共有のファイル名プレフィックスから推論される。2つ以上のファイルが同じプレフィックスを共有する場合、そのプレフィックスはドメインとみなされる。ユニークなプレフィックスを持つファイルは「General」カテゴリーに分類される。注意:アルゴリズムは最初の `-` で分割するため、複数単語のドメイン(例:`product-management`)にはサブディレクトリレイアウトを使用する:

```
agents/
├── engineering-security-engineer.md
├── engineering-software-architect.md
├── marketing-seo-specialist.md
├── marketing-content-strategist.md
├── sales-discovery-coach.md
└── sales-outbound-strategist.md
```

## 設定

エージェントディレクトリは順番に探索され、結果がマージされる:

1. `./agents/**/*.md` + `./agents/*.md` —— プロジェクトローカルのエージェント(両方の深さ)
2. `~/.claude/agents/**/*.md` + `~/.claude/agents/*.md` —— グローバルエージェント(両方の深さ)

すべての場所の結果がマージされ、エージェント名で重複排除される。同名の場合、プロジェクトローカルのエージェントがグローバルエージェントより優先される。ユーザーがカスタムパスを指定した場合、そのパスを代わりに使用する。

## 動作原理

### ステップ 1:利用可能なエージェントを発見する

上記の探索順序を使用してエージェントディレクトリでグローバル検索を実行する。READMEファイルを除外する。見つかった各ファイルに対して:

* **サブディレクトリレイアウト:** 親フォルダー名からドメインを抽出する
* **フラットレイアウト:** すべてのファイル名プレフィックス(最初の `-` より前のテキスト)を収集する。プレフィックスが2つ以上のファイル名に現れる場合のみドメインとして適格(例:`engineering-security-engineer.md` と `engineering-software-architect.md` はどちらも `engineering` で始まる → Engineeringドメイン)。ユニークなプレフィックスを持つファイル(例:`code-reviewer.md`、`tdd-guide.md`)は「General」カテゴリーに分類される
* 最初の `# Heading` からエージェント名を抽出する。見出しが見つからない場合は、ファイル名から名前を導出する(`.md` を除去し、ハイフンをスペースに置換し、タイトルケースに変換)
* 見出しの後の最初の段落から一行のサマリーを抽出する

すべての場所を探索した後にエージェントファイルが見つからない場合、ユーザーに通知する:「エージェントファイルが見つかりませんでした。確認済み:\[探索済みパスのリスト]。期待されるもの:これらのディレクトリ内のmarkdownファイル。」そして停止する。

### ステップ 2:ドメインメニューを表示する

```
利用可能なエージェントドメイン:
1. エンジニアリング — ソフトウェアアーキテクト、セキュリティエンジニア
2. マーケティング — SEOスペシャリスト
3. セールス — ディスカバリーコーチ、アウトバウンドストラテジスト

ドメインを選択するか、特定のエージェントを指定してください(例:「1,3」または「security + seo」):
```

* エージェント数がゼロのドメインはスキップする(空ディレクトリ)
* 各ドメインのエージェント数を表示する

### ステップ 3:選択を処理する

柔軟な入力を受け付ける:

* 数字:「1,3」でEngineeringとSalesのすべてのエージェントを選択
* 名前:「security + seo」で発見されたエージェントに対してファジーマッチング
* 「all from engineering」でそのドメインのすべてのエージェントを選択

5つ以上のエージェントが選択された場合、アルファベット順にリストアップして絞り込みを求める:「Nつのエージェントを選択しました(最大5つ)。どれを保持するか選択するか、アルファベット順の最初の5つを使用する場合は 'first 5' と言ってください。」

選択を確認する:

```
選択済み:セキュリティエンジニア + SEOスペシャリスト
どのようなタスクに取り組む予定ですか?(タスクを説明してください)
```

### ステップ 4:エージェントを並列で起動する

1. 選択された各エージェントのmarkdownファイルを読み取る
2. まだ提供されていない場合は、タスクの説明を求める
3. Agentツールを使用してすべてのエージェントを並列で起動する:
   * `subagent_type: "general-purpose"`
   * `prompt: "{agent file content}\n\nTask: {task description}"`
   * 各エージェントは独立して実行する——エージェント間の通信は不要
4. エージェントが失敗した場合(エラー、タイムアウト、または空の出力)、インラインで失敗を記録し(例:「Security Engineer: failed — \[理由]」)、成功したエージェントの結果の処理を続ける

### ステップ 5:結果を統合する

すべての出力を収集して統一されたレポートを提示する:

* エージェント別にグループ化された結果
* 統合セクションで強調:
  * エージェント間のコンセンサス
  * 提案間の衝突または矛盾
  * 推奨される次のステップ

1つのエージェントのみが選択された場合は、統合セクションをスキップして直接出力を提示する。

## ルール

* **動的発見のみ。** エージェントリストをハードコードしない。ディレクトリの新しいファイルはメニューに自動的に表示される。
* **チームあたり最大5つのエージェント。** 5つを超えると収益逓減とトークン使用量が多くなる。選択時に強制する。
* **並列分散。** すべてのエージェントが同時に実行される——Agentツールの並列呼び出しパターンを使用する。
* **並列Agent呼び出し(TeamCreateではない)。** このスキルは独立した作業の処理に並列Agentツール呼び出しを使用する。エージェントが議論したり互いに回答する必要がある場合のみ、TeamCreate(マルチエージェント会話のためのClaude Codeツール)が必要になる。

## 例

```
ユーザー: team builder

Claude:
利用可能なエージェントドメイン:
1. エンジニアリング (2) — ソフトウェアアーキテクト、セキュリティエンジニア
2. マーケティング (1) — SEOスペシャリスト
3. セールス (4) — ディスカバリーコーチ、アウトバウンドストラテジスト、プロポーザルストラテジスト、セールスエンジニア
4. サポート (1) — エグゼクティブサマリー

ドメインを選択するか、特定のエージェントを指定してください:

ユーザー: security + seo

Claude:
選択済み:セキュリティエンジニア + SEOスペシャリスト
どのようなタスクに取り組む予定ですか?

ユーザー: リリース前に私のNext.jsのeコマースサイトをレビューしてほしい

[2つのエージェントが並列で起動され、それぞれがコードベースに専門知識を適用する]

Claude:
## セキュリティエンジニアの発見事項
- [発見内容...]

## SEOスペシャリストの発見事項
- [発見内容...]

## 統合分析
両エージェントが同意:[...]
衝突点:セキュリティが推奨するCSPがインラインスタイルをブロックし、SEOはインラインのschemaマークアップを必要とする。解決策:[...]
次のステップ:[...]
```