关于 bmad-help
bmad-help 是一项 BMad 技能,用于说明项目工作流进度并建议后续步骤。它依据已安装的技能目录、配置、产物和模块文档提供建议。
主要功能
- 01识别当前模块和阶段
- 02推荐可选及必需的后续步骤
- 03提供技能名称与调用信息
- 04检查产物中的完成依据
- 05依据模块文档回答问题
适用场景
- 01查找 BMad 工作流的下一步
- 02判断某个工作流阶段是否完成
- 03获取基于文档的模块解答
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ bmad-code-org/ bmad-method --skill bmad-help安装后在 Claude Code 中输入/bmad-help确认已加载。
详细介绍
BMad 帮助
目的
帮助用户了解他们在 BMad 工作流中所处的位置以及下一步该做什么,并在用户提出可借助远程来源(如模块文档来源)增强的更广泛问题时予以解答。
期望成果
当此技能完成时,用户应当:
- 知道自己在哪里 — 处于哪个模块和阶段、已完成哪些内容
- 知道下一步该做什么 — 下一步推荐和/或必需的步骤,并附有清晰的推理
- 知道如何调用它 — 技能名称、菜单代码、操作上下文,以及任何可跳过对话的参数
- 获得快速开始的提议 — 当某个单一技能是明确的下一步时,主动提议立即为用户运行它,而不仅仅是列出来
- 感到方向明确,而非不知所措 — 只呈现与其当前位置相关的内容;不要堆砌整个目录
- 获得一般性问题的答案 — 当问题无法对应到某个具体技能时,使用该模块已注册的文档给出有依据的回答
数据来源
- 目录:
{project-root}/_bmad/_config/bmad-help.csv— 所有已安装模块技能的汇总清单 - 配置:运行
uv run {project-root}/_bmad/scripts/resolve_config.py --project-root {project-root},并使用合并后的 JSON 解析output-location变量,读取core.communication_language和modules.bmm.project_knowledge。解析器按以下顺序合并_bmad/config.toml、_bmad/config.user.toml、_bmad/custom/config.toml和_bmad/custom/config.user.toml。 - 产物:在解析后的
output-location路径下匹配outputs模式的文件,可揭示哪些步骤可能已完成;其内容也可为推荐提供依据上下文 - 项目知识:如果
project_knowledge解析到某个已存在的路径,则读取它以获取依据上下文。切勿编造项目特定的细节。 - 模块文档:
skill列中包含_meta的行,其output-location带有指向该模块文档的 URL 或路径。获取并使用这些内容来回答关于该模块的一般性问题。
CSV 解读
目录使用以下格式:
module,skill,display-name,menu-code,description,action,args,phase,preceded-by,followed-by,required,output-location,outputs
阶段决定了高层流程:
anytime— 无论工作流状态如何都可用- 技能按文件夹分组(
plan、ship;某些模块使用编号阶段)并按顺序流转;命名因模块而异
排序决定了阶段内及跨阶段的推荐顺序(这些是软性建议,而非硬性门槛 — 关于门槛请参见 required):
preceded-by— 理想情况下应在此技能之前完成的技能followed-by— 理想情况下应在此技能之后运行的技能- 格式:单操作技能用
skill-name,多操作技能用skill-name:action
必需门槛:
required=true的条目必须完成,用户才能有意义地推进到后续阶段- 没有必需条目的阶段完全可选 — 可以推荐它,但要清楚说明下一步实际必需的是什么
完成检测:
- 在解析后的输出路径中搜索
outputs模式,并将找到的文件与目录行进行模糊匹配 - 将匹配到的输出视为该技能已开始的证据,而非已完成
- 检查匹配到的产物是否有明确的完成证据,例如最终状态或最终化标记;草稿或未完成标记意味着该技能仍在进行中
- 尊重用户所述或在当前对话中确立的完成状态
- 当无法可靠地确定完成状态时,应如实说明并询问用户;不要仅凭文件存在就建议推进
描述承载路由上下文 — 有些包含循环信息和替代路径(例如“如需修复则返回 DS”)。应将它们作为导航提示来阅读,而不仅仅是展示文本。
响应格式
对于每个推荐项,呈现:
[menu-code]显示名称 — 例如 "[PR] PRD"- 反引号中的技能名称 — 例如
bmad-prd - 对于多操作技能:操作调用上下文 — 例如 "dev lets run a code review!"
- 如果 CSV 中存在描述,则显示描述;否则你已有的技能知识即可
- 如果可用,显示参数
排序:先显示可选项,然后显示下一个必需项。明确区分哪些是哪些。
约束
- 所有输出均使用
{communication_language} - 建议在全新上下文窗口中运行每个技能
- 匹配用户的语气 — 用户随意时用对话式,用户想要具体内容时用结构化
- 如果活动模块不明确,检索所有元数据行远程源以查找相关信息,同时帮助回答他们的问题
评论
支持 Markdown