* feat: add expansion pack installation system with game dev and infrastructure expansion packs
- Added expansion pack discovery and installation to BMAD installer
- Supports interactive and CLI installation of expansion packs
- Expansion pack files install to destination root (.bmad-core)
- Added game development expansion pack (.bmad-2d-phaser-game-dev)
- Game designer, developer, and scrum master agents
- Game-specific templates, tasks, workflows, and guidelines
- Specialized for Phaser 3 + TypeScript development
- Added infrastructure devops expansion pack (.bmad-infrastructure-devops)
- Platform engineering agent and infrastructure templates
- Expansion pack agents automatically integrate with IDE rules
- Added list:expansions command and --expansion-packs CLI option
🤖 Generated with Claude Code
Co-Authored-By: Claude <noreply@anthropic.com>
* alpha expansion packs and installer update to support installing expansion packs optionally
* node20
---------
Co-authored-by: Brian Madison <brianmadison@Brians-MacBook-Pro.local>
Co-authored-by: Claude <noreply@anthropic.com>
- Reset both package.json files to version 4.3.0
- The v5.0.0 bump was accidental due to BREAKING CHANGE in commit message
- Enhanced lint-staged to check all YAML files in project including .bmad-core/
- This ensures husky catches YAML formatting issues before push
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
Reset manual version bump to let semantic-release handle versioning going forward.
This aligns with the last semantic-release version (4.2.0) and allows proper
automated releases based on conventional commits.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
* chore: fix installation directory handling to use .bmad-core as default path
- Remove redundant ./ prefix from default directory
- Update all default paths from ./.bmad-core to .bmad-core
- Add logic to handle direct .bmad-core path selection
- Treat parent as project root when .bmad-core specified
- Simplify directory state detection for existing files
- Remove unknown_existing state type from installer logic
* chore: refactor installer to use modern JS patterns and improve code clarity
## CHANGES
- Replace require with node:path import
- Add block scoping to switch cases
- Remove unused options parameter from update
- Use optional chaining for ideConfig check
- Replace forEach with for...of loops
- Use template literals for string concatenation
- Add early return to avoid else block
- Update spell check dictionary entries
* chore: update dependencies to latest major versions
## CHANGES
- Update @kayvan/markdown-tree-parser to v1.5.0
- Update chalk to v5.4.1 for ESM support
- Update commander to v14.0.0 with Node 20 requirement
- Update fs-extra to v11.3.0
- Update glob to v11.0.3 with new API
- Update inquirer to v12.6.3 with modular design
- Update ora to v8.2.0 with improved features
- Added wrapper script (bmad.js) at root to handle npx execution context
- Fixed module resolution in tools/installer/bin/bmad.js for both local and npx contexts
- Updated package.json bin paths to use the wrapper script
- Handles temporary npx directories properly using execSync
This fixes the issue where `npx github:bmadcode/BMAD-METHOD#v4-alpha bmad`
was dropping into a shell instead of executing the command.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Adds missing glob package used by file-manager.js
- Fixes MODULE_NOT_FOUND error for glob
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Adds chalk, fs-extra, inquirer, ora for installer functionality
- Fixes MODULE_NOT_FOUND errors when running via npx
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
- Points to installer CLI at tools/installer/bin/bmad.js
- Enables npx github:bmadcode/BMAD-METHOD#v4-alpha to work
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>