3.4 KiB
3.4 KiB
CLAUDE.md
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Project Overview
BMad Method is an AI-driven agile development framework built on BMad Core (Collaboration Optimized Reflection Engine). It provides specialized AI agents and guided workflows for software development lifecycle management.
Key Modules:
- Core (
src/core/) - Universal framework with shared agents, tasks, and workflows - BMM (
src/bmm/) - BMad Method for agile software development (flagship module)
Common Commands
# Run all tests (schemas, installation, validation, lint, markdown lint, format check)
npm test
# Run specific test suites
npm run test:schemas # Agent YAML schema validation tests
npm run test:install # Installation component tests
npm run validate:schemas # Validate all *.agent.yaml files against schema
# Code quality
npm run lint # ESLint with YAML support
npm run lint:fix # Auto-fix linting issues
npm run lint:md # Markdown linting
npm run format:check # Check Prettier formatting
npm run format:fix # Auto-fix formatting
# Test coverage
npm run test:coverage # Generate coverage report with c8
# CLI integration tests
./test/test-cli-integration.sh
Architecture
Module Structure
Each module in src/ follows this pattern:
module/
├── module.yaml # Module configuration and installer prompts
├── agents/ # Agent definitions (*.agent.yaml)
├── workflows/ # Workflow definitions with workflow.yaml files
├── data/ # Data files used by workflows
├── teams/ # Team configurations (agent groupings)
└── _module-installer/ # Module-specific installation logic
Agent YAML Schema
Agent files (*.agent.yaml) are validated by tools/schema/agent.js using Zod. Key rules:
- Required fields:
id,name,title,icon,persona,menu - Module agents must have
modulefield matching their path (e.g.,bmmfor files insrc/bmm/agents/) - Menu triggers must be kebab-case or compound format (
TS or fuzzy match on tech-spec) - Test fixtures in
test/fixtures/agent-schema/demonstrate valid/invalid patterns
CLI Tools
tools/cli/bmad-cli.js- Main CLI entry pointtools/bmad-npx-wrapper.js- NPX wrapper (npx bmad-method install)tools/validate-agent-schema.js- Schema validation CLI wrapper
Workflow System
Workflows are YAML files that guide multi-step processes. Located in module workflows/ directories with:
workflow.yaml- Workflow definition and steps- Supporting data files and templates
Development Notes
Adding New Agents
- Create
*.agent.yamlin appropriatesrc/*/agents/directory - Follow schema in
tools/schema/agent.js - Validate with
npm run validate:schemas - Add test fixtures if introducing new validation patterns
Modifying Validation
Schema changes go in tools/schema/agent.js. Test fixtures in test/fixtures/agent-schema/ must cover all validation paths (100% coverage required).
PR Guidelines
- Submit to
mainbranch for critical fixes only - Keep PRs under 800 lines; split larger changes
- Use conventional commits:
feat:,fix:,docs:,refactor:,test:,chore: - Validate YAML schemas before committing:
npm run validate:schemas