TEA Configuration Reference
TEA Configuration Reference
Section titled âTEA Configuration ReferenceâComplete reference for all TEA (Test Architect) configuration options.
Configuration File Locations
Section titled âConfiguration File LocationsâUser Configuration (Installer-Generated)
Section titled âUser Configuration (Installer-Generated)âLocation: _bmad/bmm/config.yaml
Purpose: Project-specific configuration values for your repository
Created By: BMad installer
Status: Typically gitignored (user-specific values)
Usage: Edit this file to change TEA behavior in your project
Example:
project_name: my-awesome-appuser_skill_level: intermediateoutput_folder: _bmad-outputtea_use_playwright_utils: truetea_use_mcp_enhancements: falseCanonical Schema (Source of Truth)
Section titled âCanonical Schema (Source of Truth)âLocation: src/bmm/module.yaml
Purpose: Defines available configuration keys, defaults, and installer prompts
Created By: BMAD maintainers (part of BMAD repo)
Status: Versioned in BMAD repository
Usage: Reference only (do not edit unless contributing to BMAD)
Note: The installer reads module.yaml to prompt for config values, then writes user choices to _bmad/bmm/config.yaml in your project.
TEA Configuration Options
Section titled âTEA Configuration Optionsâtea_use_playwright_utils
Section titled âtea_use_playwright_utilsâEnable Playwright Utils integration for production-ready fixtures and utilities.
Schema Location: src/bmm/module.yaml:52-56
User Config: _bmad/bmm/config.yaml
Type: boolean
Default: false (set via installer prompt during installation)
Installer Prompt:
Are you using playwright-utils (@seontechnologies/playwright-utils) in your project?You must install packages yourself, or use test architect's `framework` command.Purpose: Enables TEA to:
- Include playwright-utils in
frameworkscaffold - Generate tests using playwright-utils fixtures
- Review tests against playwright-utils patterns
- Configure CI with burn-in and selective testing utilities
Affects Workflows:
framework- Includes playwright-utils imports and fixture examplesatdd- Uses fixtures likeapiRequest,authSessionin generated testsautomate- Leverages utilities for test patternstest-review- Reviews against playwright-utils best practicesci- Includes burn-in utility and selective testing
Example (Enable):
tea_use_playwright_utils: trueExample (Disable):
tea_use_playwright_utils: falsePrerequisites:
npm install -D @seontechnologies/playwright-utilsRelated:
tea_use_mcp_enhancements
Section titled âtea_use_mcp_enhancementsâEnable Playwright MCP servers for live browser verification during test generation.
Schema Location: src/bmm/module.yaml:47-50
User Config: _bmad/bmm/config.yaml
Type: boolean
Default: false
Installer Prompt:
Test Architect Playwright MCP capabilities (healing, exploratory, verification) are optionally available.You will have to setup your MCPs yourself; refer to https://docs.bmad-method.org/explanation/features/tea-overview for configuration examples.Would you like to enable MCP enhancements in Test Architect?Purpose: Enables TEA to use Model Context Protocol servers for:
- Live browser automation during test design
- Selector verification with actual DOM
- Interactive UI discovery
- Visual debugging and healing
Affects Workflows:
test-design- Enables exploratory mode (browser-based UI discovery)atdd- Enables recording mode (verify selectors with live browser)automate- Enables healing mode (fix tests with visual debugging)
MCP Servers Required:
Two Playwright MCP servers (actively maintained, continuously updated):
playwright- Browser automation (npx @playwright/mcp@latest)playwright-test- Test runner with failure analysis (npx playwright run-test-mcp-server)
Configuration example:
{ "mcpServers": { "playwright": { "command": "npx", "args": ["@playwright/mcp@latest"] }, "playwright-test": { "command": "npx", "args": ["playwright", "run-test-mcp-server"] } }}Configuration: Refer to your AI agentâs documentation for MCP server setup instructions.
Example (Enable):
tea_use_mcp_enhancements: trueExample (Disable):
tea_use_mcp_enhancements: falsePrerequisites:
- MCP servers installed in IDE configuration
@playwright/mcppackage available globally or locally- Browser binaries installed (
npx playwright install)
Related:
Core BMM Configuration (Inherited by TEA)
Section titled âCore BMM Configuration (Inherited by TEA)âTEA also uses core BMM configuration options from _bmad/bmm/config.yaml:
output_folder
Section titled âoutput_folderâType: string
Default: _bmad-output
Purpose: Where TEA writes output files (test designs, reports, traceability matrices)
Example:
output_folder: _bmad-outputTEA Output Files:
test-design-architecture.md+test-design-qa.md(fromtest-designsystem-level - TWO documents)test-design-epic-N.md(fromtest-designepic-level)test-review.md(fromtest-review)traceability-matrix.md(fromtracePhase 1)gate-decision-{gate_type}-{story_id}.md(fromtracePhase 2)nfr-assessment.md(fromnfr-assess)automation-summary.md(fromautomate)atdd-checklist-{story_id}.md(fromatdd)
user_skill_level
Section titled âuser_skill_levelâType: enum
Options: beginner | intermediate | expert
Default: intermediate
Purpose: Affects how TEA explains concepts in chat responses
Example:
user_skill_level: beginnerImpact on TEA:
- Beginner: More detailed explanations, links to concepts, verbose guidance
- Intermediate: Balanced explanations, assumes basic knowledge
- Expert: Concise, technical, minimal hand-holding
project_name
Section titled âproject_nameâType: string
Default: Directory name
Purpose: Used in TEA-generated documentation and reports
Example:
project_name: my-awesome-appUsed in:
- Report headers
- Documentation titles
- CI configuration comments
communication_language
Section titled âcommunication_languageâType: string
Default: english
Purpose: Language for TEA chat responses
Example:
communication_language: englishSupported: Any language (TEA responds in specified language)
document_output_language
Section titled âdocument_output_languageâType: string
Default: english
Purpose: Language for TEA-generated documents (test designs, reports)
Example:
document_output_language: englishNote: Can differ from communication_language - chat in Spanish, generate docs in English.
Environment Variables
Section titled âEnvironment VariablesâTEA workflows may use environment variables for test configuration.
Test Framework Variables
Section titled âTest Framework VariablesâPlaywright:
BASE_URL=https://todomvc.com/examples/react/dist/API_BASE_URL=https://api.example.comTEST_USER_EMAIL=test@example.comTEST_USER_PASSWORD=password123Cypress:
# cypress.env.json or .envCYPRESS_BASE_URL=https://example.comCYPRESS_API_URL=https://api.example.comCI/CD Variables
Section titled âCI/CD VariablesâSet in CI platform (GitHub Actions secrets, GitLab CI variables):
env: BASE_URL: ${{ secrets.STAGING_URL }} API_KEY: ${{ secrets.API_KEY }} TEST_USER_EMAIL: ${{ secrets.TEST_USER }}Configuration Patterns
Section titled âConfiguration PatternsâDevelopment vs Production
Section titled âDevelopment vs ProductionâSeparate configs for environments:
output_folder: _bmad-output
# .env.developmentBASE_URL=http://localhost:3000API_BASE_URL=http://localhost:4000
# .env.stagingBASE_URL=https://staging.example.comAPI_BASE_URL=https://api-staging.example.com
# .env.production (read-only tests only!)BASE_URL=https://example.comAPI_BASE_URL=https://api.example.comTeam vs Individual
Section titled âTeam vs IndividualâTeam config (committed):
# _bmad/bmm/config.yaml.example (committed to repo)project_name: team-projectoutput_folder: _bmad-outputtea_use_playwright_utils: truetea_use_mcp_enhancements: falseIndividual config (typically gitignored):
# _bmad/bmm/config.yaml (user adds to .gitignore)user_name: John Doeuser_skill_level: experttea_use_mcp_enhancements: true # Individual preferenceMonorepo Configuration
Section titled âMonorepo ConfigurationâRoot config:
# _bmad/bmm/config.yaml (root)project_name: monorepo-parentoutput_folder: _bmad-outputPackage-specific:
project_name: web-appoutput_folder: ../../_bmad-output/web-apptea_use_playwright_utils: true
# packages/mobile-app/_bmad/bmm/config.yamlproject_name: mobile-appoutput_folder: ../../_bmad-output/mobile-apptea_use_playwright_utils: falseConfiguration Best Practices
Section titled âConfiguration Best Practicesâ1. Use Version Control Wisely
Section titled â1. Use Version Control WiselyâCommit:
_bmad/bmm/config.yaml.example # Template for team.nvmrc # Node versionpackage.json # DependenciesRecommended for .gitignore:
_bmad/bmm/config.yaml # User-specific values.env # Secrets.env.local # Local overrides2. Document Required Setup
Section titled â2. Document Required SetupâIn your README:
## Setup
1. Install BMad
2. Copy config template: cp _bmad/bmm/config.yaml.example _bmad/bmm/config.yaml
3. Edit config with your values: - Set user_name - Enable tea_use_playwright_utils if using playwright-utils - Enable tea_use_mcp_enhancements if MCPs configured3. Validate Configuration
Section titled â3. Validate ConfigurationâCheck config is valid:
# Check TEA config is setcat _bmad/bmm/config.yaml | grep tea_use
# Verify playwright-utils installed (if enabled)npm list @seontechnologies/playwright-utils
# Verify MCP servers configured (if enabled)# Check your IDE's MCP settings4. Keep Config Minimal
Section titled â4. Keep Config MinimalâDonât over-configure:
# â Bad - overriding everything unnecessarilyproject_name: my-projectuser_name: John Doeuser_skill_level: expertoutput_folder: custom/pathplanning_artifacts: custom/planningimplementation_artifacts: custom/implementationproject_knowledge: custom/docstea_use_playwright_utils: truetea_use_mcp_enhancements: truecommunication_language: englishdocument_output_language: english# Overriding 11 config options when most can use defaults
# â
Good - only essential overridestea_use_playwright_utils: trueoutput_folder: docs/testing# Only override what differs from defaultsUse defaults when possible - only override what you actually need to change.
Troubleshooting
Section titled âTroubleshootingâConfiguration Not Loaded
Section titled âConfiguration Not LoadedâProblem: TEA doesnât use my config values.
Causes:
- Config file in wrong location
- YAML syntax error
- Typo in config key
Solution:
# Check file existsls -la _bmad/bmm/config.yaml
# Validate YAML syntaxnpm install -g js-yamljs-yaml _bmad/bmm/config.yaml
# Check for typos (compare to module.yaml)diff _bmad/bmm/config.yaml src/bmm/module.yamlPlaywright Utils Not Working
Section titled âPlaywright Utils Not WorkingâProblem: tea_use_playwright_utils: true but TEA doesnât use utilities.
Causes:
- Package not installed
- Config file not saved
- Workflow run before config update
Solution:
# Verify package installednpm list @seontechnologies/playwright-utils
# Check config valuegrep tea_use_playwright_utils _bmad/bmm/config.yaml
# Re-run workflow in fresh chat# (TEA loads config at workflow start)MCP Enhancements Not Working
Section titled âMCP Enhancements Not WorkingâProblem: tea_use_mcp_enhancements: true but no browser opens.
Causes:
- MCP servers not configured in IDE
- MCP package not installed
- Browser binaries missing
Solution:
# Check MCP package availablenpx @playwright/mcp@latest --version
# Install browsersnpx playwright install
# Verify IDE MCP config# Check ~/.cursor/config.json or VS Code settingsConfig Changes Not Applied
Section titled âConfig Changes Not AppliedâProblem: Updated config but TEA still uses old values.
Cause: TEA loads config at workflow start.
Solution:
- Save
_bmad/bmm/config.yaml - Start fresh chat
- Run TEA workflow
- Config will be reloaded
TEA doesnât reload config mid-chat - always start fresh chat after config changes.
Configuration Examples
Section titled âConfiguration ExamplesâRecommended Setup (Full Stack)
Section titled âRecommended Setup (Full Stack)âproject_name: my-projectuser_skill_level: beginner # or intermediate/expertoutput_folder: _bmad-outputtea_use_playwright_utils: true # Recommendedtea_use_mcp_enhancements: true # RecommendedWhy recommended:
- Playwright Utils: Production-ready fixtures and utilities
- MCP enhancements: Live browser verification, visual debugging
- Together: The three-part stack (see Testing as Engineering)
Prerequisites:
npm install -D @seontechnologies/playwright-utils# Configure MCP servers in IDE (see Enable MCP Enhancements guide)Best for: Everyone (beginners learn good patterns from day one)
Minimal Setup (Learning Only)
Section titled âMinimal Setup (Learning Only)âproject_name: my-projectoutput_folder: _bmad-outputtea_use_playwright_utils: falsetea_use_mcp_enhancements: falseBest for:
- First-time TEA users (keep it simple initially)
- Quick experiments
- Learning basics before adding integrations
Note: Can enable integrations later as you learn
Monorepo Setup
Section titled âMonorepo SetupâRoot config:
# _bmad/bmm/config.yaml (root)project_name: monorepooutput_folder: _bmad-outputtea_use_playwright_utils: truePackage configs:
project_name: web-appoutput_folder: ../../_bmad-output/web
# apps/api/_bmad/bmm/config.yamlproject_name: api-serviceoutput_folder: ../../_bmad-output/apitea_use_playwright_utils: false # Using vanilla Playwright onlyTeam Template
Section titled âTeam TemplateâCommit this template:
# Copy to config.yaml and fill in your values
project_name: your-project-nameuser_name: Your Nameuser_skill_level: intermediate # beginner | intermediate | expertoutput_folder: _bmad-outputplanning_artifacts: _bmad-output/planning-artifactsimplementation_artifacts: _bmad-output/implementation-artifactsproject_knowledge: docs
# TEA Configuration (Recommended: Enable both for full stack)tea_use_playwright_utils: true # Recommended - production-ready utilitiestea_use_mcp_enhancements: true # Recommended - live browser verification
# Languagescommunication_language: englishdocument_output_language: englishTeam instructions:
## Setup for New Team Members
1. Clone repo2. Copy config template: cp _bmad/bmm/config.yaml.example _bmad/bmm/config.yaml3. Edit with your name and preferences4. Install dependencies: npm install5. (Optional) Enable playwright-utils: npm install -D @seontechnologies/playwright-utils Set tea_use_playwright_utils: trueSee Also
Section titled âSee AlsoâHow-To Guides
Section titled âHow-To GuidesâReference
Section titled âReferenceâExplanation
Section titled âExplanationâGenerated with BMad Method - TEA (Test Architect)