Skip to content

[BUG] bmad-brainstorming loads project_name from core/config.yaml, but project_name is owned by bmm #2279

@blurb-jared-martin

Description

@blurb-jared-martin

Summary

src/core-skills/bmad-brainstorming/workflow.md instructs the LLM to load project_name from _bmad/core/config.yaml, but project_name is defined by the bmm module — it lives in _bmad/bmm/config.yaml. On a fresh install, the key simply isn't present where brainstorming looks for it.

Expected

bmad-brainstorming loads config values from the correct per-module location(s) so project_name resolves on a standard install.

Actual

src/core-skills/bmad-brainstorming/workflow.md lines 35–37:

Load config from `{project-root}/_bmad/core/config.yaml` and resolve:

- `project_name`, `output_folder`, `user_name`
- `communication_language`, `document_output_language`, `user_skill_level`
- `date` as system-generated current datetime

On a 6.3.0 install, _bmad/core/config.yaml contains only:

user_name
communication_language
document_output_language
output_folder

project_name lives in _bmad/bmm/config.yaml, which is consistent with src/bmm-skills/module.yaml defining project_name as a bmm module variable (prompt: "What is your project called?"). src/core-skills/module.yaml does not define project_name.

The installer itself already knows this. In tools/installer/core/installer.js (around lines 1414–1415), its own config resolver looks up project_name in bmm/config.yaml. Only bmad-brainstorming's SKILL doc points at the wrong file.

Blast radius

Swept src/core-skills/* for skills that reference project_name. Only bmad-brainstorming has this mismatch. All bmm skills that need project_name (e.g., bmad-product-brief, bmad-agent-dev) correctly load from bmm/config.yaml.

Relevant paths

  • Skill doc (wrong config path): src/core-skills/bmad-brainstorming/workflow.md:35
  • Canonical home of project_name: src/bmm-skills/module.yaml + _bmad/bmm/config.yaml on install
  • Installer's own resolver (correct behavior reference): tools/installer/core/installer.js lines ~1414–1415

Suggested fix

Change line 35 from {project-root}/_bmad/core/config.yaml to {project-root}/_bmad/bmm/config.yaml. A follow-up could split the load instruction so user_name/communication_language/output_folder come from core and project_name from bmm separately, since they genuinely live in different modules — but the one-line path fix is the immediate correctness fix.

PR incoming.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions