code-ai-installer 2.2.0 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (502) hide show
  1. package/README.md +141 -139
  2. package/dist/domainResolver.js +2 -2
  3. package/dist/index.js +4 -4
  4. package/dist/types.d.ts +1 -1
  5. package/domains/product/.agents/skills/aarrr-metrics/SKILL.md +433 -0
  6. package/domains/product/.agents/skills/aarrr-metrics/agents/claude.json +17 -0
  7. package/domains/product/.agents/skills/aarrr-metrics/agents/copilot.json +17 -0
  8. package/domains/product/.agents/skills/aarrr-metrics/agents/gemini.json +17 -0
  9. package/domains/product/.agents/skills/aarrr-metrics/agents/openai.yaml +8 -0
  10. package/domains/product/.agents/skills/aarrr-metrics/agents/qwen.json +17 -0
  11. package/domains/product/.agents/skills/aarrr-metrics/agents/skill.yaml +20 -0
  12. package/domains/product/.agents/skills/ab-test-design/SKILL.md +412 -0
  13. package/domains/product/.agents/skills/ab-test-design/agents/claude.json +17 -0
  14. package/domains/product/.agents/skills/ab-test-design/agents/copilot.json +17 -0
  15. package/domains/product/.agents/skills/ab-test-design/agents/gemini.json +17 -0
  16. package/domains/product/.agents/skills/ab-test-design/agents/openai.yaml +8 -0
  17. package/domains/product/.agents/skills/ab-test-design/agents/qwen.json +17 -0
  18. package/domains/product/.agents/skills/ab-test-design/agents/skill.yaml +20 -0
  19. package/domains/product/.agents/skills/acceptance-criteria/SKILL.md +406 -0
  20. package/domains/product/.agents/skills/acceptance-criteria/agents/claude.json +17 -0
  21. package/domains/product/.agents/skills/acceptance-criteria/agents/copilot.json +17 -0
  22. package/domains/product/.agents/skills/acceptance-criteria/agents/gemini.json +17 -0
  23. package/domains/product/.agents/skills/acceptance-criteria/agents/openai.yaml +8 -0
  24. package/domains/product/.agents/skills/acceptance-criteria/agents/qwen.json +17 -0
  25. package/domains/product/.agents/skills/acceptance-criteria/agents/skill.yaml +20 -0
  26. package/domains/product/.agents/skills/assumption-mapping/SKILL.md +307 -0
  27. package/domains/product/.agents/skills/assumption-mapping/agents/claude.json +17 -0
  28. package/domains/product/.agents/skills/assumption-mapping/agents/copilot.json +17 -0
  29. package/domains/product/.agents/skills/assumption-mapping/agents/gemini.json +17 -0
  30. package/domains/product/.agents/skills/assumption-mapping/agents/openai.yaml +8 -0
  31. package/domains/product/.agents/skills/assumption-mapping/agents/qwen.json +17 -0
  32. package/domains/product/.agents/skills/assumption-mapping/agents/skill.yaml +20 -0
  33. package/domains/product/.agents/skills/board/SKILL.md +420 -0
  34. package/domains/product/.agents/skills/board/agents/claude.json +16 -0
  35. package/domains/product/.agents/skills/board/agents/copilot.json +16 -0
  36. package/domains/product/.agents/skills/board/agents/gemini.json +16 -0
  37. package/domains/product/.agents/skills/board/agents/openai.yaml +8 -0
  38. package/domains/product/.agents/skills/board/agents/qwen.json +16 -0
  39. package/domains/product/.agents/skills/board/agents/skill.yaml +19 -0
  40. package/domains/product/.agents/skills/design-brief/SKILL.md +418 -0
  41. package/domains/product/.agents/skills/design-brief/agents/claude.json +16 -0
  42. package/domains/product/.agents/skills/design-brief/agents/copilot.json +16 -0
  43. package/domains/product/.agents/skills/design-brief/agents/gemini.json +16 -0
  44. package/domains/product/.agents/skills/design-brief/agents/openai.yaml +8 -0
  45. package/domains/product/.agents/skills/design-brief/agents/qwen.json +16 -0
  46. package/domains/product/.agents/skills/design-brief/agents/skill.yaml +19 -0
  47. package/domains/product/.agents/skills/epic-breakdown/SKILL.md +420 -0
  48. package/domains/product/.agents/skills/epic-breakdown/agents/claude.json +16 -0
  49. package/domains/product/.agents/skills/epic-breakdown/agents/copilot.json +16 -0
  50. package/domains/product/.agents/skills/epic-breakdown/agents/gemini.json +16 -0
  51. package/domains/product/.agents/skills/epic-breakdown/agents/openai.yaml +8 -0
  52. package/domains/product/.agents/skills/epic-breakdown/agents/qwen.json +16 -0
  53. package/domains/product/.agents/skills/epic-breakdown/agents/skill.yaml +19 -0
  54. package/domains/product/.agents/skills/gates/SKILL.md +446 -0
  55. package/domains/product/.agents/skills/gates/agents/claude.json +16 -0
  56. package/domains/product/.agents/skills/gates/agents/copilot.json +16 -0
  57. package/domains/product/.agents/skills/gates/agents/gemini.json +16 -0
  58. package/domains/product/.agents/skills/gates/agents/openai.yaml +8 -0
  59. package/domains/product/.agents/skills/gates/agents/qwen.json +16 -0
  60. package/domains/product/.agents/skills/gates/agents/skill.yaml +19 -0
  61. package/domains/product/.agents/skills/gtm-brief/SKILL.md +585 -0
  62. package/domains/product/.agents/skills/gtm-brief/agents/claude.json +17 -0
  63. package/domains/product/.agents/skills/gtm-brief/agents/copilot.json +17 -0
  64. package/domains/product/.agents/skills/gtm-brief/agents/gemini.json +17 -0
  65. package/domains/product/.agents/skills/gtm-brief/agents/openai.yaml +8 -0
  66. package/domains/product/.agents/skills/gtm-brief/agents/qwen.json +17 -0
  67. package/domains/product/.agents/skills/gtm-brief/agents/skill.yaml +20 -0
  68. package/domains/product/.agents/skills/handoff/SKILL.md +429 -0
  69. package/domains/product/.agents/skills/handoff/agents/claude.json +16 -0
  70. package/domains/product/.agents/skills/handoff/agents/copilot.json +16 -0
  71. package/domains/product/.agents/skills/handoff/agents/gemini.json +16 -0
  72. package/domains/product/.agents/skills/handoff/agents/openai.yaml +8 -0
  73. package/domains/product/.agents/skills/handoff/agents/qwen.json +16 -0
  74. package/domains/product/.agents/skills/handoff/agents/skill.yaml +19 -0
  75. package/domains/product/.agents/skills/html-pdf-report/SKILL.md +939 -0
  76. package/domains/product/.agents/skills/html-pdf-report/agents/claude.json +17 -0
  77. package/domains/product/.agents/skills/html-pdf-report/agents/copilot.json +17 -0
  78. package/domains/product/.agents/skills/html-pdf-report/agents/gemini.json +17 -0
  79. package/domains/product/.agents/skills/html-pdf-report/agents/openai.yaml +8 -0
  80. package/domains/product/.agents/skills/html-pdf-report/agents/qwen.json +17 -0
  81. package/domains/product/.agents/skills/html-pdf-report/agents/skill.yaml +20 -0
  82. package/domains/product/.agents/skills/hypothesis-template/SKILL.md +469 -0
  83. package/domains/product/.agents/skills/hypothesis-template/agents/claude.json +16 -0
  84. package/domains/product/.agents/skills/hypothesis-template/agents/copilot.json +16 -0
  85. package/domains/product/.agents/skills/hypothesis-template/agents/gemini.json +16 -0
  86. package/domains/product/.agents/skills/hypothesis-template/agents/openai.yaml +8 -0
  87. package/domains/product/.agents/skills/hypothesis-template/agents/qwen.json +16 -0
  88. package/domains/product/.agents/skills/hypothesis-template/agents/skill.yaml +19 -0
  89. package/domains/product/.agents/skills/jtbd-canvas/SKILL.md +258 -0
  90. package/domains/product/.agents/skills/jtbd-canvas/agents/claude.json +17 -0
  91. package/domains/product/.agents/skills/jtbd-canvas/agents/copilot.json +17 -0
  92. package/domains/product/.agents/skills/jtbd-canvas/agents/gemini.json +17 -0
  93. package/domains/product/.agents/skills/jtbd-canvas/agents/openai.yaml +8 -0
  94. package/domains/product/.agents/skills/jtbd-canvas/agents/qwen.json +17 -0
  95. package/domains/product/.agents/skills/jtbd-canvas/agents/skill.yaml +20 -0
  96. package/domains/product/.agents/skills/kano-model/SKILL.md +355 -0
  97. package/domains/product/.agents/skills/kano-model/agents/claude.json +16 -0
  98. package/domains/product/.agents/skills/kano-model/agents/copilot.json +16 -0
  99. package/domains/product/.agents/skills/kano-model/agents/gemini.json +16 -0
  100. package/domains/product/.agents/skills/kano-model/agents/openai.yaml +8 -0
  101. package/domains/product/.agents/skills/kano-model/agents/qwen.json +16 -0
  102. package/domains/product/.agents/skills/kano-model/agents/skill.yaml +19 -0
  103. package/domains/product/.agents/skills/launch-checklist/SKILL.md +419 -0
  104. package/domains/product/.agents/skills/launch-checklist/agents/claude.json +16 -0
  105. package/domains/product/.agents/skills/launch-checklist/agents/copilot.json +16 -0
  106. package/domains/product/.agents/skills/launch-checklist/agents/gemini.json +16 -0
  107. package/domains/product/.agents/skills/launch-checklist/agents/openai.yaml +8 -0
  108. package/domains/product/.agents/skills/launch-checklist/agents/qwen.json +16 -0
  109. package/domains/product/.agents/skills/launch-checklist/agents/skill.yaml +19 -0
  110. package/domains/product/.agents/skills/moscow-prioritization/SKILL.md +392 -0
  111. package/domains/product/.agents/skills/moscow-prioritization/agents/claude.json +16 -0
  112. package/domains/product/.agents/skills/moscow-prioritization/agents/copilot.json +16 -0
  113. package/domains/product/.agents/skills/moscow-prioritization/agents/gemini.json +16 -0
  114. package/domains/product/.agents/skills/moscow-prioritization/agents/openai.yaml +8 -0
  115. package/domains/product/.agents/skills/moscow-prioritization/agents/qwen.json +16 -0
  116. package/domains/product/.agents/skills/moscow-prioritization/agents/skill.yaml +19 -0
  117. package/domains/product/.agents/skills/north-star-metric/SKILL.md +301 -0
  118. package/domains/product/.agents/skills/north-star-metric/agents/claude.json +17 -0
  119. package/domains/product/.agents/skills/north-star-metric/agents/copilot.json +17 -0
  120. package/domains/product/.agents/skills/north-star-metric/agents/gemini.json +17 -0
  121. package/domains/product/.agents/skills/north-star-metric/agents/openai.yaml +8 -0
  122. package/domains/product/.agents/skills/north-star-metric/agents/qwen.json +17 -0
  123. package/domains/product/.agents/skills/north-star-metric/agents/skill.yaml +20 -0
  124. package/domains/product/.agents/skills/okr-framework/SKILL.md +284 -0
  125. package/domains/product/.agents/skills/okr-framework/agents/claude.json +16 -0
  126. package/domains/product/.agents/skills/okr-framework/agents/copilot.json +16 -0
  127. package/domains/product/.agents/skills/okr-framework/agents/gemini.json +16 -0
  128. package/domains/product/.agents/skills/okr-framework/agents/openai.yaml +8 -0
  129. package/domains/product/.agents/skills/okr-framework/agents/qwen.json +16 -0
  130. package/domains/product/.agents/skills/okr-framework/agents/skill.yaml +19 -0
  131. package/domains/product/.agents/skills/opportunity-solution-tree/SKILL.md +456 -0
  132. package/domains/product/.agents/skills/opportunity-solution-tree/agents/claude.json +17 -0
  133. package/domains/product/.agents/skills/opportunity-solution-tree/agents/copilot.json +17 -0
  134. package/domains/product/.agents/skills/opportunity-solution-tree/agents/gemini.json +17 -0
  135. package/domains/product/.agents/skills/opportunity-solution-tree/agents/openai.yaml +8 -0
  136. package/domains/product/.agents/skills/opportunity-solution-tree/agents/qwen.json +17 -0
  137. package/domains/product/.agents/skills/opportunity-solution-tree/agents/skill.yaml +20 -0
  138. package/domains/product/.agents/skills/prd-template/SKILL.md +490 -0
  139. package/domains/product/.agents/skills/prd-template/agents/claude.json +17 -0
  140. package/domains/product/.agents/skills/prd-template/agents/copilot.json +17 -0
  141. package/domains/product/.agents/skills/prd-template/agents/gemini.json +17 -0
  142. package/domains/product/.agents/skills/prd-template/agents/openai.yaml +8 -0
  143. package/domains/product/.agents/skills/prd-template/agents/qwen.json +17 -0
  144. package/domains/product/.agents/skills/prd-template/agents/skill.yaml +20 -0
  145. package/domains/product/.agents/skills/problem-statement/SKILL.md +312 -0
  146. package/domains/product/.agents/skills/problem-statement/agents/claude.json +16 -0
  147. package/domains/product/.agents/skills/problem-statement/agents/copilot.json +16 -0
  148. package/domains/product/.agents/skills/problem-statement/agents/gemini.json +16 -0
  149. package/domains/product/.agents/skills/problem-statement/agents/openai.yaml +8 -0
  150. package/domains/product/.agents/skills/problem-statement/agents/qwen.json +16 -0
  151. package/domains/product/.agents/skills/problem-statement/agents/skill.yaml +19 -0
  152. package/domains/product/.agents/skills/product-roadmap/SKILL.md +304 -0
  153. package/domains/product/.agents/skills/product-roadmap/agents/claude.json +17 -0
  154. package/domains/product/.agents/skills/product-roadmap/agents/copilot.json +17 -0
  155. package/domains/product/.agents/skills/product-roadmap/agents/gemini.json +17 -0
  156. package/domains/product/.agents/skills/product-roadmap/agents/openai.yaml +8 -0
  157. package/domains/product/.agents/skills/product-roadmap/agents/qwen.json +17 -0
  158. package/domains/product/.agents/skills/product-roadmap/agents/skill.yaml +20 -0
  159. package/domains/product/.agents/skills/product-vision/SKILL.md +394 -0
  160. package/domains/product/.agents/skills/product-vision/agents/claude.json +16 -0
  161. package/domains/product/.agents/skills/product-vision/agents/copilot.json +16 -0
  162. package/domains/product/.agents/skills/product-vision/agents/gemini.json +16 -0
  163. package/domains/product/.agents/skills/product-vision/agents/openai.yaml +8 -0
  164. package/domains/product/.agents/skills/product-vision/agents/qwen.json +16 -0
  165. package/domains/product/.agents/skills/product-vision/agents/skill.yaml +19 -0
  166. package/domains/product/.agents/skills/release-notes/SKILL.md +499 -0
  167. package/domains/product/.agents/skills/release-notes/agents/claude.json +17 -0
  168. package/domains/product/.agents/skills/release-notes/agents/copilot.json +17 -0
  169. package/domains/product/.agents/skills/release-notes/agents/gemini.json +17 -0
  170. package/domains/product/.agents/skills/release-notes/agents/openai.yaml +8 -0
  171. package/domains/product/.agents/skills/release-notes/agents/qwen.json +17 -0
  172. package/domains/product/.agents/skills/release-notes/agents/skill.yaml +20 -0
  173. package/domains/product/.agents/skills/report-design/SKILL.md +708 -0
  174. package/domains/product/.agents/skills/report-design/agents/claude.json +17 -0
  175. package/domains/product/.agents/skills/report-design/agents/copilot.json +17 -0
  176. package/domains/product/.agents/skills/report-design/agents/gemini.json +17 -0
  177. package/domains/product/.agents/skills/report-design/agents/openai.yaml +8 -0
  178. package/domains/product/.agents/skills/report-design/agents/qwen.json +17 -0
  179. package/domains/product/.agents/skills/report-design/agents/skill.yaml +20 -0
  180. package/domains/product/.agents/skills/rice-scoring/SKILL.md +251 -0
  181. package/domains/product/.agents/skills/rice-scoring/agents/claude.json +16 -0
  182. package/domains/product/.agents/skills/rice-scoring/agents/copilot.json +16 -0
  183. package/domains/product/.agents/skills/rice-scoring/agents/gemini.json +16 -0
  184. package/domains/product/.agents/skills/rice-scoring/agents/openai.yaml +8 -0
  185. package/domains/product/.agents/skills/rice-scoring/agents/qwen.json +16 -0
  186. package/domains/product/.agents/skills/rice-scoring/agents/skill.yaml +19 -0
  187. package/domains/product/.agents/skills/saas-metrics/SKILL.md +404 -0
  188. package/domains/product/.agents/skills/saas-metrics/agents/claude.json +21 -0
  189. package/domains/product/.agents/skills/saas-metrics/agents/copilot.json +21 -0
  190. package/domains/product/.agents/skills/saas-metrics/agents/gemini.json +21 -0
  191. package/domains/product/.agents/skills/saas-metrics/agents/openai.yaml +8 -0
  192. package/domains/product/.agents/skills/saas-metrics/agents/qwen.json +21 -0
  193. package/domains/product/.agents/skills/saas-metrics/agents/skill.yaml +24 -0
  194. package/domains/product/.agents/skills/session-prompt-generator/SKILL.md +450 -0
  195. package/domains/product/.agents/skills/session-prompt-generator/agents/claude.json +16 -0
  196. package/domains/product/.agents/skills/session-prompt-generator/agents/copilot.json +16 -0
  197. package/domains/product/.agents/skills/session-prompt-generator/agents/gemini.json +16 -0
  198. package/domains/product/.agents/skills/session-prompt-generator/agents/openai.yaml +8 -0
  199. package/domains/product/.agents/skills/session-prompt-generator/agents/qwen.json +16 -0
  200. package/domains/product/.agents/skills/session-prompt-generator/agents/skill.yaml +19 -0
  201. package/domains/product/.agents/skills/user-flow/SKILL.md +476 -0
  202. package/domains/product/.agents/skills/user-flow/agents/claude.json +16 -0
  203. package/domains/product/.agents/skills/user-flow/agents/copilot.json +16 -0
  204. package/domains/product/.agents/skills/user-flow/agents/gemini.json +16 -0
  205. package/domains/product/.agents/skills/user-flow/agents/openai.yaml +8 -0
  206. package/domains/product/.agents/skills/user-flow/agents/qwen.json +16 -0
  207. package/domains/product/.agents/skills/user-flow/agents/skill.yaml +19 -0
  208. package/domains/product/.agents/skills/user-interview-script/SKILL.md +298 -0
  209. package/domains/product/.agents/skills/user-interview-script/agents/claude.json +18 -0
  210. package/domains/product/.agents/skills/user-interview-script/agents/copilot.json +18 -0
  211. package/domains/product/.agents/skills/user-interview-script/agents/gemini.json +18 -0
  212. package/domains/product/.agents/skills/user-interview-script/agents/openai.yaml +8 -0
  213. package/domains/product/.agents/skills/user-interview-script/agents/qwen.json +18 -0
  214. package/domains/product/.agents/skills/user-interview-script/agents/skill.yaml +21 -0
  215. package/domains/product/.agents/skills/user-story/SKILL.md +385 -0
  216. package/domains/product/.agents/skills/user-story/agents/claude.json +17 -0
  217. package/domains/product/.agents/skills/user-story/agents/copilot.json +17 -0
  218. package/domains/product/.agents/skills/user-story/agents/gemini.json +17 -0
  219. package/domains/product/.agents/skills/user-story/agents/openai.yaml +8 -0
  220. package/domains/product/.agents/skills/user-story/agents/qwen.json +17 -0
  221. package/domains/product/.agents/skills/user-story/agents/skill.yaml +20 -0
  222. package/domains/product/.agents/skills/wsjf-scoring/SKILL.md +315 -0
  223. package/domains/product/.agents/skills/wsjf-scoring/agents/claude.json +17 -0
  224. package/domains/product/.agents/skills/wsjf-scoring/agents/copilot.json +17 -0
  225. package/domains/product/.agents/skills/wsjf-scoring/agents/gemini.json +17 -0
  226. package/domains/product/.agents/skills/wsjf-scoring/agents/openai.yaml +8 -0
  227. package/domains/product/.agents/skills/wsjf-scoring/agents/qwen.json +17 -0
  228. package/domains/product/.agents/skills/wsjf-scoring/agents/skill.yaml +20 -0
  229. package/domains/product/.agents/workflows/product-pipeline-rules.md +340 -0
  230. package/domains/product/.agents/workflows/quick-pm.md +292 -0
  231. package/domains/product/.agents/workflows/shape-prioritize.md +263 -0
  232. package/domains/product/.agents/workflows/ship-right-thing.md +242 -0
  233. package/domains/product/.agents/workflows/spec.md +229 -0
  234. package/domains/product/AGENTS.md +149 -0
  235. package/domains/product/AGENTS.yaml +77 -0
  236. package/domains/product/CONTEXT.md +40 -0
  237. package/domains/product/agents/conductor.md +517 -0
  238. package/domains/product/agents/data_analyst.md +557 -0
  239. package/domains/product/agents/designer.md +443 -0
  240. package/domains/product/agents/discovery.md +547 -0
  241. package/domains/product/agents/layouter.md +613 -0
  242. package/domains/product/agents/mediator.md +514 -0
  243. package/domains/product/agents/orchestrator.claude.json +10 -0
  244. package/domains/product/agents/orchestrator.copilot.json +10 -0
  245. package/domains/product/agents/orchestrator.gemini.json +10 -0
  246. package/domains/product/agents/orchestrator.openai.yaml +8 -0
  247. package/domains/product/agents/orchestrator.qwen.json +10 -0
  248. package/domains/product/agents/pm.md +544 -0
  249. package/domains/product/agents/product_strategist.md +502 -0
  250. package/domains/product/agents/tech_lead.md +546 -0
  251. package/domains/product/agents/ux_designer.md +439 -0
  252. package/domains/product/domain.json +5 -0
  253. package/domains/product/locales/en/.agents/skills/aarrr-metrics/SKILL.md +433 -0
  254. package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/claude.json +17 -0
  255. package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/copilot.json +17 -0
  256. package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/gemini.json +17 -0
  257. package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/openai.yaml +8 -0
  258. package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/qwen.json +17 -0
  259. package/domains/product/locales/en/.agents/skills/aarrr-metrics/agents/skill.yaml +20 -0
  260. package/domains/product/locales/en/.agents/skills/ab-test-design/SKILL.md +412 -0
  261. package/domains/product/locales/en/.agents/skills/ab-test-design/agents/claude.json +16 -0
  262. package/domains/product/locales/en/.agents/skills/ab-test-design/agents/copilot.json +16 -0
  263. package/domains/product/locales/en/.agents/skills/ab-test-design/agents/gemini.json +16 -0
  264. package/domains/product/locales/en/.agents/skills/ab-test-design/agents/openai.yaml +8 -0
  265. package/domains/product/locales/en/.agents/skills/ab-test-design/agents/qwen.json +16 -0
  266. package/domains/product/locales/en/.agents/skills/ab-test-design/agents/skill.yaml +19 -0
  267. package/domains/product/locales/en/.agents/skills/acceptance-criteria/SKILL.md +406 -0
  268. package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/claude.json +16 -0
  269. package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/copilot.json +16 -0
  270. package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/gemini.json +16 -0
  271. package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/openai.yaml +8 -0
  272. package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/qwen.json +16 -0
  273. package/domains/product/locales/en/.agents/skills/acceptance-criteria/agents/skill.yaml +19 -0
  274. package/domains/product/locales/en/.agents/skills/assumption-mapping/SKILL.md +307 -0
  275. package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/claude.json +15 -0
  276. package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/copilot.json +15 -0
  277. package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/gemini.json +15 -0
  278. package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/openai.yaml +8 -0
  279. package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/qwen.json +15 -0
  280. package/domains/product/locales/en/.agents/skills/assumption-mapping/agents/skill.yaml +18 -0
  281. package/domains/product/locales/en/.agents/skills/board/SKILL.md +420 -0
  282. package/domains/product/locales/en/.agents/skills/board/agents/claude.json +15 -0
  283. package/domains/product/locales/en/.agents/skills/board/agents/copilot.json +15 -0
  284. package/domains/product/locales/en/.agents/skills/board/agents/gemini.json +15 -0
  285. package/domains/product/locales/en/.agents/skills/board/agents/openai.yaml +8 -0
  286. package/domains/product/locales/en/.agents/skills/board/agents/qwen.json +15 -0
  287. package/domains/product/locales/en/.agents/skills/board/agents/skill.yaml +18 -0
  288. package/domains/product/locales/en/.agents/skills/design-brief/SKILL.md +418 -0
  289. package/domains/product/locales/en/.agents/skills/design-brief/agents/claude.json +15 -0
  290. package/domains/product/locales/en/.agents/skills/design-brief/agents/copilot.json +15 -0
  291. package/domains/product/locales/en/.agents/skills/design-brief/agents/gemini.json +15 -0
  292. package/domains/product/locales/en/.agents/skills/design-brief/agents/openai.yaml +8 -0
  293. package/domains/product/locales/en/.agents/skills/design-brief/agents/qwen.json +15 -0
  294. package/domains/product/locales/en/.agents/skills/design-brief/agents/skill.yaml +18 -0
  295. package/domains/product/locales/en/.agents/skills/epic-breakdown/SKILL.md +420 -0
  296. package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/claude.json +15 -0
  297. package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/copilot.json +15 -0
  298. package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/gemini.json +15 -0
  299. package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/openai.yaml +8 -0
  300. package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/qwen.json +15 -0
  301. package/domains/product/locales/en/.agents/skills/epic-breakdown/agents/skill.yaml +18 -0
  302. package/domains/product/locales/en/.agents/skills/gates/SKILL.md +446 -0
  303. package/domains/product/locales/en/.agents/skills/gates/agents/claude.json +16 -0
  304. package/domains/product/locales/en/.agents/skills/gates/agents/copilot.json +16 -0
  305. package/domains/product/locales/en/.agents/skills/gates/agents/gemini.json +16 -0
  306. package/domains/product/locales/en/.agents/skills/gates/agents/openai.yaml +8 -0
  307. package/domains/product/locales/en/.agents/skills/gates/agents/qwen.json +16 -0
  308. package/domains/product/locales/en/.agents/skills/gates/agents/skill.yaml +19 -0
  309. package/domains/product/locales/en/.agents/skills/gtm-brief/SKILL.md +585 -0
  310. package/domains/product/locales/en/.agents/skills/gtm-brief/agents/claude.json +17 -0
  311. package/domains/product/locales/en/.agents/skills/gtm-brief/agents/copilot.json +17 -0
  312. package/domains/product/locales/en/.agents/skills/gtm-brief/agents/gemini.json +17 -0
  313. package/domains/product/locales/en/.agents/skills/gtm-brief/agents/openai.yaml +8 -0
  314. package/domains/product/locales/en/.agents/skills/gtm-brief/agents/qwen.json +17 -0
  315. package/domains/product/locales/en/.agents/skills/gtm-brief/agents/skill.yaml +20 -0
  316. package/domains/product/locales/en/.agents/skills/handoff/SKILL.md +429 -0
  317. package/domains/product/locales/en/.agents/skills/handoff/agents/claude.json +15 -0
  318. package/domains/product/locales/en/.agents/skills/handoff/agents/copilot.json +15 -0
  319. package/domains/product/locales/en/.agents/skills/handoff/agents/gemini.json +15 -0
  320. package/domains/product/locales/en/.agents/skills/handoff/agents/openai.yaml +8 -0
  321. package/domains/product/locales/en/.agents/skills/handoff/agents/qwen.json +15 -0
  322. package/domains/product/locales/en/.agents/skills/handoff/agents/skill.yaml +18 -0
  323. package/domains/product/locales/en/.agents/skills/html-pdf-report/SKILL.md +939 -0
  324. package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/claude.json +17 -0
  325. package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/copilot.json +17 -0
  326. package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/gemini.json +17 -0
  327. package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/openai.yaml +8 -0
  328. package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/qwen.json +17 -0
  329. package/domains/product/locales/en/.agents/skills/html-pdf-report/agents/skill.yaml +20 -0
  330. package/domains/product/locales/en/.agents/skills/hypothesis-template/SKILL.md +469 -0
  331. package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/claude.json +15 -0
  332. package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/copilot.json +15 -0
  333. package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/gemini.json +15 -0
  334. package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/openai.yaml +8 -0
  335. package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/qwen.json +15 -0
  336. package/domains/product/locales/en/.agents/skills/hypothesis-template/agents/skill.yaml +18 -0
  337. package/domains/product/locales/en/.agents/skills/jtbd-canvas/SKILL.md +257 -0
  338. package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/claude.json +16 -0
  339. package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/copilot.json +16 -0
  340. package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/gemini.json +16 -0
  341. package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/openai.yaml +8 -0
  342. package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/qwen.json +16 -0
  343. package/domains/product/locales/en/.agents/skills/jtbd-canvas/agents/skill.yaml +19 -0
  344. package/domains/product/locales/en/.agents/skills/kano-model/SKILL.md +355 -0
  345. package/domains/product/locales/en/.agents/skills/kano-model/agents/claude.json +15 -0
  346. package/domains/product/locales/en/.agents/skills/kano-model/agents/copilot.json +15 -0
  347. package/domains/product/locales/en/.agents/skills/kano-model/agents/gemini.json +15 -0
  348. package/domains/product/locales/en/.agents/skills/kano-model/agents/openai.yaml +8 -0
  349. package/domains/product/locales/en/.agents/skills/kano-model/agents/qwen.json +15 -0
  350. package/domains/product/locales/en/.agents/skills/kano-model/agents/skill.yaml +18 -0
  351. package/domains/product/locales/en/.agents/skills/launch-checklist/SKILL.md +419 -0
  352. package/domains/product/locales/en/.agents/skills/launch-checklist/agents/claude.json +15 -0
  353. package/domains/product/locales/en/.agents/skills/launch-checklist/agents/copilot.json +15 -0
  354. package/domains/product/locales/en/.agents/skills/launch-checklist/agents/gemini.json +15 -0
  355. package/domains/product/locales/en/.agents/skills/launch-checklist/agents/openai.yaml +8 -0
  356. package/domains/product/locales/en/.agents/skills/launch-checklist/agents/qwen.json +15 -0
  357. package/domains/product/locales/en/.agents/skills/launch-checklist/agents/skill.yaml +18 -0
  358. package/domains/product/locales/en/.agents/skills/moscow-prioritization/SKILL.md +392 -0
  359. package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/claude.json +16 -0
  360. package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/copilot.json +16 -0
  361. package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/gemini.json +16 -0
  362. package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/openai.yaml +8 -0
  363. package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/qwen.json +16 -0
  364. package/domains/product/locales/en/.agents/skills/moscow-prioritization/agents/skill.yaml +19 -0
  365. package/domains/product/locales/en/.agents/skills/north-star-metric/SKILL.md +301 -0
  366. package/domains/product/locales/en/.agents/skills/north-star-metric/agents/claude.json +16 -0
  367. package/domains/product/locales/en/.agents/skills/north-star-metric/agents/copilot.json +16 -0
  368. package/domains/product/locales/en/.agents/skills/north-star-metric/agents/gemini.json +16 -0
  369. package/domains/product/locales/en/.agents/skills/north-star-metric/agents/openai.yaml +8 -0
  370. package/domains/product/locales/en/.agents/skills/north-star-metric/agents/qwen.json +16 -0
  371. package/domains/product/locales/en/.agents/skills/north-star-metric/agents/skill.yaml +19 -0
  372. package/domains/product/locales/en/.agents/skills/okr-framework/SKILL.md +284 -0
  373. package/domains/product/locales/en/.agents/skills/okr-framework/agents/claude.json +16 -0
  374. package/domains/product/locales/en/.agents/skills/okr-framework/agents/copilot.json +16 -0
  375. package/domains/product/locales/en/.agents/skills/okr-framework/agents/gemini.json +16 -0
  376. package/domains/product/locales/en/.agents/skills/okr-framework/agents/openai.yaml +8 -0
  377. package/domains/product/locales/en/.agents/skills/okr-framework/agents/qwen.json +16 -0
  378. package/domains/product/locales/en/.agents/skills/okr-framework/agents/skill.yaml +19 -0
  379. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/SKILL.md +456 -0
  380. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/claude.json +16 -0
  381. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/copilot.json +16 -0
  382. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/gemini.json +16 -0
  383. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/openai.yaml +8 -0
  384. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/qwen.json +16 -0
  385. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/agents/skill.yaml +19 -0
  386. package/domains/product/locales/en/.agents/skills/prd-template/SKILL.md +490 -0
  387. package/domains/product/locales/en/.agents/skills/prd-template/agents/claude.json +16 -0
  388. package/domains/product/locales/en/.agents/skills/prd-template/agents/copilot.json +16 -0
  389. package/domains/product/locales/en/.agents/skills/prd-template/agents/gemini.json +16 -0
  390. package/domains/product/locales/en/.agents/skills/prd-template/agents/openai.yaml +8 -0
  391. package/domains/product/locales/en/.agents/skills/prd-template/agents/qwen.json +16 -0
  392. package/domains/product/locales/en/.agents/skills/prd-template/agents/skill.yaml +19 -0
  393. package/domains/product/locales/en/.agents/skills/problem-statement/SKILL.md +312 -0
  394. package/domains/product/locales/en/.agents/skills/problem-statement/agents/claude.json +15 -0
  395. package/domains/product/locales/en/.agents/skills/problem-statement/agents/copilot.json +15 -0
  396. package/domains/product/locales/en/.agents/skills/problem-statement/agents/gemini.json +15 -0
  397. package/domains/product/locales/en/.agents/skills/problem-statement/agents/openai.yaml +8 -0
  398. package/domains/product/locales/en/.agents/skills/problem-statement/agents/qwen.json +15 -0
  399. package/domains/product/locales/en/.agents/skills/problem-statement/agents/skill.yaml +18 -0
  400. package/domains/product/locales/en/.agents/skills/product-roadmap/SKILL.md +305 -0
  401. package/domains/product/locales/en/.agents/skills/product-roadmap/agents/claude.json +16 -0
  402. package/domains/product/locales/en/.agents/skills/product-roadmap/agents/copilot.json +16 -0
  403. package/domains/product/locales/en/.agents/skills/product-roadmap/agents/gemini.json +16 -0
  404. package/domains/product/locales/en/.agents/skills/product-roadmap/agents/openai.yaml +8 -0
  405. package/domains/product/locales/en/.agents/skills/product-roadmap/agents/qwen.json +16 -0
  406. package/domains/product/locales/en/.agents/skills/product-roadmap/agents/skill.yaml +19 -0
  407. package/domains/product/locales/en/.agents/skills/product-vision/SKILL.md +395 -0
  408. package/domains/product/locales/en/.agents/skills/product-vision/agents/claude.json +15 -0
  409. package/domains/product/locales/en/.agents/skills/product-vision/agents/copilot.json +15 -0
  410. package/domains/product/locales/en/.agents/skills/product-vision/agents/gemini.json +15 -0
  411. package/domains/product/locales/en/.agents/skills/product-vision/agents/openai.yaml +8 -0
  412. package/domains/product/locales/en/.agents/skills/product-vision/agents/qwen.json +15 -0
  413. package/domains/product/locales/en/.agents/skills/product-vision/agents/skill.yaml +18 -0
  414. package/domains/product/locales/en/.agents/skills/release-notes/SKILL.md +499 -0
  415. package/domains/product/locales/en/.agents/skills/release-notes/agents/claude.json +16 -0
  416. package/domains/product/locales/en/.agents/skills/release-notes/agents/copilot.json +16 -0
  417. package/domains/product/locales/en/.agents/skills/release-notes/agents/gemini.json +16 -0
  418. package/domains/product/locales/en/.agents/skills/release-notes/agents/openai.yaml +8 -0
  419. package/domains/product/locales/en/.agents/skills/release-notes/agents/qwen.json +16 -0
  420. package/domains/product/locales/en/.agents/skills/release-notes/agents/skill.yaml +19 -0
  421. package/domains/product/locales/en/.agents/skills/report-design/SKILL.md +708 -0
  422. package/domains/product/locales/en/.agents/skills/report-design/agents/claude.json +17 -0
  423. package/domains/product/locales/en/.agents/skills/report-design/agents/copilot.json +17 -0
  424. package/domains/product/locales/en/.agents/skills/report-design/agents/gemini.json +17 -0
  425. package/domains/product/locales/en/.agents/skills/report-design/agents/openai.yaml +8 -0
  426. package/domains/product/locales/en/.agents/skills/report-design/agents/qwen.json +17 -0
  427. package/domains/product/locales/en/.agents/skills/report-design/agents/skill.yaml +20 -0
  428. package/domains/product/locales/en/.agents/skills/rice-scoring/SKILL.md +251 -0
  429. package/domains/product/locales/en/.agents/skills/rice-scoring/agents/claude.json +16 -0
  430. package/domains/product/locales/en/.agents/skills/rice-scoring/agents/copilot.json +16 -0
  431. package/domains/product/locales/en/.agents/skills/rice-scoring/agents/gemini.json +16 -0
  432. package/domains/product/locales/en/.agents/skills/rice-scoring/agents/openai.yaml +8 -0
  433. package/domains/product/locales/en/.agents/skills/rice-scoring/agents/qwen.json +16 -0
  434. package/domains/product/locales/en/.agents/skills/rice-scoring/agents/skill.yaml +19 -0
  435. package/domains/product/locales/en/.agents/skills/saas-metrics/SKILL.md +404 -0
  436. package/domains/product/locales/en/.agents/skills/saas-metrics/agents/claude.json +21 -0
  437. package/domains/product/locales/en/.agents/skills/saas-metrics/agents/copilot.json +21 -0
  438. package/domains/product/locales/en/.agents/skills/saas-metrics/agents/gemini.json +21 -0
  439. package/domains/product/locales/en/.agents/skills/saas-metrics/agents/openai.yaml +8 -0
  440. package/domains/product/locales/en/.agents/skills/saas-metrics/agents/qwen.json +21 -0
  441. package/domains/product/locales/en/.agents/skills/saas-metrics/agents/skill.yaml +24 -0
  442. package/domains/product/locales/en/.agents/skills/session-prompt-generator/SKILL.md +450 -0
  443. package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/claude.json +16 -0
  444. package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/copilot.json +16 -0
  445. package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/gemini.json +16 -0
  446. package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/openai.yaml +8 -0
  447. package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/qwen.json +16 -0
  448. package/domains/product/locales/en/.agents/skills/session-prompt-generator/agents/skill.yaml +19 -0
  449. package/domains/product/locales/en/.agents/skills/user-flow/SKILL.md +476 -0
  450. package/domains/product/locales/en/.agents/skills/user-flow/agents/claude.json +15 -0
  451. package/domains/product/locales/en/.agents/skills/user-flow/agents/copilot.json +15 -0
  452. package/domains/product/locales/en/.agents/skills/user-flow/agents/gemini.json +15 -0
  453. package/domains/product/locales/en/.agents/skills/user-flow/agents/openai.yaml +8 -0
  454. package/domains/product/locales/en/.agents/skills/user-flow/agents/qwen.json +15 -0
  455. package/domains/product/locales/en/.agents/skills/user-flow/agents/skill.yaml +18 -0
  456. package/domains/product/locales/en/.agents/skills/user-interview-script/SKILL.md +297 -0
  457. package/domains/product/locales/en/.agents/skills/user-interview-script/agents/claude.json +17 -0
  458. package/domains/product/locales/en/.agents/skills/user-interview-script/agents/copilot.json +17 -0
  459. package/domains/product/locales/en/.agents/skills/user-interview-script/agents/gemini.json +17 -0
  460. package/domains/product/locales/en/.agents/skills/user-interview-script/agents/openai.yaml +8 -0
  461. package/domains/product/locales/en/.agents/skills/user-interview-script/agents/qwen.json +17 -0
  462. package/domains/product/locales/en/.agents/skills/user-interview-script/agents/skill.yaml +20 -0
  463. package/domains/product/locales/en/.agents/skills/user-story/SKILL.md +385 -0
  464. package/domains/product/locales/en/.agents/skills/user-story/agents/claude.json +16 -0
  465. package/domains/product/locales/en/.agents/skills/user-story/agents/copilot.json +16 -0
  466. package/domains/product/locales/en/.agents/skills/user-story/agents/gemini.json +16 -0
  467. package/domains/product/locales/en/.agents/skills/user-story/agents/openai.yaml +8 -0
  468. package/domains/product/locales/en/.agents/skills/user-story/agents/qwen.json +16 -0
  469. package/domains/product/locales/en/.agents/skills/user-story/agents/skill.yaml +19 -0
  470. package/domains/product/locales/en/.agents/skills/wsjf-scoring/SKILL.md +315 -0
  471. package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/claude.json +17 -0
  472. package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/copilot.json +17 -0
  473. package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/gemini.json +17 -0
  474. package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/openai.yaml +8 -0
  475. package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/qwen.json +17 -0
  476. package/domains/product/locales/en/.agents/skills/wsjf-scoring/agents/skill.yaml +20 -0
  477. package/domains/product/locales/en/.agents/workflows/product-pipeline-rules.md +340 -0
  478. package/domains/product/locales/en/.agents/workflows/quick-pm.md +292 -0
  479. package/domains/product/locales/en/.agents/workflows/shape-prioritize.md +263 -0
  480. package/domains/product/locales/en/.agents/workflows/ship-right-thing.md +242 -0
  481. package/domains/product/locales/en/.agents/workflows/spec.md +229 -0
  482. package/domains/product/locales/en/AGENTS.md +149 -0
  483. package/domains/product/locales/en/AGENTS.yaml +78 -0
  484. package/domains/product/locales/en/CONTEXT.md +40 -0
  485. package/domains/product/locales/en/agents/conductor.md +518 -0
  486. package/domains/product/locales/en/agents/data_analyst.md +557 -0
  487. package/domains/product/locales/en/agents/designer.md +443 -0
  488. package/domains/product/locales/en/agents/discovery.md +547 -0
  489. package/domains/product/locales/en/agents/layouter.md +613 -0
  490. package/domains/product/locales/en/agents/mediator.md +514 -0
  491. package/domains/product/locales/en/agents/orchestrator.claude.json +10 -0
  492. package/domains/product/locales/en/agents/orchestrator.copilot.json +10 -0
  493. package/domains/product/locales/en/agents/orchestrator.gemini.json +10 -0
  494. package/domains/product/locales/en/agents/orchestrator.openai.yaml +8 -0
  495. package/domains/product/locales/en/agents/orchestrator.qwen.json +10 -0
  496. package/domains/product/locales/en/agents/pm.md +544 -0
  497. package/domains/product/locales/en/agents/product_strategist.md +502 -0
  498. package/domains/product/locales/en/agents/tech_lead.md +546 -0
  499. package/domains/product/locales/en/agents/ux_designer.md +439 -0
  500. package/domains/product/locales/en/prompt-examples.md +77 -0
  501. package/domains/product/prompt-examples.md +77 -0
  502. package/package.json +2 -2
@@ -0,0 +1,406 @@
1
+ ---
2
+ name: acceptance-criteria
3
+ description: Acceptance criteria — Gherkin (Given / When / Then) or scenario-based
4
+ ---
5
+ # Acceptance Criteria
6
+
7
+ > **Category:** Specification · **Slug:** `acceptance-criteria`
8
+
9
+ ## When to Use
10
+
11
+ - For each user story in the PRD.
12
+ - As a contract between PM and Engineering.
13
+ - For QA test cases (AC → test scenarios).
14
+ - When disputes arise about "is the story done?" — AC = the oracle.
15
+
16
+ ## Input
17
+
18
+ | Field | Required | Description |
19
+ |-------|:--------:|-------------|
20
+ | User story | ✅ | Via `$user-story` |
21
+ | UX flow / wireframe | ⬚ | If flow is complex |
22
+ | Edge cases | ⬚ | Error states, limits |
23
+ | Data constraints | ⬚ | Validation rules |
24
+
25
+ ## Data Sources
26
+
27
+ 1. User story — as starting point.
28
+ 2. UX wireframes — visual cues for scenarios.
29
+ 3. NFR requirements — for non-functional AC.
30
+ 4. Customer interviews — user edge cases.
31
+
32
+ ### Related Skills
33
+
34
+ | Skill | What we take | When to call |
35
+ |-------|-------------|--------------|
36
+ | `user-story` | Story → AC scenarios | Parent skill |
37
+ | `user-flow` | Flow steps → scenarios | For complex flows |
38
+ | `prd-template` | Where in PRD | Embedded in stories |
39
+ | `hypothesis-template` | Testable behavior | For experiment stories |
40
+
41
+ ## Two Formats
42
+
43
+ ### A. Gherkin (Given / When / Then)
44
+
45
+ ```gherkin
46
+ Scenario: [Short descriptive name]
47
+ Given [initial context / precondition]
48
+ When [action / event]
49
+ Then [expected outcome]
50
+ And [additional outcome]
51
+ ```
52
+
53
+ Pros: structured, test-tool-friendly (Cucumber), BDD-style.
54
+ Cons: verbose, not flexible for complex data.
55
+
56
+ ### B. Scenario-based checklist
57
+
58
+ ```
59
+ ## Scenario: [Name]
60
+ - Precondition: [state]
61
+ - Action: [user does X]
62
+ - Expected: [outcome]
63
+ - Error case: [what happens when X fails]
64
+ ```
65
+
66
+ Pros: flexible, readable for non-tech stakeholders.
67
+ Cons: less rigorous, not directly automatable.
68
+
69
+ **Choice:** Gherkin for complex behavior (especially API / backend), scenario for UX-heavy stories.
70
+
71
+ ## Protocol
72
+
73
+ ### Step 1 — Happy Path First
74
+
75
+ Sketch happy path scenario. This is the primary flow that 80% of users experience.
76
+
77
+ ```gherkin
78
+ Scenario: Admin creates a new team role
79
+ Given an admin is on the Teams settings page
80
+ When they click "New role template"
81
+ And fill in name "Senior Engineer" and select 12 permissions
82
+ And click "Save"
83
+ Then the role is saved
84
+ And appears in roles list
85
+ And is selectable when adding new team members
86
+ ```
87
+
88
+ ### Step 2 — Preconditions
89
+
90
+ Each scenario — what must be true before it. Avoid implicit assumptions.
91
+
92
+ Preconditions to capture:
93
+ - User auth state (logged in, role, permissions)
94
+ - Data state (existing entities, counts)
95
+ - Feature flags
96
+ - Time / date (for time-sensitive features)
97
+
98
+ ### Step 3 — Edge Cases
99
+
100
+ For each story — think about:
101
+ - **Empty state:** no data, first-time user
102
+ - **Boundary values:** 0, 1, max, max+1
103
+ - **Concurrency:** two users act simultaneously
104
+ - **Permissions:** user without permission attempts action
105
+ - **Network:** offline, slow, timeout
106
+ - **Validation:** invalid input, XSS, injection
107
+ - **Idempotency:** same action twice
108
+
109
+ B2B-specific edge cases:
110
+ - SSO edge cases (user deprovisioned in IdP)
111
+ - Admin without permission attempts restricted action
112
+ - Integration failures (3rd party down)
113
+ - Rate limits / quotas
114
+
115
+ ### Step 4 — Error Scenarios
116
+
117
+ For each user-facing failure mode:
118
+ - What triggers it
119
+ - What the user sees (error message, recovery action)
120
+ - System state afterwards (logged? retryable?)
121
+
122
+ ```gherkin
123
+ Scenario: Save fails due to name conflict
124
+ Given a role named "Senior Engineer" exists
125
+ When admin tries to create role with same name
126
+ Then display error "Role name already exists"
127
+ And do not save
128
+ And focus name field for correction
129
+ ```
130
+
131
+ ### Step 5 — Non-functional Scenarios
132
+
133
+ Separate AC for NFR if applicable:
134
+
135
+ ```gherkin
136
+ Scenario: Role creation — performance
137
+ Given a team with 500 existing roles
138
+ When admin adds a new role
139
+ Then response returns < 500ms p95
140
+ ```
141
+
142
+ ```gherkin
143
+ Scenario: Role creation — audit
144
+ When any role is created, updated, or deleted
145
+ Then an audit log entry is written with user id, timestamp, before/after diff
146
+ ```
147
+
148
+ ### Step 6 — Data Variation
149
+
150
+ For data-driven AC, use tables:
151
+
152
+ ```gherkin
153
+ Scenario Outline: Role validation rejects invalid names
154
+ Given admin is creating a role
155
+ When they enter name "<name>"
156
+ Then they see error "<error>"
157
+
158
+ Examples:
159
+ | name | error |
160
+ | "" | Name is required |
161
+ | [255 char string] | Name must be < 255 characters |
162
+ | "admin" | Name conflicts with system role |
163
+ | "<script>alert(1)</script>" | Name has invalid characters |
164
+ ```
165
+
166
+ ### Step 7 — "Ready" Checklist
167
+
168
+ - [ ] Happy path scenario
169
+ - [ ] Edge cases covered (empty / boundary / concurrency / permission)
170
+ - [ ] Error scenarios with messages
171
+ - [ ] Preconditions explicit
172
+ - [ ] Data variation for validation rules
173
+ - [ ] NFR (if applicable) separately
174
+ - [ ] No ambiguous language ("fast", "user-friendly")
175
+
176
+ ## Validation (Quality Gate)
177
+
178
+ - [ ] Each story has ≥ 1 AC
179
+ - [ ] Happy path covered
180
+ - [ ] ≥ 2 edge cases (unless trivial story)
181
+ - [ ] ≥ 1 error scenario
182
+ - [ ] Preconditions explicit
183
+ - [ ] No ambiguous verbs ("should work properly")
184
+ - [ ] NFR AC for performance/security/compliance-critical stories
185
+ - [ ] Format (Gherkin or scenario) consistent per PRD
186
+
187
+ ## Handoff
188
+
189
+ The result is the input for:
190
+ - **Engineering** → implementation + test writing
191
+ - **QA** → automated test cases
192
+ - **Designer** → error state mockups
193
+
194
+ Format: AC embedded in user story card. Via `$handoff`.
195
+
196
+ ## Anti-patterns
197
+
198
+ | Error | Why it's bad | How to do it right |
199
+ |-------|-------------|-------------------|
200
+ | Ambiguous ("fast", "easy") | Not testable | Specific thresholds |
201
+ | Only happy path | Bugs in edges | ≥ 2 edge cases |
202
+ | Implementation-specific | "Click blue button" | "When user saves" (UI-agnostic) |
203
+ | Mix AC with implementation notes | Confuses contract | Notes separate |
204
+ | Too many scenarios (20+) | Maintenance burden | Split story instead |
205
+ | Missing NFR AC | Deal-breaker bugs ship | NFR explicit |
206
+ | No error messages defined | Inconsistent UX | Specific copy per error |
207
+
208
+ ## Template
209
+
210
+ ```markdown
211
+ ## Story: [Title]
212
+
213
+ ### Acceptance Criteria
214
+
215
+ **Happy path:**
216
+ ```gherkin
217
+ Scenario: [name]
218
+ Given [precondition]
219
+ When [action]
220
+ Then [outcome]
221
+ And [outcome]
222
+ ```
223
+
224
+ **Edge cases:**
225
+ ```gherkin
226
+ Scenario: [edge case name]
227
+ Given [precondition]
228
+ When [action]
229
+ Then [outcome]
230
+ ```
231
+
232
+ **Error scenarios:**
233
+ ```gherkin
234
+ Scenario: [error name]
235
+ Given [precondition]
236
+ When [failing action]
237
+ Then [error message]
238
+ And [recovery]
239
+ ```
240
+
241
+ **NFR (if applicable):**
242
+ ```gherkin
243
+ Scenario: Performance
244
+ When [action]
245
+ Then response < 200ms p95
246
+ ```
247
+ ```
248
+
249
+ ## Worked Example — TeamFlow AC: Story S2 "Receive AI Summary Within 60 Seconds"
250
+
251
+ **Context:** Full Gherkin AC for the flagship story (S2 from user-story skill). Demonstrates happy path + boundary + errors + NFR + data variation.
252
+
253
+ ```gherkin
254
+ # Acceptance Criteria: S2 Receive AI Summary Within 60 Seconds
255
+
256
+ # ============ HAPPY PATH ============
257
+
258
+ Scenario: Manager ends 1:1, AI generates summary within 60 seconds
259
+ Given Maria is on Team Tier account (AI Summarization enabled)
260
+ And Maria has AI-enabled 1:1 meeting "Sarah weekly sync" starting 10:00 AM
261
+ And meeting includes 23 minutes of recorded audio
262
+ When Maria clicks "End meeting" at 10:23 AM
263
+ Then within 60 seconds summary appears in meeting notes view
264
+ And summary includes sections: "Topics discussed", "Decisions", "Action items"
265
+ And action items list contains ≥ 1 extracted item (if discussion mentioned commitments)
266
+ And summary status is "Draft (AI)" (not "Approved")
267
+ And event "ai_summary_generated" logged with meeting_id, duration, summary_id
268
+
269
+
270
+ # ============ STREAMING / LOADING ============
271
+
272
+ Scenario: Summary streams progressively if generation exceeds 10 seconds
273
+ Given Maria ended meeting successfully
274
+ When summary generation takes 35 seconds
275
+ Then loading indicator shows by 5th second
276
+ And first "Topics discussed" section appears as soon as generated (streaming)
277
+ And remaining sections populate progressively
278
+ And manager can read early sections without waiting for complete summary
279
+
280
+
281
+ # ============ BOUNDARY: MEETING DURATION ============
282
+
283
+ Scenario Outline: Summary behavior by meeting duration
284
+ Given Maria ended 1:1 meeting of <duration> minutes
285
+ When summary generation completes
286
+ Then summary section behavior is <behavior>
287
+
288
+ Examples:
289
+ | duration | behavior |
290
+ | 0-4 | No summary generated — "Meeting too short for summary" message shown |
291
+ | 5-14 | Brief summary (2-3 topics, action items if explicit) |
292
+ | 15-45 | Full standard summary (all sections populated) |
293
+ | 46-120 | Extended summary with "Key themes" section added |
294
+ | 121+ | Summary generated with note "Very long meeting — review carefully" |
295
+
296
+
297
+ # ============ ERROR SCENARIOS ============
298
+
299
+ Scenario: LLM API timeout — user sees fallback
300
+ Given Maria ended AI-enabled meeting
301
+ When LLM API does not return summary within 120 seconds (hard timeout)
302
+ Then manager sees message "Summary taking longer than expected — we'll email you when ready"
303
+ And event "ai_summary_timeout_fallback" logged
304
+ And background job continues attempting generation
305
+ And on success, manager receives in-product notification + email with summary
306
+
307
+ Scenario: LLM API hard error — graceful degradation
308
+ Given Maria ended AI-enabled meeting
309
+ When primary LLM provider returns 500 error after 3 retries
310
+ Then system automatically switches to secondary provider (Anthropic)
311
+ And event "ai_provider_failover" logged for ops review
312
+ And summary generates using secondary with quality parity
313
+
314
+ Scenario: Complete LLM failure (both providers) — manual fallback
315
+ Given Maria ended AI-enabled meeting
316
+ When both LLM providers unavailable for > 2 minutes
317
+ Then manager sees "AI summary unavailable this meeting — manual notes preserved"
318
+ And existing meeting notes (if any) are not affected
319
+ And event "ai_summary_unavailable" logged
320
+ And within 24 hours manager receives email: "AI recovered — want to retry?"
321
+
322
+
323
+ # ============ PRIVACY & PERMISSION ============
324
+
325
+ Scenario: AI disabled org-wide — AI summary not generated
326
+ Given Maria's account admin set "AI org policy: disabled"
327
+ When Maria tries to enable AI for meeting
328
+ Then toggle is greyed out with tooltip "AI disabled by admin — contact admin"
329
+ And no AI summary generated after meeting end
330
+
331
+ Scenario: Meeting participant declined recording consent
332
+ Given Maria starts AI-enabled meeting with Sarah
333
+ When Sarah clicks "Decline AI recording" consent prompt
334
+ Then AI disables for this meeting
335
+ And Maria sees "Sarah declined AI — switching to manual notes"
336
+ And event "ai_declined_by_participant" logged
337
+ And Maria can take manual notes normally
338
+
339
+
340
+ # ============ NON-FUNCTIONAL REQUIREMENTS ============
341
+
342
+ Scenario: Summary generation p95 latency under 60 seconds
343
+ Given 100 completed AI-enabled meetings in past 7 days
344
+ When latency measured from "End meeting" event to "summary available" event
345
+ Then p95 latency ≤ 60 seconds
346
+ And p99 latency ≤ 90 seconds
347
+ And p50 latency ≤ 30 seconds
348
+
349
+ Scenario: Summary data encryption at rest
350
+ Given AI summary generated and stored
351
+ When database queried directly (not via API)
352
+ Then summary content encrypted with customer-specific key (AES-256)
353
+ And cannot be decrypted without customer-managed key (BYOK for Enterprise)
354
+
355
+ Scenario: Audit log completeness
356
+ Given any AI summary operation occurs (generate / edit / approve / delete)
357
+ When audit log queried for that meeting_id
358
+ Then every operation logged with timestamp, actor_id, action_type, meeting_id, summary_id
359
+ And log retention ≥ 365 days
360
+ And log entries immutable (tamper-evident)
361
+
362
+
363
+ # ============ DATA VARIATION: Action Items Extraction ============
364
+
365
+ Scenario Outline: Action items extraction confidence handling
366
+ Given 1:1 transcript contains statement: "<statement>"
367
+ When AI extracts action items
368
+ Then extraction should be <extraction>
369
+ And confidence should be <confidence>
370
+
371
+ Examples:
372
+ | statement | extraction | confidence |
373
+ | "Sarah, please review PR by Friday" | "Sarah: review PR, due Friday" | High (>90%)|
374
+ | "Let's figure out the deployment plan" | No extraction (no owner/clear action) | Low (<50%) |
375
+ | "I'll send you docs soon" | "Maria: send docs, due TBD" | Medium (70-90%) |
376
+ | "We should probably talk to Dave about it" | No extraction (speculative) | Low (<50%) |
377
+ ```
378
+
379
+ ### AC Density Analysis
380
+
381
+ - **12 scenarios total** for single story S2
382
+ - **Breakdown:**
383
+ - Happy path: 1
384
+ - Streaming / loading: 1
385
+ - Boundary (duration): 1 (with 5 outlines)
386
+ - Error scenarios: 3
387
+ - Privacy / permission: 2
388
+ - NFR: 3 (latency, encryption, audit)
389
+ - Data variation: 1 (with 4 outlines)
390
+
391
+ **Density appropriate for L-sized (8 point) story with safety-critical + NFR-heavy implications.** Compared to S1 (toggle) which has 4 simpler scenarios.
392
+
393
+ ### Common AC Mistakes We Avoided
394
+
395
+ 1. **Vague thresholds:** Not "fast" — "60s p95, 90s p99"
396
+ 2. **Single happy path:** 11 non-happy-path scenarios because production is edges
397
+ 3. **Missing privacy:** 2 explicit privacy scenarios (admin disable, participant consent) — B2B deal-breakers
398
+ 4. **Missing NFR:** Latency + encryption + audit — all are requirements but easy to omit
399
+ 5. **Implementation-specific:** "User clicks blue button" avoided — "User ends meeting" (UI-agnostic)
400
+
401
+ > **AC lesson:** L-story with AI + privacy + NFR demands 10+ scenarios. Without comprehensive AC:
402
+ > 1. Eng ships happy path, encounters edge cases in prod
403
+ > 2. QA doesn't know what to test → bugs in edge cases
404
+ > 3. Privacy requirements (admin disable, participant consent) get lost
405
+ >
406
+ > Data Tables (Scenario Outline) compress data variation — 4 examples in 1 scenario vs 4 scenarios × duplicate scaffold. Keep AC maintainable.
@@ -0,0 +1,16 @@
1
+ {
2
+ "name": "acceptance-criteria",
3
+ "display_name": "Acceptance Criteria",
4
+ "description": "Acceptance criteria — Gherkin (Given / When / Then) or scenario-based",
5
+ "default_prompt": "Use $acceptance-criteria when the task relates to the skill \"Acceptance Criteria\".",
6
+ "triggers": [
7
+ "acceptance-criteria",
8
+ "acceptance criteria",
9
+ "Gherkin"
10
+ ],
11
+ "capabilities": [
12
+ "acceptance-criteria"
13
+ ],
14
+ "tools": [],
15
+ "implicit_invocation": true
16
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "name": "acceptance-criteria",
3
+ "display_name": "Acceptance Criteria",
4
+ "description": "Acceptance criteria — Gherkin (Given / When / Then) or scenario-based",
5
+ "default_prompt": "Use $acceptance-criteria when the task relates to the skill \"Acceptance Criteria\".",
6
+ "triggers": [
7
+ "acceptance-criteria",
8
+ "acceptance criteria",
9
+ "Gherkin"
10
+ ],
11
+ "capabilities": [
12
+ "acceptance-criteria"
13
+ ],
14
+ "tools": [],
15
+ "implicit_invocation": true
16
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "name": "acceptance-criteria",
3
+ "display_name": "Acceptance Criteria",
4
+ "description": "Acceptance criteria — Gherkin (Given / When / Then) or scenario-based",
5
+ "default_prompt": "Use $acceptance-criteria when the task relates to the skill \"Acceptance Criteria\".",
6
+ "triggers": [
7
+ "acceptance-criteria",
8
+ "acceptance criteria",
9
+ "Gherkin"
10
+ ],
11
+ "capabilities": [
12
+ "acceptance-criteria"
13
+ ],
14
+ "tools": [],
15
+ "implicit_invocation": true
16
+ }
@@ -0,0 +1,8 @@
1
+ interface:
2
+ display_name: "Acceptance Criteria"
3
+ short_description: "Acceptance criteria — Gherkin (Given / When / Then) or scenario-based"
4
+ default_prompt: "Use $acceptance-criteria when the task relates to the skill \"Acceptance Criteria\"."
5
+ dependencies:
6
+ tools: []
7
+ policy:
8
+ allow_implicit_invocation: true
@@ -0,0 +1,16 @@
1
+ {
2
+ "name": "acceptance-criteria",
3
+ "display_name": "Acceptance Criteria",
4
+ "description": "Acceptance criteria — Gherkin (Given / When / Then) or scenario-based",
5
+ "default_prompt": "Use $acceptance-criteria when the task relates to the skill \"Acceptance Criteria\".",
6
+ "triggers": [
7
+ "acceptance-criteria",
8
+ "acceptance criteria",
9
+ "Gherkin"
10
+ ],
11
+ "capabilities": [
12
+ "acceptance-criteria"
13
+ ],
14
+ "tools": [],
15
+ "implicit_invocation": true
16
+ }
@@ -0,0 +1,19 @@
1
+ version: 1
2
+ name: "acceptance-criteria"
3
+ display_name: "Acceptance Criteria"
4
+ description: "Acceptance criteria — Gherkin (Given / When / Then) or scenario-based"
5
+ default_prompt: "Use $acceptance-criteria when the task relates to the skill \"Acceptance Criteria\"."
6
+ triggers:
7
+ - "acceptance-criteria"
8
+ - "acceptance criteria"
9
+ - "Gherkin"
10
+ capabilities:
11
+ - "acceptance-criteria"
12
+ tools: []
13
+ invocation:
14
+ explicit: true
15
+ implicit: true
16
+ localization:
17
+ default_locale: "en"
18
+ available_locales:
19
+ - "en"