team-spawn — Claude Code command: what it does, how to install
Spawns multi-agent teams using presets or custom setups for parallel code review and debugging.
/plugin marketplace add wshobson/agents
/plugin install agent-teams@claude-code-workflowsWhat team-spawn does
The script requires the CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 environment variable. Without it, execution stops immediately. The command then runs TeamCreate to initialize the group and sets up individual agents with role-tailored prompts. Available presets include review, debug, feature, fullstack, research, security, and migration.
Each preset organizes teammates differently. In the security preset, four reviewers inspect OWASP flaws, access controls, dependencies, and configuration secrets. The custom option prompts for 2 to 5 members and lets you assign specific agent roles.
System restrictions reserve role names. Therefore, team-lead cannot be used as an individual member handle. Teammate identifiers are tracked in ~/.claude/teams/{team-name}/config.json. Supplying --delegate immediately transitions Claude into task distribution mode via TaskCreate.
What it helps with
- run parallel code reviews across architecture, security, and performance
- test competing hypotheses simultaneously to isolate complex bugs
- split full-stack implementation across frontend, backend, and testing agents
- audit codebase dependencies, secrets, and access controls in parallel
Example prompts for the agent
- /team-spawn review --name pr-check
- /team-spawn fullstack --delegate
- /team-spawn custom --members 4
How to install team-spawn
1Plugin marketplace
/plugin marketplace add wshobson/agents/plugin install agent-teams@claude-code-workflows2Manually: put the files in place
.claude/commands/team-spawn.mdCall it with /team-spawn. For all projects use ~/.claude/commands/
Manually: put the files in place
~/.codex/prompts/team-spawn.mdCall it with /prompts:team-spawn. Codex marks this format deprecated in favour of skills
Manually: put the files in place
.github/prompts/team-spawn.prompt.mdManually: put the files in place
.gemini/commands/team-spawn.tomlGemini stores commands as TOML: the prompt text goes into the prompt field
Questions about team-spawn
How to install team-spawn in Claude Code?
To install from the marketplace, run /plugin marketplace add wshobson/agents and then /plugin install agent-teams@claude-code-workflows.
What does team-spawn do?
It spins up multi-agent workspaces configured for specific workflows or custom team rosters of 2 to 5 specialized agents.
What prerequisite is required before running team-spawn?
The command requires CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1 in your environment; without this experimental flag, the pre-flight check halts execution.
Source text
team-spawn.md · MIT
---
description: "Spawn an agent team using presets (review, debug, feature, fullstack, research, security, migration) or custom composition"
argument-hint: "<preset|custom> [--name team-name] [--members N] [--delegate]"
---
# Team Spawn
Spawn a multi-agent team using preset configurations or custom composition. Handles team creation, teammate spawning, and initial task setup.
## Pre-flight Checks
1. Verify that `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` is set:
- If not set, inform the user: "Agent Teams requires the experimental feature flag. Set `CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1` in your environment."
- Stop execution if not enabled
2. Parse arguments from `$ARGUMENTS`:
- First positional arg: preset name or "custom"
- `--name`: team name (default: auto-generated from preset)
- `--members N`: override default member count
- `--delegate`: enter delegation mode after spawning
## Phase 1: Team Configuration
### Preset Teams
If a preset is specified, use these configurations:
**`review`** — Multi-dimensional code review (default: 3 members)
- Spawn 3 `team-reviewer` agents with dimensions: security, performance, architecture
- Team name default: `review-team`
**`debug`** — Competing hypotheses debugging (default: 3 members)
- Spawn 3 `team-debugger` agents, each assigned a different hypothesis
- Team name default: `debug-team`
**`feature`** — Parallel feature development (default: 3 members)
- Spawn 1 `team-lead` agent + 2 `team-implementer` agents
- Team name default: `feature-team`
**`fullstack`** — Full-stack development (default: 4 members)
- Spawn 1 `team-implementer` (frontend), 1 `team-implementer` (backend), 1 `team-implementer` (tests), 1 `team-lead`
- Team name default: `fullstack-team`
**`research`** — Parallel codebase, web, and documentation research (default: 3 members)
- Spawn 3 `general-purpose` agents, each assigned a different research question or area
- Agents have access to codebase search (Grep, Glob, Read) and web search (WebSearch, WebFetch)
- Team name default: `research-team`
**`security`** — Comprehensive security audit (default: 4 members)
- Spawn 1 `team-reviewer` (OWASP/vulnerabilities), 1 `team-reviewer` (auth/access control), 1 `team-reviewer` (dependencies/supply chain), 1 `team-reviewer` (secrets/configuration)
- Team name default: `security-team`
**`migration`** — Codebase migration or large refactor (default: 4 members)
- Spawn 1 `team-lead` (coordination + migration plan), 2 `team-implementer` (parallel migration streams), 1 `team-reviewer` (verify migration correctness)
- Team name default: `migration-team`
### Custom Composition
If "custom" is specified:
1. Use AskUserQuestion to prompt for team size (2-5 members)
2. For each member, ask for role selection: team-lead, team-reviewer, team-debugger, team-implementer
3. Ask for team name if not provided via `--name`
## Phase 2: Team Creation
1. Use the `TeamCreate` tool to create the team with `team_name` and `description`
2. For each team member, use the `Agent` tool with:
- `team_name`: the team name
- `name`: unique descriptive member name (e.g., "fullstack-lead", "frontend-impl", "security-reviewer")
- `subagent_type`: the selected role (for example, `agent-teams:team-lead`, `agent-teams:team-implementer`, `agent-teams:team-reviewer`, `agent-teams:team-debugger`, or `general-purpose` for research)
- `prompt`: Role-specific instructions referencing the appropriate agent definition
3. Do not use the role name `team-lead` as the spawned member name. Team creation can reserve role-like names, so use a unique member name and address the teammate by the actual name returned by `Agent` or listed in `~/.claude/teams/{team-name}/config.json`.
## Phase 3: Initial Setup
1. Use `TaskCreate` to create initial placeholder tasks for each teammate
2. Display team summary:
- Team name
- Member names and roles
- Display mode (tmux/iTerm2/in-process)
3. If `--delegate` flag is set, transition to delegation mode
## Output
Display a formatted team summary:
```
Team "{team-name}" spawned successfully!
Members:
- {member-1-name} ({role})
- {member-2-name} ({role})
- {member-3-name} ({role})
Use /team-status to monitor progress
Use /team-delegate to assign tasks
Use /team-shutdown to clean up
```
© Seth Hobson · MIT · wshobson/agents