ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

BMAD-METHOD bmad-forge-idea 深度解析:投入之前用压力测试对话把想法锻硬或淘汰掉

BMAD-METHOD bmad-forge-idea 深度解析:投入之前用压力测试对话把想法锻硬或淘汰掉 BMAD-METHOD bmad-forge-idea 深度解析投入之前用压力测试对话把想法锻硬或淘汰掉【免费下载链接】BMAD-METHODBreakthrough Method for Agile Ai Driven Development项目地址: https://gitcode.com/gh_mirrors/bm/BMAD-METHOD本篇技术指南基于 docs/ko-kr/explanation/forge-idea.md 展开系统讲解 BMAD-METHOD 中bmad-forge-idea技能的工作机制它如何用一次一个问题的严格质询对话对尚未成型的产品功能、商业模型、研究假设乃至个人决策做压力测试。读完本文你将理解 Forge 会话的完整生命周期激活、记忆持久化、双声音人格机制、三种结局与报告产出并能结合 skills/bmad-forge-idea/SKILL.md 与 skills/bmad-forge-idea/customize.toml 的源码掌握其底层实现与可定制点。Forge Idea 是什么bmad-forge-idea的执行方式很直接由一位严格的质询者interrogator对你的想法一次只提一个问题逐层深挖直到你对这个想法有足够下手的把握——要么确信的可以去做要么确信地放弃。该技能不限制领域软件功能、商业模式、研究假设甚至一直盘旋在脑海中的个人决策都可以拿来锻forge。会话结束后的首要收益是想清楚了。精炼产出的forged-idea.md只是可能的终结形态之一并且 Forge 明确不会催促你说出那我们做吧——对话的目标是更好的思考而不是制造一份产出物或推动立项。官方文档将其定位为核心模块的思考类技能因此在任何一次 BMad 安装中都可以使用docs/ko-kr/how-to/pressure-test-an-idea.md 进一步确认它没有任何前置条件仅凭普通对话即可运行已安装的代理名单和已配置的自定义人格只会让会话更丰富而不是必需的。为什么要在最早期做压力测试文档指出的核心风险是最危险的东西是你在自己的想法里看不见的漏洞。未被检验的假设、没有结论的选项会一直留在想法里当裂纹crack当时不处理就会在构建或发布阶段以数倍的代价重新出现。而想法阶段的特殊性在于在这里改变主意的成本几乎为零。Forge 正是利用这一点——在还没有任何沉没成本的时候逼出那些现在还改得动的弱点。这也是它在 BMAD 规划路径中被放在需求定义之前的原因docs/plan/explore-and-validate-an-idea.md 中对它的定位是对话是发现想法漏洞最便宜的地方。会话运行方式质询者如何提问从 SKILL.md 的实现说明看会话遵循几条明确的提问纪律依赖顺序一次一问问题按依赖关系排序逐个抛出不并行轰炸每个问题附带质询者自己的推荐答案相比开放提问一个可以被反驳的具体假设更容易推动讨论深入一个具体提案比开放式提问更容易被接受、拒绝或修正可自查的答案自己查凡是质询者自己就能找到答案的事情不会丢回给用户去查目标决定起手式文档区分三种会话目标——澄清clarify、验证是否成立test、改进make better。对应该逻辑源码规定目标是澄清就先固定术语、边界和假设目标是验证就直接攻击核心主张目标是改进就把每个未决分支推到具体决策。现有项目以项目资料为事实基准如果想法位于某个已有项目内部那么该项目的资料就是判断基准质询者会拿用户的论断与既有资料逐条对照指出矛盾如果资料与用户的说法冲突必须先解决冲突再继续。从源码看SKILL.md这里的措辞很硬不要把标签或摘要当作证据自己去找相关资料并核对用户的说法。术语审查拒绝模糊词过关文档强调任何术语同样要接受审查如果一个词含糊或一词多义比如同时装着两个含义质询者会要求你在继续讨论之前先选定精确含义——因为一个词叠着多重含义继续讨论会通向错误的结论。源码中给出的典型例子是不能默认把user使用者、buyer购买者、payer付费者塌缩成同一个角色除非想法本身确实要求如此参见 SKILL.md 术语规则。对话结构每一回合的两个声音这是 Forge 与单一助手问答案式对话最大的不同。原文档的描述是主题确定后每个论点不再是一个没有面孔的助手而是两个人物一起上一个来自已安装名单的人格——即用户在 Party Mode 和 命名代理 中熟悉、认得的已安装代理或自定义 persona一个围绕主题即席生成的角色——可能是敌对的竞争对手、怀疑论 CFO或者见过这种计划失败很多次的领域专家。用户在整个过程中握有控制权可以点名某个 persona 参与、召唤一个已保存的 party群组或者要求从这个主张的反方视角审查它让一方把这个主张攻击到底由用户来防守。人格池如何解析resolve_personas.py 源码剖析每回合两个声音背后有一个明确的解析机制。技能激活、目标确定后会执行 skills/bmad-forge-idea/scripts/resolve_personas.py一次性拿到可用的演员表。该脚本仅依赖 Python 标准库3.11 的tomllib以 JSON 输出四块信息字段含义agents已安装的 BMad 代理名册默认房间总是存在members用户自定义的额外 persona不属于任何已安装槽位的 party_membersparties用户命名的 party 群组成员已解析为简报卡片无固定成员的组会被标记open_castdefault_party若配置了 party-mode 默认群组则返回其 id几个值得注意的实现细节均有测试覆盖见 test_resolve_personas.py别名归一化_alias()会把bmad-agent-analyst缩写为analyst索引同时收录 code、小写 code、别名和 persona 名称所以用户无论怎么称呼都能命中自定义覆盖落在已安装槽位上如果用户用code analyst覆盖内置分析师结果是替换那张卡片source变为custom而不是凭空多出一张脸且自定义改名不会劫持其他代理的名称查找test_custom_rename_does_not_hijack_another_agents_name 专门验证了这一点容错优先解析是尽力而为best-effort任何解析失败只是省略并标记永不阻断会话。当bmad-party-mode未安装时脚本会直接读取_bmad/custom/bmad-party-mode.toml与.user.toml两份覆盖文件标量以个人配置胜出数组则追加参见 load_party_overrides 及其测试。SKILL.md 人格规则 在此基础上约定可用人格要每隔几回合换一次声音不让一个声音独霸全场用户点名就用谁召唤 party 就用整组及其 scene场景设定用户要求一对一就只用被点名者解析不到任何人时质询者自己生成这个角色。默认由主对话亲自配音这些人格只有当某个分支需要不应被共享声音影响的独立推理时才真正派生独立代理。没有默认同意与对抗式评审相反的设计原文档用一个独立章节强调这条纪律值得完整展开这个技能拒绝无条件同意。我理解你的想法不等于我支持你的想法。Forge 在任何东西通过验证之前不做赞美它会攻击弱点或者把强项再往前推一步只承认经过验证的强项它有意与对抗式评审adversarial review走相反的路对抗式评审里是评审者找问题、用户过滤误报而在 Forge 里质询者自己不给出无依据的同意。它用持续的压力让用户想得更深——目标不是舒服的对话而是留下更好的想法。源码把这条纪律写成了可执行规则SKILL.md 反赞美条款不要用同意或赞美让交互更顺滑那会降低压力、导向更浅的思考……在攻击模式下直到用户结束该模式绝不与想法达成一致。同时它也留了口子当同意确实有助于用户思考时同意是被允许的——赞美本身是噪音。会话状态持久化memlog 与断点续跑对话中的每个关键节点都会被写盘。激活阶段On Activation 流程中Forge 会运行resolve_customization.py --key workflow解析本技能的定制配置执行activation_steps_prepend中配置的步骤并把persistent_facts作为全程背景事实加载条目可以是字面句、skill:前缀的技能名、或file:前缀的文件/通配路径运行resolve_config.py --key core读取{output_folder}记录会话开始时是否已有 BMad persona 处于激活状态——若有该 persona 以自身声音主导整场会话断点恢复递归 glob{forge_output_path}/**/.memlog.md只读各文件 frontmatter 找status不为complete的会话向用户提供恢复或新开的选择执行activation_steps_append。随后为想法派生一个 kebab-case 的{slug}绑定会话工作区并通过 memlog 初始化落盘状态uv run {project-root}/_bmad/scripts/memlog.py init --workspace {workspace} \ --field ideaidea --field goalgoal会话中则随手追加记录每条一个要点、用用户自己的语义Capture 规则uv run {project-root}/_bmad/scripts/memlog.py append --workspace {workspace} \ --type decision|assumption|crack|kill|direction|lock|note --text gist这七种类型里lock有专门定义它是被用户锻硬的想法——已定案、不再重开而最终的forged-idea.md正是从所有 lock 蒸馏出来的。会话最后用memlog.py set --key status --value complete翻转状态若配置了{workflow.on_complete}则按序执行其中全部指令。会话的三种结局都是有效结果原文档的核心主张会话在思考到达的位置结束任何结局都是有效结果。Forge 会产出一份写明判定verdict的独立报告。结果含义锻硬Hardened想法存活下来了。把已确认的决策、被废弃的选项及其理由精炼为forged-idea.md。若是产品概念该文件可作为bmad-spec、bmad-prd、bmad-prfaq的输入。废弃Killed想法没有扛住检验。报告会记录废弃原因——能够低成本地发现这一点本身就是一种收益。变清晰Clearer你只是现在能更清楚地思考了不需要单独的产出物会话本身就够了。从 SKILL.md 结局章节 可以看到三个额外的实现约束forged-idea.md必须极短只保留对下游有用的决策、被拒选项和理由如果它读起来像一篇文档那就太长了只有当规划/开发类技能bmad-spec、bmad-prd、bmad-prfaq、bmad-build已安装时才主动提议该文件作为输入技能缺失绝不是错误每次运行都额外渲染一份自包含的{workspace}/forge-report.html内联 CSS 内联 SVG 印章按结果盖上醒目的火漆式戳记HARDENED、盖着KILLED并写明死因的Idea Death Certificate想法死亡证明、或CLARIFIED参与压测的 persona 与 party 会按姓名、图标、声音被署名致谢让想法被杀掉是被鼓励的文档明确反对把会话往是的方向引导。定制面customize.toml 的 [workflow] 表skills/bmad-forge-idea/customize.toml 暴露了 Forge 的完整配置面覆盖文件写在{project-root}/_bmad/custom/bmad-forge-idea.toml团队和bmad-forge-idea.user.toml个人合并规则为标量覆盖胜出数组追加。配置项默认值说明activation_steps_prepend[]标准激活流程读配置、问候之前执行的步骤activation_steps_append[]问候之后、会话开始前执行的步骤persistent_facts[]质询者全程牢记的事实领域约束、house rules、禁区。条目可以是字面句、skill:前缀、或file:前缀的路径/通配内容被加载为事实。注释建议全仓级上下文应放 AGENTS.md参见 bmad-project-context这里只放 Forge 专用、按需加载的上下文on_complete[]会话完成时执行的指令标量或数组forge_output_path{output_folder}/forge所有 Forge 会话的父目录。直接落在{output_folder}下保证 Forge 在仅核心安装中也能工作run_folder_pattern{slug}运行文件夹模式按想法 slug 解析。同一 slug 复用同一文件夹因此恢复一个想法会沿用其 memlog如需每次运行独立的历史可覆盖为含{date}的模式何时使用 Forge与相邻技能的边界原文档给出了一条清晰的使用准则当你已经有一个想法、想在对它投入时间或金钱之前把它锻硬或废弃时用 Forge。如果你还在生成选项阶段或想要的是一群代理的集体决策请跳过它。技能使用时机声音bmad-forge-idea已有想法想压力测试它或废弃它质询者与两个人物参与的对话bmad-prfaq已决定推进产品想从客户优先视角做验证Working Backwards 教练bmad-brainstorming还没有想法需要生成选项引导式教练bmad-party-mode想让多个代理一起讨论或共同决策一次对话内的完整名册bmad-review已有产出物需要找缺陷寻找真实问题的多透镜评审者注意 Forge 与bmad-party-mode的关系它复用了 party-mode 的名册数据通过上文resolve_personas.py直接解析无需调用 party-mode 本身但输出形态完全不同——party-mode 是群聊Forge 是围绕一个主张的审讯。完整示例压测AI 每周摘要以下是原文档中的示例对话中文转译展示一次典型的 Forge 会话用户我想在 App 里加一个 AI 生成的每周摘要。就是每周一给用户发一封摘要邮件。Forge在谈功能之前——是谁要求了这个我的推荐答案是没有人要求过。你现在是从AI 摘要看起来有价值出发的。如果你有真实信号请反驳我。怀疑论 CFO即席生成周一摘要会针对全部活跃用户持续产生重复推理成本而且是永远持续的。哪条收入线为它买单用户留存吧大概是。因为人们会忘记回来。Forge那么承重的主张其实是周一邮件能把濒临流失的用户拉回来而不是AI 摘要有价值。这是两个不同的想法。我们要锻哪一个这个例子浓缩了 Forge 的全部方法论第一句话是功能两轮提问之后真正承重的东西被暴露出来——一个不需要模型、用普通邮件就能测试的留存假设。这正是在改变主意免费的时候改变主意的具体含义。实操运行步骤结合 docs/ko-kr/how-to/pressure-test-an-idea.md 的操作指引一次完整运行如下调用技能在 IDE 中调用bmad-forge-idea或直接说出触发语技能的触发短语包括 forge an idea、pressure-test this idea、stress-test my thinking、harden this idea见 SKILL.md frontmatter。可以在同一消息里附上想法也可以等它先提问说明目标告诉它是想澄清理解、验证是否成立、还是把想法改得更强。目标直接决定起手式——验证类目标会先打核心主张强化类目标会把每个分支推到决策逐分支防守面对一次一问的质询如实作答。它给出推荐答案时你可以接受、反驳或修正当它指出模糊术语或与项目资料冲突的论断时先处理完再进入下一个分支操纵对话随时可以说 attack this / defend this / switch roles 切换当前分支的论证方式攻击模式下质询者不会与想法达成一致防守模式下它会替想法的最强版本辩护也可以点名 persona 或召唤已保存的 party 改变参与者Steering 说明等待结论让想法被锻硬、被废弃、或变得更清晰任何分支收尾时它都会暂停给你机会提出遗留顾虑。你可以主动宣布结束也可以让它自行判断时机收取产出每次运行都会得到一份写明判定的forge-report.html结局为锻硬时另有可被下游规划技能直接消费的forged-idea.md。一句话总结这个技能的价值主张Forge 不替你想出答案它用结构化的压力保证你在花钱之前已经把想法里看不见的漏洞全部摊开过了一遍——而摊开这件事在整个开发周期里对话阶段是最便宜的。【免费下载链接】BMAD-METHODBreakthrough Method for Agile Ai Driven Development项目地址: https://gitcode.com/gh_mirrors/bm/BMAD-METHOD创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表