quiver-cli 1.3.0 → 2.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 (384) hide show
  1. package/README.md +197 -239
  2. package/dist/cli.js +3163 -2040
  3. package/package.json +10 -11
  4. package/template/.agents/AGENTS.md +0 -26
  5. package/template/.agents/commands/cp.md +0 -108
  6. package/template/.agents/commands/next-setup.md +0 -1064
  7. package/template/.agents/commands/review.md +0 -68
  8. package/template/.agents/commands/terraform-readme.md +0 -38
  9. package/template/.agents/config.json +0 -80
  10. package/template/.agents/plugins/opencode/rtk.ts +0 -34
  11. package/template/.agents/skills/agent-browser/SKILL.md +0 -51
  12. package/template/.agents/skills/apps/skybridge/SKILL.md +0 -50
  13. package/template/.agents/skills/code/cleanup/SKILL.md +0 -26
  14. package/template/.agents/skills/code/improve/SKILL.md +0 -122
  15. package/template/.agents/skills/code/improve/references/audit-playbook.md +0 -130
  16. package/template/.agents/skills/code/improve/references/closing-the-loop.md +0 -96
  17. package/template/.agents/skills/code/improve/references/plan-template.md +0 -197
  18. package/template/.agents/skills/code/vercel-react-best-practices/AGENTS.md +0 -3810
  19. package/template/.agents/skills/code/vercel-react-best-practices/README.md +0 -123
  20. package/template/.agents/skills/code/vercel-react-best-practices/SKILL.md +0 -149
  21. package/template/.agents/skills/code/vercel-react-best-practices/metadata.json +0 -15
  22. package/template/.agents/skills/code/vercel-react-best-practices/rules/_sections.md +0 -46
  23. package/template/.agents/skills/code/vercel-react-best-practices/rules/_template.md +0 -28
  24. package/template/.agents/skills/code/vercel-react-best-practices/rules/advanced-effect-event-deps.md +0 -56
  25. package/template/.agents/skills/code/vercel-react-best-practices/rules/advanced-event-handler-refs.md +0 -55
  26. package/template/.agents/skills/code/vercel-react-best-practices/rules/advanced-init-once.md +0 -42
  27. package/template/.agents/skills/code/vercel-react-best-practices/rules/advanced-use-latest.md +0 -39
  28. package/template/.agents/skills/code/vercel-react-best-practices/rules/async-api-routes.md +0 -38
  29. package/template/.agents/skills/code/vercel-react-best-practices/rules/async-cheap-condition-before-await.md +0 -37
  30. package/template/.agents/skills/code/vercel-react-best-practices/rules/async-defer-await.md +0 -82
  31. package/template/.agents/skills/code/vercel-react-best-practices/rules/async-dependencies.md +0 -51
  32. package/template/.agents/skills/code/vercel-react-best-practices/rules/async-parallel.md +0 -28
  33. package/template/.agents/skills/code/vercel-react-best-practices/rules/async-suspense-boundaries.md +0 -99
  34. package/template/.agents/skills/code/vercel-react-best-practices/rules/bundle-analyzable-paths.md +0 -63
  35. package/template/.agents/skills/code/vercel-react-best-practices/rules/bundle-barrel-imports.md +0 -60
  36. package/template/.agents/skills/code/vercel-react-best-practices/rules/bundle-conditional.md +0 -31
  37. package/template/.agents/skills/code/vercel-react-best-practices/rules/bundle-defer-third-party.md +0 -49
  38. package/template/.agents/skills/code/vercel-react-best-practices/rules/bundle-dynamic-imports.md +0 -35
  39. package/template/.agents/skills/code/vercel-react-best-practices/rules/bundle-preload.md +0 -50
  40. package/template/.agents/skills/code/vercel-react-best-practices/rules/client-event-listeners.md +0 -74
  41. package/template/.agents/skills/code/vercel-react-best-practices/rules/client-localstorage-schema.md +0 -71
  42. package/template/.agents/skills/code/vercel-react-best-practices/rules/client-passive-event-listeners.md +0 -48
  43. package/template/.agents/skills/code/vercel-react-best-practices/rules/client-swr-dedup.md +0 -56
  44. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-batch-dom-css.md +0 -107
  45. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-cache-function-results.md +0 -80
  46. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-cache-property-access.md +0 -28
  47. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-cache-storage.md +0 -70
  48. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-combine-iterations.md +0 -32
  49. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-early-exit.md +0 -50
  50. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-flatmap-filter.md +0 -60
  51. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-hoist-regexp.md +0 -45
  52. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-index-maps.md +0 -37
  53. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-length-check-first.md +0 -49
  54. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-min-max-loop.md +0 -82
  55. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-request-idle-callback.md +0 -105
  56. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-set-map-lookups.md +0 -24
  57. package/template/.agents/skills/code/vercel-react-best-practices/rules/js-tosorted-immutable.md +0 -57
  58. package/template/.agents/skills/code/vercel-react-best-practices/rules/rendering-activity.md +0 -26
  59. package/template/.agents/skills/code/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +0 -47
  60. package/template/.agents/skills/code/vercel-react-best-practices/rules/rendering-conditional-render.md +0 -40
  61. package/template/.agents/skills/code/vercel-react-best-practices/rules/rendering-content-visibility.md +0 -38
  62. package/template/.agents/skills/code/vercel-react-best-practices/rules/rendering-hoist-jsx.md +0 -46
  63. package/template/.agents/skills/code/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +0 -82
  64. package/template/.agents/skills/code/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md +0 -30
  65. package/template/.agents/skills/code/vercel-react-best-practices/rules/rendering-resource-hints.md +0 -85
  66. package/template/.agents/skills/code/vercel-react-best-practices/rules/rendering-script-defer-async.md +0 -68
  67. package/template/.agents/skills/code/vercel-react-best-practices/rules/rendering-svg-precision.md +0 -28
  68. package/template/.agents/skills/code/vercel-react-best-practices/rules/rendering-usetransition-loading.md +0 -75
  69. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-defer-reads.md +0 -39
  70. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-dependencies.md +0 -45
  71. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md +0 -40
  72. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-derived-state.md +0 -29
  73. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-functional-setstate.md +0 -74
  74. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-lazy-state-init.md +0 -58
  75. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +0 -38
  76. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-memo.md +0 -44
  77. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-move-effect-to-event.md +0 -45
  78. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-no-inline-components.md +0 -82
  79. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +0 -35
  80. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-split-combined-hooks.md +0 -64
  81. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-transitions.md +0 -40
  82. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-use-deferred-value.md +0 -59
  83. package/template/.agents/skills/code/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md +0 -73
  84. package/template/.agents/skills/code/vercel-react-best-practices/rules/server-after-nonblocking.md +0 -73
  85. package/template/.agents/skills/code/vercel-react-best-practices/rules/server-auth-actions.md +0 -96
  86. package/template/.agents/skills/code/vercel-react-best-practices/rules/server-cache-lru.md +0 -41
  87. package/template/.agents/skills/code/vercel-react-best-practices/rules/server-cache-react.md +0 -76
  88. package/template/.agents/skills/code/vercel-react-best-practices/rules/server-dedup-props.md +0 -65
  89. package/template/.agents/skills/code/vercel-react-best-practices/rules/server-hoist-static-io.md +0 -149
  90. package/template/.agents/skills/code/vercel-react-best-practices/rules/server-no-shared-module-state.md +0 -50
  91. package/template/.agents/skills/code/vercel-react-best-practices/rules/server-parallel-fetching.md +0 -83
  92. package/template/.agents/skills/code/vercel-react-best-practices/rules/server-parallel-nested-fetching.md +0 -34
  93. package/template/.agents/skills/code/vercel-react-best-practices/rules/server-serialization.md +0 -38
  94. package/template/.agents/skills/data/prisma-cli/SKILL.md +0 -247
  95. package/template/.agents/skills/data/prisma-cli/references/db-execute.md +0 -78
  96. package/template/.agents/skills/data/prisma-cli/references/db-pull.md +0 -185
  97. package/template/.agents/skills/data/prisma-cli/references/db-push.md +0 -148
  98. package/template/.agents/skills/data/prisma-cli/references/db-seed.md +0 -188
  99. package/template/.agents/skills/data/prisma-cli/references/debug.md +0 -46
  100. package/template/.agents/skills/data/prisma-cli/references/dev.md +0 -157
  101. package/template/.agents/skills/data/prisma-cli/references/format.md +0 -48
  102. package/template/.agents/skills/data/prisma-cli/references/generate.md +0 -173
  103. package/template/.agents/skills/data/prisma-cli/references/init.md +0 -136
  104. package/template/.agents/skills/data/prisma-cli/references/mcp.md +0 -38
  105. package/template/.agents/skills/data/prisma-cli/references/migrate-deploy.md +0 -127
  106. package/template/.agents/skills/data/prisma-cli/references/migrate-dev.md +0 -145
  107. package/template/.agents/skills/data/prisma-cli/references/migrate-diff.md +0 -89
  108. package/template/.agents/skills/data/prisma-cli/references/migrate-reset.md +0 -78
  109. package/template/.agents/skills/data/prisma-cli/references/migrate-resolve.md +0 -57
  110. package/template/.agents/skills/data/prisma-cli/references/migrate-status.md +0 -65
  111. package/template/.agents/skills/data/prisma-cli/references/studio.md +0 -137
  112. package/template/.agents/skills/data/prisma-cli/references/validate.md +0 -53
  113. package/template/.agents/skills/data/prisma-client-api/SKILL.md +0 -216
  114. package/template/.agents/skills/data/prisma-client-api/references/client-methods.md +0 -223
  115. package/template/.agents/skills/data/prisma-client-api/references/constructor.md +0 -208
  116. package/template/.agents/skills/data/prisma-client-api/references/filters.md +0 -256
  117. package/template/.agents/skills/data/prisma-client-api/references/model-queries.md +0 -281
  118. package/template/.agents/skills/data/prisma-client-api/references/query-options.md +0 -276
  119. package/template/.agents/skills/data/prisma-client-api/references/raw-queries.md +0 -194
  120. package/template/.agents/skills/data/prisma-client-api/references/relations.md +0 -308
  121. package/template/.agents/skills/data/prisma-client-api/references/transactions.md +0 -184
  122. package/template/.agents/skills/design/impeccable/SKILL.md +0 -84
  123. package/template/.agents/skills/design/impeccable/reference/adapt.md +0 -312
  124. package/template/.agents/skills/design/impeccable/reference/adapt.native.md +0 -58
  125. package/template/.agents/skills/design/impeccable/reference/android.md +0 -40
  126. package/template/.agents/skills/design/impeccable/reference/animate.md +0 -86
  127. package/template/.agents/skills/design/impeccable/reference/audit.md +0 -136
  128. package/template/.agents/skills/design/impeccable/reference/audit.native.md +0 -139
  129. package/template/.agents/skills/design/impeccable/reference/bolder.md +0 -31
  130. package/template/.agents/skills/design/impeccable/reference/clarify.md +0 -94
  131. package/template/.agents/skills/design/impeccable/reference/colorize.md +0 -86
  132. package/template/.agents/skills/design/impeccable/reference/craft-floor.md +0 -42
  133. package/template/.agents/skills/design/impeccable/reference/craft.md +0 -5
  134. package/template/.agents/skills/design/impeccable/reference/critique.md +0 -788
  135. package/template/.agents/skills/design/impeccable/reference/degraded/asset-producer.md +0 -90
  136. package/template/.agents/skills/design/impeccable/reference/degraded/documenter.md +0 -24
  137. package/template/.agents/skills/design/impeccable/reference/degraded/finish-reviewer.md +0 -37
  138. package/template/.agents/skills/design/impeccable/reference/degraded/manual-edit-applier.md +0 -92
  139. package/template/.agents/skills/design/impeccable/reference/delight.md +0 -70
  140. package/template/.agents/skills/design/impeccable/reference/distill.md +0 -111
  141. package/template/.agents/skills/design/impeccable/reference/doctor.md +0 -53
  142. package/template/.agents/skills/design/impeccable/reference/document.md +0 -416
  143. package/template/.agents/skills/design/impeccable/reference/extract.md +0 -69
  144. package/template/.agents/skills/design/impeccable/reference/harden.md +0 -336
  145. package/template/.agents/skills/design/impeccable/reference/hooks.md +0 -105
  146. package/template/.agents/skills/design/impeccable/reference/init.md +0 -125
  147. package/template/.agents/skills/design/impeccable/reference/ios.md +0 -45
  148. package/template/.agents/skills/design/impeccable/reference/layout.md +0 -84
  149. package/template/.agents/skills/design/impeccable/reference/live-setup.md +0 -102
  150. package/template/.agents/skills/design/impeccable/reference/live.md +0 -323
  151. package/template/.agents/skills/design/impeccable/reference/new-work.md +0 -105
  152. package/template/.agents/skills/design/impeccable/reference/onboard.md +0 -234
  153. package/template/.agents/skills/design/impeccable/reference/operate.md +0 -61
  154. package/template/.agents/skills/design/impeccable/reference/optimize.md +0 -258
  155. package/template/.agents/skills/design/impeccable/reference/overdrive.md +0 -127
  156. package/template/.agents/skills/design/impeccable/reference/polish.md +0 -97
  157. package/template/.agents/skills/design/impeccable/reference/quieter.md +0 -99
  158. package/template/.agents/skills/design/impeccable/reference/routing.md +0 -18
  159. package/template/.agents/skills/design/impeccable/reference/shape.md +0 -59
  160. package/template/.agents/skills/design/impeccable/reference/typeset.md +0 -80
  161. package/template/.agents/skills/design/impeccable/reference/visualize.md +0 -47
  162. package/template/.agents/skills/design/impeccable/scripts/command-metadata.json +0 -94
  163. package/template/.agents/skills/design/impeccable/scripts/concept-seed.mjs +0 -558
  164. package/template/.agents/skills/design/impeccable/scripts/context-signals.mjs +0 -334
  165. package/template/.agents/skills/design/impeccable/scripts/context.mjs +0 -1450
  166. package/template/.agents/skills/design/impeccable/scripts/critique-storage.mjs +0 -213
  167. package/template/.agents/skills/design/impeccable/scripts/detect-csp.mjs +0 -198
  168. package/template/.agents/skills/design/impeccable/scripts/detect.mjs +0 -21
  169. package/template/.agents/skills/design/impeccable/scripts/detector/browser/injected/index.mjs +0 -2023
  170. package/template/.agents/skills/design/impeccable/scripts/detector/cli/main.mjs +0 -438
  171. package/template/.agents/skills/design/impeccable/scripts/detector/design-system.mjs +0 -983
  172. package/template/.agents/skills/design/impeccable/scripts/detector/detect-antipatterns-browser.js +0 -8283
  173. package/template/.agents/skills/design/impeccable/scripts/detector/detect-antipatterns.mjs +0 -50
  174. package/template/.agents/skills/design/impeccable/scripts/detector/engines/browser/detect-url.mjs +0 -372
  175. package/template/.agents/skills/design/impeccable/scripts/detector/engines/regex/detect-text.mjs +0 -768
  176. package/template/.agents/skills/design/impeccable/scripts/detector/engines/static-html/css-cascade.mjs +0 -1186
  177. package/template/.agents/skills/design/impeccable/scripts/detector/engines/static-html/detect-html.mjs +0 -264
  178. package/template/.agents/skills/design/impeccable/scripts/detector/engines/visual/screenshot-contrast.mjs +0 -189
  179. package/template/.agents/skills/design/impeccable/scripts/detector/findings.mjs +0 -18
  180. package/template/.agents/skills/design/impeccable/scripts/detector/node/file-system.mjs +0 -212
  181. package/template/.agents/skills/design/impeccable/scripts/detector/profile/profiler.mjs +0 -166
  182. package/template/.agents/skills/design/impeccable/scripts/detector/registry/antipatterns.mjs +0 -617
  183. package/template/.agents/skills/design/impeccable/scripts/detector/rules/checks.mjs +0 -5580
  184. package/template/.agents/skills/design/impeccable/scripts/detector/shared/color.mjs +0 -124
  185. package/template/.agents/skills/design/impeccable/scripts/detector/shared/constants.mjs +0 -112
  186. package/template/.agents/skills/design/impeccable/scripts/detector/shared/fonts.mjs +0 -30
  187. package/template/.agents/skills/design/impeccable/scripts/detector/shared/inline-ignores.mjs +0 -148
  188. package/template/.agents/skills/design/impeccable/scripts/detector/shared/page.mjs +0 -7
  189. package/template/.agents/skills/design/impeccable/scripts/doctor.mjs +0 -336
  190. package/template/.agents/skills/design/impeccable/scripts/embed-prompt.mjs +0 -133
  191. package/template/.agents/skills/design/impeccable/scripts/generate-image.mjs +0 -240
  192. package/template/.agents/skills/design/impeccable/scripts/hook-admin.mjs +0 -741
  193. package/template/.agents/skills/design/impeccable/scripts/hook-before-edit.mjs +0 -516
  194. package/template/.agents/skills/design/impeccable/scripts/hook-lib.mjs +0 -2100
  195. package/template/.agents/skills/design/impeccable/scripts/hook.mjs +0 -78
  196. package/template/.agents/skills/design/impeccable/scripts/lib/artifact-schema.mjs +0 -93
  197. package/template/.agents/skills/design/impeccable/scripts/lib/composition-catalog.mjs +0 -200
  198. package/template/.agents/skills/design/impeccable/scripts/lib/concept-catalog.mjs +0 -357
  199. package/template/.agents/skills/design/impeccable/scripts/lib/design-parser.mjs +0 -842
  200. package/template/.agents/skills/design/impeccable/scripts/lib/impeccable-config.mjs +0 -658
  201. package/template/.agents/skills/design/impeccable/scripts/lib/impeccable-paths.mjs +0 -137
  202. package/template/.agents/skills/design/impeccable/scripts/lib/is-generated.mjs +0 -69
  203. package/template/.agents/skills/design/impeccable/scripts/lib/provider.mjs +0 -5
  204. package/template/.agents/skills/design/impeccable/scripts/lib/roll-selection.mjs +0 -362
  205. package/template/.agents/skills/design/impeccable/scripts/lib/staleness-deep.mjs +0 -457
  206. package/template/.agents/skills/design/impeccable/scripts/lib/staleness-notice.mjs +0 -169
  207. package/template/.agents/skills/design/impeccable/scripts/lib/staleness.mjs +0 -457
  208. package/template/.agents/skills/design/impeccable/scripts/lib/surface-briefs.mjs +0 -151
  209. package/template/.agents/skills/design/impeccable/scripts/lib/target-args.mjs +0 -42
  210. package/template/.agents/skills/design/impeccable/scripts/lib/target-slug.mjs +0 -33
  211. package/template/.agents/skills/design/impeccable/scripts/lib/template-extensions.mjs +0 -146
  212. package/template/.agents/skills/design/impeccable/scripts/live/accept-css.mjs +0 -617
  213. package/template/.agents/skills/design/impeccable/scripts/live/accept-verify.mjs +0 -60
  214. package/template/.agents/skills/design/impeccable/scripts/live/browser-script-parts.mjs +0 -55
  215. package/template/.agents/skills/design/impeccable/scripts/live/completion.mjs +0 -28
  216. package/template/.agents/skills/design/impeccable/scripts/live/event-validation.mjs +0 -199
  217. package/template/.agents/skills/design/impeccable/scripts/live/frameworks/astro.mjs +0 -47
  218. package/template/.agents/skills/design/impeccable/scripts/live/frameworks/detect-utils.mjs +0 -73
  219. package/template/.agents/skills/design/impeccable/scripts/live/frameworks/index.mjs +0 -143
  220. package/template/.agents/skills/design/impeccable/scripts/live/frameworks/journal.mjs +0 -197
  221. package/template/.agents/skills/design/impeccable/scripts/live/frameworks/nextjs.mjs +0 -49
  222. package/template/.agents/skills/design/impeccable/scripts/live/frameworks/nuxt.mjs +0 -161
  223. package/template/.agents/skills/design/impeccable/scripts/live/frameworks/script-src.mjs +0 -17
  224. package/template/.agents/skills/design/impeccable/scripts/live/frameworks/static-html.mjs +0 -26
  225. package/template/.agents/skills/design/impeccable/scripts/live/frameworks/sveltekit.mjs +0 -71
  226. package/template/.agents/skills/design/impeccable/scripts/live/frameworks/tag-strategy.mjs +0 -247
  227. package/template/.agents/skills/design/impeccable/scripts/live/frameworks/tanstack-start.mjs +0 -70
  228. package/template/.agents/skills/design/impeccable/scripts/live/frameworks/vite-generic.mjs +0 -42
  229. package/template/.agents/skills/design/impeccable/scripts/live/generation-preflight.mjs +0 -149
  230. package/template/.agents/skills/design/impeccable/scripts/live/insert-ui.mjs +0 -458
  231. package/template/.agents/skills/design/impeccable/scripts/live/instructions.mjs +0 -142
  232. package/template/.agents/skills/design/impeccable/scripts/live/manual-apply.mjs +0 -939
  233. package/template/.agents/skills/design/impeccable/scripts/live/manual-edit-routes.mjs +0 -357
  234. package/template/.agents/skills/design/impeccable/scripts/live/manual-edits-buffer.mjs +0 -152
  235. package/template/.agents/skills/design/impeccable/scripts/live/poll-lanes.mjs +0 -14
  236. package/template/.agents/skills/design/impeccable/scripts/live/roots.mjs +0 -508
  237. package/template/.agents/skills/design/impeccable/scripts/live/session-store.mjs +0 -563
  238. package/template/.agents/skills/design/impeccable/scripts/live/source-lock.mjs +0 -105
  239. package/template/.agents/skills/design/impeccable/scripts/live/source-search.mjs +0 -105
  240. package/template/.agents/skills/design/impeccable/scripts/live/svelte-ast.mjs +0 -961
  241. package/template/.agents/skills/design/impeccable/scripts/live/svelte-component.mjs +0 -1342
  242. package/template/.agents/skills/design/impeccable/scripts/live/sveltekit-adapter.mjs +0 -316
  243. package/template/.agents/skills/design/impeccable/scripts/live/tanstack-adapter.mjs +0 -280
  244. package/template/.agents/skills/design/impeccable/scripts/live/ui-core.mjs +0 -180
  245. package/template/.agents/skills/design/impeccable/scripts/live/vocabulary.mjs +0 -171
  246. package/template/.agents/skills/design/impeccable/scripts/live-accept.mjs +0 -954
  247. package/template/.agents/skills/design/impeccable/scripts/live-browser-dom.js +0 -146
  248. package/template/.agents/skills/design/impeccable/scripts/live-browser-session.js +0 -123
  249. package/template/.agents/skills/design/impeccable/scripts/live-browser.js +0 -12512
  250. package/template/.agents/skills/design/impeccable/scripts/live-commit-manual-edits.mjs +0 -1244
  251. package/template/.agents/skills/design/impeccable/scripts/live-complete.mjs +0 -107
  252. package/template/.agents/skills/design/impeccable/scripts/live-copy-edit-agent.mjs +0 -683
  253. package/template/.agents/skills/design/impeccable/scripts/live-discard-manual-edits.mjs +0 -51
  254. package/template/.agents/skills/design/impeccable/scripts/live-inject.mjs +0 -503
  255. package/template/.agents/skills/design/impeccable/scripts/live-insert.mjs +0 -292
  256. package/template/.agents/skills/design/impeccable/scripts/live-manual-edit-evidence.mjs +0 -368
  257. package/template/.agents/skills/design/impeccable/scripts/live-poll.mjs +0 -429
  258. package/template/.agents/skills/design/impeccable/scripts/live-resume.mjs +0 -123
  259. package/template/.agents/skills/design/impeccable/scripts/live-server.mjs +0 -1661
  260. package/template/.agents/skills/design/impeccable/scripts/live-status.mjs +0 -71
  261. package/template/.agents/skills/design/impeccable/scripts/live-target.mjs +0 -30
  262. package/template/.agents/skills/design/impeccable/scripts/live-wrap.mjs +0 -927
  263. package/template/.agents/skills/design/impeccable/scripts/live.mjs +0 -359
  264. package/template/.agents/skills/design/impeccable/scripts/modern-screenshot.umd.js +0 -14
  265. package/template/.agents/skills/design/impeccable/scripts/palette.mjs +0 -628
  266. package/template/.agents/skills/design/impeccable/scripts/pin.mjs +0 -221
  267. package/template/.agents/skills/design/impeccable/scripts/serve-question.mjs +0 -932
  268. package/template/.agents/skills/design/impeccable/scripts/surface-brief.mjs +0 -74
  269. package/template/.agents/skills/design/shadcn/SKILL.md +0 -277
  270. package/template/.agents/skills/design/shadcn/agents/openai.yml +0 -5
  271. package/template/.agents/skills/design/shadcn/assets/shadcn-small.png +0 -0
  272. package/template/.agents/skills/design/shadcn/assets/shadcn.png +0 -0
  273. package/template/.agents/skills/design/shadcn/cli.md +0 -290
  274. package/template/.agents/skills/design/shadcn/customization.md +0 -209
  275. package/template/.agents/skills/design/shadcn/evals/evals.json +0 -77
  276. package/template/.agents/skills/design/shadcn/mcp.md +0 -105
  277. package/template/.agents/skills/design/shadcn/registry.md +0 -277
  278. package/template/.agents/skills/design/shadcn/rules/base-vs-radix.md +0 -306
  279. package/template/.agents/skills/design/shadcn/rules/chat.md +0 -224
  280. package/template/.agents/skills/design/shadcn/rules/composition.md +0 -213
  281. package/template/.agents/skills/design/shadcn/rules/forms.md +0 -192
  282. package/template/.agents/skills/design/shadcn/rules/icons.md +0 -101
  283. package/template/.agents/skills/design/shadcn/rules/styling.md +0 -185
  284. package/template/.agents/skills/find-skills/SKILL.md +0 -141
  285. package/template/.agents/skills/hono/SKILL.md +0 -579
  286. package/template/.agents/skills/integrations/langfuse/SKILL.md +0 -146
  287. package/template/.agents/skills/integrations/langfuse/references/ci-cd.md +0 -41
  288. package/template/.agents/skills/integrations/langfuse/references/cli.md +0 -60
  289. package/template/.agents/skills/integrations/langfuse/references/error-analysis.md +0 -88
  290. package/template/.agents/skills/integrations/langfuse/references/instrumentation.md +0 -121
  291. package/template/.agents/skills/integrations/langfuse/references/judge-calibration.md +0 -291
  292. package/template/.agents/skills/integrations/langfuse/references/prompt-engineering.md +0 -35
  293. package/template/.agents/skills/integrations/langfuse/references/prompt-migration.md +0 -79
  294. package/template/.agents/skills/integrations/langfuse/references/skill-feedback.md +0 -55
  295. package/template/.agents/skills/integrations/langfuse/references/trace-evaluator-upgrade.md +0 -76
  296. package/template/.agents/skills/integrations/langfuse/references/user-feedback.md +0 -92
  297. package/template/.agents/skills/integrations/langfuse/references/v4-project-migration.md +0 -73
  298. package/template/.agents/skills/integrations/posthog/SKILL.md +0 -102
  299. package/template/.agents/skills/integrations/posthog/references/error-tracking-alerts.md +0 -63
  300. package/template/.agents/skills/integrations/posthog/references/error-tracking-assigning-issues.md +0 -77
  301. package/template/.agents/skills/integrations/posthog/references/error-tracking-fingerprints.md +0 -57
  302. package/template/.agents/skills/integrations/posthog/references/error-tracking-monitoring.md +0 -140
  303. package/template/.agents/skills/integrations/posthog/references/error-tracking-nextjs.md +0 -490
  304. package/template/.agents/skills/integrations/posthog/references/error-tracking-source-maps.md +0 -45
  305. package/template/.agents/skills/integrations/posthog/references/feature-flags-best-practices.md +0 -139
  306. package/template/.agents/skills/integrations/posthog/references/feature-flags-react.md +0 -302
  307. package/template/.agents/skills/integrations/posthog/references/identify-users.md +0 -202
  308. package/template/.agents/skills/integrations/posthog/references/integration-example.md +0 -706
  309. package/template/.agents/skills/integrations/posthog/references/integration-nextjs.md +0 -385
  310. package/template/.agents/skills/integrations/posthog/references/integration-step-1-begin.md +0 -43
  311. package/template/.agents/skills/integrations/posthog/references/integration-step-2-edit.md +0 -37
  312. package/template/.agents/skills/integrations/posthog/references/integration-step-3-revise.md +0 -22
  313. package/template/.agents/skills/integrations/posthog/references/integration-step-4-conclude.md +0 -38
  314. package/template/.agents/skills/integrations/posthog/references/llm-analytics-anthropic.md +0 -200
  315. package/template/.agents/skills/integrations/posthog/references/llm-analytics-basics.md +0 -62
  316. package/template/.agents/skills/integrations/posthog/references/llm-analytics-costs.md +0 -197
  317. package/template/.agents/skills/integrations/posthog/references/llm-analytics-manual-capture.md +0 -397
  318. package/template/.agents/skills/integrations/posthog/references/llm-analytics-traces.md +0 -98
  319. package/template/.agents/skills/integrations/posthog/references/llm-analytics-vercel-ai.md +0 -120
  320. package/template/.agents/skills/repo/repo-ci/SKILL.md +0 -265
  321. package/template/.agents/skills/repo/repo-init-next-js/SKILL.md +0 -129
  322. package/template/.agents/skills/repo/repo-init-next-js/references/file-contents.md +0 -800
  323. package/template/.agents/skills/repo/repo-init-next-js/scripts/setup.sh +0 -47
  324. package/template/.agents/skills/repo/repo-init-node/SKILL.md +0 -196
  325. package/template/.agents/skills/skill-creator/LICENSE.txt +0 -202
  326. package/template/.agents/skills/skill-creator/SKILL.md +0 -485
  327. package/template/.agents/skills/skill-creator/agents/analyzer.md +0 -274
  328. package/template/.agents/skills/skill-creator/agents/comparator.md +0 -202
  329. package/template/.agents/skills/skill-creator/agents/grader.md +0 -223
  330. package/template/.agents/skills/skill-creator/assets/eval_review.html +0 -146
  331. package/template/.agents/skills/skill-creator/eval-viewer/generate_review.py +0 -471
  332. package/template/.agents/skills/skill-creator/eval-viewer/viewer.html +0 -1325
  333. package/template/.agents/skills/skill-creator/references/schemas.md +0 -430
  334. package/template/.agents/skills/skill-creator/scripts/__init__.py +0 -0
  335. package/template/.agents/skills/skill-creator/scripts/aggregate_benchmark.py +0 -401
  336. package/template/.agents/skills/skill-creator/scripts/generate_report.py +0 -326
  337. package/template/.agents/skills/skill-creator/scripts/improve_description.py +0 -247
  338. package/template/.agents/skills/skill-creator/scripts/package_skill.py +0 -136
  339. package/template/.agents/skills/skill-creator/scripts/quick_validate.py +0 -103
  340. package/template/.agents/skills/skill-creator/scripts/run_eval.py +0 -310
  341. package/template/.agents/skills/skill-creator/scripts/run_loop.py +0 -328
  342. package/template/.agents/skills/skill-creator/scripts/utils.py +0 -47
  343. package/template/.agents/skills/supabase/CHANGELOG.md +0 -71
  344. package/template/.agents/skills/supabase/SKILL.md +0 -145
  345. package/template/.agents/skills/supabase/assets/feedback-issue-template.md +0 -17
  346. package/template/.agents/skills/supabase/references/skill-feedback.md +0 -17
  347. package/template/.agents/skills/supabase-postgres-best-practices/CHANGELOG.md +0 -73
  348. package/template/.agents/skills/supabase-postgres-best-practices/SKILL.md +0 -64
  349. package/template/.agents/skills/supabase-postgres-best-practices/references/_contributing.md +0 -170
  350. package/template/.agents/skills/supabase-postgres-best-practices/references/_sections.md +0 -39
  351. package/template/.agents/skills/supabase-postgres-best-practices/references/_template.md +0 -34
  352. package/template/.agents/skills/supabase-postgres-best-practices/references/advanced-full-text-search.md +0 -55
  353. package/template/.agents/skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md +0 -49
  354. package/template/.agents/skills/supabase-postgres-best-practices/references/conn-idle-timeout.md +0 -46
  355. package/template/.agents/skills/supabase-postgres-best-practices/references/conn-limits.md +0 -44
  356. package/template/.agents/skills/supabase-postgres-best-practices/references/conn-pooling.md +0 -41
  357. package/template/.agents/skills/supabase-postgres-best-practices/references/conn-prepared-statements.md +0 -46
  358. package/template/.agents/skills/supabase-postgres-best-practices/references/data-batch-inserts.md +0 -54
  359. package/template/.agents/skills/supabase-postgres-best-practices/references/data-n-plus-one.md +0 -53
  360. package/template/.agents/skills/supabase-postgres-best-practices/references/data-pagination.md +0 -50
  361. package/template/.agents/skills/supabase-postgres-best-practices/references/data-upsert.md +0 -50
  362. package/template/.agents/skills/supabase-postgres-best-practices/references/lock-advisory.md +0 -56
  363. package/template/.agents/skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md +0 -68
  364. package/template/.agents/skills/supabase-postgres-best-practices/references/lock-short-transactions.md +0 -50
  365. package/template/.agents/skills/supabase-postgres-best-practices/references/lock-skip-locked.md +0 -54
  366. package/template/.agents/skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md +0 -45
  367. package/template/.agents/skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md +0 -55
  368. package/template/.agents/skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md +0 -55
  369. package/template/.agents/skills/supabase-postgres-best-practices/references/query-composite-indexes.md +0 -44
  370. package/template/.agents/skills/supabase-postgres-best-practices/references/query-covering-indexes.md +0 -40
  371. package/template/.agents/skills/supabase-postgres-best-practices/references/query-index-types.md +0 -48
  372. package/template/.agents/skills/supabase-postgres-best-practices/references/query-missing-indexes.md +0 -43
  373. package/template/.agents/skills/supabase-postgres-best-practices/references/query-partial-indexes.md +0 -45
  374. package/template/.agents/skills/supabase-postgres-best-practices/references/schema-constraints.md +0 -80
  375. package/template/.agents/skills/supabase-postgres-best-practices/references/schema-data-types.md +0 -46
  376. package/template/.agents/skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md +0 -59
  377. package/template/.agents/skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md +0 -55
  378. package/template/.agents/skills/supabase-postgres-best-practices/references/schema-partitioning.md +0 -55
  379. package/template/.agents/skills/supabase-postgres-best-practices/references/schema-primary-keys.md +0 -61
  380. package/template/.agents/skills/supabase-postgres-best-practices/references/security-privileges.md +0 -54
  381. package/template/.agents/skills/supabase-postgres-best-practices/references/security-rls-basics.md +0 -50
  382. package/template/.agents/skills/supabase-postgres-best-practices/references/security-rls-performance.md +0 -63
  383. package/template/.agents/skills/writing/humanizer/SKILL.md +0 -621
  384. package/template/.agents/upstreams.json +0 -116
@@ -1,258 +0,0 @@
1
- Performance is a feature. Identify the actual bottleneck for THIS interface, fix it, then measure. Don't optimize what isn't slow.
2
-
3
- ## Assess Performance Issues
4
-
5
- Understand current performance and identify problems:
6
-
7
- 1. **Measure current state**:
8
- - **Core Web Vitals**: LCP, INP, CLS scores
9
- - **Load time**: Time to interactive, first contentful paint
10
- - **Bundle size**: JavaScript, CSS, image sizes
11
- - **Runtime performance**: Frame rate, memory usage, CPU usage
12
- - **Network**: Request count, payload sizes, waterfall
13
-
14
- 2. **Identify bottlenecks**:
15
- - What's slow? (Initial load? Interactions? Animations?)
16
- - What's causing it? (Large images? Expensive JavaScript? Layout thrashing?)
17
- - How bad is it? (Perceivable? Annoying? Blocking?)
18
- - Who's affected? (All users? Mobile only? Slow connections?)
19
-
20
- **CRITICAL**: Measure before and after. Premature optimization wastes time. Optimize what actually matters.
21
-
22
- ## Optimization Strategy
23
-
24
- Create systematic improvement plan:
25
-
26
- ### Loading Performance
27
-
28
- **Optimize Images**:
29
- - Use modern formats (WebP, AVIF)
30
- - Proper sizing (don't load 3000px image for 300px display)
31
- - Lazy loading for below-fold images
32
- - Responsive images (`srcset`, `picture` element)
33
- - Compress images (80-85% quality is usually imperceptible)
34
- - Use CDN for faster delivery
35
-
36
- ```html
37
- <img
38
- src="hero.webp"
39
- srcset="hero-400.webp 400w, hero-800.webp 800w, hero-1200.webp 1200w"
40
- sizes="(max-width: 400px) 400px, (max-width: 800px) 800px, 1200px"
41
- loading="lazy"
42
- alt="Hero image"
43
- />
44
- ```
45
-
46
- **Reduce JavaScript Bundle**:
47
- - Code splitting (route-based, component-based)
48
- - Tree shaking (remove unused code)
49
- - Remove unused dependencies
50
- - Lazy load non-critical code
51
- - Use dynamic imports for large components
52
-
53
- ```javascript
54
- // Lazy load heavy component
55
- const HeavyChart = lazy(() => import('./HeavyChart'));
56
- ```
57
-
58
- **Optimize CSS**:
59
- - Remove unused CSS
60
- - Critical CSS inline, rest async
61
- - Minimize CSS files
62
- - Use CSS containment for independent regions
63
-
64
- **Optimize Fonts**:
65
- - Use `font-display: swap` or `optional`
66
- - Subset fonts (only characters you need)
67
- - Preload critical fonts
68
- - Use system fonts when appropriate
69
- - Limit font weights loaded
70
-
71
- ```css
72
- @font-face {
73
- font-family: 'CustomFont';
74
- src: url('/fonts/custom.woff2') format('woff2');
75
- font-display: swap; /* Show fallback immediately */
76
- unicode-range: U+0020-007F; /* Basic Latin only */
77
- }
78
- ```
79
-
80
- **Optimize Loading Strategy**:
81
- - Critical resources first (async/defer non-critical)
82
- - Preload critical assets
83
- - Prefetch likely next pages
84
- - Service worker for offline/caching
85
- - HTTP/2 or HTTP/3 for multiplexing
86
-
87
- ### Rendering Performance
88
-
89
- **Avoid Layout Thrashing**:
90
- ```javascript
91
- // ❌ Bad: Alternating reads and writes (causes reflows)
92
- elements.forEach(el => {
93
- const height = el.offsetHeight; // Read (forces layout)
94
- el.style.height = height * 2; // Write
95
- });
96
-
97
- // ✅ Good: Batch reads, then batch writes
98
- const heights = elements.map(el => el.offsetHeight); // All reads
99
- elements.forEach((el, i) => {
100
- el.style.height = heights[i] * 2; // All writes
101
- });
102
- ```
103
-
104
- **Optimize Rendering**:
105
- - Use CSS `contain` property for independent regions
106
- - Minimize DOM depth (flatter is faster)
107
- - Reduce DOM size (fewer elements)
108
- - Use `content-visibility: auto` for long lists
109
- - Virtual scrolling for very long lists (react-window, TanStack Virtual)
110
-
111
- **Reduce Paint & Composite**:
112
- - Use `transform` and `opacity` for reliable movement, but allow blur, filters, masks, clip paths, shadows, and color shifts when they create meaningful polish
113
- - Avoid casual animation of layout-driving properties (`width`, `height`, `top`, `left`, margins)
114
- - Use `will-change` sparingly for known expensive operations
115
- - Bound expensive paint areas for blur/filter/shadow effects (smaller and isolated is faster)
116
-
117
- ### Animation Performance
118
-
119
- **GPU Acceleration**:
120
- ```css
121
- /* ✅ GPU-accelerated (fast) */
122
- .animated {
123
- transform: translateX(100px);
124
- opacity: 0.5;
125
- }
126
-
127
- /* ❌ CPU-bound (slow) */
128
- .animated {
129
- left: 100px;
130
- width: 300px;
131
- }
132
- ```
133
-
134
- **Smooth 60fps**:
135
- - Target 16ms per frame (60fps)
136
- - Use `requestAnimationFrame` for JS animations
137
- - Debounce/throttle scroll handlers
138
- - Use CSS animations when possible
139
- - Avoid long-running JavaScript during animations
140
-
141
- **Intersection Observer**:
142
- ```javascript
143
- // Efficiently detect when elements enter viewport
144
- const observer = new IntersectionObserver((entries) => {
145
- entries.forEach(entry => {
146
- if (entry.isIntersecting) {
147
- // Element is visible, lazy load or animate
148
- }
149
- });
150
- });
151
- ```
152
-
153
- ### React/Framework Optimization
154
-
155
- **React-specific**:
156
- - Use `memo()` for expensive components
157
- - `useMemo()` and `useCallback()` for expensive computations
158
- - Virtualize long lists
159
- - Code split routes
160
- - Avoid inline function creation in render
161
- - Use React DevTools Profiler
162
-
163
- **Framework-agnostic**:
164
- - Minimize re-renders
165
- - Debounce expensive operations
166
- - Memoize computed values
167
- - Lazy load routes and components
168
-
169
- ### Network Optimization
170
-
171
- **Reduce Requests**:
172
- - Combine small files
173
- - Use SVG sprites for icons
174
- - Inline small critical assets
175
- - Remove unused third-party scripts
176
-
177
- **Optimize APIs**:
178
- - Use pagination (don't load everything)
179
- - GraphQL to request only needed fields
180
- - Response compression (gzip, brotli)
181
- - HTTP caching headers
182
- - CDN for static assets
183
-
184
- **Optimize for Slow Connections**:
185
- - Adaptive loading based on connection (navigator.connection)
186
- - Optimistic UI updates
187
- - Request prioritization
188
- - Progressive enhancement
189
-
190
- ## Core Web Vitals Optimization
191
-
192
- ### Largest Contentful Paint (LCP < 2.5s)
193
- - Optimize hero images
194
- - Inline critical CSS
195
- - Preload key resources
196
- - Use CDN
197
- - Server-side rendering
198
-
199
- ### Interaction to Next Paint (INP < 200ms)
200
- - Break up long tasks
201
- - Defer non-critical JavaScript
202
- - Use web workers for heavy computation
203
- - Reduce JavaScript execution time
204
-
205
- ### Cumulative Layout Shift (CLS < 0.1)
206
- - Set dimensions on images and videos
207
- - Don't inject content above existing content
208
- - Use `aspect-ratio` CSS property
209
- - Reserve space for ads/embeds
210
- - Avoid animations that cause layout shifts
211
-
212
- ```css
213
- /* Reserve space for image */
214
- .image-container {
215
- aspect-ratio: 16 / 9;
216
- }
217
- ```
218
-
219
- ## Performance Monitoring
220
-
221
- **Tools to use**:
222
- - Chrome DevTools (Lighthouse, Performance panel)
223
- - WebPageTest
224
- - Core Web Vitals (Chrome UX Report)
225
- - Bundle analyzers (webpack-bundle-analyzer)
226
- - Performance monitoring (Sentry, DataDog, New Relic)
227
-
228
- **Key metrics**:
229
- - LCP, INP, CLS (Core Web Vitals; INP replaced FID in March 2024)
230
- - Time to Interactive (TTI)
231
- - First Contentful Paint (FCP)
232
- - Total Blocking Time (TBT)
233
- - Bundle size
234
- - Request count
235
-
236
- **IMPORTANT**: Measure on real devices with real network conditions. Desktop Chrome with fast connection isn't representative.
237
-
238
- **NEVER**:
239
- - Optimize without measuring (premature optimization)
240
- - Sacrifice accessibility for performance
241
- - Break functionality while optimizing
242
- - Use `will-change` everywhere (creates new layers, uses memory)
243
- - Lazy load above-fold content
244
- - Optimize micro-optimizations while ignoring major issues (optimize the biggest bottleneck first)
245
- - Forget about mobile performance (often slower devices, slower connections)
246
-
247
- ## Verify Improvements
248
-
249
- Test that optimizations worked:
250
-
251
- - **Before/after metrics**: Compare Lighthouse scores
252
- - **Real user monitoring**: Track improvements for real users
253
- - **Different devices**: Test on low-end Android, not just flagship iPhone
254
- - **Slow connections**: Throttle to 3G, test experience
255
- - **No regressions**: Ensure functionality still works
256
- - **User perception**: Does it *feel* faster?
257
-
258
- When the user-facing numbers move, hand off to `/impeccable polish` for the final pass.
@@ -1,127 +0,0 @@
1
- Start your response with:
2
-
3
- ```
4
- ──────────── ⚡ OVERDRIVE ─────────────
5
- 》》》 Entering overdrive mode...
6
- ```
7
-
8
- Push an interface past conventional limits. This isn't just about visual effects. It's about using the full power of the browser to make any part of an interface feel extraordinary: a table that handles a million rows, a dialog that morphs from its trigger, a form that validates in real-time with streaming feedback, a page transition that feels cinematic.
9
-
10
- **EXTRA IMPORTANT FOR THIS COMMAND**: Context determines what "extraordinary" means. A particle system on a creative portfolio is impressive. The same particle system on a settings page is embarrassing. But a settings page with instant optimistic saves and animated state transitions? That's extraordinary too. Understand the project's personality and goals before deciding what's appropriate.
11
-
12
- ### Propose Before Building
13
-
14
- This command has the highest potential to misfire. Do NOT jump straight into implementation. You MUST:
15
-
16
- 1. **Think through 2-3 different directions**: consider different techniques, levels of ambition, and aesthetic approaches. For each direction, briefly describe what the result would look and feel like.
17
- 2. **ask the user directly to clarify what you cannot infer.** to present these directions and get the user's pick before writing any code. Explain trade-offs (browser support, performance cost, complexity).
18
- 3. Only proceed with the direction the user confirms.
19
-
20
- Skipping this step risks building something embarrassing that needs to be thrown away.
21
-
22
- ### Iterate with Browser Automation
23
-
24
- Technically ambitious effects almost never work on the first try. You MUST actively use browser automation tools to preview your work, visually verify the result, and iterate. Do not assume the effect looks right, check it. Expect multiple rounds of refinement. The gap between "technically works" and "looks extraordinary" is closed through visual iteration, not code alone.
25
-
26
- ---
27
-
28
- ## Assess What "Extraordinary" Means Here
29
-
30
- The right kind of technical ambition depends entirely on what you're working with. Before choosing a technique, ask: **what would make a user of THIS specific interface say "wow, that's nice"?**
31
-
32
- ### For visual/marketing surfaces
33
- Pages, hero sections, landing pages, portfolios: the "wow" is often sensory: a scroll-driven reveal, a shader background, a cinematic page transition, generative art that responds to the cursor.
34
-
35
- ### For functional UI
36
- Tables, forms, dialogs, navigation: the "wow" is in how it FEELS: a dialog that morphs from the button that triggered it via View Transitions, a data table that renders 100k rows at 60fps via virtual scrolling, a form with streaming validation that feels instant, drag-and-drop with spring physics.
37
-
38
- ### For performance-critical UI
39
- The "wow" is invisible but felt: a search that filters 50k items without a flicker, a complex form that never blocks the main thread, an image editor that processes in near-real-time. The interface just never hesitates.
40
-
41
- ### For data-heavy interfaces
42
- Charts and dashboards: the "wow" is in fluidity: GPU-accelerated rendering via Canvas/WebGL for massive datasets, animated transitions between data states, force-directed graph layouts that settle naturally.
43
-
44
- **The common thread**: something about the implementation goes beyond what users expect from a web interface. The technique serves the experience, not the other way around.
45
-
46
- ## The Toolkit
47
-
48
- Organized by what you're trying to achieve, not by technology name.
49
-
50
- ### Make transitions feel cinematic
51
- - **View Transitions API** (same-document: all browsers; cross-document: no Firefox): shared element morphing between states. A list item expanding into a detail page. A button morphing into a dialog. This is the closest thing to native FLIP animations.
52
- - **`@starting-style`** (all browsers): animate elements from `display: none` to visible with CSS only, including entry keyframes
53
- - **Spring physics**: natural motion with mass, tension, and damping instead of cubic-bezier. Libraries: motion (formerly Framer Motion), GSAP, or roll your own spring solver.
54
-
55
- ### Tie animation to scroll position
56
- - **Scroll-driven animations** (`animation-timeline: scroll()`): CSS-only, no JS. Parallax, progress bars, reveal sequences all driven by scroll position. (Chrome/Edge/Safari; Firefox: flag only; always provide a static fallback)
57
-
58
- ### Render beyond CSS
59
- - **WebGL** (all browsers): shader effects, post-processing, particle systems. Libraries: Three.js, OGL (lightweight), regl. Use for effects CSS can't express.
60
- - **WebGPU** (Chrome/Edge; Safari 26+; Firefox on Windows/macOS; flag only on Firefox Linux/Android): next-gen GPU compute, more powerful than WebGL. Always fall back to WebGL2.
61
- - **Canvas 2D / OffscreenCanvas**: custom rendering, pixel manipulation, or moving heavy rendering off the main thread entirely via Web Workers + OffscreenCanvas.
62
- - **SVG filter chains**: displacement maps, turbulence, morphology for organic distortion effects. CSS-animatable.
63
-
64
- ### Make data feel alive
65
- - **Virtual scrolling**: render only visible rows for tables/lists with tens of thousands of items. No library required for simple cases; TanStack Virtual for complex ones.
66
- - **GPU-accelerated charts**: Canvas or WebGL-rendered data visualization for datasets too large for SVG/DOM. Libraries: deck.gl, regl-based custom renderers.
67
- - **Animated data transitions**: morph between chart states rather than replacing. D3's `transition()` or View Transitions for DOM-based charts.
68
-
69
- ### Animate complex properties
70
- - **`@property`** (all browsers): register custom CSS properties with types, enabling animation of gradients, colors, and complex values that CSS can't normally interpolate.
71
- - **Web Animations API** (all browsers): JavaScript-driven animations with the performance of CSS. Composable, cancellable, reversible. The foundation for complex choreography.
72
-
73
- ### Push performance boundaries
74
- - **Web Workers**: move computation off the main thread. Heavy data processing, image manipulation, search indexing: anything that would cause jank.
75
- - **OffscreenCanvas**: render in a Worker thread. The main thread stays free while complex visuals render in the background.
76
- - **WASM**: near-native performance for computation-heavy features. Image processing, physics simulations, codecs.
77
-
78
- ### Interact with the device
79
- - **Web Audio API**: spatial audio, audio-reactive visualizations, sonic feedback. Requires user gesture to start.
80
- - **Device APIs**: orientation, ambient light, geolocation. Use sparingly and always with user permission.
81
-
82
- **NOTE**: This command is about enhancing how an interface FEELS, not changing what a product DOES. Adding real-time collaboration, offline support, or new backend capabilities are product decisions, not UI enhancements. Focus on making existing features feel extraordinary.
83
-
84
- ## Implement with Discipline
85
-
86
- ### Progressive enhancement is non-negotiable
87
-
88
- Every technique must degrade gracefully. The experience without the enhancement must still be good.
89
-
90
- ```css
91
- @supports (animation-timeline: scroll()) {
92
- .hero { animation-timeline: scroll(); }
93
- }
94
- ```
95
-
96
- ```javascript
97
- if ('gpu' in navigator) { /* WebGPU */ }
98
- else if (canvas.getContext('webgl2')) { /* WebGL2 fallback */ }
99
- /* CSS-only fallback must still look good */
100
- ```
101
-
102
- ### Performance rules
103
-
104
- - Target 60fps. If dropping below 50, simplify.
105
- - Lazy-initialize heavy resources (WebGL contexts, WASM modules) only when near viewport.
106
- - Pause off-screen rendering. Kill what you can't see.
107
- - Test on real mid-range devices, not just your development machine.
108
-
109
- ### Polish is the difference
110
-
111
- The gap between "cool" and "extraordinary" is in the last 20% of refinement: the easing curve on a spring animation, the timing offset in a staggered reveal, the subtle secondary motion that makes a transition feel physical. Don't ship the first version that works; ship the version that feels inevitable.
112
-
113
- **NEVER**:
114
- - Ship effects that cause jank on mid-range devices
115
- - Use bleeding-edge APIs without a functional fallback
116
- - Add sound without explicit user opt-in
117
- - Use technical ambition to mask weak design fundamentals; fix those first with other commands
118
- - Layer multiple competing extraordinary moments. Focus creates impact, excess creates noise
119
-
120
- ## Verify the Result
121
-
122
- - **The wow test**: Show it to someone who hasn't seen it. Do they react?
123
- - **The removal test**: Take it away. Does the experience feel diminished, or does nobody notice?
124
- - **The device test**: Run it on a phone, a tablet, a Chromebook. Still smooth?
125
- - **The context test**: Does this make sense for THIS brand and audience?
126
-
127
- "Technically extraordinary" isn't about using the newest API. It's about making an interface do something users didn't think a website could do.
@@ -1,97 +0,0 @@
1
- > **Additional context needed**: quality bar and shipping constraints.
2
-
3
- Polish is refinement, never concealed redesign. Preserve the incumbent visual world, content, behavior, and everything outside scope. If the concept itself is wrong, say so and recommend redesign or `bolder` instead of smuggling in a replacement.
4
-
5
- A detector result is defect evidence, not proof of quality. Inspect the rendered experience and real interaction path.
6
-
7
- ## 1. Establish the system
8
-
9
- Read DESIGN.md and representative tokens, shared components, patterns, and neighboring flows. If no formal system exists, use coherent project conventions.
10
-
11
- Classify each drift before fixing it:
12
-
13
- - **missing token:** the system needs a reusable value;
14
- - **one-off implementation:** an existing shared component or pattern should replace it;
15
- - **conceptual mismatch:** the flow, information architecture, or hierarchy differs from comparable product areas;
16
- - **local defect:** the implementation is simply incomplete or inconsistent.
17
-
18
- Fix the cause at the narrowest correct level. Ask when a binding system principle cannot be inferred.
19
-
20
- ## 2. Gather the evidence
21
-
22
- Use the feature yourself at representative desktop and mobile sizes. Determine:
23
-
24
- - whether the path is functionally complete;
25
- - the intended quality bar and time available;
26
- - known constraints or deliberately unfinished work;
27
- - the states, content lengths, roles, and input methods users will actually encounter.
28
-
29
- If a prior critique exists, use it as one input:
30
-
31
- ```bash
32
- node .pi/skills/impeccable/scripts/critique-storage.mjs latest "<resolved target>"
33
- ```
34
-
35
- Exit 0 returns the latest snapshot; incorporate relevant P0/P1 findings and name the snapshot read. Exit 2 means none exists. Perform an independent pass either way.
36
-
37
- ## 3. Triage
38
-
39
- Separate functional defects from cosmetic ones and fix in this order:
40
-
41
- 1. broken or blocked tasks, data loss, misleading state, and inaccessible paths;
42
- 2. missing loading, empty, error, success, disabled, and permission states;
43
- 3. flow, hierarchy, responsive, and design-system drift;
44
- 4. visual and motion inconsistencies;
45
- 5. code and asset cleanup.
46
-
47
- Do not perfect one corner while leaving the rest below the same quality bar.
48
-
49
- ## 4. Polish the whole path
50
-
51
- ### Flow and hierarchy
52
-
53
- - Match neighboring mental models, terminology, disclosure, routing, save behavior, and optimistic or pessimistic patterns.
54
- - Make the primary task and current state obvious without flattening every element to equal weight.
55
- - Ensure arrival, transition, empty, and recovery paths connect instead of behaving as isolated screens.
56
-
57
- ### Layout and type
58
-
59
- - Align to the project's grid and spacing scale; fix optical as well as mathematical alignment.
60
- - Group related content tightly and separate distinct groups generously.
61
- - Keep same-role typography consistent; test measure, wrapping, localization expansion, zoom, and font loading.
62
- - Verify every supported viewport rather than correcting only the current screenshot.
63
-
64
- ### Color, imagery, and icons
65
-
66
- - Use semantic tokens and stable color meanings across themes.
67
- - Verify text, control, and focus contrast in every state.
68
- - Keep icon families, stroke/weight, sizing, and optical alignment coherent.
69
- - Prevent image layout shift; use correct aspect ratios, responsive sources, and useful alt text.
70
-
71
- ### Interaction and state
72
-
73
- - Every control needs appropriate default, hover, focus, active, disabled, loading, error, and success behavior.
74
- - Preserve visible keyboard focus, logical tab order, labels, and platform-appropriate touch targets.
75
- - Keep motion coherent, interruptible, and performant. Do not add animation merely to make polish visible.
76
- - Validate long, missing, localized, offline, slow, and permission-limited content where the product can encounter it.
77
-
78
- ### Content and code
79
-
80
- - Keep terminology, capitalization, punctuation, and factual copy consistent. Ask before changing claims.
81
- - Remove debug output, dead code, unused imports, obsolete styles, and polish-created duplication.
82
- - Replace custom implementations with shared components where the system owns the pattern.
83
- - Promote genuinely reusable values to tokens; do not create a system abstraction for one local exception.
84
-
85
- ## 5. Verify and finish
86
-
87
- Walk the complete path again with mouse, keyboard, and touch where applicable. Check:
88
-
89
- - mobile, intermediate, and wide layouts;
90
- - loading, empty, error, success, disabled, long-content, and missing-content states;
91
- - zoom, contrast, focus, semantics, and screen-reader names;
92
- - console errors, layout shift, interaction latency, image loading, and supported browsers;
93
- - agreement with DESIGN.md, neighboring features, and the user's scope.
94
-
95
- Follow the quality guidance supplied by `context.mjs` and hooks, then run any other relevant QA commands. Context requests a manual scan only when no automatic detector is active; never add another detector pass. Fix real defects and document only narrow intentional exceptions. A clean scan does not replace visual judgment.
96
-
97
- Finish with a source diff: remove accidental churn, orphaned code, redundant values, and temporary artifacts. Ship only when the feature is functionally complete and consistently finished across the path.
@@ -1,99 +0,0 @@
1
- Quiet design is harder than bold design. Subtlety needs precision. Reduce visual intensity in designs that are too loud, aggressive, or overstimulating without losing personality or making the result generic.
2
-
3
- ---
4
-
5
- ## Visitor mode
6
-
7
- Persuade + Experience: "quieter" means more restrained palette, more whitespace, more typographic air. Drama is reduced, not eliminated; the POV stays intact.
8
-
9
- Operate + Read: "quieter" means reducing visual noise. Fewer background accents, flatter cards, less color, less motion. The tool should disappear more completely into the task.
10
-
11
- ---
12
-
13
- ## Assess Current State
14
-
15
- Analyze what makes the design feel too intense:
16
-
17
- 1. **Identify intensity sources**:
18
- - **Color saturation**: Overly bright or saturated colors
19
- - **Contrast extremes**: Too much high-contrast juxtaposition
20
- - **Visual weight**: Too many bold, heavy elements competing
21
- - **Animation excess**: Too much motion or overly dramatic effects
22
- - **Complexity**: Too many visual elements, patterns, or decorations
23
- - **Scale**: Everything is large and loud with no hierarchy
24
-
25
- 2. **Understand the context**:
26
- - What's the purpose? (Marketing vs tool vs reading experience)
27
- - Who's the audience? (Some contexts need energy)
28
- - What's working? (Don't throw away good ideas)
29
- - What's the core message? (Preserve what matters)
30
-
31
- If any of these are unclear from the codebase, ask the user directly to clarify what you cannot infer.
32
-
33
- **CRITICAL**: "Quieter" doesn't mean boring or generic. It means refined and easier on the eyes. Think luxury, not laziness.
34
-
35
- ## Plan Refinement
36
-
37
- Create a strategy to reduce intensity while maintaining impact:
38
-
39
- - **Color approach**: Desaturate or shift to more restrained tones?
40
- - **Hierarchy approach**: Which elements should stay bold (very few), which should recede?
41
- - **Simplification approach**: What can be removed entirely?
42
- - **Sophistication approach**: How can we signal quality through restraint?
43
-
44
- **IMPORTANT**: Subtlety requires precision. Quiet without intent collapses to generic.
45
-
46
- ## Refine the Design
47
-
48
- Systematically reduce intensity across these dimensions:
49
-
50
- ### Color Refinement
51
- - **Reduce saturation**: Shift from fully saturated to 70-85% saturation
52
- - **Soften palette**: Replace bright colors with muted tones
53
- - **Reduce color variety**: Use fewer colors more thoughtfully
54
- - **Neutral dominance**: Let neutrals do more work, use color as accent (10% rule)
55
- - **Gentler contrasts**: High contrast only where it matters most
56
- - **Tinted grays**: Use warm or cool tinted grays instead of pure gray. Adds depth without loudness
57
- - **Never gray on color**: If you have gray text on a colored background, use a darker shade of that color or transparency instead
58
-
59
- ### Visual Weight Reduction
60
- - **Typography**: Reduce font weights (900 → 600, 700 → 500), decrease sizes where appropriate
61
- - **Hierarchy through subtlety**: Use weight, size, and space instead of color and boldness
62
- - **White space**: Increase breathing room, reduce density
63
- - **Borders & lines**: Reduce thickness, decrease opacity, or remove entirely
64
-
65
- ### Simplification
66
- - **Remove decorative elements**: Gradients, shadows, patterns, textures that don't serve purpose
67
- - **Simplify shapes**: Reduce border radius extremes, simplify custom shapes
68
- - **Reduce layering**: Flatten visual hierarchy where possible
69
- - **Clean up effects**: Reduce or remove blur effects, glows, multiple shadows
70
-
71
- ### Motion Reduction
72
- - **Reduce animation intensity**: Shorter distances (10-20px instead of 40px), gentler easing
73
- - **Remove decorative animations**: Keep functional motion, remove flourishes
74
- - **Subtle micro-interactions**: Replace dramatic effects with gentle feedback
75
- - **Refined easing**: Use ease-out-quart for smooth, understated motion. Never bounce or elastic
76
- - **Remove animations entirely** if they're not serving a clear purpose
77
-
78
- ### Composition Refinement
79
- - **Reduce scale jumps**: Smaller contrast between sizes creates calmer feeling
80
- - **Align to grid**: Bring rogue elements back into systematic alignment
81
- - **Even out spacing**: Replace extreme spacing variations with consistent rhythm
82
-
83
- **NEVER**:
84
- - Make everything the same size/weight (hierarchy still matters)
85
- - Remove all color (quiet ≠ grayscale)
86
- - Eliminate all personality (maintain character through refinement)
87
- - Sacrifice usability for aesthetics (functional elements still need clear affordances)
88
- - Make everything small and light (some anchors needed)
89
-
90
- ## Verify Quality
91
-
92
- Ensure refinement maintains quality:
93
-
94
- - **Still functional**: Can users still accomplish tasks easily?
95
- - **Still distinctive**: Does it have character, or is it generic now?
96
- - **Better reading**: Is text easier to read for extended periods?
97
- - **Restrained, not absent**: Does the POV survive the cuts?
98
-
99
- When the result feels right, hand off to `/impeccable polish` for the final pass.
@@ -1,18 +0,0 @@
1
- # No-argument routing: the context-aware menu
2
-
3
- Read this when the user invokes `/impeccable` with no argument. They are asking "what should I do?" Make the menu context-aware instead of static.
4
-
5
- Setup has already run `context.mjs`. If that reported `NO_PRODUCT_MD`, the project has no captured context yet: lead the menu with `/impeccable init` as the top recommendation (one line on why) and still show the rest below; don't silently jump into init. Otherwise run `node .pi/skills/impeccable/scripts/context-signals.mjs` once and read its JSON, then lead with the **2-3 highest-value next commands**, each with a one-line reason pulled from the signals, followed by the full menu (the Commands table in SKILL.md, grouped by category). **Never auto-run a command; the recommendation is a suggestion the user confirms.**
6
-
7
- Reason over the signals; there is no score to obey:
8
-
9
- - `setup.hasDesign` false while `setup.hasCode` true → `document` (capture the visual system).
10
- - `critique.latest` is `null` → the project has never been critiqued; for a set-up project with a real surface, offering `/impeccable critique <surface>` is a strong default.
11
- - `critique.latest` with a low `score` or non-zero `p0` / `p1` → `polish` (it reads that snapshot as its backlog), or re-run `critique` if the snapshot looks stale.
12
- - `git.changedFiles` pointing at one surface → scope `audit` or `polish` to those files specifically, naming them.
13
- - `devServer.running` true → `live` is available for in-browser iteration; if false, don't lead with `live`. **`live` and the bundled `detect.mjs` are web-only.** If `setup.platform` is `ios`, `android`, or `adaptive`, don't lead with either; the browser overlay and the HTML rule engine don't apply to native app code.
14
- - Otherwise group by intent (build new / improve what's there / iterate visually), tailored to the current surface and `setup.platform`.
15
-
16
- **If `scan.targets` is non-empty and `setup.platform` is not `ios`/`android`/`adaptive`, run `node .pi/skills/impeccable/scripts/detect.mjs --json <scan.targets joined by spaces>` once** (the bundled detector over local files: no network, no npx; it reads HTML/CSS, so skip it for native projects). `scan.via` tells you what they are: `git-changes` (the markup/style files in your dirty tree, the most relevant set), `source-dir` (e.g. `src`, `app`), `html`, or `root`. Fold the hits into your picks: many quality / contrast hits → `audit` or `polish`; a specific slop family → the matching command (gradient text or eyebrows → `quieter` / `typeset`, flat or gray palette → `colorize`, and so on). It's a real, current signal that beats guessing. If detect errors or the tree is large and slow, skip it and recommend the user run `audit` themselves; never block the suggestion on it.
17
-
18
- Keep it to 2-3 pointed picks with the exact command to type. The menu stays the fallback; the recommendation is the lede.
@@ -1,59 +0,0 @@
1
- # Shape
2
-
3
- Discover what should be made and how it should work, then return a confirmed design brief without code.
4
-
5
- ## Phase 1: Discovery interview
6
-
7
- Do not write code or choose visual direction yet.
8
-
9
- ### Cadence
10
-
11
- - Use the structured question tool when available; otherwise ask and stop.
12
- - Ask two or three related questions per round, then wait. One round is the default; add a second only when the answers expose a material gap.
13
- - Do not dump a questionnaire, repeat settled facts, or turn obvious facts into menus. Assert the likely reading and invite correction.
14
- - A sparse prompt requires at least one answer round. A precise prompt may need only a compact confirmation.
15
-
16
- ### Round 1: purpose, people, and outcome
17
-
18
- Choose the two or three questions that most change the result:
19
-
20
- - What is this surface or feature for, and what problem must it solve?
21
- - Who specifically reaches it, in what situation and state of mind?
22
- - What is the primary thing they must understand or do? What would success look like?
23
- - What is uniquely true here that a neighboring product or generic template could not claim?
24
-
25
- ### Round 2: material, behavior, and boundaries
26
-
27
- Run only for material unresolved decisions:
28
-
29
- - What real content, evidence, data, and assets must the experience carry? What are realistic minimum, typical, and maximum ranges?
30
- - Which states and transitions matter: first-run, empty, loading, error, success, permissions, overflow, or expert use?
31
- - What is the intended fidelity, breadth, and interactivity: exploration, production-ready screen, full flow, or broader surface?
32
- - What must remain untouched? What would make the result feel wrong even if it looked polished?
33
- - Which platform, framework, performance, accessibility, localization, or delivery constraints are binding?
34
-
35
- Never ask for CSS values or canned aesthetic lanes. New-work owns visual-world and concept choices.
36
-
37
- ## Phase 2: Resolve the design direction
38
-
39
- For new surfaces, brand expansion, or replacement, follow [new-work.md](new-work.md) through visual authority, any world workshop, and concept choice. Reuse discovery, then return before its contract, persistence, or implementation. Inside an established world, use its concept process only when composition or interaction remains materially open.
40
-
41
- ## Phase 3: Write the brief
42
-
43
- Write the smallest useful brief:
44
-
45
- 1. **Job and audience:** who arrives, their context, need, and visitor mode.
46
- 2. **Outcome and proof:** primary task/action, success, real evidence, and product-specific truth.
47
- 3. **Selected direction:** visual authority, structural/interaction thesis, sequence, focal moment, and implementation consequence.
48
- 4. **Scope and boundaries:** fidelity, breadth, interactivity, named target, what remains untouched, and explicit anti-goals.
49
- 5. **States and ranges:** realistic content/data ranges and material states.
50
- 6. **Interaction and layout:** hierarchy, topology, responsiveness, affordances, feedback, and transitions; intent, not CSS.
51
- 7. **Constraints and open decisions:** platform, delivery, accessibility, localization, reusable components, and choices a builder must not invent.
52
-
53
- Use three to five bullets when the task is settled; use the full structure only for ambiguous, multi-screen, or standalone planning. Do not restate the conversation.
54
-
55
- ## Confirm and stop
56
-
57
- Present the brief for explicit confirmation or one correction round, then stop: shape never writes code or a direction contract.
58
-
59
- When no human or structured answer mechanism exists, mark assumptions plainly, return the brief, and stop.