lsd-pi 1.2.0 → 1.2.2

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 (520) hide show
  1. package/dist/cli.js +7 -1
  2. package/dist/onboarding.js +3 -3
  3. package/dist/resources/agents/scout.md +6 -0
  4. package/dist/resources/extensions/slash-commands/plan.js +7 -1
  5. package/dist/resources/extensions/subagent/index.js +10 -2
  6. package/dist/resources/extensions/usage/index.js +87 -36
  7. package/package.json +1 -1
  8. package/packages/pi-agent-core/dist/agent.d.ts.map +1 -1
  9. package/packages/pi-agent-core/dist/agent.js +8 -2
  10. package/packages/pi-agent-core/dist/agent.js.map +1 -1
  11. package/packages/pi-agent-core/src/agent.ts +8 -2
  12. package/packages/pi-ai/dist/models.generated.d.ts +222 -1
  13. package/packages/pi-ai/dist/models.generated.d.ts.map +1 -1
  14. package/packages/pi-ai/dist/models.generated.js +227 -6
  15. package/packages/pi-ai/dist/models.generated.js.map +1 -1
  16. package/packages/pi-ai/dist/models.test.js +28 -0
  17. package/packages/pi-ai/dist/models.test.js.map +1 -1
  18. package/packages/pi-ai/scripts/generate-models.ts +10 -100
  19. package/packages/pi-ai/src/models.generated.ts +227 -6
  20. package/packages/pi-ai/src/models.test.ts +30 -0
  21. package/packages/pi-coding-agent/dist/core/agent-session.d.ts +2 -0
  22. package/packages/pi-coding-agent/dist/core/agent-session.d.ts.map +1 -1
  23. package/packages/pi-coding-agent/dist/core/agent-session.js +28 -0
  24. package/packages/pi-coding-agent/dist/core/agent-session.js.map +1 -1
  25. package/packages/pi-coding-agent/dist/core/settings-manager.js +1 -1
  26. package/packages/pi-coding-agent/dist/core/settings-manager.js.map +1 -1
  27. package/packages/pi-coding-agent/dist/core/system-prompt.d.ts.map +1 -1
  28. package/packages/pi-coding-agent/dist/core/system-prompt.js +10 -0
  29. package/packages/pi-coding-agent/dist/core/system-prompt.js.map +1 -1
  30. package/packages/pi-coding-agent/dist/index.d.ts +1 -1
  31. package/packages/pi-coding-agent/dist/index.d.ts.map +1 -1
  32. package/packages/pi-coding-agent/dist/index.js +1 -1
  33. package/packages/pi-coding-agent/dist/index.js.map +1 -1
  34. package/packages/pi-coding-agent/dist/tests/path-display.test.js +13 -0
  35. package/packages/pi-coding-agent/dist/tests/path-display.test.js.map +1 -1
  36. package/packages/pi-coding-agent/dist/tests/settings-manager-scout-policy.test.d.ts +2 -0
  37. package/packages/pi-coding-agent/dist/tests/settings-manager-scout-policy.test.d.ts.map +1 -0
  38. package/packages/pi-coding-agent/dist/tests/settings-manager-scout-policy.test.js +15 -0
  39. package/packages/pi-coding-agent/dist/tests/settings-manager-scout-policy.test.js.map +1 -0
  40. package/packages/pi-coding-agent/package.json +1 -1
  41. package/packages/pi-coding-agent/src/core/agent-session.ts +35 -0
  42. package/packages/pi-coding-agent/src/core/settings-manager.ts +1 -1
  43. package/packages/pi-coding-agent/src/core/system-prompt.ts +26 -0
  44. package/packages/pi-coding-agent/src/index.ts +1 -0
  45. package/packages/pi-coding-agent/src/tests/path-display.test.ts +14 -0
  46. package/pkg/package.json +1 -1
  47. package/src/resources/agents/scout.md +6 -0
  48. package/src/resources/extensions/slash-commands/plan.ts +11 -1
  49. package/src/resources/extensions/subagent/index.ts +10 -2
  50. package/src/resources/extensions/usage/index.ts +92 -38
  51. package/dist/resources/agents/javascript-pro.md +0 -280
  52. package/dist/resources/agents/researcher.md +0 -29
  53. package/dist/resources/agents/teams-builder.md +0 -74
  54. package/dist/resources/agents/teams-reviewer.md +0 -113
  55. package/dist/resources/agents/typescript-pro.md +0 -255
  56. package/dist/resources/skills/accessibility/SKILL.md +0 -522
  57. package/dist/resources/skills/accessibility/references/WCAG.md +0 -162
  58. package/dist/resources/skills/core-web-vitals/SKILL.md +0 -441
  59. package/dist/resources/skills/core-web-vitals/references/LCP.md +0 -208
  60. package/dist/resources/skills/frontend-design/SKILL.md +0 -45
  61. package/dist/resources/skills/make-interfaces-feel-better/SKILL.md +0 -122
  62. package/dist/resources/skills/make-interfaces-feel-better/animations.md +0 -379
  63. package/dist/resources/skills/make-interfaces-feel-better/performance.md +0 -88
  64. package/dist/resources/skills/make-interfaces-feel-better/surfaces.md +0 -247
  65. package/dist/resources/skills/make-interfaces-feel-better/typography.md +0 -123
  66. package/dist/resources/skills/react-best-practices/README.md +0 -123
  67. package/dist/resources/skills/react-best-practices/SKILL.md +0 -136
  68. package/dist/resources/skills/react-best-practices/metadata.json +0 -15
  69. package/dist/resources/skills/react-best-practices/rules/_sections.md +0 -46
  70. package/dist/resources/skills/react-best-practices/rules/_template.md +0 -28
  71. package/dist/resources/skills/react-best-practices/rules/advanced-event-handler-refs.md +0 -55
  72. package/dist/resources/skills/react-best-practices/rules/advanced-init-once.md +0 -42
  73. package/dist/resources/skills/react-best-practices/rules/advanced-use-latest.md +0 -39
  74. package/dist/resources/skills/react-best-practices/rules/async-api-routes.md +0 -38
  75. package/dist/resources/skills/react-best-practices/rules/async-defer-await.md +0 -80
  76. package/dist/resources/skills/react-best-practices/rules/async-dependencies.md +0 -51
  77. package/dist/resources/skills/react-best-practices/rules/async-parallel.md +0 -28
  78. package/dist/resources/skills/react-best-practices/rules/async-suspense-boundaries.md +0 -99
  79. package/dist/resources/skills/react-best-practices/rules/bundle-barrel-imports.md +0 -59
  80. package/dist/resources/skills/react-best-practices/rules/bundle-conditional.md +0 -31
  81. package/dist/resources/skills/react-best-practices/rules/bundle-defer-third-party.md +0 -49
  82. package/dist/resources/skills/react-best-practices/rules/bundle-dynamic-imports.md +0 -35
  83. package/dist/resources/skills/react-best-practices/rules/bundle-preload.md +0 -50
  84. package/dist/resources/skills/react-best-practices/rules/client-event-listeners.md +0 -74
  85. package/dist/resources/skills/react-best-practices/rules/client-localstorage-schema.md +0 -71
  86. package/dist/resources/skills/react-best-practices/rules/client-passive-event-listeners.md +0 -48
  87. package/dist/resources/skills/react-best-practices/rules/client-swr-dedup.md +0 -56
  88. package/dist/resources/skills/react-best-practices/rules/js-batch-dom-css.md +0 -107
  89. package/dist/resources/skills/react-best-practices/rules/js-cache-function-results.md +0 -80
  90. package/dist/resources/skills/react-best-practices/rules/js-cache-property-access.md +0 -28
  91. package/dist/resources/skills/react-best-practices/rules/js-cache-storage.md +0 -70
  92. package/dist/resources/skills/react-best-practices/rules/js-combine-iterations.md +0 -32
  93. package/dist/resources/skills/react-best-practices/rules/js-early-exit.md +0 -50
  94. package/dist/resources/skills/react-best-practices/rules/js-hoist-regexp.md +0 -45
  95. package/dist/resources/skills/react-best-practices/rules/js-index-maps.md +0 -37
  96. package/dist/resources/skills/react-best-practices/rules/js-length-check-first.md +0 -49
  97. package/dist/resources/skills/react-best-practices/rules/js-min-max-loop.md +0 -82
  98. package/dist/resources/skills/react-best-practices/rules/js-set-map-lookups.md +0 -24
  99. package/dist/resources/skills/react-best-practices/rules/js-tosorted-immutable.md +0 -57
  100. package/dist/resources/skills/react-best-practices/rules/rendering-activity.md +0 -26
  101. package/dist/resources/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +0 -47
  102. package/dist/resources/skills/react-best-practices/rules/rendering-conditional-render.md +0 -40
  103. package/dist/resources/skills/react-best-practices/rules/rendering-content-visibility.md +0 -38
  104. package/dist/resources/skills/react-best-practices/rules/rendering-hoist-jsx.md +0 -46
  105. package/dist/resources/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +0 -82
  106. package/dist/resources/skills/react-best-practices/rules/rendering-hydration-suppress-warning.md +0 -30
  107. package/dist/resources/skills/react-best-practices/rules/rendering-svg-precision.md +0 -28
  108. package/dist/resources/skills/react-best-practices/rules/rendering-usetransition-loading.md +0 -75
  109. package/dist/resources/skills/react-best-practices/rules/rerender-defer-reads.md +0 -39
  110. package/dist/resources/skills/react-best-practices/rules/rerender-dependencies.md +0 -45
  111. package/dist/resources/skills/react-best-practices/rules/rerender-derived-state-no-effect.md +0 -40
  112. package/dist/resources/skills/react-best-practices/rules/rerender-derived-state.md +0 -29
  113. package/dist/resources/skills/react-best-practices/rules/rerender-functional-setstate.md +0 -74
  114. package/dist/resources/skills/react-best-practices/rules/rerender-lazy-state-init.md +0 -58
  115. package/dist/resources/skills/react-best-practices/rules/rerender-memo-with-default-value.md +0 -38
  116. package/dist/resources/skills/react-best-practices/rules/rerender-memo.md +0 -44
  117. package/dist/resources/skills/react-best-practices/rules/rerender-move-effect-to-event.md +0 -45
  118. package/dist/resources/skills/react-best-practices/rules/rerender-simple-expression-in-memo.md +0 -35
  119. package/dist/resources/skills/react-best-practices/rules/rerender-transitions.md +0 -40
  120. package/dist/resources/skills/react-best-practices/rules/rerender-use-ref-transient-values.md +0 -73
  121. package/dist/resources/skills/react-best-practices/rules/server-after-nonblocking.md +0 -73
  122. package/dist/resources/skills/react-best-practices/rules/server-auth-actions.md +0 -96
  123. package/dist/resources/skills/react-best-practices/rules/server-cache-lru.md +0 -41
  124. package/dist/resources/skills/react-best-practices/rules/server-cache-react.md +0 -76
  125. package/dist/resources/skills/react-best-practices/rules/server-dedup-props.md +0 -65
  126. package/dist/resources/skills/react-best-practices/rules/server-parallel-fetching.md +0 -83
  127. package/dist/resources/skills/react-best-practices/rules/server-serialization.md +0 -38
  128. package/dist/resources/skills/userinterface-wiki/SKILL.md +0 -253
  129. package/dist/resources/skills/userinterface-wiki/rules/_sections.md +0 -66
  130. package/dist/resources/skills/userinterface-wiki/rules/_template.md +0 -24
  131. package/dist/resources/skills/userinterface-wiki/rules/a11y-reduced-motion-check.md +0 -30
  132. package/dist/resources/skills/userinterface-wiki/rules/a11y-toggle-setting.md +0 -30
  133. package/dist/resources/skills/userinterface-wiki/rules/a11y-visual-equivalent.md +0 -36
  134. package/dist/resources/skills/userinterface-wiki/rules/a11y-volume-control.md +0 -28
  135. package/dist/resources/skills/userinterface-wiki/rules/appropriate-confirmations-only.md +0 -19
  136. package/dist/resources/skills/userinterface-wiki/rules/appropriate-errors-warnings.md +0 -18
  137. package/dist/resources/skills/userinterface-wiki/rules/appropriate-no-decorative.md +0 -21
  138. package/dist/resources/skills/userinterface-wiki/rules/appropriate-no-high-frequency.md +0 -28
  139. package/dist/resources/skills/userinterface-wiki/rules/appropriate-no-punishing.md +0 -27
  140. package/dist/resources/skills/userinterface-wiki/rules/container-callback-ref.md +0 -31
  141. package/dist/resources/skills/userinterface-wiki/rules/container-guard-initial-zero.md +0 -25
  142. package/dist/resources/skills/userinterface-wiki/rules/container-no-excessive-use.md +0 -13
  143. package/dist/resources/skills/userinterface-wiki/rules/container-overflow-hidden.md +0 -25
  144. package/dist/resources/skills/userinterface-wiki/rules/container-transition-delay.md +0 -21
  145. package/dist/resources/skills/userinterface-wiki/rules/container-two-div-pattern.md +0 -35
  146. package/dist/resources/skills/userinterface-wiki/rules/container-use-resize-observer.md +0 -48
  147. package/dist/resources/skills/userinterface-wiki/rules/context-cleanup-nodes.md +0 -25
  148. package/dist/resources/skills/userinterface-wiki/rules/context-resume-suspended.md +0 -28
  149. package/dist/resources/skills/userinterface-wiki/rules/context-reuse-single.md +0 -30
  150. package/dist/resources/skills/userinterface-wiki/rules/design-filter-for-character.md +0 -25
  151. package/dist/resources/skills/userinterface-wiki/rules/design-noise-for-percussion.md +0 -26
  152. package/dist/resources/skills/userinterface-wiki/rules/design-oscillator-for-tonal.md +0 -22
  153. package/dist/resources/skills/userinterface-wiki/rules/duration-max-300ms.md +0 -21
  154. package/dist/resources/skills/userinterface-wiki/rules/duration-press-hover.md +0 -21
  155. package/dist/resources/skills/userinterface-wiki/rules/duration-shorten-before-curve.md +0 -21
  156. package/dist/resources/skills/userinterface-wiki/rules/duration-small-state.md +0 -15
  157. package/dist/resources/skills/userinterface-wiki/rules/easing-entrance-ease-out.md +0 -21
  158. package/dist/resources/skills/userinterface-wiki/rules/easing-exit-ease-in.md +0 -21
  159. package/dist/resources/skills/userinterface-wiki/rules/easing-for-state-change.md +0 -27
  160. package/dist/resources/skills/userinterface-wiki/rules/easing-linear-only-progress.md +0 -21
  161. package/dist/resources/skills/userinterface-wiki/rules/easing-natural-decay.md +0 -22
  162. package/dist/resources/skills/userinterface-wiki/rules/easing-no-linear-motion.md +0 -22
  163. package/dist/resources/skills/userinterface-wiki/rules/easing-transition-ease-in-out.md +0 -15
  164. package/dist/resources/skills/userinterface-wiki/rules/envelope-exponential-decay.md +0 -21
  165. package/dist/resources/skills/userinterface-wiki/rules/envelope-no-zero-target.md +0 -21
  166. package/dist/resources/skills/userinterface-wiki/rules/envelope-set-initial-value.md +0 -22
  167. package/dist/resources/skills/userinterface-wiki/rules/exit-key-required.md +0 -29
  168. package/dist/resources/skills/userinterface-wiki/rules/exit-matches-initial.md +0 -29
  169. package/dist/resources/skills/userinterface-wiki/rules/exit-prop-required.md +0 -33
  170. package/dist/resources/skills/userinterface-wiki/rules/exit-requires-wrapper.md +0 -27
  171. package/dist/resources/skills/userinterface-wiki/rules/impl-default-subtle.md +0 -21
  172. package/dist/resources/skills/userinterface-wiki/rules/impl-preload-audio.md +0 -34
  173. package/dist/resources/skills/userinterface-wiki/rules/impl-reset-current-time.md +0 -26
  174. package/dist/resources/skills/userinterface-wiki/rules/mode-pop-layout-for-lists.md +0 -25
  175. package/dist/resources/skills/userinterface-wiki/rules/mode-sync-layout-conflict.md +0 -29
  176. package/dist/resources/skills/userinterface-wiki/rules/mode-wait-doubles-duration.md +0 -25
  177. package/dist/resources/skills/userinterface-wiki/rules/morphing-aria-hidden.md +0 -21
  178. package/dist/resources/skills/userinterface-wiki/rules/morphing-consistent-viewbox.md +0 -23
  179. package/dist/resources/skills/userinterface-wiki/rules/morphing-group-variants.md +0 -33
  180. package/dist/resources/skills/userinterface-wiki/rules/morphing-jump-non-grouped.md +0 -29
  181. package/dist/resources/skills/userinterface-wiki/rules/morphing-reduced-motion.md +0 -28
  182. package/dist/resources/skills/userinterface-wiki/rules/morphing-spring-rotation.md +0 -23
  183. package/dist/resources/skills/userinterface-wiki/rules/morphing-strokelinecap-round.md +0 -21
  184. package/dist/resources/skills/userinterface-wiki/rules/morphing-three-lines.md +0 -32
  185. package/dist/resources/skills/userinterface-wiki/rules/morphing-use-collapsed.md +0 -33
  186. package/dist/resources/skills/userinterface-wiki/rules/native-backdrop-styling.md +0 -27
  187. package/dist/resources/skills/userinterface-wiki/rules/native-placeholder-styling.md +0 -27
  188. package/dist/resources/skills/userinterface-wiki/rules/native-selection-styling.md +0 -18
  189. package/dist/resources/skills/userinterface-wiki/rules/nested-consistent-timing.md +0 -25
  190. package/dist/resources/skills/userinterface-wiki/rules/nested-propagate-required.md +0 -41
  191. package/dist/resources/skills/userinterface-wiki/rules/none-context-menu-entrance.md +0 -25
  192. package/dist/resources/skills/userinterface-wiki/rules/none-high-frequency.md +0 -29
  193. package/dist/resources/skills/userinterface-wiki/rules/none-keyboard-navigation.md +0 -32
  194. package/dist/resources/skills/userinterface-wiki/rules/param-click-duration.md +0 -21
  195. package/dist/resources/skills/userinterface-wiki/rules/param-filter-frequency-range.md +0 -21
  196. package/dist/resources/skills/userinterface-wiki/rules/param-q-value-range.md +0 -21
  197. package/dist/resources/skills/userinterface-wiki/rules/param-reasonable-gain.md +0 -21
  198. package/dist/resources/skills/userinterface-wiki/rules/physics-active-state.md +0 -23
  199. package/dist/resources/skills/userinterface-wiki/rules/physics-no-excessive-stagger.md +0 -22
  200. package/dist/resources/skills/userinterface-wiki/rules/physics-spring-for-overshoot.md +0 -23
  201. package/dist/resources/skills/userinterface-wiki/rules/physics-subtle-deformation.md +0 -22
  202. package/dist/resources/skills/userinterface-wiki/rules/prefetch-hit-slop.md +0 -27
  203. package/dist/resources/skills/userinterface-wiki/rules/prefetch-keyboard-tab.md +0 -19
  204. package/dist/resources/skills/userinterface-wiki/rules/prefetch-not-everything.md +0 -22
  205. package/dist/resources/skills/userinterface-wiki/rules/prefetch-touch-fallback.md +0 -34
  206. package/dist/resources/skills/userinterface-wiki/rules/prefetch-trajectory-over-hover.md +0 -32
  207. package/dist/resources/skills/userinterface-wiki/rules/prefetch-use-selectively.md +0 -13
  208. package/dist/resources/skills/userinterface-wiki/rules/presence-disable-interactions.md +0 -31
  209. package/dist/resources/skills/userinterface-wiki/rules/presence-hook-in-child.md +0 -31
  210. package/dist/resources/skills/userinterface-wiki/rules/presence-safe-to-remove.md +0 -37
  211. package/dist/resources/skills/userinterface-wiki/rules/pseudo-content-required.md +0 -28
  212. package/dist/resources/skills/userinterface-wiki/rules/pseudo-first-line-styling.md +0 -27
  213. package/dist/resources/skills/userinterface-wiki/rules/pseudo-hit-target-expansion.md +0 -31
  214. package/dist/resources/skills/userinterface-wiki/rules/pseudo-marker-styling.md +0 -28
  215. package/dist/resources/skills/userinterface-wiki/rules/pseudo-over-dom-node.md +0 -32
  216. package/dist/resources/skills/userinterface-wiki/rules/pseudo-position-relative-parent.md +0 -33
  217. package/dist/resources/skills/userinterface-wiki/rules/pseudo-z-index-layering.md +0 -37
  218. package/dist/resources/skills/userinterface-wiki/rules/spring-for-gestures.md +0 -27
  219. package/dist/resources/skills/userinterface-wiki/rules/spring-for-interruptible.md +0 -27
  220. package/dist/resources/skills/userinterface-wiki/rules/spring-params-balanced.md +0 -29
  221. package/dist/resources/skills/userinterface-wiki/rules/spring-preserves-velocity.md +0 -28
  222. package/dist/resources/skills/userinterface-wiki/rules/staging-dim-background.md +0 -22
  223. package/dist/resources/skills/userinterface-wiki/rules/staging-one-focal-point.md +0 -24
  224. package/dist/resources/skills/userinterface-wiki/rules/staging-z-index-hierarchy.md +0 -22
  225. package/dist/resources/skills/userinterface-wiki/rules/timing-consistent.md +0 -24
  226. package/dist/resources/skills/userinterface-wiki/rules/timing-no-entrance-context-menu.md +0 -22
  227. package/dist/resources/skills/userinterface-wiki/rules/timing-under-300ms.md +0 -22
  228. package/dist/resources/skills/userinterface-wiki/rules/transition-name-cleanup.md +0 -28
  229. package/dist/resources/skills/userinterface-wiki/rules/transition-name-required.md +0 -27
  230. package/dist/resources/skills/userinterface-wiki/rules/transition-name-unique.md +0 -24
  231. package/dist/resources/skills/userinterface-wiki/rules/transition-over-js-library.md +0 -32
  232. package/dist/resources/skills/userinterface-wiki/rules/transition-style-pseudo-elements.md +0 -24
  233. package/dist/resources/skills/userinterface-wiki/rules/type-antialiased-on-retina.md +0 -18
  234. package/dist/resources/skills/userinterface-wiki/rules/type-disambiguation-stylistic-set.md +0 -15
  235. package/dist/resources/skills/userinterface-wiki/rules/type-font-display-swap.md +0 -28
  236. package/dist/resources/skills/userinterface-wiki/rules/type-justify-with-hyphens.md +0 -24
  237. package/dist/resources/skills/userinterface-wiki/rules/type-letter-spacing-uppercase.md +0 -28
  238. package/dist/resources/skills/userinterface-wiki/rules/type-no-font-synthesis.md +0 -18
  239. package/dist/resources/skills/userinterface-wiki/rules/type-oldstyle-nums-for-prose.md +0 -21
  240. package/dist/resources/skills/userinterface-wiki/rules/type-opentype-contextual-alternates.md +0 -15
  241. package/dist/resources/skills/userinterface-wiki/rules/type-optical-sizing-auto.md +0 -25
  242. package/dist/resources/skills/userinterface-wiki/rules/type-proper-fractions.md +0 -15
  243. package/dist/resources/skills/userinterface-wiki/rules/type-slashed-zero.md +0 -17
  244. package/dist/resources/skills/userinterface-wiki/rules/type-tabular-nums-for-data.md +0 -21
  245. package/dist/resources/skills/userinterface-wiki/rules/type-text-wrap-balance-headings.md +0 -21
  246. package/dist/resources/skills/userinterface-wiki/rules/type-text-wrap-pretty.md +0 -16
  247. package/dist/resources/skills/userinterface-wiki/rules/type-underline-offset.md +0 -25
  248. package/dist/resources/skills/userinterface-wiki/rules/type-variable-weight-continuous.md +0 -23
  249. package/dist/resources/skills/userinterface-wiki/rules/ux-aesthetic-usability.md +0 -32
  250. package/dist/resources/skills/userinterface-wiki/rules/ux-cognitive-load-reduce.md +0 -49
  251. package/dist/resources/skills/userinterface-wiki/rules/ux-common-region-boundaries.md +0 -50
  252. package/dist/resources/skills/userinterface-wiki/rules/ux-doherty-perceived-speed.md +0 -29
  253. package/dist/resources/skills/userinterface-wiki/rules/ux-doherty-under-400ms.md +0 -30
  254. package/dist/resources/skills/userinterface-wiki/rules/ux-fitts-hit-area.md +0 -32
  255. package/dist/resources/skills/userinterface-wiki/rules/ux-fitts-target-size.md +0 -31
  256. package/dist/resources/skills/userinterface-wiki/rules/ux-goal-gradient-progress.md +0 -33
  257. package/dist/resources/skills/userinterface-wiki/rules/ux-hicks-minimize-choices.md +0 -45
  258. package/dist/resources/skills/userinterface-wiki/rules/ux-jakobs-familiar-patterns.md +0 -37
  259. package/dist/resources/skills/userinterface-wiki/rules/ux-millers-chunking.md +0 -23
  260. package/dist/resources/skills/userinterface-wiki/rules/ux-pareto-prioritize-features.md +0 -36
  261. package/dist/resources/skills/userinterface-wiki/rules/ux-peak-end-finish-strong.md +0 -35
  262. package/dist/resources/skills/userinterface-wiki/rules/ux-postels-accept-messy-input.md +0 -45
  263. package/dist/resources/skills/userinterface-wiki/rules/ux-pragnanz-simplify.md +0 -33
  264. package/dist/resources/skills/userinterface-wiki/rules/ux-progressive-disclosure.md +0 -41
  265. package/dist/resources/skills/userinterface-wiki/rules/ux-proximity-grouping.md +0 -38
  266. package/dist/resources/skills/userinterface-wiki/rules/ux-serial-position.md +0 -31
  267. package/dist/resources/skills/userinterface-wiki/rules/ux-similarity-consistency.md +0 -35
  268. package/dist/resources/skills/userinterface-wiki/rules/ux-teslers-complexity.md +0 -28
  269. package/dist/resources/skills/userinterface-wiki/rules/ux-uniform-connectedness.md +0 -43
  270. package/dist/resources/skills/userinterface-wiki/rules/ux-von-restorff-emphasis.md +0 -29
  271. package/dist/resources/skills/userinterface-wiki/rules/ux-zeigarnik-show-incomplete.md +0 -36
  272. package/dist/resources/skills/userinterface-wiki/rules/visual-animate-shadow-pseudo.md +0 -49
  273. package/dist/resources/skills/userinterface-wiki/rules/visual-border-alpha-colors.md +0 -25
  274. package/dist/resources/skills/userinterface-wiki/rules/visual-button-shadow-anatomy.md +0 -49
  275. package/dist/resources/skills/userinterface-wiki/rules/visual-concentric-radius.md +0 -40
  276. package/dist/resources/skills/userinterface-wiki/rules/visual-consistent-spacing-scale.md +0 -35
  277. package/dist/resources/skills/userinterface-wiki/rules/visual-layered-shadows.md +0 -30
  278. package/dist/resources/skills/userinterface-wiki/rules/visual-no-pure-black-shadow.md +0 -25
  279. package/dist/resources/skills/userinterface-wiki/rules/visual-shadow-direction.md +0 -25
  280. package/dist/resources/skills/userinterface-wiki/rules/visual-shadow-matches-elevation.md +0 -23
  281. package/dist/resources/skills/userinterface-wiki/rules/weight-duration-matches-action.md +0 -29
  282. package/dist/resources/skills/userinterface-wiki/rules/weight-match-action.md +0 -32
  283. package/dist/resources/skills/web-design-guidelines/SKILL.md +0 -39
  284. package/dist/resources/skills/web-quality-audit/SKILL.md +0 -168
  285. package/dist/resources/skills/web-quality-audit/scripts/analyze.sh +0 -91
  286. package/src/resources/agents/javascript-pro.md +0 -280
  287. package/src/resources/agents/researcher.md +0 -29
  288. package/src/resources/agents/teams-builder.md +0 -74
  289. package/src/resources/agents/teams-reviewer.md +0 -113
  290. package/src/resources/agents/typescript-pro.md +0 -255
  291. package/src/resources/skills/accessibility/SKILL.md +0 -522
  292. package/src/resources/skills/accessibility/references/WCAG.md +0 -162
  293. package/src/resources/skills/core-web-vitals/SKILL.md +0 -441
  294. package/src/resources/skills/core-web-vitals/references/LCP.md +0 -208
  295. package/src/resources/skills/frontend-design/SKILL.md +0 -45
  296. package/src/resources/skills/make-interfaces-feel-better/SKILL.md +0 -122
  297. package/src/resources/skills/make-interfaces-feel-better/animations.md +0 -379
  298. package/src/resources/skills/make-interfaces-feel-better/performance.md +0 -88
  299. package/src/resources/skills/make-interfaces-feel-better/surfaces.md +0 -247
  300. package/src/resources/skills/make-interfaces-feel-better/typography.md +0 -123
  301. package/src/resources/skills/react-best-practices/README.md +0 -123
  302. package/src/resources/skills/react-best-practices/SKILL.md +0 -136
  303. package/src/resources/skills/react-best-practices/metadata.json +0 -15
  304. package/src/resources/skills/react-best-practices/rules/_sections.md +0 -46
  305. package/src/resources/skills/react-best-practices/rules/_template.md +0 -28
  306. package/src/resources/skills/react-best-practices/rules/advanced-event-handler-refs.md +0 -55
  307. package/src/resources/skills/react-best-practices/rules/advanced-init-once.md +0 -42
  308. package/src/resources/skills/react-best-practices/rules/advanced-use-latest.md +0 -39
  309. package/src/resources/skills/react-best-practices/rules/async-api-routes.md +0 -38
  310. package/src/resources/skills/react-best-practices/rules/async-defer-await.md +0 -80
  311. package/src/resources/skills/react-best-practices/rules/async-dependencies.md +0 -51
  312. package/src/resources/skills/react-best-practices/rules/async-parallel.md +0 -28
  313. package/src/resources/skills/react-best-practices/rules/async-suspense-boundaries.md +0 -99
  314. package/src/resources/skills/react-best-practices/rules/bundle-barrel-imports.md +0 -59
  315. package/src/resources/skills/react-best-practices/rules/bundle-conditional.md +0 -31
  316. package/src/resources/skills/react-best-practices/rules/bundle-defer-third-party.md +0 -49
  317. package/src/resources/skills/react-best-practices/rules/bundle-dynamic-imports.md +0 -35
  318. package/src/resources/skills/react-best-practices/rules/bundle-preload.md +0 -50
  319. package/src/resources/skills/react-best-practices/rules/client-event-listeners.md +0 -74
  320. package/src/resources/skills/react-best-practices/rules/client-localstorage-schema.md +0 -71
  321. package/src/resources/skills/react-best-practices/rules/client-passive-event-listeners.md +0 -48
  322. package/src/resources/skills/react-best-practices/rules/client-swr-dedup.md +0 -56
  323. package/src/resources/skills/react-best-practices/rules/js-batch-dom-css.md +0 -107
  324. package/src/resources/skills/react-best-practices/rules/js-cache-function-results.md +0 -80
  325. package/src/resources/skills/react-best-practices/rules/js-cache-property-access.md +0 -28
  326. package/src/resources/skills/react-best-practices/rules/js-cache-storage.md +0 -70
  327. package/src/resources/skills/react-best-practices/rules/js-combine-iterations.md +0 -32
  328. package/src/resources/skills/react-best-practices/rules/js-early-exit.md +0 -50
  329. package/src/resources/skills/react-best-practices/rules/js-hoist-regexp.md +0 -45
  330. package/src/resources/skills/react-best-practices/rules/js-index-maps.md +0 -37
  331. package/src/resources/skills/react-best-practices/rules/js-length-check-first.md +0 -49
  332. package/src/resources/skills/react-best-practices/rules/js-min-max-loop.md +0 -82
  333. package/src/resources/skills/react-best-practices/rules/js-set-map-lookups.md +0 -24
  334. package/src/resources/skills/react-best-practices/rules/js-tosorted-immutable.md +0 -57
  335. package/src/resources/skills/react-best-practices/rules/rendering-activity.md +0 -26
  336. package/src/resources/skills/react-best-practices/rules/rendering-animate-svg-wrapper.md +0 -47
  337. package/src/resources/skills/react-best-practices/rules/rendering-conditional-render.md +0 -40
  338. package/src/resources/skills/react-best-practices/rules/rendering-content-visibility.md +0 -38
  339. package/src/resources/skills/react-best-practices/rules/rendering-hoist-jsx.md +0 -46
  340. package/src/resources/skills/react-best-practices/rules/rendering-hydration-no-flicker.md +0 -82
  341. package/src/resources/skills/react-best-practices/rules/rendering-hydration-suppress-warning.md +0 -30
  342. package/src/resources/skills/react-best-practices/rules/rendering-svg-precision.md +0 -28
  343. package/src/resources/skills/react-best-practices/rules/rendering-usetransition-loading.md +0 -75
  344. package/src/resources/skills/react-best-practices/rules/rerender-defer-reads.md +0 -39
  345. package/src/resources/skills/react-best-practices/rules/rerender-dependencies.md +0 -45
  346. package/src/resources/skills/react-best-practices/rules/rerender-derived-state-no-effect.md +0 -40
  347. package/src/resources/skills/react-best-practices/rules/rerender-derived-state.md +0 -29
  348. package/src/resources/skills/react-best-practices/rules/rerender-functional-setstate.md +0 -74
  349. package/src/resources/skills/react-best-practices/rules/rerender-lazy-state-init.md +0 -58
  350. package/src/resources/skills/react-best-practices/rules/rerender-memo-with-default-value.md +0 -38
  351. package/src/resources/skills/react-best-practices/rules/rerender-memo.md +0 -44
  352. package/src/resources/skills/react-best-practices/rules/rerender-move-effect-to-event.md +0 -45
  353. package/src/resources/skills/react-best-practices/rules/rerender-simple-expression-in-memo.md +0 -35
  354. package/src/resources/skills/react-best-practices/rules/rerender-transitions.md +0 -40
  355. package/src/resources/skills/react-best-practices/rules/rerender-use-ref-transient-values.md +0 -73
  356. package/src/resources/skills/react-best-practices/rules/server-after-nonblocking.md +0 -73
  357. package/src/resources/skills/react-best-practices/rules/server-auth-actions.md +0 -96
  358. package/src/resources/skills/react-best-practices/rules/server-cache-lru.md +0 -41
  359. package/src/resources/skills/react-best-practices/rules/server-cache-react.md +0 -76
  360. package/src/resources/skills/react-best-practices/rules/server-dedup-props.md +0 -65
  361. package/src/resources/skills/react-best-practices/rules/server-parallel-fetching.md +0 -83
  362. package/src/resources/skills/react-best-practices/rules/server-serialization.md +0 -38
  363. package/src/resources/skills/userinterface-wiki/SKILL.md +0 -253
  364. package/src/resources/skills/userinterface-wiki/rules/_sections.md +0 -66
  365. package/src/resources/skills/userinterface-wiki/rules/_template.md +0 -24
  366. package/src/resources/skills/userinterface-wiki/rules/a11y-reduced-motion-check.md +0 -30
  367. package/src/resources/skills/userinterface-wiki/rules/a11y-toggle-setting.md +0 -30
  368. package/src/resources/skills/userinterface-wiki/rules/a11y-visual-equivalent.md +0 -36
  369. package/src/resources/skills/userinterface-wiki/rules/a11y-volume-control.md +0 -28
  370. package/src/resources/skills/userinterface-wiki/rules/appropriate-confirmations-only.md +0 -19
  371. package/src/resources/skills/userinterface-wiki/rules/appropriate-errors-warnings.md +0 -18
  372. package/src/resources/skills/userinterface-wiki/rules/appropriate-no-decorative.md +0 -21
  373. package/src/resources/skills/userinterface-wiki/rules/appropriate-no-high-frequency.md +0 -28
  374. package/src/resources/skills/userinterface-wiki/rules/appropriate-no-punishing.md +0 -27
  375. package/src/resources/skills/userinterface-wiki/rules/container-callback-ref.md +0 -31
  376. package/src/resources/skills/userinterface-wiki/rules/container-guard-initial-zero.md +0 -25
  377. package/src/resources/skills/userinterface-wiki/rules/container-no-excessive-use.md +0 -13
  378. package/src/resources/skills/userinterface-wiki/rules/container-overflow-hidden.md +0 -25
  379. package/src/resources/skills/userinterface-wiki/rules/container-transition-delay.md +0 -21
  380. package/src/resources/skills/userinterface-wiki/rules/container-two-div-pattern.md +0 -35
  381. package/src/resources/skills/userinterface-wiki/rules/container-use-resize-observer.md +0 -48
  382. package/src/resources/skills/userinterface-wiki/rules/context-cleanup-nodes.md +0 -25
  383. package/src/resources/skills/userinterface-wiki/rules/context-resume-suspended.md +0 -28
  384. package/src/resources/skills/userinterface-wiki/rules/context-reuse-single.md +0 -30
  385. package/src/resources/skills/userinterface-wiki/rules/design-filter-for-character.md +0 -25
  386. package/src/resources/skills/userinterface-wiki/rules/design-noise-for-percussion.md +0 -26
  387. package/src/resources/skills/userinterface-wiki/rules/design-oscillator-for-tonal.md +0 -22
  388. package/src/resources/skills/userinterface-wiki/rules/duration-max-300ms.md +0 -21
  389. package/src/resources/skills/userinterface-wiki/rules/duration-press-hover.md +0 -21
  390. package/src/resources/skills/userinterface-wiki/rules/duration-shorten-before-curve.md +0 -21
  391. package/src/resources/skills/userinterface-wiki/rules/duration-small-state.md +0 -15
  392. package/src/resources/skills/userinterface-wiki/rules/easing-entrance-ease-out.md +0 -21
  393. package/src/resources/skills/userinterface-wiki/rules/easing-exit-ease-in.md +0 -21
  394. package/src/resources/skills/userinterface-wiki/rules/easing-for-state-change.md +0 -27
  395. package/src/resources/skills/userinterface-wiki/rules/easing-linear-only-progress.md +0 -21
  396. package/src/resources/skills/userinterface-wiki/rules/easing-natural-decay.md +0 -22
  397. package/src/resources/skills/userinterface-wiki/rules/easing-no-linear-motion.md +0 -22
  398. package/src/resources/skills/userinterface-wiki/rules/easing-transition-ease-in-out.md +0 -15
  399. package/src/resources/skills/userinterface-wiki/rules/envelope-exponential-decay.md +0 -21
  400. package/src/resources/skills/userinterface-wiki/rules/envelope-no-zero-target.md +0 -21
  401. package/src/resources/skills/userinterface-wiki/rules/envelope-set-initial-value.md +0 -22
  402. package/src/resources/skills/userinterface-wiki/rules/exit-key-required.md +0 -29
  403. package/src/resources/skills/userinterface-wiki/rules/exit-matches-initial.md +0 -29
  404. package/src/resources/skills/userinterface-wiki/rules/exit-prop-required.md +0 -33
  405. package/src/resources/skills/userinterface-wiki/rules/exit-requires-wrapper.md +0 -27
  406. package/src/resources/skills/userinterface-wiki/rules/impl-default-subtle.md +0 -21
  407. package/src/resources/skills/userinterface-wiki/rules/impl-preload-audio.md +0 -34
  408. package/src/resources/skills/userinterface-wiki/rules/impl-reset-current-time.md +0 -26
  409. package/src/resources/skills/userinterface-wiki/rules/mode-pop-layout-for-lists.md +0 -25
  410. package/src/resources/skills/userinterface-wiki/rules/mode-sync-layout-conflict.md +0 -29
  411. package/src/resources/skills/userinterface-wiki/rules/mode-wait-doubles-duration.md +0 -25
  412. package/src/resources/skills/userinterface-wiki/rules/morphing-aria-hidden.md +0 -21
  413. package/src/resources/skills/userinterface-wiki/rules/morphing-consistent-viewbox.md +0 -23
  414. package/src/resources/skills/userinterface-wiki/rules/morphing-group-variants.md +0 -33
  415. package/src/resources/skills/userinterface-wiki/rules/morphing-jump-non-grouped.md +0 -29
  416. package/src/resources/skills/userinterface-wiki/rules/morphing-reduced-motion.md +0 -28
  417. package/src/resources/skills/userinterface-wiki/rules/morphing-spring-rotation.md +0 -23
  418. package/src/resources/skills/userinterface-wiki/rules/morphing-strokelinecap-round.md +0 -21
  419. package/src/resources/skills/userinterface-wiki/rules/morphing-three-lines.md +0 -32
  420. package/src/resources/skills/userinterface-wiki/rules/morphing-use-collapsed.md +0 -33
  421. package/src/resources/skills/userinterface-wiki/rules/native-backdrop-styling.md +0 -27
  422. package/src/resources/skills/userinterface-wiki/rules/native-placeholder-styling.md +0 -27
  423. package/src/resources/skills/userinterface-wiki/rules/native-selection-styling.md +0 -18
  424. package/src/resources/skills/userinterface-wiki/rules/nested-consistent-timing.md +0 -25
  425. package/src/resources/skills/userinterface-wiki/rules/nested-propagate-required.md +0 -41
  426. package/src/resources/skills/userinterface-wiki/rules/none-context-menu-entrance.md +0 -25
  427. package/src/resources/skills/userinterface-wiki/rules/none-high-frequency.md +0 -29
  428. package/src/resources/skills/userinterface-wiki/rules/none-keyboard-navigation.md +0 -32
  429. package/src/resources/skills/userinterface-wiki/rules/param-click-duration.md +0 -21
  430. package/src/resources/skills/userinterface-wiki/rules/param-filter-frequency-range.md +0 -21
  431. package/src/resources/skills/userinterface-wiki/rules/param-q-value-range.md +0 -21
  432. package/src/resources/skills/userinterface-wiki/rules/param-reasonable-gain.md +0 -21
  433. package/src/resources/skills/userinterface-wiki/rules/physics-active-state.md +0 -23
  434. package/src/resources/skills/userinterface-wiki/rules/physics-no-excessive-stagger.md +0 -22
  435. package/src/resources/skills/userinterface-wiki/rules/physics-spring-for-overshoot.md +0 -23
  436. package/src/resources/skills/userinterface-wiki/rules/physics-subtle-deformation.md +0 -22
  437. package/src/resources/skills/userinterface-wiki/rules/prefetch-hit-slop.md +0 -27
  438. package/src/resources/skills/userinterface-wiki/rules/prefetch-keyboard-tab.md +0 -19
  439. package/src/resources/skills/userinterface-wiki/rules/prefetch-not-everything.md +0 -22
  440. package/src/resources/skills/userinterface-wiki/rules/prefetch-touch-fallback.md +0 -34
  441. package/src/resources/skills/userinterface-wiki/rules/prefetch-trajectory-over-hover.md +0 -32
  442. package/src/resources/skills/userinterface-wiki/rules/prefetch-use-selectively.md +0 -13
  443. package/src/resources/skills/userinterface-wiki/rules/presence-disable-interactions.md +0 -31
  444. package/src/resources/skills/userinterface-wiki/rules/presence-hook-in-child.md +0 -31
  445. package/src/resources/skills/userinterface-wiki/rules/presence-safe-to-remove.md +0 -37
  446. package/src/resources/skills/userinterface-wiki/rules/pseudo-content-required.md +0 -28
  447. package/src/resources/skills/userinterface-wiki/rules/pseudo-first-line-styling.md +0 -27
  448. package/src/resources/skills/userinterface-wiki/rules/pseudo-hit-target-expansion.md +0 -31
  449. package/src/resources/skills/userinterface-wiki/rules/pseudo-marker-styling.md +0 -28
  450. package/src/resources/skills/userinterface-wiki/rules/pseudo-over-dom-node.md +0 -32
  451. package/src/resources/skills/userinterface-wiki/rules/pseudo-position-relative-parent.md +0 -33
  452. package/src/resources/skills/userinterface-wiki/rules/pseudo-z-index-layering.md +0 -37
  453. package/src/resources/skills/userinterface-wiki/rules/spring-for-gestures.md +0 -27
  454. package/src/resources/skills/userinterface-wiki/rules/spring-for-interruptible.md +0 -27
  455. package/src/resources/skills/userinterface-wiki/rules/spring-params-balanced.md +0 -29
  456. package/src/resources/skills/userinterface-wiki/rules/spring-preserves-velocity.md +0 -28
  457. package/src/resources/skills/userinterface-wiki/rules/staging-dim-background.md +0 -22
  458. package/src/resources/skills/userinterface-wiki/rules/staging-one-focal-point.md +0 -24
  459. package/src/resources/skills/userinterface-wiki/rules/staging-z-index-hierarchy.md +0 -22
  460. package/src/resources/skills/userinterface-wiki/rules/timing-consistent.md +0 -24
  461. package/src/resources/skills/userinterface-wiki/rules/timing-no-entrance-context-menu.md +0 -22
  462. package/src/resources/skills/userinterface-wiki/rules/timing-under-300ms.md +0 -22
  463. package/src/resources/skills/userinterface-wiki/rules/transition-name-cleanup.md +0 -28
  464. package/src/resources/skills/userinterface-wiki/rules/transition-name-required.md +0 -27
  465. package/src/resources/skills/userinterface-wiki/rules/transition-name-unique.md +0 -24
  466. package/src/resources/skills/userinterface-wiki/rules/transition-over-js-library.md +0 -32
  467. package/src/resources/skills/userinterface-wiki/rules/transition-style-pseudo-elements.md +0 -24
  468. package/src/resources/skills/userinterface-wiki/rules/type-antialiased-on-retina.md +0 -18
  469. package/src/resources/skills/userinterface-wiki/rules/type-disambiguation-stylistic-set.md +0 -15
  470. package/src/resources/skills/userinterface-wiki/rules/type-font-display-swap.md +0 -28
  471. package/src/resources/skills/userinterface-wiki/rules/type-justify-with-hyphens.md +0 -24
  472. package/src/resources/skills/userinterface-wiki/rules/type-letter-spacing-uppercase.md +0 -28
  473. package/src/resources/skills/userinterface-wiki/rules/type-no-font-synthesis.md +0 -18
  474. package/src/resources/skills/userinterface-wiki/rules/type-oldstyle-nums-for-prose.md +0 -21
  475. package/src/resources/skills/userinterface-wiki/rules/type-opentype-contextual-alternates.md +0 -15
  476. package/src/resources/skills/userinterface-wiki/rules/type-optical-sizing-auto.md +0 -25
  477. package/src/resources/skills/userinterface-wiki/rules/type-proper-fractions.md +0 -15
  478. package/src/resources/skills/userinterface-wiki/rules/type-slashed-zero.md +0 -17
  479. package/src/resources/skills/userinterface-wiki/rules/type-tabular-nums-for-data.md +0 -21
  480. package/src/resources/skills/userinterface-wiki/rules/type-text-wrap-balance-headings.md +0 -21
  481. package/src/resources/skills/userinterface-wiki/rules/type-text-wrap-pretty.md +0 -16
  482. package/src/resources/skills/userinterface-wiki/rules/type-underline-offset.md +0 -25
  483. package/src/resources/skills/userinterface-wiki/rules/type-variable-weight-continuous.md +0 -23
  484. package/src/resources/skills/userinterface-wiki/rules/ux-aesthetic-usability.md +0 -32
  485. package/src/resources/skills/userinterface-wiki/rules/ux-cognitive-load-reduce.md +0 -49
  486. package/src/resources/skills/userinterface-wiki/rules/ux-common-region-boundaries.md +0 -50
  487. package/src/resources/skills/userinterface-wiki/rules/ux-doherty-perceived-speed.md +0 -29
  488. package/src/resources/skills/userinterface-wiki/rules/ux-doherty-under-400ms.md +0 -30
  489. package/src/resources/skills/userinterface-wiki/rules/ux-fitts-hit-area.md +0 -32
  490. package/src/resources/skills/userinterface-wiki/rules/ux-fitts-target-size.md +0 -31
  491. package/src/resources/skills/userinterface-wiki/rules/ux-goal-gradient-progress.md +0 -33
  492. package/src/resources/skills/userinterface-wiki/rules/ux-hicks-minimize-choices.md +0 -45
  493. package/src/resources/skills/userinterface-wiki/rules/ux-jakobs-familiar-patterns.md +0 -37
  494. package/src/resources/skills/userinterface-wiki/rules/ux-millers-chunking.md +0 -23
  495. package/src/resources/skills/userinterface-wiki/rules/ux-pareto-prioritize-features.md +0 -36
  496. package/src/resources/skills/userinterface-wiki/rules/ux-peak-end-finish-strong.md +0 -35
  497. package/src/resources/skills/userinterface-wiki/rules/ux-postels-accept-messy-input.md +0 -45
  498. package/src/resources/skills/userinterface-wiki/rules/ux-pragnanz-simplify.md +0 -33
  499. package/src/resources/skills/userinterface-wiki/rules/ux-progressive-disclosure.md +0 -41
  500. package/src/resources/skills/userinterface-wiki/rules/ux-proximity-grouping.md +0 -38
  501. package/src/resources/skills/userinterface-wiki/rules/ux-serial-position.md +0 -31
  502. package/src/resources/skills/userinterface-wiki/rules/ux-similarity-consistency.md +0 -35
  503. package/src/resources/skills/userinterface-wiki/rules/ux-teslers-complexity.md +0 -28
  504. package/src/resources/skills/userinterface-wiki/rules/ux-uniform-connectedness.md +0 -43
  505. package/src/resources/skills/userinterface-wiki/rules/ux-von-restorff-emphasis.md +0 -29
  506. package/src/resources/skills/userinterface-wiki/rules/ux-zeigarnik-show-incomplete.md +0 -36
  507. package/src/resources/skills/userinterface-wiki/rules/visual-animate-shadow-pseudo.md +0 -49
  508. package/src/resources/skills/userinterface-wiki/rules/visual-border-alpha-colors.md +0 -25
  509. package/src/resources/skills/userinterface-wiki/rules/visual-button-shadow-anatomy.md +0 -49
  510. package/src/resources/skills/userinterface-wiki/rules/visual-concentric-radius.md +0 -40
  511. package/src/resources/skills/userinterface-wiki/rules/visual-consistent-spacing-scale.md +0 -35
  512. package/src/resources/skills/userinterface-wiki/rules/visual-layered-shadows.md +0 -30
  513. package/src/resources/skills/userinterface-wiki/rules/visual-no-pure-black-shadow.md +0 -25
  514. package/src/resources/skills/userinterface-wiki/rules/visual-shadow-direction.md +0 -25
  515. package/src/resources/skills/userinterface-wiki/rules/visual-shadow-matches-elevation.md +0 -23
  516. package/src/resources/skills/userinterface-wiki/rules/weight-duration-matches-action.md +0 -29
  517. package/src/resources/skills/userinterface-wiki/rules/weight-match-action.md +0 -32
  518. package/src/resources/skills/web-design-guidelines/SKILL.md +0 -39
  519. package/src/resources/skills/web-quality-audit/SKILL.md +0 -168
  520. package/src/resources/skills/web-quality-audit/scripts/analyze.sh +0 -91
@@ -1,25 +0,0 @@
1
- ---
2
- title: Use Semi-Transparent Borders for Subtle Separation
3
- impact: MEDIUM
4
- tags: visual, border, alpha, separation
5
- ---
6
-
7
- ## Use Semi-Transparent Borders for Subtle Separation
8
-
9
- Semi-transparent borders adapt to any background color and create subtle, non-jarring separation.
10
-
11
- **Incorrect (hardcoded border color):**
12
-
13
- ```css
14
- .card {
15
- border: 1px solid #e5e5e5;
16
- }
17
- ```
18
-
19
- **Correct (alpha border):**
20
-
21
- ```css
22
- .card {
23
- border: 1px solid var(--gray-a4);
24
- }
25
- ```
@@ -1,49 +0,0 @@
1
- ---
2
- title: Use Full Shadow Anatomy on Buttons
3
- impact: HIGH
4
- tags: visual, shadow, button, depth, gradient
5
- ---
6
-
7
- ## Use Full Shadow Anatomy on Buttons
8
-
9
- A polished button uses six layered techniques, not just a single box-shadow.
10
-
11
- 1. **Outer cut shadow** — 0.5px dark box-shadow to "cut" the button into the surface
12
- 2. **Inner ambient highlight** — 1px inset box-shadow on all sides for environmental light reflections
13
- 3. **Inner top highlight** — 1px inset top highlight for the primary light source from above
14
- 4. **Layered depth shadows** — At least 3 external shadows for natural lighting
15
- 5. **Text drop-shadow** — Drop-shadow on text/icons for better contrast against the button background
16
- 6. **Subtle gradient background** — If you can tell there's a gradient, it's too much
17
-
18
- **Incorrect (flat button):**
19
-
20
- ```css
21
- .button {
22
- background: var(--gray-12);
23
- color: var(--gray-1);
24
- box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
25
- }
26
- ```
27
-
28
- **Correct (full shadow anatomy):**
29
-
30
- ```css
31
- .button {
32
- background: linear-gradient(
33
- to bottom,
34
- color-mix(in srgb, var(--gray-12) 100%, white 4%),
35
- var(--gray-12)
36
- );
37
- color: var(--gray-1);
38
- box-shadow:
39
- 0 0 0 0.5px rgba(0, 0, 0, 0.3),
40
- inset 0 0 0 1px rgba(255, 255, 255, 0.04),
41
- inset 0 1px 0 rgba(255, 255, 255, 0.07),
42
- 0 1px 2px rgba(0, 0, 0, 0.1),
43
- 0 2px 4px rgba(0, 0, 0, 0.06),
44
- 0 4px 8px rgba(0, 0, 0, 0.03);
45
- text-shadow: 0 1px 1px rgba(0, 0, 0, 0.15);
46
- }
47
- ```
48
-
49
- Reference: [@PixelJanitor](https://threadreaderapp.com/thread/1623358514440859649)
@@ -1,40 +0,0 @@
1
- ---
2
- title: Concentric Border Radius for Nested Elements
3
- impact: HIGH
4
- tags: visual, border-radius, concentric, nesting
5
- ---
6
-
7
- ## Concentric Border Radius for Nested Elements
8
-
9
- When nesting rounded elements, inner radius must equal outer radius minus the gap. Same radius on both creates uneven curves.
10
-
11
- **Incorrect (same radius on both):**
12
-
13
- ```css
14
- .outer {
15
- border-radius: 16px;
16
- padding: 8px;
17
- }
18
-
19
- .inner {
20
- border-radius: 16px;
21
- }
22
- ```
23
-
24
- **Correct (concentric radius):**
25
-
26
- ```css
27
- .outer {
28
- --padding: 8px;
29
- --inner-radius: 8px;
30
-
31
- border-radius: calc(var(--inner-radius) + var(--padding));
32
- padding: var(--padding);
33
- }
34
-
35
- .inner {
36
- border-radius: var(--inner-radius);
37
- }
38
- ```
39
-
40
- Reference: [Concentric Border Radius](https://jakub.kr/work/concentric-border-radius)
@@ -1,35 +0,0 @@
1
- ---
2
- title: Use a Consistent Spacing Scale
3
- impact: HIGH
4
- tags: visual, spacing, scale, consistency
5
- ---
6
-
7
- ## Use a Consistent Spacing Scale
8
-
9
- Don't use arbitrary pixel values for spacing. Define a scale and stick to it throughout the UI.
10
-
11
- **Incorrect (arbitrary values):**
12
-
13
- ```css
14
- .header { padding: 17px; }
15
- .card { margin-bottom: 13px; }
16
- .section { gap: 22px; }
17
- ```
18
-
19
- **Correct (consistent scale):**
20
-
21
- ```css
22
- :root {
23
- --space-1: 4px;
24
- --space-2: 8px;
25
- --space-3: 12px;
26
- --space-4: 16px;
27
- --space-5: 24px;
28
- --space-6: 32px;
29
- --space-7: 48px;
30
- }
31
-
32
- .header { padding: var(--space-4); }
33
- .card { margin-bottom: var(--space-3); }
34
- .section { gap: var(--space-5); }
35
- ```
@@ -1,30 +0,0 @@
1
- ---
2
- title: Layer Multiple Shadows for Realistic Depth
3
- impact: HIGH
4
- tags: visual, shadow, layered, depth
5
- ---
6
-
7
- ## Layer Multiple Shadows for Realistic Depth
8
-
9
- A single box-shadow looks flat. Layer multiple shadows with increasing blur and decreasing opacity to mimic real light.
10
-
11
- **Incorrect (single flat shadow):**
12
-
13
- ```css
14
- .card {
15
- box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
16
- }
17
- ```
18
-
19
- **Correct (layered shadows):**
20
-
21
- ```css
22
- .card {
23
- box-shadow:
24
- 0 1px 2px rgba(0, 0, 0, 0.06),
25
- 0 4px 8px rgba(0, 0, 0, 0.04),
26
- 0 12px 24px rgba(0, 0, 0, 0.03);
27
- }
28
- ```
29
-
30
- Reference: [Designing Beautiful Shadows in CSS](https://www.joshwcomeau.com/css/designing-shadows/)
@@ -1,25 +0,0 @@
1
- ---
2
- title: Use Neutral Colors for Shadows, Not Pure Black
3
- impact: MEDIUM
4
- tags: visual, shadow, color, neutral
5
- ---
6
-
7
- ## Use Neutral Colors for Shadows, Not Pure Black
8
-
9
- Pure black shadows look harsh and artificial. Use deep neutrals or semi-transparent dark colors.
10
-
11
- **Incorrect (pure black):**
12
-
13
- ```css
14
- .card {
15
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.25);
16
- }
17
- ```
18
-
19
- **Correct (neutral shadow):**
20
-
21
- ```css
22
- .card {
23
- box-shadow: 0 4px 12px rgba(17, 24, 39, 0.08);
24
- }
25
- ```
@@ -1,25 +0,0 @@
1
- ---
2
- title: Consistent Shadow Direction Across UI
3
- impact: HIGH
4
- tags: visual, shadow, direction, light-source
5
- ---
6
-
7
- ## Consistent Shadow Direction Across UI
8
-
9
- All shadows must share the same offset direction to imply a single light source. Mixed directions feel broken.
10
-
11
- **Incorrect (conflicting light sources):**
12
-
13
- ```css
14
- .card { box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); }
15
- .modal { box-shadow: 4px 0 8px rgba(0, 0, 0, 0.1); }
16
- .tooltip { box-shadow: 0 -4px 8px rgba(0, 0, 0, 0.1); }
17
- ```
18
-
19
- **Correct (consistent top-down light):**
20
-
21
- ```css
22
- .card { box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08); }
23
- .modal { box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12); }
24
- .tooltip { box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1); }
25
- ```
@@ -1,23 +0,0 @@
1
- ---
2
- title: Shadow Size Indicates Elevation
3
- impact: MEDIUM
4
- tags: visual, shadow, elevation, hierarchy
5
- ---
6
-
7
- ## Shadow Size Indicates Elevation
8
-
9
- Larger blur and offset means higher elevation. Use a consistent shadow scale across your UI.
10
-
11
- **Correct (elevation scale):**
12
-
13
- ```css
14
- :root {
15
- --shadow-1: 0 1px 2px rgba(0, 0, 0, 0.05);
16
- --shadow-2: 0 2px 8px rgba(0, 0, 0, 0.08);
17
- --shadow-3: 0 8px 24px rgba(0, 0, 0, 0.12);
18
- }
19
-
20
- .card { box-shadow: var(--shadow-1); }
21
- .dropdown { box-shadow: var(--shadow-2); }
22
- .modal { box-shadow: var(--shadow-3); }
23
- ```
@@ -1,29 +0,0 @@
1
- ---
2
- title: Sound Duration Matches Action Duration
3
- impact: MEDIUM
4
- tags: weight, duration, action
5
- ---
6
-
7
- ## Sound Duration Matches Action Duration
8
-
9
- Sound duration should match action duration.
10
-
11
- **Incorrect (long sound for instant action):**
12
-
13
- ```tsx
14
- function handleClick() {
15
- playSound("long-whoosh"); // 2000ms
16
- }
17
- ```
18
-
19
- **Correct (matched duration):**
20
-
21
- ```tsx
22
- function handleClick() {
23
- playSound("click"); // 50ms
24
- }
25
-
26
- function handleUpload() {
27
- playSound("upload-progress"); // Matches upload duration
28
- }
29
- ```
@@ -1,32 +0,0 @@
1
- ---
2
- title: Match Sound Weight to Action
3
- impact: MEDIUM
4
- tags: weight, action, importance
5
- ---
6
-
7
- ## Match Sound Weight to Action
8
-
9
- Sound weight should match action importance.
10
-
11
- **Incorrect (fanfare for toggle):**
12
-
13
- ```tsx
14
- function handleToggle() {
15
- playSound("triumphant-fanfare");
16
- setEnabled(!enabled);
17
- }
18
- ```
19
-
20
- **Correct (weight matches action):**
21
-
22
- ```tsx
23
- function handleToggle() {
24
- playSound("soft-click");
25
- setEnabled(!enabled);
26
- }
27
-
28
- function handlePurchase() {
29
- playSound("success-chime");
30
- completePurchase();
31
- }
32
- ```
@@ -1,39 +0,0 @@
1
- ---
2
- name: web-design-guidelines
3
- description: Review UI code for Interface Guidelines compliance. Use when asked to "review my UI", "check accessibility", "audit design", "review UX", or "check my site against best practices".
4
- metadata:
5
- author: vercel
6
- version: "1.0.0"
7
- argument-hint: <file-or-pattern>
8
- ---
9
-
10
- # Interface Guidelines
11
-
12
- Review files for compliance with Interface Guidelines.
13
-
14
- ## How It Works
15
-
16
- 1. Fetch the latest guidelines from the source URL below
17
- 2. Read the specified files (or prompt user for files/pattern)
18
- 3. Check against all rules in the fetched guidelines
19
- 4. Output findings in the terse `file:line` format
20
-
21
- ## Guidelines Source
22
-
23
- Fetch fresh guidelines before each review:
24
-
25
- ```
26
- https://raw.githubusercontent.com/vercel-labs/web-interface-guidelines/main/command.md
27
- ```
28
-
29
- Use WebFetch to retrieve the latest rules. The fetched content contains all the rules and output format instructions.
30
-
31
- ## Usage
32
-
33
- When a user provides a file or pattern argument:
34
- 1. Fetch guidelines from the source URL above
35
- 2. Read the specified files
36
- 3. Apply all rules from the fetched guidelines
37
- 4. Output findings using the format specified in the guidelines
38
-
39
- If no files specified, ask the user which files to review.
@@ -1,168 +0,0 @@
1
- ---
2
- name: web-quality-audit
3
- description: Comprehensive web quality audit covering performance, accessibility, SEO, and best practices. Use when asked to "audit my site", "review web quality", "run lighthouse audit", "check page quality", or "optimize my website".
4
- license: MIT
5
- metadata:
6
- author: web-quality-skills
7
- version: "1.0"
8
- ---
9
-
10
- # Web quality audit
11
-
12
- Comprehensive quality review based on Google Lighthouse audits. Covers Performance, Accessibility, SEO, and Best Practices across 150+ checks.
13
-
14
- ## How it works
15
-
16
- 1. Analyze the provided code/project for quality issues
17
- 2. Categorize findings by severity (Critical, High, Medium, Low)
18
- 3. Provide specific, actionable recommendations
19
- 4. Include code examples for fixes
20
-
21
- ## Audit categories
22
-
23
- ### Performance (40% of typical issues)
24
-
25
- **Core Web Vitals** — Must pass for good page experience:
26
- * **LCP (Largest Contentful Paint) < 2.5s.** The largest visible element must render quickly. Optimize images, fonts, and server response time.
27
- * **INP (Interaction to Next Paint) < 200ms.** User interactions must feel instant. Reduce JavaScript execution time and break up long tasks.
28
- * **CLS (Cumulative Layout Shift) < 0.1.** Content must not jump around. Set explicit dimensions on images, embeds, and ads.
29
-
30
- **Resource Optimization:**
31
- * **Compress images.** Use WebP/AVIF with fallbacks. Serve correctly sized images via `srcset`.
32
- * **Minimize JavaScript.** Remove unused code. Use code splitting. Defer non-critical scripts.
33
- * **Optimize CSS.** Extract critical CSS. Remove unused styles. Avoid `@import`.
34
- * **Efficient fonts.** Use `font-display: swap`. Preload critical fonts. Subset to needed characters.
35
-
36
- **Loading Strategy:**
37
- * **Preconnect to origins.** Add `<link rel="preconnect">` for third-party domains.
38
- * **Preload critical assets.** LCP images, fonts, and above-fold CSS.
39
- * **Lazy load below-fold content.** Images, iframes, and heavy components.
40
- * **Cache effectively.** Long cache TTLs for static assets. Immutable caching for hashed files.
41
-
42
- ### Accessibility (30% of typical issues)
43
-
44
- **Perceivable:**
45
- * **Text alternatives.** Every `<img>` has meaningful `alt` text. Decorative images use `alt=""`.
46
- * **Color contrast.** Minimum 4.5:1 for normal text, 3:1 for large text (WCAG AA).
47
- * **Don't rely on color alone.** Use icons, patterns, or text alongside color indicators.
48
- * **Captions and transcripts.** Video has captions. Audio has transcripts.
49
-
50
- **Operable:**
51
- * **Keyboard accessible.** All functionality available via keyboard. No keyboard traps.
52
- * **Focus visible.** Clear focus indicators on all interactive elements.
53
- * **Skip links.** Provide "Skip to main content" for keyboard users.
54
- * **Sufficient time.** Users can extend time limits. No auto-advancing content without controls.
55
-
56
- **Understandable:**
57
- * **Page language.** Set `lang` attribute on `<html>`.
58
- * **Consistent navigation.** Same navigation structure across pages.
59
- * **Error identification.** Form errors clearly described and associated with fields.
60
- * **Labels and instructions.** All form inputs have associated labels.
61
-
62
- **Robust:**
63
- * **Valid HTML.** No duplicate IDs. Properly nested elements.
64
- * **ARIA used correctly.** Prefer native elements. ARIA roles match behavior.
65
- * **Name, role, value.** Interactive elements have accessible names and correct roles.
66
-
67
- ### SEO (15% of typical issues)
68
-
69
- **Crawlability:**
70
- * **Valid robots.txt.** Doesn't block important resources.
71
- * **XML sitemap.** Lists all important pages. Submitted to Search Console.
72
- * **Canonical URLs.** Prevent duplicate content issues.
73
- * **No noindex on important pages.** Check meta robots and headers.
74
-
75
- **On-Page SEO:**
76
- * **Unique title tags.** 50-60 characters. Primary keyword included.
77
- * **Meta descriptions.** 150-160 characters. Compelling and unique.
78
- * **Heading hierarchy.** Single `<h1>`. Logical heading structure.
79
- * **Descriptive link text.** Not "click here" or "read more".
80
-
81
- **Technical SEO:**
82
- * **Mobile-friendly.** Responsive design. Tap targets ≥ 48px.
83
- * **HTTPS.** Secure connection required.
84
- * **Fast loading.** Performance directly impacts ranking.
85
- * **Structured data.** JSON-LD for rich snippets (Article, Product, FAQ, etc.).
86
-
87
- ### Best practices (15% of typical issues)
88
-
89
- **Security:**
90
- * **HTTPS everywhere.** No mixed content. HSTS enabled.
91
- * **No vulnerable libraries.** Keep dependencies updated.
92
- * **CSP headers.** Content Security Policy to prevent XSS.
93
- * **No exposed source maps.** In production builds.
94
-
95
- **Modern Standards:**
96
- * **No deprecated APIs.** Replace `document.write`, synchronous XHR, etc.
97
- * **Valid doctype.** Use `<!DOCTYPE html>`.
98
- * **Charset declared.** `<meta charset="UTF-8">` as first element in `<head>`.
99
- * **No browser errors.** Clean console. No CORS issues.
100
-
101
- **UX Patterns:**
102
- * **No intrusive interstitials.** Especially on mobile.
103
- * **Clear permission requests.** Only ask when needed, with context.
104
- * **No misleading buttons.** Buttons do what they say.
105
-
106
- ## Severity levels
107
-
108
- | Level | Description | Action |
109
- |-------|-------------|--------|
110
- | **Critical** | Security vulnerabilities, complete failures | Fix immediately |
111
- | **High** | Core Web Vitals failures, major a11y barriers | Fix before launch |
112
- | **Medium** | Performance opportunities, SEO improvements | Fix within sprint |
113
- | **Low** | Minor optimizations, code quality | Fix when convenient |
114
-
115
- ## Audit output format
116
-
117
- When performing an audit, structure findings as:
118
-
119
- ```markdown
120
- ## Audit results
121
-
122
- ### Critical issues (X found)
123
- - **[Category]** Issue description. File: `path/to/file.js:123`
124
- - **Impact:** Why this matters
125
- - **Fix:** Specific code change or recommendation
126
-
127
- ### High priority (X found)
128
- ...
129
-
130
- ### Summary
131
- - Performance: X issues (Y critical)
132
- - Accessibility: X issues (Y critical)
133
- - SEO: X issues
134
- - Best Practices: X issues
135
-
136
- ### Recommended priority
137
- 1. First fix this because...
138
- 2. Then address...
139
- 3. Finally optimize...
140
- ```
141
-
142
- ## Quick checklist
143
-
144
- ### Before every deploy
145
- - [ ] Core Web Vitals passing
146
- - [ ] No accessibility errors (axe/Lighthouse)
147
- - [ ] No console errors
148
- - [ ] HTTPS working
149
- - [ ] Meta tags present
150
-
151
- ### Weekly review
152
- - [ ] Check Search Console for issues
153
- - [ ] Review Core Web Vitals trends
154
- - [ ] Update dependencies
155
- - [ ] Test with screen reader
156
-
157
- ### Monthly deep dive
158
- - [ ] Full Lighthouse audit
159
- - [ ] Performance profiling
160
- - [ ] Accessibility audit with real users
161
- - [ ] SEO keyword review
162
-
163
- ## References
164
-
165
- For detailed guidelines on specific areas:
166
- - [Core Web Vitals](../core-web-vitals/SKILL.md)
167
- - [Accessibility](../accessibility/SKILL.md)
168
- - [Best Practices](../best-practices/SKILL.md)
@@ -1,91 +0,0 @@
1
- #!/bin/bash
2
- set -e
3
-
4
- # Web Quality Audit Script
5
- # Analyzes HTML files for common quality issues
6
-
7
- usage() {
8
- echo "Usage: $0 <file_or_directory>" >&2
9
- echo "Analyzes HTML files for web quality issues." >&2
10
- exit 1
11
- }
12
-
13
- if [ -z "$1" ]; then
14
- usage
15
- fi
16
-
17
- TARGET="$1"
18
- ISSUES=()
19
- WARNINGS=()
20
-
21
- analyze_html() {
22
- local file="$1"
23
- echo "Analyzing: $file" >&2
24
-
25
- # Check for doctype
26
- if ! grep -qi "<!doctype html>" "$file"; then
27
- ISSUES+=("$file: Missing HTML5 doctype")
28
- fi
29
-
30
- # Check for charset
31
- if ! grep -qi 'charset.*utf-8' "$file"; then
32
- WARNINGS+=("$file: Missing or non-UTF-8 charset declaration")
33
- fi
34
-
35
- # Check for viewport
36
- if ! grep -qi 'name="viewport"' "$file"; then
37
- ISSUES+=("$file: Missing viewport meta tag")
38
- fi
39
-
40
- # Check for lang attribute
41
- if ! grep -qi '<html.*lang=' "$file"; then
42
- ISSUES+=("$file: Missing lang attribute on <html>")
43
- fi
44
-
45
- # Check for images without alt
46
- if grep -qE '<img[^>]*>' "$file" && grep -qE '<img(?![^>]*alt=)[^>]*>' "$file" 2>/dev/null; then
47
- WARNINGS+=("$file: Possible images without alt text")
48
- fi
49
-
50
- # Check for title tag
51
- if ! grep -qi '<title>' "$file"; then
52
- ISSUES+=("$file: Missing <title> tag")
53
- fi
54
-
55
- # Check for HTTPS in links
56
- if grep -qE 'http://' "$file"; then
57
- WARNINGS+=("$file: Contains non-HTTPS URLs")
58
- fi
59
- }
60
-
61
- # Process files
62
- if [ -d "$TARGET" ]; then
63
- find "$TARGET" -name "*.html" -o -name "*.htm" | while read -r file; do
64
- analyze_html "$file"
65
- done
66
- elif [ -f "$TARGET" ]; then
67
- analyze_html "$TARGET"
68
- else
69
- echo "Error: $TARGET is not a valid file or directory" >&2
70
- exit 1
71
- fi
72
-
73
- # Output results as JSON
74
- echo '{'
75
- echo ' "issues": ['
76
- for i in "${!ISSUES[@]}"; do
77
- if [ $i -gt 0 ]; then echo ','; fi
78
- echo -n " \"${ISSUES[$i]}\""
79
- done
80
- echo ''
81
- echo ' ],'
82
- echo ' "warnings": ['
83
- for i in "${!WARNINGS[@]}"; do
84
- if [ $i -gt 0 ]; then echo ','; fi
85
- echo -n " \"${WARNINGS[$i]}\""
86
- done
87
- echo ''
88
- echo ' ],'
89
- echo " \"issueCount\": ${#ISSUES[@]},"
90
- echo " \"warningCount\": ${#WARNINGS[@]}"
91
- echo '}'