ma-agents 3.18.0-beta.2 → 3.18.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 (168) hide show
  1. package/README.md +2 -2
  2. package/bin/cli.js +29 -32
  3. package/docs/architecture.md +2 -2
  4. package/lib/bmad-cache/cache-manifest.json +0 -12
  5. package/lib/bmad-extension-plugin/.claude-plugin/marketplace.json +1 -1
  6. package/lib/bmad.js +33 -34
  7. package/package.json +1 -1
  8. package/scripts/build-bmad-cache.js +18 -9
  9. package/lib/bmad-cache/gds/.claude-plugin/marketplace.json +0 -56
  10. package/lib/bmad-cache/gds/.markdownlint-cli2.yaml +0 -35
  11. package/lib/bmad-cache/gds/.nvmrc +0 -1
  12. package/lib/bmad-cache/gds/.prettierignore +0 -9
  13. package/lib/bmad-cache/gds/CNAME +0 -1
  14. package/lib/bmad-cache/gds/LICENSE +0 -26
  15. package/lib/bmad-cache/gds/README.md +0 -134
  16. package/lib/bmad-cache/gds/_git_preserved/HEAD +0 -1
  17. package/lib/bmad-cache/gds/_git_preserved/config +0 -13
  18. package/lib/bmad-cache/gds/_git_preserved/description +0 -1
  19. package/lib/bmad-cache/gds/_git_preserved/hooks/applypatch-msg.sample +0 -15
  20. package/lib/bmad-cache/gds/_git_preserved/hooks/commit-msg.sample +0 -74
  21. package/lib/bmad-cache/gds/_git_preserved/hooks/fsmonitor-watchman.sample +0 -168
  22. package/lib/bmad-cache/gds/_git_preserved/hooks/post-update.sample +0 -8
  23. package/lib/bmad-cache/gds/_git_preserved/hooks/pre-applypatch.sample +0 -14
  24. package/lib/bmad-cache/gds/_git_preserved/hooks/pre-commit.sample +0 -49
  25. package/lib/bmad-cache/gds/_git_preserved/hooks/pre-merge-commit.sample +0 -13
  26. package/lib/bmad-cache/gds/_git_preserved/hooks/pre-push.sample +0 -53
  27. package/lib/bmad-cache/gds/_git_preserved/hooks/pre-rebase.sample +0 -169
  28. package/lib/bmad-cache/gds/_git_preserved/hooks/pre-receive.sample +0 -24
  29. package/lib/bmad-cache/gds/_git_preserved/hooks/prepare-commit-msg.sample +0 -42
  30. package/lib/bmad-cache/gds/_git_preserved/hooks/push-to-checkout.sample +0 -78
  31. package/lib/bmad-cache/gds/_git_preserved/hooks/sendemail-validate.sample +0 -77
  32. package/lib/bmad-cache/gds/_git_preserved/hooks/update.sample +0 -128
  33. package/lib/bmad-cache/gds/_git_preserved/index +0 -0
  34. package/lib/bmad-cache/gds/_git_preserved/info/exclude +0 -6
  35. package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-dcb7c556d9bb6b6b70d2301e094eaac6d7300552.idx +0 -0
  36. package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-dcb7c556d9bb6b6b70d2301e094eaac6d7300552.pack +0 -0
  37. package/lib/bmad-cache/gds/_git_preserved/objects/pack/pack-dcb7c556d9bb6b6b70d2301e094eaac6d7300552.rev +0 -0
  38. package/lib/bmad-cache/gds/_git_preserved/packed-refs +0 -2
  39. package/lib/bmad-cache/gds/_git_preserved/refs/heads/main +0 -1
  40. package/lib/bmad-cache/gds/_git_preserved/shallow +0 -1
  41. package/lib/bmad-cache/gds/eslint.config.mjs +0 -141
  42. package/lib/bmad-cache/gds/package.json +0 -91
  43. package/lib/bmad-cache/gds/prettier.config.mjs +0 -32
  44. package/lib/bmad-cache/gds/src/agents/gds-agent-game-architect/customize.toml +0 -57
  45. package/lib/bmad-cache/gds/src/agents/gds-agent-game-designer/customize.toml +0 -59
  46. package/lib/bmad-cache/gds/src/agents/gds-agent-game-dev/customize.toml +0 -129
  47. package/lib/bmad-cache/gds/src/agents/gds-agent-game-dev/gametest/qa-index.csv +0 -18
  48. package/lib/bmad-cache/gds/src/agents/gds-agent-game-solo-dev/customize.toml +0 -55
  49. package/lib/bmad-cache/gds/src/agents/gds-agent-tech-writer/customize.toml +0 -65
  50. package/lib/bmad-cache/gds/src/module-help.csv +0 -30
  51. package/lib/bmad-cache/gds/src/module.yaml +0 -113
  52. package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-brainstorm-game/customize.toml +0 -41
  53. package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-brainstorm-game/game-brain-methods.csv +0 -26
  54. package/lib/bmad-cache/gds/src/workflows/1-preproduction/gds-create-game-brief/customize.toml +0 -116
  55. package/lib/bmad-cache/gds/src/workflows/1-preproduction/research/gds-domain-research/customize.toml +0 -41
  56. package/lib/bmad-cache/gds/src/workflows/2-design/gds-create-narrative/customize.toml +0 -41
  57. package/lib/bmad-cache/gds/src/workflows/2-design/gds-gdd/assets/game-types.csv +0 -25
  58. package/lib/bmad-cache/gds/src/workflows/2-design/gds-gdd/assets/genre-complexity.csv +0 -26
  59. package/lib/bmad-cache/gds/src/workflows/2-design/gds-gdd/assets/validation-report-template.html +0 -190
  60. package/lib/bmad-cache/gds/src/workflows/2-design/gds-gdd/customize.toml +0 -99
  61. package/lib/bmad-cache/gds/src/workflows/2-design/gds-gdd/scripts/render-validation-html.py +0 -290
  62. package/lib/bmad-cache/gds/src/workflows/2-design/gds-prd/assets/validation-report-template.html +0 -190
  63. package/lib/bmad-cache/gds/src/workflows/2-design/gds-prd/customize.toml +0 -84
  64. package/lib/bmad-cache/gds/src/workflows/2-design/gds-ux/assets/validation-report-template.html +0 -319
  65. package/lib/bmad-cache/gds/src/workflows/2-design/gds-ux/customize.toml +0 -101
  66. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-check-implementation-readiness/customize.toml +0 -41
  67. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-create-epics-and-stories/customize.toml +0 -41
  68. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/architecture-patterns.yaml +0 -508
  69. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/customize.toml +0 -41
  70. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/decision-catalog.yaml +0 -428
  71. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/engine-mcps.yaml +0 -392
  72. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-game-architecture/pattern-categories.csv +0 -13
  73. package/lib/bmad-cache/gds/src/workflows/3-technical/gds-generate-project-context/customize.toml +0 -41
  74. package/lib/bmad-cache/gds/src/workflows/4-production/gds-code-review/customize.toml +0 -41
  75. package/lib/bmad-cache/gds/src/workflows/4-production/gds-correct-course/customize.toml +0 -41
  76. package/lib/bmad-cache/gds/src/workflows/4-production/gds-create-story/customize.toml +0 -41
  77. package/lib/bmad-cache/gds/src/workflows/4-production/gds-dev-story/customize.toml +0 -41
  78. package/lib/bmad-cache/gds/src/workflows/4-production/gds-investigate/customize.toml +0 -62
  79. package/lib/bmad-cache/gds/src/workflows/4-production/gds-retrospective/customize.toml +0 -41
  80. package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-planning/customize.toml +0 -41
  81. package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-planning/sprint-status-template.yaml +0 -55
  82. package/lib/bmad-cache/gds/src/workflows/4-production/gds-sprint-status/customize.toml +0 -41
  83. package/lib/bmad-cache/gds/src/workflows/gametest/gds-e2e-scaffold/customize.toml +0 -41
  84. package/lib/bmad-cache/gds/src/workflows/gametest/gds-performance-test/customize.toml +0 -41
  85. package/lib/bmad-cache/gds/src/workflows/gametest/gds-playtest-plan/customize.toml +0 -41
  86. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-automate/customize.toml +0 -41
  87. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-design/customize.toml +0 -41
  88. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-framework/customize.toml +0 -41
  89. package/lib/bmad-cache/gds/src/workflows/gametest/gds-test-review/customize.toml +0 -41
  90. package/lib/bmad-cache/gds/src/workflows/gds-document-project/customize.toml +0 -41
  91. package/lib/bmad-cache/gds/src/workflows/gds-document-project/documentation-requirements.csv +0 -12
  92. package/lib/bmad-cache/gds/src/workflows/gds-document-project/templates/project-scan-report-schema.json +0 -160
  93. package/lib/bmad-cache/gds/src/workflows/gds-quick-flow/gds-quick-dev/customize.toml +0 -41
  94. package/lib/bmad-cache/gds/tools/build-docs.mjs +0 -450
  95. package/lib/bmad-cache/gds/website/astro.config.mjs +0 -142
  96. package/lib/bmad-cache/gds/website/public/favicon.ico +0 -0
  97. package/lib/bmad-cache/gds/website/public/img/bmad-dark.png +0 -0
  98. package/lib/bmad-cache/gds/website/public/img/bmad-light.png +0 -0
  99. package/lib/bmad-cache/gds/website/src/components/Banner.astro +0 -71
  100. package/lib/bmad-cache/gds/website/src/components/Header.astro +0 -94
  101. package/lib/bmad-cache/gds/website/src/components/MobileMenuFooter.astro +0 -33
  102. package/lib/bmad-cache/gds/website/src/content/config.ts +0 -6
  103. package/lib/bmad-cache/gds/website/src/content/docs +0 -1
  104. package/lib/bmad-cache/gds/website/src/lib/site-url.mjs +0 -25
  105. package/lib/bmad-cache/gds/website/src/rehype-base-paths.js +0 -88
  106. package/lib/bmad-cache/gds/website/src/rehype-markdown-links.js +0 -117
  107. package/lib/bmad-cache/gds/website/src/styles/custom.css +0 -503
  108. package/lib/bmad-cache/wds/.claude-plugin/marketplace.json +0 -35
  109. package/lib/bmad-cache/wds/.markdownlint-cli2.yaml +0 -38
  110. package/lib/bmad-cache/wds/.nvmrc +0 -1
  111. package/lib/bmad-cache/wds/.prettierignore +0 -9
  112. package/lib/bmad-cache/wds/LICENSE +0 -27
  113. package/lib/bmad-cache/wds/README.md +0 -139
  114. package/lib/bmad-cache/wds/_git_preserved/HEAD +0 -1
  115. package/lib/bmad-cache/wds/_git_preserved/config +0 -13
  116. package/lib/bmad-cache/wds/_git_preserved/description +0 -1
  117. package/lib/bmad-cache/wds/_git_preserved/hooks/applypatch-msg.sample +0 -15
  118. package/lib/bmad-cache/wds/_git_preserved/hooks/commit-msg.sample +0 -74
  119. package/lib/bmad-cache/wds/_git_preserved/hooks/fsmonitor-watchman.sample +0 -168
  120. package/lib/bmad-cache/wds/_git_preserved/hooks/post-update.sample +0 -8
  121. package/lib/bmad-cache/wds/_git_preserved/hooks/pre-applypatch.sample +0 -14
  122. package/lib/bmad-cache/wds/_git_preserved/hooks/pre-commit.sample +0 -49
  123. package/lib/bmad-cache/wds/_git_preserved/hooks/pre-merge-commit.sample +0 -13
  124. package/lib/bmad-cache/wds/_git_preserved/hooks/pre-push.sample +0 -53
  125. package/lib/bmad-cache/wds/_git_preserved/hooks/pre-rebase.sample +0 -169
  126. package/lib/bmad-cache/wds/_git_preserved/hooks/pre-receive.sample +0 -24
  127. package/lib/bmad-cache/wds/_git_preserved/hooks/prepare-commit-msg.sample +0 -42
  128. package/lib/bmad-cache/wds/_git_preserved/hooks/push-to-checkout.sample +0 -78
  129. package/lib/bmad-cache/wds/_git_preserved/hooks/sendemail-validate.sample +0 -77
  130. package/lib/bmad-cache/wds/_git_preserved/hooks/update.sample +0 -128
  131. package/lib/bmad-cache/wds/_git_preserved/index +0 -0
  132. package/lib/bmad-cache/wds/_git_preserved/info/exclude +0 -6
  133. package/lib/bmad-cache/wds/_git_preserved/objects/pack/pack-656c3d8d5426e73043b6a7f45eedaab74e3c419e.idx +0 -0
  134. package/lib/bmad-cache/wds/_git_preserved/objects/pack/pack-656c3d8d5426e73043b6a7f45eedaab74e3c419e.pack +0 -0
  135. package/lib/bmad-cache/wds/_git_preserved/objects/pack/pack-656c3d8d5426e73043b6a7f45eedaab74e3c419e.rev +0 -0
  136. package/lib/bmad-cache/wds/_git_preserved/packed-refs +0 -2
  137. package/lib/bmad-cache/wds/_git_preserved/refs/heads/main +0 -1
  138. package/lib/bmad-cache/wds/_git_preserved/refs/tags/v0.4.3 +0 -1
  139. package/lib/bmad-cache/wds/_git_preserved/shallow +0 -1
  140. package/lib/bmad-cache/wds/eslint.config.mjs +0 -152
  141. package/lib/bmad-cache/wds/package.json +0 -82
  142. package/lib/bmad-cache/wds/prettier.config.mjs +0 -32
  143. package/lib/bmad-cache/wds/src/agents/wds-agent-freya-ux/customize.toml +0 -80
  144. package/lib/bmad-cache/wds/src/agents/wds-agent-mimir-builder/customize.toml +0 -52
  145. package/lib/bmad-cache/wds/src/agents/wds-agent-saga-analyst/customize.toml +0 -70
  146. package/lib/bmad-cache/wds/src/module-help.csv +0 -19
  147. package/lib/bmad-cache/wds/src/module.yaml +0 -173
  148. package/lib/bmad-cache/wds/src/scripts/README.md +0 -155
  149. package/lib/bmad-cache/wds/src/scripts/wds-add-object.js +0 -202
  150. package/lib/bmad-cache/wds/src/scripts/wds-add-spacing.js +0 -158
  151. package/lib/bmad-cache/wds/src/scripts/wds-init-page.js +0 -229
  152. package/lib/bmad-cache/wds/src/scripts/wds-init-scenario.js +0 -120
  153. package/lib/bmad-cache/wds/src/scripts/wds-nav.js +0 -201
  154. package/lib/bmad-cache/wds/src/scripts/wds-validate.js +0 -301
  155. package/lib/bmad-cache/wds/src/workflows/wds-0-project-setup/resources/wds-1-project-brief/templates/platform-requirements.template.yaml +0 -69
  156. package/lib/bmad-cache/wds/src/workflows/wds-0-project-setup/resources/wds-7-design-system/templates/catalog.template.html +0 -363
  157. package/lib/bmad-cache/wds/src/workflows/wds-1-project-brief/templates/platform-requirements.template.yaml +0 -69
  158. package/lib/bmad-cache/wds/src/workflows/wds-3-scenarios/workflow.xml +0 -450
  159. package/lib/bmad-cache/wds/src/workflows/wds-4-ux-design/templates/design-delivery.template.yaml +0 -104
  160. package/lib/bmad-cache/wds/src/workflows/wds-4-ux-design/templates/test-scenario.template.yaml +0 -192
  161. package/lib/bmad-cache/wds/src/workflows/wds-4-ux-design/workflow-specify.xml +0 -387
  162. package/lib/bmad-cache/wds/src/workflows/wds-5-agentic-development/templates/components/dev-mode.css +0 -164
  163. package/lib/bmad-cache/wds/src/workflows/wds-5-agentic-development/templates/components/dev-mode.html +0 -18
  164. package/lib/bmad-cache/wds/src/workflows/wds-5-agentic-development/templates/components/dev-mode.js +0 -430
  165. package/lib/bmad-cache/wds/src/workflows/wds-5-agentic-development/templates/demo-data-template.json +0 -63
  166. package/lib/bmad-cache/wds/src/workflows/wds-5-agentic-development/templates/page-template.html +0 -465
  167. package/lib/bmad-cache/wds/src/workflows/wds-5-agentic-development/templates/work-file-template.yaml +0 -264
  168. package/lib/bmad-cache/wds/src/workflows/wds-7-design-system/templates/catalog.template.html +0 -363
@@ -1,116 +0,0 @@
1
- # DO NOT EDIT -- overwritten on every update.
2
- #
3
- # Workflow customization surface for gds-create-game-brief.
4
- #
5
- # Override files (not edited here):
6
- # {project-root}/_bmad/custom/gds-create-game-brief.toml (team)
7
- # {project-root}/_bmad/custom/gds-create-game-brief.user.toml (personal)
8
-
9
- [workflow]
10
-
11
- # --- Configurable below. Overrides merge per BMad structural rules: ---
12
- # scalars: override wins • arrays: append
13
-
14
- # Steps to run before the standard activation (config load, greet).
15
- # Use for pre-flight loads, compliance checks, etc.
16
- activation_steps_prepend = []
17
-
18
- # Steps to run after greet but before the workflow begins.
19
- # Use for context-heavy setup that should happen once the user has been acknowledged.
20
- activation_steps_append = []
21
-
22
- # Persistent facts the workflow keeps in mind for the whole run
23
- # (studio standards, platform constraints, stylistic guardrails).
24
- # Each entry is either a literal sentence, a skill prefixed with `skill:`, or a
25
- # `file:`-prefixed path/glob whose contents are loaded as facts. Empty by default.
26
- #
27
- # Common opt-ins (set in team/user override TOML):
28
- # "file:{project-root}/**/project-context.md" # load project context if gds-generate-project-context produced one
29
- # "skill:acme-studio:brand-and-rating-guidelines" # a skill that contains studio info
30
- # "Every game brief must anchor on a single core fantasy players can describe in one sentence."
31
- persistent_facts = []
32
-
33
- # Executed when the workflow completes (after the user has been told the
34
- # brief is ready). Accepts either a string scalar (single instruction)
35
- # or an array of instructions executed in order. Empty for none.
36
- on_complete = ""
37
-
38
- # Default game-brief structure. Treated as a starting point — the LLM adapts it
39
- # to the game, purpose, and genre. Override the path in team/user TOML to enforce
40
- # a different structure (e.g. live-service, narrative-heavy, mobile-F2P).
41
- brief_template = "assets/brief-template.md"
42
-
43
- # Run folder location. The brief and optional addendum land inside
44
- # `{brief_output_path}/{run_folder_pattern}/`. Resume-check scans
45
- # `{brief_output_path}` for prior unfinished runs.
46
- brief_output_path = "{planning_artifacts}/briefs"
47
- run_folder_pattern = "brief-{project_name}-{date}"
48
-
49
- # Polish passes applied to human-consumed docs at finalize. Each entry is a
50
- # `skill:`, `file:`, or plain-text directive run as a parallel subagent against
51
- # the draft; findings are applied before the user sees it. Encodes standards,
52
- # not options.
53
- #
54
- # Examples:
55
- # "skill:bmad-editorial-review-prose"
56
- # "file:{project-root}/_bmad/style-guides/studio-voice.md"
57
- # "Convert all dates to ISO 8601 format."
58
- #
59
- # Suggested order (broader passes first, narrower last):
60
- # 1. Structural (cuts, reorganization, section sizing)
61
- # 2. Content/voice/conventions (studio standards, tone, terminology, rating)
62
- # 3. Prose mechanics (grammar, clarity, typos)
63
- #
64
- # Override the array in team/user TOML to add additional standards. Append-only:
65
- # base entries cannot be removed or replaced (resolver has no removal mechanism).
66
- polish_passes = [
67
- "skill:bmad-editorial-review-structure",
68
- "skill:bmad-editorial-review-prose",
69
- ]
70
-
71
- # Reviewer panel applied at finalize, after polish_passes. Each entry is a
72
- # `skill:`, `file:`, or plain-text directive run as a parallel subagent that
73
- # critiques the draft and returns findings (it does not silently rewrite).
74
- # Prefix an entry with `required:` to make it a hard gate — the workflow will
75
- # not present the brief as final until that reviewer passes or the user waives
76
- # it. `finalize_reviewers` is an alias surface for the same gate. Empty by default.
77
- #
78
- # Examples (set in team/user override TOML):
79
- # "skill:acme-studio:greenlight-review"
80
- # "required:Confirm the core fantasy is stated in a single sentence and the MVP is truly minimal."
81
- # "When the brief targets a rated platform, cross-check content against corp:rating_reference."
82
- reviewers = []
83
- finalize_reviewers = []
84
-
85
- # Name or directive of the single reviewer treated as the required gate when
86
- # not expressed inline via a `required:` prefix above. Empty by default.
87
- required_reviewer = ""
88
-
89
- # External-source registry. Natural-language directives describing knowledge
90
- # bases, MCP tools, or internal systems the LLM may consult during the workflow
91
- # when a relevant need surfaces. The LLM does NOT query these preemptively — it
92
- # consults them on demand (during Discovery, validation, drafting, etc.). Each
93
- # entry names the tool, the conditions for using it, and any fields it needs.
94
- # If a named MCP tool is unavailable at runtime, the LLM falls back to standard
95
- # behavior and notes the gap. Empty by default.
96
- #
97
- # Examples (set in team/user override TOML):
98
- # "When researching genre context, consult corp:kb_search (database='game-design-docs') before web search."
99
- # "For player-sentiment signal during Discovery, query corp:wishlist_search with project={project_name}."
100
- # "When validating platform-rating claims, cross-check against corp:rating_reference."
101
- external_sources = []
102
-
103
- # External-handoff routing. Natural-language directives the LLM applies at
104
- # Finalize to route outputs beyond local files (Confluence, Notion, Google
105
- # Drive, ticket systems, etc.). Each entry names the MCP tool, the destination,
106
- # and the fields it needs. Handoffs run after the artifact is polished and
107
- # before the final user-facing message. URLs or IDs returned by the destination
108
- # are captured and surfaced to the user. If a named tool is unavailable at
109
- # runtime, the handoff is skipped and flagged in the JSON status; local files
110
- # always exist regardless. Fires automatically — users can opt out in their
111
- # prompt for a specific run. Empty by default.
112
- #
113
- # Examples (set in team/user override TOML):
114
- # "After finalize, upload brief.md and addendum.md to Confluence via corp:confluence_upload (space_key='GAME', parent_page='Game Briefs', label='brief', author={user_name})."
115
- # "Post a ready-for-review ping to Slack via corp:slack_post (channel='#game-design', text='New game brief: '+{confluence_url})."
116
- external_handoffs = []
@@ -1,41 +0,0 @@
1
- # DO NOT EDIT -- overwritten on every update.
2
- #
3
- # Workflow customization surface for gds-domain-research. Mirrors the
4
- # agent customization shape under the [workflow] namespace.
5
-
6
- [workflow]
7
-
8
- # --- Configurable below. Overrides merge per BMad structural rules: ---
9
- # scalars: override wins • arrays (persistent_facts, activation_steps_*): append
10
- # arrays-of-tables with `code`/`id`: replace matching items, append new ones.
11
-
12
- # Steps to run before the standard activation (config load, greet).
13
- # Overrides append. Use for pre-flight loads, compliance checks, etc.
14
-
15
- activation_steps_prepend = []
16
-
17
- # Steps to run after greet but before the workflow begins.
18
- # Overrides append. Use for context-heavy setup that should happen
19
- # once the user has been acknowledged.
20
-
21
- activation_steps_append = []
22
-
23
- # Persistent facts the workflow keeps in mind for the whole run
24
- # (standards, compliance constraints, stylistic guardrails).
25
- # Distinct from the runtime memory sidecar — these are static context
26
- # loaded on activation. Overrides append.
27
- #
28
- # Each entry is either:
29
- # - a literal sentence, e.g. "Domain research must cite primary sources and distinguish fact from interpretation."
30
- # - a file reference prefixed with `file:`, e.g. "file:{project-root}/docs/standards.md"
31
- # (glob patterns are supported; the file's contents are loaded and treated as facts).
32
-
33
- persistent_facts = [
34
- "file:{project-root}/**/project-context.md",
35
- ]
36
-
37
- # Scalar: executed when the workflow reaches Step 6,
38
- # after the final outputs are produced. Override wins.
39
- # Leave empty for no custom post-completion behavior.
40
-
41
- on_complete = ""
@@ -1,41 +0,0 @@
1
- # DO NOT EDIT -- overwritten on every update.
2
- #
3
- # Workflow customization surface for gds-create-narrative. Mirrors the
4
- # agent customization shape under the [workflow] namespace.
5
-
6
- [workflow]
7
-
8
- # --- Configurable below. Overrides merge per BMad structural rules: ---
9
- # scalars: override wins • arrays (persistent_facts, activation_steps_*): append
10
- # arrays-of-tables with `code`/`id`: replace matching items, append new ones.
11
-
12
- # Steps to run before the standard activation (config load, greet).
13
- # Overrides append. Use for pre-flight loads, compliance checks, etc.
14
-
15
- activation_steps_prepend = []
16
-
17
- # Steps to run after greet but before the workflow begins.
18
- # Overrides append. Use for context-heavy setup that should happen
19
- # once the user has been acknowledged.
20
-
21
- activation_steps_append = []
22
-
23
- # Persistent facts the workflow keeps in mind for the whole run
24
- # (standards, compliance constraints, stylistic guardrails).
25
- # Distinct from the runtime memory sidecar — these are static context
26
- # loaded on activation. Overrides append.
27
- #
28
- # Each entry is either:
29
- # - a literal sentence, e.g. "Narrative must serve the core gameplay loop, not compete with it."
30
- # - a file reference prefixed with `file:`, e.g. "file:{project-root}/docs/standards.md"
31
- # (glob patterns are supported; the file's contents are loaded and treated as facts).
32
-
33
- persistent_facts = [
34
- "file:{project-root}/**/project-context.md",
35
- ]
36
-
37
- # Scalar: executed when the workflow reaches Step 11 (Complete),
38
- # after the final outputs are produced. Override wins.
39
- # Leave empty for no custom post-completion behavior.
40
-
41
- on_complete = ""
@@ -1,25 +0,0 @@
1
- id,name,description,genre_tags,fragment_file
2
- action-platformer,Action Platformer,"Side-scrolling or 3D platforming with combat mechanics","action,platformer,combat,movement",action-platformer.md
3
- puzzle,Puzzle,"Logic-based challenges and problem-solving","puzzle,logic,cerebral",puzzle.md
4
- rpg,RPG,"Character progression, stats, inventory, quests","rpg,stats,inventory,quests,narrative",rpg.md
5
- strategy,Strategy,"Resource management, tactical decisions, long-term planning","strategy,tactics,resources,planning",strategy.md
6
- shooter,Shooter,"Projectile combat, aiming mechanics, arena/level design","shooter,combat,aiming,fps,tps",shooter.md
7
- adventure,Adventure,"Story-driven exploration and narrative","adventure,narrative,exploration,story",adventure.md
8
- simulation,Simulation,"Realistic systems, management, building","simulation,management,sandbox,systems",simulation.md
9
- roguelike,Roguelike,"Procedural generation, permadeath, run-based progression","roguelike,procedural,permadeath,runs",roguelike.md
10
- moba,MOBA,"Multiplayer team battles, hero/champion selection, lanes","moba,multiplayer,pvp,heroes,lanes",moba.md
11
- fighting,Fighting,"1v1 combat, combos, frame data, competitive","fighting,combat,competitive,combos,pvp",fighting.md
12
- racing,Racing,"Vehicle control, tracks, speed, lap times","racing,vehicles,tracks,speed",racing.md
13
- sports,Sports,"Team-based or individual sports simulation","sports,teams,realistic,physics",sports.md
14
- survival,Survival,"Resource gathering, crafting, persistent threats","survival,crafting,resources,danger",survival.md
15
- horror,Horror,"Atmosphere, tension, limited resources, fear mechanics","horror,atmosphere,tension,fear",horror.md
16
- idle-incremental,Idle/Incremental,"Passive progression, upgrades, automation","idle,incremental,automation,progression",idle-incremental.md
17
- card-game,Card Game,"Deck building, card mechanics, turn-based strategy","card,deck-building,strategy,turns",card-game.md
18
- tower-defense,Tower Defense,"Wave-based defense, tower placement, resource management","tower-defense,waves,placement,strategy",tower-defense.md
19
- metroidvania,Metroidvania,"Interconnected world, ability gating, exploration","metroidvania,exploration,abilities,interconnected",metroidvania.md
20
- visual-novel,Visual Novel,"Narrative choices, branching story, dialogue","visual-novel,narrative,choices,story",visual-novel.md
21
- rhythm,Rhythm,"Music synchronization, timing-based gameplay","rhythm,music,timing,beats",rhythm.md
22
- turn-based-tactics,Turn-Based Tactics,"Grid-based movement, turn order, positioning","tactics,turn-based,grid,positioning",turn-based-tactics.md
23
- sandbox,Sandbox,"Creative freedom, building, minimal objectives","sandbox,creative,building,freedom",sandbox.md
24
- text-based,Text-Based,"Text input/output, parser or choice-based","text,parser,interactive-fiction,mud",text-based.md
25
- party-game,Party Game,"Local multiplayer, minigames, casual fun","party,multiplayer,minigames,casual",party-game.md
@@ -1,26 +0,0 @@
1
- genre,signals,complexity,key_concerns,required_knowledge,suggested_workflow,special_sections
2
- action-platformer,"platformer,jump,dash,combat,precision,side-scroller,movement",high,"Frame-perfect feel values;Hit/hurt box conventions;Coyote time and input buffers;Checkpoint cadence;Level flow and gating","Platformer movement feel;Hitbox design;Level pacing;Difficulty curve via geometry","genre-research","movement_feel_table;combat_specs;level_gating;difficulty_curve"
3
- rpg,"rpg,stats,inventory,quests,leveling,party,dialogue,skills",high,"Stat system coherence;Leveling curve;Inventory rules;Quest state machine;Save/load scope;Dialogue variables","Stat design and balancing;Economy and loot tables;Quest scripting patterns;Save-state boundaries;Branching narrative","genre-research","stat_system;leveling_curve;inventory_rules;quest_state_machine;save_model"
4
- roguelike,"roguelike,procedural,permadeath,runs,seeded,meta-progression",high,"Run structure;Seed determinism;Meta vs in-run progression;Balance bands across runs;Player retention hooks","Procedural generation patterns;Meta-progression design;Seed management;Per-run difficulty scaling","genre-research","run_structure;meta_progression;seed_determinism;balance_bands"
5
- shooter,"shooter,fps,tps,aim,projectile,recoil,weapons,gunplay",high,"Weapon feel (TTK, recoil, spread);Netcode (if multiplayer);Hitreg model;Map flow and choke points;Spawn logic","Gunplay tuning;Netcode model selection;Hitreg design;Map readability;Spawn algorithms","genre-research","weapon_feel_table;netcode_model;hitreg_spec;map_flow"
6
- moba,"moba,lanes,heroes,champions,team,jungle,ranked,pvp",high,"Hero kit diversity;Lane/map balance;Matchmaking and MMR;Tick rate and latency tolerance;Role identity","MOBA kit design;Map/lane pacing;Matchmaking systems;Anti-toxicity tooling;Esports readiness","genre-research","hero_kit_matrix;map_pacing;matchmaking_model;tick_rate_spec"
7
- fighting,"fighting,combos,frame data,neutral,counter,competitive,1v1",high,"Frame data accuracy;Rollback netcode;Input parsing;Combo system boundaries;Training mode completeness","Frame data theory;Rollback netcode;Input buffer design;Competitive balance","genre-research","frame_data_tables;netcode_model;input_spec;training_mode"
8
- survival,"survival,crafting,hunger,thirst,resources,base-building,danger",high,"Resource scarcity curves;Day/night or seasonal cycles;Base persistence;Hostile threat pacing;Multi-session continuity","Crafting tree design;Resource economy;Threat AI pacing;Persistence model","genre-research","resource_economy;crafting_tree;threat_pacing;persistence_model"
9
- simulation,"simulation,management,tycoon,systems,building,sandbox",high,"System interaction clarity;Long-tail balance;Emergent behavior handling;Save-scum mitigation;End-state definition","Systems design and interaction;Balance for long sessions;Emergent gameplay;End-state or open-endedness","genre-research","systems_map;balance_long_tail;emergence_boundaries;end_state"
10
- strategy,"strategy,rts,4x,turn-based,tactics,resources,units",medium,"Unit role clarity;Economy tempo;Map-based balance;AI design;Turn/tick pacing","Unit design and counters;Economy curves;Strategic AI;Pacing","genre-research","unit_matrix;economy_tempo;ai_design;pacing_model"
11
- horror,"horror,tension,atmosphere,fear,scare,jumpscare,psychological",medium,"Atmosphere and audio design;Scare pacing (not spam);Resource scarcity;Save-point pressure;Narrative framing","Horror pacing;Audio/atmosphere design;Tension escalation;Narrative framing","genre-research","atmosphere_design;scare_pacing;resource_scarcity;save_model"
12
- metroidvania,"metroidvania,exploration,abilities,interconnected,gating,backtracking",medium,"Ability-based gating graph;Map readability;Backtracking pacing;Upgrade pacing;Softlock prevention","Gating graphs;Map design;Upgrade pacing;Softlock analysis","genre-research","gating_graph;map_design;upgrade_pacing;softlock_prevention"
13
- adventure,"adventure,story,narrative,exploration,puzzle,point-and-click",medium,"Narrative branching clarity;Puzzle fairness;Pacing of reveals;Replayability of choices;Inventory/clue tracking","Narrative design;Puzzle design;Pacing;Choice architecture","genre-research","narrative_structure;puzzle_fairness;pacing;choice_architecture"
14
- puzzle,"puzzle,logic,solve,brain,match,pattern",medium,"Solution-space guarantees;Hint system design;Difficulty ramp;Level generation (if procedural);Tutorialization","Puzzle theory;Hint systems;Difficulty curves;Tutorial flow","genre-research","solution_space;hint_system;difficulty_ramp;tutorialization"
15
- racing,"racing,track,vehicle,speed,lap,drift,kart",medium,"Vehicle handling model;Track design language;AI rubber-banding policy;Power-up balance (if any);Multiplayer desync","Vehicle physics;Track design;AI driver design;Netcode","genre-research","vehicle_handling;track_design;ai_driver_model;mp_model"
16
- sports,"sports,team,ball,realism,physics,athlete",medium,"Rule fidelity vs arcade feel;Physics consistency;Season/career mode;Roster data pipelines;Multiplayer integrity","Sport rules modeling;Physics tuning;Career systems;Online integrity","genre-research","rule_model;physics_spec;career_mode;online_integrity"
17
- card-game,"card,deck,hand,draw,ccg,tcg,deckbuilder",medium,"Card-pool balance;Rarity and economy;Draw mechanics;Anti-infinite-loop rules;New-player experience","Card design;Deck construction rules;Economy (for CCGs);Format rotation","genre-research","card_pool_balance;economy_model;draw_rules;nux_flow"
18
- tower-defense,"tower-defense,wave,tower,placement,lane",medium,"Wave pacing;Tower role distinction;Map/path balance;Economy per wave;Endless-mode scaling","Wave design;Tower taxonomy;Economy curves;Endless scaling","genre-research","wave_pacing;tower_matrix;economy_per_wave;endless_scaling"
19
- visual-novel,"visual-novel,choice,branching,dialogue,narrative,ending",medium,"Branching structure;Variable/flag system;Rewind/save model;Route coverage;Localization budget","Branching narrative;Flag systems;Save models;Route design;Localization","genre-research","branching_structure;flag_system;save_model;route_coverage"
20
- rhythm,"rhythm,music,beat,timing,note,chart",medium,"Timing window accuracy;Audio latency calibration;Chart authoring pipeline;Difficulty tiers;Song-licensing or content pipeline","Rhythm game feel;Audio engineering;Chart authoring tools;Difficulty tiering","genre-research","timing_windows;latency_calibration;chart_pipeline;difficulty_tiers"
21
- turn-based-tactics,"tactics,grid,turns,positioning,squad",medium,"Grid rules (pathing, LOS, height);Turn order determination;Action economy;Enemy AI;Mission variety","Tactics grid rules;Action economy;Enemy AI patterns;Mission design","genre-research","grid_rules;action_economy;enemy_ai;mission_variety"
22
- idle-incremental,"idle,incremental,clicker,automation,progression",low,"Progression pacing;Reset/prestige mechanics;Offline gains;Long-session balance;Content runway","Progression curves;Prestige design;Offline economy;Monetization (if applicable)","genre-research","progression_pacing;prestige_model;offline_gains"
23
- sandbox,"sandbox,build,create,freedom,minimal goals",low,"Creative tool depth;Performance at scale;Saving/sharing user content;Optional goals;UGC moderation","Creative tools;Performance at scale;UGC pipelines;Moderation","genre-research","creative_tools;perf_at_scale;ugc_pipeline"
24
- party-game,"party,minigame,local-multiplayer,casual",low,"Minigame variety;Controller/ input sharing;Round pacing;Accessibility;Drop-in/drop-out","Minigame design;Local MP patterns;Pacing;Accessibility","genre-research","minigame_roster;local_mp_model;round_pacing"
25
- text-based,"text,parser,interactive-fiction,mud",low,"Parser coverage vs choice-based;World state tracking;Save model;Readability on target devices","Parser design or choice architecture;World state;Save models","genre-research","parser_or_choice;world_state;save_model"
26
- general,"",low,"Standard gameplay concerns;Basic pacing;Target-platform feel","General game design practices","continue","standard_sections"
@@ -1,190 +0,0 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="utf-8">
5
- <title>GDD Validation: $prd_name</title>
6
- <style>
7
- :root {
8
- --bg: #fafaf9;
9
- --surface: #ffffff;
10
- --border: #e7e5e4;
11
- --text: #1c1917;
12
- --muted: #78716c;
13
- --pass: #22c55e;
14
- --warn: #eab308;
15
- --fail: #ef4444;
16
- --na: #94a3b8;
17
- --sev-low: #64748b;
18
- --sev-medium: #ca8a04;
19
- --sev-high: #ea580c;
20
- --sev-critical: #dc2626;
21
- --grade-exc: #16a34a;
22
- --grade-good: #65a30d;
23
- --grade-fair: #d97706;
24
- --grade-poor: #dc2626;
25
- }
26
- * { box-sizing: border-box; }
27
- html, body { margin: 0; padding: 0; }
28
- body {
29
- font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, system-ui, sans-serif;
30
- background: var(--bg);
31
- color: var(--text);
32
- line-height: 1.55;
33
- font-size: 15px;
34
- }
35
- .container { max-width: 960px; margin: 0 auto; padding: 32px 24px 64px; }
36
-
37
- header.report-header {
38
- display: flex;
39
- align-items: center;
40
- justify-content: space-between;
41
- gap: 24px;
42
- padding-bottom: 16px;
43
- border-bottom: 1px solid var(--border);
44
- margin-bottom: 24px;
45
- }
46
- .title h1 { margin: 0; font-size: 22px; font-weight: 600; letter-spacing: -0.01em; }
47
- .title .subtitle { color: var(--muted); font-size: 13px; margin-top: 4px; font-family: ui-monospace, "SF Mono", Menlo, monospace; }
48
- .grade {
49
- padding: 10px 18px;
50
- border-radius: 8px;
51
- font-weight: 600;
52
- color: white;
53
- font-size: 15px;
54
- white-space: nowrap;
55
- }
56
- .grade-excellent { background: var(--grade-exc); }
57
- .grade-good { background: var(--grade-good); }
58
- .grade-fair { background: var(--grade-fair); }
59
- .grade-poor { background: var(--grade-poor); }
60
-
61
- .synthesis {
62
- background: var(--surface);
63
- border: 1px solid var(--border);
64
- border-left: 3px solid var(--muted);
65
- border-radius: 8px;
66
- padding: 16px 20px;
67
- margin-bottom: 24px;
68
- color: var(--text);
69
- font-size: 15px;
70
- }
71
- .synthesis:empty { display: none; }
72
-
73
- .scoreboard {
74
- background: var(--surface);
75
- border: 1px solid var(--border);
76
- border-radius: 8px;
77
- padding: 18px 20px;
78
- margin-bottom: 24px;
79
- }
80
- .score-bar { margin: 0 0 14px; line-height: 0; }
81
- .score-stats { display: flex; gap: 22px; font-size: 14px; flex-wrap: wrap; }
82
- .score-stats span { display: inline-flex; align-items: center; gap: 6px; }
83
- .score-stats .dot { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
84
- .dot-pass { background: var(--pass); }
85
- .dot-warn { background: var(--warn); }
86
- .dot-fail { background: var(--fail); }
87
- .dot-na { background: var(--na); }
88
- .total-count { margin-left: auto; color: var(--muted); }
89
-
90
- section.category { margin-bottom: 16px; }
91
- section.category details {
92
- background: var(--surface);
93
- border: 1px solid var(--border);
94
- border-radius: 8px;
95
- overflow: hidden;
96
- }
97
- section.category summary {
98
- padding: 14px 20px;
99
- cursor: pointer;
100
- user-select: none;
101
- list-style: none;
102
- }
103
- section.category summary::-webkit-details-marker { display: none; }
104
- section.category summary::before {
105
- content: "▸";
106
- display: inline-block;
107
- margin-right: 10px;
108
- color: var(--muted);
109
- transition: transform 0.15s ease;
110
- }
111
- section.category details[open] summary::before { transform: rotate(90deg); }
112
- section.category summary h2 { display: inline; margin: 0; font-size: 16px; font-weight: 600; letter-spacing: -0.005em; }
113
- section.category .count { color: var(--muted); font-weight: 400; margin-left: 6px; font-size: 14px; }
114
-
115
- article.finding { padding: 16px 20px; border-top: 1px solid var(--border); }
116
- article.finding-fail { background: rgba(239, 68, 68, 0.025); }
117
- article.finding header {
118
- display: flex;
119
- align-items: center;
120
- gap: 10px;
121
- flex-wrap: wrap;
122
- margin-bottom: 8px;
123
- }
124
- .badge {
125
- font-size: 10.5px;
126
- padding: 3px 8px;
127
- border-radius: 4px;
128
- font-weight: 600;
129
- text-transform: uppercase;
130
- letter-spacing: 0.04em;
131
- line-height: 1.4;
132
- }
133
- .badge-pass { background: rgba(34, 197, 94, 0.12); color: #15803d; }
134
- .badge-warn { background: rgba(234, 179, 8, 0.14); color: #854d0e; }
135
- .badge-fail { background: rgba(239, 68, 68, 0.12); color: #b91c1c; }
136
- .badge-na { background: rgba(148, 163, 184, 0.16); color: #475569; }
137
- .badge-sev-low { background: rgba(100, 116, 139, 0.12); color: var(--sev-low); }
138
- .badge-sev-medium { background: rgba(202, 138, 4, 0.14); color: var(--sev-medium); }
139
- .badge-sev-high { background: rgba(234, 88, 12, 0.14); color: var(--sev-high); }
140
- .badge-sev-critical { background: rgba(220, 38, 38, 0.14); color: var(--sev-critical); }
141
- .finding-id { font-family: ui-monospace, "SF Mono", Menlo, monospace; font-size: 12px; color: var(--muted); }
142
- .finding-title { margin: 0; font-size: 15px; font-weight: 500; flex: 1; min-width: 200px; }
143
- .finding-location, .finding-note, .finding-fix { margin-top: 6px; font-size: 14px; color: var(--text); }
144
- .finding-location strong, .finding-fix strong { color: var(--muted); font-weight: 500; }
145
-
146
- footer.report-footer {
147
- margin-top: 40px;
148
- padding-top: 16px;
149
- border-top: 1px solid var(--border);
150
- font-size: 12px;
151
- color: var(--muted);
152
- font-family: ui-monospace, "SF Mono", Menlo, monospace;
153
- }
154
- footer .meta { display: flex; gap: 24px; flex-wrap: wrap; }
155
- </style>
156
- </head>
157
- <body>
158
- <div class="container">
159
- <header class="report-header">
160
- <div class="title">
161
- <h1>$prd_name — GDD Validation Report</h1>
162
- <div class="subtitle">$prd_path</div>
163
- </div>
164
- <div class="grade $grade_class">$grade</div>
165
- </header>
166
-
167
- <div class="synthesis">$overall_synthesis</div>
168
-
169
- <div class="scoreboard">
170
- <div class="score-bar">$score_svg</div>
171
- <div class="score-stats">
172
- <span><span class="dot dot-pass"></span>$passed pass</span>
173
- <span><span class="dot dot-warn"></span>$warned warn</span>
174
- <span><span class="dot dot-fail"></span>$failed fail</span>
175
- <span><span class="dot dot-na"></span>$na n/a</span>
176
- <span class="total-count">$total items checked</span>
177
- </div>
178
- </div>
179
-
180
- $categories_html
181
-
182
- <footer class="report-footer">
183
- <div class="meta">
184
- <span>Checklist: $checklist_path</span>
185
- <span>Generated: $timestamp</span>
186
- </div>
187
- </footer>
188
- </div>
189
- </body>
190
- </html>
@@ -1,99 +0,0 @@
1
- # DO NOT EDIT -- overwritten on every update.
2
- #
3
- # Workflow customization surface for gds-gdd.
4
- #
5
- # Override files (not edited here):
6
- # {project-root}/_bmad/custom/gds-gdd.toml (team)
7
- # {project-root}/_bmad/custom/gds-gdd.user.toml (personal)
8
-
9
- [workflow]
10
-
11
- # --- Configurable below. Overrides merge per BMad structural rules: ---
12
- # scalars: override wins • arrays: append
13
-
14
- # Steps to run before the standard activation (config load, greet).
15
- # Use for pre-flight loads, compliance checks, etc.
16
- activation_steps_prepend = []
17
-
18
- # Steps to run after greet but before the workflow begins.
19
- # Use for context-heavy setup that should happen once the user has been acknowledged.
20
- activation_steps_append = []
21
-
22
- # Persistent facts the workflow keeps in mind for the whole run
23
- # (standards, compliance constraints, stylistic guardrails).
24
- # Each entry is either a literal sentence, a skill prefixed with `skill:`, or a `file:`-prefixed
25
- # path/glob whose contents are loaded as facts.
26
- #
27
- # Default loads project-context.md if gds-generate-project-context has produced one — this gives
28
- # the facilitator persistent awareness of the project's tech, domain, and constraints without
29
- # re-asking. Common opt-ins (set in team/user override TOML):
30
- # "skill:acme-studio:house-game-pillars" # a skill that contains relevant info
31
- # "Every mechanic in the GDD must trace back to a documented pillar." # generic agent instruction
32
- persistent_facts = [
33
- "file:{project-root}/**/project-context.md",
34
- ]
35
-
36
- # Executed when the workflow completes (after the user has been told the
37
- # GDD is ready). Accepts either a string scalar (single instruction)
38
- # or an array of instructions executed in order. Empty for none.
39
- on_complete = ""
40
-
41
- # Default GDD structure. Treated as a starting point — the LLM adapts it
42
- # to the game type and project scope. The {{GAME_TYPE_SPECIFIC_SECTIONS}}
43
- # slot is filled from the matched genre guide. Override the path in
44
- # team/user TOML to enforce a different structure (e.g. studio-standard GDD).
45
- gdd_template = "assets/gdd-template.md"
46
-
47
- # Validation checklist used at the Validate intent and at Finalize step 3.
48
- # A subagent walks the checklist against gdd.md and returns structured findings.
49
- # The genre and game-type checks read game_types_csv and genre_complexity_csv.
50
- # Override the path in team/user TOML to enforce a studio-specific checklist.
51
- validation_checklist = "assets/gdd-validation-checklist.md"
52
-
53
- # HTML template used to render validation findings into a styled, scannable
54
- # report. The renderer (scripts/render-validation-html.py) substitutes
55
- # structured findings + summary stats into this template; the template is
56
- # fully overridable to match studio branding. The default uses inline CSS, no
57
- # external dependencies, and native HTML <details> for collapse — no JS.
58
- validation_report_template = "assets/validation-report-template.html"
59
-
60
- # Game-type taxonomy. Drives game-type detection during Discovery and the
61
- # game-type cross-reference check during Validate. Columns: id, name,
62
- # description, genre_tags, fragment_file. Each fragment_file names a genre
63
- # guide under assets/game-types/ that scaffolds the GameType Specific Design
64
- # section. Override the path in team/user TOML to extend the taxonomy.
65
- game_types_csv = "assets/game-types.csv"
66
-
67
- # Genre-complexity ratings. Drives the genre-compliance check during Validate
68
- # and tells Discovery which genres carry must-document conventions. Columns:
69
- # genre, signals, complexity, key_concerns, required_knowledge,
70
- # suggested_workflow, special_sections.
71
- genre_complexity_csv = "assets/genre-complexity.csv"
72
-
73
- # Run folder location. The GDD, epics file, decision log, and optional
74
- # validation report all land inside `{output_dir}/{output_folder_name}/`.
75
- output_dir = "{planning_artifacts}/gdds"
76
- output_folder_name = "gdd-{project_name}-{date}"
77
-
78
- # Document standards applied to human-consumed docs at Finalize. Each entry is
79
- # a `skill:`, `file:`, or plain-text directive; the parent LLM applies the
80
- # findings before the user sees the draft. Empty by default — Game Dev Studio
81
- # ships no editorial-review skills. Add your own in team/user override TOML:
82
- # "skill:my-studio:editorial-review-prose"
83
- # "file:{project-root}/_bmad/style-guides/studio-voice.md"
84
- # "Convert all dates to ISO 8601 format."
85
- doc_standards = []
86
-
87
- # External-source registry. Natural-language directives describing knowledge
88
- # bases, MCP tools, or internal systems the LLM may consult during the workflow
89
- # when a relevant need surfaces. The LLM does NOT query these preemptively —
90
- # it consults them on demand. If a named MCP tool is unavailable at runtime,
91
- # the LLM falls back to standard behavior and notes the gap. Empty by default.
92
- external_sources = []
93
-
94
- # External-handoff routing. Natural-language directives the LLM applies at
95
- # Finalize to route outputs beyond local files (Confluence, Notion, Google
96
- # Drive, ticket systems, etc.). Handoffs run after the artifact is polished
97
- # and before the final user-facing message. URLs or IDs returned by the
98
- # destination are captured and surfaced to the user. Empty by default.
99
- external_handoffs = []