Skip to content

v3.2.1 - Hotfix: non-interactive install command

Choose a tag to compare

@dexusno dexusno released this 09 Apr 19:36

Hotfix for a blocking install bug reported by a real user running the full end-to-end pipeline. Backward compatible with v3.0, v3.1, v3.2.

The bug

A user ran the full TeamBuilder pipeline successfully — discovery, generation, validation at 99/100. When it came time to install the generated team, the team-guide agent ran the install command from the generated TEAM_README.md via a Bash tool call:

npx bmad-method install --custom-content "<team-path>" -y

BMAD's installer dropped into an interactive clack TUI asking for the installation directory, and the Bash tool call blocked until timeout. An LLM-driven agent cannot answer interactive clack prompts.

Root cause

The install command template in bmad-skill-generate-team Step 10 (and four other places) was missing required flags. The complete fully-non-interactive form is:

npx bmad-method@6.2.2 install \
  --directory "<absolute-path-to-project-root>" \
  -y \
  --modules bmm \
  --tools claude-code \
  --custom-content "<absolute-path-to-team>"

Every flag prevents a specific interactive prompt:

Flag Prevents
--directory "Installation directory:" prompt
-y Module/tool confirmation prompts
--modules bmm "Which modules?" prompt on quick-update
--tools claude-code "Which IDE?" prompt on quick-update
--custom-content The actual install target
@6.2.2 Pins version, avoids @latest drift

What was fixed

All 5 install-command templates updated to the fully non-interactive form with an explicit flag-by-flag table and "absolute paths only" guidance:

  1. teambuilder/skills/bmad-skill-generate-team/workflow.md Step 10
  2. teambuilder/skills/bmad-skill-collaborative-generation/workflow.md Phase 2 Step 4 + Phase 4 Step 2 "If INSTALL"
  3. README.md "First Team — Quick Start" step 8
  4. README.md "Installing a generated team" section
  5. README.md Troubleshooting "bmad status doesn't list a generated team"

What was NOT affected

  • scripts/install.ps1 and scripts/install.sh — already used the full flag set correctly, no changes.
  • Phase 4 smoke test — used the correct flags and passed 28/28.
  • Users who manually copy-pasted the old command to a real terminal — their interactive shell just prompted for the missing values and they pressed Enter. Only agent-driven Bash tool calls hit the block.

Updating from any v3.x

# Windows
.\scripts\update.ps1
# Linux/macOS
bash scripts/update.sh

Test validation

  • Version stamp check: 3.2.1 ✓
  • compat-check.js: 44 PASS / 0 WARN / 0 FAIL ✓
  • doctor.ps1: HEALTHY ✓
  • Critical test: the new non-interactive command completed WITHOUT HANGING — the user's reported bug is fixed.

Reported by

A real user running their first end-to-end team generation. Reported with the exact command output and the interactive prompt text, which enabled a precise fix. Thank you.

See CHANGELOG.md for the complete per-section diff.