bmad-method 6.11.1-next.26 → 6.11.1-next.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/.claude-plugin/marketplace.json +1 -1
  2. package/README.md +9 -14
  3. package/README_CN.md +0 -10
  4. package/README_VN.md +0 -10
  5. package/package.json +1 -1
  6. package/src/bmm-skills/module-help.csv +1 -1
  7. package/src/bmm-skills/plan/bmad-sprint-planning/scripts/__pycache__/sprint_plan.cpython-311.pyc +0 -0
  8. package/src/bmm-skills/plan/bmad-sprint-planning/scripts/tests/__pycache__/test_sprint_plan.cpython-311-pytest-9.1.1.pyc +0 -0
  9. package/src/bmm-skills/ship/bmad-retrospective/scripts/__pycache__/sprint_status.cpython-311.pyc +0 -0
  10. package/src/bmm-skills/ship/bmad-retrospective/scripts/tests/__pycache__/test_git_evidence.cpython-311-pytest-9.1.1.pyc +0 -0
  11. package/src/bmm-skills/ship/bmad-retrospective/scripts/tests/__pycache__/test_sprint_status.cpython-311-pytest-9.1.1.pyc +0 -0
  12. package/src/bmm-skills/ship/{bmad-checkpoint-preview → bmad-walkthrough}/SKILL.md +3 -3
  13. package/src/bmm-skills/ship/{bmad-checkpoint-preview → bmad-walkthrough}/customize.toml +1 -1
  14. package/src/bmm-skills/v6-shims/README.md +1 -0
  15. package/src/bmm-skills/v6-shims/bmad-checkpoint-preview/SKILL.md +21 -0
  16. package/src/scripts/__pycache__/config_utils.cpython-311.pyc +0 -0
  17. package/src/scripts/resolve_config.py +9 -1
  18. package/src/scripts/tests/__pycache__/test_config_utils.cpython-311.pyc +0 -0
  19. package/src/scripts/tests/__pycache__/test_resolve_config.cpython-311.pyc +0 -0
  20. package/src/scripts/tests/__pycache__/test_resolve_customization.cpython-311.pyc +0 -0
  21. package/src/scripts/tests/test_resolve_config.py +28 -0
  22. package/tools/validate-published-implementation-model.mjs +1 -1
  23. /package/src/bmm-skills/ship/{bmad-checkpoint-preview → bmad-walkthrough}/generate-trail.md +0 -0
  24. /package/src/bmm-skills/ship/{bmad-checkpoint-preview → bmad-walkthrough}/step-01-orientation.md +0 -0
  25. /package/src/bmm-skills/ship/{bmad-checkpoint-preview → bmad-walkthrough}/step-02-walkthrough.md +0 -0
  26. /package/src/bmm-skills/ship/{bmad-checkpoint-preview → bmad-walkthrough}/step-03-detail-pass.md +0 -0
  27. /package/src/bmm-skills/ship/{bmad-checkpoint-preview → bmad-walkthrough}/step-04-testing.md +0 -0
  28. /package/src/bmm-skills/ship/{bmad-checkpoint-preview → bmad-walkthrough}/step-05-wrapup.md +0 -0
@@ -34,11 +34,11 @@
34
34
  "./src/bmm-skills/plan/bmad-sprint-planning",
35
35
  "./src/bmm-skills/plan/bmad-ux",
36
36
  "./src/bmm-skills/ship/bmad-build",
37
- "./src/bmm-skills/ship/bmad-checkpoint-preview",
38
37
  "./src/bmm-skills/ship/bmad-code-review",
39
38
  "./src/bmm-skills/ship/bmad-correct-course",
40
39
  "./src/bmm-skills/ship/bmad-qa-generate-e2e-tests",
41
40
  "./src/bmm-skills/ship/bmad-retrospective",
41
+ "./src/bmm-skills/ship/bmad-walkthrough",
42
42
  "./src/core-skills/bmad-advanced-elicitation",
43
43
  "./src/core-skills/bmad-brainstorming",
44
44
  "./src/core-skills/bmad-customize",
package/README.md CHANGED
@@ -1,5 +1,10 @@
1
1
  ![BMad Method](banner-bmad-method.png)
2
2
 
3
+
4
+ [![Version](https://img.shields.io/npm/v/bmad-method?color=blue&label=version)](https://www.npmjs.com/package/bmad-method)
5
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
6
+ [![Discord](https://img.shields.io/badge/Discord-Join%20Community-7289da?logo=discord&logoColor=white)](https://discord.gg/gk8jAdXWmj)
7
+
3
8
  **Agile Ai Driven Development — turn an idea or change request into working software without giving up the thinking.**
4
9
 
5
10
  Ai Driven Development (AiDD) covers the whole effort, not only the code: what to build, how it holds together, and how it changes as you learn. BMad Method is the agile way to do it — decisions stay explicit, context carries forward, and the process sizes itself to the work. Small changes go straight to build. Complex work gets the depth it needs. The same method covers a weekend prototype and a system with years of history behind it.
@@ -18,11 +23,11 @@ npx bmad-method install
18
23
 
19
24
  Open your project in your AI coding tool, invoke `bmad-build` with what you want to change, and keep making the decisions that matter. Run `bmad-help` whenever you want guidance on what comes next or what is optional.
20
25
 
21
- **[Build your first project with BMad →](https://docs.bmad-method.org/tutorials/getting-started/)**
26
+ **[Build your first project with BMad →](https://docs.bmad-method.org/start/build-your-first-change/)**
22
27
 
23
28
  **[Add BMad to an existing codebase →](https://docs.bmad-method.org/how-to/established-projects/)**
24
29
 
25
- BMad is free and open source, with no paywalled workflows or gated community. For prerelease builds, CI/CD, configuration overrides, and non-interactive setup, see the [installation guide](https://docs.bmad-method.org/how-to/install-bmad/).
30
+ BMad is free and open source, with no paywalled workflows or gated community. For installation prerequisites, updates, prerelease builds, and the installer's live automation help, see the [installation guide](https://docs.bmad-method.org/start/install-bmad/).
26
31
 
27
32
  ## Why BMad?
28
33
 
@@ -56,15 +61,11 @@ Install the core method or add official modules for specialized work.
56
61
 
57
62
  ## Documentation
58
63
 
59
- - **[Getting Started](https://docs.bmad-method.org/tutorials/getting-started/)** — Install BMad and build a small project.
64
+ - **[Build Your First Change](https://docs.bmad-method.org/start/build-your-first-change/)** — Install BMad and build a small project.
60
65
  - **[Workflow Map](https://docs.bmad-method.org/reference/workflow-map/)** — Understand the available paths and outputs.
61
66
  - **[Established Projects](https://docs.bmad-method.org/how-to/established-projects/)** — Add BMad to an existing codebase.
62
67
  - **[Upgrade to V6](https://docs.bmad-method.org/how-to/upgrade-to-v6/)** — Migrate from an earlier version.
63
68
 
64
- ## Roadmap
65
-
66
- See what is in progress and what is planned on the [public roadmap](https://docs.bmad-method.org/roadmap/).
67
-
68
69
  ## Community
69
70
 
70
71
  - [Discord](https://discord.gg/gk8jAdXWmj) — Get help, share ideas, and collaborate.
@@ -85,10 +86,4 @@ MIT License — see [LICENSE](LICENSE) for details.
85
86
 
86
87
  **BMad** and **BMAD-METHOD** are trademarks of BMad Code, LLC. See [TRADEMARK.md](TRADEMARK.md) for details.
87
88
 
88
- [![Contributors](https://contrib.rocks/image?repo=bmad-code-org/BMAD-METHOD)](https://github.com/bmad-code-org/BMAD-METHOD/graphs/contributors)
89
-
90
- See [CONTRIBUTORS.md](CONTRIBUTORS.md) for contributor information.
91
-
92
- [![Version](https://img.shields.io/npm/v/bmad-method?color=blue&label=version)](https://www.npmjs.com/package/bmad-method)
93
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
94
- [![Discord](https://img.shields.io/badge/Discord-Join%20Community-7289da?logo=discord&logoColor=white)](https://discord.gg/gk8jAdXWmj)
89
+ If you would like to contribute, join us in the discord and read [CONTRIBUTORS.md](CONTRIBUTORS.md) first.
package/README_CN.md CHANGED
@@ -24,14 +24,6 @@
24
24
 
25
25
  ---
26
26
 
27
- ## 🚀 BMad 的下一步是什么?
28
-
29
- **V6 已经上线,而这只是开始。** BMad 仍在快速演进:跨平台智能体团队与子智能体集成、Skills 架构、BMad Builder v1、Dev Loop 自动化等能力都在持续推进。
30
-
31
- **[📍 查看完整路线图 →](https://docs.bmad-method.org/zh-cn/roadmap/)**
32
-
33
- ---
34
-
35
27
  ## 快速开始
36
28
 
37
29
  **先决条件**:[Node.js](https://nodejs.org) v20+
@@ -103,6 +95,4 @@ MIT 许可证 — 详见 [LICENSE](LICENSE)。
103
95
 
104
96
  **BMad** 和 **BMAD-METHOD** 是 BMad Code, LLC 的商标。详见 [TRADEMARK.md](TRADEMARK.md)。
105
97
 
106
- [![Contributors](https://contrib.rocks/image?repo=bmad-code-org/BMAD-METHOD)](https://github.com/bmad-code-org/BMAD-METHOD/graphs/contributors)
107
-
108
98
  请参阅 [CONTRIBUTORS.md](CONTRIBUTORS.md) 了解贡献者信息。
package/README_VN.md CHANGED
@@ -28,14 +28,6 @@ Các công cụ AI truyền thống thường làm thay phần suy nghĩ của b
28
28
 
29
29
  ---
30
30
 
31
- ## 🚀 Điều gì tiếp theo cho BMad?
32
-
33
- **V6 đã có mặt và đây mới chỉ là khởi đầu!** BMad Method đang phát triển rất nhanh với các cải tiến như đội agent đa nền tảng và tích hợp sub-agent, kiến trúc Skills, BMad Builder v1, tự động hóa vòng lặp phát triển và nhiều thứ khác vẫn đang được xây dựng.
34
-
35
- **[📍 Xem lộ trình đầy đủ →](https://docs.bmad-method.org/vi-vn/roadmap/)**
36
-
37
- ---
38
-
39
31
  ## Bắt đầu nhanh
40
32
 
41
33
  **Điều kiện tiên quyết**: [Node.js](https://nodejs.org) v20+ · [Python](https://www.python.org) 3.10+ · [uv](https://docs.astral.sh/uv/)
@@ -104,6 +96,4 @@ Giấy phép MIT - xem [LICENSE](LICENSE) để biết chi tiết.
104
96
 
105
97
  **BMad** và **BMAD-METHOD** là các nhãn hiệu của BMad Code, LLC. Xem [TRADEMARK.md](TRADEMARK.md) để biết chi tiết.
106
98
 
107
- [![Contributors](https://contrib.rocks/image?repo=bmad-code-org/BMAD-METHOD)](https://github.com/bmad-code-org/BMAD-METHOD/graphs/contributors)
108
-
109
99
  Xem [CONTRIBUTORS.md](CONTRIBUTORS.md) để biết thông tin về những người đóng góp.
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "$schema": "https://json.schemastore.org/package.json",
3
3
  "name": "bmad-method",
4
- "version": "6.11.1-next.26",
4
+ "version": "6.11.1-next.28",
5
5
  "description": "Breakthrough Method of Agile AI-driven Development",
6
6
  "keywords": [
7
7
  "agile",
@@ -14,6 +14,6 @@ BMad Method,bmad-create-epics-and-stories,Create Epics and Stories,CE,Break the
14
14
  BMad Method,bmad-sprint-planning,Sprint Planning,SP,"Checks the planning is complete enough to implement (PASS/CONCERNS/FAIL), then generates the sprint status file that implementation agents follow for every story.",,,plan,,,true,implementation_artifacts,sprint status
15
15
  BMad Method,bmad-sprint-planning,Sprint Status,SS,"Summarize sprint progress at any time: risks, open action items, and the recommended next action. Can also validate or repair the tracking file.",status,,anytime,,,false,,status summary
16
16
  BMad Method,bmad-code-review,Code Review,CR,Ad hoc review of any code change. An optional extra check after Build's built-in review.,,,ship,bmad-build,,false,,
17
- BMad Method,bmad-checkpoint-preview,Checkpoint,CK,"Guided walkthrough of a change, from purpose and context into details. Use for human review of commits, branches, or PRs.",,,ship,,,false,,
17
+ BMad Method,bmad-walkthrough,Walkthrough,WT,"Guided walkthrough of a change, from purpose and context into details. Use for human review of commits, branches, or PRs.",,,ship,,,false,,
18
18
  BMad Method,bmad-qa-generate-e2e-tests,QA Automation Test,QA,Generate automated API and end-to-end tests for implemented code. Not for code review or story validation — use Code Review for that.,,,ship,bmad-build,,false,implementation_artifacts,test suite
19
19
  BMad Method,bmad-retrospective,Retrospective,ER,"Optional at the end of an epic: review the completed work and lessons learned, and look ahead to the next epic. If major issues surfaced, consider Correct Course.",,,ship,bmad-code-review,,false,implementation_artifacts,retrospective
@@ -1,9 +1,9 @@
1
1
  ---
2
- name: bmad-checkpoint-preview
3
- description: 'Walk the user through reviewing a change: what it is for, what to look at closely, and how to test it. Use when the user says "checkpoint", "human review", or "walk me through this change"'
2
+ name: bmad-walkthrough
3
+ description: 'Walk the user through reviewing a change: what it is for, what to look at closely, and how to test it. Use when the user says "walkthrough", "walk me through this change", or "human review"'
4
4
  ---
5
5
 
6
- # Checkpoint Review Workflow
6
+ # Walkthrough Workflow
7
7
 
8
8
  **Goal:** Guide a human through reviewing a change — from purpose and context into details.
9
9
 
@@ -1,6 +1,6 @@
1
1
  # DO NOT EDIT -- overwritten on every update.
2
2
  #
3
- # Workflow customization surface for bmad-checkpoint-preview. Mirrors the
3
+ # Workflow customization surface for bmad-walkthrough. Mirrors the
4
4
  # agent customization shape under the [workflow] namespace.
5
5
 
6
6
  [workflow]
@@ -18,6 +18,7 @@ stated intent and pre-resolved customization fields so the target skips its own
18
18
  | `bmad-domain-research` | `bmad-deep-recon` (domain type) |
19
19
  | `bmad-technical-research` | `bmad-deep-recon` (technical type) |
20
20
  | `bmad-sprint-status` | `bmad-sprint-planning` (status view) |
21
+ | `bmad-checkpoint-preview` | `bmad-walkthrough` |
21
22
 
22
23
  Enterprise users may still depend on these IDs, so they ship by default. Removal rides the
23
24
  v7 cut — never a 6.x minor.
@@ -0,0 +1,21 @@
1
+ ---
2
+ name: bmad-checkpoint-preview
3
+ description: "Deprecated: forwards to bmad-walkthrough. Do not use unless invoked by name"
4
+ metadata:
5
+ lifecycle: shim
6
+ ---
7
+
8
+ # Deprecated Walkthrough Alias
9
+
10
+ ## On Activation
11
+
12
+ 1. Check whether either legacy customization file exists:
13
+ - `{project-root}/_bmad/custom/bmad-checkpoint-preview.toml`
14
+ - `{project-root}/_bmad/custom/bmad-checkpoint-preview.user.toml`
15
+ 2. If neither legacy file exists, output exactly `bmad-checkpoint-preview is deprecated. Redirecting to bmad-walkthrough. Please use bmad-walkthrough in the future.`, invoke `bmad-walkthrough` exactly once with the user's original input verbatim, then execute no further steps in this shim.
16
+ 3. For every legacy file that exists, use its matching new filename:
17
+ - `{project-root}/_bmad/custom/bmad-checkpoint-preview.toml` becomes `{project-root}/_bmad/custom/bmad-walkthrough.toml`.
18
+ - `{project-root}/_bmad/custom/bmad-checkpoint-preview.user.toml` becomes `{project-root}/_bmad/custom/bmad-walkthrough.user.toml`.
19
+ 4. If the matching new file does not exist, tell the user that the customization file uses the deprecated name and offer to rename it. Rename it only after explicit approval. If approval is declined or unavailable, or the rename fails, HALT and do not invoke any skill.
20
+ 5. If the matching new file already exists, do not overwrite it. Read both files, explain their differences, and propose the exact content for the new file. Resolve conflicting values with the user. Only after the user explicitly approves that content, save and verify the new file, then remove the legacy file. If approval is declined or unavailable, or any operation fails, HALT and do not invoke any skill.
21
+ 6. After every detected legacy file has been migrated successfully and no legacy file remains, output exactly `bmad-checkpoint-preview is deprecated. Redirecting to bmad-walkthrough. Please use bmad-walkthrough in the future.`, invoke `bmad-walkthrough` exactly once with the user's original input verbatim, then execute no further steps in this shim.
@@ -34,6 +34,14 @@ def extract_key(data, dotted_key: str):
34
34
  return current
35
35
 
36
36
 
37
+ def write_json_stdout(output) -> None:
38
+ """Pin stdout to UTF-8 — a Windows cp1252 default cannot encode emoji icons."""
39
+ reconfigure = getattr(sys.stdout, "reconfigure", None)
40
+ if reconfigure is not None:
41
+ reconfigure(encoding="utf-8")
42
+ sys.stdout.write(json.dumps(output, indent=2, ensure_ascii=False) + "\n")
43
+
44
+
37
45
  def main() -> int:
38
46
  parser = argparse.ArgumentParser(
39
47
  description="Resolve BMad central config using four-layer TOML merge."
@@ -66,7 +74,7 @@ def main() -> int:
66
74
  value = extract_key(merged, key)
67
75
  if value is not _MISSING:
68
76
  output[key] = value
69
- sys.stdout.write(json.dumps(output, indent=2, ensure_ascii=False) + "\n")
77
+ write_json_stdout(output)
70
78
  return 0
71
79
 
72
80
 
@@ -1,4 +1,5 @@
1
1
  import json
2
+ import os
2
3
  import shutil
3
4
  import subprocess
4
5
  import sys
@@ -74,6 +75,33 @@ class ResolveConfigCliTests(unittest.TestCase):
74
75
  self.assertNotEqual(result.returncode, 0)
75
76
  self.assertIn("failed to parse", result.stderr)
76
77
 
78
+ def test_writes_emoji_json_when_stdout_encoding_is_cp1252(self):
79
+ with tempfile.TemporaryDirectory() as temp_dir:
80
+ root = Path(temp_dir)
81
+ (root / "_bmad").mkdir(parents=True)
82
+ (root / "_bmad" / "config.toml").write_text(
83
+ '[agents]\nname = "Analyst"\nicon = "📊"\n',
84
+ encoding="utf-8",
85
+ )
86
+
87
+ env = os.environ.copy()
88
+ env["PYTHONIOENCODING"] = "cp1252"
89
+ result = subprocess.run(
90
+ [sys.executable, str(SCRIPT), "--project-root", str(root)],
91
+ stdout=subprocess.PIPE,
92
+ stderr=subprocess.PIPE,
93
+ env=env,
94
+ check=False,
95
+ )
96
+
97
+ stderr = result.stderr.decode("utf-8", errors="replace")
98
+ self.assertEqual(result.returncode, 0, msg=stderr)
99
+
100
+ output = result.stdout.decode("utf-8")
101
+ self.assertIn("📊", output)
102
+ resolved = json.loads(output)
103
+ self.assertEqual(resolved["agents"]["icon"], "📊")
104
+
77
105
  @staticmethod
78
106
  def _run(root: Path, *args: str) -> subprocess.CompletedProcess[str]:
79
107
  return subprocess.run(
@@ -1,7 +1,7 @@
1
1
  import fs from 'node:fs';
2
2
  import path from 'node:path';
3
3
 
4
- const CANONICAL_LLMS_ENTRY = '**[Build]';
4
+ const CANONICAL_LLMS_ENTRY = '**[Build a Change]';
5
5
  const CANONICAL_LLMS_DESCRIPTION = 'Canonical implementation workflow for direct intent and fully planned work';
6
6
 
7
7
  const FORBIDDEN_TERMS = [