bmad-method 6.0.5-next.8 → 6.1.0

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 (262) hide show
  1. package/package.json +1 -1
  2. package/src/bmm/agents/analyst.agent.yaml +1 -1
  3. package/src/bmm/module-help.csv +1 -1
  4. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +1 -1
  5. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +1 -1
  6. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +1 -1
  7. package/src/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +1 -1
  8. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02-discovery.md +1 -1
  9. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02b-vision.md +1 -1
  10. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-02c-executive-summary.md +1 -1
  11. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-03-success.md +1 -1
  12. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-04-journeys.md +1 -1
  13. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-05-domain.md +1 -1
  14. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-06-innovation.md +1 -1
  15. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-07-project-type.md +1 -1
  16. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-08-scoping.md +1 -1
  17. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-09-functional.md +1 -1
  18. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-10-nonfunctional.md +1 -1
  19. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-c/step-11-polish.md +1 -1
  20. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-e/step-e-01-discovery.md +1 -1
  21. package/src/bmm/workflows/2-plan-workflows/create-prd/steps-v/step-v-01-discovery.md +1 -1
  22. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +1 -1
  23. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +2 -2
  24. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +2 -2
  25. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +2 -2
  26. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +2 -2
  27. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +2 -2
  28. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +2 -2
  29. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +2 -2
  30. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +2 -2
  31. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +2 -2
  32. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +2 -2
  33. package/src/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +2 -2
  34. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +2 -2
  35. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +2 -2
  36. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +2 -2
  37. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +2 -2
  38. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +2 -2
  39. package/src/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +2 -2
  40. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +31 -13
  41. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +1 -1
  42. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +6 -2
  43. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +1 -1
  44. package/src/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +4 -0
  45. package/src/bmm/workflows/4-implementation/code-review/workflow.md +4 -7
  46. package/src/bmm/workflows/bmad-quick-flow/bmad-quick-dev-new-preview/workflow.md +0 -4
  47. package/src/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +1 -1
  48. package/src/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +1 -1
  49. package/src/bmm/workflows/generate-project-context/steps/step-02-generate.md +1 -1
  50. package/src/core/module-help.csv +2 -2
  51. package/src/core/workflows/bmad-brainstorming/SKILL.md +6 -0
  52. package/src/core/workflows/bmad-brainstorming/bmad-skill-manifest.yaml +1 -0
  53. package/src/core/workflows/{brainstorming → bmad-brainstorming}/workflow.md +2 -5
  54. package/src/core/workflows/bmad-party-mode/SKILL.md +6 -0
  55. package/src/core/workflows/bmad-party-mode/bmad-skill-manifest.yaml +1 -0
  56. package/src/core/workflows/{party-mode → bmad-party-mode}/steps/step-03-graceful-exit.md +0 -1
  57. package/src/core/workflows/{party-mode → bmad-party-mode}/workflow.md +0 -4
  58. package/tools/cli/external-official-modules.yaml +18 -18
  59. package/tools/cli/installers/lib/core/installer.js +25 -8
  60. package/tools/cli/installers/lib/ide/_base-ide.js +0 -1
  61. package/tools/cli/installers/lib/ide/_config-driven.js +9 -4
  62. package/tools/cli/installers/lib/ide/manager.js +3 -3
  63. package/tools/cli/lib/agent/compiler.js +1 -1
  64. package/.augment/code_review_guidelines.yaml +0 -231
  65. package/.coderabbit.yaml +0 -85
  66. package/.github/CODE_OF_CONDUCT.md +0 -128
  67. package/.github/FUNDING.yaml +0 -15
  68. package/.github/ISSUE_TEMPLATE/bug-report.yaml +0 -124
  69. package/.github/ISSUE_TEMPLATE/config.yaml +0 -8
  70. package/.github/ISSUE_TEMPLATE/documentation.yaml +0 -55
  71. package/.github/ISSUE_TEMPLATE/feature-request.md +0 -22
  72. package/.github/ISSUE_TEMPLATE/issue.md +0 -32
  73. package/.github/PULL_REQUEST_TEMPLATE.md +0 -13
  74. package/.github/scripts/discord-helpers.sh +0 -34
  75. package/.github/workflows/coderabbit-review.yaml +0 -22
  76. package/.github/workflows/discord.yaml +0 -90
  77. package/.github/workflows/docs.yaml +0 -64
  78. package/.github/workflows/publish.yaml +0 -133
  79. package/.github/workflows/quality.yaml +0 -116
  80. package/.husky/pre-commit +0 -20
  81. package/.markdownlint-cli2.yaml +0 -41
  82. package/.nvmrc +0 -1
  83. package/.prettierignore +0 -12
  84. package/.vscode/settings.json +0 -96
  85. package/CHANGELOG.md +0 -1785
  86. package/CNAME +0 -1
  87. package/CONTRIBUTING.md +0 -176
  88. package/CONTRIBUTORS.md +0 -32
  89. package/SECURITY.md +0 -85
  90. package/TRADEMARK.md +0 -55
  91. package/Wordmark.png +0 -0
  92. package/banner-bmad-method.png +0 -0
  93. package/docs/404.md +0 -9
  94. package/docs/_STYLE_GUIDE.md +0 -370
  95. package/docs/explanation/advanced-elicitation.md +0 -49
  96. package/docs/explanation/adversarial-review.md +0 -59
  97. package/docs/explanation/brainstorming.md +0 -33
  98. package/docs/explanation/established-projects-faq.md +0 -50
  99. package/docs/explanation/party-mode.md +0 -59
  100. package/docs/explanation/preventing-agent-conflicts.md +0 -112
  101. package/docs/explanation/project-context.md +0 -157
  102. package/docs/explanation/quick-dev-new-preview.md +0 -73
  103. package/docs/explanation/quick-flow.md +0 -77
  104. package/docs/explanation/why-solutioning-matters.md +0 -77
  105. package/docs/how-to/customize-bmad.md +0 -172
  106. package/docs/how-to/established-projects.md +0 -117
  107. package/docs/how-to/get-answers-about-bmad.md +0 -138
  108. package/docs/how-to/install-bmad.md +0 -116
  109. package/docs/how-to/non-interactive-installation.md +0 -171
  110. package/docs/how-to/project-context.md +0 -136
  111. package/docs/how-to/quick-fixes.md +0 -123
  112. package/docs/how-to/shard-large-documents.md +0 -78
  113. package/docs/how-to/upgrade-to-v6.md +0 -100
  114. package/docs/index.md +0 -60
  115. package/docs/reference/agents.md +0 -28
  116. package/docs/reference/commands.md +0 -145
  117. package/docs/reference/modules.md +0 -76
  118. package/docs/reference/testing.md +0 -106
  119. package/docs/reference/workflow-map.md +0 -89
  120. package/docs/roadmap.mdx +0 -136
  121. package/docs/tutorials/getting-started.md +0 -275
  122. package/docs/zh-cn/404.md +0 -9
  123. package/docs/zh-cn/_STYLE_GUIDE.md +0 -370
  124. package/docs/zh-cn/explanation/advanced-elicitation.md +0 -62
  125. package/docs/zh-cn/explanation/adversarial-review.md +0 -71
  126. package/docs/zh-cn/explanation/brainstorming.md +0 -43
  127. package/docs/zh-cn/explanation/established-projects-faq.md +0 -60
  128. package/docs/zh-cn/explanation/party-mode.md +0 -79
  129. package/docs/zh-cn/explanation/preventing-agent-conflicts.md +0 -137
  130. package/docs/zh-cn/explanation/project-context.md +0 -176
  131. package/docs/zh-cn/explanation/quick-flow.md +0 -93
  132. package/docs/zh-cn/explanation/why-solutioning-matters.md +0 -90
  133. package/docs/zh-cn/how-to/customize-bmad.md +0 -182
  134. package/docs/zh-cn/how-to/established-projects.md +0 -134
  135. package/docs/zh-cn/how-to/get-answers-about-bmad.md +0 -144
  136. package/docs/zh-cn/how-to/install-bmad.md +0 -105
  137. package/docs/zh-cn/how-to/non-interactive-installation.md +0 -181
  138. package/docs/zh-cn/how-to/project-context.md +0 -152
  139. package/docs/zh-cn/how-to/quick-fixes.md +0 -140
  140. package/docs/zh-cn/how-to/shard-large-documents.md +0 -86
  141. package/docs/zh-cn/how-to/upgrade-to-v6.md +0 -120
  142. package/docs/zh-cn/index.md +0 -69
  143. package/docs/zh-cn/reference/agents.md +0 -41
  144. package/docs/zh-cn/reference/commands.md +0 -166
  145. package/docs/zh-cn/reference/modules.md +0 -94
  146. package/docs/zh-cn/reference/testing.md +0 -122
  147. package/docs/zh-cn/reference/workflow-map.md +0 -104
  148. package/docs/zh-cn/roadmap.mdx +0 -152
  149. package/docs/zh-cn/tutorials/getting-started.md +0 -300
  150. package/eslint.config.mjs +0 -141
  151. package/prettier.config.mjs +0 -32
  152. package/src/core/workflows/brainstorming/bmad-skill-manifest.yaml +0 -3
  153. package/src/core/workflows/party-mode/bmad-skill-manifest.yaml +0 -3
  154. package/test/README.md +0 -295
  155. package/test/adversarial-review-tests/README.md +0 -56
  156. package/test/adversarial-review-tests/sample-content.md +0 -46
  157. package/test/adversarial-review-tests/test-cases.yaml +0 -103
  158. package/test/fixtures/agent-schema/invalid/critical-actions/actions-as-string.agent.yaml +0 -27
  159. package/test/fixtures/agent-schema/invalid/critical-actions/empty-string-in-actions.agent.yaml +0 -30
  160. package/test/fixtures/agent-schema/invalid/menu/empty-menu.agent.yaml +0 -22
  161. package/test/fixtures/agent-schema/invalid/menu/missing-menu.agent.yaml +0 -20
  162. package/test/fixtures/agent-schema/invalid/menu-commands/empty-command-target.agent.yaml +0 -25
  163. package/test/fixtures/agent-schema/invalid/menu-commands/no-command-target.agent.yaml +0 -24
  164. package/test/fixtures/agent-schema/invalid/menu-triggers/camel-case.agent.yaml +0 -25
  165. package/test/fixtures/agent-schema/invalid/menu-triggers/compound-invalid-format.agent.yaml +0 -25
  166. package/test/fixtures/agent-schema/invalid/menu-triggers/compound-mismatched-kebab.agent.yaml +0 -25
  167. package/test/fixtures/agent-schema/invalid/menu-triggers/duplicate-triggers.agent.yaml +0 -31
  168. package/test/fixtures/agent-schema/invalid/menu-triggers/empty-trigger.agent.yaml +0 -25
  169. package/test/fixtures/agent-schema/invalid/menu-triggers/leading-asterisk.agent.yaml +0 -25
  170. package/test/fixtures/agent-schema/invalid/menu-triggers/snake-case.agent.yaml +0 -25
  171. package/test/fixtures/agent-schema/invalid/menu-triggers/trigger-with-spaces.agent.yaml +0 -25
  172. package/test/fixtures/agent-schema/invalid/metadata/empty-module-string.agent.yaml +0 -26
  173. package/test/fixtures/agent-schema/invalid/metadata/empty-name.agent.yaml +0 -24
  174. package/test/fixtures/agent-schema/invalid/metadata/extra-metadata-fields.agent.yaml +0 -27
  175. package/test/fixtures/agent-schema/invalid/metadata/missing-id.agent.yaml +0 -23
  176. package/test/fixtures/agent-schema/invalid/persona/empty-principles-array.agent.yaml +0 -24
  177. package/test/fixtures/agent-schema/invalid/persona/empty-string-in-principles.agent.yaml +0 -27
  178. package/test/fixtures/agent-schema/invalid/persona/extra-persona-fields.agent.yaml +0 -27
  179. package/test/fixtures/agent-schema/invalid/persona/missing-role.agent.yaml +0 -24
  180. package/test/fixtures/agent-schema/invalid/prompts/empty-content.agent.yaml +0 -29
  181. package/test/fixtures/agent-schema/invalid/prompts/extra-prompt-fields.agent.yaml +0 -31
  182. package/test/fixtures/agent-schema/invalid/prompts/missing-content.agent.yaml +0 -28
  183. package/test/fixtures/agent-schema/invalid/prompts/missing-id.agent.yaml +0 -28
  184. package/test/fixtures/agent-schema/invalid/top-level/empty-file.agent.yaml +0 -5
  185. package/test/fixtures/agent-schema/invalid/top-level/extra-top-level-keys.agent.yaml +0 -28
  186. package/test/fixtures/agent-schema/invalid/top-level/missing-agent-key.agent.yaml +0 -11
  187. package/test/fixtures/agent-schema/invalid/yaml-errors/invalid-indentation.agent.yaml +0 -19
  188. package/test/fixtures/agent-schema/invalid/yaml-errors/malformed-yaml.agent.yaml +0 -18
  189. package/test/fixtures/agent-schema/valid/critical-actions/empty-critical-actions.agent.yaml +0 -24
  190. package/test/fixtures/agent-schema/valid/critical-actions/no-critical-actions.agent.yaml +0 -22
  191. package/test/fixtures/agent-schema/valid/critical-actions/valid-critical-actions.agent.yaml +0 -27
  192. package/test/fixtures/agent-schema/valid/menu/multiple-menu-items.agent.yaml +0 -31
  193. package/test/fixtures/agent-schema/valid/menu/single-menu-item.agent.yaml +0 -22
  194. package/test/fixtures/agent-schema/valid/menu-commands/all-command-types.agent.yaml +0 -38
  195. package/test/fixtures/agent-schema/valid/menu-commands/multiple-commands.agent.yaml +0 -23
  196. package/test/fixtures/agent-schema/valid/menu-triggers/compound-triggers.agent.yaml +0 -31
  197. package/test/fixtures/agent-schema/valid/menu-triggers/kebab-case-triggers.agent.yaml +0 -34
  198. package/test/fixtures/agent-schema/valid/metadata/core-agent-with-module.agent.yaml +0 -24
  199. package/test/fixtures/agent-schema/valid/metadata/empty-module-name-in-path.agent.yaml +0 -24
  200. package/test/fixtures/agent-schema/valid/metadata/malformed-path-treated-as-core.agent.yaml +0 -24
  201. package/test/fixtures/agent-schema/valid/metadata/module-agent-correct.agent.yaml +0 -24
  202. package/test/fixtures/agent-schema/valid/metadata/module-agent-missing-module.agent.yaml +0 -23
  203. package/test/fixtures/agent-schema/valid/metadata/wrong-module-value.agent.yaml +0 -24
  204. package/test/fixtures/agent-schema/valid/persona/complete-persona.agent.yaml +0 -24
  205. package/test/fixtures/agent-schema/valid/prompts/empty-prompts.agent.yaml +0 -24
  206. package/test/fixtures/agent-schema/valid/prompts/no-prompts.agent.yaml +0 -22
  207. package/test/fixtures/agent-schema/valid/prompts/valid-prompts-minimal.agent.yaml +0 -28
  208. package/test/fixtures/agent-schema/valid/prompts/valid-prompts-with-description.agent.yaml +0 -30
  209. package/test/fixtures/agent-schema/valid/top-level/minimal-core-agent.agent.yaml +0 -24
  210. package/test/fixtures/file-refs-csv/invalid/all-empty-workflow.csv +0 -3
  211. package/test/fixtures/file-refs-csv/invalid/empty-data.csv +0 -1
  212. package/test/fixtures/file-refs-csv/invalid/no-workflow-column.csv +0 -3
  213. package/test/fixtures/file-refs-csv/invalid/unresolvable-vars.csv +0 -3
  214. package/test/fixtures/file-refs-csv/valid/bmm-style.csv +0 -3
  215. package/test/fixtures/file-refs-csv/valid/core-style.csv +0 -3
  216. package/test/fixtures/file-refs-csv/valid/minimal.csv +0 -2
  217. package/test/test-agent-schema.js +0 -387
  218. package/test/test-cli-integration.sh +0 -159
  219. package/test/test-file-refs-csv.js +0 -133
  220. package/test/test-install-to-bmad.js +0 -154
  221. package/test/test-installation-components.js +0 -1796
  222. package/test/test-rehype-plugins.mjs +0 -1050
  223. package/test/test-workflow-path-regex.js +0 -88
  224. package/test/unit-test-schema.js +0 -133
  225. package/tools/build-docs.mjs +0 -464
  226. package/tools/docs/_prompt-external-modules-page.md +0 -59
  227. package/tools/docs/fix-refs.md +0 -91
  228. package/tools/docs/native-skills-migration-checklist.md +0 -281
  229. package/tools/fix-doc-links.js +0 -285
  230. package/tools/validate-agent-schema.js +0 -110
  231. package/tools/validate-doc-links.js +0 -407
  232. package/tools/validate-file-refs.js +0 -556
  233. package/website/README.md +0 -75
  234. package/website/astro.config.mjs +0 -157
  235. package/website/public/diagrams/quick-dev-diagram.png +0 -0
  236. package/website/public/favicon.ico +0 -0
  237. package/website/public/img/bmad-dark.png +0 -0
  238. package/website/public/img/bmad-light.png +0 -0
  239. package/website/public/workflow-map-diagram.html +0 -361
  240. package/website/src/components/Banner.astro +0 -62
  241. package/website/src/components/Header.astro +0 -96
  242. package/website/src/components/MobileMenuFooter.astro +0 -33
  243. package/website/src/content/config.ts +0 -7
  244. package/website/src/content/i18n/zh-CN.json +0 -28
  245. package/website/src/lib/site-url.mjs +0 -25
  246. package/website/src/pages/404.astro +0 -11
  247. package/website/src/pages/robots.txt.ts +0 -48
  248. package/website/src/rehype-base-paths.js +0 -112
  249. package/website/src/rehype-markdown-links.js +0 -119
  250. package/website/src/styles/custom.css +0 -805
  251. /package/src/core/workflows/{brainstorming → bmad-brainstorming}/brain-methods.csv +0 -0
  252. /package/src/core/workflows/{brainstorming → bmad-brainstorming}/steps/step-01-session-setup.md +0 -0
  253. /package/src/core/workflows/{brainstorming → bmad-brainstorming}/steps/step-01b-continue.md +0 -0
  254. /package/src/core/workflows/{brainstorming → bmad-brainstorming}/steps/step-02a-user-selected.md +0 -0
  255. /package/src/core/workflows/{brainstorming → bmad-brainstorming}/steps/step-02b-ai-recommended.md +0 -0
  256. /package/src/core/workflows/{brainstorming → bmad-brainstorming}/steps/step-02c-random-selection.md +0 -0
  257. /package/src/core/workflows/{brainstorming → bmad-brainstorming}/steps/step-02d-progressive-flow.md +0 -0
  258. /package/src/core/workflows/{brainstorming → bmad-brainstorming}/steps/step-03-technique-execution.md +0 -0
  259. /package/src/core/workflows/{brainstorming → bmad-brainstorming}/steps/step-04-idea-organization.md +0 -0
  260. /package/src/core/workflows/{brainstorming → bmad-brainstorming}/template.md +0 -0
  261. /package/src/core/workflows/{party-mode → bmad-party-mode}/steps/step-01-agent-loading.md +0 -0
  262. /package/src/core/workflows/{party-mode → bmad-party-mode}/steps/step-02-discussion-orchestration.md +0 -0
@@ -1,157 +0,0 @@
1
- // @ts-check
2
- import { defineConfig } from 'astro/config';
3
- import starlight from '@astrojs/starlight';
4
- import sitemap from '@astrojs/sitemap';
5
- import rehypeMarkdownLinks from './src/rehype-markdown-links.js';
6
- import rehypeBasePaths from './src/rehype-base-paths.js';
7
- import { getSiteUrl } from './src/lib/site-url.mjs';
8
-
9
- const siteUrl = getSiteUrl();
10
- const urlParts = new URL(siteUrl);
11
- // Normalize basePath: ensure trailing slash so links can use `${BASE_URL}path`
12
- const basePath = urlParts.pathname === '/' ? '/' : urlParts.pathname.endsWith('/') ? urlParts.pathname : urlParts.pathname + '/';
13
-
14
- export default defineConfig({
15
- site: `${urlParts.origin}${basePath}`,
16
- base: basePath,
17
- outDir: '../build/site',
18
-
19
- // Disable aggressive caching in dev mode
20
- vite: {
21
- optimizeDeps: {
22
- force: true, // Always re-bundle dependencies
23
- },
24
- server: {
25
- watch: {
26
- usePolling: false, // Set to true if file changes aren't detected
27
- },
28
- },
29
- },
30
-
31
- markdown: {
32
- rehypePlugins: [
33
- [rehypeMarkdownLinks, { base: basePath }],
34
- [rehypeBasePaths, { base: basePath }],
35
- ],
36
- },
37
-
38
- integrations: [
39
- // Exclude custom 404 pages (all locales) from the sitemap — they are
40
- // treated as normal content docs by Starlight even with disable404Route.
41
- sitemap({
42
- filter: (page) => !/\/404(\/|$)/.test(new URL(page).pathname),
43
- }),
44
- starlight({
45
- title: 'BMAD Method',
46
- tagline: 'AI-driven agile development with specialized agents and workflows that scale from bug fixes to enterprise platforms.',
47
-
48
- // i18n: English as root (no URL prefix), Chinese at /zh-cn/
49
- defaultLocale: 'root',
50
- locales: {
51
- root: {
52
- label: 'English',
53
- lang: 'en',
54
- },
55
- 'zh-cn': {
56
- label: '简体中文',
57
- lang: 'zh-CN',
58
- },
59
- },
60
-
61
- logo: {
62
- light: './public/img/bmad-light.png',
63
- dark: './public/img/bmad-dark.png',
64
- alt: 'BMAD Method',
65
- replacesTitle: true,
66
- },
67
- favicon: '/favicon.ico',
68
-
69
- // Social links
70
- social: [
71
- { icon: 'discord', label: 'Discord', href: 'https://discord.gg/gk8jAdXWmj' },
72
- { icon: 'github', label: 'GitHub', href: 'https://github.com/bmad-code-org/BMAD-METHOD' },
73
- { icon: 'youtube', label: 'YouTube', href: 'https://www.youtube.com/@BMadCode' },
74
- ],
75
-
76
- // Show last updated timestamps
77
- lastUpdated: true,
78
-
79
- // Custom head tags for LLM discovery
80
- head: [
81
- {
82
- tag: 'meta',
83
- attrs: {
84
- name: 'ai-terms',
85
- content: `AI-optimized documentation: ${siteUrl}/llms-full.txt (plain text, ~100k tokens, complete BMAD reference). Index: ${siteUrl}/llms.txt`,
86
- },
87
- },
88
- {
89
- tag: 'meta',
90
- attrs: {
91
- name: 'llms-full',
92
- content: `${siteUrl}/llms-full.txt`,
93
- },
94
- },
95
- {
96
- tag: 'meta',
97
- attrs: {
98
- name: 'llms',
99
- content: `${siteUrl}/llms.txt`,
100
- },
101
- },
102
- ],
103
-
104
- // Custom CSS
105
- customCss: ['./src/styles/custom.css'],
106
-
107
- // Sidebar configuration (Diataxis structure)
108
- sidebar: [
109
- { label: 'Welcome', translations: { 'zh-CN': '欢迎' }, slug: 'index' },
110
- { label: 'Roadmap', translations: { 'zh-CN': '路线图' }, slug: 'roadmap' },
111
- {
112
- label: 'Tutorials',
113
- translations: { 'zh-CN': '教程' },
114
- collapsed: false,
115
- autogenerate: { directory: 'tutorials' },
116
- },
117
- {
118
- label: 'How-To Guides',
119
- translations: { 'zh-CN': '操作指南' },
120
- collapsed: true,
121
- autogenerate: { directory: 'how-to' },
122
- },
123
- {
124
- label: 'Explanation',
125
- translations: { 'zh-CN': '概念说明' },
126
- collapsed: true,
127
- autogenerate: { directory: 'explanation' },
128
- },
129
- {
130
- label: 'Reference',
131
- translations: { 'zh-CN': '参考' },
132
- collapsed: true,
133
- autogenerate: { directory: 'reference' },
134
- },
135
- // TEA docs moved to standalone module site; keep BMM sidebar focused.
136
- ],
137
-
138
- // Credits in footer
139
- credits: false,
140
-
141
- // Pagination
142
- pagination: false,
143
-
144
- // Use our docs/404.md instead of Starlight's built-in 404
145
- disable404Route: true,
146
-
147
- // Custom components
148
- components: {
149
- Header: './src/components/Header.astro',
150
- MobileMenuFooter: './src/components/MobileMenuFooter.astro',
151
- },
152
-
153
- // Table of contents
154
- tableOfContents: { minHeadingLevel: 2, maxHeadingLevel: 3 },
155
- }),
156
- ],
157
- });
Binary file
Binary file
Binary file
@@ -1,361 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8">
5
- <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
- <title>BMad Method Workflow Map</title>
7
- <style>
8
- :root {
9
- --analysis: #0ea5e9;
10
- --planning: #22c55e;
11
- --solutioning: #eab308;
12
- --implementation: #ef4444;
13
- --quickflow: #64748b;
14
- --bg: #0f172a;
15
- --card: #1e293b;
16
- --text: #f8fafc;
17
- --text-muted: #94a3b8;
18
- --border: #334155;
19
- --success: #10b981;
20
- --arrow: #f59e0b;
21
- }
22
- * { margin: 0; padding: 0; box-sizing: border-box; }
23
- body {
24
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
25
- background: var(--bg);
26
- color: var(--text);
27
- line-height: 1.4;
28
- padding: 12px;
29
- }
30
- .header { text-align: center; margin-bottom: 16px; }
31
- .header-badge {
32
- display: inline-flex; align-items: center; gap: 6px;
33
- background: linear-gradient(135deg, var(--analysis), var(--planning));
34
- padding: 4px 12px; border-radius: 20px;
35
- font-size: 0.75rem; font-weight: 600; margin-bottom: 8px;
36
- }
37
- h1 { font-size: 1.5rem; font-weight: 700; }
38
- .subtitle { color: var(--text-muted); font-size: 0.8rem; }
39
-
40
- .flow-legend {
41
- background: rgba(245, 158, 11, 0.1); border: 1px solid rgba(245, 158, 11, 0.3);
42
- border-radius: 8px; padding: 8px 12px; margin-bottom: 16px; text-align: center;
43
- font-size: 0.7rem; color: var(--arrow);
44
- }
45
-
46
- .flow-grid {
47
- display: grid;
48
- grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
49
- gap: 8px;
50
- margin-bottom: 16px;
51
- }
52
-
53
- .phase {
54
- background: var(--card);
55
- border-radius: 10px;
56
- border: 1px solid var(--border);
57
- border-top: 3px solid;
58
- }
59
- .phase.analysis { border-top-color: var(--analysis); }
60
- .phase.planning { border-top-color: var(--planning); }
61
- .phase.solutioning { border-top-color: var(--solutioning); }
62
- .phase.implementation { border-top-color: var(--implementation); }
63
-
64
- .phase-header { padding: 10px 12px 8px; border-bottom: 1px solid var(--border); display: flex; align-items: center; gap: 8px; }
65
- .phase-num { width: 22px; height: 22px; border-radius: 6px; display: flex; align-items: center; justify-content: center; font-size: 0.75rem; font-weight: 700; }
66
- .analysis .phase-num { background: var(--analysis); }
67
- .planning .phase-num { background: var(--planning); }
68
- .solutioning .phase-num { background: var(--solutioning); color: #000; }
69
- .implementation .phase-num { background: var(--implementation); }
70
- .phase-title { font-size: 0.95rem; font-weight: 700; }
71
- .phase-opt { font-size: 0.6rem; padding: 2px 6px; border-radius: 4px; background: rgba(14, 165, 233, 0.2); color: #7dd3fc; }
72
-
73
- .workflows { padding: 8px 10px; }
74
-
75
- .workflow {
76
- background: rgba(255,255,255,0.03); border-radius: 6px;
77
- padding: 8px; margin-bottom: 6px;
78
- font-size: 0.7rem;
79
- }
80
- .workflow-header {
81
- display: flex; justify-content: space-between; align-items: center;
82
- margin-bottom: 4px;
83
- }
84
- .workflow-name {
85
- font-family: monospace; color: var(--success);
86
- background: rgba(16, 185, 129, 0.1); padding: 2px 6px;
87
- border-radius: 3px; font-size: 0.65rem;
88
- }
89
- .workflow-meta { display: flex; justify-content: space-between; align-items: center; }
90
- .agent { display: flex; align-items: center; gap: 4px; }
91
- .agent-icon { width: 14px; height: 14px; border-radius: 3px; display: flex; align-items: center; justify-content: center; font-size: 0.55rem; font-weight: 700; }
92
- .agent-icon.mary { background: linear-gradient(135deg, #f472b6, #ec4899); }
93
- .agent-icon.john { background: linear-gradient(135deg, #60a5fa, #3b82f6); }
94
- .agent-icon.sally { background: linear-gradient(135deg, #fbbf24, #f59e0b); color: #000; }
95
- .agent-icon.winston { background: linear-gradient(135deg, #a78bfa, #8b5cf6); }
96
- .agent-icon.bob { background: linear-gradient(135deg, #34d399, #10b981); color: #000; }
97
- .agent-icon.amelia { background: linear-gradient(135deg, #fb7185, #ef4444); }
98
- .agent-icon.barry { background: linear-gradient(135deg, #94a3b8, #64748b); }
99
- .agent-name { font-size: 0.65rem; }
100
- .output { color: var(--success); font-family: monospace; font-size: 0.6rem; }
101
- .badge { font-size: 0.55rem; padding: 1px 4px; border-radius: 3px; }
102
- .badge.opt { background: rgba(251,191,36,0.15); color: #fbbf24; }
103
- .badge.iffy { background: rgba(168,85,247,0.15); color: #a855f7; }
104
- .badge.adhoc { background: rgba(59,130,246,0.15); color: #3b82f6; }
105
-
106
- .arrow { display: flex; align-items: center; justify-content: center; color: var(--arrow); font-size: 0.9rem; margin: 6px 0; }
107
-
108
- .decision { background: linear-gradient(135deg, #a855f7, #9333ea); padding: 4px 8px; border-radius: 4px; text-align: center; font-size: 0.65rem; font-weight: 600; margin: 6px 0; }
109
-
110
- .quickflow {
111
- background: rgba(100, 116, 139, 0.2); border: 2px dashed var(--quickflow);
112
- border-radius: 10px; padding: 12px; margin-bottom: 16px;
113
- }
114
- .quickflow-header { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; }
115
- .quickflow-header h2 { font-size: 0.95rem; }
116
- .quickflow-header span { font-size: 0.7rem; color: var(--text-muted); }
117
- .quickflow-body { display: flex; align-items: center; gap: 12px; }
118
- .quickflow-item { flex: 1; background: rgba(255,255,255,0.03); border-radius: 8px; padding: 10px; }
119
- .quickflow-item code { font-family: monospace; color: var(--success); background: rgba(16, 185, 129, 0.1); padding: 2px 6px; border-radius: 3px; font-size: 0.7rem; }
120
-
121
- .context { background: rgba(14, 165, 233, 0.08); border-radius: 10px; padding: 12px; font-size: 0.75rem; }
122
- .context-header { display: flex; align-items: center; gap: 8px; margin-bottom: 6px; font-weight: 600; }
123
- .context-items { display: flex; flex-wrap: wrap; gap: 6px; }
124
- .context-items code { font-family: monospace; color: var(--success); background: rgba(16, 185, 129, 0.1); padding: 2px 5px; border-radius: 3px; font-size: 0.65rem; }
125
- .context-items span { color: var(--text-muted); }
126
-
127
- .legend { display: flex; justify-content: center; gap: 12px; flex-wrap: wrap; font-size: 0.7rem; margin-top: 12px; }
128
- .legend-item { display: flex; align-items: center; gap: 4px; }
129
- .legend-dot { width: 12px; height: 3px; border-radius: 2px; }
130
- </style>
131
- </head>
132
- <body>
133
- <div class="header">
134
- <div class="header-badge">⚡ Workflow Map V6</div>
135
- <h1>BMad Method</h1>
136
- <p class="subtitle">Context engineering for AI-powered development</p>
137
- </div>
138
-
139
- <div class="flow-legend">→ arrows show artifact flow between workflows</div>
140
-
141
- <div class="flow-grid">
142
- <!-- Phase 1: Analysis -->
143
- <div class="phase analysis">
144
- <div class="phase-header">
145
- <div class="phase-num">1</div>
146
- <div class="phase-title">Analysis</div>
147
- <span class="phase-opt">Optional</span>
148
- </div>
149
- <div class="workflows">
150
- <div class="workflow">
151
- <div class="workflow-header">
152
- <span class="workflow-name">brainstorm</span>
153
- <span class="badge opt">opt</span>
154
- </div>
155
- <div class="workflow-meta">
156
- <div class="agent"><div class="agent-icon mary">M</div><span class="agent-name">Mary</span></div>
157
- <span class="output">brainstorming-report.md</span>
158
- </div>
159
- </div>
160
- <div class="workflow">
161
- <div class="workflow-header">
162
- <span class="workflow-name">research</span>
163
- <span class="badge opt">opt</span>
164
- </div>
165
- <div class="workflow-meta">
166
- <div class="agent"><div class="agent-icon mary">M</div><span class="agent-name">Mary</span></div>
167
- <span class="output">findings</span>
168
- </div>
169
- </div>
170
- <div class="workflow">
171
- <div class="workflow-header">
172
- <span class="workflow-name">create-product-brief</span>
173
- </div>
174
- <div class="workflow-meta">
175
- <div class="agent"><div class="agent-icon mary">M</div><span class="agent-name">Mary</span></div>
176
- <span class="output">product-brief.md →</span>
177
- </div>
178
- </div>
179
- </div>
180
- <div class="arrow">→</div>
181
- </div>
182
-
183
- <!-- Phase 2: Planning -->
184
- <div class="phase planning">
185
- <div class="phase-header">
186
- <div class="phase-num">2</div>
187
- <div class="phase-title">Planning</div>
188
- </div>
189
- <div class="workflows">
190
- <div class="workflow">
191
- <div class="workflow-header">
192
- <span class="workflow-name">create-prd</span>
193
- </div>
194
- <div class="workflow-meta">
195
- <div class="agent"><div class="agent-icon john">J</div><span class="agent-name">John</span></div>
196
- <span class="output">PRD.md →</span>
197
- </div>
198
- </div>
199
- <div class="decision">Has UI?</div>
200
- <div class="workflow">
201
- <div class="workflow-header">
202
- <span class="workflow-name">create-ux-design</span>
203
- <span class="badge iffy">if yes</span>
204
- </div>
205
- <div class="workflow-meta">
206
- <div class="agent"><div class="agent-icon sally">S</div><span class="agent-name">Sally</span></div>
207
- <span class="output">ux-spec.md →</span>
208
- </div>
209
- </div>
210
- </div>
211
- <div class="arrow">→</div>
212
- </div>
213
-
214
- <!-- Phase 3: Solutioning -->
215
- <div class="phase solutioning">
216
- <div class="phase-header">
217
- <div class="phase-num">3</div>
218
- <div class="phase-title">Solutioning</div>
219
- </div>
220
- <div class="workflows">
221
- <div class="workflow">
222
- <div class="workflow-header">
223
- <span class="workflow-name">create-architecture</span>
224
- </div>
225
- <div class="workflow-meta">
226
- <div class="agent"><div class="agent-icon winston">W</div><span class="agent-name">Winston</span></div>
227
- <span class="output">architecture.md →</span>
228
- </div>
229
- </div>
230
- <div class="workflow">
231
- <div class="workflow-header">
232
- <span class="workflow-name">create-epics-and-stories</span>
233
- </div>
234
- <div class="workflow-meta">
235
- <div class="agent"><div class="agent-icon john">J</div><span class="agent-name">John</span></div>
236
- <span class="output">epics.md →</span>
237
- </div>
238
- </div>
239
- <div class="workflow">
240
- <div class="workflow-header">
241
- <span class="workflow-name">check-implementation-readiness</span>
242
- </div>
243
- <div class="workflow-meta">
244
- <div class="agent"><div class="agent-icon john">J</div><span class="agent-name">John</span></div>
245
- <span class="output">gate check</span>
246
- </div>
247
- </div>
248
- </div>
249
- <div class="arrow">→</div>
250
- </div>
251
-
252
- <!-- Phase 4: Implementation -->
253
- <div class="phase implementation">
254
- <div class="phase-header">
255
- <div class="phase-num">4</div>
256
- <div class="phase-title">Implementation</div>
257
- </div>
258
- <div class="workflows">
259
- <div class="workflow">
260
- <div class="workflow-header">
261
- <span class="workflow-name">sprint-planning</span>
262
- </div>
263
- <div class="workflow-meta">
264
- <div class="agent"><div class="agent-icon bob">B</div><span class="agent-name">Bob</span></div>
265
- <span class="output">sprint-status.yaml →</span>
266
- </div>
267
- </div>
268
- <div class="workflow">
269
- <div class="workflow-header">
270
- <span class="workflow-name">create-story</span>
271
- </div>
272
- <div class="workflow-meta">
273
- <div class="agent"><div class="agent-icon bob">B</div><span class="agent-name">Bob</span></div>
274
- <span class="output">story-[slug].md →</span>
275
- </div>
276
- </div>
277
- <div class="workflow">
278
- <div class="workflow-header">
279
- <span class="workflow-name">dev-story</span>
280
- </div>
281
- <div class="workflow-meta">
282
- <div class="agent"><div class="agent-icon amelia">A</div><span class="agent-name">Amelia</span></div>
283
- <span class="output">code →</span>
284
- </div>
285
- </div>
286
- <div class="workflow">
287
- <div class="workflow-header">
288
- <span class="workflow-name">code-review</span>
289
- </div>
290
- <div class="workflow-meta">
291
- <div class="agent"><div class="agent-icon amelia">A</div><span class="agent-name">Amelia</span></div>
292
- <span class="output">approve</span>
293
- </div>
294
- </div>
295
- <div class="workflow">
296
- <div class="workflow-header">
297
- <span class="workflow-name">correct-course</span>
298
- <span class="badge adhoc">ad-hoc</span>
299
- </div>
300
- <div class="workflow-meta">
301
- <div class="agent"><div class="agent-icon john">J</div><span class="agent-name">John</span></div>
302
- <span class="output">updated plan</span>
303
- </div>
304
- </div>
305
- <div class="workflow">
306
- <div class="workflow-header">
307
- <span class="workflow-name">retrospective</span>
308
- <span class="badge adhoc">per epic</span>
309
- </div>
310
- <div class="workflow-meta">
311
- <div class="agent"><div class="agent-icon bob">B</div><span class="agent-name">Bob</span></div>
312
- <span class="output">lessons</span>
313
- </div>
314
- </div>
315
- </div>
316
- </div>
317
- </div>
318
-
319
- <div class="quickflow">
320
- <div class="quickflow-header">
321
- <span>⚡</span>
322
- <div>
323
- <h2>Quick Flow (Parallel Track)</h2>
324
- <span>For small, well-understood changes — skip phases 1-3</span>
325
- </div>
326
- </div>
327
- <div class="quickflow-body">
328
- <div class="quickflow-item">
329
- <div class="agent"><div class="agent-icon barry">B</div><span class="agent-name">Barry</span></div>
330
- <code>quick-spec</code>
331
- <div style="font-size: 0.65rem; color: var(--text-muted); margin-top: 4px;">→ tech-spec.md</div>
332
- </div>
333
- <span style="color: var(--arrow); font-size: 1.2rem;">→</span>
334
- <div class="quickflow-item">
335
- <div class="agent"><div class="agent-icon barry">B</div><span class="agent-name">Barry</span></div>
336
- <code>quick-dev</code>
337
- <div style="font-size: 0.65rem; color: var(--text-muted); margin-top: 4px;">→ working code</div>
338
- </div>
339
- </div>
340
- </div>
341
-
342
- <div class="context">
343
- <div class="context-header">📚 Context Flow</div>
344
- <p style="margin-bottom: 8px; color: var(--text-muted);">Each document becomes context for the next phase.</p>
345
- <div class="context-items">
346
- <span><code>create-story</code> <span>loads epics, PRD, architecture, UX</span></span>
347
- <span><code>dev-story</code> <span>loads story file</span></span>
348
- <span><code>code-review</code> <span>loads architecture, story</span></span>
349
- <span><code>quick-dev</code> <span>loads tech-spec</span></span>
350
- </div>
351
- </div>
352
-
353
- <div class="legend">
354
- <div class="legend-item"><div class="legend-dot" style="background: var(--analysis);"></div>Analysis</div>
355
- <div class="legend-item"><div class="legend-dot" style="background: var(--planning);"></div>Planning</div>
356
- <div class="legend-item"><div class="legend-dot" style="background: var(--solutioning);"></div>Solutioning</div>
357
- <div class="legend-item"><div class="legend-dot" style="background: var(--implementation);"></div>Implementation</div>
358
- <div class="legend-item"><div class="legend-dot" style="background: var(--quickflow);"></div>Quick Flow</div>
359
- </div>
360
- </body>
361
- </html>
@@ -1,62 +0,0 @@
1
- ---
2
- import { getSiteUrl } from '../lib/site-url.mjs';
3
-
4
- const llmsFullUrl = `${getSiteUrl()}/llms-full.txt`;
5
- ---
6
-
7
- <div class="ai-banner" role="note" aria-label="AI documentation notice">
8
- <span>🤖 Consolidated, AI-optimized BMAD docs: <a href={llmsFullUrl}>llms-full.txt</a>. Fetch this plain text file for complete context.</span>
9
- </div>
10
-
11
- <style>
12
- .ai-banner {
13
- width: 100%;
14
- height: var(--ai-banner-height, 2.75rem);
15
- background: #334155;
16
- color: #cbd5e1;
17
- padding: 0.5rem 1rem;
18
- font-size: 0.875rem;
19
- border-bottom: 1px solid rgba(140, 140, 255, 0.15);
20
- display: flex;
21
- align-items: center;
22
- justify-content: center;
23
- box-sizing: border-box;
24
- font-family: system-ui, sans-serif;
25
- }
26
-
27
- /* Truncate text on narrow screens */
28
- .ai-banner span {
29
- white-space: nowrap;
30
- overflow: hidden;
31
- text-overflow: ellipsis;
32
- max-width: 100%;
33
- }
34
- .ai-banner a {
35
- color: #B9B9FF;
36
- text-decoration: none;
37
- font-weight: 600;
38
- }
39
- .ai-banner a:hover {
40
- text-decoration: underline;
41
- }
42
- .ai-banner a:focus-visible {
43
- outline: 2px solid #B9B9FF;
44
- outline-offset: 2px;
45
- border-radius: 2px;
46
- }
47
-
48
- /* Match navbar padding at breakpoints */
49
- @media (min-width: 50rem) {
50
- .ai-banner {
51
- padding-left: 2.5rem;
52
- padding-right: 2.5rem;
53
- }
54
- }
55
-
56
- @media (min-width: 72rem) {
57
- .ai-banner {
58
- padding-left: 3rem;
59
- padding-right: 3rem;
60
- }
61
- }
62
- </style>