code-ai-installer 4.0.0 → 4.0.1-b

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 (471) hide show
  1. package/README.md +83 -67
  2. package/dist/index.js +2 -0
  3. package/dist/mcp/audit_ledger.d.ts +12 -0
  4. package/dist/mcp/audit_ledger.js +82 -0
  5. package/dist/mcp/cli.js +7 -1
  6. package/dist/mcp/config.d.ts +23 -0
  7. package/dist/mcp/config.js +44 -6
  8. package/dist/mcp/index.d.ts +1 -2
  9. package/dist/mcp/index.js +1 -2
  10. package/dist/mcp/paths.d.ts +20 -2
  11. package/dist/mcp/paths.js +29 -5
  12. package/dist/mcp/proposal_dedup.d.ts +32 -0
  13. package/dist/mcp/proposal_dedup.js +102 -0
  14. package/dist/mcp/proposal_store.d.ts +18 -0
  15. package/dist/mcp/proposal_store.js +74 -0
  16. package/dist/mcp/scorecard.d.ts +140 -0
  17. package/dist/mcp/scorecard.js +103 -0
  18. package/dist/mcp/skill_invocations.d.ts +15 -0
  19. package/dist/mcp/skill_invocations.js +28 -0
  20. package/dist/mcp/task_state.d.ts +77 -2
  21. package/dist/mcp/tools/_subprocess.d.ts +16 -0
  22. package/dist/mcp/tools/_subprocess.js +56 -0
  23. package/dist/mcp/tools/advance_gate.js +2 -2
  24. package/dist/mcp/tools/aggregate_run_metrics.d.ts +19 -0
  25. package/dist/mcp/tools/aggregate_run_metrics.js +139 -0
  26. package/dist/mcp/tools/apply_diff.d.ts +2 -0
  27. package/dist/mcp/tools/apply_diff.js +29 -0
  28. package/dist/mcp/tools/audit_bilocale_parity.d.ts +2 -0
  29. package/dist/mcp/tools/audit_bilocale_parity.js +146 -0
  30. package/dist/mcp/tools/audit_budget_compliance.d.ts +35 -0
  31. package/dist/mcp/tools/audit_budget_compliance.js +172 -0
  32. package/dist/mcp/tools/build.d.ts +2 -0
  33. package/dist/mcp/tools/build.js +47 -0
  34. package/dist/mcp/tools/check_lint.d.ts +2 -0
  35. package/dist/mcp/tools/check_lint.js +23 -0
  36. package/dist/mcp/tools/classify_gate.js +2 -2
  37. package/dist/mcp/tools/current_gate.js +2 -2
  38. package/dist/mcp/tools/dependency_supply_chain.d.ts +2 -0
  39. package/dist/mcp/tools/dependency_supply_chain.js +59 -0
  40. package/dist/mcp/tools/docker_compose.d.ts +2 -0
  41. package/dist/mcp/tools/docker_compose.js +24 -0
  42. package/dist/mcp/tools/e2e_playwright.d.ts +2 -0
  43. package/dist/mcp/tools/e2e_playwright.js +88 -0
  44. package/dist/mcp/tools/get_skill.js +17 -0
  45. package/dist/mcp/tools/git_commit.d.ts +2 -0
  46. package/dist/mcp/tools/git_commit.js +30 -0
  47. package/dist/mcp/tools/list_proposals.d.ts +6 -0
  48. package/dist/mcp/tools/list_proposals.js +16 -0
  49. package/dist/mcp/tools/list_skills.js +9 -1
  50. package/dist/mcp/tools/load_role.d.ts +3 -4
  51. package/dist/mcp/tools/load_role.js +11 -13
  52. package/dist/mcp/tools/propose_change.d.ts +8 -0
  53. package/dist/mcp/tools/propose_change.js +36 -0
  54. package/dist/mcp/tools/record_decision.js +25 -25
  55. package/dist/mcp/tools/review_proposal.d.ts +17 -0
  56. package/dist/mcp/tools/review_proposal.js +99 -0
  57. package/dist/mcp/tools/run_drift_audit.d.ts +11 -0
  58. package/dist/mcp/tools/run_drift_audit.js +79 -0
  59. package/dist/mcp/tools/run_tests.d.ts +2 -0
  60. package/dist/mcp/tools/run_tests.js +92 -0
  61. package/dist/mcp/tools/sign_off.js +14 -2
  62. package/dist/mcp/tools/stubs.js +30 -9
  63. package/dist/mcp/tools/verify_claim.js +33 -6
  64. package/dist/mcp_setup.d.ts +14 -3
  65. package/dist/mcp_setup.js +15 -6
  66. package/dist/shared/frontmatter.d.ts +44 -2
  67. package/dist/shared/frontmatter.js +54 -6
  68. package/dist/shared/index.d.ts +0 -5
  69. package/dist/shared/index.js +0 -5
  70. package/dist/shared/persona.d.ts +2 -2
  71. package/dist/shared/persona.js +1 -1
  72. package/dist/shared/pipeline.d.ts +46 -1
  73. package/dist/shared/tools.d.ts +1382 -16
  74. package/dist/shared/tools.js +229 -0
  75. package/dist/shared/vocabulary.d.ts +99 -4
  76. package/dist/shared/vocabulary.js +94 -5
  77. package/domains/analytics/.agents/skills/ansoff-matrix/SKILL.md +316 -300
  78. package/domains/analytics/.agents/skills/bcg-matrix/SKILL.md +345 -329
  79. package/domains/analytics/.agents/skills/blue-ocean-strategy/SKILL.md +432 -416
  80. package/domains/analytics/.agents/skills/board/SKILL.md +22 -0
  81. package/domains/analytics/.agents/skills/cohort-analysis/SKILL.md +338 -322
  82. package/domains/analytics/.agents/skills/competitive-analysis/SKILL.md +413 -395
  83. package/domains/analytics/.agents/skills/customer-journey-mapping/SKILL.md +347 -331
  84. package/domains/analytics/.agents/skills/gates/SKILL.md +388 -366
  85. package/domains/analytics/.agents/skills/handoff/SKILL.md +402 -380
  86. package/domains/analytics/.agents/skills/html-pdf-report/SKILL.md +21 -289
  87. package/domains/analytics/.agents/skills/html-pdf-report-reference/SKILL.md +325 -0
  88. package/domains/analytics/.agents/skills/html-pdf-report-reference/agents/claude.json +17 -0
  89. package/domains/analytics/.agents/skills/html-pdf-report-reference/agents/copilot.json +17 -0
  90. package/domains/analytics/.agents/skills/html-pdf-report-reference/agents/gemini.json +17 -0
  91. package/domains/analytics/.agents/skills/html-pdf-report-reference/agents/kimi.yaml +15 -0
  92. package/domains/analytics/.agents/skills/html-pdf-report-reference/agents/openai.yaml +10 -0
  93. package/domains/analytics/.agents/skills/html-pdf-report-reference/agents/qwen.json +17 -0
  94. package/domains/analytics/.agents/skills/html-pdf-report-reference/agents/skill.yaml +23 -0
  95. package/domains/analytics/.agents/skills/icp-buyer-persona/SKILL.md +407 -390
  96. package/domains/analytics/.agents/skills/jtbd-analysis/SKILL.md +357 -341
  97. package/domains/analytics/.agents/skills/karpathy-guidelines/SKILL.md +32 -0
  98. package/domains/analytics/.agents/skills/pest-analysis/SKILL.md +324 -305
  99. package/domains/analytics/.agents/skills/porters-five-forces/SKILL.md +377 -361
  100. package/domains/analytics/.agents/skills/report-design/SKILL.md +416 -398
  101. package/domains/analytics/.agents/skills/rfm-analysis/SKILL.md +330 -314
  102. package/domains/analytics/.agents/skills/session-prompt-generator/SKILL.md +400 -378
  103. package/domains/analytics/.agents/skills/swot-analysis/SKILL.md +340 -324
  104. package/domains/analytics/.agents/skills/tam-sam-som/SKILL.md +329 -312
  105. package/domains/analytics/.agents/skills/trend-analysis/SKILL.md +347 -331
  106. package/domains/analytics/.agents/skills/unit-economics/SKILL.md +430 -413
  107. package/domains/analytics/.agents/skills/value-chain-analysis/SKILL.md +346 -330
  108. package/domains/analytics/.agents/skills/web-research/SKILL.md +323 -308
  109. package/domains/analytics/AGENTS.md +1 -0
  110. package/domains/analytics/agents/auditor.md +76 -0
  111. package/domains/analytics/agents/conductor.md +11 -0
  112. package/domains/analytics/agents/data_analyst.md +11 -0
  113. package/domains/analytics/agents/designer.md +11 -0
  114. package/domains/analytics/agents/interviewer.md +11 -0
  115. package/domains/analytics/agents/layouter.md +11 -0
  116. package/domains/analytics/agents/mediator.md +11 -0
  117. package/domains/analytics/agents/researcher.md +11 -0
  118. package/domains/analytics/agents/strategist.md +11 -0
  119. package/domains/analytics/locales/en/.agents/skills/ansoff-matrix/SKILL.md +316 -300
  120. package/domains/analytics/locales/en/.agents/skills/bcg-matrix/SKILL.md +345 -329
  121. package/domains/analytics/locales/en/.agents/skills/blue-ocean-strategy/SKILL.md +432 -416
  122. package/domains/analytics/locales/en/.agents/skills/board/SKILL.md +22 -0
  123. package/domains/analytics/locales/en/.agents/skills/cohort-analysis/SKILL.md +338 -322
  124. package/domains/analytics/locales/en/.agents/skills/competitive-analysis/SKILL.md +413 -395
  125. package/domains/analytics/locales/en/.agents/skills/customer-journey-mapping/SKILL.md +347 -331
  126. package/domains/analytics/locales/en/.agents/skills/gates/SKILL.md +388 -366
  127. package/domains/analytics/locales/en/.agents/skills/handoff/SKILL.md +402 -380
  128. package/domains/analytics/locales/en/.agents/skills/html-pdf-report/SKILL.md +21 -289
  129. package/domains/analytics/locales/en/.agents/skills/html-pdf-report-reference/SKILL.md +325 -0
  130. package/domains/analytics/locales/en/.agents/skills/html-pdf-report-reference/agents/claude.json +17 -0
  131. package/domains/analytics/locales/en/.agents/skills/html-pdf-report-reference/agents/copilot.json +17 -0
  132. package/domains/analytics/locales/en/.agents/skills/html-pdf-report-reference/agents/gemini.json +17 -0
  133. package/domains/analytics/locales/en/.agents/skills/html-pdf-report-reference/agents/kimi.yaml +15 -0
  134. package/domains/analytics/locales/en/.agents/skills/html-pdf-report-reference/agents/openai.yaml +10 -0
  135. package/domains/analytics/locales/en/.agents/skills/html-pdf-report-reference/agents/qwen.json +17 -0
  136. package/domains/analytics/locales/en/.agents/skills/html-pdf-report-reference/agents/skill.yaml +29 -0
  137. package/domains/analytics/locales/en/.agents/skills/icp-buyer-persona/SKILL.md +407 -390
  138. package/domains/analytics/locales/en/.agents/skills/jtbd-analysis/SKILL.md +357 -341
  139. package/domains/analytics/locales/en/.agents/skills/karpathy-guidelines/SKILL.md +32 -0
  140. package/domains/analytics/locales/en/.agents/skills/pest-analysis/SKILL.md +324 -305
  141. package/domains/analytics/locales/en/.agents/skills/porters-five-forces/SKILL.md +377 -361
  142. package/domains/analytics/locales/en/.agents/skills/report-design/SKILL.md +416 -398
  143. package/domains/analytics/locales/en/.agents/skills/rfm-analysis/SKILL.md +330 -314
  144. package/domains/analytics/locales/en/.agents/skills/session-prompt-generator/SKILL.md +400 -378
  145. package/domains/analytics/locales/en/.agents/skills/swot-analysis/SKILL.md +340 -324
  146. package/domains/analytics/locales/en/.agents/skills/tam-sam-som/SKILL.md +329 -312
  147. package/domains/analytics/locales/en/.agents/skills/trend-analysis/SKILL.md +347 -331
  148. package/domains/analytics/locales/en/.agents/skills/unit-economics/SKILL.md +430 -413
  149. package/domains/analytics/locales/en/.agents/skills/value-chain-analysis/SKILL.md +366 -350
  150. package/domains/analytics/locales/en/.agents/skills/web-research/SKILL.md +324 -309
  151. package/domains/analytics/locales/en/AGENTS.md +1 -0
  152. package/domains/analytics/locales/en/agents/auditor.md +76 -0
  153. package/domains/analytics/locales/en/agents/conductor.md +27 -0
  154. package/domains/analytics/locales/en/agents/data_analyst.md +29 -0
  155. package/domains/analytics/locales/en/agents/designer.md +27 -0
  156. package/domains/analytics/locales/en/agents/interviewer.md +11 -0
  157. package/domains/analytics/locales/en/agents/layouter.md +11 -0
  158. package/domains/analytics/locales/en/agents/mediator.md +11 -0
  159. package/domains/analytics/locales/en/agents/researcher.md +11 -0
  160. package/domains/analytics/locales/en/agents/strategist.md +11 -0
  161. package/domains/analytics/persona/persona-base.md +94 -0
  162. package/domains/analytics/pipeline.yaml +102 -0
  163. package/domains/content/.agents/skills/audience-analysis/SKILL.md +15 -0
  164. package/domains/content/.agents/skills/board/SKILL.md +20 -0
  165. package/domains/content/.agents/skills/brand-compliance/SKILL.md +15 -0
  166. package/domains/content/.agents/skills/brand-guidelines/SKILL.md +17 -0
  167. package/domains/content/.agents/skills/competitor-content-analysis/SKILL.md +15 -0
  168. package/domains/content/.agents/skills/content-brief/SKILL.md +15 -0
  169. package/domains/content/.agents/skills/content-calendar/SKILL.md +15 -0
  170. package/domains/content/.agents/skills/content-release-gate/SKILL.md +15 -0
  171. package/domains/content/.agents/skills/content-review-checklist/SKILL.md +15 -0
  172. package/domains/content/.agents/skills/cta-optimization/SKILL.md +15 -0
  173. package/domains/content/.agents/skills/data-storytelling/SKILL.md +15 -0
  174. package/domains/content/.agents/skills/email-copywriting/SKILL.md +15 -0
  175. package/domains/content/.agents/skills/email-engagement-tiers/SKILL.md +15 -0
  176. package/domains/content/.agents/skills/fact-checking/SKILL.md +15 -0
  177. package/domains/content/.agents/skills/gates/SKILL.md +20 -0
  178. package/domains/content/.agents/skills/google-stitch-content/SKILL.md +15 -0
  179. package/domains/content/.agents/skills/handoff/SKILL.md +24 -0
  180. package/domains/content/.agents/skills/headline-formulas/SKILL.md +15 -0
  181. package/domains/content/.agents/skills/image-prompt-engineering/SKILL.md +15 -0
  182. package/domains/content/.agents/skills/karpathy-guidelines/SKILL.md +28 -0
  183. package/domains/content/.agents/skills/mailerlite-email-ops/SKILL.md +15 -0
  184. package/domains/content/.agents/skills/marketing-psychology/SKILL.md +15 -0
  185. package/domains/content/.agents/skills/moodboard/SKILL.md +15 -0
  186. package/domains/content/.agents/skills/platform-compliance/SKILL.md +15 -0
  187. package/domains/content/.agents/skills/platform-strategy/SKILL.md +15 -0
  188. package/domains/content/.agents/skills/platform-visual-specs/SKILL.md +15 -0
  189. package/domains/content/.agents/skills/readability-scoring/SKILL.md +15 -0
  190. package/domains/content/.agents/skills/seo-copywriting/SKILL.md +15 -0
  191. package/domains/content/.agents/skills/social-media-formats/SKILL.md +15 -0
  192. package/domains/content/.agents/skills/source-verification/SKILL.md +15 -0
  193. package/domains/content/.agents/skills/storytelling-framework/SKILL.md +15 -0
  194. package/domains/content/.agents/skills/tone-of-voice/SKILL.md +15 -0
  195. package/domains/content/.agents/skills/topic-research/SKILL.md +15 -0
  196. package/domains/content/.agents/skills/trend-research/SKILL.md +15 -0
  197. package/domains/content/.agents/skills/visual-brief/SKILL.md +15 -0
  198. package/domains/content/AGENTS.md +4 -0
  199. package/domains/content/agents/auditor.md +76 -0
  200. package/domains/content/agents/conductor.md +11 -0
  201. package/domains/content/agents/copywriter.md +11 -0
  202. package/domains/content/agents/researcher.md +11 -0
  203. package/domains/content/agents/reviewer.md +11 -0
  204. package/domains/content/agents/strategist.md +11 -0
  205. package/domains/content/agents/visual_concept.md +11 -0
  206. package/domains/content/locales/en/.agents/skills/audience-analysis/SKILL.md +15 -0
  207. package/domains/content/locales/en/.agents/skills/board/SKILL.md +20 -0
  208. package/domains/content/locales/en/.agents/skills/brand-compliance/SKILL.md +15 -0
  209. package/domains/content/locales/en/.agents/skills/brand-guidelines/SKILL.md +17 -0
  210. package/domains/content/locales/en/.agents/skills/competitor-content-analysis/SKILL.md +15 -0
  211. package/domains/content/locales/en/.agents/skills/content-brief/SKILL.md +15 -0
  212. package/domains/content/locales/en/.agents/skills/content-calendar/SKILL.md +15 -0
  213. package/domains/content/locales/en/.agents/skills/content-release-gate/SKILL.md +15 -0
  214. package/domains/content/locales/en/.agents/skills/content-review-checklist/SKILL.md +15 -0
  215. package/domains/content/locales/en/.agents/skills/cta-optimization/SKILL.md +15 -0
  216. package/domains/content/locales/en/.agents/skills/data-storytelling/SKILL.md +15 -0
  217. package/domains/content/locales/en/.agents/skills/email-copywriting/SKILL.md +15 -0
  218. package/domains/content/locales/en/.agents/skills/email-engagement-tiers/SKILL.md +15 -0
  219. package/domains/content/locales/en/.agents/skills/fact-checking/SKILL.md +15 -0
  220. package/domains/content/locales/en/.agents/skills/gates/SKILL.md +20 -0
  221. package/domains/content/locales/en/.agents/skills/google-stitch-content/SKILL.md +15 -0
  222. package/domains/content/locales/en/.agents/skills/handoff/SKILL.md +24 -0
  223. package/domains/content/locales/en/.agents/skills/headline-formulas/SKILL.md +15 -0
  224. package/domains/content/locales/en/.agents/skills/image-prompt-engineering/SKILL.md +15 -0
  225. package/domains/content/locales/en/.agents/skills/karpathy-guidelines/SKILL.md +30 -1
  226. package/domains/content/locales/en/.agents/skills/mailerlite-email-ops/SKILL.md +15 -0
  227. package/domains/content/locales/en/.agents/skills/marketing-psychology/SKILL.md +15 -0
  228. package/domains/content/locales/en/.agents/skills/moodboard/SKILL.md +15 -0
  229. package/domains/content/locales/en/.agents/skills/platform-compliance/SKILL.md +15 -0
  230. package/domains/content/locales/en/.agents/skills/platform-strategy/SKILL.md +15 -0
  231. package/domains/content/locales/en/.agents/skills/platform-visual-specs/SKILL.md +15 -0
  232. package/domains/content/locales/en/.agents/skills/readability-scoring/SKILL.md +15 -0
  233. package/domains/content/locales/en/.agents/skills/seo-copywriting/SKILL.md +15 -0
  234. package/domains/content/locales/en/.agents/skills/social-media-formats/SKILL.md +15 -0
  235. package/domains/content/locales/en/.agents/skills/source-verification/SKILL.md +15 -0
  236. package/domains/content/locales/en/.agents/skills/storytelling-framework/SKILL.md +15 -0
  237. package/domains/content/locales/en/.agents/skills/tone-of-voice/SKILL.md +15 -0
  238. package/domains/content/locales/en/.agents/skills/topic-research/SKILL.md +15 -0
  239. package/domains/content/locales/en/.agents/skills/trend-research/SKILL.md +15 -0
  240. package/domains/content/locales/en/.agents/skills/visual-brief/SKILL.md +15 -0
  241. package/domains/content/locales/en/AGENTS.md +4 -0
  242. package/domains/content/locales/en/agents/auditor.md +76 -0
  243. package/domains/content/locales/en/agents/conductor.md +12 -0
  244. package/domains/content/locales/en/agents/copywriter.md +12 -0
  245. package/domains/content/locales/en/agents/researcher.md +12 -0
  246. package/domains/content/locales/en/agents/reviewer.md +12 -0
  247. package/domains/content/locales/en/agents/strategist.md +12 -0
  248. package/domains/content/locales/en/agents/visual_concept.md +12 -0
  249. package/domains/content/persona/persona-base.md +94 -0
  250. package/domains/content/pipeline.yaml +96 -0
  251. package/domains/development/.agents/skills/adr-log/SKILL.md +1 -0
  252. package/domains/development/.agents/skills/design-intake/SKILL.md +0 -4
  253. package/domains/development/.agents/skills/karpathy-guidelines/SKILL.md +2 -1
  254. package/domains/development/.agents/skills/lava-flow-legacy-detection/SKILL.md +15 -1
  255. package/domains/development/.agents/skills/mcp-integration/SKILL.md +211 -0
  256. package/domains/development/.agents/skills/mcp-integration/agents/claude.json +22 -0
  257. package/domains/development/.agents/skills/mcp-integration/agents/copilot.json +22 -0
  258. package/domains/development/.agents/skills/mcp-integration/agents/gemini.json +22 -0
  259. package/domains/development/.agents/skills/mcp-integration/agents/kimi.yaml +18 -0
  260. package/domains/development/.agents/skills/mcp-integration/agents/openai.yaml +8 -0
  261. package/domains/development/.agents/skills/mcp-integration/agents/qwen.json +22 -0
  262. package/domains/development/.agents/skills/mcp-integration/agents/skill.yaml +26 -0
  263. package/domains/development/.agents/skills/qa-ui-a11y-smoke/SKILL.md +1 -1
  264. package/domains/development/.agents/skills/ui-a11y-smoke-review/SKILL.md +1 -1
  265. package/domains/development/AGENTS.md +1 -0
  266. package/domains/development/AGENTS.yaml +1 -0
  267. package/domains/development/agents/architect.md +13 -1
  268. package/domains/development/agents/auditor.md +74 -0
  269. package/domains/development/agents/conductor.md +14 -3
  270. package/domains/development/agents/devops.md +8 -9
  271. package/domains/development/agents/reviewer.md +12 -0
  272. package/domains/development/agents/senior_full_stack.md +12 -0
  273. package/domains/development/agents/tester.md +10 -16
  274. package/domains/development/locales/en/.agents/skills/adr-log/SKILL.md +1 -0
  275. package/domains/development/locales/en/.agents/skills/current-state-analysis/SKILL.md +256 -172
  276. package/domains/development/locales/en/.agents/skills/karpathy-guidelines/SKILL.md +2 -1
  277. package/domains/development/locales/en/.agents/skills/lava-flow-legacy-detection/SKILL.md +15 -1
  278. package/domains/development/locales/en/.agents/skills/mcp-integration/SKILL.md +211 -0
  279. package/domains/development/locales/en/.agents/skills/mcp-integration/agents/claude.json +22 -0
  280. package/domains/development/locales/en/.agents/skills/mcp-integration/agents/copilot.json +22 -0
  281. package/domains/development/locales/en/.agents/skills/mcp-integration/agents/gemini.json +22 -0
  282. package/domains/development/locales/en/.agents/skills/mcp-integration/agents/kimi.yaml +18 -0
  283. package/domains/development/locales/en/.agents/skills/mcp-integration/agents/openai.yaml +8 -0
  284. package/domains/development/locales/en/.agents/skills/mcp-integration/agents/qwen.json +22 -0
  285. package/domains/development/locales/en/.agents/skills/mcp-integration/agents/skill.yaml +26 -0
  286. package/domains/development/locales/en/.agents/skills/qa-ui-a11y-smoke/SKILL.md +1 -1
  287. package/domains/development/locales/en/.agents/skills/ui-a11y-smoke-review/SKILL.md +1 -1
  288. package/domains/development/locales/en/AGENTS.md +5 -0
  289. package/domains/development/locales/en/AGENTS.yaml +1 -0
  290. package/domains/development/locales/en/agents/architect.md +13 -1
  291. package/domains/development/locales/en/agents/auditor.md +74 -0
  292. package/domains/development/locales/en/agents/conductor.md +14 -3
  293. package/domains/development/locales/en/agents/devops.md +8 -9
  294. package/domains/development/locales/en/agents/reviewer.md +12 -0
  295. package/domains/development/locales/en/agents/senior_full_stack.md +12 -0
  296. package/domains/development/locales/en/agents/tester.md +10 -16
  297. package/domains/development/persona/persona-base.md +94 -0
  298. package/domains/product/.agents/skills/aarrr-metrics/SKILL.md +451 -433
  299. package/domains/product/.agents/skills/ab-test-design/SKILL.md +428 -412
  300. package/domains/product/.agents/skills/acceptance-criteria/SKILL.md +422 -406
  301. package/domains/product/.agents/skills/assumption-mapping/SKILL.md +323 -307
  302. package/domains/product/.agents/skills/board/SKILL.md +24 -0
  303. package/domains/product/.agents/skills/design-brief/SKILL.md +433 -418
  304. package/domains/product/.agents/skills/epic-breakdown/SKILL.md +435 -420
  305. package/domains/product/.agents/skills/gates/SKILL.md +470 -446
  306. package/domains/product/.agents/skills/gtm-brief/SKILL.md +18 -321
  307. package/domains/product/.agents/skills/gtm-brief-reference/SKILL.md +348 -0
  308. package/domains/product/.agents/skills/gtm-brief-reference/agents/claude.json +17 -0
  309. package/domains/product/.agents/skills/gtm-brief-reference/agents/copilot.json +17 -0
  310. package/domains/product/.agents/skills/gtm-brief-reference/agents/gemini.json +17 -0
  311. package/domains/product/.agents/skills/gtm-brief-reference/agents/kimi.yaml +15 -0
  312. package/domains/product/.agents/skills/gtm-brief-reference/agents/openai.yaml +10 -0
  313. package/domains/product/.agents/skills/gtm-brief-reference/agents/qwen.json +17 -0
  314. package/domains/product/.agents/skills/gtm-brief-reference/agents/skill.yaml +22 -0
  315. package/domains/product/.agents/skills/handoff/SKILL.md +463 -439
  316. package/domains/product/.agents/skills/html-pdf-report/SKILL.md +21 -663
  317. package/domains/product/.agents/skills/html-pdf-report-reference/SKILL.md +699 -0
  318. package/domains/product/.agents/skills/html-pdf-report-reference/agents/claude.json +17 -0
  319. package/domains/product/.agents/skills/html-pdf-report-reference/agents/copilot.json +17 -0
  320. package/domains/product/.agents/skills/html-pdf-report-reference/agents/gemini.json +17 -0
  321. package/domains/product/.agents/skills/html-pdf-report-reference/agents/kimi.yaml +15 -0
  322. package/domains/product/.agents/skills/html-pdf-report-reference/agents/openai.yaml +10 -0
  323. package/domains/product/.agents/skills/html-pdf-report-reference/agents/qwen.json +17 -0
  324. package/domains/product/.agents/skills/html-pdf-report-reference/agents/skill.yaml +22 -0
  325. package/domains/product/.agents/skills/hypothesis-template/SKILL.md +484 -469
  326. package/domains/product/.agents/skills/jtbd-canvas/SKILL.md +274 -258
  327. package/domains/product/.agents/skills/kano-model/SKILL.md +370 -355
  328. package/domains/product/.agents/skills/karpathy-guidelines/SKILL.md +36 -0
  329. package/domains/product/.agents/skills/launch-checklist/SKILL.md +434 -419
  330. package/domains/product/.agents/skills/moscow-prioritization/SKILL.md +407 -392
  331. package/domains/product/.agents/skills/north-star-metric/SKILL.md +317 -301
  332. package/domains/product/.agents/skills/okr-framework/SKILL.md +299 -284
  333. package/domains/product/.agents/skills/opportunity-solution-tree/SKILL.md +472 -456
  334. package/domains/product/.agents/skills/prd-template/SKILL.md +18 -258
  335. package/domains/product/.agents/skills/prd-template-reference/SKILL.md +285 -0
  336. package/domains/product/.agents/skills/prd-template-reference/agents/claude.json +17 -0
  337. package/domains/product/.agents/skills/prd-template-reference/agents/copilot.json +17 -0
  338. package/domains/product/.agents/skills/prd-template-reference/agents/gemini.json +17 -0
  339. package/domains/product/.agents/skills/prd-template-reference/agents/kimi.yaml +16 -0
  340. package/domains/product/.agents/skills/prd-template-reference/agents/openai.yaml +10 -0
  341. package/domains/product/.agents/skills/prd-template-reference/agents/qwen.json +17 -0
  342. package/domains/product/.agents/skills/prd-template-reference/agents/skill.yaml +23 -0
  343. package/domains/product/.agents/skills/problem-statement/SKILL.md +327 -312
  344. package/domains/product/.agents/skills/product-roadmap/SKILL.md +320 -304
  345. package/domains/product/.agents/skills/product-vision/SKILL.md +409 -394
  346. package/domains/product/.agents/skills/release-notes/SKILL.md +18 -258
  347. package/domains/product/.agents/skills/release-notes-reference/SKILL.md +285 -0
  348. package/domains/product/.agents/skills/release-notes-reference/agents/claude.json +17 -0
  349. package/domains/product/.agents/skills/release-notes-reference/agents/copilot.json +17 -0
  350. package/domains/product/.agents/skills/release-notes-reference/agents/gemini.json +17 -0
  351. package/domains/product/.agents/skills/release-notes-reference/agents/kimi.yaml +15 -0
  352. package/domains/product/.agents/skills/release-notes-reference/agents/openai.yaml +10 -0
  353. package/domains/product/.agents/skills/release-notes-reference/agents/qwen.json +17 -0
  354. package/domains/product/.agents/skills/release-notes-reference/agents/skill.yaml +22 -0
  355. package/domains/product/.agents/skills/report-design/SKILL.md +17 -307
  356. package/domains/product/.agents/skills/report-design-reference/SKILL.md +331 -0
  357. package/domains/product/.agents/skills/report-design-reference/agents/claude.json +17 -0
  358. package/domains/product/.agents/skills/report-design-reference/agents/copilot.json +17 -0
  359. package/domains/product/.agents/skills/report-design-reference/agents/gemini.json +17 -0
  360. package/domains/product/.agents/skills/report-design-reference/agents/kimi.yaml +15 -0
  361. package/domains/product/.agents/skills/report-design-reference/agents/openai.yaml +10 -0
  362. package/domains/product/.agents/skills/report-design-reference/agents/qwen.json +17 -0
  363. package/domains/product/.agents/skills/report-design-reference/agents/skill.yaml +22 -0
  364. package/domains/product/.agents/skills/rice-scoring/SKILL.md +266 -251
  365. package/domains/product/.agents/skills/saas-metrics/SKILL.md +422 -404
  366. package/domains/product/.agents/skills/session-prompt-generator/SKILL.md +474 -450
  367. package/domains/product/.agents/skills/user-flow/SKILL.md +491 -476
  368. package/domains/product/.agents/skills/user-interview-script/SKILL.md +315 -298
  369. package/domains/product/.agents/skills/user-story/SKILL.md +401 -385
  370. package/domains/product/.agents/skills/wsjf-scoring/SKILL.md +333 -315
  371. package/domains/product/AGENTS.md +5 -0
  372. package/domains/product/AGENTS.yaml +1 -0
  373. package/domains/product/agents/auditor.md +76 -0
  374. package/domains/product/agents/conductor.md +11 -0
  375. package/domains/product/agents/data_analyst.md +11 -0
  376. package/domains/product/agents/designer.md +11 -0
  377. package/domains/product/agents/discovery.md +11 -0
  378. package/domains/product/agents/layouter.md +11 -0
  379. package/domains/product/agents/mediator.md +11 -0
  380. package/domains/product/agents/pm.md +11 -0
  381. package/domains/product/agents/product_strategist.md +11 -0
  382. package/domains/product/agents/tech_lead.md +11 -0
  383. package/domains/product/agents/ux_designer.md +11 -0
  384. package/domains/product/locales/en/.agents/skills/aarrr-metrics/SKILL.md +451 -433
  385. package/domains/product/locales/en/.agents/skills/ab-test-design/SKILL.md +428 -412
  386. package/domains/product/locales/en/.agents/skills/acceptance-criteria/SKILL.md +422 -406
  387. package/domains/product/locales/en/.agents/skills/assumption-mapping/SKILL.md +323 -307
  388. package/domains/product/locales/en/.agents/skills/board/SKILL.md +24 -0
  389. package/domains/product/locales/en/.agents/skills/design-brief/SKILL.md +433 -418
  390. package/domains/product/locales/en/.agents/skills/epic-breakdown/SKILL.md +435 -420
  391. package/domains/product/locales/en/.agents/skills/gates/SKILL.md +470 -446
  392. package/domains/product/locales/en/.agents/skills/gtm-brief/SKILL.md +18 -321
  393. package/domains/product/locales/en/.agents/skills/gtm-brief-reference/SKILL.md +348 -0
  394. package/domains/product/locales/en/.agents/skills/gtm-brief-reference/agents/claude.json +17 -0
  395. package/domains/product/locales/en/.agents/skills/gtm-brief-reference/agents/copilot.json +17 -0
  396. package/domains/product/locales/en/.agents/skills/gtm-brief-reference/agents/gemini.json +17 -0
  397. package/domains/product/locales/en/.agents/skills/gtm-brief-reference/agents/kimi.yaml +15 -0
  398. package/domains/product/locales/en/.agents/skills/gtm-brief-reference/agents/openai.yaml +10 -0
  399. package/domains/product/locales/en/.agents/skills/gtm-brief-reference/agents/qwen.json +17 -0
  400. package/domains/product/locales/en/.agents/skills/gtm-brief-reference/agents/skill.yaml +22 -0
  401. package/domains/product/locales/en/.agents/skills/handoff/SKILL.md +463 -439
  402. package/domains/product/locales/en/.agents/skills/html-pdf-report/SKILL.md +21 -663
  403. package/domains/product/locales/en/.agents/skills/html-pdf-report-reference/SKILL.md +699 -0
  404. package/domains/product/locales/en/.agents/skills/html-pdf-report-reference/agents/claude.json +17 -0
  405. package/domains/product/locales/en/.agents/skills/html-pdf-report-reference/agents/copilot.json +17 -0
  406. package/domains/product/locales/en/.agents/skills/html-pdf-report-reference/agents/gemini.json +17 -0
  407. package/domains/product/locales/en/.agents/skills/html-pdf-report-reference/agents/kimi.yaml +15 -0
  408. package/domains/product/locales/en/.agents/skills/html-pdf-report-reference/agents/openai.yaml +10 -0
  409. package/domains/product/locales/en/.agents/skills/html-pdf-report-reference/agents/qwen.json +17 -0
  410. package/domains/product/locales/en/.agents/skills/html-pdf-report-reference/agents/skill.yaml +22 -0
  411. package/domains/product/locales/en/.agents/skills/hypothesis-template/SKILL.md +484 -469
  412. package/domains/product/locales/en/.agents/skills/jtbd-canvas/SKILL.md +273 -257
  413. package/domains/product/locales/en/.agents/skills/kano-model/SKILL.md +370 -355
  414. package/domains/product/locales/en/.agents/skills/karpathy-guidelines/SKILL.md +36 -0
  415. package/domains/product/locales/en/.agents/skills/launch-checklist/SKILL.md +434 -419
  416. package/domains/product/locales/en/.agents/skills/moscow-prioritization/SKILL.md +407 -392
  417. package/domains/product/locales/en/.agents/skills/north-star-metric/SKILL.md +317 -301
  418. package/domains/product/locales/en/.agents/skills/okr-framework/SKILL.md +299 -284
  419. package/domains/product/locales/en/.agents/skills/opportunity-solution-tree/SKILL.md +472 -456
  420. package/domains/product/locales/en/.agents/skills/prd-template/SKILL.md +18 -258
  421. package/domains/product/locales/en/.agents/skills/prd-template-reference/SKILL.md +285 -0
  422. package/domains/product/locales/en/.agents/skills/prd-template-reference/agents/claude.json +16 -0
  423. package/domains/product/locales/en/.agents/skills/prd-template-reference/agents/copilot.json +16 -0
  424. package/domains/product/locales/en/.agents/skills/prd-template-reference/agents/gemini.json +16 -0
  425. package/domains/product/locales/en/.agents/skills/prd-template-reference/agents/kimi.yaml +15 -0
  426. package/domains/product/locales/en/.agents/skills/prd-template-reference/agents/openai.yaml +10 -0
  427. package/domains/product/locales/en/.agents/skills/prd-template-reference/agents/qwen.json +16 -0
  428. package/domains/product/locales/en/.agents/skills/prd-template-reference/agents/skill.yaml +22 -0
  429. package/domains/product/locales/en/.agents/skills/problem-statement/SKILL.md +327 -312
  430. package/domains/product/locales/en/.agents/skills/product-roadmap/SKILL.md +321 -305
  431. package/domains/product/locales/en/.agents/skills/product-vision/SKILL.md +410 -395
  432. package/domains/product/locales/en/.agents/skills/release-notes/SKILL.md +18 -258
  433. package/domains/product/locales/en/.agents/skills/release-notes-reference/SKILL.md +285 -0
  434. package/domains/product/locales/en/.agents/skills/release-notes-reference/agents/claude.json +16 -0
  435. package/domains/product/locales/en/.agents/skills/release-notes-reference/agents/copilot.json +16 -0
  436. package/domains/product/locales/en/.agents/skills/release-notes-reference/agents/gemini.json +16 -0
  437. package/domains/product/locales/en/.agents/skills/release-notes-reference/agents/kimi.yaml +14 -0
  438. package/domains/product/locales/en/.agents/skills/release-notes-reference/agents/openai.yaml +10 -0
  439. package/domains/product/locales/en/.agents/skills/release-notes-reference/agents/qwen.json +16 -0
  440. package/domains/product/locales/en/.agents/skills/release-notes-reference/agents/skill.yaml +21 -0
  441. package/domains/product/locales/en/.agents/skills/report-design/SKILL.md +17 -307
  442. package/domains/product/locales/en/.agents/skills/report-design-reference/SKILL.md +331 -0
  443. package/domains/product/locales/en/.agents/skills/report-design-reference/agents/claude.json +17 -0
  444. package/domains/product/locales/en/.agents/skills/report-design-reference/agents/copilot.json +17 -0
  445. package/domains/product/locales/en/.agents/skills/report-design-reference/agents/gemini.json +17 -0
  446. package/domains/product/locales/en/.agents/skills/report-design-reference/agents/kimi.yaml +15 -0
  447. package/domains/product/locales/en/.agents/skills/report-design-reference/agents/openai.yaml +10 -0
  448. package/domains/product/locales/en/.agents/skills/report-design-reference/agents/qwen.json +17 -0
  449. package/domains/product/locales/en/.agents/skills/report-design-reference/agents/skill.yaml +22 -0
  450. package/domains/product/locales/en/.agents/skills/rice-scoring/SKILL.md +266 -251
  451. package/domains/product/locales/en/.agents/skills/saas-metrics/SKILL.md +422 -404
  452. package/domains/product/locales/en/.agents/skills/session-prompt-generator/SKILL.md +474 -450
  453. package/domains/product/locales/en/.agents/skills/user-flow/SKILL.md +491 -476
  454. package/domains/product/locales/en/.agents/skills/user-interview-script/SKILL.md +314 -297
  455. package/domains/product/locales/en/.agents/skills/user-story/SKILL.md +401 -385
  456. package/domains/product/locales/en/.agents/skills/wsjf-scoring/SKILL.md +333 -315
  457. package/domains/product/locales/en/AGENTS.md +5 -0
  458. package/domains/product/locales/en/agents/auditor.md +76 -0
  459. package/domains/product/locales/en/agents/conductor.md +11 -0
  460. package/domains/product/locales/en/agents/data_analyst.md +11 -0
  461. package/domains/product/locales/en/agents/designer.md +11 -0
  462. package/domains/product/locales/en/agents/discovery.md +11 -0
  463. package/domains/product/locales/en/agents/layouter.md +11 -0
  464. package/domains/product/locales/en/agents/mediator.md +11 -0
  465. package/domains/product/locales/en/agents/pm.md +11 -0
  466. package/domains/product/locales/en/agents/product_strategist.md +11 -0
  467. package/domains/product/locales/en/agents/tech_lead.md +11 -0
  468. package/domains/product/locales/en/agents/ux_designer.md +11 -0
  469. package/domains/product/persona/persona-base.md +94 -0
  470. package/domains/product/pipeline.yaml +115 -0
  471. package/package.json +72 -70
@@ -1,257 +1,273 @@
1
- ---
2
- name: jtbd-canvas
3
- description: JTBD canvas for B2B products — functional, emotional, social jobs separately for buyer and end-user
4
- ---
5
- # Jobs-to-be-Done Canvas
6
-
7
- > **Category:** Discovery · **Slug:** `jtbd-canvas`
8
-
9
- ## When to Use
10
-
11
- - When you want to dig deeper than «feature requests» and find underlying motivation.
12
- - When formulating product vision and messaging — JTBD provides language for marketing and sales.
13
- - When you need to explain why customers choose the product.
14
- - When analyzing churn — what job did the product stop doing?
15
-
16
- ## Input
17
-
18
- | Field | Required | Description |
19
- |-------|:--------:|-------------|
20
- | Target role | ✅ | Buyer / end-user — separate canvas per role |
21
- | Interview transcripts / notes | ✅ | Minimum 5 interviews per role |
22
- | Existing customer data | ⬚ | Support tickets, NPS, reviews |
23
- | Category context | ✅ | What alternative solution they currently use |
24
-
25
- ## Data Sources
26
-
27
- 1. Verbatim quotes from `$user-interview-script` primary source.
28
- 2. Support ticketsreveal functional jobs of users.
29
- 3. NPS feedback emotional/social jobs surface.
30
- 4. Competitor reviews (G2, Capterra) — what other users are trying to accomplish.
31
-
32
- ### Related Skills
33
-
34
- | Skill | What we take | When to invoke |
35
- |-------|-------------|----------------|
36
- | `user-interview-script` | Verbatim quotes jobs | Before JTBD collect evidence |
37
- | `problem-statement` | Jobs problem framing | After defining jobs |
38
- | `opportunity-solution-tree` | Jobs opportunity branches | For discovery expansion |
39
-
40
- ## Protocol
41
-
42
- ### Step 0 — Role Segmentation
43
-
44
- **Critical for B2B:** split canvases into **buyer** and **end-user**. Their jobs differ fundamentally.
45
-
46
- - **Buyer JTBD:** «Help the team work more effectively without headcount», «Show impact on ARR within 2 quarters», «Reduce compliance risk».
47
- - **End-user JTBD:** «Complete the task in 10 minutes instead of an hour», «Don't get in trouble for a mistake», «Earn respect from the team».
48
-
49
- ### Step 1 — Functional Jobs (what)
50
-
51
- What is the user trying to do? Format: **verb + object + context**.
52
-
53
- Good: «Onboard new team member to our codebase without distracting senior devs for 2 weeks»
54
- Bad: «Onboarding» (too abstract)
55
-
56
- | # | Functional Job | Context/Trigger | Evidence (quote) | Frequency |
57
- |---|----------------|-----------------|------------------|-----------|
58
- | F1 | [verb + object + context] | [when it arises] | «...» | Daily/Weekly/Monthly |
59
-
60
- ### Step 2 Emotional Jobs (feel)
61
-
62
- What does the user want to **feel** (or stop feeling)?
63
-
64
- Categories: Confidence, Control, Growth, Safety, Recognition.
65
-
66
- | # | Emotional Job | Trigger | Evidence |
67
- |---|---------------|---------|----------|
68
- | E1 | Feel [X] when [context] | [when] | «...» |
69
-
70
- ### Step 3 Social Jobs (perception)
71
-
72
- How does the user want to be **perceived** by others (manager, team, customers)?
73
-
74
- | # | Social Job | Audience | Evidence |
75
- |---|------------|----------|----------|
76
- | S1 | Be seen as [X] by [audience] | [who] | «...» |
77
-
78
- ### Step 4 Job Circumstances
79
-
80
- For each functional job:
81
-
82
- | Job | When | Frequency | Current Workaround | Desired Outcome | Metric |
83
- |-----|------|-----------|--------------------|------------------|--------|
84
- | F1 | ... | Weekly | Manual Excel | Automated report by Monday | Time saved per week |
85
-
86
- ### Step 5Job Prioritization
87
-
88
- Which jobs are most **important** and **underserved**.
89
-
90
- Scoring:
91
- - **Importance** (1-10)
92
- - **Satisfaction** (1-10) with current solution
93
- - **Opportunity Score** = Importance + max(Importance − Satisfaction, 0)
94
-
95
- Top opportunity jobs — Importance ≥ 8, Satisfaction ≤ 5.
96
-
97
- | # | Job | Importance | Satisfaction | Opportunity |
98
- |---|-----|:----------:|:------------:|:-----------:|
99
- | F1 | [job] | 9 | 4 | 14 |
100
-
101
- ### Step 6 — Buyer vs End-user Alignment
102
-
103
- Where buyer JTBD and end-user JTBD **align** — best product-market fit. Where they **diverge** — churn risk (buyer purchased, end-user doesn't use it).
104
-
105
- ## Validation (Quality Gate)
106
-
107
- - [ ] Separate canvases for buyer and end-user
108
- - [ ] Minimum 5 evidence quotes per canvas
109
- - [ ] Functional jobs verb + object + context
110
- - [ ] Each job has context/trigger, frequency, current workaround
111
- - [ ] Prioritization scoring
112
- - [ ] Top 3 opportunities identified
113
- - [ ] Buyer vs end-user alignment recorded
114
-
115
- ## Handoff
116
-
117
- The output is the input for:
118
- - **`problem-statement`** — actor = role, pain = unmet job
119
- - **`opportunity-solution-tree`**top opportunity jobs = desired outcomes
120
- - **`product-vision`** — language for vision («we help X do Y in situation Z»)
121
- - **`user-story`** «As a» = actor, «I want» = functional, «so that» = emotional/social
122
-
123
- Transfer format: JTBD canvas + priority matrix + buyer/end-user alignment map. Via `$handoff`.
124
-
125
- ## Anti-patterns
126
-
127
- | Error | Why it's bad | How to do it right |
128
- |-------|-------------|---------------------|
129
- | Jobs-as-features | «Wants automation» | Job is about outcome |
130
- | One JTBD for everyone | B2B buyer ≠ end-user | Separate canvases |
131
- | Skipping emotional/social | Incomplete picture | In B2B decisions are often emotional |
132
- | No evidence | Speculation | Minimum 5 verbatim quotes per job |
133
- | No prioritization | All jobs equal → paralysis | Opportunity scoring |
134
- | Ignoring current alternative | Don't understand switching cost | Current workaround is required |
135
-
136
- ## Worked Example TeamFlow (AI 1:1 Summarization initiative)
137
-
138
- **Context:** TeamFlow (B2B SaaS HR-tech, $8M ARR). Discovery for AI-powered 1:1 note summarization. 8 interviews (4 buyer VP HR + 4 end-user managers) from session `user-interview-script`. Separate canvases for buyer and end-user.
139
-
140
- ### JTBD Canvas — Buyer (VP People / CPO)
141
-
142
- **Context:** Mid-market / enterprise B2B SaaS companies, 100-1000 employees. Buyer reports to CEO or COO.
143
-
144
- #### Functional Jobs
145
-
146
- | # | Job | Context / Trigger | Evidence (quote) | Frequency |
147
- |---|-----|-------------------|------------------|-----------|
148
- | F1 | Ensure consistent 1:1 quality across all managers in org (not dependent on individual skill) | Annual performance review cycle raises concerns that managers vary wildly | «Some managers run amazing 1:1s, others literally cancel them. I have no visibility, no levers.» — Interview B2 (VP HR, 450-emp company) | Weekly (anxiety), Quarterly (urgency) |
149
- | F2 | Report to CEO / Board on people development ROI measurably | Board meetings, performance cycles, workforce investments under scrutiny | «When CFO asks about retention spend ROI, I have to weave a story. I don't have data.» — B1 | Quarterly |
150
- | F3 | Identify manager coaching opportunities proactively (not reactively after exit) | High performer leaves exit interview reveals bad management | «Sarah left the company because her manager never did 1:1s. We only found out afterwards. I should have known.» — B3 | Quarterly |
151
- | F4 | Reduce manager onboarding time for promoting-from-IC transitions | New manager starts, doesn't know how to run 1:1s, needs 6+ months to calibrate | «Promoting our best ICs to managers is a disaster. They flail for months.» — B4 | Per new manager (avg 5-10/year in mid-market) |
152
-
153
- #### Emotional Jobs
154
-
155
- | # | Job | Trigger | Evidence |
156
- |---|-----|---------|----------|
157
- | E1 | **Feel in control** of people strategy outcomes vs being reactive | Board pushes on retention / engagement metrics | «I feel like I'm flying blind. People leaders don't get dashboards like Engineering does.» — B2 |
158
- | E2 | **Feel confident** that investment in manager training / tooling shows return | CFO scrutinizes budget | «I spent $200K on manager training last year. Can't tell you if it worked.» — B1 |
159
- | E3 | **Feel like a modern, data-driven leader** vs «soft» HR | Career positioning, peer comparison | «I want to be at the same data-driven table as CRO and CPO. They have MRR, ARR, CAC. I want metrics too.» — B3 |
160
-
161
- #### Social Jobs
162
-
163
- | # | Job | Audience | Evidence |
164
- |---|-----|----------|----------|
165
- | S1 | Be seen by **CEO** as strategic business partner (not operational HR) | CEO / exec team | «Our CEO doesn't see HR as strategic. I want to change that need data.» — B2 |
166
- | S2 | Be seen by **peer execs** (CRO, CTO, CFO) as measurement-savvy | Peer exec team | «In ELT meetings, I feel like the soft one. They bring metrics. I bring stories.» — B1 |
167
- | S3 | Be seen by **employees** as genuinely caring (not policing) | Employees, Glassdoor reviews | «If we introduce AI in 1:1s and it feels Big Brother it backfires massively.» — B4 |
168
-
169
- #### Job Circumstances (functional jobs)
170
-
171
- | Job | When | Frequency | Current Workaround | Desired Outcome | Metric |
172
- |-----|------|-----------|--------------------|------------------|--------|
173
- | F1 | Post-engagement-survey lows | Quarterly | Manager training workshops + spot-checks + hope | 100% managers running 1:1s weekly + action items executed | % managers with weekly 1:1 cadence |
174
- | F2 | Board / CEO meetings | Quarterly | «Storytelling + anecdata + hope» | Dashboard: 1:1 frequency, action items completion rate, correlated with retention | Retention correlation to 1:1 health |
175
- | F3 | After key departures | Reactive | Exit interviews | Leading indicator dashboard: at-risk teams based on 1:1 patterns | Weeks of early warning |
176
- | F4 | New manager promotions | 5-10/year | Training program (6 weeks) + buddy | AI-assisted guidance for new managers | Time to «effective 1:1» benchmark |
177
-
178
- #### Job Prioritization
179
-
180
- | # | Job | Importance | Satisfaction with current | Opportunity |
181
- |---|-----|:----------:|:-------------------------:|:-----------:|
182
- | F1 | Consistent 1:1 quality | 10 | 4 | 16 |
183
- | F2 | Report ROI to Board | 9 | 3 | 15 |
184
- | F3 | Proactive coaching | 8 | 3 | 13 |
185
- | F4 | Manager onboarding | 7 | 5 | 9 |
186
- | E1 | Feel in control | 9 | 4 | 14 |
187
- | E3 | Feel data-driven leader | 8 | 3 | 13 |
188
- | S2 | Seen as measurement-savvy | 7 | 3 | 11 |
189
-
190
- **Top buyer opportunities:** F1 (consistency, 16), F2 (reporting, 15), E1 (feel in control, 14).
191
-
192
- ---
193
-
194
- ### JTBD Canvas — End-User (People Manager)
195
-
196
- **Context:** Engineering / Sales / Ops manager in B2B SaaS. 5-15 direct reports. 2-10 years management experience.
197
-
198
- #### Functional Jobs
199
-
200
- | # | Job | Context / Trigger | Evidence (quote) | Frequency |
201
- |---|-----|-------------------|------------------|-----------|
202
- | F1 | Prepare for each 1:1 efficiently (know context, previous topics, action items) | Before each 1:1 meeting | «25 minutes of prep every week for each of 8 reports» — E3 | Weekly × N reports (5-15) |
203
- | F2 | Capture conversation and action items during 1:1 without distraction | During 1:1 | «Typing during the meeting → lose conversation. After the meeting → forget context.» — E3 | During 1:1 (N/week) |
204
- | F3 | Follow up on action items from previous 1:1s consistently | Between 1:1s | «I probably have 20-30 open action items, half of which are no longer relevant.» — E3 | Daily checks |
205
- | F4 | Give structured feedback for performance reviews (pulling from 1:1 history) | Performance review cycle (bi-annual) | «Review time — I'm scrambling through half a year of notes trying to remember.» — E2 | Bi-annually |
206
- | F5 | Navigate difficult conversations (performance issues, salary, growth) with preparation | Infrequent but high-stakes | «Difficult conversations — I don't know how to start, how to structure, what to write afterwards.» — E4 | Monthly |
207
-
208
- #### Emotional Jobs
209
-
210
- | # | Job | Trigger | Evidence |
211
- |---|-----|---------|----------|
212
- | E1 | **Feel prepared** without spending 30 min before each 1:1 | Time pressure, calendar overload | «I skipped preparation for a 1:1 with a junior engineer because I was too busy. The meeting was a mess. I felt guilty.» — E3 |
213
- | E2 | **Feel confident** that important things don't fall through the cracks | Action items piling up, forgetting commitments | «Action items tracking is weak. I forget to check. They pile up.» — E3 |
214
- | E3 | **Feel supported** by tooling vs fighting it | Friction in workflow | «TeamFlow helps, but I still type everything manually. Tooling should work FOR me, not ADD work.» — E1 |
215
-
216
- #### Social Jobs
217
-
218
- | # | Job | Audience | Evidence |
219
- |---|-----|----------|----------|
220
- | S1 | Be seen by **direct reports** as attentive / supportive (not distracted / rushed) | Team | «A report can feel like a task when I'm clearly rushed. That's worst case.» — E2 |
221
- | S2 | Be seen by **skip-level** as strong people manager | Skip-level / VP | «My skip asks "how's the team?" I want to answer confidently, with data.» — E3 |
222
- | S3 | Be seen by **peer managers** as organized / professional | Peer managers | «In calibration sessions, you can tell which managers know their people and which are winging it.» — E1 |
223
-
224
- #### Job Prioritization
225
-
226
- | # | Job | Importance | Satisfaction with current | Opportunity |
227
- |---|-----|:----------:|:-------------------------:|:-----------:|
228
- | F2 | Capture during 1:1 | 10 | 3 | 17 |
229
- | F1 | Prep efficiently | 9 | 4 | 14 |
230
- | F3 | Follow up action items | 9 | 2 | 16 |
231
- | F4 | Feedback for reviews | 8 | 4 | 12 |
232
- | F5 | Difficult conversations | 7 | 2 | 12 |
233
- | E1 | Feel prepared | 9 | 4 | 14 |
234
- | E2 | Feel confident (things tracked) | 8 | 3 | 13 |
235
-
236
- **Top end-user opportunities:** F2 (capture during 1:1, 17), F3 (follow up action items, 16), F1 (prep efficiently, 14), E1 (feel prepared, 14).
237
-
238
- ---
239
-
240
- ### Buyer ↔ End-user Alignment
241
-
242
- **Aligned opportunities (both care deeply):**
243
- - Buyer F1 (consistency) **↔** End-user F3 (action items follow-up) — same underlying issue: things don't get done, no one sees it
244
- - Buyer F3 (proactive coaching) **↔** End-user E2 (feel confident tracked) both want visibility
245
- - Buyer E3 (data-driven leader) **↔** End-user S2 (seen as strong manager) — both want to be credible via data
246
-
247
- **Divergent / potential friction:**
248
- - Buyer S3 (not policing) **↔** End-user E3 (tooling FOR me) — AI summarization risks feeling like surveillance unless opt-in + transparent
249
- - Buyer F2 (reporting) **vs** End-user privacy aggregate metrics OK, individual 1:1 content → red line
250
-
251
- **Implications for AI summarization feature:**
252
- 1. Dual value prop: end-user gets 45 min/week back (F2 capture); buyer gets aggregate health metrics (F2 reporting)
253
- 2. Privacy architecture critical: end-user controls what gets summarized, buyer sees **aggregate** not individual content
254
- 3. Onboarding flow: emphasize «tool for manager, not to monitor manager» — preserve end-user agency
255
- 4. Pricing: per-seat premium makes sense — both buyer and end-user get value
256
-
257
- > **JTBD lesson:** Splitting buyer vs end-user revealed a **conflict in expectations** (Buyer F2 reporting wants insights, end-user privacy concern). Without separate canvases this would have been missed — and the feature at launch would have faced backlash «feels Big Brother». This is information for the PRD NFR section (privacy architecture) and the GTM brief (messaging for end-users).
1
+ ---
2
+ name: jtbd-canvas
3
+ description: JTBD canvas for B2B products — functional, emotional, social jobs separately for buyer and end-user
4
+ type: triggered
5
+ domain: product
6
+ owners:
7
+ - discovery
8
+ gates:
9
+ - DISCOVERY
10
+ tech: []
11
+ topic: []
12
+ triggers:
13
+ - jtbd-canvas
14
+ - JTBD
15
+ - jobs to be done
16
+ - работа на которую нанимают
17
+ related: []
18
+ budget_lines: 273
19
+ schema_version: 1
20
+ ---
21
+ # Jobs-to-be-Done Canvas
22
+
23
+ > **Category:** Discovery · **Slug:** `jtbd-canvas`
24
+
25
+ ## When to Use
26
+
27
+ - When you want to dig deeper than «feature requests» and find underlying motivation.
28
+ - When formulating product vision and messaging JTBD provides language for marketing and sales.
29
+ - When you need to explain why customers choose the product.
30
+ - When analyzing churn — what job did the product stop doing?
31
+
32
+ ## Input
33
+
34
+ | Field | Required | Description |
35
+ |-------|:--------:|-------------|
36
+ | Target role | | Buyer / end-user separate canvas per role |
37
+ | Interview transcripts / notes | | Minimum 5 interviews per role |
38
+ | Existing customer data | | Support tickets, NPS, reviews |
39
+ | Category context | ✅ | What alternative solution they currently use |
40
+
41
+ ## Data Sources
42
+
43
+ 1. Verbatim quotes from `$user-interview-script` — primary source.
44
+ 2. Support tickets reveal functional jobs of users.
45
+ 3. NPS feedback — emotional/social jobs surface.
46
+ 4. Competitor reviews (G2, Capterra) what other users are trying to accomplish.
47
+
48
+ ### Related Skills
49
+
50
+ | Skill | What we take | When to invoke |
51
+ |-------|-------------|----------------|
52
+ | `user-interview-script` | Verbatim quotes → jobs | Before JTBD — collect evidence |
53
+ | `problem-statement` | Jobs problem framing | After defining jobs |
54
+ | `opportunity-solution-tree` | Jobs → opportunity branches | For discovery expansion |
55
+
56
+ ## Protocol
57
+
58
+ ### Step 0 Role Segmentation
59
+
60
+ **Critical for B2B:** split canvases into **buyer** and **end-user**. Their jobs differ fundamentally.
61
+
62
+ - **Buyer JTBD:** «Help the team work more effectively without headcount», «Show impact on ARR within 2 quarters», «Reduce compliance risk».
63
+ - **End-user JTBD:** «Complete the task in 10 minutes instead of an hour», «Don't get in trouble for a mistake», «Earn respect from the team».
64
+
65
+ ### Step 1 — Functional Jobs (what)
66
+
67
+ What is the user trying to do? Format: **verb + object + context**.
68
+
69
+ ✅ Good: «Onboard new team member to our codebase without distracting senior devs for 2 weeks»
70
+ Bad: «Onboarding» (too abstract)
71
+
72
+ | # | Functional Job | Context/Trigger | Evidence (quote) | Frequency |
73
+ |---|----------------|-----------------|------------------|-----------|
74
+ | F1 | [verb + object + context] | [when it arises] | «...» | Daily/Weekly/Monthly |
75
+
76
+ ### Step 2 Emotional Jobs (feel)
77
+
78
+ What does the user want to **feel** (or stop feeling)?
79
+
80
+ Categories: Confidence, Control, Growth, Safety, Recognition.
81
+
82
+ | # | Emotional Job | Trigger | Evidence |
83
+ |---|---------------|---------|----------|
84
+ | E1 | Feel [X] when [context] | [when] | «...» |
85
+
86
+ ### Step 3Social Jobs (perception)
87
+
88
+ How does the user want to be **perceived** by others (manager, team, customers)?
89
+
90
+ | # | Social Job | Audience | Evidence |
91
+ |---|------------|----------|----------|
92
+ | S1 | Be seen as [X] by [audience] | [who] | «...» |
93
+
94
+ ### Step 4 — Job Circumstances
95
+
96
+ For each functional job:
97
+
98
+ | Job | When | Frequency | Current Workaround | Desired Outcome | Metric |
99
+ |-----|------|-----------|--------------------|------------------|--------|
100
+ | F1 | ... | Weekly | Manual Excel | Automated report by Monday | Time saved per week |
101
+
102
+ ### Step 5 — Job Prioritization
103
+
104
+ Which jobs are most **important** and **underserved**.
105
+
106
+ Scoring:
107
+ - **Importance** (1-10)
108
+ - **Satisfaction** (1-10) with current solution
109
+ - **Opportunity Score** = Importance + max(Importance Satisfaction, 0)
110
+
111
+ Top opportunity jobs Importance ≥ 8, Satisfaction ≤ 5.
112
+
113
+ | # | Job | Importance | Satisfaction | Opportunity |
114
+ |---|-----|:----------:|:------------:|:-----------:|
115
+ | F1 | [job] | 9 | 4 | 14 |
116
+
117
+ ### Step 6 Buyer vs End-user Alignment
118
+
119
+ Where buyer JTBD and end-user JTBD **align** — best product-market fit. Where they **diverge** churn risk (buyer purchased, end-user doesn't use it).
120
+
121
+ ## Validation (Quality Gate)
122
+
123
+ - [ ] Separate canvases for buyer and end-user
124
+ - [ ] Minimum 5 evidence quotes per canvas
125
+ - [ ] Functional jobs — verb + object + context
126
+ - [ ] Each job has context/trigger, frequency, current workaround
127
+ - [ ] Prioritization scoring
128
+ - [ ] Top 3 opportunities identified
129
+ - [ ] Buyer vs end-user alignment recorded
130
+
131
+ ## Handoff
132
+
133
+ The output is the input for:
134
+ - **`problem-statement`** actor = role, pain = unmet job
135
+ - **`opportunity-solution-tree`** — top opportunity jobs = desired outcomes
136
+ - **`product-vision`**language for vision («we help X do Y in situation Z»)
137
+ - **`user-story`** — «As a» = actor, «I want» = functional, «so that» = emotional/social
138
+
139
+ Transfer format: JTBD canvas + priority matrix + buyer/end-user alignment map. Via `$handoff`.
140
+
141
+ ## Anti-patterns
142
+
143
+ | Error | Why it's bad | How to do it right |
144
+ |-------|-------------|---------------------|
145
+ | Jobs-as-features | «Wants automation» | Job is about outcome |
146
+ | One JTBD for everyone | B2B buyer end-user | Separate canvases |
147
+ | Skipping emotional/social | Incomplete picture | In B2B decisions are often emotional |
148
+ | No evidence | Speculation | Minimum 5 verbatim quotes per job |
149
+ | No prioritization | All jobs equal paralysis | Opportunity scoring |
150
+ | Ignoring current alternative | Don't understand switching cost | Current workaround is required |
151
+
152
+ ## Worked Example — TeamFlow (AI 1:1 Summarization initiative)
153
+
154
+ **Context:** TeamFlow (B2B SaaS HR-tech, $8M ARR). Discovery for AI-powered 1:1 note summarization. 8 interviews (4 buyer VP HR + 4 end-user managers) from session `user-interview-script`. Separate canvases for buyer and end-user.
155
+
156
+ ### JTBD Canvas — Buyer (VP People / CPO)
157
+
158
+ **Context:** Mid-market / enterprise B2B SaaS companies, 100-1000 employees. Buyer reports to CEO or COO.
159
+
160
+ #### Functional Jobs
161
+
162
+ | # | Job | Context / Trigger | Evidence (quote) | Frequency |
163
+ |---|-----|-------------------|------------------|-----------|
164
+ | F1 | Ensure consistent 1:1 quality across all managers in org (not dependent on individual skill) | Annual performance review cycle raises concerns that managers vary wildly | «Some managers run amazing 1:1s, others literally cancel them. I have no visibility, no levers.» — Interview B2 (VP HR, 450-emp company) | Weekly (anxiety), Quarterly (urgency) |
165
+ | F2 | Report to CEO / Board on people development ROI measurably | Board meetings, performance cycles, workforce investments under scrutiny | «When CFO asks about retention spend ROI, I have to weave a story. I don't have data.» — B1 | Quarterly |
166
+ | F3 | Identify manager coaching opportunities proactively (not reactively after exit) | High performer leaves exit interview reveals bad management | «Sarah left the company because her manager never did 1:1s. We only found out afterwards. I should have known.» — B3 | Quarterly |
167
+ | F4 | Reduce manager onboarding time for promoting-from-IC transitions | New manager starts, doesn't know how to run 1:1s, needs 6+ months to calibrate | «Promoting our best ICs to managers is a disaster. They flail for months.» — B4 | Per new manager (avg 5-10/year in mid-market) |
168
+
169
+ #### Emotional Jobs
170
+
171
+ | # | Job | Trigger | Evidence |
172
+ |---|-----|---------|----------|
173
+ | E1 | **Feel in control** of people strategy outcomes vs being reactive | Board pushes on retention / engagement metrics | «I feel like I'm flying blind. People leaders don't get dashboards like Engineering does.» B2 |
174
+ | E2 | **Feel confident** that investment in manager training / tooling shows return | CFO scrutinizes budget | «I spent $200K on manager training last year. Can't tell you if it worked.» B1 |
175
+ | E3 | **Feel like a modern, data-driven leader** vs «soft» HR | Career positioning, peer comparison | «I want to be at the same data-driven table as CRO and CPO. They have MRR, ARR, CAC. I want metrics too.» — B3 |
176
+
177
+ #### Social Jobs
178
+
179
+ | # | Job | Audience | Evidence |
180
+ |---|-----|----------|----------|
181
+ | S1 | Be seen by **CEO** as strategic business partner (not operational HR) | CEO / exec team | «Our CEO doesn't see HR as strategic. I want to change that — need data.» — B2 |
182
+ | S2 | Be seen by **peer execs** (CRO, CTO, CFO) as measurement-savvy | Peer exec team | «In ELT meetings, I feel like the soft one. They bring metrics. I bring stories.» — B1 |
183
+ | S3 | Be seen by **employees** as genuinely caring (not policing) | Employees, Glassdoor reviews | «If we introduce AI in 1:1s and it feels Big Brother — it backfires massively.» — B4 |
184
+
185
+ #### Job Circumstances (functional jobs)
186
+
187
+ | Job | When | Frequency | Current Workaround | Desired Outcome | Metric |
188
+ |-----|------|-----------|--------------------|------------------|--------|
189
+ | F1 | Post-engagement-survey lows | Quarterly | Manager training workshops + spot-checks + hope | 100% managers running 1:1s weekly + action items executed | % managers with ≥ weekly 1:1 cadence |
190
+ | F2 | Board / CEO meetings | Quarterly | «Storytelling + anecdata + hope» | Dashboard: 1:1 frequency, action items completion rate, correlated with retention | Retention correlation to 1:1 health |
191
+ | F3 | After key departures | Reactive | Exit interviews | Leading indicator dashboard: at-risk teams based on 1:1 patterns | Weeks of early warning |
192
+ | F4 | New manager promotions | 5-10/year | Training program (6 weeks) + buddy | AI-assisted guidance for new managers | Time to «effective 1:1» benchmark |
193
+
194
+ #### Job Prioritization
195
+
196
+ | # | Job | Importance | Satisfaction with current | Opportunity |
197
+ |---|-----|:----------:|:-------------------------:|:-----------:|
198
+ | F1 | Consistent 1:1 quality | 10 | 4 | 16 |
199
+ | F2 | Report ROI to Board | 9 | 3 | 15 |
200
+ | F3 | Proactive coaching | 8 | 3 | 13 |
201
+ | F4 | Manager onboarding | 7 | 5 | 9 |
202
+ | E1 | Feel in control | 9 | 4 | 14 |
203
+ | E3 | Feel data-driven leader | 8 | 3 | 13 |
204
+ | S2 | Seen as measurement-savvy | 7 | 3 | 11 |
205
+
206
+ **Top buyer opportunities:** F1 (consistency, 16), F2 (reporting, 15), E1 (feel in control, 14).
207
+
208
+ ---
209
+
210
+ ### JTBD Canvas End-User (People Manager)
211
+
212
+ **Context:** Engineering / Sales / Ops manager in B2B SaaS. 5-15 direct reports. 2-10 years management experience.
213
+
214
+ #### Functional Jobs
215
+
216
+ | # | Job | Context / Trigger | Evidence (quote) | Frequency |
217
+ |---|-----|-------------------|------------------|-----------|
218
+ | F1 | Prepare for each 1:1 efficiently (know context, previous topics, action items) | Before each 1:1 meeting | «25 minutes of prep every week for each of 8 reports» — E3 | Weekly × N reports (5-15) |
219
+ | F2 | Capture conversation and action items during 1:1 without distraction | During 1:1 | «Typing during the meeting → lose conversation. After the meeting → forget context.» — E3 | During 1:1 (N/week) |
220
+ | F3 | Follow up on action items from previous 1:1s consistently | Between 1:1s | «I probably have 20-30 open action items, half of which are no longer relevant.» — E3 | Daily checks |
221
+ | F4 | Give structured feedback for performance reviews (pulling from 1:1 history) | Performance review cycle (bi-annual) | «Review time I'm scrambling through half a year of notes trying to remember.» — E2 | Bi-annually |
222
+ | F5 | Navigate difficult conversations (performance issues, salary, growth) with preparation | Infrequent but high-stakes | «Difficult conversations I don't know how to start, how to structure, what to write afterwards.» — E4 | Monthly |
223
+
224
+ #### Emotional Jobs
225
+
226
+ | # | Job | Trigger | Evidence |
227
+ |---|-----|---------|----------|
228
+ | E1 | **Feel prepared** without spending 30 min before each 1:1 | Time pressure, calendar overload | «I skipped preparation for a 1:1 with a junior engineer because I was too busy. The meeting was a mess. I felt guilty.» — E3 |
229
+ | E2 | **Feel confident** that important things don't fall through the cracks | Action items piling up, forgetting commitments | «Action items tracking is weak. I forget to check. They pile up.» — E3 |
230
+ | E3 | **Feel supported** by tooling vs fighting it | Friction in workflow | «TeamFlow helps, but I still type everything manually. Tooling should work FOR me, not ADD work.» — E1 |
231
+
232
+ #### Social Jobs
233
+
234
+ | # | Job | Audience | Evidence |
235
+ |---|-----|----------|----------|
236
+ | S1 | Be seen by **direct reports** as attentive / supportive (not distracted / rushed) | Team | «A report can feel like a task when I'm clearly rushed. That's worst case.» — E2 |
237
+ | S2 | Be seen by **skip-level** as strong people manager | Skip-level / VP | «My skip asks "how's the team?" — I want to answer confidently, with data.» — E3 |
238
+ | S3 | Be seen by **peer managers** as organized / professional | Peer managers | «In calibration sessions, you can tell which managers know their people and which are winging it.» — E1 |
239
+
240
+ #### Job Prioritization
241
+
242
+ | # | Job | Importance | Satisfaction with current | Opportunity |
243
+ |---|-----|:----------:|:-------------------------:|:-----------:|
244
+ | F2 | Capture during 1:1 | 10 | 3 | 17 |
245
+ | F1 | Prep efficiently | 9 | 4 | 14 |
246
+ | F3 | Follow up action items | 9 | 2 | 16 |
247
+ | F4 | Feedback for reviews | 8 | 4 | 12 |
248
+ | F5 | Difficult conversations | 7 | 2 | 12 |
249
+ | E1 | Feel prepared | 9 | 4 | 14 |
250
+ | E2 | Feel confident (things tracked) | 8 | 3 | 13 |
251
+
252
+ **Top end-user opportunities:** F2 (capture during 1:1, 17), F3 (follow up action items, 16), F1 (prep efficiently, 14), E1 (feel prepared, 14).
253
+
254
+ ---
255
+
256
+ ### Buyer ↔ End-user Alignment
257
+
258
+ **Aligned opportunities (both care deeply):**
259
+ - Buyer F1 (consistency) **↔** End-user F3 (action items follow-up) — same underlying issue: things don't get done, no one sees it
260
+ - Buyer F3 (proactive coaching) **↔** End-user E2 (feel confident tracked) — both want visibility
261
+ - Buyer E3 (data-driven leader) **↔** End-user S2 (seen as strong manager) — both want to be credible via data
262
+
263
+ **Divergent / potential friction:**
264
+ - Buyer S3 (not policing) **↔** End-user E3 (tooling FOR me) — AI summarization risks feeling like surveillance unless opt-in + transparent
265
+ - Buyer F2 (reporting) **vs** End-user privacy — aggregate metrics OK, individual 1:1 content → red line
266
+
267
+ **Implications for AI summarization feature:**
268
+ 1. Dual value prop: end-user gets 45 min/week back (F2 capture); buyer gets aggregate health metrics (F2 reporting)
269
+ 2. Privacy architecture critical: end-user controls what gets summarized, buyer sees **aggregate** not individual content
270
+ 3. Onboarding flow: emphasize «tool for manager, not to monitor manager» — preserve end-user agency
271
+ 4. Pricing: per-seat premium makes sense — both buyer and end-user get value
272
+
273
+ > **JTBD lesson:** Splitting buyer vs end-user revealed a **conflict in expectations** (Buyer F2 reporting wants insights, end-user privacy concern). Without separate canvases this would have been missed — and the feature at launch would have faced backlash «feels Big Brother». This is information for the PRD NFR section (privacy architecture) and the GTM brief (messaging for end-users).