@su-record/vibe 2.8.52 → 2.8.53

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 (417) hide show
  1. package/.env.example +37 -37
  2. package/CLAUDE.md +169 -169
  3. package/LICENSE +21 -21
  4. package/agents/architect-low.md +41 -41
  5. package/agents/architect-medium.md +59 -59
  6. package/agents/architect.md +80 -80
  7. package/agents/build-error-resolver.md +115 -115
  8. package/agents/compounder.md +261 -261
  9. package/agents/diagrammer.md +178 -178
  10. package/agents/docs/api-documenter.md +99 -99
  11. package/agents/docs/changelog-writer.md +93 -93
  12. package/agents/e2e-tester.md +294 -294
  13. package/agents/event/event-comms.md +78 -78
  14. package/agents/event/event-content.md +68 -68
  15. package/agents/event/event-image.md +95 -95
  16. package/agents/event/event-ops.md +84 -84
  17. package/agents/event/event-scheduler.md +69 -69
  18. package/agents/event/event-speaker.md +86 -86
  19. package/agents/explorer-low.md +42 -42
  20. package/agents/explorer-medium.md +59 -59
  21. package/agents/explorer.md +48 -48
  22. package/agents/implementer-low.md +43 -43
  23. package/agents/implementer-medium.md +52 -52
  24. package/agents/implementer.md +54 -54
  25. package/agents/junior-mentor.md +141 -141
  26. package/agents/planning/requirements-analyst.md +84 -84
  27. package/agents/planning/ux-advisor.md +83 -83
  28. package/agents/qa/acceptance-tester.md +86 -86
  29. package/agents/qa/edge-case-finder.md +93 -93
  30. package/agents/qa/qa-coordinator.md +131 -131
  31. package/agents/refactor-cleaner.md +143 -143
  32. package/agents/research/best-practices-agent.md +199 -199
  33. package/agents/research/codebase-patterns-agent.md +157 -157
  34. package/agents/research/framework-docs-agent.md +188 -188
  35. package/agents/research/security-advisory-agent.md +213 -213
  36. package/agents/review/architecture-reviewer.md +107 -107
  37. package/agents/review/complexity-reviewer.md +116 -116
  38. package/agents/review/data-integrity-reviewer.md +88 -88
  39. package/agents/review/git-history-reviewer.md +103 -103
  40. package/agents/review/performance-reviewer.md +86 -86
  41. package/agents/review/python-reviewer.md +150 -150
  42. package/agents/review/rails-reviewer.md +139 -139
  43. package/agents/review/react-reviewer.md +144 -144
  44. package/agents/review/security-reviewer.md +80 -80
  45. package/agents/review/simplicity-reviewer.md +140 -140
  46. package/agents/review/test-coverage-reviewer.md +116 -116
  47. package/agents/review/typescript-reviewer.md +127 -127
  48. package/agents/searcher.md +54 -54
  49. package/agents/simplifier.md +120 -120
  50. package/agents/tester.md +49 -49
  51. package/agents/ui/ui-a11y-auditor.md +93 -93
  52. package/agents/ui/ui-antipattern-detector.md +102 -102
  53. package/agents/ui/ui-dataviz-advisor.md +69 -69
  54. package/agents/ui/ui-design-system-gen.md +57 -57
  55. package/agents/ui/ui-industry-analyzer.md +49 -49
  56. package/agents/ui/ui-layout-architect.md +65 -65
  57. package/agents/ui/ui-stack-implementer.md +68 -68
  58. package/agents/ui/ux-compliance-reviewer.md +81 -81
  59. package/agents/ui-previewer.md +258 -258
  60. package/commands/vibe.analyze.md +379 -379
  61. package/commands/vibe.docs.md +32 -32
  62. package/commands/vibe.event.md +163 -163
  63. package/commands/vibe.figma.md +69 -69
  64. package/commands/vibe.review.md +686 -686
  65. package/commands/vibe.run.md +2276 -2276
  66. package/commands/vibe.spec.md +1195 -1195
  67. package/commands/vibe.spec.review.md +609 -609
  68. package/commands/vibe.trace.md +259 -259
  69. package/commands/vibe.utils.md +413 -413
  70. package/commands/vibe.verify.md +510 -510
  71. package/dist/cli/collaborator.js +52 -52
  72. package/dist/cli/commands/config.js +9 -9
  73. package/dist/cli/commands/evolution.js +12 -12
  74. package/dist/cli/commands/figma.js +20 -20
  75. package/dist/cli/commands/info.js +53 -53
  76. package/dist/cli/commands/init.js +5 -5
  77. package/dist/cli/commands/remove.js +14 -14
  78. package/dist/cli/commands/sentinel.js +27 -27
  79. package/dist/cli/commands/skills.js +5 -5
  80. package/dist/cli/commands/slack.js +10 -10
  81. package/dist/cli/commands/stats.js +6 -6
  82. package/dist/cli/commands/telegram.js +12 -12
  83. package/dist/cli/detect.js +32 -32
  84. package/dist/cli/index.js +51 -51
  85. package/dist/cli/llm/claude-commands.js +16 -16
  86. package/dist/cli/llm/config.js +18 -18
  87. package/dist/cli/llm/gemini-commands.js +16 -16
  88. package/dist/cli/llm/gpt-commands.js +19 -19
  89. package/dist/cli/llm/help.js +21 -21
  90. package/dist/cli/postinstall/cursor-agents.js +32 -32
  91. package/dist/cli/postinstall/cursor-rules.js +83 -83
  92. package/dist/cli/postinstall/cursor-skills.js +743 -743
  93. package/dist/cli/setup/Provisioner.js +42 -42
  94. package/dist/infra/lib/DeepInit.js +24 -24
  95. package/dist/infra/lib/IterationTracker.js +11 -11
  96. package/dist/infra/lib/PythonParser.js +108 -108
  97. package/dist/infra/lib/ReviewRace.js +96 -96
  98. package/dist/infra/lib/SkillFrontmatter.js +28 -28
  99. package/dist/infra/lib/SkillQualityGate.js +9 -9
  100. package/dist/infra/lib/SkillRepository.js +159 -159
  101. package/dist/infra/lib/TokenBudgetTracker.d.ts +13 -0
  102. package/dist/infra/lib/TokenBudgetTracker.d.ts.map +1 -1
  103. package/dist/infra/lib/TokenBudgetTracker.js +44 -3
  104. package/dist/infra/lib/TokenBudgetTracker.js.map +1 -1
  105. package/dist/infra/lib/UltraQA.js +99 -99
  106. package/dist/infra/lib/autonomy/AuditStore.js +41 -41
  107. package/dist/infra/lib/autonomy/ConfirmationStore.js +30 -30
  108. package/dist/infra/lib/autonomy/EventOutbox.js +38 -38
  109. package/dist/infra/lib/autonomy/PolicyEngine.d.ts +3 -3
  110. package/dist/infra/lib/autonomy/PolicyEngine.js +18 -18
  111. package/dist/infra/lib/autonomy/SecuritySentinel.js +1 -1
  112. package/dist/infra/lib/autonomy/SuggestionStore.js +33 -33
  113. package/dist/infra/lib/embedding/VectorStore.js +22 -22
  114. package/dist/infra/lib/evolution/AgentAnalyzer.js +10 -10
  115. package/dist/infra/lib/evolution/DescriptionOptimizer.js +21 -21
  116. package/dist/infra/lib/evolution/GenerationRegistry.js +36 -36
  117. package/dist/infra/lib/evolution/InsightStore.js +90 -90
  118. package/dist/infra/lib/evolution/ParityTester.js +57 -57
  119. package/dist/infra/lib/evolution/RollbackManager.js +5 -5
  120. package/dist/infra/lib/evolution/SkillBenchmark.js +23 -23
  121. package/dist/infra/lib/evolution/SkillEvalRunner.js +50 -50
  122. package/dist/infra/lib/evolution/SkillGapDetector.js +10 -10
  123. package/dist/infra/lib/evolution/UsageTracker.js +28 -28
  124. package/dist/infra/lib/gemini/orchestration.js +5 -5
  125. package/dist/infra/lib/gpt/orchestration.js +4 -4
  126. package/dist/infra/lib/memory/KnowledgeGraph.js +4 -4
  127. package/dist/infra/lib/memory/MemorySearch.js +57 -57
  128. package/dist/infra/lib/memory/MemoryStorage.js +181 -181
  129. package/dist/infra/lib/memory/ObservationStore.js +28 -28
  130. package/dist/infra/lib/memory/ReflectionStore.js +30 -30
  131. package/dist/infra/lib/memory/SessionRAGRetriever.js +7 -7
  132. package/dist/infra/lib/memory/SessionRAGStore.js +225 -225
  133. package/dist/infra/lib/memory/SessionSummarizer.js +9 -9
  134. package/dist/infra/orchestrator/AgentManager.js +12 -12
  135. package/dist/infra/orchestrator/AgentRegistry.js +65 -65
  136. package/dist/infra/orchestrator/MultiLlmResearch.js +8 -8
  137. package/dist/infra/orchestrator/SwarmOrchestrator.test.js +16 -16
  138. package/dist/infra/orchestrator/parallelResearch.js +24 -24
  139. package/dist/tools/convention/analyzeComplexity.test.js +115 -115
  140. package/dist/tools/convention/validateCodeQuality.test.js +104 -104
  141. package/dist/tools/memory/createMemoryTimeline.js +10 -10
  142. package/dist/tools/memory/getMemoryGraph.js +12 -12
  143. package/dist/tools/memory/getSessionContext.js +9 -9
  144. package/dist/tools/memory/linkMemories.js +14 -14
  145. package/dist/tools/memory/listMemories.js +4 -4
  146. package/dist/tools/memory/recallMemory.js +4 -4
  147. package/dist/tools/memory/saveMemory.js +4 -4
  148. package/dist/tools/memory/searchMemoriesAdvanced.js +23 -23
  149. package/dist/tools/semantic/analyzeDependencyGraph.js +12 -12
  150. package/dist/tools/semantic/astGrep.test.js +6 -6
  151. package/dist/tools/spec/prdParser.test.js +171 -171
  152. package/dist/tools/spec/specGenerator.js +169 -169
  153. package/dist/tools/spec/traceabilityMatrix.js +64 -64
  154. package/dist/tools/spec/traceabilityMatrix.test.js +28 -28
  155. package/hooks/gemini-hooks.json +73 -73
  156. package/hooks/hooks.json +174 -174
  157. package/hooks/scripts/__tests__/keyword-detector.test.js +199 -199
  158. package/hooks/scripts/__tests__/pre-tool-guard.test.js +286 -286
  159. package/hooks/scripts/__tests__/sentinel-guard.test.js +210 -210
  160. package/hooks/scripts/auto-commit.js +97 -97
  161. package/hooks/scripts/auto-format.js +64 -64
  162. package/hooks/scripts/auto-test.js +81 -81
  163. package/hooks/scripts/code-check.js +268 -268
  164. package/hooks/scripts/codex-detect.js +46 -46
  165. package/hooks/scripts/codex-review-gate.js +80 -80
  166. package/hooks/scripts/command-log.js +32 -32
  167. package/hooks/scripts/context-save.js +353 -353
  168. package/hooks/scripts/evolution-engine.js +91 -91
  169. package/hooks/scripts/figma-extract.js +635 -477
  170. package/hooks/scripts/hud-status.js +321 -321
  171. package/hooks/scripts/keyword-detector.js +214 -214
  172. package/hooks/scripts/llm-orchestrate.js +572 -572
  173. package/hooks/scripts/post-edit.js +32 -32
  174. package/hooks/scripts/pr-test-gate.js +52 -52
  175. package/hooks/scripts/pre-tool-guard.js +214 -159
  176. package/hooks/scripts/prompt-dispatcher.js +185 -185
  177. package/hooks/scripts/sentinel-guard.js +131 -131
  178. package/hooks/scripts/session-start.js +177 -177
  179. package/hooks/scripts/skill-injector.js +83 -83
  180. package/hooks/scripts/stop-notify.js +209 -209
  181. package/hooks/scripts/utils.js +243 -243
  182. package/languages/csharp-unity.md +515 -515
  183. package/languages/gdscript-godot.md +470 -470
  184. package/languages/ruby-rails.md +489 -489
  185. package/languages/typescript-angular.md +433 -433
  186. package/languages/typescript-astro.md +416 -416
  187. package/languages/typescript-electron.md +406 -406
  188. package/languages/typescript-nestjs.md +524 -524
  189. package/languages/typescript-svelte.md +407 -407
  190. package/languages/typescript-tauri.md +365 -365
  191. package/package.json +101 -101
  192. package/skills/agents-md/SKILL.md +121 -121
  193. package/skills/agents-md/rubrics/what-to-keep.md +49 -49
  194. package/skills/agents-md/templates/agents-md.md +36 -36
  195. package/skills/arch-guard/SKILL.md +181 -181
  196. package/skills/arch-guard/agents/detector.md +48 -48
  197. package/skills/arch-guard/agents/reporter.md +48 -48
  198. package/skills/arch-guard/agents/rule-generator.md +49 -49
  199. package/skills/arch-guard/agents/violation-checker.md +51 -51
  200. package/skills/arch-guard/frameworks/clean-architecture.md +108 -108
  201. package/skills/arch-guard/frameworks/solid.md +102 -102
  202. package/skills/arch-guard/scripts/check-boundaries.js +90 -90
  203. package/skills/arch-guard/templates/arch-rules.json +47 -47
  204. package/skills/arch-guard/templates/violation-report.md +53 -53
  205. package/skills/brand-assets/SKILL.md +147 -147
  206. package/skills/brand-assets/rubrics/asset-checklist.md +98 -98
  207. package/skills/brand-assets/templates/brand-guide.md +161 -161
  208. package/skills/capability-loop/SKILL.md +168 -168
  209. package/skills/capability-loop/agents/capability-designer.md +61 -61
  210. package/skills/capability-loop/agents/failure-analyst.md +55 -55
  211. package/skills/capability-loop/agents/implementer.md +50 -50
  212. package/skills/capability-loop/agents/tester.md +53 -53
  213. package/skills/capability-loop/templates/capability-spec.md +118 -118
  214. package/skills/capability-loop/templates/failure-analysis.md +118 -118
  215. package/skills/characterization-test/SKILL.md +207 -207
  216. package/skills/characterization-test/agents/behavior-capturer.md +50 -50
  217. package/skills/characterization-test/agents/coverage-checker.md +54 -54
  218. package/skills/characterization-test/agents/reporter.md +50 -50
  219. package/skills/characterization-test/agents/test-writer.md +49 -49
  220. package/skills/characterization-test/rubrics/coverage-criteria.md +53 -53
  221. package/skills/characterization-test/templates/test-template.ts +101 -101
  222. package/skills/chub-usage/SKILL.md +139 -139
  223. package/skills/claude-md-guide/SKILL.md +351 -351
  224. package/skills/claude-md-guide/rubrics/anti-patterns.md +88 -88
  225. package/skills/claude-md-guide/templates/claude-md.md +54 -54
  226. package/skills/commerce-patterns/SKILL.md +64 -64
  227. package/skills/commerce-patterns/rubrics/checkout-flow.md +48 -48
  228. package/skills/commerce-patterns/templates/product-schema.md +85 -85
  229. package/skills/commit-push-pr/SKILL.md +77 -77
  230. package/skills/commit-push-pr/agents/change-analyzer.md +55 -55
  231. package/skills/commit-push-pr/agents/message-writer.md +50 -50
  232. package/skills/commit-push-pr/agents/pr-writer.md +58 -58
  233. package/skills/commit-push-pr/agents/reviewer.md +52 -52
  234. package/skills/commit-push-pr/rubrics/commit-message.md +73 -73
  235. package/skills/commit-push-pr/templates/pr-body.md +63 -63
  236. package/skills/context7-usage/SKILL.md +106 -106
  237. package/skills/context7-usage/rubrics/when-to-use.md +50 -50
  238. package/skills/create-prd/SKILL.md +90 -90
  239. package/skills/create-prd/agents/edge-case-finder.md +48 -48
  240. package/skills/create-prd/agents/prioritizer.md +60 -60
  241. package/skills/create-prd/agents/requirements-writer.md +48 -48
  242. package/skills/create-prd/agents/researcher.md +55 -55
  243. package/skills/create-prd/agents/reviewer.md +54 -54
  244. package/skills/create-prd/frameworks/jobs-to-be-done.md +96 -96
  245. package/skills/create-prd/frameworks/rice-scoring.md +97 -97
  246. package/skills/create-prd/orchestrator.md +70 -70
  247. package/skills/create-prd/rubrics/completeness.md +58 -58
  248. package/skills/create-prd/templates/prd.md +139 -139
  249. package/skills/design-audit/SKILL.md +152 -152
  250. package/skills/design-audit/agents/a11y-auditor.md +43 -43
  251. package/skills/design-audit/agents/performance-auditor.md +46 -46
  252. package/skills/design-audit/agents/responsive-auditor.md +46 -46
  253. package/skills/design-audit/agents/scorer.md +47 -47
  254. package/skills/design-audit/agents/slop-detector.md +47 -47
  255. package/skills/design-audit/frameworks/core-web-vitals.md +107 -107
  256. package/skills/design-audit/frameworks/wcag-checklist.md +64 -64
  257. package/skills/design-audit/orchestrator.md +64 -64
  258. package/skills/design-audit/rubrics/ai-slop-patterns.md +83 -83
  259. package/skills/design-audit/rubrics/scoring.md +63 -63
  260. package/skills/design-audit/templates/report.md +88 -88
  261. package/skills/design-critique/SKILL.md +139 -139
  262. package/skills/design-critique/rubrics/ux-heuristics.md +143 -143
  263. package/skills/design-critique/templates/critique-report.md +86 -86
  264. package/skills/design-distill/SKILL.md +130 -130
  265. package/skills/design-distill/templates/design-system.md +132 -132
  266. package/skills/design-normalize/SKILL.md +133 -133
  267. package/skills/design-normalize/rubrics/token-naming.md +117 -117
  268. package/skills/design-normalize/templates/token-audit.md +89 -89
  269. package/skills/design-polish/SKILL.md +131 -131
  270. package/skills/design-polish/rubrics/polish-checklist.md +68 -68
  271. package/skills/design-polish/templates/polish-report.md +64 -64
  272. package/skills/design-teach/SKILL.md +182 -182
  273. package/skills/design-teach/rubrics/brand-personality.md +73 -73
  274. package/skills/design-teach/templates/design-context.json +36 -36
  275. package/skills/e2e-commerce/SKILL.md +62 -62
  276. package/skills/e2e-commerce/templates/test-scenarios.md +170 -170
  277. package/skills/event-comms/SKILL.md +162 -162
  278. package/skills/event-comms/templates/email-invite.md +99 -99
  279. package/skills/event-comms/templates/sns-post.md +133 -133
  280. package/skills/event-ops/SKILL.md +198 -198
  281. package/skills/event-ops/rubrics/contingency.md +85 -85
  282. package/skills/event-ops/templates/d-day-checklist.md +65 -65
  283. package/skills/event-planning/SKILL.md +132 -132
  284. package/skills/event-planning/rubrics/timeline.md +70 -70
  285. package/skills/event-planning/templates/event-plan.md +91 -91
  286. package/skills/exec-plan/SKILL.md +149 -149
  287. package/skills/exec-plan/agents/decomposer.md +47 -47
  288. package/skills/exec-plan/agents/dependency-mapper.md +44 -44
  289. package/skills/exec-plan/agents/estimator.md +43 -43
  290. package/skills/exec-plan/agents/validator.md +55 -55
  291. package/skills/exec-plan/orchestrator.md +70 -70
  292. package/skills/exec-plan/rubrics/complexity-scoring.md +75 -75
  293. package/skills/exec-plan/templates/plan.md +147 -147
  294. package/skills/git-worktree/SKILL.md +73 -73
  295. package/skills/git-worktree/rubrics/when-to-use.md +55 -55
  296. package/skills/handoff/SKILL.md +110 -110
  297. package/skills/handoff/agents/context-summarizer.md +51 -51
  298. package/skills/handoff/agents/document-writer.md +63 -63
  299. package/skills/handoff/agents/state-collector.md +53 -53
  300. package/skills/handoff/agents/verifier.md +48 -48
  301. package/skills/handoff/rubrics/completeness.md +62 -62
  302. package/skills/handoff/templates/handoff.md +107 -107
  303. package/skills/parallel-research/SKILL.md +89 -89
  304. package/skills/parallel-research/agents/best-practices.md +43 -43
  305. package/skills/parallel-research/agents/codebase-patterns.md +46 -46
  306. package/skills/parallel-research/agents/framework-docs.md +45 -45
  307. package/skills/parallel-research/agents/security-advisory.md +46 -46
  308. package/skills/parallel-research/agents/synthesizer.md +52 -52
  309. package/skills/parallel-research/experts/best-practices.md +50 -50
  310. package/skills/parallel-research/experts/codebase-patterns.md +70 -70
  311. package/skills/parallel-research/experts/framework-docs.md +65 -65
  312. package/skills/parallel-research/experts/security-advisory.md +69 -69
  313. package/skills/parallel-research/orchestrator.md +65 -65
  314. package/skills/parallel-research/templates/synthesis.md +101 -101
  315. package/skills/prioritization-frameworks/SKILL.md +87 -87
  316. package/skills/prioritization-frameworks/rubrics/frameworks.md +79 -79
  317. package/skills/prioritization-frameworks/templates/scoring-matrix.md +69 -69
  318. package/skills/priority-todos/SKILL.md +64 -64
  319. package/skills/priority-todos/rubrics/prioritization.md +70 -70
  320. package/skills/priority-todos/templates/todo-board.md +59 -59
  321. package/skills/seo-checklist/SKILL.md +58 -58
  322. package/skills/seo-checklist/frameworks/structured-data.md +153 -153
  323. package/skills/seo-checklist/rubrics/content-seo.md +42 -42
  324. package/skills/seo-checklist/rubrics/technical-seo.md +48 -48
  325. package/skills/techdebt/SKILL.md +124 -124
  326. package/skills/techdebt/agents/analyzer.md +50 -50
  327. package/skills/techdebt/agents/fixer.md +41 -41
  328. package/skills/techdebt/agents/reviewer.md +47 -47
  329. package/skills/techdebt/agents/scanner.md +44 -44
  330. package/skills/techdebt/orchestrator.md +70 -70
  331. package/skills/techdebt/rubrics/severity.md +51 -51
  332. package/skills/techdebt/scripts/scan.js +90 -90
  333. package/skills/techdebt/templates/report.md +86 -86
  334. package/skills/tool-fallback/SKILL.md +104 -104
  335. package/skills/tool-fallback/rubrics/fallback-chain.md +58 -58
  336. package/skills/typescript-advanced-types/SKILL.md +67 -67
  337. package/skills/typescript-advanced-types/rubrics/type-patterns.md +109 -109
  338. package/skills/ui-ux-pro-max/SKILL.md +236 -236
  339. package/skills/ui-ux-pro-max/reference/color-and-contrast.md +517 -517
  340. package/skills/ui-ux-pro-max/reference/interaction-design.md +544 -544
  341. package/skills/ui-ux-pro-max/reference/motion-design.md +591 -591
  342. package/skills/ui-ux-pro-max/reference/responsive-design.md +463 -463
  343. package/skills/ui-ux-pro-max/reference/spatial-design.md +390 -390
  344. package/skills/ui-ux-pro-max/reference/typography.md +455 -455
  345. package/skills/ui-ux-pro-max/reference/ux-writing.md +469 -469
  346. package/skills/ui-ux-pro-max/rubrics/interaction-states.md +83 -83
  347. package/skills/ui-ux-pro-max/rubrics/responsive-breakpoints.md +99 -99
  348. package/skills/user-personas/SKILL.md +75 -75
  349. package/skills/user-personas/rubrics/research-methods.md +56 -56
  350. package/skills/user-personas/templates/persona.md +89 -89
  351. package/skills/vercel-react-best-practices/SKILL.md +60 -60
  352. package/skills/vercel-react-best-practices/rubrics/performance.md +82 -82
  353. package/skills/vercel-react-best-practices/rubrics/server-components.md +86 -86
  354. package/skills/vibe.docs/SKILL.md +171 -171
  355. package/skills/vibe.docs/templates/architecture.md +80 -80
  356. package/skills/vibe.docs/templates/readme.md +84 -84
  357. package/skills/vibe.docs/templates/release-notes.md +74 -74
  358. package/skills/vibe.figma/SKILL.md +215 -982
  359. package/skills/vibe.figma/rubrics/extraction-checklist.md +51 -51
  360. package/skills/vibe.figma/templates/component-index.md +126 -126
  361. package/skills/vibe.figma/templates/figma-handoff.md +100 -100
  362. package/skills/vibe.figma/templates/remapped-tree.md +277 -277
  363. package/skills/vibe.figma.convert/SKILL.md +188 -511
  364. package/skills/vibe.figma.convert/rubrics/conversion-rules.md +129 -113
  365. package/skills/vibe.figma.convert/templates/component.md +140 -140
  366. package/skills/vibe.figma.extract/SKILL.md +179 -300
  367. package/skills/vibe.figma.extract/rubrics/image-rules.md +145 -137
  368. package/skills/video-production/SKILL.md +52 -52
  369. package/skills/video-production/rubrics/quality-checklist.md +58 -58
  370. package/skills/video-production/templates/production-plan.md +104 -104
  371. package/vibe/config.json +29 -29
  372. package/vibe/constitution.md +227 -227
  373. package/vibe/rules/principles/communication-guide.md +98 -98
  374. package/vibe/rules/principles/development-philosophy.md +52 -52
  375. package/vibe/rules/principles/quick-start.md +102 -102
  376. package/vibe/rules/quality/bdd-contract-testing.md +393 -393
  377. package/vibe/rules/quality/checklist.md +276 -276
  378. package/vibe/rules/quality/performance.md +236 -236
  379. package/vibe/rules/quality/testing-strategy.md +440 -440
  380. package/vibe/rules/standards/anti-patterns.md +541 -541
  381. package/vibe/rules/standards/code-structure.md +291 -291
  382. package/vibe/rules/standards/complexity-metrics.md +313 -313
  383. package/vibe/rules/standards/git-workflow.md +237 -237
  384. package/vibe/rules/standards/naming-conventions.md +198 -198
  385. package/vibe/rules/standards/security.md +305 -305
  386. package/vibe/rules/writing/document-style.md +74 -74
  387. package/vibe/setup.sh +31 -31
  388. package/vibe/templates/constitution-template.md +252 -252
  389. package/vibe/templates/contract-backend-template.md +526 -526
  390. package/vibe/templates/contract-frontend-template.md +599 -599
  391. package/vibe/templates/feature-template.md +96 -96
  392. package/vibe/templates/spec-template.md +221 -221
  393. package/vibe/ui-ux-data/charts.csv +26 -26
  394. package/vibe/ui-ux-data/colors.csv +97 -97
  395. package/vibe/ui-ux-data/icons.csv +101 -101
  396. package/vibe/ui-ux-data/landing.csv +31 -31
  397. package/vibe/ui-ux-data/products.csv +96 -96
  398. package/vibe/ui-ux-data/react-performance.csv +45 -45
  399. package/vibe/ui-ux-data/stacks/astro.csv +54 -54
  400. package/vibe/ui-ux-data/stacks/flutter.csv +53 -53
  401. package/vibe/ui-ux-data/stacks/html-tailwind.csv +56 -56
  402. package/vibe/ui-ux-data/stacks/jetpack-compose.csv +53 -53
  403. package/vibe/ui-ux-data/stacks/nextjs.csv +53 -53
  404. package/vibe/ui-ux-data/stacks/nuxt-ui.csv +51 -51
  405. package/vibe/ui-ux-data/stacks/nuxtjs.csv +59 -59
  406. package/vibe/ui-ux-data/stacks/react-native.csv +52 -52
  407. package/vibe/ui-ux-data/stacks/react.csv +54 -54
  408. package/vibe/ui-ux-data/stacks/shadcn.csv +61 -61
  409. package/vibe/ui-ux-data/stacks/svelte.csv +54 -54
  410. package/vibe/ui-ux-data/stacks/swiftui.csv +51 -51
  411. package/vibe/ui-ux-data/stacks/vue.csv +50 -50
  412. package/vibe/ui-ux-data/styles.csv +68 -68
  413. package/vibe/ui-ux-data/typography.csv +57 -57
  414. package/vibe/ui-ux-data/ui-reasoning.csv +101 -101
  415. package/vibe/ui-ux-data/ux-guidelines.csv +99 -99
  416. package/vibe/ui-ux-data/version.json +31 -31
  417. 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 |