team-builder
Skill272 starsChanged 7 months agoMITView on GitHub
Interactive agent picker for composing and dispatching parallel teams
We split this skill into the rules it gives an agent
7 rules. 6 are common, 1 is distinctive, and 0 are very specific to this project.
6
Common
Most of the 13 edited versions we read keep these.
1
Distinctive
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 67
If no agent files are found after probing all locations, inform the user: "No agent files found.
- Common: line 90
If more than 5 agents are selected, list them alphabetically and ask the user to narrow down: "You selected N agents (max 5).
- Common: line 100
Read each selected agent's markdown file
- Common: line 106
If an agent fails (error, timeout, or empty output), note the failure inline (e.g., "Security Engineer: failed — [reason]") and continue …
- Common: line 117
If only 1 agent was selected, skip synthesis and present the output directly.
- Common: line 121
Dynamic discovery only: Never hardcode agent lists.
- Common: line 123
Parallel dispatch: All agents run simultaneously — use the Agent tool's parallel invocation pattern.
“Common” is measured: kept by at least 6 in 10 of the 13 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
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.mdFlat 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.mdConfiguration
Agent directories are probed in order and results are merged:
./agents/**/*.md+./agents/*.md— project-local agents (both depths)~/.claude/agents/**/*.md+~/.claude/agents/*.md— global agents (both depths)
Results from all locations are merged and deduplicated by agent name. Project-local agents take precedence over global agents with the same name. A custom path can be used instead if the user specifies one.
How It Works
Step 1: Discover Available Agents
Glob agent directories using the probe order above. Exclude README files. For each file found:
- 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.mdandengineering-software-architect.mdboth start withengineering→ 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 agent files are found after probing all locations, inform the user: "No agent files found. Checked: [list paths probed]. Expected: markdown files in one of those directories." 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
- Read each selected agent's markdown file
- Prompt for the task description if not already provided
- 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
- 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: [...]Other versions17 projects use a version of this.
Word for word · 4
- get-proofpilot/claude-skills-catalog★ 1100% same
- junimnjw/everything-claude-code★ 1100% same
- MohamedEssam0-0/claude-skills★ 0100% same
- PeterYang888/claude-skills★ 0100% same
Edited · 10
- Fmarzochi/EGC★ 6178% same
- gongyijie85/dsh-ecc★ 878% same
- ronmkr/PromptBook★ 277% same
- Ronnasayd/aipp★ 174% same
- SamuelNDCE/claude-super-skill-library★ 179% same
- TironFox/everything-claude-code★ 179% same
- davidanthonyn/claude-skills★ 079% same
- gesh75/claude-skills★ 076% same
- pankaj-mahaur/Agent-Daemon★ 079% same
- renepf/claude-skills★ 079% same
Wrote their own version · 3
- 5throck/ai-workspace-standards★ 23same name
- jbrahy/meta-agent-teams★ 4same name
- dhriyatinandu-bot/claude-skills★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository178 other files it gives its agents.
- AGENTS.mdAGENTS.md
- .codex/AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- examples/CLAUDE.mdCLAUDE.md
- .cursor/rules/common-agents.mdCursor rule
- .cursor/rules/common-coding-style.mdCursor rule
- .cursor/rules/common-development-workflow.mdCursor rule
- .cursor/rules/common-git-workflow.mdCursor rule
- .cursor/rules/common-hooks.mdCursor rule
- .cursor/rules/common-patterns.mdCursor rule
- .cursor/rules/common-performance.mdCursor rule
- .cursor/rules/common-security.mdCursor rule
- .cursor/rules/common-testing.mdCursor rule
- .cursor/rules/golang-coding-style.mdCursor rule
- .cursor/rules/golang-hooks.mdCursor rule
- .cursor/rules/golang-patterns.mdCursor rule
- .cursor/rules/golang-security.mdCursor rule
- .cursor/rules/golang-testing.mdCursor rule
- .cursor/rules/kotlin-coding-style.mdCursor rule
- .cursor/rules/kotlin-hooks.mdCursor rule
- .cursor/rules/kotlin-patterns.mdCursor rule
- .cursor/rules/kotlin-security.mdCursor rule
- .cursor/rules/kotlin-testing.mdCursor rule
- .cursor/rules/php-coding-style.mdCursor rule
- .cursor/rules/php-hooks.mdCursor rule
- .cursor/rules/php-patterns.mdCursor rule
- .cursor/rules/php-security.mdCursor rule
- .cursor/rules/php-testing.mdCursor rule
- .cursor/rules/python-coding-style.mdCursor rule
- .cursor/rules/python-hooks.mdCursor rule
- .cursor/rules/python-patterns.mdCursor rule
- .cursor/rules/python-security.mdCursor rule
- .cursor/rules/python-testing.mdCursor rule
- .cursor/rules/swift-coding-style.mdCursor rule
- .cursor/rules/swift-hooks.mdCursor rule
- .cursor/rules/swift-patterns.mdCursor rule
- .cursor/rules/swift-security.mdCursor rule
- .cursor/rules/swift-testing.mdCursor rule
- .cursor/rules/typescript-coding-style.mdCursor rule
- .cursor/rules/typescript-hooks.mdCursor rule
- .cursor/rules/typescript-patterns.mdCursor rule
- .cursor/rules/typescript-security.mdCursor rule
- .cursor/rules/typescript-testing.mdCursor rule
- llms.txtllms.txt
- article-writingSkill
- bun-runtimeSkill
- content-engineSkill
- documentation-lookupSkill
- frontend-slidesSkill
- investor-materialsSkill
- investor-outreachSkill
- market-researchSkill
- mcp-server-patternsSkill
- nextjs-turbopackSkill
- agent-evalSkill
- agent-harness-constructionSkill
- agentic-engineeringSkill
- ai-first-engineeringSkill
- ai-regression-testingSkill
- android-clean-architectureSkill
- The first 60 shown.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

