Skip to content

feat: BMAD Agent Teams — Claude Code parallel agent orchestration#1

Open
Hidden-History wants to merge 9 commits intomainfrom
feature/agent-teams-config
Open

feat: BMAD Agent Teams — Claude Code parallel agent orchestration#1
Hidden-History wants to merge 9 commits intomainfrom
feature/agent-teams-config

Conversation

@Hidden-History
Copy link
Owner

Summary

Add BMAD Agent Teams support for Claude Code's native Agent Teams feature. Enables spawning parallel teams of BMAD agents in tmux panes for sprint development, story preparation, test automation, architecture review, and research.

12 files changed, +1976 lines, 9 commits on feature/agent-teams-config

What's Included

New Files

  • .bmad/agent-teams.yaml — Team compositions for 5 stages (sprint-dev, story-prep, test-automation, architecture-review, research)
  • .bmad/README-agent-teams.md — Full configuration reference, troubleshooting, and multi-provider setup
  • .claude/skills/bmad-agent-teams/SKILL.md — Skill hub with conditional loading
  • .claude/skills/bmad-agent-teams/sprint-workflow.md — 13-step spawn & lifecycle workflow
  • .claude/skills/bmad-agent-teams/verify-workflow.md — 5-check dependency verification
  • .claude/commands/bmad-team-sprint.md/bmad-team-sprint slash command
  • .claude/commands/bmad-team-verify.md/bmad-team-verify slash command
  • .claude/hooks/scripts/bmad_teammate_idle.py — Quality gate hook (idle detection)
  • .claude/hooks/scripts/bmad_task_completed.py — Quality gate hook (completion reporting)
  • docs/how-to/use-agent-teams.md — User-facing how-to guide
  • Updated README.md — Agent Teams bullet in features list
  • Updated .gitignore — Exception for slash command markdown files

Architecture

  • Star topology — All teammates report to lead only (no peer-to-peer messaging)
  • Single-writer — Only the lead writes sprint-status.yaml (prevents race conditions)
  • HITL checkpoints — User approves before agents spawn and before results are accepted
  • BMAD slash commands — Teammates load full agent personas through BMAD's workflow engine
  • 3-tier model abstraction — opus/sonnet/haiku mapped to any provider's models via env vars
  • Dependency verification — 5-check analysis before parallel assignment
  • Token-efficient skill chunking — Hub + 2 conditional workflows loaded on demand

5 Pre-Built Stages

Stage Description Teammates
sprint-dev Parallel story implementation + code review 2 devs + 1 reviewer
story-prep Parallel story creation from epics 3 story creators
test-automation Parallel test creation 2 QA engineers
architecture-review Architecture with analyst support 1 analyst + 1 UX designer
research Parallel Phase 1 research streams 3 researchers

Multi-Provider Support

  • 4 providers documented: Anthropic (default), Ollama Local, Ollama Cloud, GLM/Z.AI
  • Full-session provider switching works today
  • Per-teammate mixed-provider routing designed and spike-validated but deferred (PLAN-008)
  • Ollama Cloud verified working at https://ollama.com with GLM-5:cloud

Quality

  • 11 adversarial review rounds, 78 issues found and resolved, 0 remaining
  • E2E tested with real agent spawning
  • SDK spike tests (4/4 PASS) validating multi-provider approach

Related Community Issues

Test Plan

  • Config parses for all 5 stages
  • Prerequisites validation works
  • Skill chunking routes correctly
  • Spawn prompts populate with project context
  • HITL gates enforce approval
  • Multi-provider Ollama Cloud GLM-5 confirmed via SDK spike
  • Hook scripts parse teammate state correctly
  • URL consistency verified across all files

Co-Authored-By: Claude Opus 4.6 noreply@anthropic.com

WB Solutions and others added 9 commits February 14, 2026 16:32
Bridge BMAD's 30 agents with Claude Code's native Agent Teams feature
(TeamCreate, tmux split-pane teammates, shared task lists, inter-agent
messaging). Enables parallel team execution for sprint development,
story preparation, test automation, and architecture review.

Key components:
- .bmad/agent-teams.yaml: Team stage configurations (4 pre-built stages)
- .claude/skills/bmad-agent-teams/SKILL.md: Orchestration skill with
  spawn prompt templates, cost estimation, and lifecycle management
- .claude/hooks/scripts/bmad_teammate_idle.py: TeammateIdle quality gate
  with 2-minute grace period for race condition handling
- .claude/hooks/scripts/bmad_task_completed.py: TaskCompleted advisory
  hook reminding teammates to report status to lead
- .bmad/README-agent-teams.md: Setup guide, patterns, and troubleshooting

Design decisions:
- Star topology (4.4x error amplification vs 17x unstructured)
- Single-writer authority (lead exclusively owns sprint-status.yaml)
- BMAD slash commands (teammates load personas via workflow engine)
- HITL checkpoints (cost estimate + approval before any spawning)
- Advisory cost/idle thresholds (Claude Code doesn't expose runtime metrics)

Aligns with community direction: bmad-code-org#1550, bmad-code-org#1584, bmad-code-org#1613, bmad-code-org#1628

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add docs/how-to/use-agent-teams.md with step-by-step setup for
spawning parallel BMAD agent teams in Claude Code via tmux. Covers
prerequisites, stage selection, hook registration, architecture
overview, configuration reference, cost management, and troubleshooting.

Update README.md to list Agent Teams as a feature alongside Party Mode
and add a link in the Documentation section.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The .claude/commands directory was fully gitignored, preventing
bmad-team-sprint.md from being committed. Without this slash command,
users cannot invoke /bmad-team-sprint to use the Agent Teams feature.

Follows the existing .augment/ exception pattern. Related to bmad-code-org#1550.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Remove cost estimator from orchestration flow (Claude Code has no cost API)
- Add prerequisite validation system with required/recommended files to all 5 stages
- Add research stage for Phase 1 parallel market/domain/technical research
- Change story-prep lead from SM to PM for PRD quality alignment
- Make lead spawn template generic (stage-agnostic with variable placeholders)
- Add Researcher spawn template for 3 research stream types
- Document solo-only workflows vs team workflows (with full mapping table)
- Fix 14 review issues: agent manifest keys, slash commands, advisory language,
  permission inheritance, delegate mode, in-process mode, pricing dates,
  display modes, gitignore, README links

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Sanitize team/teammate names in hook state file paths (path traversal)
- Move hook state files from /tmp/ to ~/.claude/tmp/ (world-writable risk)
- Fix skill name mismatch: bmad-os-agent-teams → bmad-agent-teams
- Add Template Variable Resolution guide to SKILL.md
- Add max_teammates enforcement to spawn flow
- Broaden lead detection in TaskCompleted hook (*-lead suffix)
- Add research stage to slash command description
- Document context paths and communication rules in README
- Update slash command flow steps (prerequisites, not cost estimate)
- Label Architect as lead in architecture-review pattern

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…and review fixes

Add /bmad-team-verify command with 5-check dependency analysis (story deps,
file ownership, cross-cutting concerns, producer-consumer contracts, quality
gate). Split SKILL.md into 3 conditionally-loaded files (SKILL.md hub +
verify-workflow.md + sprint-workflow.md) reducing per-invocation token load
by ~93%. Replace 7 redundant worker templates with factory pattern. Add
staleness check to idle hook. Document experimental API assumptions in hooks.

Changes across 10 files:
- .claude/skills/bmad-agent-teams/SKILL.md: rewritten as mode-selection hub (813→63 lines)
- .claude/skills/bmad-agent-teams/verify-workflow.md: new, 5-check verify flow
- .claude/skills/bmad-agent-teams/sprint-workflow.md: new, 13-step orchestration with factory templates
- .claude/commands/bmad-team-verify.md: new slash command entry point
- .bmad/agent-teams.yaml: parallel-groups in recommended_files, lead responsibilities
- .bmad/README-agent-teams.md: dependency verification docs, updated file inventory
- .claude/hooks/scripts/bmad_teammate_idle.py: schema docs, path assumption docs, staleness check
- .claude/hooks/scripts/bmad_task_completed.py: schema documentation
- .gitignore: added verify command exception
- docs/how-to/use-agent-teams.md: verify section, story-prep prereq note

Reviewed by: 2x Opus + 2x Sonnet parallel review teams (0 issues remaining)

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
…Ollama/GLM)

Fix Step 7 model parameter not being passed to Task tool — all teammates
were spawning with default model regardless of config. Add haiku as third
valid model tier. Document provider configuration for Ollama Local, Ollama
Cloud, and GLM/Z.AI with env var setup and capability matrix.

12 edits across 5 files. 2 review rounds (15 issues found and fixed).

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Ollama Cloud URL was `https://ollama.com/api` in 3 files but
the verified working URL (SDK spike test, 2026-02-17) is
`https://ollama.com`. Also fixes Step 2.5 provider detection
pattern to match the correct URL.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
@bmadcode
Copy link

bmadcode commented Feb 18, 2026

My mistake - I followed this link from an issue thread and thought this was a PR in the BMad Repo :)

We should discuss this feature in discord as this is a massive add planned for post v6 many people are considering. But this is a good start - did you start a thread already?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants