@su-record/vibe 2.8.52 → 2.9.1

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 (426) hide show
  1. package/.env.example +37 -37
  2. package/CLAUDE.md +169 -169
  3. package/LICENSE +21 -21
  4. package/README.ko.md +43 -128
  5. package/README.md +43 -128
  6. package/agents/architect-low.md +41 -41
  7. package/agents/architect-medium.md +59 -59
  8. package/agents/architect.md +80 -80
  9. package/agents/build-error-resolver.md +115 -115
  10. package/agents/compounder.md +261 -261
  11. package/agents/diagrammer.md +178 -178
  12. package/agents/docs/api-documenter.md +99 -99
  13. package/agents/docs/changelog-writer.md +93 -93
  14. package/agents/e2e-tester.md +294 -294
  15. package/agents/event/event-comms.md +78 -78
  16. package/agents/event/event-content.md +68 -68
  17. package/agents/event/event-image.md +95 -95
  18. package/agents/event/event-ops.md +84 -84
  19. package/agents/event/event-scheduler.md +69 -69
  20. package/agents/event/event-speaker.md +86 -86
  21. package/agents/explorer-low.md +42 -42
  22. package/agents/explorer-medium.md +59 -59
  23. package/agents/explorer.md +48 -48
  24. package/agents/implementer-low.md +43 -43
  25. package/agents/implementer-medium.md +52 -52
  26. package/agents/implementer.md +54 -54
  27. package/agents/junior-mentor.md +141 -141
  28. package/agents/planning/requirements-analyst.md +84 -84
  29. package/agents/planning/ux-advisor.md +83 -83
  30. package/agents/qa/acceptance-tester.md +86 -86
  31. package/agents/qa/edge-case-finder.md +93 -93
  32. package/agents/qa/qa-coordinator.md +131 -131
  33. package/agents/refactor-cleaner.md +143 -143
  34. package/agents/research/best-practices-agent.md +199 -199
  35. package/agents/research/codebase-patterns-agent.md +157 -157
  36. package/agents/research/framework-docs-agent.md +188 -188
  37. package/agents/research/security-advisory-agent.md +213 -213
  38. package/agents/review/architecture-reviewer.md +107 -107
  39. package/agents/review/complexity-reviewer.md +116 -116
  40. package/agents/review/data-integrity-reviewer.md +88 -88
  41. package/agents/review/git-history-reviewer.md +103 -103
  42. package/agents/review/performance-reviewer.md +86 -86
  43. package/agents/review/python-reviewer.md +150 -150
  44. package/agents/review/rails-reviewer.md +139 -139
  45. package/agents/review/react-reviewer.md +144 -144
  46. package/agents/review/security-reviewer.md +80 -80
  47. package/agents/review/simplicity-reviewer.md +140 -140
  48. package/agents/review/test-coverage-reviewer.md +116 -116
  49. package/agents/review/typescript-reviewer.md +127 -127
  50. package/agents/searcher.md +54 -54
  51. package/agents/simplifier.md +120 -120
  52. package/agents/tester.md +49 -49
  53. package/agents/ui/ui-a11y-auditor.md +93 -93
  54. package/agents/ui/ui-antipattern-detector.md +102 -102
  55. package/agents/ui/ui-dataviz-advisor.md +69 -69
  56. package/agents/ui/ui-design-system-gen.md +57 -57
  57. package/agents/ui/ui-industry-analyzer.md +49 -49
  58. package/agents/ui/ui-layout-architect.md +65 -65
  59. package/agents/ui/ui-stack-implementer.md +68 -68
  60. package/agents/ui/ux-compliance-reviewer.md +81 -81
  61. package/agents/ui-previewer.md +258 -258
  62. package/commands/vibe.analyze.md +379 -379
  63. package/commands/vibe.docs.md +32 -32
  64. package/commands/vibe.event.md +163 -163
  65. package/commands/vibe.figma.md +69 -69
  66. package/commands/vibe.review.md +686 -686
  67. package/commands/vibe.run.md +2276 -2276
  68. package/commands/vibe.spec.md +1195 -1195
  69. package/commands/vibe.spec.review.md +609 -609
  70. package/commands/vibe.trace.md +259 -259
  71. package/commands/vibe.utils.md +413 -413
  72. package/commands/vibe.verify.md +510 -510
  73. package/dist/cli/collaborator.js +52 -52
  74. package/dist/cli/commands/config.js +9 -9
  75. package/dist/cli/commands/evolution.js +12 -12
  76. package/dist/cli/commands/figma.js +20 -20
  77. package/dist/cli/commands/info.js +53 -53
  78. package/dist/cli/commands/init.js +5 -5
  79. package/dist/cli/commands/remove.js +14 -14
  80. package/dist/cli/commands/sentinel.js +27 -27
  81. package/dist/cli/commands/skills.js +5 -5
  82. package/dist/cli/commands/slack.js +10 -10
  83. package/dist/cli/commands/stats.js +6 -6
  84. package/dist/cli/commands/telegram.js +12 -12
  85. package/dist/cli/detect.js +32 -32
  86. package/dist/cli/index.js +51 -51
  87. package/dist/cli/llm/claude-commands.js +16 -16
  88. package/dist/cli/llm/config.js +18 -18
  89. package/dist/cli/llm/gemini-commands.js +16 -16
  90. package/dist/cli/llm/gpt-commands.js +19 -19
  91. package/dist/cli/llm/help.js +21 -21
  92. package/dist/cli/postinstall/cursor-agents.js +32 -32
  93. package/dist/cli/postinstall/cursor-rules.js +83 -83
  94. package/dist/cli/postinstall/cursor-skills.js +743 -743
  95. package/dist/cli/postinstall/main.d.ts.map +1 -1
  96. package/dist/cli/postinstall/main.js +40 -66
  97. package/dist/cli/postinstall/main.js.map +1 -1
  98. package/dist/cli/setup/Provisioner.js +42 -42
  99. package/dist/infra/lib/CostAccumulator.d.ts +58 -0
  100. package/dist/infra/lib/CostAccumulator.d.ts.map +1 -0
  101. package/dist/infra/lib/CostAccumulator.js +131 -0
  102. package/dist/infra/lib/CostAccumulator.js.map +1 -0
  103. package/dist/infra/lib/DeepInit.js +24 -24
  104. package/dist/infra/lib/IterationTracker.js +11 -11
  105. package/dist/infra/lib/PythonParser.js +108 -108
  106. package/dist/infra/lib/ReviewRace.js +96 -96
  107. package/dist/infra/lib/SkillFrontmatter.js +28 -28
  108. package/dist/infra/lib/SkillQualityGate.js +9 -9
  109. package/dist/infra/lib/SkillRepository.js +159 -159
  110. package/dist/infra/lib/TokenBudgetTracker.d.ts +13 -0
  111. package/dist/infra/lib/TokenBudgetTracker.d.ts.map +1 -1
  112. package/dist/infra/lib/TokenBudgetTracker.js +44 -3
  113. package/dist/infra/lib/TokenBudgetTracker.js.map +1 -1
  114. package/dist/infra/lib/UltraQA.js +99 -99
  115. package/dist/infra/lib/autonomy/AuditStore.js +41 -41
  116. package/dist/infra/lib/autonomy/ConfirmationStore.js +30 -30
  117. package/dist/infra/lib/autonomy/EventOutbox.js +38 -38
  118. package/dist/infra/lib/autonomy/PolicyEngine.d.ts +3 -3
  119. package/dist/infra/lib/autonomy/PolicyEngine.js +18 -18
  120. package/dist/infra/lib/autonomy/SecuritySentinel.js +1 -1
  121. package/dist/infra/lib/autonomy/SuggestionStore.js +33 -33
  122. package/dist/infra/lib/embedding/VectorStore.js +22 -22
  123. package/dist/infra/lib/evolution/AgentAnalyzer.js +10 -10
  124. package/dist/infra/lib/evolution/DescriptionOptimizer.js +21 -21
  125. package/dist/infra/lib/evolution/GenerationRegistry.js +36 -36
  126. package/dist/infra/lib/evolution/InsightStore.js +90 -90
  127. package/dist/infra/lib/evolution/ParityTester.js +57 -57
  128. package/dist/infra/lib/evolution/RollbackManager.js +5 -5
  129. package/dist/infra/lib/evolution/SkillBenchmark.js +23 -23
  130. package/dist/infra/lib/evolution/SkillEvalRunner.js +50 -50
  131. package/dist/infra/lib/evolution/SkillGapDetector.js +10 -10
  132. package/dist/infra/lib/evolution/UsageTracker.js +28 -28
  133. package/dist/infra/lib/gemini/orchestration.js +5 -5
  134. package/dist/infra/lib/gpt/orchestration.js +4 -4
  135. package/dist/infra/lib/memory/KnowledgeGraph.js +4 -4
  136. package/dist/infra/lib/memory/MemorySearch.js +57 -57
  137. package/dist/infra/lib/memory/MemoryStorage.js +181 -181
  138. package/dist/infra/lib/memory/ObservationStore.js +28 -28
  139. package/dist/infra/lib/memory/ReflectionStore.js +30 -30
  140. package/dist/infra/lib/memory/SessionRAGRetriever.js +7 -7
  141. package/dist/infra/lib/memory/SessionRAGStore.js +225 -225
  142. package/dist/infra/lib/memory/SessionSummarizer.js +9 -9
  143. package/dist/infra/orchestrator/AgentManager.js +12 -12
  144. package/dist/infra/orchestrator/AgentRegistry.js +65 -65
  145. package/dist/infra/orchestrator/MultiLlmResearch.js +8 -8
  146. package/dist/infra/orchestrator/SwarmOrchestrator.test.js +16 -16
  147. package/dist/infra/orchestrator/parallelResearch.js +24 -24
  148. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  149. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  150. package/dist/tools/memory/createMemoryTimeline.js +10 -10
  151. package/dist/tools/memory/getMemoryGraph.js +12 -12
  152. package/dist/tools/memory/getSessionContext.js +9 -9
  153. package/dist/tools/memory/linkMemories.js +14 -14
  154. package/dist/tools/memory/listMemories.js +4 -4
  155. package/dist/tools/memory/recallMemory.js +4 -4
  156. package/dist/tools/memory/saveMemory.js +4 -4
  157. package/dist/tools/memory/searchMemoriesAdvanced.js +23 -23
  158. package/dist/tools/semantic/analyzeDependencyGraph.js +12 -12
  159. package/dist/tools/semantic/astGrep.test.js +6 -6
  160. package/dist/tools/spec/prdParser.test.js +171 -171
  161. package/dist/tools/spec/specGenerator.js +169 -169
  162. package/dist/tools/spec/traceabilityMatrix.js +64 -64
  163. package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
  164. package/hooks/gemini-hooks.json +73 -73
  165. package/hooks/hooks.json +174 -174
  166. package/hooks/scripts/__tests__/keyword-detector.test.js +199 -199
  167. package/hooks/scripts/__tests__/pre-tool-guard.test.js +286 -286
  168. package/hooks/scripts/__tests__/sentinel-guard.test.js +210 -210
  169. package/hooks/scripts/auto-commit.js +97 -97
  170. package/hooks/scripts/auto-format.js +64 -64
  171. package/hooks/scripts/auto-test.js +81 -81
  172. package/hooks/scripts/code-check.js +268 -268
  173. package/hooks/scripts/codex-detect.js +46 -46
  174. package/hooks/scripts/codex-review-gate.js +80 -80
  175. package/hooks/scripts/command-log.js +32 -32
  176. package/hooks/scripts/context-save.js +353 -353
  177. package/hooks/scripts/evolution-engine.js +91 -91
  178. package/hooks/scripts/figma-extract.js +635 -477
  179. package/hooks/scripts/hud-status.js +321 -321
  180. package/hooks/scripts/keyword-detector.js +214 -214
  181. package/hooks/scripts/llm-orchestrate.js +572 -572
  182. package/hooks/scripts/post-edit.js +32 -32
  183. package/hooks/scripts/pr-test-gate.js +52 -52
  184. package/hooks/scripts/pre-tool-guard.js +214 -159
  185. package/hooks/scripts/prompt-dispatcher.js +185 -185
  186. package/hooks/scripts/sentinel-guard.js +131 -131
  187. package/hooks/scripts/session-start.js +177 -177
  188. package/hooks/scripts/skill-injector.js +83 -83
  189. package/hooks/scripts/stop-notify.js +209 -209
  190. package/hooks/scripts/utils.js +243 -243
  191. package/languages/csharp-unity.md +515 -515
  192. package/languages/gdscript-godot.md +470 -470
  193. package/languages/ruby-rails.md +489 -489
  194. package/languages/typescript-angular.md +433 -433
  195. package/languages/typescript-astro.md +416 -416
  196. package/languages/typescript-electron.md +406 -406
  197. package/languages/typescript-nestjs.md +524 -524
  198. package/languages/typescript-svelte.md +407 -407
  199. package/languages/typescript-tauri.md +365 -365
  200. package/package.json +101 -101
  201. package/skills/agents-md/SKILL.md +121 -121
  202. package/skills/agents-md/rubrics/what-to-keep.md +49 -49
  203. package/skills/agents-md/templates/agents-md.md +36 -36
  204. package/skills/arch-guard/SKILL.md +181 -181
  205. package/skills/arch-guard/agents/detector.md +48 -48
  206. package/skills/arch-guard/agents/reporter.md +48 -48
  207. package/skills/arch-guard/agents/rule-generator.md +49 -49
  208. package/skills/arch-guard/agents/violation-checker.md +51 -51
  209. package/skills/arch-guard/frameworks/clean-architecture.md +108 -108
  210. package/skills/arch-guard/frameworks/solid.md +102 -102
  211. package/skills/arch-guard/scripts/check-boundaries.js +90 -90
  212. package/skills/arch-guard/templates/arch-rules.json +47 -47
  213. package/skills/arch-guard/templates/violation-report.md +53 -53
  214. package/skills/brand-assets/SKILL.md +147 -147
  215. package/skills/brand-assets/rubrics/asset-checklist.md +98 -98
  216. package/skills/brand-assets/templates/brand-guide.md +161 -161
  217. package/skills/capability-loop/SKILL.md +168 -168
  218. package/skills/capability-loop/agents/capability-designer.md +61 -61
  219. package/skills/capability-loop/agents/failure-analyst.md +55 -55
  220. package/skills/capability-loop/agents/implementer.md +50 -50
  221. package/skills/capability-loop/agents/tester.md +53 -53
  222. package/skills/capability-loop/templates/capability-spec.md +118 -118
  223. package/skills/capability-loop/templates/failure-analysis.md +118 -118
  224. package/skills/characterization-test/SKILL.md +207 -207
  225. package/skills/characterization-test/agents/behavior-capturer.md +50 -50
  226. package/skills/characterization-test/agents/coverage-checker.md +54 -54
  227. package/skills/characterization-test/agents/reporter.md +50 -50
  228. package/skills/characterization-test/agents/test-writer.md +49 -49
  229. package/skills/characterization-test/rubrics/coverage-criteria.md +53 -53
  230. package/skills/characterization-test/templates/test-template.ts +101 -101
  231. package/skills/chub-usage/SKILL.md +139 -139
  232. package/skills/claude-md-guide/SKILL.md +351 -351
  233. package/skills/claude-md-guide/rubrics/anti-patterns.md +88 -88
  234. package/skills/claude-md-guide/templates/claude-md.md +54 -54
  235. package/skills/commerce-patterns/SKILL.md +64 -64
  236. package/skills/commerce-patterns/rubrics/checkout-flow.md +48 -48
  237. package/skills/commerce-patterns/templates/product-schema.md +85 -85
  238. package/skills/commit-push-pr/SKILL.md +77 -77
  239. package/skills/commit-push-pr/agents/change-analyzer.md +55 -55
  240. package/skills/commit-push-pr/agents/message-writer.md +50 -50
  241. package/skills/commit-push-pr/agents/pr-writer.md +58 -58
  242. package/skills/commit-push-pr/agents/reviewer.md +52 -52
  243. package/skills/commit-push-pr/rubrics/commit-message.md +73 -73
  244. package/skills/commit-push-pr/templates/pr-body.md +63 -63
  245. package/skills/context7-usage/SKILL.md +106 -106
  246. package/skills/context7-usage/rubrics/when-to-use.md +50 -50
  247. package/skills/create-prd/SKILL.md +90 -90
  248. package/skills/create-prd/agents/edge-case-finder.md +48 -48
  249. package/skills/create-prd/agents/prioritizer.md +60 -60
  250. package/skills/create-prd/agents/requirements-writer.md +48 -48
  251. package/skills/create-prd/agents/researcher.md +55 -55
  252. package/skills/create-prd/agents/reviewer.md +54 -54
  253. package/skills/create-prd/frameworks/jobs-to-be-done.md +96 -96
  254. package/skills/create-prd/frameworks/rice-scoring.md +97 -97
  255. package/skills/create-prd/orchestrator.md +70 -70
  256. package/skills/create-prd/rubrics/completeness.md +58 -58
  257. package/skills/create-prd/templates/prd.md +139 -139
  258. package/skills/design-audit/SKILL.md +152 -152
  259. package/skills/design-audit/agents/a11y-auditor.md +43 -43
  260. package/skills/design-audit/agents/performance-auditor.md +46 -46
  261. package/skills/design-audit/agents/responsive-auditor.md +46 -46
  262. package/skills/design-audit/agents/scorer.md +47 -47
  263. package/skills/design-audit/agents/slop-detector.md +47 -47
  264. package/skills/design-audit/frameworks/core-web-vitals.md +107 -107
  265. package/skills/design-audit/frameworks/wcag-checklist.md +64 -64
  266. package/skills/design-audit/orchestrator.md +64 -64
  267. package/skills/design-audit/rubrics/ai-slop-patterns.md +83 -83
  268. package/skills/design-audit/rubrics/scoring.md +63 -63
  269. package/skills/design-audit/templates/report.md +88 -88
  270. package/skills/design-critique/SKILL.md +139 -139
  271. package/skills/design-critique/rubrics/ux-heuristics.md +143 -143
  272. package/skills/design-critique/templates/critique-report.md +86 -86
  273. package/skills/design-distill/SKILL.md +130 -130
  274. package/skills/design-distill/templates/design-system.md +132 -132
  275. package/skills/design-normalize/SKILL.md +133 -133
  276. package/skills/design-normalize/rubrics/token-naming.md +117 -117
  277. package/skills/design-normalize/templates/token-audit.md +89 -89
  278. package/skills/design-polish/SKILL.md +131 -131
  279. package/skills/design-polish/rubrics/polish-checklist.md +68 -68
  280. package/skills/design-polish/templates/polish-report.md +64 -64
  281. package/skills/design-teach/SKILL.md +182 -182
  282. package/skills/design-teach/rubrics/brand-personality.md +73 -73
  283. package/skills/design-teach/templates/design-context.json +36 -36
  284. package/skills/e2e-commerce/SKILL.md +62 -62
  285. package/skills/e2e-commerce/templates/test-scenarios.md +170 -170
  286. package/skills/event-comms/SKILL.md +162 -162
  287. package/skills/event-comms/templates/email-invite.md +99 -99
  288. package/skills/event-comms/templates/sns-post.md +133 -133
  289. package/skills/event-ops/SKILL.md +198 -198
  290. package/skills/event-ops/rubrics/contingency.md +85 -85
  291. package/skills/event-ops/templates/d-day-checklist.md +65 -65
  292. package/skills/event-planning/SKILL.md +132 -132
  293. package/skills/event-planning/rubrics/timeline.md +70 -70
  294. package/skills/event-planning/templates/event-plan.md +91 -91
  295. package/skills/exec-plan/SKILL.md +149 -149
  296. package/skills/exec-plan/agents/decomposer.md +47 -47
  297. package/skills/exec-plan/agents/dependency-mapper.md +44 -44
  298. package/skills/exec-plan/agents/estimator.md +43 -43
  299. package/skills/exec-plan/agents/validator.md +55 -55
  300. package/skills/exec-plan/orchestrator.md +70 -70
  301. package/skills/exec-plan/rubrics/complexity-scoring.md +75 -75
  302. package/skills/exec-plan/templates/plan.md +147 -147
  303. package/skills/git-worktree/SKILL.md +73 -73
  304. package/skills/git-worktree/rubrics/when-to-use.md +55 -55
  305. package/skills/handoff/SKILL.md +110 -110
  306. package/skills/handoff/agents/context-summarizer.md +51 -51
  307. package/skills/handoff/agents/document-writer.md +63 -63
  308. package/skills/handoff/agents/state-collector.md +53 -53
  309. package/skills/handoff/agents/verifier.md +48 -48
  310. package/skills/handoff/rubrics/completeness.md +62 -62
  311. package/skills/handoff/templates/handoff.md +107 -107
  312. package/skills/parallel-research/SKILL.md +89 -89
  313. package/skills/parallel-research/agents/best-practices.md +43 -43
  314. package/skills/parallel-research/agents/codebase-patterns.md +46 -46
  315. package/skills/parallel-research/agents/framework-docs.md +45 -45
  316. package/skills/parallel-research/agents/security-advisory.md +46 -46
  317. package/skills/parallel-research/agents/synthesizer.md +52 -52
  318. package/skills/parallel-research/experts/best-practices.md +50 -50
  319. package/skills/parallel-research/experts/codebase-patterns.md +70 -70
  320. package/skills/parallel-research/experts/framework-docs.md +65 -65
  321. package/skills/parallel-research/experts/security-advisory.md +69 -69
  322. package/skills/parallel-research/orchestrator.md +65 -65
  323. package/skills/parallel-research/templates/synthesis.md +101 -101
  324. package/skills/prioritization-frameworks/SKILL.md +87 -87
  325. package/skills/prioritization-frameworks/rubrics/frameworks.md +79 -79
  326. package/skills/prioritization-frameworks/templates/scoring-matrix.md +69 -69
  327. package/skills/priority-todos/SKILL.md +64 -64
  328. package/skills/priority-todos/rubrics/prioritization.md +70 -70
  329. package/skills/priority-todos/templates/todo-board.md +59 -59
  330. package/skills/seo-checklist/SKILL.md +58 -58
  331. package/skills/seo-checklist/frameworks/structured-data.md +153 -153
  332. package/skills/seo-checklist/rubrics/content-seo.md +42 -42
  333. package/skills/seo-checklist/rubrics/technical-seo.md +48 -48
  334. package/skills/techdebt/SKILL.md +124 -124
  335. package/skills/techdebt/agents/analyzer.md +50 -50
  336. package/skills/techdebt/agents/fixer.md +41 -41
  337. package/skills/techdebt/agents/reviewer.md +47 -47
  338. package/skills/techdebt/agents/scanner.md +44 -44
  339. package/skills/techdebt/orchestrator.md +70 -70
  340. package/skills/techdebt/rubrics/severity.md +51 -51
  341. package/skills/techdebt/scripts/scan.js +90 -90
  342. package/skills/techdebt/templates/report.md +86 -86
  343. package/skills/tool-fallback/SKILL.md +104 -104
  344. package/skills/tool-fallback/rubrics/fallback-chain.md +58 -58
  345. package/skills/typescript-advanced-types/SKILL.md +67 -67
  346. package/skills/typescript-advanced-types/rubrics/type-patterns.md +109 -109
  347. package/skills/ui-ux-pro-max/SKILL.md +236 -236
  348. package/skills/ui-ux-pro-max/reference/color-and-contrast.md +517 -517
  349. package/skills/ui-ux-pro-max/reference/interaction-design.md +544 -544
  350. package/skills/ui-ux-pro-max/reference/motion-design.md +591 -591
  351. package/skills/ui-ux-pro-max/reference/responsive-design.md +463 -463
  352. package/skills/ui-ux-pro-max/reference/spatial-design.md +390 -390
  353. package/skills/ui-ux-pro-max/reference/typography.md +455 -455
  354. package/skills/ui-ux-pro-max/reference/ux-writing.md +469 -469
  355. package/skills/ui-ux-pro-max/rubrics/interaction-states.md +83 -83
  356. package/skills/ui-ux-pro-max/rubrics/responsive-breakpoints.md +99 -99
  357. package/skills/user-personas/SKILL.md +75 -75
  358. package/skills/user-personas/rubrics/research-methods.md +56 -56
  359. package/skills/user-personas/templates/persona.md +89 -89
  360. package/skills/vercel-react-best-practices/SKILL.md +60 -60
  361. package/skills/vercel-react-best-practices/rubrics/performance.md +82 -82
  362. package/skills/vercel-react-best-practices/rubrics/server-components.md +86 -86
  363. package/skills/vibe.docs/SKILL.md +171 -171
  364. package/skills/vibe.docs/templates/architecture.md +80 -80
  365. package/skills/vibe.docs/templates/readme.md +84 -84
  366. package/skills/vibe.docs/templates/release-notes.md +74 -74
  367. package/skills/vibe.figma/SKILL.md +215 -982
  368. package/skills/vibe.figma/rubrics/extraction-checklist.md +51 -51
  369. package/skills/vibe.figma/templates/component-index.md +126 -126
  370. package/skills/vibe.figma/templates/figma-handoff.md +100 -100
  371. package/skills/vibe.figma/templates/remapped-tree.md +277 -277
  372. package/skills/vibe.figma.convert/SKILL.md +188 -511
  373. package/skills/vibe.figma.convert/rubrics/conversion-rules.md +129 -113
  374. package/skills/vibe.figma.convert/templates/component.md +140 -140
  375. package/skills/vibe.figma.extract/SKILL.md +179 -300
  376. package/skills/vibe.figma.extract/rubrics/image-rules.md +145 -137
  377. package/skills/video-production/SKILL.md +52 -52
  378. package/skills/video-production/rubrics/quality-checklist.md +58 -58
  379. package/skills/video-production/templates/production-plan.md +104 -104
  380. package/vibe/config.json +29 -29
  381. package/vibe/constitution.md +227 -227
  382. package/vibe/rules/principles/communication-guide.md +98 -98
  383. package/vibe/rules/principles/development-philosophy.md +52 -52
  384. package/vibe/rules/principles/quick-start.md +102 -102
  385. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  386. package/vibe/rules/quality/checklist.md +276 -276
  387. package/vibe/rules/quality/performance.md +236 -236
  388. package/vibe/rules/quality/testing-strategy.md +440 -440
  389. package/vibe/rules/standards/anti-patterns.md +541 -541
  390. package/vibe/rules/standards/code-structure.md +291 -291
  391. package/vibe/rules/standards/complexity-metrics.md +313 -313
  392. package/vibe/rules/standards/git-workflow.md +237 -237
  393. package/vibe/rules/standards/naming-conventions.md +198 -198
  394. package/vibe/rules/standards/security.md +305 -305
  395. package/vibe/rules/writing/document-style.md +74 -74
  396. package/vibe/setup.sh +31 -31
  397. package/vibe/templates/constitution-template.md +252 -252
  398. package/vibe/templates/contract-backend-template.md +526 -526
  399. package/vibe/templates/contract-frontend-template.md +599 -599
  400. package/vibe/templates/feature-template.md +96 -96
  401. package/vibe/templates/spec-template.md +221 -221
  402. package/vibe/ui-ux-data/charts.csv +26 -26
  403. package/vibe/ui-ux-data/colors.csv +97 -97
  404. package/vibe/ui-ux-data/icons.csv +101 -101
  405. package/vibe/ui-ux-data/landing.csv +31 -31
  406. package/vibe/ui-ux-data/products.csv +96 -96
  407. package/vibe/ui-ux-data/react-performance.csv +45 -45
  408. package/vibe/ui-ux-data/stacks/astro.csv +54 -54
  409. package/vibe/ui-ux-data/stacks/flutter.csv +53 -53
  410. package/vibe/ui-ux-data/stacks/html-tailwind.csv +56 -56
  411. package/vibe/ui-ux-data/stacks/jetpack-compose.csv +53 -53
  412. package/vibe/ui-ux-data/stacks/nextjs.csv +53 -53
  413. package/vibe/ui-ux-data/stacks/nuxt-ui.csv +51 -51
  414. package/vibe/ui-ux-data/stacks/nuxtjs.csv +59 -59
  415. package/vibe/ui-ux-data/stacks/react-native.csv +52 -52
  416. package/vibe/ui-ux-data/stacks/react.csv +54 -54
  417. package/vibe/ui-ux-data/stacks/shadcn.csv +61 -61
  418. package/vibe/ui-ux-data/stacks/svelte.csv +54 -54
  419. package/vibe/ui-ux-data/stacks/swiftui.csv +51 -51
  420. package/vibe/ui-ux-data/stacks/vue.csv +50 -50
  421. package/vibe/ui-ux-data/styles.csv +68 -68
  422. package/vibe/ui-ux-data/typography.csv +57 -57
  423. package/vibe/ui-ux-data/ui-reasoning.csv +101 -101
  424. package/vibe/ui-ux-data/ux-guidelines.csv +99 -99
  425. package/vibe/ui-ux-data/version.json +31 -31
  426. package/vibe/ui-ux-data/web-interface.csv +31 -31
@@ -1,83 +1,83 @@
1
- # Required Interaction States Checklist
2
-
3
- Every interactive element must implement all applicable states. Missing states are P1–P2 findings.
4
-
5
- ---
6
-
7
- ## State Definitions
8
-
9
- | State | Trigger | Visual Requirement | ARIA Requirement |
10
- |-------|---------|-------------------|-----------------|
11
- | **Default** | No user interaction | Base appearance defined with sufficient contrast | — |
12
- | **Hover** | Mouse enters element | Visible color, shadow, or opacity change | — |
13
- | **Focus** | Keyboard navigation / tab | Clearly visible focus ring (≥ 2px, non-color-only) | — |
14
- | **Active / Pressed** | Mouse down or tap | Distinct from hover (darker, scale-down, or depressed look) | `aria-pressed` on toggles |
15
- | **Disabled** | Element not actionable | Reduced opacity (≤ 50%) + `cursor: not-allowed` | `disabled` attr or `aria-disabled="true"` |
16
- | **Loading** | Async operation in progress | Spinner, skeleton, or progress bar replaces or overlays content | `aria-busy="true"` |
17
- | **Error** | Validation fails or operation fails | Error color on border/background + error message visible | `aria-invalid="true"` + `aria-describedby` pointing to error |
18
- | **Success** | Operation completes | Confirmation feedback (color change, checkmark, toast) | `aria-live` announcement |
19
-
20
- ---
21
-
22
- ## Element-State Matrix
23
-
24
- Use this matrix to verify each element type has all required states implemented.
25
-
26
- | Element | Default | Hover | Focus | Active | Disabled | Loading | Error | Success |
27
- |---------|---------|-------|-------|--------|----------|---------|-------|---------|
28
- | Button (primary) | Required | Required | Required | Required | Required | Required | — | — |
29
- | Button (destructive) | Required | Required | Required | Required | Required | Required | — | — |
30
- | Link | Required | Required | Required | Required | — | — | — | — |
31
- | Text input | Required | Optional | Required | — | Required | — | Required | Optional |
32
- | Select / dropdown | Required | Required | Required | — | Required | — | Required | — |
33
- | Checkbox | Required | Required | Required | Required | Required | — | — | — |
34
- | Radio button | Required | Required | Required | Required | Required | — | — | — |
35
- | Toggle / switch | Required | Required | Required | Required | Required | — | — | — |
36
- | Form submit button | Required | Required | Required | Required | Required | Required | — | Required |
37
- | Card (interactive) | Required | Required | Required | — | — | Required | — | — |
38
- | Tab | Required | Required | Required | Required | Required | — | — | — |
39
- | Menu item | Required | Required | Required | Required | Required | — | — | — |
40
- | Icon button | Required | Required | Required | Required | Required | Required | — | — |
41
-
42
- ---
43
-
44
- ## Implementation Checklist
45
-
46
- ### Hover
47
- - [ ] Color change uses a dedicated hover token (not inline opacity hack)
48
- - [ ] Transition applied (`transition-colors duration-150` or equivalent)
49
- - [ ] Layout does not shift on hover (no margin/padding changes)
50
-
51
- ### Focus
52
- - [ ] Focus ring visible at 2:1 contrast against adjacent color
53
- - [ ] `outline: none` never used without a custom focus-visible replacement
54
- - [ ] `:focus-visible` used instead of `:focus` to avoid visible ring on mouse click
55
-
56
- ### Active / Pressed
57
- - [ ] Distinct visual from hover state
58
- - [ ] `scale(0.97–0.98)` or darker color on press — not just removing hover
59
- - [ ] Touch devices: active state triggers on `touchstart`
60
-
61
- ### Disabled
62
- - [ ] `opacity: 0.4–0.5` on disabled elements
63
- - [ ] `pointer-events: none` prevents interaction
64
- - [ ] `cursor: not-allowed` set
65
- - [ ] `disabled` attribute or `aria-disabled="true"` set on element
66
- - [ ] Disabled state does not rely on color alone
67
-
68
- ### Loading
69
- - [ ] Original button/element width preserved during loading (no layout jump)
70
- - [ ] Spinner or skeleton shown within 100ms of action trigger
71
- - [ ] Interaction re-enabled after completion or error
72
- - [ ] `aria-busy="true"` set on loading container
73
-
74
- ### Error
75
- - [ ] Error message visible near the element (not just a global toast)
76
- - [ ] Error styling uses `--color-error` token
77
- - [ ] `aria-invalid="true"` set on invalid input
78
- - [ ] Error message linked via `aria-describedby`
79
-
80
- ### Success
81
- - [ ] Confirmation feedback shown within 300ms of completion
82
- - [ ] Success message auto-dismisses or provides clear dismiss action
83
- - [ ] `aria-live="polite"` region announces success to screen readers
1
+ # Required Interaction States Checklist
2
+
3
+ Every interactive element must implement all applicable states. Missing states are P1–P2 findings.
4
+
5
+ ---
6
+
7
+ ## State Definitions
8
+
9
+ | State | Trigger | Visual Requirement | ARIA Requirement |
10
+ |-------|---------|-------------------|-----------------|
11
+ | **Default** | No user interaction | Base appearance defined with sufficient contrast | — |
12
+ | **Hover** | Mouse enters element | Visible color, shadow, or opacity change | — |
13
+ | **Focus** | Keyboard navigation / tab | Clearly visible focus ring (≥ 2px, non-color-only) | — |
14
+ | **Active / Pressed** | Mouse down or tap | Distinct from hover (darker, scale-down, or depressed look) | `aria-pressed` on toggles |
15
+ | **Disabled** | Element not actionable | Reduced opacity (≤ 50%) + `cursor: not-allowed` | `disabled` attr or `aria-disabled="true"` |
16
+ | **Loading** | Async operation in progress | Spinner, skeleton, or progress bar replaces or overlays content | `aria-busy="true"` |
17
+ | **Error** | Validation fails or operation fails | Error color on border/background + error message visible | `aria-invalid="true"` + `aria-describedby` pointing to error |
18
+ | **Success** | Operation completes | Confirmation feedback (color change, checkmark, toast) | `aria-live` announcement |
19
+
20
+ ---
21
+
22
+ ## Element-State Matrix
23
+
24
+ Use this matrix to verify each element type has all required states implemented.
25
+
26
+ | Element | Default | Hover | Focus | Active | Disabled | Loading | Error | Success |
27
+ |---------|---------|-------|-------|--------|----------|---------|-------|---------|
28
+ | Button (primary) | Required | Required | Required | Required | Required | Required | — | — |
29
+ | Button (destructive) | Required | Required | Required | Required | Required | Required | — | — |
30
+ | Link | Required | Required | Required | Required | — | — | — | — |
31
+ | Text input | Required | Optional | Required | — | Required | — | Required | Optional |
32
+ | Select / dropdown | Required | Required | Required | — | Required | — | Required | — |
33
+ | Checkbox | Required | Required | Required | Required | Required | — | — | — |
34
+ | Radio button | Required | Required | Required | Required | Required | — | — | — |
35
+ | Toggle / switch | Required | Required | Required | Required | Required | — | — | — |
36
+ | Form submit button | Required | Required | Required | Required | Required | Required | — | Required |
37
+ | Card (interactive) | Required | Required | Required | — | — | Required | — | — |
38
+ | Tab | Required | Required | Required | Required | Required | — | — | — |
39
+ | Menu item | Required | Required | Required | Required | Required | — | — | — |
40
+ | Icon button | Required | Required | Required | Required | Required | Required | — | — |
41
+
42
+ ---
43
+
44
+ ## Implementation Checklist
45
+
46
+ ### Hover
47
+ - [ ] Color change uses a dedicated hover token (not inline opacity hack)
48
+ - [ ] Transition applied (`transition-colors duration-150` or equivalent)
49
+ - [ ] Layout does not shift on hover (no margin/padding changes)
50
+
51
+ ### Focus
52
+ - [ ] Focus ring visible at 2:1 contrast against adjacent color
53
+ - [ ] `outline: none` never used without a custom focus-visible replacement
54
+ - [ ] `:focus-visible` used instead of `:focus` to avoid visible ring on mouse click
55
+
56
+ ### Active / Pressed
57
+ - [ ] Distinct visual from hover state
58
+ - [ ] `scale(0.97–0.98)` or darker color on press — not just removing hover
59
+ - [ ] Touch devices: active state triggers on `touchstart`
60
+
61
+ ### Disabled
62
+ - [ ] `opacity: 0.4–0.5` on disabled elements
63
+ - [ ] `pointer-events: none` prevents interaction
64
+ - [ ] `cursor: not-allowed` set
65
+ - [ ] `disabled` attribute or `aria-disabled="true"` set on element
66
+ - [ ] Disabled state does not rely on color alone
67
+
68
+ ### Loading
69
+ - [ ] Original button/element width preserved during loading (no layout jump)
70
+ - [ ] Spinner or skeleton shown within 100ms of action trigger
71
+ - [ ] Interaction re-enabled after completion or error
72
+ - [ ] `aria-busy="true"` set on loading container
73
+
74
+ ### Error
75
+ - [ ] Error message visible near the element (not just a global toast)
76
+ - [ ] Error styling uses `--color-error` token
77
+ - [ ] `aria-invalid="true"` set on invalid input
78
+ - [ ] Error message linked via `aria-describedby`
79
+
80
+ ### Success
81
+ - [ ] Confirmation feedback shown within 300ms of completion
82
+ - [ ] Success message auto-dismisses or provides clear dismiss action
83
+ - [ ] `aria-live="polite"` region announces success to screen readers
@@ -1,99 +1,99 @@
1
- # Standard Breakpoint Definitions
2
-
3
- Reference for responsive design implementation across all stacks.
4
-
5
- ---
6
-
7
- ## Core Breakpoints
8
-
9
- | Name | Min Width | Target Devices | Priority |
10
- |------|-----------|---------------|----------|
11
- | `xs` | 375px | Small phones (iPhone SE, Galaxy A) | Test target |
12
- | `sm` | 640px | Large phones (landscape), small tablets | Layout change |
13
- | `md` | 768px | Tablets (portrait), large phones | Major breakpoint |
14
- | `lg` | 1024px | Tablets (landscape), small laptops | Major breakpoint |
15
- | `xl` | 1280px | Standard desktop | Primary design target |
16
- | `2xl` | 1536px | Large monitors | Wide-layout target |
17
-
18
- ---
19
-
20
- ## Framework Mappings
21
-
22
- | Breakpoint | Tailwind class | CSS media query | Common use |
23
- |------------|---------------|-----------------|------------|
24
- | Mobile default | (no prefix) | base styles | Mobile-first base |
25
- | sm | `sm:` | `@media (min-width: 640px)` | Large phone adjustments |
26
- | md | `md:` | `@media (min-width: 768px)` | Tablet layout |
27
- | lg | `lg:` | `@media (min-width: 1024px)` | Desktop layout |
28
- | xl | `xl:` | `@media (min-width: 1280px)` | Wide desktop |
29
- | 2xl | `2xl:` | `@media (min-width: 1536px)` | Ultra-wide |
30
-
31
- ---
32
-
33
- ## Layout Behavior by Breakpoint
34
-
35
- ### Navigation
36
- | Breakpoint | Pattern |
37
- |------------|---------|
38
- | < md | Hamburger menu / bottom tab bar |
39
- | md–lg | Collapsed sidebar or top nav with fewer items |
40
- | ≥ lg | Full sidebar or top nav with all items visible |
41
-
42
- ### Content Grid
43
- | Breakpoint | Columns |
44
- |------------|---------|
45
- | xs–sm | 1 column |
46
- | md | 2 columns |
47
- | lg | 3 columns |
48
- | xl+ | 4 columns (data-heavy) or 3 columns (content) |
49
-
50
- ### Typography Scale Adjustments
51
- | Element | Mobile | Desktop |
52
- |---------|--------|---------|
53
- | Hero heading | `text-3xl` (30px) | `text-5xl` (48px) |
54
- | Section heading | `text-xl` (20px) | `text-3xl` (30px) |
55
- | Body | `text-base` (16px) | `text-base` (16px) — never reduce below 16px |
56
- | Caption | `text-sm` (14px) | `text-sm` (14px) |
57
-
58
- ---
59
-
60
- ## Touch Target Rules
61
-
62
- | Device | Minimum touch target | Recommended |
63
- |--------|---------------------|-------------|
64
- | Mobile (< md) | 44×44px | 48×48px |
65
- | Tablet (md–lg) | 44×44px | 44×44px |
66
- | Desktop (≥ lg) | 32×32px (mouse) | 36×36px |
67
-
68
- ---
69
-
70
- ## Testing Checklist
71
-
72
- | Breakpoint | Must Verify |
73
- |------------|-------------|
74
- | 375px | No horizontal scroll; text readable; nav accessible; forms usable |
75
- | 768px | Layout transitions correctly; no content overlap |
76
- | 1024px | Desktop features visible; sidebar or nav fully expanded |
77
- | 1440px | Max-width container centered; content not stretched too wide |
78
-
79
- ### Max-width containers
80
-
81
- | Use case | Recommended max-width |
82
- |----------|-----------------------|
83
- | Marketing / landing pages | `max-w-5xl` (1024px) or `max-w-6xl` (1152px) |
84
- | Application layouts | `max-w-7xl` (1280px) |
85
- | Reading / article content | `max-w-2xl` (672px) or `max-w-3xl` (768px) |
86
- | Full-bleed dashboards | None (use grid with sidebars) |
87
-
88
- ---
89
-
90
- ## Container Query Usage
91
-
92
- Use `@container` when a component's layout depends on its parent width, not the viewport.
93
-
94
- | Scenario | Use viewport breakpoint | Use container query |
95
- |----------|------------------------|---------------------|
96
- | Page-level layout | Yes | No |
97
- | Component in sidebar vs main | No | Yes |
98
- | Card grid columns | No | Yes |
99
- | Navbar collapsing | Yes | No |
1
+ # Standard Breakpoint Definitions
2
+
3
+ Reference for responsive design implementation across all stacks.
4
+
5
+ ---
6
+
7
+ ## Core Breakpoints
8
+
9
+ | Name | Min Width | Target Devices | Priority |
10
+ |------|-----------|---------------|----------|
11
+ | `xs` | 375px | Small phones (iPhone SE, Galaxy A) | Test target |
12
+ | `sm` | 640px | Large phones (landscape), small tablets | Layout change |
13
+ | `md` | 768px | Tablets (portrait), large phones | Major breakpoint |
14
+ | `lg` | 1024px | Tablets (landscape), small laptops | Major breakpoint |
15
+ | `xl` | 1280px | Standard desktop | Primary design target |
16
+ | `2xl` | 1536px | Large monitors | Wide-layout target |
17
+
18
+ ---
19
+
20
+ ## Framework Mappings
21
+
22
+ | Breakpoint | Tailwind class | CSS media query | Common use |
23
+ |------------|---------------|-----------------|------------|
24
+ | Mobile default | (no prefix) | base styles | Mobile-first base |
25
+ | sm | `sm:` | `@media (min-width: 640px)` | Large phone adjustments |
26
+ | md | `md:` | `@media (min-width: 768px)` | Tablet layout |
27
+ | lg | `lg:` | `@media (min-width: 1024px)` | Desktop layout |
28
+ | xl | `xl:` | `@media (min-width: 1280px)` | Wide desktop |
29
+ | 2xl | `2xl:` | `@media (min-width: 1536px)` | Ultra-wide |
30
+
31
+ ---
32
+
33
+ ## Layout Behavior by Breakpoint
34
+
35
+ ### Navigation
36
+ | Breakpoint | Pattern |
37
+ |------------|---------|
38
+ | < md | Hamburger menu / bottom tab bar |
39
+ | md–lg | Collapsed sidebar or top nav with fewer items |
40
+ | ≥ lg | Full sidebar or top nav with all items visible |
41
+
42
+ ### Content Grid
43
+ | Breakpoint | Columns |
44
+ |------------|---------|
45
+ | xs–sm | 1 column |
46
+ | md | 2 columns |
47
+ | lg | 3 columns |
48
+ | xl+ | 4 columns (data-heavy) or 3 columns (content) |
49
+
50
+ ### Typography Scale Adjustments
51
+ | Element | Mobile | Desktop |
52
+ |---------|--------|---------|
53
+ | Hero heading | `text-3xl` (30px) | `text-5xl` (48px) |
54
+ | Section heading | `text-xl` (20px) | `text-3xl` (30px) |
55
+ | Body | `text-base` (16px) | `text-base` (16px) — never reduce below 16px |
56
+ | Caption | `text-sm` (14px) | `text-sm` (14px) |
57
+
58
+ ---
59
+
60
+ ## Touch Target Rules
61
+
62
+ | Device | Minimum touch target | Recommended |
63
+ |--------|---------------------|-------------|
64
+ | Mobile (< md) | 44×44px | 48×48px |
65
+ | Tablet (md–lg) | 44×44px | 44×44px |
66
+ | Desktop (≥ lg) | 32×32px (mouse) | 36×36px |
67
+
68
+ ---
69
+
70
+ ## Testing Checklist
71
+
72
+ | Breakpoint | Must Verify |
73
+ |------------|-------------|
74
+ | 375px | No horizontal scroll; text readable; nav accessible; forms usable |
75
+ | 768px | Layout transitions correctly; no content overlap |
76
+ | 1024px | Desktop features visible; sidebar or nav fully expanded |
77
+ | 1440px | Max-width container centered; content not stretched too wide |
78
+
79
+ ### Max-width containers
80
+
81
+ | Use case | Recommended max-width |
82
+ |----------|-----------------------|
83
+ | Marketing / landing pages | `max-w-5xl` (1024px) or `max-w-6xl` (1152px) |
84
+ | Application layouts | `max-w-7xl` (1280px) |
85
+ | Reading / article content | `max-w-2xl` (672px) or `max-w-3xl` (768px) |
86
+ | Full-bleed dashboards | None (use grid with sidebars) |
87
+
88
+ ---
89
+
90
+ ## Container Query Usage
91
+
92
+ Use `@container` when a component's layout depends on its parent width, not the viewport.
93
+
94
+ | Scenario | Use viewport breakpoint | Use container query |
95
+ |----------|------------------------|---------------------|
96
+ | Page-level layout | Yes | No |
97
+ | Component in sidebar vs main | No | Yes |
98
+ | Card grid columns | No | Yes |
99
+ | Navbar collapsing | Yes | No |
@@ -1,75 +1,75 @@
1
- ---
2
- name: user-personas
3
- tier: standard
4
- description: "Create refined user personas from research data — 3 personas with JTBD, pains, gains, and unexpected insights."
5
- triggers: [persona, user persona, user profile, user segment, user research]
6
- priority: 50
7
- chain-next: [create-prd, prioritization-frameworks]
8
- ---
9
-
10
- # User Personas
11
-
12
- > Based on the user persona framework from [Product Compass](https://www.productcompass.pm/p/interviewing-customers-the-ultimate) by Pawel Huryn (MIT License).
13
-
14
- ## Purpose
15
-
16
- Create detailed, actionable user personas from research data that capture the true diversity of your user base. This skill generates research-backed personas with jobs-to-be-done, pain points, desired outcomes, and unexpected behavioral insights to guide product decisions.
17
-
18
- ## Instructions
19
-
20
- You are an experienced product researcher specializing in persona development and user research synthesis.
21
-
22
- ### Input
23
-
24
- Your task is to create 3 refined user personas for **$ARGUMENTS**.
25
-
26
- If the user provides CSV, Excel, survey responses, interview transcripts, or other research data files, read and analyze them directly using available tools. Extract key patterns, demographics, motivations, and behaviors.
27
-
28
- ### Analysis Steps (Think Step by Step)
29
-
30
- 1. **Data Collection**: Read and review all provided research data and documents
31
- 2. **Pattern Recognition**: Identify recurring characteristics, goals, pain points, and behaviors across users
32
- 3. **Segmentation**: Group similar users into distinct personas based on shared motivations and jobs-to-be-done
33
- 4. **Enrichment**: For each persona, synthesize data into a coherent profile
34
- 5. **Validation**: Cross-reference insights to ensure personas are grounded in actual research findings
35
-
36
- ### Output Structure
37
-
38
- For each of the 3 personas, provide:
39
-
40
- **Persona Name & Demographics**
41
- - Age range, role/title, company size (if B2B), key characteristics
42
-
43
- **Primary Job-to-be-Done**
44
- - The core outcome the persona is trying to achieve
45
- - Context and frequency of the job
46
-
47
- **Top 3 Pain Points**
48
- - Specific challenges or obstacles preventing job completion
49
- - Impact and severity of each pain
50
-
51
- **Top 3 Desired Gains**
52
- - Benefits, outcomes, or solutions the persona seeks
53
- - How they measure success
54
-
55
- **One Unexpected Insight**
56
- - A counterintuitive behavioral pattern or motivation derived from the data
57
- - Why this matters for product decisions
58
-
59
- **Product Fit Assessment**
60
- - How $ARGUMENTS addresses (or could address) this persona's needs
61
- - Potential friction points or unmet needs
62
-
63
- ## Best Practices
64
-
65
- - Ground all insights in actual data; avoid assumptions
66
- - Use direct quotes from research when available
67
- - Identify behavioral patterns, not just demographic categories
68
- - Make personas distinct and non-overlapping where possible
69
- - Flag any data gaps or areas requiring additional research
70
-
71
- ## Further Reading
72
-
73
- - [User Interviews: The Ultimate Guide to Research Interviews](https://www.productcompass.pm/p/interviewing-customers-the-ultimate)
74
- - [Market Research: Advanced Techniques](https://www.productcompass.pm/p/market-research-advanced-techniques)
75
- - [Jobs-to-be-Done Masterclass with Tony Ulwick and Sabeen Sattar](https://www.productcompass.pm/p/jobs-to-be-done-masterclass-with)
1
+ ---
2
+ name: user-personas
3
+ tier: standard
4
+ description: "Create refined user personas from research data — 3 personas with JTBD, pains, gains, and unexpected insights."
5
+ triggers: [persona, user persona, user profile, user segment, user research]
6
+ priority: 50
7
+ chain-next: [create-prd, prioritization-frameworks]
8
+ ---
9
+
10
+ # User Personas
11
+
12
+ > Based on the user persona framework from [Product Compass](https://www.productcompass.pm/p/interviewing-customers-the-ultimate) by Pawel Huryn (MIT License).
13
+
14
+ ## Purpose
15
+
16
+ Create detailed, actionable user personas from research data that capture the true diversity of your user base. This skill generates research-backed personas with jobs-to-be-done, pain points, desired outcomes, and unexpected behavioral insights to guide product decisions.
17
+
18
+ ## Instructions
19
+
20
+ You are an experienced product researcher specializing in persona development and user research synthesis.
21
+
22
+ ### Input
23
+
24
+ Your task is to create 3 refined user personas for **$ARGUMENTS**.
25
+
26
+ If the user provides CSV, Excel, survey responses, interview transcripts, or other research data files, read and analyze them directly using available tools. Extract key patterns, demographics, motivations, and behaviors.
27
+
28
+ ### Analysis Steps (Think Step by Step)
29
+
30
+ 1. **Data Collection**: Read and review all provided research data and documents
31
+ 2. **Pattern Recognition**: Identify recurring characteristics, goals, pain points, and behaviors across users
32
+ 3. **Segmentation**: Group similar users into distinct personas based on shared motivations and jobs-to-be-done
33
+ 4. **Enrichment**: For each persona, synthesize data into a coherent profile
34
+ 5. **Validation**: Cross-reference insights to ensure personas are grounded in actual research findings
35
+
36
+ ### Output Structure
37
+
38
+ For each of the 3 personas, provide:
39
+
40
+ **Persona Name & Demographics**
41
+ - Age range, role/title, company size (if B2B), key characteristics
42
+
43
+ **Primary Job-to-be-Done**
44
+ - The core outcome the persona is trying to achieve
45
+ - Context and frequency of the job
46
+
47
+ **Top 3 Pain Points**
48
+ - Specific challenges or obstacles preventing job completion
49
+ - Impact and severity of each pain
50
+
51
+ **Top 3 Desired Gains**
52
+ - Benefits, outcomes, or solutions the persona seeks
53
+ - How they measure success
54
+
55
+ **One Unexpected Insight**
56
+ - A counterintuitive behavioral pattern or motivation derived from the data
57
+ - Why this matters for product decisions
58
+
59
+ **Product Fit Assessment**
60
+ - How $ARGUMENTS addresses (or could address) this persona's needs
61
+ - Potential friction points or unmet needs
62
+
63
+ ## Best Practices
64
+
65
+ - Ground all insights in actual data; avoid assumptions
66
+ - Use direct quotes from research when available
67
+ - Identify behavioral patterns, not just demographic categories
68
+ - Make personas distinct and non-overlapping where possible
69
+ - Flag any data gaps or areas requiring additional research
70
+
71
+ ## Further Reading
72
+
73
+ - [User Interviews: The Ultimate Guide to Research Interviews](https://www.productcompass.pm/p/interviewing-customers-the-ultimate)
74
+ - [Market Research: Advanced Techniques](https://www.productcompass.pm/p/market-research-advanced-techniques)
75
+ - [Jobs-to-be-Done Masterclass with Tony Ulwick and Sabeen Sattar](https://www.productcompass.pm/p/jobs-to-be-done-masterclass-with)
@@ -1,56 +1,56 @@
1
- # Persona Research Methodology
2
-
3
- ## Research Method Selection
4
-
5
- | Situation | Recommended Method | Sample Size |
6
- |-----------|-------------------|-------------|
7
- | New product, no users yet | Exploratory interviews | 8–12 participants |
8
- | Existing product, need depth | In-depth interviews | 5–8 per segment |
9
- | Validating existing personas | Survey | 50+ respondents |
10
- | Behavioral patterns | Analytics + session recordings | All available data |
11
- | Competitive landscape | Competitor review + job forums | Qualitative |
12
-
13
- ## Interview Design Checklist
14
-
15
- - [ ] Questions focus on past behavior, not hypothetical future behavior
16
- - [ ] "Tell me about a time when..." used instead of "Would you...?"
17
- - [ ] No leading questions (avoid "Don't you find X frustrating?")
18
- - [ ] Follow-up probes prepared: "Why?", "What happened next?", "How did that make you feel?"
19
- - [ ] Job-to-be-done lens: ask what they're trying to accomplish, not what features they want
20
- - [ ] Session recorded (with consent) for later synthesis
21
- - [ ] Duration: 45–60 minutes per interview
22
-
23
- ## Data Collection Quality Gates
24
-
25
- - [ ] Minimum 5 interviews per distinct segment before drawing conclusions
26
- - [ ] Direct quotes captured verbatim (not paraphrased during interview)
27
- - [ ] Demographic bias checked — sample matches target market
28
- - [ ] B2B: multiple roles interviewed (buyer, user, influencer)
29
- - [ ] Negative cases included — interview users who churned or rejected the product
30
-
31
- ## Synthesis Process
32
-
33
- 1. **Affinity mapping**: Group raw observations by theme (not by participant)
34
- 2. **Pattern extraction**: Identify recurring pain points and jobs across 3+ participants
35
- 3. **Segmentation**: Cluster participants by shared motivations (not demographics)
36
- 4. **Persona drafting**: One persona per distinct motivation cluster
37
- 5. **Validation**: Cross-reference each persona claim against source data
38
-
39
- ## Persona Validity Checklist
40
-
41
- - [ ] Each persona grounded in ≥3 real participants from research
42
- - [ ] Personas are mutually distinct — overlapping personas should be merged
43
- - [ ] Unexpected insights included — if all insights are obvious, dig deeper
44
- - [ ] Demographics are secondary — job-to-be-done drives persona definition
45
- - [ ] Quotes used are verbatim from research (not invented)
46
- - [ ] Data gaps explicitly flagged — don't fill gaps with assumptions
47
-
48
- ## Common Research Mistakes
49
-
50
- | Mistake | Consequence | Fix |
51
- |---------|-------------|-----|
52
- | Asking "what features do you want?" | Users design solutions, not needs | Ask about current behavior and pain |
53
- | Only interviewing enthusiasts | Survivorship bias | Include churned users and non-adopters |
54
- | Conflating segment with persona | Personas become stereotypes | Base personas on motivations, not age/gender |
55
- | Too many personas (>5) | Team ignores them | Merge overlapping clusters, max 3–4 |
56
- | No data gaps acknowledged | False confidence | Flag what you don't yet know |
1
+ # Persona Research Methodology
2
+
3
+ ## Research Method Selection
4
+
5
+ | Situation | Recommended Method | Sample Size |
6
+ |-----------|-------------------|-------------|
7
+ | New product, no users yet | Exploratory interviews | 8–12 participants |
8
+ | Existing product, need depth | In-depth interviews | 5–8 per segment |
9
+ | Validating existing personas | Survey | 50+ respondents |
10
+ | Behavioral patterns | Analytics + session recordings | All available data |
11
+ | Competitive landscape | Competitor review + job forums | Qualitative |
12
+
13
+ ## Interview Design Checklist
14
+
15
+ - [ ] Questions focus on past behavior, not hypothetical future behavior
16
+ - [ ] "Tell me about a time when..." used instead of "Would you...?"
17
+ - [ ] No leading questions (avoid "Don't you find X frustrating?")
18
+ - [ ] Follow-up probes prepared: "Why?", "What happened next?", "How did that make you feel?"
19
+ - [ ] Job-to-be-done lens: ask what they're trying to accomplish, not what features they want
20
+ - [ ] Session recorded (with consent) for later synthesis
21
+ - [ ] Duration: 45–60 minutes per interview
22
+
23
+ ## Data Collection Quality Gates
24
+
25
+ - [ ] Minimum 5 interviews per distinct segment before drawing conclusions
26
+ - [ ] Direct quotes captured verbatim (not paraphrased during interview)
27
+ - [ ] Demographic bias checked — sample matches target market
28
+ - [ ] B2B: multiple roles interviewed (buyer, user, influencer)
29
+ - [ ] Negative cases included — interview users who churned or rejected the product
30
+
31
+ ## Synthesis Process
32
+
33
+ 1. **Affinity mapping**: Group raw observations by theme (not by participant)
34
+ 2. **Pattern extraction**: Identify recurring pain points and jobs across 3+ participants
35
+ 3. **Segmentation**: Cluster participants by shared motivations (not demographics)
36
+ 4. **Persona drafting**: One persona per distinct motivation cluster
37
+ 5. **Validation**: Cross-reference each persona claim against source data
38
+
39
+ ## Persona Validity Checklist
40
+
41
+ - [ ] Each persona grounded in ≥3 real participants from research
42
+ - [ ] Personas are mutually distinct — overlapping personas should be merged
43
+ - [ ] Unexpected insights included — if all insights are obvious, dig deeper
44
+ - [ ] Demographics are secondary — job-to-be-done drives persona definition
45
+ - [ ] Quotes used are verbatim from research (not invented)
46
+ - [ ] Data gaps explicitly flagged — don't fill gaps with assumptions
47
+
48
+ ## Common Research Mistakes
49
+
50
+ | Mistake | Consequence | Fix |
51
+ |---------|-------------|-----|
52
+ | Asking "what features do you want?" | Users design solutions, not needs | Ask about current behavior and pain |
53
+ | Only interviewing enthusiasts | Survivorship bias | Include churned users and non-adopters |
54
+ | Conflating segment with persona | Personas become stereotypes | Base personas on motivations, not age/gender |
55
+ | Too many personas (>5) | Team ignores them | Merge overlapping clusters, max 3–4 |
56
+ | No data gaps acknowledged | False confidence | Flag what you don't yet know |