@delorenj/pjangler 1.2.21 → 1.2.33

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 (835) hide show
  1. package/README.md +12 -3
  2. package/dist/index.js +8577 -4137
  3. package/dist/mcp-server.js +8115 -4079
  4. package/package.json +19 -4
  5. package/templates/commonproject/copier.yml +6 -3
  6. package/templates/commonproject/template/.agents/skills.json +2 -1
  7. package/templates/commonproject/template/.env.op +6 -2
  8. package/templates/commonproject/template/.github/workflows/code-review.yml.jinja +48 -0
  9. package/templates/commonproject/template/.mise/scripts/materialize-env.sh +28 -0
  10. package/templates/commonproject/template/.mise/scripts/provision-packs.py +565 -0
  11. package/templates/commonproject/template/.mise/scripts/sync-skills.py +1728 -0
  12. package/templates/commonproject/template/mise.toml.jinja +14 -4
  13. package/templates/hermes-agent/copier.yml +11 -7
  14. package/templates/hermes-agent/template/.gitignore.jinja +6 -2
  15. package/templates/hermes-agent/template/.runtime-scaffold/README.md +4 -2
  16. package/templates/hermes-agent/template/.scripts/00-banner.sh +1 -1
  17. package/templates/hermes-agent/template/.scripts/01-config.sh +3 -0
  18. package/templates/hermes-agent/template/.scripts/10-hermes-profile.sh +12 -1
  19. package/templates/hermes-agent/template/.scripts/20-runtime-repo.sh +114 -131
  20. package/templates/hermes-agent/template/.scripts/30-telegram.sh +276 -22
  21. package/templates/hermes-agent/template/.scripts/31-slack.sh +362 -0
  22. package/templates/hermes-agent/template/.scripts/60-bloodbank.sh +8 -66
  23. package/templates/hermes-agent/template/.scripts/70-systemd.sh +50 -29
  24. package/templates/hermes-agent/template/.scripts/80-registry.sh +93 -13
  25. package/templates/hermes-agent/template/.scripts/99-summary.sh +1 -4
  26. package/templates/hermes-agent/template/.scripts/_lib.sh +66 -1
  27. package/templates/hermes-agent/template/.scripts/checkpoint.sh +3 -2
  28. package/templates/hermes-agent/template/.scripts/config.example.toml +10 -10
  29. package/templates/hermes-agent/template/.scripts/heartbeat.sh +1 -1
  30. package/templates/hermes-agent/template/.scripts/lib/ticket-provider.sh +15 -7
  31. package/templates/hermes-agent/template/.scripts/providers/linear.sh +41 -1
  32. package/templates/hermes-agent/template/.scripts/providers/plane.sh +91 -21
  33. package/templates/hermes-agent/template/.scripts/providers/trello.sh +34 -1
  34. package/templates/hermes-agent/template/.scripts/reporter-watchdog.py +242 -0
  35. package/templates/hermes-agent/template/.scripts/secret-scan.py +68 -0
  36. package/templates/hermes-agent/template/.scripts/sentinel.prompt.md.jinja +3 -2
  37. package/templates/hermes-agent/template/SOUL.md.jinja +32 -10
  38. package/templates/hermes-agent/template/hermes.jinja +6 -3
  39. package/templates/hermes-agent/template/role.yaml.jinja +25 -13
  40. package/templates/commonproject/.augment/commands/bmad/agents/bmb-agent-builder.md +0 -14
  41. package/templates/commonproject/.augment/commands/bmad/agents/bmb-module-builder.md +0 -14
  42. package/templates/commonproject/.augment/commands/bmad/agents/bmb-workflow-builder.md +0 -14
  43. package/templates/commonproject/.augment/commands/bmad/agents/bmm-analyst.md +0 -14
  44. package/templates/commonproject/.augment/commands/bmad/agents/bmm-architect.md +0 -14
  45. package/templates/commonproject/.augment/commands/bmad/agents/bmm-dev.md +0 -14
  46. package/templates/commonproject/.augment/commands/bmad/agents/bmm-pm.md +0 -14
  47. package/templates/commonproject/.augment/commands/bmad/agents/bmm-quick-flow-solo-dev.md +0 -14
  48. package/templates/commonproject/.augment/commands/bmad/agents/bmm-sm.md +0 -14
  49. package/templates/commonproject/.augment/commands/bmad/agents/bmm-tea.md +0 -14
  50. package/templates/commonproject/.augment/commands/bmad/agents/bmm-tech-writer.md +0 -14
  51. package/templates/commonproject/.augment/commands/bmad/agents/bmm-ux-designer.md +0 -14
  52. package/templates/commonproject/.augment/commands/bmad/agents/cis-brainstorming-coach.md +0 -14
  53. package/templates/commonproject/.augment/commands/bmad/agents/cis-creative-problem-solver.md +0 -14
  54. package/templates/commonproject/.augment/commands/bmad/agents/cis-design-thinking-coach.md +0 -14
  55. package/templates/commonproject/.augment/commands/bmad/agents/cis-innovation-strategist.md +0 -14
  56. package/templates/commonproject/.augment/commands/bmad/agents/cis-presentation-master.md +0 -14
  57. package/templates/commonproject/.augment/commands/bmad/agents/cis-storyteller.md +0 -14
  58. package/templates/commonproject/.augment/commands/bmad/agents/core-bmad-master.md +0 -14
  59. package/templates/commonproject/.augment/commands/bmad/tasks/core-index-docs.md +0 -74
  60. package/templates/commonproject/.augment/commands/bmad/tasks/core-shard-doc.md +0 -118
  61. package/templates/commonproject/.augment/commands/bmad/workflows/bmb-agent.md +0 -5
  62. package/templates/commonproject/.augment/commands/bmad/workflows/bmb-module.md +0 -5
  63. package/templates/commonproject/.augment/commands/bmad/workflows/bmb-workflow.md +0 -5
  64. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-check-implementation-readiness.md +0 -5
  65. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-code-review.md +0 -13
  66. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-correct-course.md +0 -13
  67. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-create-architecture.md +0 -5
  68. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-create-epics-and-stories.md +0 -5
  69. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-create-excalidraw-dataflow.md +0 -13
  70. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-create-excalidraw-diagram.md +0 -13
  71. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-create-excalidraw-flowchart.md +0 -13
  72. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-create-excalidraw-wireframe.md +0 -13
  73. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-create-product-brief.md +0 -5
  74. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-create-story.md +0 -13
  75. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-create-ux-design.md +0 -5
  76. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-dev-story.md +0 -13
  77. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-document-project.md +0 -13
  78. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-generate-project-context.md +0 -5
  79. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-prd.md +0 -5
  80. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-quick-dev.md +0 -5
  81. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-quick-spec.md +0 -5
  82. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-research.md +0 -5
  83. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-retrospective.md +0 -13
  84. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-sprint-planning.md +0 -13
  85. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-sprint-status.md +0 -13
  86. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-testarch-atdd.md +0 -13
  87. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-testarch-automate.md +0 -13
  88. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-testarch-ci.md +0 -13
  89. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-testarch-framework.md +0 -13
  90. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-testarch-nfr.md +0 -13
  91. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-testarch-test-design.md +0 -13
  92. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-testarch-test-review.md +0 -13
  93. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-testarch-trace.md +0 -13
  94. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-workflow-init.md +0 -13
  95. package/templates/commonproject/.augment/commands/bmad/workflows/bmm-workflow-status.md +0 -13
  96. package/templates/commonproject/.augment/commands/bmad/workflows/cis-design-thinking.md +0 -13
  97. package/templates/commonproject/.augment/commands/bmad/workflows/cis-innovation-strategy.md +0 -13
  98. package/templates/commonproject/.augment/commands/bmad/workflows/cis-problem-solving.md +0 -13
  99. package/templates/commonproject/.augment/commands/bmad/workflows/cis-storytelling.md +0 -13
  100. package/templates/commonproject/.augment/commands/bmad/workflows/core-brainstorming.md +0 -5
  101. package/templates/commonproject/.augment/commands/bmad/workflows/core-party-mode.md +0 -5
  102. package/templates/commonproject/.augment/commands/bmad/workflows/custom-ticket-lifecycle.md +0 -5
  103. package/templates/commonproject/.copier-answers.yml +0 -4
  104. package/templates/commonproject/.gemini/commands/bmad-agent-bmb-agent-builder.toml +0 -12
  105. package/templates/commonproject/.gemini/commands/bmad-agent-bmb-module-builder.toml +0 -12
  106. package/templates/commonproject/.gemini/commands/bmad-agent-bmb-workflow-builder.toml +0 -12
  107. package/templates/commonproject/.gemini/commands/bmad-agent-bmm-analyst.toml +0 -12
  108. package/templates/commonproject/.gemini/commands/bmad-agent-bmm-architect.toml +0 -12
  109. package/templates/commonproject/.gemini/commands/bmad-agent-bmm-dev.toml +0 -12
  110. package/templates/commonproject/.gemini/commands/bmad-agent-bmm-pm.toml +0 -12
  111. package/templates/commonproject/.gemini/commands/bmad-agent-bmm-quick-flow-solo-dev.toml +0 -12
  112. package/templates/commonproject/.gemini/commands/bmad-agent-bmm-sm.toml +0 -12
  113. package/templates/commonproject/.gemini/commands/bmad-agent-bmm-tea.toml +0 -12
  114. package/templates/commonproject/.gemini/commands/bmad-agent-bmm-tech-writer.toml +0 -12
  115. package/templates/commonproject/.gemini/commands/bmad-agent-bmm-ux-designer.toml +0 -12
  116. package/templates/commonproject/.gemini/commands/bmad-agent-cis-brainstorming-coach.toml +0 -12
  117. package/templates/commonproject/.gemini/commands/bmad-agent-cis-creative-problem-solver.toml +0 -12
  118. package/templates/commonproject/.gemini/commands/bmad-agent-cis-design-thinking-coach.toml +0 -12
  119. package/templates/commonproject/.gemini/commands/bmad-agent-cis-innovation-strategist.toml +0 -12
  120. package/templates/commonproject/.gemini/commands/bmad-agent-cis-presentation-master.toml +0 -12
  121. package/templates/commonproject/.gemini/commands/bmad-agent-cis-storyteller.toml +0 -12
  122. package/templates/commonproject/.gemini/commands/bmad-agent-core-bmad-master.toml +0 -12
  123. package/templates/commonproject/.gemini/commands/bmad-task-core-index-docs.toml +0 -12
  124. package/templates/commonproject/.gemini/commands/bmad-task-core-review-adversarial-general.toml +0 -12
  125. package/templates/commonproject/.gemini/commands/bmad-task-core-shard-doc.toml +0 -12
  126. package/templates/commonproject/.gemini/commands/bmad-task-core-workflow.toml +0 -12
  127. package/templates/commonproject/.gemini/commands/bmad-workflow-bmb-agent.toml +0 -4
  128. package/templates/commonproject/.gemini/commands/bmad-workflow-bmb-module.toml +0 -4
  129. package/templates/commonproject/.gemini/commands/bmad-workflow-bmb-workflow.toml +0 -4
  130. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-check-implementation-readiness.toml +0 -4
  131. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-code-review.toml +0 -12
  132. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-correct-course.toml +0 -12
  133. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-create-architecture.toml +0 -4
  134. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-create-epics-and-stories.toml +0 -4
  135. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-create-excalidraw-dataflow.toml +0 -12
  136. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-create-excalidraw-diagram.toml +0 -12
  137. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-create-excalidraw-flowchart.toml +0 -12
  138. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-create-excalidraw-wireframe.toml +0 -12
  139. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-create-product-brief.toml +0 -4
  140. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-create-story.toml +0 -12
  141. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-create-ux-design.toml +0 -4
  142. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-dev-story.toml +0 -12
  143. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-document-project.toml +0 -12
  144. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-generate-project-context.toml +0 -4
  145. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-prd.toml +0 -4
  146. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-quick-dev.toml +0 -4
  147. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-quick-spec.toml +0 -4
  148. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-research.toml +0 -4
  149. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-retrospective.toml +0 -12
  150. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-sprint-planning.toml +0 -12
  151. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-sprint-status.toml +0 -12
  152. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-testarch-atdd.toml +0 -12
  153. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-testarch-automate.toml +0 -12
  154. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-testarch-ci.toml +0 -12
  155. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-testarch-framework.toml +0 -12
  156. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-testarch-nfr.toml +0 -12
  157. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-testarch-test-design.toml +0 -12
  158. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-testarch-test-review.toml +0 -12
  159. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-testarch-trace.toml +0 -12
  160. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-workflow-init.toml +0 -12
  161. package/templates/commonproject/.gemini/commands/bmad-workflow-bmm-workflow-status.toml +0 -12
  162. package/templates/commonproject/.gemini/commands/bmad-workflow-cis-design-thinking.toml +0 -12
  163. package/templates/commonproject/.gemini/commands/bmad-workflow-cis-innovation-strategy.toml +0 -12
  164. package/templates/commonproject/.gemini/commands/bmad-workflow-cis-problem-solving.toml +0 -12
  165. package/templates/commonproject/.gemini/commands/bmad-workflow-cis-storytelling.toml +0 -12
  166. package/templates/commonproject/.gemini/commands/bmad-workflow-core-brainstorming.toml +0 -4
  167. package/templates/commonproject/.gemini/commands/bmad-workflow-core-party-mode.toml +0 -4
  168. package/templates/commonproject/.gemini/commands/bmad-workflow-custom-ticket-lifecycle.toml +0 -4
  169. package/templates/commonproject/.github/agents/bmd-custom-bmb-agent-builder.agent.md +0 -17
  170. package/templates/commonproject/.github/agents/bmd-custom-bmb-module-builder.agent.md +0 -17
  171. package/templates/commonproject/.github/agents/bmd-custom-bmb-workflow-builder.agent.md +0 -17
  172. package/templates/commonproject/.github/agents/bmd-custom-bmm-analyst.agent.md +0 -17
  173. package/templates/commonproject/.github/agents/bmd-custom-bmm-architect.agent.md +0 -17
  174. package/templates/commonproject/.github/agents/bmd-custom-bmm-dev.agent.md +0 -17
  175. package/templates/commonproject/.github/agents/bmd-custom-bmm-pm.agent.md +0 -17
  176. package/templates/commonproject/.github/agents/bmd-custom-bmm-quick-flow-solo-dev.agent.md +0 -17
  177. package/templates/commonproject/.github/agents/bmd-custom-bmm-sm.agent.md +0 -17
  178. package/templates/commonproject/.github/agents/bmd-custom-bmm-tea.agent.md +0 -17
  179. package/templates/commonproject/.github/agents/bmd-custom-bmm-tech-writer.agent.md +0 -17
  180. package/templates/commonproject/.github/agents/bmd-custom-bmm-ux-designer.agent.md +0 -17
  181. package/templates/commonproject/.github/agents/bmd-custom-cis-brainstorming-coach.agent.md +0 -17
  182. package/templates/commonproject/.github/agents/bmd-custom-cis-creative-problem-solver.agent.md +0 -17
  183. package/templates/commonproject/.github/agents/bmd-custom-cis-design-thinking-coach.agent.md +0 -17
  184. package/templates/commonproject/.github/agents/bmd-custom-cis-innovation-strategist.agent.md +0 -17
  185. package/templates/commonproject/.github/agents/bmd-custom-cis-presentation-master.agent.md +0 -17
  186. package/templates/commonproject/.github/agents/bmd-custom-cis-storyteller.agent.md +0 -17
  187. package/templates/commonproject/.github/agents/bmd-custom-core-bmad-master.agent.md +0 -17
  188. package/templates/commonproject/.mcp.json +0 -12
  189. package/templates/commonproject/.mise/scripts/claude +0 -13
  190. package/templates/commonproject/.mise/scripts/create-plane-project.sh +0 -149
  191. package/templates/commonproject/.mise/scripts/init-project.sh +0 -314
  192. package/templates/commonproject/.mise/scripts/link-agentfiles.sh +0 -9
  193. package/templates/commonproject/.opencode/agent/bmad-agent-bmb-agent-builder.md +0 -14
  194. package/templates/commonproject/.opencode/agent/bmad-agent-bmb-module-builder.md +0 -14
  195. package/templates/commonproject/.opencode/agent/bmad-agent-bmb-workflow-builder.md +0 -14
  196. package/templates/commonproject/.opencode/agent/bmad-agent-bmm-analyst.md +0 -14
  197. package/templates/commonproject/.opencode/agent/bmad-agent-bmm-architect.md +0 -14
  198. package/templates/commonproject/.opencode/agent/bmad-agent-bmm-dev.md +0 -14
  199. package/templates/commonproject/.opencode/agent/bmad-agent-bmm-pm.md +0 -14
  200. package/templates/commonproject/.opencode/agent/bmad-agent-bmm-quick-flow-solo-dev.md +0 -14
  201. package/templates/commonproject/.opencode/agent/bmad-agent-bmm-sm.md +0 -14
  202. package/templates/commonproject/.opencode/agent/bmad-agent-bmm-tea.md +0 -14
  203. package/templates/commonproject/.opencode/agent/bmad-agent-bmm-tech-writer.md +0 -14
  204. package/templates/commonproject/.opencode/agent/bmad-agent-bmm-ux-designer.md +0 -14
  205. package/templates/commonproject/.opencode/agent/bmad-agent-cis-brainstorming-coach.md +0 -14
  206. package/templates/commonproject/.opencode/agent/bmad-agent-cis-creative-problem-solver.md +0 -14
  207. package/templates/commonproject/.opencode/agent/bmad-agent-cis-design-thinking-coach.md +0 -14
  208. package/templates/commonproject/.opencode/agent/bmad-agent-cis-innovation-strategist.md +0 -14
  209. package/templates/commonproject/.opencode/agent/bmad-agent-cis-presentation-master.md +0 -14
  210. package/templates/commonproject/.opencode/agent/bmad-agent-cis-storyteller.md +0 -14
  211. package/templates/commonproject/.opencode/agent/bmad-agent-core-bmad-master.md +0 -14
  212. package/templates/commonproject/.opencode/command/bmad-bmb-agent.md +0 -5
  213. package/templates/commonproject/.opencode/command/bmad-bmb-module.md +0 -5
  214. package/templates/commonproject/.opencode/command/bmad-bmb-workflow.md +0 -5
  215. package/templates/commonproject/.opencode/command/bmad-bmm-check-implementation-readiness.md +0 -5
  216. package/templates/commonproject/.opencode/command/bmad-bmm-code-review.md +0 -13
  217. package/templates/commonproject/.opencode/command/bmad-bmm-correct-course.md +0 -13
  218. package/templates/commonproject/.opencode/command/bmad-bmm-create-architecture.md +0 -5
  219. package/templates/commonproject/.opencode/command/bmad-bmm-create-epics-and-stories.md +0 -5
  220. package/templates/commonproject/.opencode/command/bmad-bmm-create-excalidraw-dataflow.md +0 -13
  221. package/templates/commonproject/.opencode/command/bmad-bmm-create-excalidraw-diagram.md +0 -13
  222. package/templates/commonproject/.opencode/command/bmad-bmm-create-excalidraw-flowchart.md +0 -13
  223. package/templates/commonproject/.opencode/command/bmad-bmm-create-excalidraw-wireframe.md +0 -13
  224. package/templates/commonproject/.opencode/command/bmad-bmm-create-product-brief.md +0 -5
  225. package/templates/commonproject/.opencode/command/bmad-bmm-create-story.md +0 -13
  226. package/templates/commonproject/.opencode/command/bmad-bmm-create-ux-design.md +0 -5
  227. package/templates/commonproject/.opencode/command/bmad-bmm-dev-story.md +0 -13
  228. package/templates/commonproject/.opencode/command/bmad-bmm-document-project.md +0 -13
  229. package/templates/commonproject/.opencode/command/bmad-bmm-generate-project-context.md +0 -5
  230. package/templates/commonproject/.opencode/command/bmad-bmm-prd.md +0 -5
  231. package/templates/commonproject/.opencode/command/bmad-bmm-quick-dev.md +0 -5
  232. package/templates/commonproject/.opencode/command/bmad-bmm-quick-spec.md +0 -5
  233. package/templates/commonproject/.opencode/command/bmad-bmm-research.md +0 -5
  234. package/templates/commonproject/.opencode/command/bmad-bmm-retrospective.md +0 -13
  235. package/templates/commonproject/.opencode/command/bmad-bmm-sprint-planning.md +0 -13
  236. package/templates/commonproject/.opencode/command/bmad-bmm-sprint-status.md +0 -13
  237. package/templates/commonproject/.opencode/command/bmad-bmm-testarch-atdd.md +0 -13
  238. package/templates/commonproject/.opencode/command/bmad-bmm-testarch-automate.md +0 -13
  239. package/templates/commonproject/.opencode/command/bmad-bmm-testarch-ci.md +0 -13
  240. package/templates/commonproject/.opencode/command/bmad-bmm-testarch-framework.md +0 -13
  241. package/templates/commonproject/.opencode/command/bmad-bmm-testarch-nfr.md +0 -13
  242. package/templates/commonproject/.opencode/command/bmad-bmm-testarch-test-design.md +0 -13
  243. package/templates/commonproject/.opencode/command/bmad-bmm-testarch-test-review.md +0 -13
  244. package/templates/commonproject/.opencode/command/bmad-bmm-testarch-trace.md +0 -13
  245. package/templates/commonproject/.opencode/command/bmad-bmm-workflow-init.md +0 -13
  246. package/templates/commonproject/.opencode/command/bmad-bmm-workflow-status.md +0 -13
  247. package/templates/commonproject/.opencode/command/bmad-cis-design-thinking.md +0 -13
  248. package/templates/commonproject/.opencode/command/bmad-cis-innovation-strategy.md +0 -13
  249. package/templates/commonproject/.opencode/command/bmad-cis-problem-solving.md +0 -13
  250. package/templates/commonproject/.opencode/command/bmad-cis-storytelling.md +0 -13
  251. package/templates/commonproject/.opencode/command/bmad-core-brainstorming.md +0 -5
  252. package/templates/commonproject/.opencode/command/bmad-core-party-mode.md +0 -5
  253. package/templates/commonproject/.opencode/command/bmad-custom-ticket-lifecycle.md +0 -5
  254. package/templates/commonproject/.opencode/command/bmad-task-core-index-docs.md +0 -9
  255. package/templates/commonproject/.opencode/command/bmad-task-core-shard-doc.md +0 -9
  256. package/templates/commonproject/.plane.json +0 -6
  257. package/templates/commonproject/.scripts/test-template.sh +0 -63
  258. package/templates/commonproject/AGENTS.md +0 -86
  259. package/templates/commonproject/README.md +0 -172
  260. package/templates/commonproject/_bmad/_config/agent-manifest.csv +0 -20
  261. package/templates/commonproject/_bmad/_config/agents/bmb-agent-builder.customize.yaml +0 -41
  262. package/templates/commonproject/_bmad/_config/agents/bmb-module-builder.customize.yaml +0 -41
  263. package/templates/commonproject/_bmad/_config/agents/bmb-workflow-builder.customize.yaml +0 -41
  264. package/templates/commonproject/_bmad/_config/agents/bmm-analyst.customize.yaml +0 -41
  265. package/templates/commonproject/_bmad/_config/agents/bmm-architect.customize.yaml +0 -41
  266. package/templates/commonproject/_bmad/_config/agents/bmm-dev.customize.yaml +0 -41
  267. package/templates/commonproject/_bmad/_config/agents/bmm-pm.customize.yaml +0 -41
  268. package/templates/commonproject/_bmad/_config/agents/bmm-quick-flow-solo-dev.customize.yaml +0 -41
  269. package/templates/commonproject/_bmad/_config/agents/bmm-sm.customize.yaml +0 -41
  270. package/templates/commonproject/_bmad/_config/agents/bmm-tea.customize.yaml +0 -41
  271. package/templates/commonproject/_bmad/_config/agents/bmm-tech-writer.customize.yaml +0 -41
  272. package/templates/commonproject/_bmad/_config/agents/bmm-ux-designer.customize.yaml +0 -41
  273. package/templates/commonproject/_bmad/_config/agents/cis-brainstorming-coach.customize.yaml +0 -41
  274. package/templates/commonproject/_bmad/_config/agents/cis-creative-problem-solver.customize.yaml +0 -41
  275. package/templates/commonproject/_bmad/_config/agents/cis-design-thinking-coach.customize.yaml +0 -41
  276. package/templates/commonproject/_bmad/_config/agents/cis-innovation-strategist.customize.yaml +0 -41
  277. package/templates/commonproject/_bmad/_config/agents/cis-presentation-master.customize.yaml +0 -41
  278. package/templates/commonproject/_bmad/_config/agents/cis-storyteller.customize.yaml +0 -41
  279. package/templates/commonproject/_bmad/_config/agents/core-bmad-master.customize.yaml +0 -41
  280. package/templates/commonproject/_bmad/_config/custom/cache-manifest.yaml +0 -4
  281. package/templates/commonproject/_bmad/_config/custom/custom/module.yaml +0 -8
  282. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/data/ac-sufficiency-rubric.md +0 -33
  283. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/data/audit-comment-template.md +0 -54
  284. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/data/event-schemas.md +0 -58
  285. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/steps-c/step-01-init.md +0 -173
  286. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/steps-c/step-02-triage.md +0 -159
  287. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/steps-c/step-03-refine.md +0 -149
  288. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/steps-c/step-04-implement.md +0 -147
  289. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/steps-c/step-05-review.md +0 -146
  290. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/steps-c/step-06-qa.md +0 -199
  291. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/steps-c/step-07-complete.md +0 -141
  292. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/steps-e/step-01-assess.md +0 -102
  293. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/steps-e/step-02-apply.md +0 -85
  294. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/steps-v/step-01-validate.md +0 -154
  295. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/workflow-plan-ticket-lifecycle.md +0 -346
  296. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/workflow.md +0 -84
  297. package/templates/commonproject/_bmad/_config/custom/custom/workflows/ticket-lifecycle/workflow.yaml +0 -39
  298. package/templates/commonproject/_bmad/_config/files-manifest.csv +0 -483
  299. package/templates/commonproject/_bmad/_config/ides/claude-code.yaml +0 -6
  300. package/templates/commonproject/_bmad/_config/ides/codex.yaml +0 -5
  301. package/templates/commonproject/_bmad/_config/manifest.yaml +0 -18
  302. package/templates/commonproject/_bmad/_config/task-manifest.csv +0 -5
  303. package/templates/commonproject/_bmad/_config/tool-manifest.csv +0 -1
  304. package/templates/commonproject/_bmad/_config/workflow-manifest.csv +0 -43
  305. package/templates/commonproject/_bmad/_memory/config.yaml +0 -11
  306. package/templates/commonproject/_bmad/_memory/storyteller-sidecar/stories-told.md +0 -7
  307. package/templates/commonproject/_bmad/_memory/storyteller-sidecar/story-preferences.md +0 -7
  308. package/templates/commonproject/_bmad/bmb/README.md +0 -25
  309. package/templates/commonproject/_bmad/bmb/agents/agent-builder.md +0 -64
  310. package/templates/commonproject/_bmad/bmb/agents/module-builder.md +0 -65
  311. package/templates/commonproject/_bmad/bmb/agents/workflow-builder.md +0 -66
  312. package/templates/commonproject/_bmad/bmb/config.yaml +0 -12
  313. package/templates/commonproject/_bmad/bmb/workflows/agent/data/agent-compilation.md +0 -273
  314. package/templates/commonproject/_bmad/bmb/workflows/agent/data/agent-menu-patterns.md +0 -233
  315. package/templates/commonproject/_bmad/bmb/workflows/agent/data/agent-metadata.md +0 -208
  316. package/templates/commonproject/_bmad/bmb/workflows/agent/data/brainstorm-context.md +0 -146
  317. package/templates/commonproject/_bmad/bmb/workflows/agent/data/communication-presets.csv +0 -61
  318. package/templates/commonproject/_bmad/bmb/workflows/agent/data/critical-actions.md +0 -120
  319. package/templates/commonproject/_bmad/bmb/workflows/agent/data/expert-agent-architecture.md +0 -236
  320. package/templates/commonproject/_bmad/bmb/workflows/agent/data/expert-agent-validation.md +0 -174
  321. package/templates/commonproject/_bmad/bmb/workflows/agent/data/module-agent-validation.md +0 -126
  322. package/templates/commonproject/_bmad/bmb/workflows/agent/data/persona-properties.md +0 -266
  323. package/templates/commonproject/_bmad/bmb/workflows/agent/data/principles-crafting.md +0 -292
  324. package/templates/commonproject/_bmad/bmb/workflows/agent/data/reference/module-examples/architect.md +0 -68
  325. package/templates/commonproject/_bmad/bmb/workflows/agent/data/simple-agent-architecture.md +0 -204
  326. package/templates/commonproject/_bmad/bmb/workflows/agent/data/simple-agent-validation.md +0 -133
  327. package/templates/commonproject/_bmad/bmb/workflows/agent/data/understanding-agent-types.md +0 -222
  328. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-c/step-01-brainstorm.md +0 -128
  329. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-c/step-02-discovery.md +0 -170
  330. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-c/step-03-type-metadata.md +0 -296
  331. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-c/step-04-persona.md +0 -212
  332. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-c/step-05-commands-menu.md +0 -178
  333. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-c/step-06-activation.md +0 -279
  334. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-c/step-07a-build-simple.md +0 -187
  335. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-c/step-07b-build-expert.md +0 -201
  336. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-c/step-07c-build-module.md +0 -258
  337. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-c/step-08-celebrate.md +0 -249
  338. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-e/e-01-load-existing.md +0 -221
  339. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-e/e-02-discover-edits.md +0 -193
  340. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-e/e-03-placeholder.md +0 -1
  341. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-e/e-04-type-metadata.md +0 -124
  342. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-e/e-05-persona.md +0 -134
  343. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-e/e-06-commands-menu.md +0 -122
  344. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-e/e-07-activation.md +0 -125
  345. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-e/e-08a-edit-simple.md +0 -137
  346. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-e/e-08b-edit-expert.md +0 -119
  347. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-e/e-08c-edit-module.md +0 -123
  348. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-e/e-09-celebrate.md +0 -155
  349. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-v/v-01-load-review.md +0 -136
  350. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-v/v-02a-validate-metadata.md +0 -116
  351. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-v/v-02b-validate-persona.md +0 -124
  352. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-v/v-02c-validate-menu.md +0 -145
  353. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-v/v-02d-validate-structure.md +0 -136
  354. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-v/v-02e-validate-sidecar.md +0 -136
  355. package/templates/commonproject/_bmad/bmb/workflows/agent/steps-v/v-03-summary.md +0 -104
  356. package/templates/commonproject/_bmad/bmb/workflows/agent/templates/agent-plan.template.md +0 -5
  357. package/templates/commonproject/_bmad/bmb/workflows/agent/templates/expert-agent-template/expert-agent.template.md +0 -77
  358. package/templates/commonproject/_bmad/bmb/workflows/agent/templates/simple-agent.template.md +0 -72
  359. package/templates/commonproject/_bmad/bmb/workflows/agent/workflow.md +0 -123
  360. package/templates/commonproject/_bmad/bmb/workflows/module/data/agent-architecture.md +0 -179
  361. package/templates/commonproject/_bmad/bmb/workflows/module/data/agent-spec-template.md +0 -79
  362. package/templates/commonproject/_bmad/bmb/workflows/module/data/module-installer-standards.md +0 -348
  363. package/templates/commonproject/_bmad/bmb/workflows/module/data/module-standards.md +0 -280
  364. package/templates/commonproject/_bmad/bmb/workflows/module/data/module-yaml-conventions.md +0 -392
  365. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-01-welcome.md +0 -147
  366. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-02-spark.md +0 -140
  367. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-03-module-type.md +0 -148
  368. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-04-vision.md +0 -82
  369. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-05-identity.md +0 -96
  370. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-06-users.md +0 -85
  371. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-07-value.md +0 -75
  372. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-08-agents.md +0 -96
  373. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-09-workflows.md +0 -82
  374. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-10-tools.md +0 -90
  375. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-11-scenarios.md +0 -83
  376. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-12-creative.md +0 -94
  377. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-13-review.md +0 -104
  378. package/templates/commonproject/_bmad/bmb/workflows/module/steps-b/step-14-finalize.md +0 -117
  379. package/templates/commonproject/_bmad/bmb/workflows/module/steps-c/step-01-load-brief.md +0 -178
  380. package/templates/commonproject/_bmad/bmb/workflows/module/steps-c/step-01b-continue.md +0 -83
  381. package/templates/commonproject/_bmad/bmb/workflows/module/steps-c/step-02-structure.md +0 -109
  382. package/templates/commonproject/_bmad/bmb/workflows/module/steps-c/step-03-config.md +0 -118
  383. package/templates/commonproject/_bmad/bmb/workflows/module/steps-c/step-04-installer.md +0 -160
  384. package/templates/commonproject/_bmad/bmb/workflows/module/steps-c/step-05-agents.md +0 -167
  385. package/templates/commonproject/_bmad/bmb/workflows/module/steps-c/step-06-workflows.md +0 -183
  386. package/templates/commonproject/_bmad/bmb/workflows/module/steps-c/step-07-docs.md +0 -402
  387. package/templates/commonproject/_bmad/bmb/workflows/module/steps-c/step-08-complete.md +0 -123
  388. package/templates/commonproject/_bmad/bmb/workflows/module/steps-e/step-01-load-target.md +0 -81
  389. package/templates/commonproject/_bmad/bmb/workflows/module/steps-e/step-02-select-edit.md +0 -77
  390. package/templates/commonproject/_bmad/bmb/workflows/module/steps-e/step-03-apply-edit.md +0 -77
  391. package/templates/commonproject/_bmad/bmb/workflows/module/steps-e/step-04-review.md +0 -80
  392. package/templates/commonproject/_bmad/bmb/workflows/module/steps-e/step-05-confirm.md +0 -75
  393. package/templates/commonproject/_bmad/bmb/workflows/module/steps-v/step-01-load-target.md +0 -96
  394. package/templates/commonproject/_bmad/bmb/workflows/module/steps-v/step-02-file-structure.md +0 -94
  395. package/templates/commonproject/_bmad/bmb/workflows/module/steps-v/step-03-module-yaml.md +0 -99
  396. package/templates/commonproject/_bmad/bmb/workflows/module/steps-v/step-04-agent-specs.md +0 -152
  397. package/templates/commonproject/_bmad/bmb/workflows/module/steps-v/step-05-workflow-specs.md +0 -152
  398. package/templates/commonproject/_bmad/bmb/workflows/module/steps-v/step-06-documentation.md +0 -143
  399. package/templates/commonproject/_bmad/bmb/workflows/module/steps-v/step-07-installation.md +0 -113
  400. package/templates/commonproject/_bmad/bmb/workflows/module/steps-v/step-08-report.md +0 -197
  401. package/templates/commonproject/_bmad/bmb/workflows/module/templates/brief-template.md +0 -154
  402. package/templates/commonproject/_bmad/bmb/workflows/module/templates/workflow-spec-template.md +0 -96
  403. package/templates/commonproject/_bmad/bmb/workflows/module/workflow.md +0 -100
  404. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/architecture.md +0 -152
  405. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/common-workflow-tools.csv +0 -19
  406. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/csv-data-file-standards.md +0 -81
  407. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/frontmatter-standards.md +0 -225
  408. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/input-discovery-standards.md +0 -269
  409. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/intent-vs-prescriptive-spectrum.md +0 -50
  410. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/menu-handling-standards.md +0 -167
  411. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/output-format-standards.md +0 -188
  412. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/step-file-rules.md +0 -235
  413. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/step-type-patterns.md +0 -311
  414. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/subprocess-optimization-patterns.md +0 -386
  415. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/trimodal-workflow-structure.md +0 -209
  416. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/workflow-chaining-standards.md +0 -271
  417. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/workflow-examples.md +0 -276
  418. package/templates/commonproject/_bmad/bmb/workflows/workflow/data/workflow-type-criteria.md +0 -172
  419. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-c/step-00-conversion.md +0 -262
  420. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-c/step-01-discovery.md +0 -194
  421. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-c/step-01b-continuation.md +0 -3
  422. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-c/step-02-classification.md +0 -269
  423. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-c/step-03-requirements.md +0 -282
  424. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-c/step-04-tools.md +0 -281
  425. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-c/step-05-plan-review.md +0 -242
  426. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-c/step-06-design.md +0 -329
  427. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-c/step-07-foundation.md +0 -238
  428. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-c/step-08-build-step-01.md +0 -377
  429. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-c/step-09-build-next-step.md +0 -350
  430. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-c/step-10-confirmation.md +0 -320
  431. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-c/step-11-completion.md +0 -191
  432. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-e/step-e-01-assess-workflow.md +0 -237
  433. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-e/step-e-02-discover-edits.md +0 -248
  434. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-e/step-e-03-fix-validation.md +0 -252
  435. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-e/step-e-04-direct-edit.md +0 -275
  436. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-e/step-e-05-apply-edit.md +0 -154
  437. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-e/step-e-06-validate-after.md +0 -190
  438. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-e/step-e-07-complete.md +0 -206
  439. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-01-validate-max-mode.md +0 -109
  440. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-01-validate.md +0 -221
  441. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-01b-structure.md +0 -152
  442. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-02-frontmatter-validation.md +0 -199
  443. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-02b-path-violations.md +0 -265
  444. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-03-menu-validation.md +0 -164
  445. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-04-step-type-validation.md +0 -211
  446. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-05-output-format-validation.md +0 -200
  447. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-06-validation-design-check.md +0 -195
  448. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-07-instruction-style-check.md +0 -209
  449. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-08-collaborative-experience-check.md +0 -199
  450. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-08b-subprocess-optimization.md +0 -179
  451. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-09-cohesive-review.md +0 -186
  452. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-10-report-complete.md +0 -154
  453. package/templates/commonproject/_bmad/bmb/workflows/workflow/steps-v/step-11-plan-validation.md +0 -237
  454. package/templates/commonproject/_bmad/bmb/workflows/workflow/templates/minimal-output-template.md +0 -11
  455. package/templates/commonproject/_bmad/bmb/workflows/workflow/templates/step-01-init-continuable-template.md +0 -241
  456. package/templates/commonproject/_bmad/bmb/workflows/workflow/templates/step-1b-template.md +0 -223
  457. package/templates/commonproject/_bmad/bmb/workflows/workflow/templates/step-template.md +0 -290
  458. package/templates/commonproject/_bmad/bmb/workflows/workflow/templates/workflow-template.md +0 -102
  459. package/templates/commonproject/_bmad/bmb/workflows/workflow/workflow.md +0 -109
  460. package/templates/commonproject/_bmad/bmm/agents/analyst.md +0 -82
  461. package/templates/commonproject/_bmad/bmm/agents/architect.md +0 -74
  462. package/templates/commonproject/_bmad/bmm/agents/dev.md +0 -76
  463. package/templates/commonproject/_bmad/bmm/agents/pm.md +0 -78
  464. package/templates/commonproject/_bmad/bmm/agents/quick-flow-solo-dev.md +0 -74
  465. package/templates/commonproject/_bmad/bmm/agents/sm.md +0 -77
  466. package/templates/commonproject/_bmad/bmm/agents/tea.md +0 -77
  467. package/templates/commonproject/_bmad/bmm/agents/tech-writer.md +0 -78
  468. package/templates/commonproject/_bmad/bmm/agents/ux-designer.md +0 -74
  469. package/templates/commonproject/_bmad/bmm/config.yaml +0 -18
  470. package/templates/commonproject/_bmad/bmm/data/README.md +0 -29
  471. package/templates/commonproject/_bmad/bmm/data/documentation-standards.md +0 -262
  472. package/templates/commonproject/_bmad/bmm/data/project-context-template.md +0 -40
  473. package/templates/commonproject/_bmad/bmm/teams/default-party.csv +0 -21
  474. package/templates/commonproject/_bmad/bmm/teams/team-fullstack.yaml +0 -12
  475. package/templates/commonproject/_bmad/bmm/testarch/knowledge/api-request.md +0 -442
  476. package/templates/commonproject/_bmad/bmm/testarch/knowledge/api-testing-patterns.md +0 -843
  477. package/templates/commonproject/_bmad/bmm/testarch/knowledge/auth-session.md +0 -552
  478. package/templates/commonproject/_bmad/bmm/testarch/knowledge/burn-in.md +0 -273
  479. package/templates/commonproject/_bmad/bmm/testarch/knowledge/ci-burn-in.md +0 -675
  480. package/templates/commonproject/_bmad/bmm/testarch/knowledge/component-tdd.md +0 -486
  481. package/templates/commonproject/_bmad/bmm/testarch/knowledge/contract-testing.md +0 -957
  482. package/templates/commonproject/_bmad/bmm/testarch/knowledge/data-factories.md +0 -500
  483. package/templates/commonproject/_bmad/bmm/testarch/knowledge/email-auth.md +0 -721
  484. package/templates/commonproject/_bmad/bmm/testarch/knowledge/error-handling.md +0 -725
  485. package/templates/commonproject/_bmad/bmm/testarch/knowledge/feature-flags.md +0 -750
  486. package/templates/commonproject/_bmad/bmm/testarch/knowledge/file-utils.md +0 -463
  487. package/templates/commonproject/_bmad/bmm/testarch/knowledge/fixture-architecture.md +0 -401
  488. package/templates/commonproject/_bmad/bmm/testarch/knowledge/fixtures-composition.md +0 -382
  489. package/templates/commonproject/_bmad/bmm/testarch/knowledge/intercept-network-call.md +0 -430
  490. package/templates/commonproject/_bmad/bmm/testarch/knowledge/log.md +0 -429
  491. package/templates/commonproject/_bmad/bmm/testarch/knowledge/network-error-monitor.md +0 -405
  492. package/templates/commonproject/_bmad/bmm/testarch/knowledge/network-first.md +0 -486
  493. package/templates/commonproject/_bmad/bmm/testarch/knowledge/network-recorder.md +0 -527
  494. package/templates/commonproject/_bmad/bmm/testarch/knowledge/nfr-criteria.md +0 -670
  495. package/templates/commonproject/_bmad/bmm/testarch/knowledge/overview.md +0 -286
  496. package/templates/commonproject/_bmad/bmm/testarch/knowledge/playwright-config.md +0 -730
  497. package/templates/commonproject/_bmad/bmm/testarch/knowledge/probability-impact.md +0 -601
  498. package/templates/commonproject/_bmad/bmm/testarch/knowledge/recurse.md +0 -421
  499. package/templates/commonproject/_bmad/bmm/testarch/knowledge/risk-governance.md +0 -615
  500. package/templates/commonproject/_bmad/bmm/testarch/knowledge/selective-testing.md +0 -732
  501. package/templates/commonproject/_bmad/bmm/testarch/knowledge/selector-resilience.md +0 -527
  502. package/templates/commonproject/_bmad/bmm/testarch/knowledge/test-healing-patterns.md +0 -644
  503. package/templates/commonproject/_bmad/bmm/testarch/knowledge/test-levels-framework.md +0 -473
  504. package/templates/commonproject/_bmad/bmm/testarch/knowledge/test-priorities-matrix.md +0 -373
  505. package/templates/commonproject/_bmad/bmm/testarch/knowledge/test-quality.md +0 -664
  506. package/templates/commonproject/_bmad/bmm/testarch/knowledge/timing-debugging.md +0 -372
  507. package/templates/commonproject/_bmad/bmm/testarch/knowledge/visual-debugging.md +0 -524
  508. package/templates/commonproject/_bmad/bmm/testarch/tea-index.csv +0 -34
  509. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/create-product-brief/product-brief.template.md +0 -10
  510. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01-init.md +0 -177
  511. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-01b-continue.md +0 -161
  512. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-02-vision.md +0 -199
  513. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-03-users.md +0 -202
  514. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-04-metrics.md +0 -205
  515. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-05-scope.md +0 -219
  516. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/create-product-brief/steps/step-06-complete.md +0 -194
  517. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/create-product-brief/workflow.md +0 -58
  518. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-01-init.md +0 -137
  519. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-02-domain-analysis.md +0 -229
  520. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-03-competitive-landscape.md +0 -238
  521. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-04-regulatory-focus.md +0 -206
  522. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-05-technical-trends.md +0 -234
  523. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/domain-steps/step-06-research-synthesis.md +0 -443
  524. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/market-steps/step-01-init.md +0 -182
  525. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/market-steps/step-02-customer-behavior.md +0 -237
  526. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/market-steps/step-02-customer-insights.md +0 -200
  527. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/market-steps/step-03-customer-pain-points.md +0 -249
  528. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/market-steps/step-04-customer-decisions.md +0 -259
  529. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/market-steps/step-05-competitive-analysis.md +0 -177
  530. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/market-steps/step-06-research-completion.md +0 -475
  531. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/research.template.md +0 -29
  532. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-01-init.md +0 -137
  533. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-02-technical-overview.md +0 -239
  534. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-03-integration-patterns.md +0 -248
  535. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-04-architectural-patterns.md +0 -202
  536. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-05-implementation-research.md +0 -239
  537. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/technical-steps/step-06-research-synthesis.md +0 -486
  538. package/templates/commonproject/_bmad/bmm/workflows/1-analysis/research/workflow.md +0 -173
  539. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01-init.md +0 -135
  540. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-01b-continue.md +0 -127
  541. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-02-discovery.md +0 -190
  542. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-03-core-experience.md +0 -216
  543. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-04-emotional-response.md +0 -219
  544. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-05-inspiration.md +0 -234
  545. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-06-design-system.md +0 -252
  546. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-07-defining-experience.md +0 -254
  547. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-08-visual-foundation.md +0 -224
  548. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-09-design-directions.md +0 -224
  549. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-10-user-journeys.md +0 -241
  550. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-11-component-strategy.md +0 -248
  551. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-12-ux-patterns.md +0 -237
  552. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-13-responsive-accessibility.md +0 -264
  553. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/steps/step-14-complete.md +0 -228
  554. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/ux-design-template.md +0 -13
  555. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/create-ux-design/workflow.md +0 -43
  556. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/data/domain-complexity.csv +0 -13
  557. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/data/prd-purpose.md +0 -197
  558. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/data/project-types.csv +0 -11
  559. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-c/step-01-init.md +0 -191
  560. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-c/step-01b-continue.md +0 -153
  561. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-c/step-02-discovery.md +0 -224
  562. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-c/step-03-success.md +0 -226
  563. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-c/step-04-journeys.md +0 -213
  564. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-c/step-05-domain.md +0 -207
  565. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-c/step-06-innovation.md +0 -226
  566. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-c/step-07-project-type.md +0 -237
  567. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-c/step-08-scoping.md +0 -228
  568. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-c/step-09-functional.md +0 -231
  569. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-c/step-10-nonfunctional.md +0 -242
  570. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-c/step-11-polish.md +0 -217
  571. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-c/step-12-complete.md +0 -180
  572. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-01-discovery.md +0 -247
  573. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-01b-legacy-conversion.md +0 -208
  574. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-02-review.md +0 -249
  575. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-03-edit.md +0 -253
  576. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-e/step-e-04-complete.md +0 -168
  577. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-01-discovery.md +0 -218
  578. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-02-format-detection.md +0 -191
  579. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-02b-parity-check.md +0 -209
  580. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-03-density-validation.md +0 -174
  581. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-04-brief-coverage-validation.md +0 -214
  582. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-05-measurability-validation.md +0 -228
  583. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-06-traceability-validation.md +0 -217
  584. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-07-implementation-leakage-validation.md +0 -205
  585. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-08-domain-compliance-validation.md +0 -243
  586. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-09-project-type-validation.md +0 -263
  587. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-10-smart-validation.md +0 -209
  588. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-11-holistic-quality-validation.md +0 -264
  589. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-12-completeness-validation.md +0 -242
  590. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/steps-v/step-v-13-report-complete.md +0 -232
  591. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/templates/prd-template.md +0 -10
  592. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/validation-report-prd-workflow.md +0 -433
  593. package/templates/commonproject/_bmad/bmm/workflows/2-plan-workflows/prd/workflow.md +0 -150
  594. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-01-document-discovery.md +0 -190
  595. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-02-prd-analysis.md +0 -178
  596. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-03-epic-coverage-validation.md +0 -179
  597. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-04-ux-alignment.md +0 -139
  598. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-05-epic-quality-review.md +0 -252
  599. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/steps/step-06-final-assessment.md +0 -133
  600. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/templates/readiness-report-template.md +0 -4
  601. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/check-implementation-readiness/workflow.md +0 -55
  602. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-architecture/architecture-decision-template.md +0 -12
  603. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-architecture/data/domain-complexity.csv +0 -11
  604. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-architecture/data/project-types.csv +0 -7
  605. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01-init.md +0 -153
  606. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-01b-continue.md +0 -164
  607. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-02-context.md +0 -224
  608. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-03-starter.md +0 -331
  609. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-04-decisions.md +0 -318
  610. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-05-patterns.md +0 -359
  611. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-06-structure.md +0 -379
  612. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-07-validation.md +0 -359
  613. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-architecture/steps/step-08-complete.md +0 -352
  614. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-architecture/workflow.md +0 -50
  615. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-01-validate-prerequisites.md +0 -259
  616. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-02-design-epics.md +0 -233
  617. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-03-create-stories.md +0 -272
  618. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/steps/step-04-final-validation.md +0 -145
  619. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/templates/epics-template.md +0 -57
  620. package/templates/commonproject/_bmad/bmm/workflows/3-solutioning/create-epics-and-stories/workflow.md +0 -59
  621. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/code-review/checklist.md +0 -23
  622. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/code-review/instructions.xml +0 -227
  623. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/code-review/workflow.yaml +0 -50
  624. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/correct-course/checklist.md +0 -279
  625. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/correct-course/instructions.md +0 -206
  626. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/correct-course/workflow.yaml +0 -58
  627. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/create-story/checklist.md +0 -358
  628. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/create-story/instructions.xml +0 -345
  629. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/create-story/template.md +0 -49
  630. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/create-story/workflow.yaml +0 -59
  631. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/dev-story/checklist.md +0 -80
  632. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/dev-story/instructions.xml +0 -410
  633. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/dev-story/workflow.yaml +0 -25
  634. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/retrospective/instructions.md +0 -1443
  635. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/retrospective/workflow.yaml +0 -57
  636. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/sprint-planning/checklist.md +0 -33
  637. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/sprint-planning/instructions.md +0 -225
  638. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/sprint-planning/sprint-status-template.yaml +0 -55
  639. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/sprint-planning/workflow.yaml +0 -52
  640. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/sprint-status/instructions.md +0 -229
  641. package/templates/commonproject/_bmad/bmm/workflows/4-implementation/sprint-status/workflow.yaml +0 -35
  642. package/templates/commonproject/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-01-mode-detection.md +0 -156
  643. package/templates/commonproject/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-02-context-gathering.md +0 -120
  644. package/templates/commonproject/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-03-execute.md +0 -113
  645. package/templates/commonproject/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-04-self-check.md +0 -113
  646. package/templates/commonproject/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-05-adversarial-review.md +0 -106
  647. package/templates/commonproject/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/steps/step-06-resolve-findings.md +0 -140
  648. package/templates/commonproject/_bmad/bmm/workflows/bmad-quick-flow/quick-dev/workflow.md +0 -52
  649. package/templates/commonproject/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-01-understand.md +0 -189
  650. package/templates/commonproject/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-02-investigate.md +0 -144
  651. package/templates/commonproject/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-03-generate.md +0 -128
  652. package/templates/commonproject/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/steps/step-04-review.md +0 -173
  653. package/templates/commonproject/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/tech-spec-template.md +0 -74
  654. package/templates/commonproject/_bmad/bmm/workflows/bmad-quick-flow/quick-spec/workflow.md +0 -79
  655. package/templates/commonproject/_bmad/bmm/workflows/document-project/checklist.md +0 -245
  656. package/templates/commonproject/_bmad/bmm/workflows/document-project/documentation-requirements.csv +0 -12
  657. package/templates/commonproject/_bmad/bmm/workflows/document-project/instructions.md +0 -221
  658. package/templates/commonproject/_bmad/bmm/workflows/document-project/templates/deep-dive-template.md +0 -345
  659. package/templates/commonproject/_bmad/bmm/workflows/document-project/templates/index-template.md +0 -169
  660. package/templates/commonproject/_bmad/bmm/workflows/document-project/templates/project-overview-template.md +0 -103
  661. package/templates/commonproject/_bmad/bmm/workflows/document-project/templates/project-scan-report-schema.json +0 -160
  662. package/templates/commonproject/_bmad/bmm/workflows/document-project/templates/source-tree-template.md +0 -135
  663. package/templates/commonproject/_bmad/bmm/workflows/document-project/workflow.yaml +0 -28
  664. package/templates/commonproject/_bmad/bmm/workflows/document-project/workflows/deep-dive-instructions.md +0 -298
  665. package/templates/commonproject/_bmad/bmm/workflows/document-project/workflows/deep-dive.yaml +0 -31
  666. package/templates/commonproject/_bmad/bmm/workflows/document-project/workflows/full-scan-instructions.md +0 -1106
  667. package/templates/commonproject/_bmad/bmm/workflows/document-project/workflows/full-scan.yaml +0 -31
  668. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-library.json +0 -90
  669. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/_shared/excalidraw-templates.yaml +0 -127
  670. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/create-dataflow/checklist.md +0 -39
  671. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/create-dataflow/instructions.md +0 -130
  672. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/create-dataflow/workflow.yaml +0 -26
  673. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/create-diagram/checklist.md +0 -43
  674. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/create-diagram/instructions.md +0 -141
  675. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/create-diagram/workflow.yaml +0 -26
  676. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/create-flowchart/checklist.md +0 -49
  677. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/create-flowchart/instructions.md +0 -241
  678. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/create-flowchart/workflow.yaml +0 -26
  679. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/create-wireframe/checklist.md +0 -38
  680. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/create-wireframe/instructions.md +0 -133
  681. package/templates/commonproject/_bmad/bmm/workflows/excalidraw-diagrams/create-wireframe/workflow.yaml +0 -26
  682. package/templates/commonproject/_bmad/bmm/workflows/generate-project-context/project-context-template.md +0 -21
  683. package/templates/commonproject/_bmad/bmm/workflows/generate-project-context/steps/step-01-discover.md +0 -184
  684. package/templates/commonproject/_bmad/bmm/workflows/generate-project-context/steps/step-02-generate.md +0 -318
  685. package/templates/commonproject/_bmad/bmm/workflows/generate-project-context/steps/step-03-complete.md +0 -278
  686. package/templates/commonproject/_bmad/bmm/workflows/generate-project-context/workflow.md +0 -49
  687. package/templates/commonproject/_bmad/bmm/workflows/testarch/atdd/atdd-checklist-template.md +0 -364
  688. package/templates/commonproject/_bmad/bmm/workflows/testarch/atdd/checklist.md +0 -374
  689. package/templates/commonproject/_bmad/bmm/workflows/testarch/atdd/instructions.md +0 -806
  690. package/templates/commonproject/_bmad/bmm/workflows/testarch/atdd/workflow.yaml +0 -45
  691. package/templates/commonproject/_bmad/bmm/workflows/testarch/automate/checklist.md +0 -582
  692. package/templates/commonproject/_bmad/bmm/workflows/testarch/automate/instructions.md +0 -1324
  693. package/templates/commonproject/_bmad/bmm/workflows/testarch/automate/workflow.yaml +0 -52
  694. package/templates/commonproject/_bmad/bmm/workflows/testarch/ci/checklist.md +0 -248
  695. package/templates/commonproject/_bmad/bmm/workflows/testarch/ci/github-actions-template.yaml +0 -198
  696. package/templates/commonproject/_bmad/bmm/workflows/testarch/ci/gitlab-ci-template.yaml +0 -149
  697. package/templates/commonproject/_bmad/bmm/workflows/testarch/ci/instructions.md +0 -536
  698. package/templates/commonproject/_bmad/bmm/workflows/testarch/ci/workflow.yaml +0 -45
  699. package/templates/commonproject/_bmad/bmm/workflows/testarch/framework/checklist.md +0 -321
  700. package/templates/commonproject/_bmad/bmm/workflows/testarch/framework/instructions.md +0 -481
  701. package/templates/commonproject/_bmad/bmm/workflows/testarch/framework/workflow.yaml +0 -47
  702. package/templates/commonproject/_bmad/bmm/workflows/testarch/nfr-assess/checklist.md +0 -407
  703. package/templates/commonproject/_bmad/bmm/workflows/testarch/nfr-assess/instructions.md +0 -722
  704. package/templates/commonproject/_bmad/bmm/workflows/testarch/nfr-assess/nfr-report-template.md +0 -445
  705. package/templates/commonproject/_bmad/bmm/workflows/testarch/nfr-assess/workflow.yaml +0 -47
  706. package/templates/commonproject/_bmad/bmm/workflows/testarch/test-design/checklist.md +0 -235
  707. package/templates/commonproject/_bmad/bmm/workflows/testarch/test-design/instructions.md +0 -788
  708. package/templates/commonproject/_bmad/bmm/workflows/testarch/test-design/test-design-template.md +0 -294
  709. package/templates/commonproject/_bmad/bmm/workflows/testarch/test-design/workflow.yaml +0 -54
  710. package/templates/commonproject/_bmad/bmm/workflows/testarch/test-review/checklist.md +0 -472
  711. package/templates/commonproject/_bmad/bmm/workflows/testarch/test-review/instructions.md +0 -628
  712. package/templates/commonproject/_bmad/bmm/workflows/testarch/test-review/test-review-template.md +0 -390
  713. package/templates/commonproject/_bmad/bmm/workflows/testarch/test-review/workflow.yaml +0 -46
  714. package/templates/commonproject/_bmad/bmm/workflows/testarch/trace/checklist.md +0 -655
  715. package/templates/commonproject/_bmad/bmm/workflows/testarch/trace/instructions.md +0 -1047
  716. package/templates/commonproject/_bmad/bmm/workflows/testarch/trace/trace-template.md +0 -675
  717. package/templates/commonproject/_bmad/bmm/workflows/testarch/trace/workflow.yaml +0 -55
  718. package/templates/commonproject/_bmad/bmm/workflows/workflow-status/init/instructions.md +0 -346
  719. package/templates/commonproject/_bmad/bmm/workflows/workflow-status/init/workflow.yaml +0 -29
  720. package/templates/commonproject/_bmad/bmm/workflows/workflow-status/instructions.md +0 -395
  721. package/templates/commonproject/_bmad/bmm/workflows/workflow-status/paths/enterprise-brownfield.yaml +0 -103
  722. package/templates/commonproject/_bmad/bmm/workflows/workflow-status/paths/enterprise-greenfield.yaml +0 -100
  723. package/templates/commonproject/_bmad/bmm/workflows/workflow-status/paths/method-brownfield.yaml +0 -103
  724. package/templates/commonproject/_bmad/bmm/workflows/workflow-status/paths/method-greenfield.yaml +0 -100
  725. package/templates/commonproject/_bmad/bmm/workflows/workflow-status/project-levels.yaml +0 -59
  726. package/templates/commonproject/_bmad/bmm/workflows/workflow-status/workflow-status-template.yaml +0 -24
  727. package/templates/commonproject/_bmad/bmm/workflows/workflow-status/workflow.yaml +0 -30
  728. package/templates/commonproject/_bmad/cis/agents/brainstorming-coach.md +0 -66
  729. package/templates/commonproject/_bmad/cis/agents/creative-problem-solver.md +0 -66
  730. package/templates/commonproject/_bmad/cis/agents/design-thinking-coach.md +0 -66
  731. package/templates/commonproject/_bmad/cis/agents/innovation-strategist.md +0 -66
  732. package/templates/commonproject/_bmad/cis/agents/presentation-master.md +0 -72
  733. package/templates/commonproject/_bmad/cis/agents/storyteller/storyteller.md +0 -63
  734. package/templates/commonproject/_bmad/cis/config.yaml +0 -11
  735. package/templates/commonproject/_bmad/cis/teams/creative-squad.yaml +0 -7
  736. package/templates/commonproject/_bmad/cis/teams/default-party.csv +0 -12
  737. package/templates/commonproject/_bmad/cis/workflows/README.md +0 -139
  738. package/templates/commonproject/_bmad/cis/workflows/design-thinking/README.md +0 -56
  739. package/templates/commonproject/_bmad/cis/workflows/design-thinking/design-methods.csv +0 -31
  740. package/templates/commonproject/_bmad/cis/workflows/design-thinking/instructions.md +0 -202
  741. package/templates/commonproject/_bmad/cis/workflows/design-thinking/template.md +0 -111
  742. package/templates/commonproject/_bmad/cis/workflows/design-thinking/workflow.yaml +0 -27
  743. package/templates/commonproject/_bmad/cis/workflows/innovation-strategy/README.md +0 -56
  744. package/templates/commonproject/_bmad/cis/workflows/innovation-strategy/innovation-frameworks.csv +0 -31
  745. package/templates/commonproject/_bmad/cis/workflows/innovation-strategy/instructions.md +0 -276
  746. package/templates/commonproject/_bmad/cis/workflows/innovation-strategy/template.md +0 -189
  747. package/templates/commonproject/_bmad/cis/workflows/innovation-strategy/workflow.yaml +0 -27
  748. package/templates/commonproject/_bmad/cis/workflows/problem-solving/README.md +0 -56
  749. package/templates/commonproject/_bmad/cis/workflows/problem-solving/instructions.md +0 -252
  750. package/templates/commonproject/_bmad/cis/workflows/problem-solving/solving-methods.csv +0 -31
  751. package/templates/commonproject/_bmad/cis/workflows/problem-solving/template.md +0 -165
  752. package/templates/commonproject/_bmad/cis/workflows/problem-solving/workflow.yaml +0 -27
  753. package/templates/commonproject/_bmad/cis/workflows/storytelling/README.md +0 -58
  754. package/templates/commonproject/_bmad/cis/workflows/storytelling/instructions.md +0 -293
  755. package/templates/commonproject/_bmad/cis/workflows/storytelling/story-types.csv +0 -26
  756. package/templates/commonproject/_bmad/cis/workflows/storytelling/template.md +0 -113
  757. package/templates/commonproject/_bmad/cis/workflows/storytelling/workflow.yaml +0 -27
  758. package/templates/commonproject/_bmad/core/agents/bmad-master.md +0 -63
  759. package/templates/commonproject/_bmad/core/config.yaml +0 -9
  760. package/templates/commonproject/_bmad/core/resources/excalidraw/README.md +0 -160
  761. package/templates/commonproject/_bmad/core/resources/excalidraw/excalidraw-helpers.md +0 -127
  762. package/templates/commonproject/_bmad/core/resources/excalidraw/library-loader.md +0 -50
  763. package/templates/commonproject/_bmad/core/resources/excalidraw/validate-json-instructions.md +0 -79
  764. package/templates/commonproject/_bmad/core/tasks/index-docs.xml +0 -65
  765. package/templates/commonproject/_bmad/core/tasks/review-adversarial-general.xml +0 -41
  766. package/templates/commonproject/_bmad/core/tasks/shard-doc.xml +0 -109
  767. package/templates/commonproject/_bmad/core/tasks/workflow.xml +0 -235
  768. package/templates/commonproject/_bmad/core/workflows/advanced-elicitation/methods.csv +0 -51
  769. package/templates/commonproject/_bmad/core/workflows/advanced-elicitation/workflow.xml +0 -117
  770. package/templates/commonproject/_bmad/core/workflows/brainstorming/brain-methods.csv +0 -62
  771. package/templates/commonproject/_bmad/core/workflows/brainstorming/steps/step-01-session-setup.md +0 -197
  772. package/templates/commonproject/_bmad/core/workflows/brainstorming/steps/step-01b-continue.md +0 -122
  773. package/templates/commonproject/_bmad/core/workflows/brainstorming/steps/step-02a-user-selected.md +0 -225
  774. package/templates/commonproject/_bmad/core/workflows/brainstorming/steps/step-02b-ai-recommended.md +0 -237
  775. package/templates/commonproject/_bmad/core/workflows/brainstorming/steps/step-02c-random-selection.md +0 -209
  776. package/templates/commonproject/_bmad/core/workflows/brainstorming/steps/step-02d-progressive-flow.md +0 -264
  777. package/templates/commonproject/_bmad/core/workflows/brainstorming/steps/step-03-technique-execution.md +0 -399
  778. package/templates/commonproject/_bmad/core/workflows/brainstorming/steps/step-04-idea-organization.md +0 -303
  779. package/templates/commonproject/_bmad/core/workflows/brainstorming/template.md +0 -15
  780. package/templates/commonproject/_bmad/core/workflows/brainstorming/workflow.md +0 -58
  781. package/templates/commonproject/_bmad/core/workflows/party-mode/steps/step-01-agent-loading.md +0 -139
  782. package/templates/commonproject/_bmad/core/workflows/party-mode/steps/step-02-discussion-orchestration.md +0 -204
  783. package/templates/commonproject/_bmad/core/workflows/party-mode/steps/step-03-graceful-exit.md +0 -159
  784. package/templates/commonproject/_bmad/core/workflows/party-mode/workflow.md +0 -206
  785. package/templates/commonproject/_bmad/custom/config.yaml +0 -11
  786. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/data/ac-sufficiency-rubric.md +0 -33
  787. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/data/audit-comment-template.md +0 -54
  788. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/data/event-schemas.md +0 -58
  789. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/steps-c/step-01-init.md +0 -173
  790. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/steps-c/step-02-triage.md +0 -159
  791. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/steps-c/step-03-refine.md +0 -149
  792. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/steps-c/step-04-implement.md +0 -147
  793. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/steps-c/step-05-review.md +0 -146
  794. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/steps-c/step-06-qa.md +0 -199
  795. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/steps-c/step-07-complete.md +0 -141
  796. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/steps-e/step-01-assess.md +0 -102
  797. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/steps-e/step-02-apply.md +0 -85
  798. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/steps-v/step-01-validate.md +0 -154
  799. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/workflow-plan-ticket-lifecycle.md +0 -346
  800. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/workflow.md +0 -84
  801. package/templates/commonproject/_bmad/custom/workflows/ticket-lifecycle/workflow.yaml +0 -39
  802. package/templates/commonproject/mise.toml +0 -38
  803. package/templates/hermes-agent/.codegraph/daemon.pid +0 -6
  804. package/templates/hermes-agent/.omo/run-continuation/ses_0e5b28303ffeXxL53hZjKggXDW.json +0 -10
  805. package/templates/hermes-agent/README.md +0 -151
  806. package/templates/hermes-agent/config.example.toml +0 -1
  807. package/templates/hermes-agent/docs/architecture.md +0 -111
  808. package/templates/hermes-agent/docs/fleet-control-plane/README.md +0 -35
  809. package/templates/hermes-agent/docs/fleet-control-plane/architecture.md +0 -253
  810. package/templates/hermes-agent/docs/fleet-control-plane/epics-and-stories.md +0 -280
  811. package/templates/hermes-agent/docs/fleet-control-plane/implementation-readiness-report-2026-06-27.md +0 -118
  812. package/templates/hermes-agent/docs/fleet-control-plane/prd.md +0 -141
  813. package/templates/hermes-agent/docs/operations.md +0 -237
  814. package/templates/hermes-agent/docs/runbooks/runtime-checkpoint-repair.md +0 -171
  815. package/templates/hermes-agent/docs/sentinel/README.md +0 -119
  816. package/templates/hermes-agent/docs/sentinel/architecture.md +0 -204
  817. package/templates/hermes-agent/docs/sentinel/development.md +0 -277
  818. package/templates/hermes-agent/docs/sentinel/providers.md +0 -203
  819. package/templates/hermes-agent/docs/sentinel.md +0 -18
  820. package/templates/hermes-agent/install-local.sh +0 -216
  821. package/templates/hermes-agent/runtime-scaffold/.gitattributes +0 -10
  822. package/templates/hermes-agent/runtime-scaffold/README.md +0 -53
  823. package/templates/hermes-agent/runtime-scaffold/bloodbank-consumer.py +0 -181
  824. package/templates/hermes-agent/runtime-scaffold/decisions/.gitkeep +0 -2
  825. package/templates/hermes-agent/runtime-scaffold/logs/.gitkeep +0 -1
  826. package/templates/hermes-agent/runtime-scaffold/memories/MEMORY.md +0 -47
  827. package/templates/hermes-agent/runtime-scaffold/memories/USER.md +0 -51
  828. package/templates/hermes-agent/scripts/backfill-fleet-sot.sh +0 -270
  829. package/templates/hermes-agent/scripts/fleet-sync.sh +0 -369
  830. package/templates/hermes-agent/scripts/migrate-unify.sh +0 -252
  831. package/templates/hermes-agent/scripts/repair-runtime-checkpoint.sh +0 -122
  832. package/templates/hermes-agent/scripts/retrofit-70-envfile.sh +0 -129
  833. package/templates/hermes-agent/scripts/unify-pm.sh +0 -148
  834. package/templates/hermes-agent/template/.runtime-scaffold/bloodbank-consumer.py +0 -181
  835. package/templates/hermes-agent/tests/test_bloodbank_consumer_contract.py +0 -138
@@ -1,721 +0,0 @@
1
- # Email-Based Authentication Testing
2
-
3
- ## Principle
4
-
5
- Email-based authentication (magic links, one-time codes, passwordless login) requires specialized testing with email capture services like Mailosaur or Ethereal. Extract magic links via HTML parsing or use built-in link extraction, preserve browser storage (local/session/cookies) when processing links, cache email payloads to avoid exhausting inbox quotas, and cover negative cases (expired links, reused links, multiple rapid requests). Log email IDs and links for troubleshooting, but scrub PII before committing artifacts.
6
-
7
- ## Rationale
8
-
9
- Email authentication introduces unique challenges: asynchronous email delivery, quota limits (AWS Cognito: 50/day), cost per email, and complex state management (session preservation across link clicks). Without proper patterns, tests become slow (wait for email each time), expensive (quota exhaustion), and brittle (timing issues, missing state). Using email capture services + session caching + state preservation patterns makes email auth tests fast, reliable, and cost-effective.
10
-
11
- ## Pattern Examples
12
-
13
- ### Example 1: Magic Link Extraction with Mailosaur
14
-
15
- **Context**: Passwordless login flow where user receives magic link via email, clicks it, and is authenticated.
16
-
17
- **Implementation**:
18
-
19
- ```typescript
20
- // tests/e2e/magic-link-auth.spec.ts
21
- import { test, expect } from '@playwright/test';
22
-
23
- /**
24
- * Magic Link Authentication Flow
25
- * 1. User enters email
26
- * 2. Backend sends magic link
27
- * 3. Test retrieves email via Mailosaur
28
- * 4. Extract and visit magic link
29
- * 5. Verify user is authenticated
30
- */
31
-
32
- // Mailosaur configuration
33
- const MAILOSAUR_API_KEY = process.env.MAILOSAUR_API_KEY!;
34
- const MAILOSAUR_SERVER_ID = process.env.MAILOSAUR_SERVER_ID!;
35
-
36
- /**
37
- * Extract href from HTML email body
38
- * DOMParser provides XML/HTML parsing in Node.js
39
- */
40
- function extractMagicLink(htmlString: string): string | null {
41
- const { JSDOM } = require('jsdom');
42
- const dom = new JSDOM(htmlString);
43
- const link = dom.window.document.querySelector('#magic-link-button');
44
- return link ? (link as HTMLAnchorElement).href : null;
45
- }
46
-
47
- /**
48
- * Alternative: Use Mailosaur's built-in link extraction
49
- * Mailosaur automatically parses links - no regex needed!
50
- */
51
- async function getMagicLinkFromEmail(email: string): Promise<string> {
52
- const MailosaurClient = require('mailosaur');
53
- const mailosaur = new MailosaurClient(MAILOSAUR_API_KEY);
54
-
55
- // Wait for email (timeout: 30 seconds)
56
- const message = await mailosaur.messages.get(
57
- MAILOSAUR_SERVER_ID,
58
- {
59
- sentTo: email,
60
- },
61
- {
62
- timeout: 30000, // 30 seconds
63
- },
64
- );
65
-
66
- // Mailosaur extracts links automatically - no parsing needed!
67
- const magicLink = message.html?.links?.[0]?.href;
68
-
69
- if (!magicLink) {
70
- throw new Error(`Magic link not found in email to ${email}`);
71
- }
72
-
73
- console.log(`📧 Email received. Magic link extracted: ${magicLink}`);
74
- return magicLink;
75
- }
76
-
77
- test.describe('Magic Link Authentication', () => {
78
- test('should authenticate user via magic link', async ({ page, context }) => {
79
- // Arrange: Generate unique test email
80
- const randomId = Math.floor(Math.random() * 1000000);
81
- const testEmail = `user-${randomId}@${MAILOSAUR_SERVER_ID}.mailosaur.net`;
82
-
83
- // Act: Request magic link
84
- await page.goto('/login');
85
- await page.getByTestId('email-input').fill(testEmail);
86
- await page.getByTestId('send-magic-link').click();
87
-
88
- // Assert: Success message
89
- await expect(page.getByTestId('check-email-message')).toBeVisible();
90
- await expect(page.getByTestId('check-email-message')).toContainText('Check your email');
91
-
92
- // Retrieve magic link from email
93
- const magicLink = await getMagicLinkFromEmail(testEmail);
94
-
95
- // Visit magic link
96
- await page.goto(magicLink);
97
-
98
- // Assert: User is authenticated
99
- await expect(page.getByTestId('user-menu')).toBeVisible();
100
- await expect(page.getByTestId('user-email')).toContainText(testEmail);
101
-
102
- // Verify session storage preserved
103
- const localStorage = await page.evaluate(() => JSON.stringify(window.localStorage));
104
- expect(localStorage).toContain('authToken');
105
- });
106
-
107
- test('should handle expired magic link', async ({ page }) => {
108
- // Use pre-expired link (older than 15 minutes)
109
- const expiredLink = 'http://localhost:3000/auth/verify?token=expired-token-123';
110
-
111
- await page.goto(expiredLink);
112
-
113
- // Assert: Error message displayed
114
- await expect(page.getByTestId('error-message')).toBeVisible();
115
- await expect(page.getByTestId('error-message')).toContainText('link has expired');
116
-
117
- // Assert: User NOT authenticated
118
- await expect(page.getByTestId('user-menu')).not.toBeVisible();
119
- });
120
-
121
- test('should prevent reusing magic link', async ({ page }) => {
122
- const randomId = Math.floor(Math.random() * 1000000);
123
- const testEmail = `user-${randomId}@${MAILOSAUR_SERVER_ID}.mailosaur.net`;
124
-
125
- // Request magic link
126
- await page.goto('/login');
127
- await page.getByTestId('email-input').fill(testEmail);
128
- await page.getByTestId('send-magic-link').click();
129
-
130
- const magicLink = await getMagicLinkFromEmail(testEmail);
131
-
132
- // Visit link first time (success)
133
- await page.goto(magicLink);
134
- await expect(page.getByTestId('user-menu')).toBeVisible();
135
-
136
- // Sign out
137
- await page.getByTestId('sign-out').click();
138
-
139
- // Try to reuse same link (should fail)
140
- await page.goto(magicLink);
141
- await expect(page.getByTestId('error-message')).toBeVisible();
142
- await expect(page.getByTestId('error-message')).toContainText('link has already been used');
143
- });
144
- });
145
- ```
146
-
147
- **Cypress equivalent with Mailosaur plugin**:
148
-
149
- ```javascript
150
- // cypress/e2e/magic-link-auth.cy.ts
151
- describe('Magic Link Authentication', () => {
152
- it('should authenticate user via magic link', () => {
153
- const serverId = Cypress.env('MAILOSAUR_SERVERID');
154
- const randomId = Cypress._.random(1e6);
155
- const testEmail = `user-${randomId}@${serverId}.mailosaur.net`;
156
-
157
- // Request magic link
158
- cy.visit('/login');
159
- cy.get('[data-cy="email-input"]').type(testEmail);
160
- cy.get('[data-cy="send-magic-link"]').click();
161
- cy.get('[data-cy="check-email-message"]').should('be.visible');
162
-
163
- // Retrieve and visit magic link
164
- cy.mailosaurGetMessage(serverId, { sentTo: testEmail })
165
- .its('html.links.0.href') // Mailosaur extracts links automatically!
166
- .should('exist')
167
- .then((magicLink) => {
168
- cy.log(`Magic link: ${magicLink}`);
169
- cy.visit(magicLink);
170
- });
171
-
172
- // Verify authenticated
173
- cy.get('[data-cy="user-menu"]').should('be.visible');
174
- cy.get('[data-cy="user-email"]').should('contain', testEmail);
175
- });
176
- });
177
- ```
178
-
179
- **Key Points**:
180
-
181
- - **Mailosaur auto-extraction**: `html.links[0].href` or `html.codes[0].value`
182
- - **Unique emails**: Random ID prevents collisions
183
- - **Negative testing**: Expired and reused links tested
184
- - **State verification**: localStorage/session checked
185
- - **Fast email retrieval**: 30 second timeout typical
186
-
187
- ---
188
-
189
- ### Example 2: State Preservation Pattern with cy.session / Playwright storageState
190
-
191
- **Context**: Cache authenticated session to avoid requesting magic link on every test.
192
-
193
- **Implementation**:
194
-
195
- ```typescript
196
- // playwright/fixtures/email-auth-fixture.ts
197
- import { test as base } from '@playwright/test';
198
- import { getMagicLinkFromEmail } from '../support/mailosaur-helpers';
199
-
200
- type EmailAuthFixture = {
201
- authenticatedUser: { email: string; token: string };
202
- };
203
-
204
- export const test = base.extend<EmailAuthFixture>({
205
- authenticatedUser: async ({ page, context }, use) => {
206
- const randomId = Math.floor(Math.random() * 1000000);
207
- const testEmail = `user-${randomId}@${process.env.MAILOSAUR_SERVER_ID}.mailosaur.net`;
208
-
209
- // Check if we have cached auth state for this email
210
- const storageStatePath = `./test-results/auth-state-${testEmail}.json`;
211
-
212
- try {
213
- // Try to reuse existing session
214
- await context.storageState({ path: storageStatePath });
215
- await page.goto('/dashboard');
216
-
217
- // Validate session is still valid
218
- const isAuthenticated = await page.getByTestId('user-menu').isVisible({ timeout: 2000 });
219
-
220
- if (isAuthenticated) {
221
- console.log(`✅ Reusing cached session for ${testEmail}`);
222
- await use({ email: testEmail, token: 'cached' });
223
- return;
224
- }
225
- } catch (error) {
226
- console.log(`📧 No cached session, requesting magic link for ${testEmail}`);
227
- }
228
-
229
- // Request new magic link
230
- await page.goto('/login');
231
- await page.getByTestId('email-input').fill(testEmail);
232
- await page.getByTestId('send-magic-link').click();
233
-
234
- // Get magic link from email
235
- const magicLink = await getMagicLinkFromEmail(testEmail);
236
-
237
- // Visit link and authenticate
238
- await page.goto(magicLink);
239
- await expect(page.getByTestId('user-menu')).toBeVisible();
240
-
241
- // Extract auth token from localStorage
242
- const authToken = await page.evaluate(() => localStorage.getItem('authToken'));
243
-
244
- // Save session state for reuse
245
- await context.storageState({ path: storageStatePath });
246
-
247
- console.log(`💾 Cached session for ${testEmail}`);
248
-
249
- await use({ email: testEmail, token: authToken || '' });
250
- },
251
- });
252
- ```
253
-
254
- **Cypress equivalent with cy.session + data-session**:
255
-
256
- ```javascript
257
- // cypress/support/commands/email-auth.js
258
- import { dataSession } from 'cypress-data-session';
259
-
260
- /**
261
- * Authenticate via magic link with session caching
262
- * - First run: Requests email, extracts link, authenticates
263
- * - Subsequent runs: Reuses cached session (no email)
264
- */
265
- Cypress.Commands.add('authViaMagicLink', (email) => {
266
- return dataSession({
267
- name: `magic-link-${email}`,
268
-
269
- // First-time setup: Request and process magic link
270
- setup: () => {
271
- cy.visit('/login');
272
- cy.get('[data-cy="email-input"]').type(email);
273
- cy.get('[data-cy="send-magic-link"]').click();
274
-
275
- // Get magic link from Mailosaur
276
- cy.mailosaurGetMessage(Cypress.env('MAILOSAUR_SERVERID'), {
277
- sentTo: email,
278
- })
279
- .its('html.links.0.href')
280
- .should('exist')
281
- .then((magicLink) => {
282
- cy.visit(magicLink);
283
- });
284
-
285
- // Wait for authentication
286
- cy.get('[data-cy="user-menu"]', { timeout: 10000 }).should('be.visible');
287
-
288
- // Preserve authentication state
289
- return cy.getAllLocalStorage().then((storage) => {
290
- return { storage, email };
291
- });
292
- },
293
-
294
- // Validate cached session is still valid
295
- validate: (cached) => {
296
- return cy.wrap(Boolean(cached?.storage));
297
- },
298
-
299
- // Recreate session from cache (no email needed)
300
- recreate: (cached) => {
301
- // Restore localStorage
302
- cy.setLocalStorage(cached.storage);
303
- cy.visit('/dashboard');
304
- cy.get('[data-cy="user-menu"]', { timeout: 5000 }).should('be.visible');
305
- },
306
-
307
- shareAcrossSpecs: true, // Share session across all tests
308
- });
309
- });
310
- ```
311
-
312
- **Usage in tests**:
313
-
314
- ```javascript
315
- // cypress/e2e/dashboard.cy.ts
316
- describe('Dashboard', () => {
317
- const serverId = Cypress.env('MAILOSAUR_SERVERID');
318
- const testEmail = `test-user@${serverId}.mailosaur.net`;
319
-
320
- beforeEach(() => {
321
- // First test: Requests magic link
322
- // Subsequent tests: Reuses cached session (no email!)
323
- cy.authViaMagicLink(testEmail);
324
- });
325
-
326
- it('should display user dashboard', () => {
327
- cy.get('[data-cy="dashboard-content"]').should('be.visible');
328
- });
329
-
330
- it('should show user profile', () => {
331
- cy.get('[data-cy="user-email"]').should('contain', testEmail);
332
- });
333
-
334
- // Both tests share same session - only 1 email consumed!
335
- });
336
- ```
337
-
338
- **Key Points**:
339
-
340
- - **Session caching**: First test requests email, rest reuse session
341
- - **State preservation**: localStorage/cookies saved and restored
342
- - **Validation**: Check cached session is still valid
343
- - **Quota optimization**: Massive reduction in email consumption
344
- - **Fast tests**: Cached auth takes seconds vs. minutes
345
-
346
- ---
347
-
348
- ### Example 3: Negative Flow Tests (Expired, Invalid, Reused Links)
349
-
350
- **Context**: Comprehensive negative testing for email authentication edge cases.
351
-
352
- **Implementation**:
353
-
354
- ```typescript
355
- // tests/e2e/email-auth-negative.spec.ts
356
- import { test, expect } from '@playwright/test';
357
- import { getMagicLinkFromEmail } from '../support/mailosaur-helpers';
358
-
359
- const MAILOSAUR_SERVER_ID = process.env.MAILOSAUR_SERVER_ID!;
360
-
361
- test.describe('Email Auth Negative Flows', () => {
362
- test('should reject expired magic link', async ({ page }) => {
363
- // Generate expired link (simulate 24 hours ago)
364
- const expiredToken = Buffer.from(
365
- JSON.stringify({
366
- email: 'test@example.com',
367
- exp: Date.now() - 24 * 60 * 60 * 1000, // 24 hours ago
368
- }),
369
- ).toString('base64');
370
-
371
- const expiredLink = `http://localhost:3000/auth/verify?token=${expiredToken}`;
372
-
373
- // Visit expired link
374
- await page.goto(expiredLink);
375
-
376
- // Assert: Error displayed
377
- await expect(page.getByTestId('error-message')).toBeVisible();
378
- await expect(page.getByTestId('error-message')).toContainText(/link.*expired|expired.*link/i);
379
-
380
- // Assert: Link to request new one
381
- await expect(page.getByTestId('request-new-link')).toBeVisible();
382
-
383
- // Assert: User NOT authenticated
384
- await expect(page.getByTestId('user-menu')).not.toBeVisible();
385
- });
386
-
387
- test('should reject invalid magic link token', async ({ page }) => {
388
- const invalidLink = 'http://localhost:3000/auth/verify?token=invalid-garbage';
389
-
390
- await page.goto(invalidLink);
391
-
392
- // Assert: Error displayed
393
- await expect(page.getByTestId('error-message')).toBeVisible();
394
- await expect(page.getByTestId('error-message')).toContainText(/invalid.*link|link.*invalid/i);
395
-
396
- // Assert: User not authenticated
397
- await expect(page.getByTestId('user-menu')).not.toBeVisible();
398
- });
399
-
400
- test('should reject already-used magic link', async ({ page, context }) => {
401
- const randomId = Math.floor(Math.random() * 1000000);
402
- const testEmail = `user-${randomId}@${MAILOSAUR_SERVER_ID}.mailosaur.net`;
403
-
404
- // Request magic link
405
- await page.goto('/login');
406
- await page.getByTestId('email-input').fill(testEmail);
407
- await page.getByTestId('send-magic-link').click();
408
-
409
- const magicLink = await getMagicLinkFromEmail(testEmail);
410
-
411
- // Visit link FIRST time (success)
412
- await page.goto(magicLink);
413
- await expect(page.getByTestId('user-menu')).toBeVisible();
414
-
415
- // Sign out
416
- await page.getByTestId('user-menu').click();
417
- await page.getByTestId('sign-out').click();
418
- await expect(page.getByTestId('user-menu')).not.toBeVisible();
419
-
420
- // Try to reuse SAME link (should fail)
421
- await page.goto(magicLink);
422
-
423
- // Assert: Link already used error
424
- await expect(page.getByTestId('error-message')).toBeVisible();
425
- await expect(page.getByTestId('error-message')).toContainText(/already.*used|link.*used/i);
426
-
427
- // Assert: User not authenticated
428
- await expect(page.getByTestId('user-menu')).not.toBeVisible();
429
- });
430
-
431
- test('should handle rapid successive link requests', async ({ page }) => {
432
- const randomId = Math.floor(Math.random() * 1000000);
433
- const testEmail = `user-${randomId}@${MAILOSAUR_SERVER_ID}.mailosaur.net`;
434
-
435
- // Request magic link 3 times rapidly
436
- for (let i = 0; i < 3; i++) {
437
- await page.goto('/login');
438
- await page.getByTestId('email-input').fill(testEmail);
439
- await page.getByTestId('send-magic-link').click();
440
- await expect(page.getByTestId('check-email-message')).toBeVisible();
441
- }
442
-
443
- // Only the LATEST link should work
444
- const MailosaurClient = require('mailosaur');
445
- const mailosaur = new MailosaurClient(process.env.MAILOSAUR_API_KEY);
446
-
447
- const messages = await mailosaur.messages.list(MAILOSAUR_SERVER_ID, {
448
- sentTo: testEmail,
449
- });
450
-
451
- // Should receive 3 emails
452
- expect(messages.items.length).toBeGreaterThanOrEqual(3);
453
-
454
- // Get the LATEST magic link
455
- const latestMessage = messages.items[0]; // Most recent first
456
- const latestLink = latestMessage.html.links[0].href;
457
-
458
- // Latest link works
459
- await page.goto(latestLink);
460
- await expect(page.getByTestId('user-menu')).toBeVisible();
461
-
462
- // Older links should NOT work (if backend invalidates previous)
463
- await page.getByTestId('sign-out').click();
464
- const olderLink = messages.items[1].html.links[0].href;
465
-
466
- await page.goto(olderLink);
467
- await expect(page.getByTestId('error-message')).toBeVisible();
468
- });
469
-
470
- test('should rate-limit excessive magic link requests', async ({ page }) => {
471
- const randomId = Math.floor(Math.random() * 1000000);
472
- const testEmail = `user-${randomId}@${MAILOSAUR_SERVER_ID}.mailosaur.net`;
473
-
474
- // Request magic link 10 times rapidly (should hit rate limit)
475
- for (let i = 0; i < 10; i++) {
476
- await page.goto('/login');
477
- await page.getByTestId('email-input').fill(testEmail);
478
- await page.getByTestId('send-magic-link').click();
479
-
480
- // After N requests, should show rate limit error
481
- const errorVisible = await page
482
- .getByTestId('rate-limit-error')
483
- .isVisible({ timeout: 1000 })
484
- .catch(() => false);
485
-
486
- if (errorVisible) {
487
- console.log(`Rate limit hit after ${i + 1} requests`);
488
- await expect(page.getByTestId('rate-limit-error')).toContainText(/too many.*requests|rate.*limit/i);
489
- return;
490
- }
491
- }
492
-
493
- // If no rate limit after 10 requests, log warning
494
- console.warn('⚠️ No rate limit detected after 10 requests');
495
- });
496
- });
497
- ```
498
-
499
- **Key Points**:
500
-
501
- - **Expired links**: Test 24+ hour old tokens
502
- - **Invalid tokens**: Malformed or garbage tokens rejected
503
- - **Reuse prevention**: Same link can't be used twice
504
- - **Rapid requests**: Multiple requests handled gracefully
505
- - **Rate limiting**: Excessive requests blocked
506
-
507
- ---
508
-
509
- ### Example 4: Caching Strategy with cypress-data-session / Playwright Projects
510
-
511
- **Context**: Minimize email consumption by sharing authentication state across tests and specs.
512
-
513
- **Implementation**:
514
-
515
- ```javascript
516
- // cypress/support/commands/register-and-sign-in.js
517
- import { dataSession } from 'cypress-data-session';
518
-
519
- /**
520
- * Email Authentication Caching Strategy
521
- * - One email per test run (not per spec, not per test)
522
- * - First spec: Full registration flow (form → email → code → sign in)
523
- * - Subsequent specs: Only sign in (reuse user)
524
- * - Subsequent tests in same spec: Session already active (no sign in)
525
- */
526
-
527
- // Helper: Fill registration form
528
- function fillRegistrationForm({ fullName, userName, email, password }) {
529
- cy.intercept('POST', 'https://cognito-idp*').as('cognito');
530
- cy.contains('Register').click();
531
- cy.get('#reg-dialog-form').should('be.visible');
532
- cy.get('#first-name').type(fullName, { delay: 0 });
533
- cy.get('#last-name').type(lastName, { delay: 0 });
534
- cy.get('#email').type(email, { delay: 0 });
535
- cy.get('#username').type(userName, { delay: 0 });
536
- cy.get('#password').type(password, { delay: 0 });
537
- cy.contains('button', 'Create an account').click();
538
- cy.wait('@cognito').its('response.statusCode').should('equal', 200);
539
- }
540
-
541
- // Helper: Confirm registration with email code
542
- function confirmRegistration(email) {
543
- return cy
544
- .mailosaurGetMessage(Cypress.env('MAILOSAUR_SERVERID'), { sentTo: email })
545
- .its('html.codes.0.value') // Mailosaur auto-extracts codes!
546
- .then((code) => {
547
- cy.intercept('POST', 'https://cognito-idp*').as('cognito');
548
- cy.get('#verification-code').type(code, { delay: 0 });
549
- cy.contains('button', 'Confirm registration').click();
550
- cy.wait('@cognito');
551
- cy.contains('You are now registered!').should('be.visible');
552
- cy.contains('button', /ok/i).click();
553
- return cy.wrap(code); // Return code for reference
554
- });
555
- }
556
-
557
- // Helper: Full registration (form + email)
558
- function register({ fullName, userName, email, password }) {
559
- fillRegistrationForm({ fullName, userName, email, password });
560
- return confirmRegistration(email);
561
- }
562
-
563
- // Helper: Sign in
564
- function signIn({ userName, password }) {
565
- cy.intercept('POST', 'https://cognito-idp*').as('cognito');
566
- cy.contains('Sign in').click();
567
- cy.get('#sign-in-username').type(userName, { delay: 0 });
568
- cy.get('#sign-in-password').type(password, { delay: 0 });
569
- cy.contains('button', 'Sign in').click();
570
- cy.wait('@cognito');
571
- cy.contains('Sign out').should('be.visible');
572
- }
573
-
574
- /**
575
- * Register and sign in with email caching
576
- * ONE EMAIL PER MACHINE (cypress run or cypress open)
577
- */
578
- Cypress.Commands.add('registerAndSignIn', ({ fullName, userName, email, password }) => {
579
- return dataSession({
580
- name: email, // Unique session per email
581
-
582
- // First time: Full registration (form → email → code)
583
- init: () => register({ fullName, userName, email, password }),
584
-
585
- // Subsequent specs: Just check email exists (code already used)
586
- setup: () => confirmRegistration(email),
587
-
588
- // Always runs after init/setup: Sign in
589
- recreate: () => signIn({ userName, password }),
590
-
591
- // Share across ALL specs (one email for entire test run)
592
- shareAcrossSpecs: true,
593
- });
594
- });
595
- ```
596
-
597
- **Usage across multiple specs**:
598
-
599
- ```javascript
600
- // cypress/e2e/place-order.cy.ts
601
- describe('Place Order', () => {
602
- beforeEach(() => {
603
- cy.visit('/');
604
- cy.registerAndSignIn({
605
- fullName: Cypress.env('fullName'), // From cypress.config
606
- userName: Cypress.env('userName'),
607
- email: Cypress.env('email'), // SAME email across all specs
608
- password: Cypress.env('password'),
609
- });
610
- });
611
-
612
- it('should place order', () => {
613
- /* ... */
614
- });
615
- it('should view order history', () => {
616
- /* ... */
617
- });
618
- });
619
-
620
- // cypress/e2e/profile.cy.ts
621
- describe('User Profile', () => {
622
- beforeEach(() => {
623
- cy.visit('/');
624
- cy.registerAndSignIn({
625
- fullName: Cypress.env('fullName'),
626
- userName: Cypress.env('userName'),
627
- email: Cypress.env('email'), // SAME email - no new email sent!
628
- password: Cypress.env('password'),
629
- });
630
- });
631
-
632
- it('should update profile', () => {
633
- /* ... */
634
- });
635
- });
636
- ```
637
-
638
- **Playwright equivalent with storageState**:
639
-
640
- ```typescript
641
- // playwright.config.ts
642
- import { defineConfig } from '@playwright/test';
643
-
644
- export default defineConfig({
645
- projects: [
646
- {
647
- name: 'setup',
648
- testMatch: /global-setup\.ts/,
649
- },
650
- {
651
- name: 'authenticated',
652
- testMatch: /.*\.spec\.ts/,
653
- dependencies: ['setup'],
654
- use: {
655
- storageState: '.auth/user-session.json', // Reuse auth state
656
- },
657
- },
658
- ],
659
- });
660
- ```
661
-
662
- ```typescript
663
- // tests/global-setup.ts (runs once)
664
- import { test as setup } from '@playwright/test';
665
- import { getMagicLinkFromEmail } from './support/mailosaur-helpers';
666
-
667
- const authFile = '.auth/user-session.json';
668
-
669
- setup('authenticate via magic link', async ({ page }) => {
670
- const testEmail = process.env.TEST_USER_EMAIL!;
671
-
672
- // Request magic link
673
- await page.goto('/login');
674
- await page.getByTestId('email-input').fill(testEmail);
675
- await page.getByTestId('send-magic-link').click();
676
-
677
- // Get and visit magic link
678
- const magicLink = await getMagicLinkFromEmail(testEmail);
679
- await page.goto(magicLink);
680
-
681
- // Verify authenticated
682
- await expect(page.getByTestId('user-menu')).toBeVisible();
683
-
684
- // Save authenticated state (ONE TIME for all tests)
685
- await page.context().storageState({ path: authFile });
686
-
687
- console.log('✅ Authentication state saved to', authFile);
688
- });
689
- ```
690
-
691
- **Key Points**:
692
-
693
- - **One email per run**: Global setup authenticates once
694
- - **State reuse**: All tests use cached storageState
695
- - **cypress-data-session**: Intelligently manages cache lifecycle
696
- - **shareAcrossSpecs**: Session shared across all spec files
697
- - **Massive savings**: 500 tests = 1 email (not 500!)
698
-
699
- ---
700
-
701
- ## Email Authentication Testing Checklist
702
-
703
- Before implementing email auth tests, verify:
704
-
705
- - [ ] **Email service**: Mailosaur/Ethereal/MailHog configured with API keys
706
- - [ ] **Link extraction**: Use built-in parsing (html.links[0].href) over regex
707
- - [ ] **State preservation**: localStorage/session/cookies saved and restored
708
- - [ ] **Session caching**: cypress-data-session or storageState prevents redundant emails
709
- - [ ] **Negative flows**: Expired, invalid, reused, rapid requests tested
710
- - [ ] **Quota awareness**: One email per run (not per test)
711
- - [ ] **PII scrubbing**: Email IDs logged for debug, but scrubbed from artifacts
712
- - [ ] **Timeout handling**: 30 second email retrieval timeout configured
713
-
714
- ## Integration Points
715
-
716
- - Used in workflows: `*framework` (email auth setup), `*automate` (email auth test generation)
717
- - Related fragments: `fixture-architecture.md`, `test-quality.md`
718
- - Email services: Mailosaur (recommended), Ethereal (free), MailHog (self-hosted)
719
- - Plugins: cypress-mailosaur, cypress-data-session
720
-
721
- _Source: Email authentication blog, Murat testing toolkit, Mailosaur documentation_