вариант

team-builder

affaan-m/ECC affaan-m/ECC

Просмотрите доступные профили операторов и сформируйте специальные команды из не более 5 операторов для параллельной работы над задачей, а затем обобщите их результаты.

...Расширить все
0
Обновлено время 2 октября 2026 г.

Создание команд

Интерактивное меню для просмотра и формирования команд агентов по запросу. Работает с плоскими коллекциями агентов или коллекциями, организованными по доменным подкаталогам.

Когда использовать

  • У вас есть несколько профилей агентов (файлы Markdown), и вы хотите выбрать, какие из них использовать для выполнения задачи
  • Вы хотите сформировать специальную команду из представителей разных областей (например, «Безопасность» + «SEO» + «Архитектура»)
  • Вы хотите посмотреть, какие агенты доступны, прежде чем принять решение

Необходимые условия

Файлы агентов должны быть файлами в формате Markdown, содержащими описание профиля агента (идентичность, правила, рабочий процесс, результаты работы). Первый заголовок с символом # используется в качестве имени агента, а первый абзац — в качестве описания.

Поддерживаются как плоская структура, так и структура с подкаталогами:

Структура с подкаталогами — область определяется по имени папки:

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

Плоская структура — домен определяется по общим префиксам имен файлов. Префикс считается доменом, если его имеют два и более файла. Файлы с уникальными префиксами помещаются в папку «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. командаclaude agents (основной способ) — запустите claude agents, чтобы получить список всех агентов, известных CLI, включая пользовательских агентов, агентов плагинов (например, everything-claude-code:architect) и встроенных агентов. Это автоматически охватывает установки из ECC Marketplace без какой-либо настройки путей.
  2. Глобальный шаблон файла (резервный вариант, для чтения содержимого агента) — файлы Markdown агентов считываются из:
    • ./agents/**/*.md + ./agents/*.md — агенты, локальные для проекта
    • ~/.claude/agents/**/*.md + ~/.claude/agents/*.md — глобальные пользовательские агенты

При конфликте имён приоритет имеют более ранние источники: пользовательские агенты > агенты плагинов > встроенные агенты. Вместо этого можно использовать пользовательский путь, если пользователь его укажет.

Как это работает

Шаг 1: Определение доступных агентов

Запустите команду claude agents, чтобы получить полный список агентов. Проанализируйте каждую строку:

  • Агенты-плагины имеют префикс plugin-name: (например, everything-claude-code:security-reviewer). Используйте часть после : в качестве имени агента, а имя плагина — в качестве домена.
  • Пользовательские агенты не имеют префикса. Прочитайте соответствующий файл в формате Markdown из каталога ~/.claude/agents/ или ./agents/, чтобы извлечь имя и описание.
  • Встроенные агенты (например, Explore, Plan) пропускаются, если пользователь явно не попросит их включить.

Для пользовательских агентов, загружаемых из файлов Markdown:

  • Структура подкаталогов: извлеките домен из имени родительской папки
  • Плоская структура: соберите все префиксы имен файлов (текст перед первым символом «-»). Префикс считается доменом только в том случае, если он встречается в 2 или более именах файлов (например, engineering-security-engineer.md и engineering-software-architect.md оба начинаются с engineering → домен Engineering). Файлы с уникальными префиксами (например, code-reviewer.md, tdd-guide.md) группируются в категорию «Общее»
  • Извлечь имя агента из первого заголовка с символом #. Если заголовок не найден, определить имя на основе имени файла (удалить расширение .md, заменить дефисы на пробелы, перевести в титульный регистр)
  • Извлечь однострочное резюме из первого абзаца после заголовка

Если после запуска команды claude agents и проверки расположения файлов агенты не найдены, сообщите пользователю: «Агенты не найдены. Запустите claude agents, чтобы проверить настройки». Затем остановитесь.

Шаг 2: Меню выбора домена

Доступные домены агентов:
1. Инженерия — архитектор программного обеспечения, инженер по безопасности
2. Маркетинг — специалист по SEO
3. Продажи — коуч по поиску клиентов, специалист по исходящим продажам

Выберите домены или укажите конкретных агентов (например, «1,3» или «security + seo»):
  • Пропустить домены, в которых нет агентов (пустые каталоги)
  • Показать количество агентов по каждому домену

Шаг 3: Обработка выбора

Допускается гибкий ввод:

  • Числа: «1,3» выбирает всех агентов из областей «Инжиниринг» и «Продажи»
  • Названия: «security + seo» — неточное совпадение с обнаруженными агентами
  • «все из отдела разработки» выбирает всех агентов в этом домене

Если выбрано более 5 агентов, отобразите их в алфавитном порядке и предложите пользователю сузить выбор: «Вы выбрали N агентов (максимум 5). Выберите, какие из них оставить, или скажите «первые 5», чтобы использовать первые пять в алфавитном порядке».

Подтвердите выбор:

Выбрано: инженер по безопасности + специалист по SEO
Над чем им следует работать? (опишите задачу):

Шаг 4: Запустить агентов параллельно

  1. Прочитайте файл Markdown каждого выбранного агента
  2. Запросите описание задачи, если оно ещё не предоставлено
  3. Запустить всех агентов параллельно с помощью инструмента «Agent»:
    • subagent_type: "general-purpose"
    • prompt: "{содержимое файла агента}\n\nЗадача: {описание задачи}"
    • Каждый агент работает независимо — взаимодействие между агентами не требуется
  4. Если агент завершил работу с ошибкой (ошибка, превышение времени ожидания или пустой вывод), отметьте сбой в тексте (например, «Инженер по безопасности: сбой — [причина]») и продолжайте с результатами агентов, которые выполнили задачу успешно

Шаг 5: Обобщение результатов

Соберите все выводы и представьте единый отчет:

  • Результаты, сгруппированные по агентам
  • В разделе «Обобщение» следует выделить:
    • Совпадения между агентами
    • Противоречия или разногласия между рекомендациями
    • Рекомендуемые дальнейшие шаги

Если был выбран только 1 агент, пропустить синтез и сразу представить результат.

Правила

  • Только динамическое обнаружение. Никогда не прописывайте списки агентов жестко в коде. Новые файлы в каталоге автоматически появляются в меню.
  • Не более 5 агентов в команде. Более 5 агентов приводит к снижению эффективности и чрезмерному использованию токенов. Это правило должно соблюдаться на этапе выбора.
  • Параллельная диспетчеризация. Все агенты работают одновременно — используйте схему параллельного вызова инструмента Agent.
  • Параллельные вызовы инструмента «Agent», а не TeamCreate. Данный навык использует параллельные вызовы инструмента «Agent» для независимой работы. TeamCreate (инструмент Claude Code для многоагентного диалога) требуется только в тех случаях, когда агенты должны обсуждать что-либо или отвечать друг другу.

Примеры

Пользователь: создание команды

Claude:
Доступные области специализации агентов:
1. Инженерия (2) — архитектор программного обеспечения, инженер по безопасности
2. Маркетинг (1) — специалист по SEO
3. Продажи (4) — коуч по поиску клиентов, специалист по исходящим продажам, специалист по разработке предложений, инженер по продажам
4. Поддержка (1) — краткое резюме

Выберите области или укажите конкретных агентов:

Пользователь: безопасность + SEO

Claude:
Выбрано: инженер по безопасности + специалист по SEO
Над чем им следует работать?

Пользователь: Проверить мой сайт электронной коммерции на Next.js перед запуском

[Оба агента запускаются параллельно, каждый применяя свои специализированные знания к коду]

Клод:
## Выводы инженера по безопасности
- [выводы...]

## Выводы специалиста по SEO
- [выводы...]

## Сводка
Оба агента согласны в следующем: [...]
Противоречие: специалист по безопасности рекомендует использовать CSP, блокирующий встроенные стили, а специалисту по SEO нужна встроенная разметка Schema. Решение: [...]
Следующие шаги: [...]
Посмотреть на 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: [...]
```

Все файлы

1 файлов

Установить team-builder

Скачайте файлы навыков и распакуйте их в каталог .claude/skills/.

Скачать ZIP

Клонируйте репозиторий и скопируйте файлы навыка в свой проект.

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

Копировать Копировать
Быстрая настройка: Скопируйте папку со скиллом в каталог .claude/skills/ Claude автоматически обнаружит и запустит этот скилл
Репозиторий affaan-m/ECC

Похожие навыки

airtable-automation
Обновлено время 29 июня 2026 г.
seo-programmatic
Обновлено время 29 июня 2026 г.
notion-automation
Обновлено время 29 июня 2026 г.
fairdb-backup-manager
Обновлено время 29 июня 2026 г.
OR