option

team-builder

affaan-m/ECC affaan-m/ECC

Parcourez les profils d'agents disponibles et constituez des équipes ad hoc composées de 5 agents au maximum pour travailler en parallèle sur une tâche, puis synthétisez leurs résultats.

...Développer tout
0
Heure mise à jour 2 octobre 2026

Team Builder

Menu interactif permettant de parcourir et de composer des équipes d’agents à la demande. Fonctionne avec des collections d’agents organisées de manière plate ou dans des sous-répertoires de domaine.

Quand l'utiliser

  • Vous disposez de plusieurs profils d'agents (fichiers Markdown) et souhaitez sélectionner ceux à utiliser pour une tâche
  • Vous souhaitez constituer une équipe ad hoc à partir de différents domaines (par exemple, Sécurité + SEO + Architecture)
  • Vous souhaitez parcourir la liste des agents disponibles avant de prendre une décision

Prérequis

Les fichiers d’agent doivent être des fichiers Markdown contenant une description du profil (identité, règles, workflow, livrables). Le premier # Titre sert de nom d’agent et le premier paragraphe de description.

Les structures à niveau unique et à sous-répertoires sont toutes deux prises en charge :

Structure avec sous-répertoires — le domaine est déduit du nom du dossier :

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

Structure plate — le domaine est déduit à partir des préfixes communs aux noms de fichiers. Un préfixe est considéré comme un domaine dès lors qu’au moins deux fichiers le partagent. Les fichiers dont le préfixe est unique sont classés dans « General ». Remarque : l’algorithme effectue la séparation au premier « - »; les domaines composés de plusieurs mots (par exemple, « product-management ») doivent donc utiliser la structure par sous-répertoires :

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

Configuration

Les agents sont détectés via deux méthodes, puis fusionnés et dédupliqués par nom d’agent :

  1. commande `claude agents ` (principale) — exécutez `claude agents` pour obtenir tous les agents connus de l’interface en ligne de commande, y compris les agents utilisateur, les agents de plug-in (par exemple `everything-claude-code:architect`) et les agents intégrés. Cela couvre automatiquement les installations de la place de marché ECC sans aucune configuration de chemin d’accès.
  2. Recherche de fichiers par motif (solution de secours, pour la lecture du contenu des agents) — les fichiers Markdown des agents sont lus à partir de :
    • ./agents/**/*.md + ./agents/*.md — agents locaux au projet
    • ~/.claude/agents/**/*.md + ~/.claude/agents/*.md — agents utilisateur globaux

En cas de conflit de noms, les sources les plus anciennes ont la priorité : agents utilisateur > agents de plugins > agents intégrés. Un chemin d’accès personnalisé peut être utilisé à la place si l’utilisateur en spécifie un.

Fonctionnement

Étape 1 : découvrir les agents disponibles

Exécutez la commande ` claude agents ` pour obtenir la liste complète des agents. Analysez chaque ligne :

  • Les agents de plug-in sont préfixés par plugin-name: (par exemple, everything-claude-code:security-reviewer). Utilisez la partie après le signe : comme nom d’agent et le nom du plug-in comme domaine.
  • Les agents utilisateur n’ont pas de préfixe. Lisez le fichier Markdown correspondant dans ~/.claude/agents/ ou ./agents/ pour extraire le nom et la description.
  • Les agents intégrés (par exemple, Explore, Plan) sont ignorés, sauf si l’utilisateur demande explicitement à les inclure.

Pour les agents utilisateur chargés à partir de fichiers Markdown :

  • Structure en sous-répertoires : extraire le domaine à partir du nom du dossier parent
  • Structure plate : rassemblez tous les préfixes de noms de fichiers (texte avant le premier « - »). Un préfixe ne peut être considéré comme un domaine que s’il apparaît dans au moins deux noms de fichiers (par exemple, engineering-security-engineer.md et engineering-software-architect.md commencent tous deux par engineering → domaine « Engineering »). Les fichiers comportant des préfixes uniques (par exemple, code-reviewer.md, tdd-guide.md) sont regroupés sous « Général »
  • Extraire le nom de l’agent à partir du premier en-tête #. Si aucun en-tête n’est trouvé, dériver le nom à partir du nom de fichier (supprimer .md, remplacer les tirets par des espaces, mettre en majuscules les premières lettres)
  • Extraire un résumé d’une ligne à partir du premier paragraphe suivant l’en-tête

Si aucun agent n’est trouvé après l’exécution de `claude agents` et la recherche dans les emplacements des fichiers, informer l’utilisateur : « Aucun agent trouvé. Exécutez ` claude agents ` pour vérifier votre configuration. » Puis s’arrêter.

Étape 2 : Présentation du menu des domaines

Domaines d’agents disponibles :
1. Ingénierie — Architecte logiciel, Ingénieur en sécurité
2. Marketing — Spécialiste SEO
3. Ventes — Coach en prospection, Stratège en prospection sortante

Sélectionnez des domaines ou nommez des agents spécifiques (par exemple, « 1,3 » ou « sécurité + seo ») :
  • Ignorez les domaines ne contenant aucun agent (répertoires vides)
  • Afficher le nombre d’agents par domaine

Étape 3 : Traitement de la sélection

Accepter les entrées flexibles :

  • Nombres : « 1,3 » sélectionne tous les agents des domaines Ingénierie et Ventes
  • Noms : « security + seo » effectue une recherche approximative parmi les agents détectés
  • « tous de l'ingénierie » sélectionne tous les agents de ce domaine

Si plus de 5 agents sont sélectionnés, affichez-les par ordre alphabétique et demandez à l'utilisateur d'affiner sa sélection : « Vous avez sélectionné N agents (5 au maximum). Choisissez ceux que vous souhaitez conserver, ou dites « les 5 premiers » pour retenir les cinq premiers par ordre alphabétique. »

Confirmer la sélection :

Sélectionnés : Ingénieur en sécurité + Spécialiste SEO
Sur quoi doivent-ils travailler ? (décrivez la tâche) :

Étape 4 : Lancer les agents en parallèle

  1. Lire le fichier Markdown de chaque agent sélectionné
  2. Demandez la description de la tâche si elle n’a pas déjà été fournie
  3. Lancer tous les agents en parallèle à l'aide de l'outil Agent :
    • subagent_type : « general-purpose »
    • prompt: "{contenu du fichier de l’agent}\n\nTâche : {description de la tâche}"
    • Chaque agent s'exécute de manière indépendante — aucune communication entre agents n'est nécessaire
  4. Si un agent échoue (erreur, délai d'attente dépassé ou sortie vide), signalez l'échec directement dans le code (par exemple : « Ingénieur en sécurité : échec — [raison] ») et poursuivez avec les résultats des agents qui ont réussi

Étape 5 : Synthèse des résultats

Rassemblez toutes les sorties et présentez un rapport unifié :

  • Résultats regroupés par agent
  • Section de synthèse mettant en évidence :
    • les points d’accord entre les agents
    • Les conflits ou tensions entre les recommandations
    • Prochaines étapes recommandées

Si un seul agent a été sélectionné, ignorer la synthèse et présenter directement le résultat.

Règles

  • Découverte dynamique uniquement. Ne jamais coder en dur les listes d’agents. Les nouveaux fichiers du répertoire apparaissent automatiquement dans le menu.
  • Maximum de 5 agents par équipe. Au-delà de 5, les rendements diminuent et l’utilisation des jetons devient excessive. Appliquer cette règle au moment de la sélection.
  • Répartition parallèle. Tous les agents s'exécutent simultanément — utilisez le modèle d'invocation parallèle de l'outil Agent.
  • Appels parallèles à l’outil Agent, et non à TeamCreate. Cette compétence utilise des appels parallèles à l’outil Agent pour un travail indépendant. TeamCreate (un outil Claude Code pour le dialogue multi-agents) n’est nécessaire que lorsque les agents doivent débattre ou se répondre les uns aux autres.

Exemples

Utilisateur : créateur d’équipe

Claude :
Domaines d’agents disponibles :
1. Ingénierie (2) — Architecte logiciel, Ingénieur en sécurité
2. Marketing (1) — Spécialiste SEO
3. Ventes (4) — Coach en prospection, Stratège en prospection, Stratège en propositions commerciales, Ingénieur commercial
4. Assistance (1) — Résumé exécutif

Sélectionnez des domaines ou nommez des agents spécifiques :

Utilisateur : sécurité + référencement

Claude :
Sélectionnés : Ingénieur en sécurité + Spécialiste en référencement
Sur quoi doivent-ils travailler ?

Utilisateur : Examiner mon site e-commerce Next.js avant son lancement

[Les deux agents se lancent en parallèle, chacun appliquant son expertise au code source]

Claude :
## Conclusions de l’ingénieur en sécurité
- [conclusions...]

## Conclusions du spécialiste SEO
- [conclusions...]

## Synthèse
Les deux agents s’accordent sur : [...]
Conflit : le spécialiste en sécurité recommande une politique CSP bloquant les styles en ligne, tandis que le spécialiste en référencement a besoin de balises Schema en ligne. Résolution : [...]
Prochaines étapes : [...]
Voir sur GitHub
---
name: team-builder
description: Browse available agent personas and compose ad-hoc teams of up to 5 agents to work in parallel on a task, then synthesize their results.
---

# Team Builder

Interactive menu for browsing and composing agent teams on demand. Works with flat or domain-subdirectory agent collections.

## When to Use

- You have multiple agent personas (markdown files) and want to pick which ones to use for a task
- You want to compose an ad-hoc team from different domains (e.g., Security + SEO + Architecture)
- You want to browse what agents are available before deciding

## Prerequisites

Agent files must be markdown files containing a persona prompt (identity, rules, workflow, deliverables). The first `# Heading` is used as the agent name and the first paragraph as the description.

Both flat and subdirectory layouts are supported:

**Subdirectory layout** — domain is inferred from the folder name:

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

**Flat layout** — domain inferred from shared filename prefixes. A prefix counts as a domain when 2+ files share it. Files with unique prefixes go to "General". Note: the algorithm splits at the first `-`, so multi-word domains (e.g., `product-management`) should use the subdirectory layout instead:

```
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
```

## Configuration

Agents are discovered via two methods, merged and deduplicated by agent name:

1. **`claude agents` command** (primary) — run `claude agents` to get all agents known to the CLI, including user agents, plugin agents (e.g. `everything-claude-code:architect`), and built-in agents. This automatically covers ECC marketplace installs without any path configuration.
2. **File glob** (fallback, for reading agent content) — agent markdown files are read from:
   - `./agents/**/*.md` + `./agents/*.md` — project-local agents
   - `~/.claude/agents/**/*.md` + `~/.claude/agents/*.md` — global user agents

Earlier sources take precedence when names collide: user agents > plugin agents > built-in agents. A custom path can be used instead if the user specifies one.

## How It Works

### Step 1: Discover Available Agents

Run `claude agents` to get the full agent list. Parse each line:
- **Plugin agents** are prefixed with `plugin-name:` (e.g., `everything-claude-code:security-reviewer`). Use the part after `:` as the agent name and the plugin name as the domain.
- **User agents** have no prefix. Read the corresponding markdown file from `~/.claude/agents/` or `./agents/` to extract the name and description.
- **Built-in agents** (e.g., `Explore`, `Plan`) are skipped unless the user explicitly asks to include them.

For user agents loaded from markdown files:
- **Subdirectory layout:** extract the domain from the parent folder name
- **Flat layout:** collect all filename prefixes (text before the first `-`). A prefix qualifies as a domain only if it appears in 2 or more filenames (e.g., `engineering-security-engineer.md` and `engineering-software-architect.md` both start with `engineering` → Engineering domain). Files with unique prefixes (e.g., `code-reviewer.md`, `tdd-guide.md`) are grouped under "General"
- Extract the agent name from the first `# Heading`. If no heading is found, derive the name from the filename (strip `.md`, replace hyphens with spaces, title-case)
- Extract a one-line summary from the first paragraph after the heading

If no agents are found after running `claude agents` and probing file locations, inform the user: "No agents found. Run `claude agents` to verify your setup." Then stop.

### Step 2: Present Domain Menu

```
Available agent domains:
1. Engineering — Software Architect, Security Engineer
2. Marketing — SEO Specialist
3. Sales — Discovery Coach, Outbound Strategist

Pick domains or name specific agents (e.g., "1,3" or "security + seo"):
```

- Skip domains with zero agents (empty directories)
- Show agent count per domain

### Step 3: Handle Selection

Accept flexible input:
- Numbers: "1,3" selects all agents from Engineering and Sales
- Names: "security + seo" fuzzy-matches against discovered agents
- "all from engineering" selects every agent in that domain

If more than 5 agents are selected, list them alphabetically and ask the user to narrow down: "You selected N agents (max 5). Pick which to keep, or say 'first 5' to use the first five alphabetically."

Confirm selection:
```
Selected: Security Engineer + SEO Specialist
What should they work on? (describe the task):
```

### Step 4: Spawn Agents in Parallel

1. Read each selected agent's markdown file
2. Prompt for the task description if not already provided
3. Spawn all agents in parallel using the Agent tool:
   - `subagent_type: "general-purpose"`
   - `prompt: "{agent file content}\n\nTask: {task description}"`
   - Each agent runs independently — no inter-agent communication needed
4. If an agent fails (error, timeout, or empty output), note the failure inline (e.g., "Security Engineer: failed — [reason]") and continue with results from agents that succeeded

### Step 5: Synthesize Results

Collect all outputs and present a unified report:
- Results grouped by agent
- Synthesis section highlighting:
  - Agreements across agents
  - Conflicts or tensions between recommendations
  - Recommended next steps

If only 1 agent was selected, skip synthesis and present the output directly.

## Rules

- **Dynamic discovery only.** Never hardcode agent lists. New files in the directory auto-appear in the menu.
- **Max 5 agents per team.** More than 5 produces diminishing returns and excessive token usage. Enforce at selection time.
- **Parallel dispatch.** All agents run simultaneously — use the Agent tool's parallel invocation pattern.
- **Parallel Agent calls, not TeamCreate.** This skill uses parallel Agent tool calls for independent work. TeamCreate (a Claude Code tool for multi-agent dialogue) is only needed when agents must debate or respond to each other.

## Examples

```
User: team builder

Claude:
Available agent domains:
1. Engineering (2) — Software Architect, Security Engineer
2. Marketing (1) — SEO Specialist
3. Sales (4) — Discovery Coach, Outbound Strategist, Proposal Strategist, Sales Engineer
4. Support (1) — Executive Summary

Pick domains or name specific agents:

User: security + seo

Claude:
Selected: Security Engineer + SEO Specialist
What should they work on?

User: Review my Next.js e-commerce site before launch

[Both agents spawn in parallel, each applying their specialty to the codebase]

Claude:
## Security Engineer Findings
- [findings...]

## SEO Specialist Findings
- [findings...]

## Synthesis
Both agents agree on: [...]
Tension: Security recommends CSP that blocks inline styles, SEO needs inline schema markup. Resolution: [...]
Next steps: [...]
```

Tous les fichiers

1 fichiers

Installer team-builder

Téléchargez et décompressez les fichiers de compétences dans votre répertoire .claude/skills/.

Télécharger le ZIP

Clonez le dépôt et copiez les fichiers de compétence dans votre projet.

git clone https://github.com/affaan-m/ECC/tree/main/skills/team-builder # Copy SKILL.md to your .claude/skills/ directory

Copier Copier
Configuration rapide: Copiez le dossier de la compétence dans .claude/skills/ Claude détectera automatiquement la compétence et l'utilisera
Dépôt affaan-m/ECC

Compétences similaires

airtable-automation
Heure mise à jour 29 juin 2026
seo-programmatic
Heure mise à jour 29 juin 2026
notion-automation
Heure mise à jour 29 juin 2026
fairdb-backup-manager
Heure mise à jour 29 juin 2026
OR