BMAD-METHOD/tools/cli
Hayden Carson 78ab55c7e3 feat: remove tools, add name and agent assignments to GitHub Copilot installer
Remove tools declaration from agent and prompt frontmatter since users
manage their own tooling. Add name field to agents for cleaner @mention
names and to prompts for cleaner /command display. Set agent field in
prompts to the actual agent displayName for context continuity instead
of resetting to default. Omit agent from prompts with no assigned agent.

Remove now-unused getToolsForFile() and collectExistingToolPermissions()
methods and related tool-permission preservation code from setup().

Fixes #1794

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
2026-02-28 16:37:43 +08:00
..
commands feat(cli): add uninstall command with selective component removal (#1650) 2026-02-15 08:13:03 -06:00
installers feat: remove tools, add name and agent assignments to GitHub Copilot installer 2026-02-28 16:37:43 +08:00
lib fix(config): remove Windsurf from recommended/preferred IDEs (#1727) 2026-02-20 20:16:43 -06:00
README.md modify post install notes example 2026-02-14 21:25:58 -06:00
bmad-cli.js fix(cli): use semantic versioning for update check (#1671) 2026-02-16 09:39:03 -06:00
external-official-modules.yaml refactor: replace module installer scripts with declarative directories config 2026-02-08 19:21:48 -06:00

README.md

BMad CLI Tool

Installing external repo BMad official modules

For external official modules to be discoverable during install, ensure an entry for the external repo is added to external-official-modules.yaml.

For community modules - this will be handled in a different way. This file is only for registration of modules under the bmad-code-org.

Post-Install Notes

Modules can display setup guidance to users after configuration is collected during npx bmad-method install. Notes are defined in the module's own module.yaml — no changes to the installer are needed.

Simple Format

Always displayed after the module is configured:

post-install-notes: |
  Thank you for choosing the XYZ Cool Module
  For Support about this Module call 555-1212  

Conditional Format

Display different messages based on a config question's answer:

post-install-notes:
  config_key_name:
    value1: |
      Instructions for value1...      
    value2: |
      Instructions for value2...      

Values without an entry (e.g., none) display nothing. Multiple config keys can each have their own conditional notes.

Example: TEA Module

The TEA module uses the conditional format keyed on tea_browser_automation:

post-install-notes:
  tea_browser_automation:
    cli: |
      Playwright CLI Setup:
        npm install -g @playwright/cli@latest
        playwright-cli install --skills      
    mcp: |
      Playwright MCP Setup (two servers):
        1. playwright    — npx @playwright/mcp@latest
        2. playwright-test — npx playwright run-test-mcp-server      
    auto: |
      Playwright CLI Setup:
        ...
      Playwright MCP Setup (two servers):
        ...      

When a user selects auto, they see both CLI and MCP instructions. When they select none, nothing is shown.