BMAD Framework Configuration
{
{
"$schema": "./bmad-schema.json",
"version": "1.0.0",
"description": "BMAD framework configuration file",
"enabled": true,
"defaultMode": "optional",
"gates": {
"analysis": {
"enabled": true,
"mandatory": true,
"persona": "analyst",
"checks": [
"requirement_clarity",
"scope_appropriateness",
"ac_testability"
]
},
"planning": {
"enabled": true,
"mandatory": true,
"persona": "product-manager",
"checks": [
"issue_hierarchy_structure",
"story_point",
"labeling",
"dependencies"
]
},
"solutioning": {
"enabled": true,
"mandatory": true,
"parallelPersonas": ["architect", "ux-designer"],
"checks": {
"architect": [
"clean_architecture",
"di_structure",
"api_design",
"security"
],
"ux-designer": [
"coui_compliance",
"layout",
"interaction",
"accessibility"
]
},
"checkNotes": {
"coui_compliance": "Recommended (not a hard block). When the project uses the Co<X> design system, prefer CoUI components; refer to the cc-coui skill for component guidance. Do not block the gate in environments where CoUI is not adopted."
}
},
"implementation": {
"enabled": true,
"mandatory": true,
"personas": ["flutter-developer", "backend-developer", "scrum-master"],
"subGates": {
"step_4_branch": {
"pattern": "^(feature|fix|refactor|chore)/[0-9]+-[a-z0-9-]+$",
"description": "Branch name must include issue number and slug (e.g., feature/1810-author-list)"
},
"step_8_5_lint": {
"commands": ["dart analyze"]
},
"step_9_pr": {
"checks": ["branch_format", "issue_linked", "commits_exist", "lint_passed"]
}
}
}
},
"personas": {
"analyst": {
"enabled": true,
"phase": "analysis",
"linkedAgents": ["agents/figma-analyzer-agent", "agents/bdd-scenario-agent"]
},
"product-manager": {
"enabled": true,
"phase": "planning",
"linkedAgents": ["agents/zenhub-integration-agent"]
},
"architect": {
"enabled": true,
"phase": "solutioning",
"linkedAgents": ["skills/quality:review-checklist"]
},
"ux-designer": {
"enabled": true,
"phase": "solutioning",
"linkedAgents": ["agents/flutter-ui", "agents/shared/widgetbook-agent"]
},
"flutter-developer": {
"enabled": true,
"phase": "implementation",
"linkedAgents": ["agents/feature-orchestrator-agent", "agents/app/presentation-layer-agent"],
"designSystem": "coui",
"designSystemReference": "cc-coui skill (component APIs) or CoUI source",
"optionalMcpTools": "If a CoUI MCP (e.g. coui-*) is configured in .mcp.json, discover its tools at runtime (search/details/generate/validate). Names vary by version; do not hard-code. Falls back to the cc-coui skill when no MCP is present."
},
"backend-developer": {
"enabled": true,
"phase": "implementation",
"linkedAgents": ["agents/app/data-layer-agent"]
},
"scrum-master": {
"enabled": true,
"phase": "implementation",
"linkedAgents": ["agents/sequential-workflow", "agents/dev/issue-state-agent"]
}
},
"emergency": {
"allowBypass": true,
"requireApproval": true,
"bypassableGates": ["analysis", "planning"],
"mandatoryGates": ["implementation"]
},
"parallelExecution": {
"enabled": true,
"maxConcurrency": 2,
"defaultPattern": "fan-out"
},
"feedback": {
"maxRetries": 3,
"autoFix": {
"enabled": true,
"categories": [
"type_safety",
"code_style",
"lint_rules",
"duplicate_removal",
"naming"
]
}
}
}