@su-record/vibe 2.9.32 → 2.9.34

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