code-ai-installer 4.0.0 → 4.0.1-a

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 +36 -0
  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 +8 -0
  65. package/dist/mcp_setup.js +4 -1
  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,322 +1,338 @@
1
- ---
2
- name: cohort-analysis
3
- description: Анализ когорт — retention, revenue per cohort, паттерны поведения по группам
4
- ---
5
- # Когортный анализ — Retention, revenue и паттерны поведения по группам
6
-
7
- ## Когда использовать
8
- - При анализе удержания клиентов — понять, как retention меняется со временем.
9
- - При оценке эффективности изменений — сравнить когорты до и после изменений.
10
- - При прогнозировании LTV — когортные данные дают наиболее точную оценку.
11
- - При выявлении проблем в онбординге — ранний churn в новых когортах.
12
-
13
- ## Вход
14
-
15
- | Поле | Обязательно | Описание |
16
- |------|:-----------:|----------|
17
- | Продукт / сервис | ✅ | Что анализируем |
18
- | Бизнес-модель | ✅ | SaaS / E-commerce / Marketplace / App |
19
- | Критерий когортирования | ✅ | По дате регистрации / первой покупки / другое |
20
- | Данные по когортам | ⬚ | Реальные данные retention / revenue (если есть) |
21
- | Период анализа | | За какой период (по умолчанию — 12 месяцев) |
22
- | Гранулярность | ⬚ | Недели / месяцы / кварталы (по умолчанию — месяцы) |
23
- | Размер когорт | ⬚ | Количество пользователей в каждой когорте |
24
-
25
- > Если обязательные поля не предоставлены **запросить** у пользователя, не генерировать предположения.
26
-
27
- > Если реальных данных нетскил формирует **методологический фреймворк** с бенчмарками по отрасли, который можно применить при появлении данных. Явно пометить как «Фреймворк (без реальных данных)».
28
-
29
- ## Источники данных
30
- 1. **Аналитика продукта** — данные о регистрациях, активности, оплатах.
31
- 2. **Веб-поиск** отраслевые бенчмарки retention (Mixpanel, Amplitude, Lenny Rachitsky).
32
- 3. **Отраслевые отчёты** — средние retention curves по вертикалям.
33
- 4. **CRM / Payment data** данные от пользователя, если предоставлены.
34
- 5. **Публичные данные** retention кейсы публичных компаний (S-1 filings, earnings).
35
-
36
- > При работе с бенчмарками указать источник, дату и степень применимости.
37
-
38
- ### Связь с другими скилами
39
- | Скил | Что берём | Когда вызывать |
40
- |------|-----------|----------------|
41
- | `web-research` | Отраслевые бенчмарки retention, публичные кейсы | Если нет реальных данных или нужны бенчмарки для сравнения |
42
- | `competitive-analysis` | Retention-бенчмарки конкурентов (если публичны) | Для сравнения с конкурентами (шаг 5) |
43
- | `rfm-analysis` | RFM-сегменты для перекрёстного анализа с когортами | Если нужно понять, какие сегменты внутри когорт лучше удерживаются |
44
- | `unit-economics` | CAC для расчёта окупаемости когорты | Для шага 6 (revenue per cohort → payback period) |
45
- | `customer-journey-mapping` | Точки оттока для объяснения retention drops | Если нужно объяснить, почему конкретная когорта теряет пользователей |
46
-
47
- ## Протокол
48
-
49
- ### Шаг 0Сбор контекста
50
- 1. Проверить наличие обязательных данных.
51
- 2. Определить режим: **реальные данные** или **методологический фреймворк**.
52
- 3. Зафиксировать период и гранулярность.
53
- 4. Определить метрику активности: что считаем «активным» (логин, транзакция, ключевое действие — «aha moment»).
54
- 5. Зафиксировать исключения: тестовые аккаунты, боты, аномалии.
55
-
56
- ### Шаг 1 — Определение критериев когортирования
57
-
58
- | Параметр | Значение | Обоснование |
59
- |----------|----------|-------------|
60
- | Основной критерий | дата регистрации / первой покупки / подписки | [Почему выбран этот] |
61
- | Период когорты | неделя / месяц / квартал | [Обоснование гранулярности] |
62
- | Метрика активности | [логин / транзакция / ключевое действие] | [Что отражает ценность для пользователя] |
63
- | Период наблюдения | [6 / 12 / 24 месяца] | [Обоснование глубины] |
64
- | Минимальный размер когорты | ≥ 30 (статзначимость) | Когорты < 30 помечать ⚠️ |
65
-
66
- ### Шаг 2 Retention Table (Треугольник удержания)
67
- 1. Построить таблицу retention по когортам:
68
- - Строки: когорты (по месяцам регистрации).
69
- - Столбцы: месяцы жизни (M0, M1, ... MN).
70
- - Значения: процент активных пользователей от исходного размера когорты.
71
- - M0 = 100% (по определению).
72
- 2. Выделить ячейки цветовой маркировкой:
73
- - 🟢 ≥ бенчмарка отрасли
74
- - 🟡 в пределах ±5pp от бенчмарка
75
- - 🔴 < бенчмарка на > 5pp
76
-
77
- ### Шаг 3 Retention Curves
78
- Визуализировать кривые удержания:
79
- 1. Наложить кривые разных когорт для сравнения.
80
- 2. Определить характерную форму:
81
-
82
- | Форма | Описание | Интерпретация |
83
- |-------|----------|---------------|
84
- | **Flattening (плато)** | Снижение → выход на плато | Здоровый продукт, ядро лояльных пользователей |
85
- | **Continuous decay** | Постоянное снижение без плато | Проблема с value proposition или product-market fit |
86
- | **Smile curve** | Снижение рост | Реактивация работает, но есть проблема с ранним удержанием |
87
- | **Cliff** | Резкое падение на конкретном месяце | Проблема в конкретной точке (конец триала, первый платёж) |
88
-
89
- 3. Определить точку стабилизации: месяц, на котором retention выходит на плато (Δ < 1pp между периодами).
90
-
91
- ### Шаг 4 Паттерны и аномалии
92
- 1. Проанализировать когорты на паттерны:
93
- - **Plateau (плато):** на каком месяце retention стабилизируется.
94
- - **Decay (затухание):** какие когорты теряют пользователей быстрее.
95
- - **Revival (возврат):** есть ли сезонные или триггерные возвраты.
96
- - **Улучшение/ухудшение:** новые когорты лучше или хуже старых.
97
- 2. Привязать аномалии к событиям:
98
-
99
- | Когорта | Аномалия | Событие | Влияние | Достоверность |
100
- |---------|----------|---------|---------|:-------------:|
101
- | [Мар 2025] | M1 retention +8pp vs среднее | Запуск нового онбординга | Позитивное | / ⚠️ / 🔮 |
102
-
103
- ### Шаг 5 Сравнение когорт
104
- Сравнить когорты минимум по 2 срезам:
105
-
106
- | Срез | Группа A | Retention MX | Группа B | Retention MX | Δ | Значимость |
107
- |------|----------|:------------:|----------|:------------:|:-:|:----------:|
108
- | По времени | Ранние (Q1) | XX% M6 | Поздние (Q3) | XX% M6 | Xpp | Значимо / Нет |
109
- | По каналу | Organic | XX% M6 | Paid | XX% M6 | Xpp | Значимо / Нет |
110
- | По сегменту | Pro-тариф | XX% M6 | Free-тариф | XX% M6 | Xpp | Значимо / Нет |
111
-
112
- **Оценка значимости разницы:**
113
- - Размер когорт 30 и Δ ≥ 5pp → вероятно значимо.
114
- - Размер когорт < 30 или Δ < 5pp → пометить ⚠️, не делать сильных выводов.
115
- - Если есть доступ к данным: χ²-тест или z-тест для пропорций.
116
-
117
- ### Шаг 6 Revenue per Cohort
118
- 1. Построить таблицу cumulative revenue:
119
-
120
- | Когорта | Размер | M0 | M1 | M3 | M6 | M12 | ARPU (M12) | CAC | Payback |
121
- |---------|:------:|:--:|:--:|:--:|:--:|:---:|:----------:|:---:|:-------:|
122
- | [Янв] | [N] | $XX | $XX | $XX | $XX | $XX | $XX | $XX | M[X] |
123
-
124
- 2. Рассчитать ARPU по когортам (cumulative revenue / размер когорты).
125
- 3. Определить payback period: месяц, когда cumulative ARPU CAC.
126
- 4. Выявить когорты с лучшей/худшей монетизацией.
127
- 5. Рассчитать projected LTV на основе retention curve:
128
- - `LTV = ARPU × Σ(retention_rate_month_i)` для i = 0..N
129
- - Или: `LTV = ARPU / churn_rate` (при стабильном churn на плато).
130
-
131
- > Если данных о revenue нет пропустить с пометкой «Revenue per Cohort: данные не предоставлены. Рекомендуется добавить при наличии».
132
-
133
- ### Шаг 7Actionable Insights и Action Plan
134
- 1. Сформулировать 3-5 ключевых findings (каждый с данными).
135
- 2. Для каждого finding — корневая причина (гипотеза) + конкретное действие:
136
-
137
- | # | Finding | Данные | Корневая причина | Действие | Метрика | Ожидаемый эффект |
138
- |---|---------|--------|------------------|----------|---------|:----------------:|
139
- | 1 | [Что обнаружено] | [Цифры] | [Почему так] | [Что делать] | [Что мерить] | +Xpp retention |
140
-
141
- 3. Приоритизировать действия: P1 (быстрый эффект, низкие усилия) P3 (долгий эффект, высокие усилия).
142
- 4. Рекомендовать частоту пересчёта (обычно ежемесячно).
143
-
144
- ## Пример SaaS-платформа управления проектами
145
-
146
- **Контекст:** B2B SaaS, подписочная модель, 2000 новых регистраций/мес. Критерий: дата регистрации. Гранулярность: месяцы. Метрика: логин ≥ 1 раз в месяц.
147
-
148
- ### Retention Table
149
-
150
- | Когорта | Размер | M0 | M1 | M2 | M3 | M6 | M12 |
151
- |---------|:------:|:---:|:---:|:---:|:---:|:---:|:----:|
152
- | Янв | 1850 | 100% | 42% 🔴 | 31% | 26% | 20% | 16% |
153
- | Фев | 2100 | 100% | 44% 🔴 | 33% | 28% | 22% | |
154
- | Мар | 2200 | 100% | 55% 🟢 | 44% | 38% | — | — |
155
- | Апр | 1900 | 100% | 53% 🟢 | 42% | | | |
156
-
157
- **Бенчмарк B2B SaaS:** M1: 50%, M3: 35%, M6: 25%, M12: 18% *Источник: Lenny Rachitsky, 2025*
158
-
159
- ### Retention Curves
160
- - **Форма:** Flattening плато начинается с M4-M5.
161
- - **Точка стабилизации:** M5 при ~20% (когорты Янв-Фев), M5 при ~32% (когорты Мар-Апр).
162
- - **Cliff:** M0→M1 = потеря 45-58% критический переход с триала на активное использование.
163
- - **Тренд:** Улучшение — когорты Мар-Апр на +11pp лучше по M1.
164
-
165
- ### Аномалии
166
- | Когорта | Аномалия | Событие | Достоверность |
167
- |---------|----------|---------|:-------------:|
168
- | Мар 2025 | M1 +11pp vs Янв-Фев | Запуск guided onboarding (1 марта) | (A/B тест) |
169
-
170
- ### Revenue per Cohort
171
-
172
- | Когорта | ARPU (M6) | CAC | Payback | Projected LTV |
173
- |---------|:---------:|:---:|:-------:|:-------------:|
174
- | Янв | $89 | $120 | M8 | $210 |
175
- | Мар | $124 | $115 | M5 | $320 |
176
-
177
- ### Key Findings & Action Plan
178
-
179
- | # | Finding | Действие | Приоритет | Метрика | Эффект |
180
- |---|---------|----------|:---------:|---------|:------:|
181
- | 1 | M0→M1 cliff: потеря 45-58% | Расширить guided onboarding (работает с марта, +11pp) | P1 | M1 retention | +10pp |
182
- | 2 | Когорты Мар+ значительно лучше | Масштабировать A/B-победитель на все каналы | P1 | M1 retention | +5pp |
183
- | 3 | Payback Янв = M8 vs Мар = M5 | Сфокусировать marketing на каналы с высоким retention | P2 | Payback period | -2 мес |
184
-
185
- ## Валидация (Quality Gate)
186
-
187
- - [ ] Определён критерий когортирования с обоснованием
188
- - [ ] Retention table построена (или методологический фреймворк с бенчмарками)
189
- - [ ] Когорты размером < 30 помечены ⚠️, выводы по ним осторожные
190
- - [ ] Retention curves описаны с определением формы (plateau / decay / smile / cliff)
191
- - [ ] Точка стабилизации определена (или зафиксировано её отсутствие)
192
- - [ ] Аномалии привязаны к событиям с оценкой достоверности
193
- - [ ] Сравнение когорт минимум по 2 срезам с оценкой значимости
194
- - [ ] Revenue per cohort рассчитан (или помечен как «данные не предоставлены»)
195
- - [ ] Сформулированы actionable findings (минимум 3) с данными
196
- - [ ] Action plan содержит приоритизированные действия с метриками и ожидаемым эффектом
197
- - [ ] Если данные моделированные / бенчмарки это явно указано с источником и датой
198
- - [ ] Источники бенчмарков указаны; данные старше 12 мес помечены ⚠️
199
-
200
- > Если валидация не пройдена — доработать до повторного прохождения, а не передавать дальше.
201
-
202
- ## Handoff
203
- Результат `$cohort-analysis` является входом для:
204
- - **Стратег / Медиатор** retention как фундамент для стратегии роста.
205
- - **`unit-economics`** когортный LTV и payback period для точного расчёта.
206
- - **`rfm-analysis`** пересечение когортных данных с RFM-сегментами.
207
- - **`customer-journey-mapping`** точки оттока (cliff, decay) для оптимизации пути.
208
- - **`trend-analysis`** тренды в retention как индикатор рыночных изменений.
209
-
210
- Формат передачи: retention table + retention curves (форма, плато) + key findings + action plan. При передаче — использовать `$handoff`.
211
-
212
- ## Anti-patterns
213
-
214
- | Ошибка | Почему плохо | Как правильно |
215
- |--------|-------------|---------------|
216
- | Средний retention без когорт | Маскирует проблемы новых когорт (Simpson's paradox) | Всегда разбивать на когорты |
217
- | Когорты без контекста | Цифры без объяснения «почему» — бесполезны | Привязывать аномалии к событиям |
218
- | Слишком мелкие когорты | Статистическая незначимость → ложные выводы | Минимум 30 на когорту, мелкие — помечать ⚠️ |
219
- | Только Day 1 / Day 7 / Day 30 | Пропущены промежуточные паттерны, cliffs | Полная retention table с каждым периодом |
220
- | Без action plan | Анализ ради анализа, нет ценности для бизнеса | Каждый finding = конкретное приоритизированное действие |
221
- | Игнорирование revenue per cohort | Retention без привязки к деньгам не показывает бизнес-эффект | Считать revenue, ARPU, payback per cohort |
222
- | Статичный анализ | Когорты меняются, разовый анализ быстро устаревает | Ежемесячный пересчёт, сравнение с предыдущим |
223
- | Сравнение когорт без оценки значимости | Разница 2pp может быть шумом, а не сигналом | Δ ≥ 5pp + размер ≥ 30 → вероятно значимо; иначе ⚠️ |
224
- | Бенчмарки без источника | Невозможно верифицировать, могут быть нерелевантны | Источник + дата + применимость к данной бизнес-модели |
225
-
226
- ## Шаблон вывода
227
-
228
- ```
229
- ### Когортный анализ — [Продукт / Сервис]
230
-
231
- **Бизнес-модель:** [модель]
232
- **Критерий когортирования:** [критерий]
233
- **Метрика активности:** [что считаем «активным»]
234
- **Гранулярность:** [недели / месяцы]
235
- **Период наблюдения:** [N месяцев]
236
- **Тип данных:** Реальные / Фреймворк (бенчмарк: [источник])
237
- **Дата анализа:** [дата]
238
-
239
- ---
240
-
241
- #### Retention Table (Треугольник удержания)
242
-
243
- | Когорта | Размер | M0 | M1 | M2 | M3 | M6 | M12 |
244
- |---------|:------:|:---:|:---:|:---:|:---:|:---:|:----:|
245
- | [Янв] | [N] | 100% | [X]% | [X]% | [X]% | [X]% | [X]% |
246
- | [Фев] | [N] | 100% | [X]% | [X]% | [X]% | [X]% | — |
247
-
248
- Маркировка: 🟢 ≥ бенчмарка | 🟡 ±5pp | 🔴 < бенчмарка на >5pp
249
-
250
- **Бенчмарк [отрасль]:**
251
- - M1: [X]% | M3: [X]% | M6: [X]% | M12: [X]% — *Источник: [источник], [дата]*
252
-
253
- ---
254
-
255
- #### Retention Curves
256
-
257
- | Характеристика | Значение |
258
- |---------------|----------|
259
- | **Форма кривой** | [Plateau / Decay / Smile / Cliff] |
260
- | **Точка стабилизации** | Month [X] при [X]% (Δ < 1pp) |
261
- | **Критическое падение (cliff)** | M[X]→M[X]: потеря [X]pp |
262
- | **Тренд по когортам** | Улучшение / Стабильность / Ухудшение |
263
-
264
- ---
265
-
266
- #### Паттерны и аномалии
267
-
268
- | Когорта | Аномалия | Событие | Влияние | Достоверность |
269
- |---------|----------|---------|---------|:-------------:|
270
- | [когорта] | [описание + Δ] | [событие / причина] | [поз. / нег.] | ✅ / ⚠️ / 🔮 |
271
-
272
- ---
273
-
274
- #### Сравнение когорт
275
-
276
- | Срез | Группа A | Ret. MX | Группа B | Ret. MX | Δ | Значимость |
277
- |------|----------|:-------:|----------|:-------:|:-:|:----------:|
278
- | [По времени] | [когорта] | [X]% | [когорта] | [X]% | [X]pp | Да / ⚠️ |
279
- | [По каналу] | [канал] | [X]% | [канал] | [X]% | [X]pp | Да / ⚠️ |
280
-
281
- ---
282
-
283
- #### Revenue per Cohort
284
-
285
- | Когорта | Размер | Cum. Rev. M6 | Cum. Rev. M12 | ARPU (M12) | CAC | Payback | Proj. LTV |
286
- |---------|:------:|:------------:|:-------------:|:----------:|:---:|:-------:|:---------:|
287
- | [Янв] | [N] | $XX | $XX | $XX | $XX | M[X] | $XX |
288
-
289
- LTV формула: [ARPU × Σ retention / ARPU ÷ churn_rate]
290
-
291
- ---
292
-
293
- #### Key Findings
294
-
295
- | # | Finding | Данные | Корневая причина (гипотеза) | Достоверность |
296
- |---|---------|--------|----------------------------|:-------------:|
297
- | 1 | [Что обнаружено] | [Цифры, Δ, когорты] | [Почему так] | ✅ / ⚠️ / 🔮 |
298
- | 2 | [Что обнаружено] | [Цифры, Δ, когорты] | [Почему так] | ✅ / ⚠️ / 🔮 |
299
- | 3 | [Что обнаружено] | [Цифры, Δ, когорты] | [Почему так] | ✅ / ⚠️ / 🔮 |
300
-
301
- ---
302
-
303
- #### Action Plan
304
-
305
- | Приоритет | Действие | Целевая метрика | Ожидаемый эффект | Срок |
306
- |:---------:|----------|-----------------|:----------------:|------|
307
- | P1 | [действие] | [метрика] | +Xpp retention | [срок] |
308
- | P2 | [действие] | [метрика] | +Xpp retention | [срок] |
309
- | P3 | [действие] | [метрика] | +Xpp retention | [срок] |
310
-
311
- **Рекомендуемая частота пересчёта:** ежемесячно
312
-
313
- ---
314
-
315
- #### Источники и допущения
316
-
317
- | # | Факт / допущение | Источник | Дата | Достоверность |
318
- |---|-------------------|----------|------|:-------------:|
319
- | 1 | [Факт] | [Источник] | [Дата] | ✅ / ⚠️ / 🔮 |
320
-
321
- Легенда: Verified (2+ источника / A/B тест) | ⚠️ Estimated (1 источник / корреляция) | 🔮 Assumed (экспертная гипотеза)
322
- ```
1
+ ---
2
+ name: cohort-analysis
3
+ description: Анализ когорт — retention, revenue per cohort, паттерны поведения по группам
4
+ type: triggered
5
+ domain: analytics
6
+ owners:
7
+ - data_analyst
8
+ gates:
9
+ - DATA_ANALYST
10
+ tech: []
11
+ topic: []
12
+ triggers:
13
+ - "cohort-analysis"
14
+ - "когортный анализ"
15
+ - "retention analysis"
16
+ - "когорты"
17
+ related: []
18
+ budget_lines: 338
19
+ schema_version: 1
20
+ ---
21
+ # Когортный анализ Retention, revenue и паттерны поведения по группам
22
+
23
+ ## Когда использовать
24
+ - При анализе удержания клиентов — понять, как retention меняется со временем.
25
+ - При оценке эффективности измененийсравнить когорты до и после изменений.
26
+ - При прогнозировании LTV — когортные данные дают наиболее точную оценку.
27
+ - При выявлении проблем в онбординге ранний churn в новых когортах.
28
+
29
+ ## Вход
30
+
31
+ | Поле | Обязательно | Описание |
32
+ |------|:-----------:|----------|
33
+ | Продукт / сервис | | Что анализируем |
34
+ | Бизнес-модель | | SaaS / E-commerce / Marketplace / App |
35
+ | Критерий когортирования | ✅ | По дате регистрации / первой покупки / другое |
36
+ | Данные по когортам | | Реальные данные retention / revenue (если есть) |
37
+ | Период анализа | ⬚ | За какой период (по умолчанию — 12 месяцев) |
38
+ | Гранулярность | | Недели / месяцы / кварталы (по умолчанию — месяцы) |
39
+ | Размер когорт | | Количество пользователей в каждой когорте |
40
+
41
+ > Если обязательные поля не предоставлены **запросить** у пользователя, не генерировать предположения.
42
+
43
+ > Если реальных данных нет скил формирует **методологический фреймворк** с бенчмарками по отрасли, который можно применить при появлении данных. Явно пометить как «Фреймворк (без реальных данных)».
44
+
45
+ ## Источники данных
46
+ 1. **Аналитика продукта** — данные о регистрациях, активности, оплатах.
47
+ 2. **Веб-поиск** — отраслевые бенчмарки retention (Mixpanel, Amplitude, Lenny Rachitsky).
48
+ 3. **Отраслевые отчёты** — средние retention curves по вертикалям.
49
+ 4. **CRM / Payment data** данные от пользователя, если предоставлены.
50
+ 5. **Публичные данные** retention кейсы публичных компаний (S-1 filings, earnings).
51
+
52
+ > При работе с бенчмарками — указать источник, дату и степень применимости.
53
+
54
+ ### Связь с другими скилами
55
+ | Скил | Что берём | Когда вызывать |
56
+ |------|-----------|----------------|
57
+ | `web-research` | Отраслевые бенчмарки retention, публичные кейсы | Если нет реальных данных или нужны бенчмарки для сравнения |
58
+ | `competitive-analysis` | Retention-бенчмарки конкурентов (если публичны) | Для сравнения с конкурентами (шаг 5) |
59
+ | `rfm-analysis` | RFM-сегменты для перекрёстного анализа с когортами | Если нужно понять, какие сегменты внутри когорт лучше удерживаются |
60
+ | `unit-economics` | CAC для расчёта окупаемости когорты | Для шага 6 (revenue per cohort → payback period) |
61
+ | `customer-journey-mapping` | Точки оттока для объяснения retention drops | Если нужно объяснить, почему конкретная когорта теряет пользователей |
62
+
63
+ ## Протокол
64
+
65
+ ### Шаг 0 — Сбор контекста
66
+ 1. Проверить наличие обязательных данных.
67
+ 2. Определить режим: **реальные данные** или **методологический фреймворк**.
68
+ 3. Зафиксировать период и гранулярность.
69
+ 4. Определить метрику активности: что считаем «активным» (логин, транзакция, ключевое действие — «aha moment»).
70
+ 5. Зафиксировать исключения: тестовые аккаунты, боты, аномалии.
71
+
72
+ ### Шаг 1 Определение критериев когортирования
73
+
74
+ | Параметр | Значение | Обоснование |
75
+ |----------|----------|-------------|
76
+ | Основной критерий | дата регистрации / первой покупки / подписки | [Почему выбран этот] |
77
+ | Период когорты | неделя / месяц / квартал | [Обоснование гранулярности] |
78
+ | Метрика активности | [логин / транзакция / ключевое действие] | [Что отражает ценность для пользователя] |
79
+ | Период наблюдения | [6 / 12 / 24 месяца] | [Обоснование глубины] |
80
+ | Минимальный размер когорты | ≥ 30 (статзначимость) | Когорты < 30 помечать ⚠️ |
81
+
82
+ ### Шаг 2 Retention Table (Треугольник удержания)
83
+ 1. Построить таблицу retention по когортам:
84
+ - Строки: когорты (по месяцам регистрации).
85
+ - Столбцы: месяцы жизни (M0, M1, ... MN).
86
+ - Значения: процент активных пользователей от исходного размера когорты.
87
+ - M0 = 100% (по определению).
88
+ 2. Выделить ячейки цветовой маркировкой:
89
+ - 🟢 бенчмарка отрасли
90
+ - 🟡 в пределах ±5pp от бенчмарка
91
+ - 🔴 < бенчмарка на > 5pp
92
+
93
+ ### Шаг 3 Retention Curves
94
+ Визуализировать кривые удержания:
95
+ 1. Наложить кривые разных когорт для сравнения.
96
+ 2. Определить характерную форму:
97
+
98
+ | Форма | Описание | Интерпретация |
99
+ |-------|----------|---------------|
100
+ | **Flattening (плато)** | Снижение → выход на плато | Здоровый продукт, ядро лояльных пользователей |
101
+ | **Continuous decay** | Постоянное снижение без плато | Проблема с value proposition или product-market fit |
102
+ | **Smile curve** | Снижение → рост | Реактивация работает, но есть проблема с ранним удержанием |
103
+ | **Cliff** | Резкое падение на конкретном месяце | Проблема в конкретной точке (конец триала, первый платёж) |
104
+
105
+ 3. Определить точку стабилизации: месяц, на котором retention выходит на плато (Δ < 1pp между периодами).
106
+
107
+ ### Шаг 4 — Паттерны и аномалии
108
+ 1. Проанализировать когорты на паттерны:
109
+ - **Plateau (плато):** на каком месяце retention стабилизируется.
110
+ - **Decay (затухание):** какие когорты теряют пользователей быстрее.
111
+ - **Revival (возврат):** есть ли сезонные или триггерные возвраты.
112
+ - **Улучшение/ухудшение:** новые когорты лучше или хуже старых.
113
+ 2. Привязать аномалии к событиям:
114
+
115
+ | Когорта | Аномалия | Событие | Влияние | Достоверность |
116
+ |---------|----------|---------|---------|:-------------:|
117
+ | [Мар 2025] | M1 retention +8pp vs среднее | Запуск нового онбординга | Позитивное | ✅ / ⚠️ / 🔮 |
118
+
119
+ ### Шаг 5 — Сравнение когорт
120
+ Сравнить когорты минимум по 2 срезам:
121
+
122
+ | Срез | Группа A | Retention MX | Группа B | Retention MX | Δ | Значимость |
123
+ |------|----------|:------------:|----------|:------------:|:-:|:----------:|
124
+ | По времени | Ранние (Q1) | XX% M6 | Поздние (Q3) | XX% M6 | Xpp | Значимо / Нет |
125
+ | По каналу | Organic | XX% M6 | Paid | XX% M6 | Xpp | Значимо / Нет |
126
+ | По сегменту | Pro-тариф | XX% M6 | Free-тариф | XX% M6 | Xpp | Значимо / Нет |
127
+
128
+ **Оценка значимости разницы:**
129
+ - Размер когорт 30 и Δ 5pp вероятно значимо.
130
+ - Размер когорт < 30 или Δ < 5pp → пометить ⚠️, не делать сильных выводов.
131
+ - Если есть доступ к данным: χ²-тест или z-тест для пропорций.
132
+
133
+ ### Шаг 6Revenue per Cohort
134
+ 1. Построить таблицу cumulative revenue:
135
+
136
+ | Когорта | Размер | M0 | M1 | M3 | M6 | M12 | ARPU (M12) | CAC | Payback |
137
+ |---------|:------:|:--:|:--:|:--:|:--:|:---:|:----------:|:---:|:-------:|
138
+ | [Янв] | [N] | $XX | $XX | $XX | $XX | $XX | $XX | $XX | M[X] |
139
+
140
+ 2. Рассчитать ARPU по когортам (cumulative revenue / размер когорты).
141
+ 3. Определить payback period: месяц, когда cumulative ARPU CAC.
142
+ 4. Выявить когорты с лучшей/худшей монетизацией.
143
+ 5. Рассчитать projected LTV на основе retention curve:
144
+ - `LTV = ARPU × Σ(retention_rate_month_i)` для i = 0..N
145
+ - Или: `LTV = ARPU / churn_rate` (при стабильном churn на плато).
146
+
147
+ > Если данных о revenue нет — пропустить с пометкой «Revenue per Cohort: данные не предоставлены. Рекомендуется добавить при наличии».
148
+
149
+ ### Шаг 7 — Actionable Insights и Action Plan
150
+ 1. Сформулировать 3-5 ключевых findings (каждый с данными).
151
+ 2. Для каждого finding — корневая причина (гипотеза) + конкретное действие:
152
+
153
+ | # | Finding | Данные | Корневая причина | Действие | Метрика | Ожидаемый эффект |
154
+ |---|---------|--------|------------------|----------|---------|:----------------:|
155
+ | 1 | [Что обнаружено] | [Цифры] | [Почему так] | [Что делать] | [Что мерить] | +Xpp retention |
156
+
157
+ 3. Приоритизировать действия: P1 (быстрый эффект, низкие усилия) P3 (долгий эффект, высокие усилия).
158
+ 4. Рекомендовать частоту пересчёта (обычно ежемесячно).
159
+
160
+ ## ПримерSaaS-платформа управления проектами
161
+
162
+ **Контекст:** B2B SaaS, подписочная модель, 2000 новых регистраций/мес. Критерий: дата регистрации. Гранулярность: месяцы. Метрика: логин ≥ 1 раз в месяц.
163
+
164
+ ### Retention Table
165
+
166
+ | Когорта | Размер | M0 | M1 | M2 | M3 | M6 | M12 |
167
+ |---------|:------:|:---:|:---:|:---:|:---:|:---:|:----:|
168
+ | Янв | 1850 | 100% | 42% 🔴 | 31% | 26% | 20% | 16% |
169
+ | Фев | 2100 | 100% | 44% 🔴 | 33% | 28% | 22% | — |
170
+ | Мар | 2200 | 100% | 55% 🟢 | 44% | 38% | — | — |
171
+ | Апр | 1900 | 100% | 53% 🟢 | 42% | — | — | — |
172
+
173
+ **Бенчмарк B2B SaaS:** M1: 50%, M3: 35%, M6: 25%, M12: 18% — *Источник: Lenny Rachitsky, 2025*
174
+
175
+ ### Retention Curves
176
+ - **Форма:** Flattening — плато начинается с M4-M5.
177
+ - **Точка стабилизации:** M5 при ~20% (когорты Янв-Фев), M5 при ~32% (когорты Мар-Апр).
178
+ - **Cliff:** M0→M1 = потеря 45-58% — критический переход с триала на активное использование.
179
+ - **Тренд:** Улучшение когорты Мар-Апр на +11pp лучше по M1.
180
+
181
+ ### Аномалии
182
+ | Когорта | Аномалия | Событие | Достоверность |
183
+ |---------|----------|---------|:-------------:|
184
+ | Мар 2025 | M1 +11pp vs Янв-Фев | Запуск guided onboarding (1 марта) | ✅ (A/B тест) |
185
+
186
+ ### Revenue per Cohort
187
+
188
+ | Когорта | ARPU (M6) | CAC | Payback | Projected LTV |
189
+ |---------|:---------:|:---:|:-------:|:-------------:|
190
+ | Янв | $89 | $120 | M8 | $210 |
191
+ | Мар | $124 | $115 | M5 | $320 |
192
+
193
+ ### Key Findings & Action Plan
194
+
195
+ | # | Finding | Действие | Приоритет | Метрика | Эффект |
196
+ |---|---------|----------|:---------:|---------|:------:|
197
+ | 1 | M0→M1 cliff: потеря 45-58% | Расширить guided onboarding (работает с марта, +11pp) | P1 | M1 retention | +10pp |
198
+ | 2 | Когорты Мар+ значительно лучше | Масштабировать A/B-победитель на все каналы | P1 | M1 retention | +5pp |
199
+ | 3 | Payback Янв = M8 vs Мар = M5 | Сфокусировать marketing на каналы с высоким retention | P2 | Payback period | -2 мес |
200
+
201
+ ## Валидация (Quality Gate)
202
+
203
+ - [ ] Определён критерий когортирования с обоснованием
204
+ - [ ] Retention table построена (или методологический фреймворк с бенчмарками)
205
+ - [ ] Когорты размером < 30 помечены ⚠️, выводы по ним осторожные
206
+ - [ ] Retention curves описаны с определением формы (plateau / decay / smile / cliff)
207
+ - [ ] Точка стабилизации определена (или зафиксировано её отсутствие)
208
+ - [ ] Аномалии привязаны к событиям с оценкой достоверности
209
+ - [ ] Сравнение когорт минимум по 2 срезам с оценкой значимости
210
+ - [ ] Revenue per cohort рассчитан (или помечен как «данные не предоставлены»)
211
+ - [ ] Сформулированы actionable findings (минимум 3) с данными
212
+ - [ ] Action plan содержит приоритизированные действия с метриками и ожидаемым эффектом
213
+ - [ ] Если данные моделированные / бенчмарки — это явно указано с источником и датой
214
+ - [ ] Источники бенчмарков указаны; данные старше 12 мес помечены ⚠️
215
+
216
+ > Если валидация не пройдена доработать до повторного прохождения, а не передавать дальше.
217
+
218
+ ## Handoff
219
+ Результат `$cohort-analysis` является входом для:
220
+ - **Стратег / Медиатор** retention как фундамент для стратегии роста.
221
+ - **`unit-economics`** когортный LTV и payback period для точного расчёта.
222
+ - **`rfm-analysis`** пересечение когортных данных с RFM-сегментами.
223
+ - **`customer-journey-mapping`** точки оттока (cliff, decay) для оптимизации пути.
224
+ - **`trend-analysis`** тренды в retention как индикатор рыночных изменений.
225
+
226
+ Формат передачи: retention table + retention curves (форма, плато) + key findings + action plan. При передаче — использовать `$handoff`.
227
+
228
+ ## Anti-patterns
229
+
230
+ | Ошибка | Почему плохо | Как правильно |
231
+ |--------|-------------|---------------|
232
+ | Средний retention без когорт | Маскирует проблемы новых когорт (Simpson's paradox) | Всегда разбивать на когорты |
233
+ | Когорты без контекста | Цифры без объяснения «почему» — бесполезны | Привязывать аномалии к событиям |
234
+ | Слишком мелкие когорты | Статистическая незначимость → ложные выводы | Минимум 30 на когорту, мелкие — помечать ⚠️ |
235
+ | Только Day 1 / Day 7 / Day 30 | Пропущены промежуточные паттерны, cliffs | Полная retention table с каждым периодом |
236
+ | Без action plan | Анализ ради анализа, нет ценности для бизнеса | Каждый finding = конкретное приоритизированное действие |
237
+ | Игнорирование revenue per cohort | Retention без привязки к деньгам не показывает бизнес-эффект | Считать revenue, ARPU, payback per cohort |
238
+ | Статичный анализ | Когорты меняются, разовый анализ быстро устаревает | Ежемесячный пересчёт, сравнение с предыдущим |
239
+ | Сравнение когорт без оценки значимости | Разница 2pp может быть шумом, а не сигналом | Δ ≥ 5pp + размер ≥ 30 → вероятно значимо; иначе ⚠️ |
240
+ | Бенчмарки без источника | Невозможно верифицировать, могут быть нерелевантны | Источник + дата + применимость к данной бизнес-модели |
241
+
242
+ ## Шаблон вывода
243
+
244
+ ```
245
+ ### Когортный анализ [Продукт / Сервис]
246
+
247
+ **Бизнес-модель:** [модель]
248
+ **Критерий когортирования:** [критерий]
249
+ **Метрика активности:** [что считаем «активным»]
250
+ **Гранулярность:** [недели / месяцы]
251
+ **Период наблюдения:** [N месяцев]
252
+ **Тип данных:** Реальные / Фреймворк (бенчмарк: [источник])
253
+ **Дата анализа:** [дата]
254
+
255
+ ---
256
+
257
+ #### Retention Table (Треугольник удержания)
258
+
259
+ | Когорта | Размер | M0 | M1 | M2 | M3 | M6 | M12 |
260
+ |---------|:------:|:---:|:---:|:---:|:---:|:---:|:----:|
261
+ | [Янв] | [N] | 100% | [X]% | [X]% | [X]% | [X]% | [X]% |
262
+ | [Фев] | [N] | 100% | [X]% | [X]% | [X]% | [X]% | — |
263
+
264
+ Маркировка: 🟢 ≥ бенчмарка | 🟡 ±5pp | 🔴 < бенчмарка на >5pp
265
+
266
+ **Бенчмарк [отрасль]:**
267
+ - M1: [X]% | M3: [X]% | M6: [X]% | M12: [X]% — *Источник: [источник], [дата]*
268
+
269
+ ---
270
+
271
+ #### Retention Curves
272
+
273
+ | Характеристика | Значение |
274
+ |---------------|----------|
275
+ | **Форма кривой** | [Plateau / Decay / Smile / Cliff] |
276
+ | **Точка стабилизации** | Month [X] при [X]% (Δ < 1pp) |
277
+ | **Критическое падение (cliff)** | M[X]→M[X]: потеря [X]pp |
278
+ | **Тренд по когортам** | Улучшение / Стабильность / Ухудшение |
279
+
280
+ ---
281
+
282
+ #### Паттерны и аномалии
283
+
284
+ | Когорта | Аномалия | Событие | Влияние | Достоверность |
285
+ |---------|----------|---------|---------|:-------------:|
286
+ | [когорта] | [описание + Δ] | [событие / причина] | [поз. / нег.] | ✅ / ⚠️ / 🔮 |
287
+
288
+ ---
289
+
290
+ #### Сравнение когорт
291
+
292
+ | Срез | Группа A | Ret. MX | Группа B | Ret. MX | Δ | Значимость |
293
+ |------|----------|:-------:|----------|:-------:|:-:|:----------:|
294
+ | [По времени] | [когорта] | [X]% | [когорта] | [X]% | [X]pp | Да / ⚠️ |
295
+ | [По каналу] | [канал] | [X]% | [канал] | [X]% | [X]pp | Да / ⚠️ |
296
+
297
+ ---
298
+
299
+ #### Revenue per Cohort
300
+
301
+ | Когорта | Размер | Cum. Rev. M6 | Cum. Rev. M12 | ARPU (M12) | CAC | Payback | Proj. LTV |
302
+ |---------|:------:|:------------:|:-------------:|:----------:|:---:|:-------:|:---------:|
303
+ | [Янв] | [N] | $XX | $XX | $XX | $XX | M[X] | $XX |
304
+
305
+ LTV формула: [ARPU × Σ retention / ARPU ÷ churn_rate]
306
+
307
+ ---
308
+
309
+ #### Key Findings
310
+
311
+ | # | Finding | Данные | Корневая причина (гипотеза) | Достоверность |
312
+ |---|---------|--------|----------------------------|:-------------:|
313
+ | 1 | [Что обнаружено] | [Цифры, Δ, когорты] | [Почему так] | ✅ / ⚠️ / 🔮 |
314
+ | 2 | [Что обнаружено] | [Цифры, Δ, когорты] | [Почему так] | ✅ / ⚠️ / 🔮 |
315
+ | 3 | [Что обнаружено] | [Цифры, Δ, когорты] | [Почему так] | ✅ / ⚠️ / 🔮 |
316
+
317
+ ---
318
+
319
+ #### Action Plan
320
+
321
+ | Приоритет | Действие | Целевая метрика | Ожидаемый эффект | Срок |
322
+ |:---------:|----------|-----------------|:----------------:|------|
323
+ | P1 | [действие] | [метрика] | +Xpp retention | [срок] |
324
+ | P2 | [действие] | [метрика] | +Xpp retention | [срок] |
325
+ | P3 | [действие] | [метрика] | +Xpp retention | [срок] |
326
+
327
+ **Рекомендуемая частота пересчёта:** ежемесячно
328
+
329
+ ---
330
+
331
+ #### Источники и допущения
332
+
333
+ | # | Факт / допущение | Источник | Дата | Достоверность |
334
+ |---|-------------------|----------|------|:-------------:|
335
+ | 1 | [Факт] | [Источник] | [Дата] | ✅ / ⚠️ / 🔮 |
336
+
337
+ Легенда: ✅ Verified (2+ источника / A/B тест) | ⚠️ Estimated (1 источник / корреляция) | 🔮 Assumed (экспертная гипотеза)
338
+ ```