Build Module Validation Checklist
Module Identity and Metadata
Basic Information
- [ ] Module code follows kebab-case convention (e.g., “rpg-toolkit”)
- [ ] Module name is descriptive and title-cased
- [ ] Module purpose is clearly defined (1-2 sentences)
- [ ] Target audience is identified
- [ ] Version number follows semantic versioning (e.g., “1.0.0”)
- [ ] Author information is present
Naming Consistency
- [ ] Module code used consistently throughout all files
- [ ] No naming conflicts with existing modules
- [ ] All paths use consistent module code references
Directory Structure
Source Directories (bmad/{module-code}/)
- [ ]
/agents directory created (even if empty)
- [ ]
/workflows directory created (even if empty)
- [ ]
/tasks directory exists (if tasks planned)
- [ ]
/templates directory exists (if templates used)
- [ ]
/data directory exists (if data files needed)
- [ ]
config.yaml present in module root
- [ ]
README.md present with documentation
Runtime Directories (bmad/{module-code}/)
- [ ]
/_module-installer directory created
- [ ]
/data directory for user data
- [ ]
/agents directory for overrides
- [ ]
/workflows directory for instances
- [ ] Runtime
config.yaml present
Component Planning
Agents
- [ ] At least one agent defined or planned
- [ ] Agent purposes are distinct and clear
- [ ] Agent types (Simple/Expert/Module) identified
- [ ] No significant overlap between agents
- [ ] Primary agent is identified
Workflows
- [ ] At least one workflow defined or planned
- [ ] Workflow purposes are clear
- [ ] Workflow types identified (Document/Action/Interactive)
- [ ] Primary workflow is identified
- [ ] Workflow complexity is appropriate
Tasks (if applicable)
- [ ] Tasks have single, clear purposes
- [ ] Tasks don’t duplicate workflow functionality
- [ ] Task files follow naming conventions
Configuration Files
Module config.yaml
- [ ] All required fields present (name, code, version, author)
- [ ] Component lists accurate (agents, workflows, tasks)
- [ ] Paths use proper variables ({project-root}, etc.)
- [ ] Output folders configured
- [ ] Custom settings documented
Install Configuration
- [ ]
install-module-config.yaml exists in _module-installer
- [ ] Installation steps defined
- [ ] Directory creation steps present
- [ ] File copy operations specified
- [ ] Module registration included
- [ ] Post-install message defined
Installation Infrastructure
Installer Files
- [ ] Install configuration validates against schema
- [ ] All source paths exist or are marked as templates
- [ ] Destination paths use correct variables
- [ ] Optional vs required steps clearly marked
installer.js (if present)
- [ ] Main
installModule function exists
- [ ] Error handling implemented
- [ ] Console logging for user feedback
- [ ] Exports correct function names
- [ ] Placeholder code replaced with actual logic (or logged as TODO)
External Assets (if any)
- [ ] Asset files exist in assets directory
- [ ] Copy destinations are valid
- [ ] Permissions requirements documented
Documentation
README.md
- [ ] Module overview section present
- [ ] Installation instructions included
- [ ] Component listing with descriptions
- [ ] Quick start guide provided
- [ ] Configuration options documented
- [ ] At least one usage example
- [ ] Directory structure shown
- [ ] Author and date information
Component Documentation
- [ ] Each agent has purpose documentation
- [ ] Each workflow has description
- [ ] Tasks are documented (if present)
- [ ] Examples demonstrate typical usage
Development Roadmap
- [ ] TODO.md or roadmap section exists
- [ ] Planned components listed
- [ ] Development phases identified
- [ ] Quick commands for adding components
Integration
Cross-component References
- [ ] Agents reference correct workflow paths
- [ ] Workflows reference correct task paths
- [ ] All internal paths use module variables
- [ ] External dependencies declared
Module Boundaries
- [ ] Module scope is well-defined
- [ ] No feature creep into other domains
- [ ] Clear separation from other modules
Quality Checks
Completeness
- [ ] At least one functional component (not all placeholders)
- [ ] Core functionality is implementable
- [ ] Module provides clear value
Consistency
- [ ] Formatting consistent across files
- [ ] Variable naming follows conventions
- [ ] Communication style appropriate for domain
Scalability
- [ ] Structure supports future growth
- [ ] Component organization is logical
- [ ] No hard-coded limits
Testing and Validation
Structural Validation
- [ ] YAML files parse without errors
- [ ] JSON files (if any) are valid
- [ ] XML files (if any) are well-formed
- [ ] No syntax errors in JavaScript files
Path Validation
- [ ] All referenced paths exist or are clearly marked as TODO
- [ ] Variable substitutions are correct
- [ ] No absolute paths (unless intentional)
Installation Testing
- [ ] Installation steps can be simulated
- [ ] No circular dependencies
- [ ] Uninstall process defined (if complex)
Final Checks
Ready for Use
- [ ] Module can be installed without errors
- [ ] At least one component is functional
- [ ] User can understand how to get started
- [ ] Next steps are clear
Professional Quality
- [ ] No placeholder text remains (unless marked TODO)
- [ ] No obvious typos or grammar issues
- [ ] Professional tone throughout
- [ ] Contact/support information provided
Issues Found
Critical Issues
Warnings
Improvements
Missing Components
Module Complexity Assessment
Complexity Rating
- [ ] Simple (1-2 agents, 2-3 workflows)
- [ ] Standard (3-5 agents, 5-10 workflows)
- [ ] Complex (5+ agents, 10+ workflows)
Readiness Level
- [ ] Prototype (Basic structure, mostly placeholders)
- [ ] Alpha (Core functionality works)
- [ ] Beta (Most features complete, needs testing)
- [ ] Release (Full functionality, documented)
Sign-off
Module Name: ******__******
Module Code: ******__******
Version: ******__******
Validated By: ******__******
Date: ******__******
Status: ⬜ Pass / ⬜ Pass with Issues / ⬜ Fail