Midtrans-Middleware/.bmad/bmb/docs/index.md

56 lines
2.0 KiB
Markdown

# BMB Module Documentation
Reference documentation for building BMAD agents and workflows.
## Agent Architecture
Comprehensive guides for each agent type (choose based on use case):
- [Understanding Agent Types](./understanding-agent-types.md) - **START HERE** - Architecture vs capability, "The Same Agent, Three Ways"
- [Simple Agent Architecture](./simple-agent-architecture.md) - Self-contained, optimized, personality-driven
- [Expert Agent Architecture](./expert-agent-architecture.md) - Memory, sidecar files, domain restrictions
- [Module Agent Architecture](./module-agent-architecture.md) - Workflow integration, professional tools
## Agent Design Patterns
- [Agent Menu Patterns](./agent-menu-patterns.md) - Menu handlers, triggers, prompts, organization
- [Agent Compilation](./agent-compilation.md) - What compiler auto-injects (AVOID DUPLICATION)
## Reference Examples
Production-ready examples in `/src/modules/bmb/reference/agents/`:
**Simple Agents** (`simple-examples/`)
- `commit-poet.agent.yaml` - Commit message artisan with style customization
**Expert Agents** (`expert-examples/`)
- `journal-keeper/` - Personal journal companion with memory and pattern recognition
**Module Agents** (`module-examples/`)
- `security-engineer.agent.yaml` - BMM security specialist with threat modeling
- `trend-analyst.agent.yaml` - CIS trend intelligence expert
## Installation Guide
For installing standalone simple and expert agents, see:
- [Custom Agent Installation](/docs/custom-agent-installation.md)
## Key Concepts
### YAML to XML Compilation
Agents are authored in YAML with Handlebars templating. The compiler auto-injects:
1. **Frontmatter** - Name and description from metadata
2. **Activation Block** - Steps, menu handlers, rules (YOU don't write this)
3. **Menu Enhancement** - `*help` and `*exit` commands added automatically
4. **Trigger Prefixing** - Your triggers auto-prefixed with `*`
**Critical:** See [Agent Compilation](./agent-compilation.md) to avoid duplicating auto-injected content.
Source: `tools/cli/lib/agent/compiler.js`