Files
BMAD-METHOD/README_CN.md
T
Brian 5247108ba3 fix(installer): plain-text directory prompt, retire WDS, position on AiDD (#2680)
* fix(installer): submit the path shown and retire WDS from the picker

Directory prompt

The installation-directory prompt was a clack AutocompletePrompt whose
render() drew only the text line. The candidate list existed but was never
shown, and Enter returns the focused option rather than the typed text.
Focus was sticky: it only reset when the previously focused value left the
list, so a subdirectory selected while narrowing survived deleting back to
the parent. Typing /path/to/workspace could install to
/path/to/workspace/some-child with no sign of it on screen.

Rebuilt on TextPrompt so the input line is the value:

- the candidate list is visible, windowed, with an active-row marker
- arrow keys and Tab write the highlighted candidate onto the input line
- the list is frozen against the last typed text while browsing, so arrows
  walk siblings instead of descending (this also unsticks Tab cycling)
- index -1 is the typed text, so backing out of the list restores it
- Tab completes to real directories only, skipping "Create/use:" entries
- directory() takes optional input/output streams so it is testable

Module registry

- WDS is marked deprecated: hidden from the picker unless already
  installed, shown with a notice when it is, never removed and still
  resolvable from its source so existing installs keep updating
- deprecation notices now reach the CLI paths (--modules, --yes) and
  quick-update, which never render the picker's option hints
- picker order is now bmm, bmb, cis, tea, bmad-loop, gds
- the core row is hidden; it was a locked always-on checkbox. core is
  still added to the result, and the picker no longer requires a
  selection so a core-only install stays possible

* fix(installer): replace the whole line when browsing directories

_clearUserInput() sends readline ctrl+u, which deletes only what is left
of the cursor, and _setUserInput() inserts at the cursor. Browsing after
an arrow-key edit therefore left the surviving tail appended to the
selected candidate: typing a path, pressing left three times, then down
twice submitted ".../workspaceace" instead of ".../workspace/alpha".
validateDirectorySync accepts that path when its parent exists, so the
install went somewhere the user never typed - the same silent-divergence
class this prompt was rebuilt to prevent.

replaceLine() now moves to end of line (ctrl+e) before clearing. This
also fixes the pre-existing instance of the bug on Tab.

Alongside it:

- shift+tab steps back through completions instead of acting as tab
- the "... N more" counter counts only entries below the window, not
  every off-window entry, which overstated it once scrolled
- an empty line resolves the default through expandHome/path.resolve,
  and seeds the candidate list from the same place, so the list always
  describes what Enter would submit
- selectAllModules JSDoc no longer claims core is excluded
- test escape sequences are written as escapes rather than raw bytes,
  and the keystroke driver has wider timing margins for CI

* refactor(installer): make the directory prompt a plain text entry

The candidate list, key hints and completion cycling were noise for the
common case: people run the installer from the directory they want to
install into, or one under it. Enter on an empty line already accepts
that, so the list mostly served to push the actual question off screen.

Removed the list rendering, the hint line, arrow/Tab browsing and the
helpers that fed them (listDirectoryOptions, directoryWindow and the
directory-probing utilities). What remains is a clack TextPrompt with a
placeholder showing the default.

The original defect stays fixed by construction rather than by
bookkeeping: TextPrompt's value is the text on the input line, so there
is no hidden selection that Enter could submit instead. Net effect on
prompts.js versus main is -66 lines.

* docs(installer): shorten module descriptions in the picker

The hint beside a highlighted module ran long enough to wrap, which made
the list harder to scan than the module names alone. Each description is
now a single short phrase:

- bmm  Agile AI driven development
- bmb  Skill, workflow, and agent builder
- cis  Brainstorming, ideation, and creative problem solving
- tea  Enterprise testing BMM add-on
- loop Builds, verifies, and retros a whole epic unattended
- gds  Ideate, design, and build games in any framework

TEA is the only module that depends on BMM, and its description now says
so. The others no longer imply it. "Loop" means nothing to a new user, so
that description leads with what the module does rather than its name,
and gds no longer enumerates engines.

* feat(installer): pre-fill the directory prompt with the current directory

The default was shown as dim placeholder text, so choosing anything near
it meant typing the whole path by hand. It is now the real starting value
on the input line: press Enter to take it, append to install one level
down, or backspace to move up. Clearing the line and pressing Enter still
accepts the default, and the placeholder remains for that case.

* docs: reposition on Agile Ai Driven Development

The tagline was absent from the installer and the README, and the slot
under the wordmark where a tagline belongs was carrying the company line
instead. AiDD is the category BMad Method operates in; the agile part is
what BMad adds to it.

Installer:

- the banner reads tagline, then positioning, then company credit, in
  descending weight
- bmm and cis picker descriptions match, with cis short enough that its
  row no longer wraps and shifts the list as you arrow onto it

README:

- the opening states the phrase, defines AiDD on first use, and drops the
  rhetorical "heard BMad means heavyweight process?" framing while
  keeping what it was defending
- greenfield lean corrected: the opening now states the range, "add BMad
  to an existing codebase" is a CTA above the fold rather than a link at
  line 57, and a bullet names working from verified context on inherited
  code. Everything above the fold previously scaled by change size and
  nothing by codebase maturity, so a brownfield reader had no answer.
- the module table matches the installer descriptions, uses full module
  names instead of letter codes, and adds BMad Loop, which was missing

* docs: carry the module descriptions into the translated READMEs

Game Dev Studio was the last picker row wide enough to wrap an 80-column
terminal, which shifts the list as you arrow onto it. The engine list
stays in the README tables, where there is room for it.

The Chinese and Vietnamese READMEs have their own structure rather than
being a translation of the current English one, so this only touches the
two parts that had gone stale against the installer: the opening
positioning line and the module table. Both tables now match the English
one - installer descriptions, full module names instead of letter codes,
and BMad Loop, which none of the three had.

The translated prose needs a native reviewer before release.
2026-08-03 19:54:31 -05:00

6.1 KiB
Raw Blame History

BMad Method

Version License: MIT Node.js Version Discord

Agile Ai Driven Development(敏捷 AI 驱动开发) —— Ai Driven DevelopmentAiDD)关注的不只是代码,还包括做什么、如何组织,以及在认知变化时如何调整。BMad Method 是实践 AiDD 的敏捷方式:决策保持显式,上下文持续传递,流程随工作量自动调整。同一套方法既适用于周末原型,也适用于有多年历史的系统。

100% 免费且开源。 没有付费墙,没有封闭内容,也没有封闭 Discord。我们希望每个人都能平等获得高质量的人机协作开发方法。

为什么选择 BMad 方法?

传统 AI 工具常常替你思考,结果往往止于“能用”。BMad 通过专业智能体和引导式工作流,让 AI 成为协作者:流程有结构,决策有依据,产出更稳定。

  • AI 智能引导 —— 随时调用 bmad-help 获取下一步建议
  • 规模与领域自适应 —— 按项目复杂度自动调整规划深度
  • 结构化工作流 —— 覆盖分析、规划、架构、实施全流程
  • 专业角色智能体 —— 提供 PM、架构师、开发者、UX 等 12+ 角色
  • 派对模式 —— 多个智能体可在同一会话协作讨论
  • 完整生命周期 —— 从头脑风暴一路到交付上线

docs.bmad-method.org 了解更多


🚀 BMad 的下一步是什么?

V6 已经上线,而这只是开始。 BMad 仍在快速演进:跨平台智能体团队与子智能体集成、Skills 架构、BMad Builder v1、Dev Loop 自动化等能力都在持续推进。

📍 查看完整路线图 →


快速开始

先决条件Node.js v20+

npx bmad-method install

想体验最新预发布版本?可使用 npx bmad-method@next install。它比默认版本更新更快,也可能更容易发生变化。

按照安装程序提示操作,然后在项目文件夹中打开你的 AI IDEClaude Code、Cursor 等)。

非交互式安装(用于 CI/CD):

npx bmad-method install --directory /path/to/project --modules bmm --tools claude-code --yes

不确定下一步? 直接问 bmad-help。它会告诉你“必做什么、可选什么”,例如:bmad-help 我刚完成架构设计,接下来做什么?

模块

BMad 可通过官方模块扩展到不同专业场景。你可以在安装时选择,也可以后续随时补装。

模块 用途
BMad Method 规划并交付软件,覆盖全新原型到成熟代码库
BMad Builder 技能、工作流与智能体构建器
BMad Creative Intelligence Suite 创意思考伙伴:创新、设计思维与叙事
BMad Test Architect 面向 BMad Method 的企业级测试扩展模块
BMad Loop 无人值守地构建、验证并复盘整个 Epic
BMad Game Dev Studio 构思、设计并开发游戏,支持任意框架,包括 Unity、Unreal、Godot 与 Phaser

文档

BMad 方法文档站点 — 教程、指南、概念和参考

快速链接:

社区

支持 BMad

BMad 对所有人免费,而且会一直免费。如果你愿意支持项目发展:

  • 给仓库点个 Star
  • 请我喝咖啡 — 为开发提供动力
  • 🏢 企业赞助 — 在 Discord 上私信
  • 🎤 演讲与媒体 — 可参加会议、播客、采访(在 Discord 上联系 BM)

贡献

我们欢迎贡献!请参阅 CONTRIBUTING.md 了解指南。

许可证

MIT 许可证 — 详见 LICENSE


BMadBMAD-METHOD 是 BMad Code, LLC 的商标。详见 TRADEMARK.md

Contributors

请参阅 CONTRIBUTORS.md 了解贡献者信息。