@su-record/vibe 2.16.4 → 3.0.0

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 (267) hide show
  1. package/CLAUDE.md +8 -8
  2. package/README.en.md +46 -29
  3. package/README.md +41 -24
  4. package/agents/acceptance-tester.md +56 -0
  5. package/agents/architect.md +25 -67
  6. package/agents/build-error-resolver.md +28 -97
  7. package/agents/code-reviewer.md +89 -0
  8. package/agents/diagrammer.md +34 -169
  9. package/agents/documenter.md +43 -0
  10. package/agents/e2e-tester.md +46 -281
  11. package/agents/event/event-ops.md +54 -77
  12. package/agents/event/event-planner.md +63 -0
  13. package/agents/figma/figma-engineer.md +76 -0
  14. package/agents/implementer.md +26 -41
  15. package/agents/security-reviewer.md +56 -0
  16. package/agents/tester.md +37 -33
  17. package/agents/ui/design-reviewer.md +62 -0
  18. package/agents/ui/design-system-gen.md +63 -0
  19. package/dist/cli/commands/remove.d.ts.map +1 -1
  20. package/dist/cli/commands/remove.js +8 -10
  21. package/dist/cli/commands/remove.js.map +1 -1
  22. package/dist/cli/index.d.ts +0 -4
  23. package/dist/cli/index.d.ts.map +1 -1
  24. package/dist/cli/index.js +0 -4
  25. package/dist/cli/index.js.map +1 -1
  26. package/dist/cli/llm/model-refresh.js +1 -1
  27. package/dist/cli/llm/model-refresh.js.map +1 -1
  28. package/dist/cli/postinstall/claude-agents.d.ts.map +1 -1
  29. package/dist/cli/postinstall/claude-agents.js +16 -77
  30. package/dist/cli/postinstall/claude-agents.js.map +1 -1
  31. package/dist/cli/postinstall/constants.d.ts.map +1 -1
  32. package/dist/cli/postinstall/constants.js +80 -296
  33. package/dist/cli/postinstall/constants.js.map +1 -1
  34. package/dist/cli/postinstall/cursor-agents.d.ts +5 -0
  35. package/dist/cli/postinstall/cursor-agents.d.ts.map +1 -1
  36. package/dist/cli/postinstall/cursor-agents.js +26 -68
  37. package/dist/cli/postinstall/cursor-agents.js.map +1 -1
  38. package/dist/cli/postinstall/cursor-skills.d.ts.map +1 -1
  39. package/dist/cli/postinstall/cursor-skills.js +26 -30
  40. package/dist/cli/postinstall/cursor-skills.js.map +1 -1
  41. package/dist/cli/postinstall/main.d.ts.map +1 -1
  42. package/dist/cli/postinstall/main.js +0 -2
  43. package/dist/cli/postinstall/main.js.map +1 -1
  44. package/dist/cli/setup/Provisioner.d.ts.map +1 -1
  45. package/dist/cli/setup/Provisioner.js +19 -21
  46. package/dist/cli/setup/Provisioner.js.map +1 -1
  47. package/dist/cli/utils.d.ts +4 -1
  48. package/dist/cli/utils.d.ts.map +1 -1
  49. package/dist/cli/utils.js +4 -1
  50. package/dist/cli/utils.js.map +1 -1
  51. package/dist/infra/lib/FrameworkDetector.js +4 -4
  52. package/dist/infra/lib/FrameworkDetector.js.map +1 -1
  53. package/dist/infra/lib/OrchestrateWorkflow.js +2 -2
  54. package/dist/infra/lib/OrchestrateWorkflow.js.map +1 -1
  55. package/dist/infra/lib/browser/launch.js +1 -1
  56. package/dist/infra/lib/browser/launch.js.map +1 -1
  57. package/dist/infra/lib/browser/types.d.ts +1 -1
  58. package/dist/infra/lib/browser/types.js +1 -1
  59. package/dist/infra/lib/constants.d.ts +1 -1
  60. package/dist/infra/lib/constants.d.ts.map +1 -1
  61. package/dist/infra/lib/constants.js +4 -5
  62. package/dist/infra/lib/constants.js.map +1 -1
  63. package/dist/infra/lib/evolution/__tests__/integration.test.js +7 -7
  64. package/dist/infra/lib/evolution/__tests__/integration.test.js.map +1 -1
  65. package/dist/infra/lib/memory/index.d.ts +0 -2
  66. package/dist/infra/lib/memory/index.d.ts.map +1 -1
  67. package/dist/infra/lib/memory/index.js +0 -2
  68. package/dist/infra/lib/memory/index.js.map +1 -1
  69. package/dist/infra/lib/telemetry/SkillTelemetry.test.js +1 -1
  70. package/dist/infra/lib/telemetry/SkillTelemetry.test.js.map +1 -1
  71. package/dist/tools/index.d.ts +0 -4
  72. package/dist/tools/index.d.ts.map +1 -1
  73. package/dist/tools/index.js +0 -4
  74. package/dist/tools/index.js.map +1 -1
  75. package/dist/tools/memory/autoSaveContext.d.ts +0 -1
  76. package/dist/tools/memory/autoSaveContext.d.ts.map +1 -1
  77. package/dist/tools/memory/autoSaveContext.js +13 -27
  78. package/dist/tools/memory/autoSaveContext.js.map +1 -1
  79. package/hooks/scripts/__tests__/code-check-detectors.test.js +2 -2
  80. package/hooks/scripts/__tests__/run-ledger.test.js +1 -1
  81. package/hooks/scripts/__tests__/scope-from-spec.test.js +12 -12
  82. package/hooks/scripts/__tests__/step-counter.test.js +1 -1
  83. package/hooks/scripts/code-check.js +16 -203
  84. package/hooks/scripts/context-save.js +0 -11
  85. package/hooks/scripts/lib/scope-from-spec.js +9 -6
  86. package/hooks/scripts/post-edit-dispatcher.js +1 -1
  87. package/hooks/scripts/prompt-dispatcher.js +7 -18
  88. package/hooks/scripts/session-start.js +25 -35
  89. package/package.json +2 -4
  90. package/skills/agents-md/SKILL.md +62 -15
  91. package/skills/arch-guard/SKILL.md +1 -1
  92. package/skills/brand-assets/SKILL.md +2 -2
  93. package/skills/capability-loop/SKILL.md +1 -1
  94. package/skills/chub-usage/SKILL.md +1 -1
  95. package/skills/commerce-patterns/SKILL.md +2 -2
  96. package/skills/commit-push-pr/SKILL.md +0 -1
  97. package/skills/context7-usage/SKILL.md +1 -1
  98. package/skills/design-refine/SKILL.md +140 -0
  99. package/skills/{design-polish → design-refine}/templates/polish-report.md +1 -1
  100. package/skills/{design-normalize → design-refine}/templates/token-audit.md +3 -3
  101. package/skills/design-review/SKILL.md +143 -0
  102. package/skills/{design-audit → design-review}/agents/a11y-auditor.md +1 -1
  103. package/skills/{design-audit → design-review}/agents/performance-auditor.md +1 -1
  104. package/skills/{design-audit → design-review}/agents/responsive-auditor.md +1 -1
  105. package/skills/{design-audit → design-review}/agents/slop-detector.md +1 -1
  106. package/skills/{design-audit → design-review}/frameworks/core-web-vitals.md +1 -1
  107. package/skills/{design-audit → design-review}/frameworks/wcag-checklist.md +1 -1
  108. package/skills/{design-audit → design-review}/orchestrator.md +3 -3
  109. package/skills/{design-critique → design-review}/templates/critique-report.md +3 -3
  110. package/skills/{design-audit → design-review}/templates/report.md +3 -3
  111. package/skills/design-teach/SKILL.md +11 -11
  112. package/skills/docs/SKILL.md +14 -16
  113. package/skills/e2e-commerce/SKILL.md +1 -1
  114. package/skills/event-comms/SKILL.md +1 -1
  115. package/skills/event-ops/SKILL.md +2 -2
  116. package/skills/event-planning/SKILL.md +1 -1
  117. package/skills/exec-plan/SKILL.md +2 -2
  118. package/skills/figma/SKILL.md +240 -148
  119. package/skills/figma/rubrics/css-mapping.md +125 -0
  120. package/skills/git-worktree/SKILL.md +1 -1
  121. package/skills/handoff/SKILL.md +1 -1
  122. package/skills/parallel-research/SKILL.md +14 -28
  123. package/skills/priority-todos/SKILL.md +1 -1
  124. package/skills/regress/SKILL.md +11 -0
  125. package/skills/restraint/SKILL.md +72 -0
  126. package/skills/seo-checklist/SKILL.md +2 -2
  127. package/skills/spec/SKILL.md +65 -836
  128. package/skills/test/SKILL.md +3 -3
  129. package/skills/tool-fallback/SKILL.md +2 -2
  130. package/skills/vercel-react-best-practices/SKILL.md +1 -1
  131. package/skills/vibe/SKILL.md +20 -35
  132. package/skills/vibe.analyze/SKILL.md +7 -9
  133. package/skills/vibe.docs/SKILL.md +1 -1
  134. package/skills/vibe.event/SKILL.md +27 -27
  135. package/skills/vibe.figma/SKILL.md +14 -18
  136. package/skills/vibe.harness/SKILL.md +5 -5
  137. package/skills/vibe.reason/SKILL.md +0 -2
  138. package/skills/vibe.review/SKILL.md +45 -49
  139. package/skills/vibe.run/SKILL.md +2 -5
  140. package/skills/vibe.run/references/parallel-agents.md +33 -98
  141. package/skills/vibe.spec/SKILL.md +38 -535
  142. package/skills/vibe.utils/SKILL.md +3 -3
  143. package/skills/vibe.verify/SKILL.md +70 -542
  144. package/skills/video-production/SKILL.md +1 -1
  145. package/vibe/rules/orchestrator-contract.md +5 -4
  146. package/vibe/rules/quality/performance.md +1 -1
  147. package/vibe/templates/claudemd-template.md +1 -1
  148. package/vibe/templates/spec-template.md +35 -185
  149. package/agents/architect-low.md +0 -41
  150. package/agents/architect-medium.md +0 -59
  151. package/agents/compounder.md +0 -265
  152. package/agents/docs/api-documenter.md +0 -99
  153. package/agents/docs/changelog-writer.md +0 -93
  154. package/agents/event/event-comms.md +0 -78
  155. package/agents/event/event-content.md +0 -68
  156. package/agents/event/event-image.md +0 -95
  157. package/agents/event/event-scheduler.md +0 -69
  158. package/agents/event/event-speaker.md +0 -86
  159. package/agents/explorer-low.md +0 -42
  160. package/agents/explorer-medium.md +0 -59
  161. package/agents/explorer.md +0 -48
  162. package/agents/figma/figma-analyst.md +0 -56
  163. package/agents/figma/figma-architect.md +0 -116
  164. package/agents/figma/figma-auditor.md +0 -86
  165. package/agents/figma/figma-builder.md +0 -104
  166. package/agents/implementer-low.md +0 -43
  167. package/agents/implementer-medium.md +0 -52
  168. package/agents/junior-mentor.md +0 -141
  169. package/agents/planning/requirements-analyst.md +0 -84
  170. package/agents/planning/ux-advisor.md +0 -83
  171. package/agents/qa/acceptance-tester.md +0 -86
  172. package/agents/qa/edge-case-finder.md +0 -93
  173. package/agents/qa/qa-coordinator.md +0 -131
  174. package/agents/refactor-cleaner.md +0 -143
  175. package/agents/research/best-practices.md +0 -199
  176. package/agents/research/codebase-patterns.md +0 -157
  177. package/agents/research/framework-docs.md +0 -188
  178. package/agents/research/security-advisory.md +0 -213
  179. package/agents/review/architecture-reviewer.md +0 -107
  180. package/agents/review/complexity-reviewer.md +0 -116
  181. package/agents/review/data-integrity-reviewer.md +0 -88
  182. package/agents/review/git-history-reviewer.md +0 -103
  183. package/agents/review/performance-reviewer.md +0 -86
  184. package/agents/review/python-reviewer.md +0 -150
  185. package/agents/review/rails-reviewer.md +0 -139
  186. package/agents/review/react-reviewer.md +0 -144
  187. package/agents/review/security-reviewer.md +0 -80
  188. package/agents/review/simplicity-reviewer.md +0 -140
  189. package/agents/review/test-coverage-reviewer.md +0 -116
  190. package/agents/review/typescript-reviewer.md +0 -127
  191. package/agents/searcher.md +0 -54
  192. package/agents/simplifier.md +0 -124
  193. package/agents/teams/debug-team.md +0 -74
  194. package/agents/teams/dev-team.md +0 -92
  195. package/agents/teams/docs-team.md +0 -84
  196. package/agents/teams/figma-team.md +0 -89
  197. package/agents/teams/fullstack-team.md +0 -87
  198. package/agents/teams/lite-team.md +0 -73
  199. package/agents/teams/migration-team.md +0 -82
  200. package/agents/teams/refactor-team.md +0 -98
  201. package/agents/teams/research-team.md +0 -90
  202. package/agents/teams/review-debate-team.md +0 -129
  203. package/agents/teams/security-team.md +0 -85
  204. package/agents/ui/ui-a11y-auditor.md +0 -93
  205. package/agents/ui/ui-antipattern-detector.md +0 -102
  206. package/agents/ui/ui-dataviz-advisor.md +0 -69
  207. package/agents/ui/ui-design-system-gen.md +0 -57
  208. package/agents/ui/ui-industry-analyzer.md +0 -49
  209. package/agents/ui/ui-layout-architect.md +0 -65
  210. package/agents/ui/ui-stack-implementer.md +0 -68
  211. package/agents/ui/ux-compliance-reviewer.md +0 -81
  212. package/agents/ui-previewer.md +0 -262
  213. package/hooks/scripts/__tests__/keyword-detector.test.js +0 -242
  214. package/hooks/scripts/keyword-detector.js +0 -226
  215. package/skills/characterization-test/SKILL.md +0 -209
  216. package/skills/characterization-test/agents/behavior-capturer.md +0 -50
  217. package/skills/characterization-test/agents/coverage-checker.md +0 -54
  218. package/skills/characterization-test/agents/reporter.md +0 -50
  219. package/skills/characterization-test/agents/test-writer.md +0 -49
  220. package/skills/characterization-test/rubrics/coverage-criteria.md +0 -53
  221. package/skills/characterization-test/templates/test-template.ts +0 -101
  222. package/skills/claude-md-guide/SKILL.md +0 -353
  223. package/skills/claude-md-guide/rubrics/anti-patterns.md +0 -88
  224. package/skills/design-audit/SKILL.md +0 -154
  225. package/skills/design-critique/SKILL.md +0 -140
  226. package/skills/design-distill/SKILL.md +0 -131
  227. package/skills/design-normalize/SKILL.md +0 -135
  228. package/skills/design-polish/SKILL.md +0 -132
  229. package/skills/figma-convert/SKILL.md +0 -236
  230. package/skills/figma-extract/SKILL.md +0 -242
  231. package/skills/interview/SKILL.md +0 -358
  232. package/skills/interview/checklists/api.md +0 -101
  233. package/skills/interview/checklists/feature.md +0 -88
  234. package/skills/interview/checklists/library.md +0 -95
  235. package/skills/interview/checklists/mobile.md +0 -89
  236. package/skills/interview/checklists/webapp.md +0 -97
  237. package/skills/interview/checklists/website.md +0 -99
  238. package/skills/plan/SKILL.md +0 -254
  239. package/skills/rob-pike/SKILL.md +0 -66
  240. package/skills/spec/references/askuser-examples.md +0 -57
  241. package/skills/spec/references/example-session.md +0 -87
  242. package/skills/spec/references/templates.md +0 -194
  243. package/skills/spec-review/SKILL.md +0 -725
  244. package/skills/systematic-debugging/SKILL.md +0 -142
  245. package/skills/techdebt/SKILL.md +0 -126
  246. package/skills/techdebt/agents/analyzer.md +0 -50
  247. package/skills/techdebt/agents/fixer.md +0 -41
  248. package/skills/techdebt/agents/reviewer.md +0 -47
  249. package/skills/techdebt/agents/scanner.md +0 -44
  250. package/skills/techdebt/orchestrator.md +0 -72
  251. package/skills/techdebt/rubrics/severity.md +0 -51
  252. package/skills/techdebt/scripts/scan.js +0 -90
  253. package/skills/techdebt/templates/report.md +0 -86
  254. package/skills/typescript-advanced-types/SKILL.md +0 -68
  255. package/skills/typescript-advanced-types/rubrics/type-patterns.md +0 -109
  256. package/skills/yagni-ladder/SKILL.md +0 -90
  257. /package/skills/{claude-md-guide → agents-md}/templates/claude-md.md +0 -0
  258. /package/skills/{design-polish → design-refine}/rubrics/polish-checklist.md +0 -0
  259. /package/skills/{design-normalize → design-refine}/rubrics/token-naming.md +0 -0
  260. /package/skills/{design-distill → design-refine}/templates/design-system.md +0 -0
  261. /package/skills/{design-audit → design-review}/agents/scorer.md +0 -0
  262. /package/skills/{design-audit → design-review}/rubrics/ai-slop-patterns.md +0 -0
  263. /package/skills/{design-audit → design-review}/rubrics/scoring.md +0 -0
  264. /package/skills/{design-critique → design-review}/rubrics/ux-heuristics.md +0 -0
  265. /package/skills/{figma-convert → figma}/rubrics/conversion-rules.md +0 -0
  266. /package/skills/{figma-extract → figma}/rubrics/image-rules.md +0 -0
  267. /package/skills/{figma-convert → figma}/templates/component.md +0 -0
@@ -1,140 +0,0 @@
1
- ---
2
- name: design-critique
3
- invocation: [auto]
4
- tier: standard
5
- description: "UX design review — Nielsen heuristics scoring, 5-persona red flag analysis. Use when design-critique, ux-review, design-review."
6
- triggers: [design-critique, ux-review, design-review]
7
- priority: 50
8
- ---
9
-
10
- # Design Critique — UX Design Review
11
-
12
- Evaluate design quality through Nielsen's 10 usability heuristics and 5 persona lenses. Report only — no code modifications.
13
-
14
- ## Usage
15
-
16
- ```
17
- /design-critique <target> # Critique specific page/flow
18
- /design-critique . # Critique all changed UI files
19
- ```
20
-
21
- ## Nielsen's 10 Heuristics (0–4 Score Each)
22
-
23
- | # | Heuristic | What to Check |
24
- |---|-----------|---------------|
25
- | H1 | Visibility of system status | Loading indicators, progress bars, state feedback |
26
- | H2 | Match between system and real world | Natural language, familiar icons, logical groupings |
27
- | H3 | User control and freedom | Undo/redo, cancel actions, exit paths |
28
- | H4 | Consistency and standards | Same action = same pattern, platform conventions |
29
- | H5 | Error prevention | Confirmation dialogs, input constraints, disabled states |
30
- | H6 | Recognition rather than recall | Visible options, contextual help, breadcrumbs |
31
- | H7 | Flexibility and efficiency | Keyboard shortcuts, defaults, power user paths |
32
- | H8 | Aesthetic and minimalist design | Signal-to-noise ratio, essential info only |
33
- | H9 | Help users recognize and recover from errors | Clear error messages, suggested fixes |
34
- | H10 | Help and documentation | Tooltips, onboarding, contextual guidance |
35
-
36
- ### Scoring
37
-
38
- | Score | Meaning |
39
- |-------|---------|
40
- | 0 | Violated — causes real user problems |
41
- | 1 | Weak — frequent friction points |
42
- | 2 | Adequate — works but not smooth |
43
- | 3 | Good — minor friction only |
44
- | 4 | Excellent — delightful experience |
45
-
46
- ## 5-Persona Red Flag Analysis
47
-
48
- Test the design through these persona lenses:
49
-
50
- ### 1. Power User
51
- - Can they complete tasks quickly?
52
- - Are there keyboard shortcuts or bulk actions?
53
- - Is information density appropriate (not too sparse)?
54
-
55
- ### 2. First-Time User
56
- - Is the entry point obvious?
57
- - Can they complete the primary task without documentation?
58
- - Is progressive disclosure used (not overwhelming)?
59
-
60
- ### 3. Accessibility-Dependent User
61
- - Screen reader navigation makes sense?
62
- - Color is not the only information channel?
63
- - Text is resizable without breaking layout?
64
-
65
- ### 4. Stressed / Distracted User
66
- - Can they recover from mistakes easily?
67
- - Are destructive actions clearly guarded?
68
- - Is critical information scannable (not buried in paragraphs)?
69
-
70
- ### 5. Mobile-Only User
71
- - Touch targets adequate?
72
- - Key actions reachable with one thumb?
73
- - Forms don't require excessive typing?
74
-
75
- ## Platform Adaptation
76
-
77
- When running on mobile stacks (React Native, Flutter, iOS, Android):
78
- - Focus on platform-specific UX conventions (gestures, navigation patterns)
79
- - Evaluate against platform HIG (Human Interface Guidelines / Material Design)
80
- - Skip web-specific heuristic items (breadcrumbs, URL-based navigation)
81
-
82
- ## Output Format
83
-
84
- ```markdown
85
- ## Design Critique: {target}
86
-
87
- ### Heuristic Scores
88
- | # | Heuristic | Score | Key Issue |
89
- |---|-----------|-------|-----------|
90
- | H1 | Visibility of system status | 2/4 | No loading state on form submit |
91
- | H2 | Match real world | 4/4 | — |
92
- | H3 | User control | 1/4 | No undo on delete |
93
- | ... | ... | ... | ... |
94
- | **Total** | | **28/40** | **70%** |
95
-
96
- ### Persona Red Flags
97
-
98
- #### Power User 🔴
99
- - No keyboard shortcut for primary action
100
- - Table lacks bulk selection
101
-
102
- #### First-Time User 🟡
103
- - CTA is clear but secondary options are confusing
104
-
105
- #### Accessibility-Dependent User 🔴
106
- - Color-only status indicators (red/green dots)
107
-
108
- #### Stressed User 🟢
109
- - Confirmation dialog on destructive actions ✓
110
-
111
- #### Mobile-Only User 🟡
112
- - Settings buried 3 levels deep
113
-
114
- ### Top Recommendations
115
- 1. {Priority-ordered design improvements}
116
- ```
117
-
118
- ## Preparation
119
-
120
- Before running the critique:
121
-
122
- 1. **Read** `.vibe/design-context.json`
123
- - If missing → display: "Run `/design-teach` first for better results" → proceed with defaults
124
- - If parse error → display warning → proceed with defaults → recommend `/design-teach`
125
- - If present → adjust persona priorities by `audience.primary` and `audience.expertise`
126
- 2. **Read** brand personality to calibrate aesthetic expectations
127
-
128
- ## Next Steps
129
-
130
- | If Result Shows | Recommended Next |
131
- |----------------|-----------------|
132
- | Visual complexity / clutter | `/design-distill` — remove unnecessary elements |
133
- | Token inconsistencies noted | `/design-normalize` — align to design system |
134
- | Good overall, minor polish needed | `/design-polish` — final pass |
135
-
136
- ## Important
137
-
138
- - **Read-only**: Produces design critique report. No code modifications.
139
- - **Context-aware**: Uses `.vibe/design-context.json` for brand/audience context if available.
140
- - **Complementary**: Pairs with `/design-audit` (technical) — critique focuses on UX quality.
@@ -1,131 +0,0 @@
1
- ---
2
- name: design-distill
3
- invocation: [auto]
4
- tier: standard
5
- description: "Remove unnecessary visual complexity — strip decorative clutter, apply progressive disclosure, simplify UI to essentials. Use when design-distill, simplify-ui, ui-simplify, strip-ui."
6
- triggers: [design-distill, simplify-ui, ui-simplify, strip-ui]
7
- priority: 50
8
- ---
9
-
10
- # Design Distill — Remove Visual Complexity
11
-
12
- Strip unnecessary visual elements. Every remaining element must justify its existence. Applies the principle: **if it doesn't help the user complete their task, remove it.**
13
-
14
- ## Usage
15
-
16
- ```
17
- /design-distill <target> # Distill specific page/component
18
- /design-distill . # Distill all changed UI files
19
- ```
20
-
21
- ## What Gets Distilled
22
-
23
- ### 1. Decorative Clutter
24
-
25
- - Gradient backgrounds that don't convey hierarchy
26
- - Decorative dividers between already-spaced sections
27
- - Background patterns or textures without purpose
28
- - Ornamental icons (icons that don't aid comprehension)
29
- - Excessive border/shadow stacking on nested containers
30
-
31
- ### 2. Redundant Information
32
-
33
- - Headings that repeat the page title or parent context
34
- - Labels that duplicate placeholder text
35
- - "Welcome to {App}" banners on authenticated pages
36
- - Empty state illustrations when a simple message suffices
37
- - Descriptions restating what the UI element obviously does
38
-
39
- ### 3. Over-Wrapped Containers
40
-
41
- - Cards wrapping single elements (card containing only a button)
42
- - Nested cards (card inside card inside card)
43
- - Wrapper divs with only cosmetic purpose
44
- - Sections with only one child element
45
-
46
- ### 4. Excessive Animation
47
-
48
- - Entry animations on every element (staggered fade-ins on list items)
49
- - Hover animations on non-interactive elements
50
- - Transitions > 300ms for feedback (feels sluggish)
51
- - Parallax effects on content pages
52
- - Decorative loading animations when a spinner suffices
53
-
54
- ### 5. Progressive Disclosure Opportunities
55
-
56
- - Settings pages showing all options at once → group and collapse
57
- - Forms with 10+ fields visible → break into steps
58
- - Dashboards showing every metric → show top 3, expandable for rest
59
- - Navigation with 8+ top-level items → group into categories
60
-
61
- ## Distillation Principles
62
-
63
- | Principle | Question to Ask |
64
- |-----------|----------------|
65
- | **Purpose** | Does this element help the user complete a task? |
66
- | **Duplication** | Is this information available elsewhere on screen? |
67
- | **Cognitive load** | Would removing this reduce decision fatigue? |
68
- | **Visual weight** | Does this element compete with more important content? |
69
- | **Progressive disclosure** | Can this be hidden until needed? |
70
-
71
- ## Process
72
-
73
- 1. Read target files fully
74
- 2. Identify elements matching distillation categories
75
- 3. For each candidate:
76
- - Verify removal won't break functionality
77
- - Check if element carries semantic meaning
78
- - Confirm removal improves signal-to-noise ratio
79
- 4. Apply removals and simplifications
80
- 5. Report changes with before/after rationale
81
-
82
- ## Output Format
83
-
84
- ```markdown
85
- ## Design Distill: {target}
86
-
87
- ### Removed
88
- - ✂️ {file}:{line} — Decorative gradient background (no hierarchy purpose)
89
- - ✂️ {file}:{line} — Wrapper card around single button
90
- - ✂️ {file}:{line} — Heading repeating parent page title
91
-
92
- ### Simplified
93
- - 🔄 {file}:{line} — Collapsed 3 nested divs into 1 flex container
94
- - 🔄 {file}:{line} — Replaced staggered animation with single fade-in
95
-
96
- ### Progressive Disclosure Applied
97
- - 📦 {file}:{line} — Settings grouped into collapsible sections (was 15 flat options)
98
-
99
- ### Preserved (Justified)
100
- - ✓ {file}:{line} — Decorative illustration on empty state (brand expression)
101
-
102
- ### Summary
103
- - Elements reviewed: {N}
104
- - Removed: {N}
105
- - Simplified: {N}
106
- - Progressive disclosure: {N}
107
- - Net complexity reduction: {percentage}
108
- ```
109
-
110
- ## Preparation
111
-
112
- Before running distillation:
113
-
114
- 1. **Read** `.vibe/design-context.json`
115
- - If missing → display: "Run `/design-teach` first for better results" → proceed with defaults
116
- - If parse error → display warning → proceed with defaults → recommend `/design-teach`
117
- - If present → preserve elements that match `brand.personality` (e.g., "playful" brand may justify decorative elements)
118
- 2. Use `aesthetic.style` to calibrate aggressiveness (minimal → more aggressive, bold → more lenient)
119
-
120
- ## Next Steps
121
-
122
- | If Result Shows | Recommended Next |
123
- |----------------|-----------------|
124
- | Elements removed/simplified | `/design-normalize` — align remaining tokens |
125
- | Already minimal | `/design-polish` — final pre-ship pass |
126
-
127
- ## Important
128
-
129
- - **Modifying**: Directly removes and simplifies identified elements.
130
- - **Conservative**: Only removes elements that clearly don't serve user tasks. Brand-expressive elements preserved.
131
- - **Reversible**: All removals listed in report for easy review and revert if needed.
@@ -1,135 +0,0 @@
1
- ---
2
- name: design-normalize
3
- user-invocable: true
4
- invocation: [command, auto]
5
- tier: standard
6
- description: "Normalize hardcoded values to design system tokens — colors, typography, spacing, shadows aligned to MASTER.md. Use when design-normalize, design-system, token-align."
7
- triggers: [design-normalize, design-system, token-align]
8
- priority: 50
9
- ---
10
-
11
- # Design Normalize — Design System Token Alignment
12
-
13
- Replace hardcoded design values with design system tokens from MASTER.md. Ensures visual consistency across the project.
14
-
15
- ## Usage
16
-
17
- ```
18
- /design-normalize # Normalize all changed UI files
19
- /design-normalize <target> # Normalize specific component/page
20
- ```
21
-
22
- ## Process
23
-
24
- ### Step 1: Load Design System
25
-
26
- Load token source in priority order:
27
-
28
- 1. `.vibe/design-system/{project}/MASTER.md` (project-specific)
29
- 2. `.vibe/design-context.json` (from `/design-teach`)
30
- 3. If neither exists → prompt: "Run `/design-teach` or create MASTER.md first. Proceeding with default token detection."
31
-
32
- ### Step 2: Scan for Hardcoded Values
33
-
34
- Detect these categories:
35
-
36
- | Category | Pattern | Example |
37
- |----------|---------|---------|
38
- | Colors | Hex `#xxx`, `#xxxxxx`, `rgb()`, `hsl()` | `#3B82F6` → `var(--color-primary)` |
39
- | Typography | `font-size: 14px`, `font-weight: 600` | `14px` → `var(--text-sm)` |
40
- | Spacing | `margin: 16px`, `padding: 24px`, `gap: 12px` | `16px` → `var(--space-4)` |
41
- | Shadows | `box-shadow: 0 2px 4px ...` | Inline → `var(--shadow-sm)` |
42
- | Border Radius | `border-radius: 8px` | `8px` → `var(--radius-md)` |
43
-
44
- ### Step 3: Map to Tokens
45
-
46
- For each hardcoded value:
47
-
48
- 1. Find closest matching token in MASTER.md
49
- 2. If exact match → replace directly
50
- 3. If close match (within 2px/similar hue) → replace + note the mapping
51
- 4. If no match → flag for manual review (may need new token)
52
-
53
- ### Step 4: Apply Replacements
54
-
55
- Replace values in source files, preserving:
56
- - Intentional one-off values (commented with `/* intentional */`)
57
- - Animation keyframe values
58
- - SVG path data
59
- - Third-party library overrides
60
-
61
- ## Token Mapping Example
62
-
63
- ```css
64
- /* Before */
65
- .card {
66
- background: #ffffff;
67
- border: 1px solid #e5e7eb;
68
- border-radius: 8px;
69
- padding: 24px;
70
- box-shadow: 0 1px 3px rgba(0,0,0,0.1);
71
- }
72
-
73
- /* After */
74
- .card {
75
- background: var(--color-surface);
76
- border: 1px solid var(--color-border);
77
- border-radius: var(--radius-lg);
78
- padding: var(--space-6);
79
- box-shadow: var(--shadow-sm);
80
- }
81
- ```
82
-
83
- ## Output Format
84
-
85
- ```markdown
86
- ## Design Normalize: {target}
87
-
88
- ### Token Source
89
- - Using: MASTER.md / design-context.json / default detection
90
-
91
- ### Replacements Applied
92
- | File | Line | Before | After | Confidence |
93
- |------|------|--------|-------|------------|
94
- | Card.tsx | 12 | #3B82F6 | var(--color-primary) | exact |
95
- | Card.tsx | 15 | 16px | var(--space-4) | exact |
96
- | Card.tsx | 18 | 7px | var(--radius-md) (8px) | close |
97
-
98
- ### New Tokens Suggested
99
- - `--color-accent-light: #DBEAFE` — used 4 times, no matching token
100
-
101
- ### Skipped (Manual Review)
102
- - {file}:{line} — animation keyframe value
103
- - {file}:{line} — no matching token found
104
-
105
- ### Summary
106
- - Scanned: {N} files
107
- - Replaced: {N} values
108
- - New tokens suggested: {N}
109
- - Skipped: {N}
110
- ```
111
-
112
- ## Preparation
113
-
114
- Before running normalization:
115
-
116
- 1. **Read** `.vibe/design-context.json`
117
- - If missing → display: "Run `/design-teach` first for better results" → proceed with defaults
118
- - If parse error → display warning → proceed with defaults → recommend `/design-teach`
119
- - If present → use `detectedStack.styling` to determine token format (CSS vars, Tailwind, etc.)
120
- 2. **Read** `.vibe/design-system/*/MASTER.md`
121
- - If missing → display: "Run `/design-teach` or create MASTER.md first. Proceeding with default token detection."
122
- - If present → use as authoritative token source for replacements
123
-
124
- ## Next Steps
125
-
126
- | If Result Shows | Recommended Next |
127
- |----------------|-----------------|
128
- | Tokens aligned successfully | `/design-polish` — final pre-ship pass |
129
- | New tokens suggested | Add to MASTER.md, then re-run `/design-normalize` |
130
-
131
- ## Important
132
-
133
- - **Modifying**: Directly replaces hardcoded values with token references.
134
- - **MASTER.md required**: Works best with a defined design system. Falls back to auto-detection if missing.
135
- - **Safe**: Preserves intentional overrides and third-party styles.
@@ -1,132 +0,0 @@
1
- ---
2
- name: design-polish
3
- invocation: [auto]
4
- tier: standard
5
- description: "Pre-ship final polish pass — pixel alignment, interaction states, micro-details check and auto-fix. Use when design-polish, ui-polish, final-pass, ship-ready."
6
- triggers: [design-polish, ui-polish, final-pass, ship-ready]
7
- priority: 50
8
- ---
9
-
10
- # Design Polish — Pre-Ship Final Pass
11
-
12
- Last-mile quality pass before shipping. Checks pixel-level details and **directly fixes** issues found.
13
-
14
- ## Usage
15
-
16
- ```
17
- /design-polish <target> # Polish specific component/page
18
- /design-polish . # Polish all changed UI files
19
- ```
20
-
21
- ## Checklist
22
-
23
- ### 1. Alignment & Spacing
24
-
25
- - [ ] Elements align to consistent grid (4px or 8px base)
26
- - [ ] Spacing between sections follows rhythm (not arbitrary gaps)
27
- - [ ] Text baselines align across columns
28
- - [ ] Icons vertically centered with adjacent text
29
- - [ ] Padding inside containers is symmetric unless intentional
30
-
31
- ### 2. Interaction States (Complete Set)
32
-
33
- Every interactive element must have ALL applicable states:
34
-
35
- | State | Check |
36
- |-------|-------|
37
- | Default | Base appearance defined |
38
- | Hover | Visual feedback on mouse enter |
39
- | Focus | Visible focus ring (a11y requirement) |
40
- | Active / Pressed | Visual response on click/tap |
41
- | Disabled | Reduced opacity + `pointer-events: none` + `aria-disabled` |
42
- | Loading | Spinner or skeleton replacing content |
43
- | Error | Red/danger styling + error message |
44
- | Success | Confirmation feedback (toast, checkmark, color change) |
45
-
46
- ### 3. Typography & Copy
47
-
48
- - [ ] No orphaned words (single word on last line of heading)
49
- - [ ] Consistent capitalization (Title Case vs sentence case)
50
- - [ ] No placeholder text ("Lorem ipsum", "TODO", "test")
51
- - [ ] Truncation with ellipsis where text can overflow
52
- - [ ] Line length ≤ 75 characters for readability
53
-
54
- ### 4. Visual Consistency
55
-
56
- - [ ] Border radius consistent across same-level elements
57
- - [ ] Shadow depth matches elevation hierarchy
58
- - [ ] Icon sizes consistent (16/20/24px common set)
59
- - [ ] Color usage matches semantic meaning (red=error, green=success)
60
-
61
- ### 5. Cleanup
62
-
63
- - [ ] No `console.log` statements
64
- - [ ] No commented-out JSX/HTML
65
- - [ ] No `z-index` values > 100 without documented reason
66
- - [ ] No inline styles that should be classes/tokens
67
- - [ ] No dead CSS classes
68
-
69
- ## Auto-Fix Rules
70
-
71
- | Issue | Fix Action |
72
- |-------|-----------|
73
- | Missing hover state on button | Add hover style using existing token |
74
- | Missing focus ring | Add `focus-visible` outline |
75
- | Missing disabled state | Add disabled variant with reduced opacity |
76
- | Inconsistent border radius | Normalize to nearest design token |
77
- | Inline color values | Replace with CSS variable |
78
- | `console.log` in UI files | Remove |
79
- | Commented-out code | Remove |
80
-
81
- ## Process
82
-
83
- 1. Read target files fully
84
- 2. Run checklist against each file
85
- 3. Collect findings with file:line references
86
- 4. Apply auto-fixes for safe items
87
- 5. Report items requiring manual review
88
- 6. Re-verify fixed files pass checklist
89
-
90
- ## Output Format
91
-
92
- ```markdown
93
- ## Design Polish: {target}
94
-
95
- ### Auto-Fixed
96
- - ✅ {file}:{line} — Added hover state to submit button
97
- - ✅ {file}:{line} — Replaced #3B82F6 with var(--color-primary)
98
- - ✅ {file}:{line} — Removed console.log
99
-
100
- ### Manual Review Needed
101
- - ⚠️ {file}:{line} — Orphaned word in heading (layout choice)
102
- - ⚠️ {file}:{line} — Missing loading state on async action
103
-
104
- ### Summary
105
- - Items checked: {N}
106
- - Auto-fixed: {N}
107
- - Manual review: {N}
108
- - Ship-ready: {yes/no}
109
- ```
110
-
111
- ## Preparation
112
-
113
- Before running polish:
114
-
115
- 1. **Read** `.vibe/design-context.json`
116
- - If missing → display: "Run `/design-teach` first for better results" → proceed with defaults
117
- - If parse error → display warning → proceed with defaults → recommend `/design-teach`
118
- - If present → apply brand-appropriate micro-interaction styles from `aesthetic.style`
119
- 2. **Read** `.vibe/design-system/*/MASTER.md` (if exists) for token references
120
-
121
- ## Next Steps
122
-
123
- | If Result Shows | Recommended Next |
124
- |----------------|-----------------|
125
- | All items pass | Ship ready — no further action needed |
126
- | Design system gaps found | `/design-normalize` first, then re-run `/design-polish` |
127
-
128
- ## Important
129
-
130
- - **Modifying**: This skill directly applies safe fixes.
131
- - **Conservative**: Only auto-fixes items with clear, safe remediation. Ambiguous items flagged for manual review.
132
- - **Pairs with**: Run `/design-audit` first for broad issues, then `/design-polish` for final touches.