Files
brachnha-insight/_bmad/bmb/workflows/agent/steps-c/step-07c-build-module.md
Max e9e6fadb1d fix: ChatBubble crash and DeepSeek API compatibility
- Fix ChatBubble to handle non-string content with String() wrapper
- Fix API route to use generateText for non-streaming requests
- Add @ai-sdk/openai-compatible for non-OpenAI providers (DeepSeek, etc.)
- Use Chat Completions API instead of Responses API for compatible providers
- Update ChatBubble tests and fix component exports to kebab-case
- Remove stale PascalCase ChatBubble.tsx file
2026-01-26 16:55:05 +07:00

8.0 KiB

name, description, nextStepFile, agentPlan, agentBuildOutput, agentYamlOutput, expertTemplate, expertArch, agentCompilation, criticalActions, advancedElicitationTask, partyModeWorkflow
name description nextStepFile agentPlan agentBuildOutput agentYamlOutput expertTemplate expertArch agentCompilation criticalActions advancedElicitationTask partyModeWorkflow
step-06-build-module Generate Module agent YAML from plan ./step-08-celebrate.md {bmb_creations_output_folder}/agent-plan-{agent_name}.md {bmb_creations_output_folder}/{agent-name}/ {bmb_creations_output_folder}/{agent-name}/{agent-name}.agent.yaml ../templates/expert-agent-template/expert-agent.template.md ../data/expert-agent-architecture.md ../data/agent-compilation.md ../data/critical-actions.md {project-root}/_bmad/core/workflows/advanced-elicitation/workflow.xml {project-root}/_bmad/core/workflows/party-mode/workflow.md

STEP GOAL

Assemble the Module agent YAML file from the approved plan, using the expert agent template as the baseline architecture and adding module-specific workflow integration paths and sidecar configuration.

MANDATORY EXECUTION RULES

  1. TEMPLATE BASELINE: Module agents MUST use the expert agent template as their structural foundation - do not create custom templates

  2. PLAN ADHERENCE: Extract content from agentPlan exactly as written - no enhancement, interpretation, or extrapolation

  3. MODULE SPECIFICITY: Module agents require workflow integration paths and may need sidecar configuration for multi-workflow modules

  4. OUTPUT VALIDATION: YAML must be valid, complete, and ready for immediate deployment

  5. LANGUAGE PRESERVATION: Maintain any language choice configured in the plan throughout the YAML

EXECUTION PROTOCOLS

PREPARATION PHASE

1. Load Expert Template Baseline

Read: expertTemplate
Read: expertArch
Read: agentCompilation
Read: criticalActions

Purpose: Understand the expert agent structure that serves as the Module agent baseline

Validation: Confirm expert template has all required sections (name, description, persona, instructions, tools, skills, etc.)

2. Load Agent Plan

Read: agentPlan (using dynamic path)

Validation: Plan contains all mandatory sections:

  • Agent identity (name, description)
  • Persona profile
  • Command structure
  • Critical actions
  • Workflow integrations (module-specific)
  • Language choice (if configured)

3. Verify Output Directory

Bash: mkdir -p {agentBuildOutput}

Purpose: Ensure output directory exists for the module agent

ASSEMBLY PHASE

4. Assemble Module Agent YAML

FROM PLAN TO YAML MAPPING:

Plan Section YAML Field Notes
Agent Name name Plan → YAML
Description description Plan → YAML
Persona persona Plan → YAML
Instructions instructions Plan → YAML (verbatim)
Commands commands Plan → YAML (with handlers)
Critical Actions criticalActions Plan → YAML (mandatory)
Workflow Paths skills Module-specific
Sidecar Need sidecar If multi-workflow

MODULE-SPECIAL ENHANCEMENTS:

# Module agents include workflow integration
skills:
  - workflow: "{project-root}/_bmad/{module-id}/workflows/{workflow-name}/workflow.md"
    description: "From plan workflow list"
  - workflow: "{project-root}/_bmad/{module-id}/workflows/{another-workflow}/workflow.md"
    description: "From plan workflow list"

# Optional: Sidecar for complex modules
sidecar:
  enabled: true
  workflows:
    - ref: "primary-workflow"
      type: "primary"
    - ref: "secondary-workflow"
      type: "support"

CRITICAL ACTIONS MAPPING:

For each critical action in plan:
1. Identify matching command in YAML
2. Add `critical: true` flag
3. Ensure handler references agent function

5. Create Sidecar (If Needed)

SIDEAR REQUIRED IF:

  • Module has 3+ workflows
  • Workflows have complex interdependencies
  • Module needs initialization workflow

SIDECAR STRUCTURE:

# {agent-name}.sidecar.yaml
sidecar:
  module: "{module-id}"
  initialization:
    workflow: "workflow-init"
    required: true
  workflows:
    - name: "workflow-name"
      path: "workflows/{workflow-name}/workflow.md"
      type: "primary|support|utility"
      dependencies: []
  agent:
    path: "{agent-name}.agent.yaml"

IF SIDEAR NOT NEEDED: Skip this step

6. Write Module Agent YAML

Write: agentYamlOutput (using dynamic path)
Content: Assembled YAML from step 4

Validation Checklist:

  • All plan fields present in YAML
  • Workflow paths are valid and correct
  • Critical actions flagged
  • Sidecar created (if needed) or skipped (if not)
  • YAML syntax is valid
  • Language choice preserved throughout

COMPLETION PHASE

7. Present MENU OPTIONS

Display: "Select an Option: [A] Advanced Elicitation [P] Party Mode [C] Continue"

Menu Handling Logic:

  • IF A: Execute {advancedElicitationTask}, and when finished redisplay the menu
  • IF P: Execute {partyModeWorkflow}, and when finished redisplay the menu
  • IF C: Write agent YAML to {agentBuildOutput}/{agent-name}/{agent-name}.agent.yaml (or appropriate output path), update frontmatter, then only then load, read entire file, then execute {nextStepFile}
  • IF Any other comments or queries: help user respond then Redisplay Menu Options

EXECUTION RULES:

  • ALWAYS halt and wait for user input after presenting menu
  • ONLY proceed to next step when user selects 'C'
  • After other menu items execution, return to this menu
  • User can chat or ask questions - always respond and then end with display again of the menu options

USER RESPONSE HANDLING:

  • Option 1: Proceed to step-07a-plan-traceability.md with sequential mode
  • Option 2: Proceed to step-07a-plan-traceability.md with yolo mode
  • Invalid input: Re-ask with options

CONTEXT BOUNDARIES

IN SCOPE:

  • Reading expert template and architecture
  • Loading agent plan
  • Assembling Module agent YAML
  • Creating sidecar (if needed)
  • Writing valid YAML output

OUT OF SCOPE:

  • Modifying plan content
  • Creating new template structures
  • Implementing agent code
  • Writing workflow files
  • Testing agent functionality

DO NOT:

  • Add commands not in plan
  • Modify persona from plan
  • Create custom template structures
  • Skip critical actions mapping
  • Assume sidecar need - evaluate based on workflow count

CRITICAL STEP COMPLETION NOTE

ONLY WHEN [C continue option] is selected and [complete YAML generated and written to output], will you then load and read fully {nextStepFile} to execute and celebrate completion.

THIS STEP IS COMPLETE WHEN:

  1. Module agent YAML file exists at agentYamlOutput path
  2. YAML contains all plan content correctly mapped
  3. Module-specific workflow paths are configured
  4. Sidecar is created (if needed) or correctly skipped (if not)
  5. User has chosen review mode (one-at-a-time or YOLO)
  6. Ready to proceed to step-07a-plan-traceability.md

STOP BEFORE:

  • Writing workflow implementations
  • Creating agent code files
  • Testing agent functionality
  • Deploying to active system

SUCCESS METRICS

COMPLETION:

  • Module agent YAML exists with all required fields
  • All plan content accurately mapped to YAML
  • Workflow integration paths configured correctly
  • Critical actions properly flagged
  • Sidecar created or correctly skipped
  • YAML syntax is valid
  • User confirms review mode choice
  • Transitions to step-07a-plan-traceability.md

VALIDATION:

  • Plan-to-YAML mapping: 100% accuracy
  • Workflow paths: All valid and correct
  • Critical actions: All present and flagged
  • Sidecar decision: Correctly evaluated
  • Language choice: Preserved throughout

FAILURE MODES

IF PLAN MISSING CONTENT: → Return to step-02-discover.md to complete plan

IF EXPERT TEMPLATE MISSING: → Raise error - template is mandatory baseline

IF YAML SYNTAX ERROR: → Fix and retry write operation

IF WORKFLOW PATHS INVALID: → Flag for review in traceability step

IF USER ASKS FOR MODIFICATIONS: → Return to appropriate planning step (03-persona, 04-commands, or 05-name)