@kensaurus/skills 0.0.0-stage → 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 (423) hide show
  1. package/.claude-plugin/marketplace.json +53 -0
  2. package/.claude-plugin/plugin.json +40 -0
  3. package/.cursor-plugin/plugin.json +38 -0
  4. package/.mcp.json +28 -0
  5. package/CHANGELOG.md +1761 -0
  6. package/LICENSE +21 -0
  7. package/NOTICE +13 -0
  8. package/README.md +820 -2
  9. package/SECURITY.md +55 -0
  10. package/agents/code-reviewer.md +60 -0
  11. package/agents/completion-judge.md +89 -0
  12. package/agents/db-migrator.md +125 -0
  13. package/agents/debugger.md +47 -0
  14. package/agents/deploy-checker.md +100 -0
  15. package/agents/perf-monitor.md +74 -0
  16. package/assets/favicon.png +0 -0
  17. package/assets/logo-light.png +0 -0
  18. package/assets/logo.png +0 -0
  19. package/assets/logo.svg +6 -0
  20. package/assets/og.png +0 -0
  21. package/bin/install.mjs +1127 -0
  22. package/bin/kenji.js +2 -0
  23. package/commands/adr.md +17 -0
  24. package/commands/aeo-plan.md +18 -0
  25. package/commands/arch-boundaries.md +17 -0
  26. package/commands/aso-plan.md +18 -0
  27. package/commands/auth-flows.md +19 -0
  28. package/commands/backup-plan.md +17 -0
  29. package/commands/burndown-full.md +25 -0
  30. package/commands/capacitor-plan.md +18 -0
  31. package/commands/codemod-safety.md +22 -0
  32. package/commands/commit.md +18 -0
  33. package/commands/complete-everything.md +40 -0
  34. package/commands/cost-plan.md +19 -0
  35. package/commands/deadcode-plan.md +26 -0
  36. package/commands/deadcode.md +32 -0
  37. package/commands/debug-issue.md +17 -0
  38. package/commands/deps-plan.md +18 -0
  39. package/commands/docs-plan.md +17 -0
  40. package/commands/doctrine.md +19 -0
  41. package/commands/error-plan.md +19 -0
  42. package/commands/feedback-to-closure.md +36 -0
  43. package/commands/fix-issue.md +76 -0
  44. package/commands/gate-logic.md +26 -0
  45. package/commands/green-repo.md +36 -0
  46. package/commands/grill-me.md +19 -0
  47. package/commands/gtm-plan.md +21 -0
  48. package/commands/gtm-weekly.md +17 -0
  49. package/commands/gtm.md +22 -0
  50. package/commands/handoff.md +15 -0
  51. package/commands/housekeep-backlog.md +18 -0
  52. package/commands/housekeep-files.md +22 -0
  53. package/commands/housekeep-gates.md +18 -0
  54. package/commands/instant-nav.md +11 -0
  55. package/commands/integrity-plan.md +19 -0
  56. package/commands/launch-kit.md +16 -0
  57. package/commands/mcp-guide.md +40 -0
  58. package/commands/mobile-plan.md +19 -0
  59. package/commands/native-rn-monorepo/README.md +78 -0
  60. package/commands/native-rn-monorepo/android-build.md +26 -0
  61. package/commands/native-rn-monorepo/android-install.md +32 -0
  62. package/commands/native-rn-monorepo/android-logcat.md +37 -0
  63. package/commands/native-rn-monorepo/ios-ci-logs.md +56 -0
  64. package/commands/native-rn-monorepo/ios-ci-status.md +52 -0
  65. package/commands/native-rn-monorepo/ios-ci-trigger.md +59 -0
  66. package/commands/native-rn-monorepo/rn-reset.md +50 -0
  67. package/commands/native-rn-monorepo/rn-ship-ios.md +67 -0
  68. package/commands/native-rn-monorepo/rn-verify.md +53 -0
  69. package/commands/perf-plan.md +18 -0
  70. package/commands/plan-mode.md +74 -0
  71. package/commands/pr.md +16 -0
  72. package/commands/pricing-plan.md +20 -0
  73. package/commands/privacy-plan.md +18 -0
  74. package/commands/readability.md +12 -0
  75. package/commands/readme.md +15 -0
  76. package/commands/refactor.md +15 -0
  77. package/commands/release-prep.md +17 -0
  78. package/commands/research.md +25 -0
  79. package/commands/responsive-audit.md +21 -0
  80. package/commands/review-code.md +18 -0
  81. package/commands/rls-plan.md +18 -0
  82. package/commands/secrets-plan.md +18 -0
  83. package/commands/security-plan.md +19 -0
  84. package/commands/ship-and-observe.md +36 -0
  85. package/commands/skill-conflicts.md +19 -0
  86. package/commands/slop-plan.md +18 -0
  87. package/commands/stub-plan.md +18 -0
  88. package/commands/test-mutation.md +16 -0
  89. package/commands/test-plan.md +17 -0
  90. package/commands/test.md +29 -0
  91. package/commands/thirdparty-web-interface-guidelines.md +185 -0
  92. package/commands/uiux-plan.md +18 -0
  93. package/commands/uiux.md +45 -0
  94. package/commands/update-deps.md +21 -0
  95. package/commands/validation-plan.md +19 -0
  96. package/commands-portable/fix-issue.md +72 -0
  97. package/commands-portable/plan-mode.md +92 -0
  98. package/commands-portable/research.md +91 -0
  99. package/docs/screenshots/README.md +5 -0
  100. package/docs/screenshots/audit-dark.png +0 -0
  101. package/docs/screenshots/build-dark.png +0 -0
  102. package/docs/screenshots/grill-dark.png +0 -0
  103. package/docs/screenshots/hero-dark.png +0 -0
  104. package/docs/screenshots/hero-light.png +0 -0
  105. package/docs/screenshots/ship-dark.png +0 -0
  106. package/docs/screenshots/src/showcase.html +320 -0
  107. package/hooks/completion-gate.mjs +258 -0
  108. package/hooks/cursor-hooks.json +13 -0
  109. package/hooks/hooks.json +15 -0
  110. package/install.sh +21 -0
  111. package/llms.txt +40 -0
  112. package/mcp/README.md +266 -0
  113. package/mcp/VERSIONS.md +41 -0
  114. package/mcp/mcp-full.json.template +124 -0
  115. package/mcp/mcp.json.template +29 -0
  116. package/mcp/pinned-versions.json +27 -0
  117. package/package.json +93 -4
  118. package/rules/approved-plan-execution.mdc +65 -0
  119. package/rules/full-stack-ship-discipline.mdc +37 -0
  120. package/rules/native-rn-monorepo/README.md +63 -0
  121. package/rules/native-rn-monorepo/_project.mdc +69 -0
  122. package/rules/native-rn-monorepo/native-android.mdc +72 -0
  123. package/rules/native-rn-monorepo/native-ios.mdc +61 -0
  124. package/rules/native-rn-monorepo/react-native-js.mdc +78 -0
  125. package/rules/native-rn-monorepo/web.mdc +60 -0
  126. package/rules/project-starter/components.mdc +54 -0
  127. package/rules/project-starter/data-fetching.mdc +77 -0
  128. package/rules/project-starter/git.mdc +41 -0
  129. package/rules/project-starter/supabase.mdc +37 -0
  130. package/rules/project-starter/tailwind.mdc +48 -0
  131. package/rules/project-starter/typescript.mdc +36 -0
  132. package/rules/project-starter/web-performance.mdc +42 -0
  133. package/rules/senior-engineer.mdc +30 -0
  134. package/rules/shell-first-search.mdc +19 -0
  135. package/rules/skill-workflows.mdc +35 -0
  136. package/rules/verification-before-completion.mdc +57 -0
  137. package/skills/audit-accessibility/SKILL.md +441 -0
  138. package/skills/audit-agent-speed/SKILL.md +181 -0
  139. package/skills/audit-agent-speed/scripts/stop-typecheck.mjs +151 -0
  140. package/skills/audit-analytics/SKILL.md +138 -0
  141. package/skills/audit-auth-flows/SKILL.md +267 -0
  142. package/skills/audit-backend-architecture/SKILL.md +266 -0
  143. package/skills/audit-backend-architecture/references/patterns.md +386 -0
  144. package/skills/audit-bundle-size/SKILL.md +296 -0
  145. package/skills/audit-cicd/SKILL.md +218 -0
  146. package/skills/audit-code-quality/SKILL.md +314 -0
  147. package/skills/audit-code-review/SKILL.md +289 -0
  148. package/skills/audit-codemod-safety/SKILL.md +159 -0
  149. package/skills/audit-db-schema/SKILL.md +465 -0
  150. package/skills/audit-db-schema/references/details.md +110 -0
  151. package/skills/audit-doctrine/SKILL.md +189 -0
  152. package/skills/audit-env-parity/SKILL.md +133 -0
  153. package/skills/audit-fe-api/SKILL.md +458 -0
  154. package/skills/audit-gate-logic/SKILL.md +219 -0
  155. package/skills/audit-i18n/SKILL.md +339 -0
  156. package/skills/audit-infra-cost/SKILL.md +142 -0
  157. package/skills/audit-langfuse-llm/SKILL.md +468 -0
  158. package/skills/audit-langfuse-llm/references/details.md +226 -0
  159. package/skills/audit-llm-security/SKILL.md +147 -0
  160. package/skills/audit-monetization-iap/SKILL.md +137 -0
  161. package/skills/audit-payment-system/SKILL.md +268 -0
  162. package/skills/audit-payment-system/references/checklist.md +283 -0
  163. package/skills/audit-performance/SKILL.md +383 -0
  164. package/skills/audit-performance/references/loading-priority-2026.md +81 -0
  165. package/skills/audit-realworld/SKILL.md +287 -0
  166. package/skills/audit-registry-listing/SKILL.md +122 -0
  167. package/skills/audit-resilience/SKILL.md +154 -0
  168. package/skills/audit-responsive/SKILL.md +221 -0
  169. package/skills/audit-responsive/references/checklist.md +166 -0
  170. package/skills/audit-security/SKILL.md +289 -0
  171. package/skills/audit-skill-conflicts/SKILL.md +178 -0
  172. package/skills/audit-ui-states/SKILL.md +146 -0
  173. package/skills/audit-uiux-design-system/SKILL.md +475 -0
  174. package/skills/audit-uiux-design-system/references/details.md +71 -0
  175. package/skills/audit-ux/SKILL.md +379 -0
  176. package/skills/audit-ux/references/details.md +245 -0
  177. package/skills/audit-ux-journeys/SKILL.md +215 -0
  178. package/skills/audit-ux-journeys/references/checklist.md +179 -0
  179. package/skills/backend-db-performance/SKILL.md +441 -0
  180. package/skills/backend-error-handling/SKILL.md +489 -0
  181. package/skills/backend-error-handling/references/details.md +58 -0
  182. package/skills/backend-observability/SKILL.md +88 -0
  183. package/skills/backend-patterns/SKILL.md +499 -0
  184. package/skills/backend-patterns/references/architecture-patterns.md +298 -0
  185. package/skills/backend-realtime/SKILL.md +403 -0
  186. package/skills/backend-realtime/references/patterns.md +74 -0
  187. package/skills/burndown-full/SKILL.md +174 -0
  188. package/skills/complete-everything/SKILL.md +295 -0
  189. package/skills/data-pipeline/SKILL.md +109 -0
  190. package/skills/data-visualization/SKILL.md +488 -0
  191. package/skills/debug-error/SKILL.md +322 -0
  192. package/skills/debug-fe-be-integration/SKILL.md +459 -0
  193. package/skills/debug-sentry-monitor/SKILL.md +497 -0
  194. package/skills/debug-sentry-monitor/references/details.md +165 -0
  195. package/skills/deploy-npm/SKILL.md +394 -0
  196. package/skills/deploy-npm/references/example-mushi-mushi.md +52 -0
  197. package/skills/deploy-verify/SKILL.md +489 -0
  198. package/skills/design-api/SKILL.md +379 -0
  199. package/skills/design-canvas/SKILL.md +155 -0
  200. package/skills/design-email/SKILL.md +370 -0
  201. package/skills/design-frontend/SKILL.md +143 -0
  202. package/skills/design-generative-art/SKILL.md +474 -0
  203. package/skills/design-mobile-first/SKILL.md +506 -0
  204. package/skills/design-motion/SKILL.md +333 -0
  205. package/skills/design-motion/references/delight-interactions.md +191 -0
  206. package/skills/design-prd/SKILL.md +443 -0
  207. package/skills/design-system/SKILL.md +457 -0
  208. package/skills/design-theme/SKILL.md +226 -0
  209. package/skills/design-theme/themes/tsumagoi-ranch.md +150 -0
  210. package/skills/docs-adr/SKILL.md +168 -0
  211. package/skills/docs-coauthor/SKILL.md +368 -0
  212. package/skills/docs-comparison-pages/SKILL.md +117 -0
  213. package/skills/docs-domain-modeling/SKILL.md +97 -0
  214. package/skills/docs-launch-kit/SKILL.md +139 -0
  215. package/skills/docs-writer/SKILL.md +469 -0
  216. package/skills/enhance-agent-guardrails/SKILL.md +164 -0
  217. package/skills/enhance-arch-boundaries/SKILL.md +154 -0
  218. package/skills/enhance-capacitor-ui/SKILL.md +463 -0
  219. package/skills/enhance-capacitor-ui/references/details.md +750 -0
  220. package/skills/enhance-email-deliverability/SKILL.md +143 -0
  221. package/skills/enhance-growth-loops/SKILL.md +122 -0
  222. package/skills/enhance-lifecycle-email/SKILL.md +130 -0
  223. package/skills/enhance-motion/SKILL.md +193 -0
  224. package/skills/enhance-onboarding/SKILL.md +148 -0
  225. package/skills/enhance-pwa/SKILL.md +304 -0
  226. package/skills/enhance-readability/SKILL.md +146 -0
  227. package/skills/enhance-readme/SKILL.md +496 -0
  228. package/skills/enhance-readme/package-lock.json +187 -0
  229. package/skills/enhance-readme/package.json +17 -0
  230. package/skills/enhance-readme/scripts/generate-readme-blocks.mjs +199 -0
  231. package/skills/enhance-readme/scripts/record-readme-tour.mjs +442 -0
  232. package/skills/enhance-skill-prompts/SKILL.md +167 -0
  233. package/skills/enhance-skill-prompts/references/exemplar-audit-auth-flows.md +311 -0
  234. package/skills/enhance-web-conversion/SKILL.md +155 -0
  235. package/skills/enhance-web-forms/SKILL.md +154 -0
  236. package/skills/enhance-web-instant-nav/SKILL.md +138 -0
  237. package/skills/enhance-web-instant-nav/references/bfcache-blockers.md +23 -0
  238. package/skills/enhance-web-instant-nav/references/early-hints.md +33 -0
  239. package/skills/enhance-web-instant-nav/references/speculation-rules.md +44 -0
  240. package/skills/enhance-web-landing/SKILL.md +459 -0
  241. package/skills/enhance-web-landing/references/details.md +773 -0
  242. package/skills/enhance-web-redesign/SKILL.md +228 -0
  243. package/skills/enhance-web-seo/SKILL.md +276 -0
  244. package/skills/enhance-web-ui/SKILL.md +473 -0
  245. package/skills/enhance-web-ui/references/details.md +674 -0
  246. package/skills/enhance-web-ux/HEURISTICS.md +242 -0
  247. package/skills/enhance-web-ux/PATTERNS.md +375 -0
  248. package/skills/enhance-web-ux/SKILL.md +464 -0
  249. package/skills/enhance-web-ux/examples.md +222 -0
  250. package/skills/enhance-web-ux/references/details.md +406 -0
  251. package/skills/enhance-web-web3d/SKILL.md +397 -0
  252. package/skills/enhance-web-web3d/references/css-canvas-effects.md +180 -0
  253. package/skills/handoff/SKILL.md +66 -0
  254. package/skills/housekeep-backlog/SKILL.md +149 -0
  255. package/skills/housekeep-dead-code/SKILL.md +387 -0
  256. package/skills/housekeep-dead-code/references/ratchet-ci.md +205 -0
  257. package/skills/housekeep-dead-code/references/supabase-hygiene.md +152 -0
  258. package/skills/housekeep-design/SKILL.md +207 -0
  259. package/skills/housekeep-files/SKILL.md +220 -0
  260. package/skills/housekeep-files/references/naming-and-catalog.md +86 -0
  261. package/skills/housekeep-files/scripts/housekeep-files.ps1 +360 -0
  262. package/skills/housekeep-files/scripts/housekeep-files.sh +238 -0
  263. package/skills/housekeep-gates/SKILL.md +174 -0
  264. package/skills/iterate-agent-harness/SKILL.md +137 -0
  265. package/skills/iterate-gtm-weekly/SKILL.md +103 -0
  266. package/skills/iterate-post-launch/SKILL.md +292 -0
  267. package/skills/meta-mcp-builder/SKILL.md +313 -0
  268. package/skills/meta-skill-creator/SKILL.md +304 -0
  269. package/skills/mobile-capacitor-platform/SKILL.md +104 -0
  270. package/skills/mobile-emulator-start/SKILL.md +296 -0
  271. package/skills/mobile-emulator-test/SKILL.md +491 -0
  272. package/skills/mobile-emulator-test/references/details.md +478 -0
  273. package/skills/mobile-rn-performance/SKILL.md +107 -0
  274. package/skills/mobile-rn-screen/SKILL.md +476 -0
  275. package/skills/mobile-rn-screen/references/details.md +785 -0
  276. package/skills/mushi-health/SKILL.md +206 -0
  277. package/skills/mushi-integration/SKILL.md +257 -0
  278. package/skills/plan-aeo-readiness/SKILL.md +166 -0
  279. package/skills/plan-antislop/SKILL.md +281 -0
  280. package/skills/plan-aso/SKILL.md +149 -0
  281. package/skills/plan-backup-dr/SKILL.md +131 -0
  282. package/skills/plan-capacitor-hardening/SKILL.md +217 -0
  283. package/skills/plan-data-integrity/SKILL.md +187 -0
  284. package/skills/plan-dead-code/SKILL.md +386 -0
  285. package/skills/plan-dead-code/references/knip-config.md +214 -0
  286. package/skills/plan-dead-code/references/output-templates.md +133 -0
  287. package/skills/plan-dead-code/references/preservation-contract.md +50 -0
  288. package/skills/plan-dead-code/references/residue-greps.md +84 -0
  289. package/skills/plan-dependency-provenance/SKILL.md +200 -0
  290. package/skills/plan-docs-sync/SKILL.md +143 -0
  291. package/skills/plan-docs-sync/references/drift-taxonomy.md +43 -0
  292. package/skills/plan-docs-sync/references/output-templates.md +33 -0
  293. package/skills/plan-docs-sync/references/preservation-contract.md +17 -0
  294. package/skills/plan-error-handling/SKILL.md +205 -0
  295. package/skills/plan-gtm/SKILL.md +276 -0
  296. package/skills/plan-gtm/references/benchmarks-2026.md +183 -0
  297. package/skills/plan-input-validation/SKILL.md +179 -0
  298. package/skills/plan-llm-cost-guardrails/SKILL.md +176 -0
  299. package/skills/plan-mobile-readiness/SKILL.md +171 -0
  300. package/skills/plan-perf-audit/SKILL.md +145 -0
  301. package/skills/plan-perf-audit/references/audit-scope.md +51 -0
  302. package/skills/plan-perf-audit/references/output-templates.md +33 -0
  303. package/skills/plan-perf-audit/references/preservation-contract.md +13 -0
  304. package/skills/plan-pricing/SKILL.md +173 -0
  305. package/skills/plan-privacy-compliance/SKILL.md +148 -0
  306. package/skills/plan-rls-audit/SKILL.md +231 -0
  307. package/skills/plan-secrets-audit/SKILL.md +181 -0
  308. package/skills/plan-security-audit/SKILL.md +168 -0
  309. package/skills/plan-security-audit/references/output-templates.md +36 -0
  310. package/skills/plan-security-audit/references/owasp-supabase-scope.md +55 -0
  311. package/skills/plan-security-audit/references/preservation-contract.md +18 -0
  312. package/skills/plan-stub-checker/SKILL.md +216 -0
  313. package/skills/plan-stub-checker/references/detection-methodology.md +75 -0
  314. package/skills/plan-stub-checker/references/detection-taxonomy.md +34 -0
  315. package/skills/plan-stub-checker/references/output-templates.md +63 -0
  316. package/skills/plan-stub-checker/references/preservation-contract.md +24 -0
  317. package/skills/plan-test-coverage/SKILL.md +170 -0
  318. package/skills/plan-test-coverage/references/methodology.md +54 -0
  319. package/skills/plan-test-coverage/references/output-templates.md +34 -0
  320. package/skills/plan-test-coverage/references/preservation-contract.md +15 -0
  321. package/skills/plan-uiux-unification/SKILL.md +230 -0
  322. package/skills/plan-uiux-unification/references/output-templates.md +67 -0
  323. package/skills/plan-uiux-unification/references/phase-workbook.md +85 -0
  324. package/skills/plan-uiux-unification/references/preservation-contract.md +24 -0
  325. package/skills/protocol-browser-anti-stall/SKILL.md +211 -0
  326. package/skills/protocol-browser-anti-stall/references/mcp-to-cli-map.md +113 -0
  327. package/skills/protocol-browser-anti-stall/references/playwright-session-coordination.md +170 -0
  328. package/skills/research/SKILL.md +422 -0
  329. package/skills/test-exploratory/SKILL.md +165 -0
  330. package/skills/test-exploratory/references/charter-template.md +29 -0
  331. package/skills/test-load/SKILL.md +126 -0
  332. package/skills/test-mutation/SKILL.md +160 -0
  333. package/skills/test-playwright/SKILL.md +354 -0
  334. package/skills/test-qa/SKILL.md +364 -0
  335. package/skills/test-qa/references/details.md +268 -0
  336. package/skills/test-red-team/SKILL.md +387 -0
  337. package/skills/test-red-team/references/owasp-attack-checklist.md +193 -0
  338. package/skills/test-unit/SKILL.md +259 -0
  339. package/skills/test-unit/references/details.md +267 -0
  340. package/skills/test-visual-regression/SKILL.md +132 -0
  341. package/skills/thirdparty-emil-design-eng/ATTRIBUTION.md +20 -0
  342. package/skills/thirdparty-emil-design-eng/SKILL.md +21 -0
  343. package/skills/thirdparty-emil-design-eng/references/emil-design-eng.md +676 -0
  344. package/skills/thirdparty-ui-ux-pro-max/ATTRIBUTION.md +22 -0
  345. package/skills/thirdparty-ui-ux-pro-max/SKILL.md +304 -0
  346. package/skills/thirdparty-ui-ux-pro-max/data/charts.csv +26 -0
  347. package/skills/thirdparty-ui-ux-pro-max/data/colors.csv +97 -0
  348. package/skills/thirdparty-ui-ux-pro-max/data/icons.csv +101 -0
  349. package/skills/thirdparty-ui-ux-pro-max/data/landing.csv +31 -0
  350. package/skills/thirdparty-ui-ux-pro-max/data/products.csv +97 -0
  351. package/skills/thirdparty-ui-ux-pro-max/data/react-performance.csv +45 -0
  352. package/skills/thirdparty-ui-ux-pro-max/data/stacks/astro.csv +54 -0
  353. package/skills/thirdparty-ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  354. package/skills/thirdparty-ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  355. package/skills/thirdparty-ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
  356. package/skills/thirdparty-ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  357. package/skills/thirdparty-ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
  358. package/skills/thirdparty-ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  359. package/skills/thirdparty-ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  360. package/skills/thirdparty-ui-ux-pro-max/data/stacks/react.csv +54 -0
  361. package/skills/thirdparty-ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  362. package/skills/thirdparty-ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  363. package/skills/thirdparty-ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  364. package/skills/thirdparty-ui-ux-pro-max/data/stacks/vue.csv +50 -0
  365. package/skills/thirdparty-ui-ux-pro-max/data/styles.csv +68 -0
  366. package/skills/thirdparty-ui-ux-pro-max/data/typography.csv +58 -0
  367. package/skills/thirdparty-ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  368. package/skills/thirdparty-ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  369. package/skills/thirdparty-ui-ux-pro-max/data/web-interface.csv +31 -0
  370. package/skills/thirdparty-ui-ux-pro-max/scripts/core.py +253 -0
  371. package/skills/thirdparty-ui-ux-pro-max/scripts/design_system.py +1067 -0
  372. package/skills/thirdparty-ui-ux-pro-max/scripts/search.py +114 -0
  373. package/skills/thirdparty-web-interface-guidelines/ATTRIBUTION.md +23 -0
  374. package/skills/thirdparty-web-interface-guidelines/SKILL.md +190 -0
  375. package/skills/workflow-build-feature/SKILL.md +118 -0
  376. package/skills/workflow-coding-discipline/SKILL.md +140 -0
  377. package/skills/workflow-environment-ready/SKILL.md +128 -0
  378. package/skills/workflow-feature-flag/SKILL.md +262 -0
  379. package/skills/workflow-feedback-to-closure/SKILL.md +165 -0
  380. package/skills/workflow-fix-and-ship/SKILL.md +136 -0
  381. package/skills/workflow-git-commit/SKILL.md +200 -0
  382. package/skills/workflow-green-repo/SKILL.md +166 -0
  383. package/skills/workflow-grilling/SKILL.md +73 -0
  384. package/skills/workflow-gtm/SKILL.md +153 -0
  385. package/skills/workflow-housekeep/SKILL.md +453 -0
  386. package/skills/workflow-housekeep/references/templates.md +109 -0
  387. package/skills/workflow-launch-ready/SKILL.md +145 -0
  388. package/skills/workflow-merge-conflicts/SKILL.md +62 -0
  389. package/skills/workflow-onboard/SKILL.md +99 -0
  390. package/skills/workflow-parallel-agents/SKILL.md +164 -0
  391. package/skills/workflow-pr/SKILL.md +197 -0
  392. package/skills/workflow-quality-gate/SKILL.md +147 -0
  393. package/skills/workflow-refactor/SKILL.md +274 -0
  394. package/skills/workflow-release-prep/SKILL.md +207 -0
  395. package/skills/workflow-ship-and-observe/SKILL.md +164 -0
  396. package/skills/workflow-spec-tdd/SKILL.md +141 -0
  397. package/skills/workflow-spec-tdd/references/spec-template.md +126 -0
  398. package/skills/workflow-spec-tdd/references/tdd-patterns.md +167 -0
  399. package/skills-cursor/babysit/SKILL.md +17 -0
  400. package/skills-cursor/canvas/SKILL.md +142 -0
  401. package/skills-cursor/canvas/sdk/canvas-tokens.d.ts +235 -0
  402. package/skills-cursor/canvas/sdk/chart-primitives.d.ts +200 -0
  403. package/skills-cursor/canvas/sdk/dag-layout.d.ts +102 -0
  404. package/skills-cursor/canvas/sdk/diff-view.d.ts +130 -0
  405. package/skills-cursor/canvas/sdk/form-primitives.d.ts +194 -0
  406. package/skills-cursor/canvas/sdk/hooks.d.ts +117 -0
  407. package/skills-cursor/canvas/sdk/index.d.ts +47 -0
  408. package/skills-cursor/canvas/sdk/theme.d.ts +61 -0
  409. package/skills-cursor/canvas/sdk/todo-list.d.ts +49 -0
  410. package/skills-cursor/canvas/sdk/ui-primitives.d.ts +549 -0
  411. package/skills-cursor/canvas/sdk/ui-primitives.test.d.ts +2 -0
  412. package/skills-cursor/create-hook/SKILL.md +238 -0
  413. package/skills-cursor/create-rule/SKILL.md +185 -0
  414. package/skills-cursor/create-skill/SKILL.md +269 -0
  415. package/skills-cursor/create-skill/references/authoring-guide.md +182 -0
  416. package/skills-cursor/create-subagent/SKILL.md +228 -0
  417. package/skills-cursor/migrate-to-skills/SKILL.md +121 -0
  418. package/skills-cursor/shell/SKILL.md +22 -0
  419. package/skills-cursor/split-to-prs/SKILL.md +47 -0
  420. package/skills-cursor/statusline/SKILL.md +193 -0
  421. package/skills-cursor/update-cli-config/SKILL.md +85 -0
  422. package/skills-cursor/update-cursor-settings/SKILL.md +137 -0
  423. package/skills.sh.json +296 -0
@@ -0,0 +1,457 @@
1
+ ---
2
+ name: design-system
3
+ description: >
4
+ Build a new design system (tokens, variants, theming). Use when
5
+ "create a design system" or "component library from scratch". Drifted
6
+ existing system → housekeep-design. Plan-only unification →
7
+ plan-uiux-unification.
8
+ license: MIT
9
+ ---
10
+
11
+ # Design System Skill
12
+
13
+ **Degree of freedom: MIXED.** Token taxonomy and variants `[HIGH freedom]`;
14
+ existing `ui/` / token inventory `[LOW freedom — run exactly]`.
15
+
16
+ Build scalable, maintainable design systems with consistent tokens, variants, and documentation.
17
+
18
+ ## How to reason
19
+
20
+ 1. **Inventory** — `components/ui`, tokens, `cva`, shadcn/Radix
21
+ 2. **Tokenize** — semantic tokens, not raw hex in components
22
+ 3. **Variant** — `cva` covers real states (default/destructive/disabled)
23
+ 4. **Document** — JSDoc, keyboard/focus, dark mode
24
+
25
+ ## Worked example
26
+
27
+ > **Inventory:** shadcn `Button` exists; colors are raw `#3B82F6` in three pages; no `--primary`.
28
+ > **Tokenize:** `--primary` / `--primary-foreground` in `globals.css`; Tailwind maps `hsl(var(--primary))`.
29
+ > **Variant:** extend existing `buttonVariants` — do not add `components/Button2.tsx`.
30
+ > **Document:** JSDoc lists variants/sizes; focus ring + dark `.dark` overrides.
31
+
32
+ ## Self-critique before reporting
33
+
34
+ - **Did not fork** — existing primitives were extended, not recreated
35
+ - **Semantic tokens** — components reference tokens, not primitives or hex
36
+ - **A11y + dark** — focus, disabled, and dark variants exist
37
+ - **Right owner** — drifted existing system → `housekeep-design`; plan-only unification → `plan-uiux-unification`
38
+
39
+ ## Check existing first [LOW freedom — run exactly]
40
+
41
+ **Before creating ANY design system components, verify:**
42
+
43
+ 1. **Check for existing design system:**
44
+ ```bash
45
+ ls -la src/components/ui/
46
+ cat package.json | grep -i "shadcn\|radix\|headless"
47
+ cat components.json 2>/dev/null # shadcn config
48
+ ```
49
+
50
+ 2. **Check for existing tokens:**
51
+ ```bash
52
+ cat tailwind.config.* | head -100
53
+ cat src/styles/globals.css | head -50
54
+ rg "var\(--" --type css | head -20
55
+ ```
56
+
57
+ 3. **Check for existing patterns:**
58
+ ```bash
59
+ rg "cva\(|variants:" --type ts --type tsx | head -10
60
+ rg "cn\(|clsx\(|twMerge" --type tsx | head -5
61
+ ```
62
+
63
+ **Why:** Don't recreate existing primitives. Extend and enhance what exists.
64
+
65
+ ## Design Tokens [HIGH freedom]
66
+
67
+ Face and ground are choices, not defaults: Inter/Roboto/Arial, a cream/off-white page, and a purple-gradient primary are the fallbacks to name and avoid. Add `--font-sans` / `--font-display` tokens for the faces you pick.
68
+
69
+ ### CSS Custom Properties
70
+ ```css
71
+ /* globals.css */
72
+ :root {
73
+ /* Colors - Semantic */
74
+ --background: 0 0% 100%;
75
+ --foreground: 222.2 84% 4.9%;
76
+ --card: 0 0% 100%;
77
+ --card-foreground: 222.2 84% 4.9%;
78
+ --popover: 0 0% 100%;
79
+ --popover-foreground: 222.2 84% 4.9%;
80
+ --primary: 221.2 83.2% 53.3%;
81
+ --primary-foreground: 210 40% 98%;
82
+ --secondary: 210 40% 96.1%;
83
+ --secondary-foreground: 222.2 47.4% 11.2%;
84
+ --muted: 210 40% 96.1%;
85
+ --muted-foreground: 215.4 16.3% 46.9%;
86
+ --accent: 210 40% 96.1%;
87
+ --accent-foreground: 222.2 47.4% 11.2%;
88
+ --destructive: 0 84.2% 60.2%;
89
+ --destructive-foreground: 210 40% 98%;
90
+ --border: 214.3 31.8% 91.4%;
91
+ --input: 214.3 31.8% 91.4%;
92
+ --ring: 221.2 83.2% 53.3%;
93
+
94
+ /* Spacing */
95
+ --spacing-xs: 0.25rem;
96
+ --spacing-sm: 0.5rem;
97
+ --spacing-md: 1rem;
98
+ --spacing-lg: 1.5rem;
99
+ --spacing-xl: 2rem;
100
+
101
+ /* Border Radius */
102
+ --radius: 0.5rem;
103
+ --radius-sm: calc(var(--radius) - 4px);
104
+ --radius-lg: calc(var(--radius) + 4px);
105
+
106
+ /* Shadows */
107
+ --shadow-sm: 0 1px 2px 0 rgb(0 0 0 / 0.05);
108
+ --shadow: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
109
+ --shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
110
+ --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
111
+
112
+ /* Animation */
113
+ --duration-fast: 150ms;
114
+ --duration-normal: 200ms;
115
+ --duration-slow: 300ms;
116
+ --ease-default: cubic-bezier(0.4, 0, 0.2, 1);
117
+ --ease-in: cubic-bezier(0.4, 0, 1, 1);
118
+ --ease-out: cubic-bezier(0, 0, 0.2, 1);
119
+ --ease-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);
120
+ }
121
+
122
+ .dark {
123
+ --background: 222.2 84% 4.9%;
124
+ --foreground: 210 40% 98%;
125
+ /* ... dark mode overrides */
126
+ }
127
+ ```
128
+
129
+ ### Tailwind Config Integration
130
+ ```ts
131
+ // tailwind.config.ts
132
+ import type { Config } from 'tailwindcss'
133
+
134
+ const config: Config = {
135
+ content: ['./src/**/*.{ts,tsx}'],
136
+ darkMode: 'class',
137
+ theme: {
138
+ extend: {
139
+ colors: {
140
+ border: 'hsl(var(--border))',
141
+ input: 'hsl(var(--input))',
142
+ ring: 'hsl(var(--ring))',
143
+ background: 'hsl(var(--background))',
144
+ foreground: 'hsl(var(--foreground))',
145
+ primary: {
146
+ DEFAULT: 'hsl(var(--primary))',
147
+ foreground: 'hsl(var(--primary-foreground))',
148
+ },
149
+ secondary: {
150
+ DEFAULT: 'hsl(var(--secondary))',
151
+ foreground: 'hsl(var(--secondary-foreground))',
152
+ },
153
+ destructive: {
154
+ DEFAULT: 'hsl(var(--destructive))',
155
+ foreground: 'hsl(var(--destructive-foreground))',
156
+ },
157
+ muted: {
158
+ DEFAULT: 'hsl(var(--muted))',
159
+ foreground: 'hsl(var(--muted-foreground))',
160
+ },
161
+ accent: {
162
+ DEFAULT: 'hsl(var(--accent))',
163
+ foreground: 'hsl(var(--accent-foreground))',
164
+ },
165
+ },
166
+ borderRadius: {
167
+ lg: 'var(--radius-lg)',
168
+ md: 'var(--radius)',
169
+ sm: 'var(--radius-sm)',
170
+ },
171
+ boxShadow: {
172
+ sm: 'var(--shadow-sm)',
173
+ DEFAULT: 'var(--shadow)',
174
+ md: 'var(--shadow-md)',
175
+ lg: 'var(--shadow-lg)',
176
+ },
177
+ transitionDuration: {
178
+ fast: 'var(--duration-fast)',
179
+ normal: 'var(--duration-normal)',
180
+ slow: 'var(--duration-slow)',
181
+ },
182
+ },
183
+ },
184
+ }
185
+
186
+ export default config
187
+ ```
188
+
189
+ ## Component Variants with CVA
190
+
191
+ ```tsx
192
+ // lib/utils.ts
193
+ import { type ClassValue, clsx } from 'clsx'
194
+ import { twMerge } from 'tailwind-merge'
195
+
196
+ export function cn(...inputs: ClassValue[]) {
197
+ return twMerge(clsx(inputs))
198
+ }
199
+ ```
200
+
201
+ ```tsx
202
+ // components/ui/button.tsx
203
+ import { cva, type VariantProps } from 'class-variance-authority'
204
+ import { forwardRef } from 'react'
205
+ import { cn } from '@/lib/utils'
206
+
207
+ const buttonVariants = cva(
208
+ // Base styles
209
+ 'inline-flex items-center justify-center whitespace-nowrap rounded-md text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:pointer-events-none disabled:opacity-50',
210
+ {
211
+ variants: {
212
+ variant: {
213
+ default: 'bg-primary text-primary-foreground shadow hover:bg-primary/90',
214
+ destructive: 'bg-destructive text-destructive-foreground shadow-sm hover:bg-destructive/90',
215
+ outline: 'border border-input bg-background shadow-sm hover:bg-accent hover:text-accent-foreground',
216
+ secondary: 'bg-secondary text-secondary-foreground shadow-sm hover:bg-secondary/80',
217
+ ghost: 'hover:bg-accent hover:text-accent-foreground',
218
+ link: 'text-primary underline-offset-4 hover:underline',
219
+ },
220
+ size: {
221
+ default: 'h-9 px-4 py-2',
222
+ sm: 'h-8 rounded-md px-3 text-xs',
223
+ lg: 'h-10 rounded-md px-8',
224
+ icon: 'h-9 w-9',
225
+ },
226
+ },
227
+ defaultVariants: {
228
+ variant: 'default',
229
+ size: 'default',
230
+ },
231
+ }
232
+ )
233
+
234
+ export interface ButtonProps
235
+ extends React.ButtonHTMLAttributes<HTMLButtonElement>,
236
+ VariantProps<typeof buttonVariants> {
237
+ asChild?: boolean
238
+ }
239
+
240
+ const Button = forwardRef<HTMLButtonElement, ButtonProps>(
241
+ ({ className, variant, size, asChild = false, ...props }, ref) => {
242
+ const Comp = asChild ? Slot : 'button'
243
+ return (
244
+ <Comp
245
+ className={cn(buttonVariants({ variant, size, className }))}
246
+ ref={ref}
247
+ {...props}
248
+ />
249
+ )
250
+ }
251
+ )
252
+ Button.displayName = 'Button'
253
+
254
+ export { Button, buttonVariants }
255
+ ```
256
+
257
+ ## Compound Components Pattern
258
+
259
+ ```tsx
260
+ // components/ui/card.tsx
261
+ import { cn } from '@/lib/utils'
262
+ import { forwardRef } from 'react'
263
+
264
+ const Card = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
265
+ ({ className, ...props }, ref) => (
266
+ <div
267
+ ref={ref}
268
+ className={cn(
269
+ 'rounded-xl border bg-card text-card-foreground shadow',
270
+ className
271
+ )}
272
+ {...props}
273
+ />
274
+ )
275
+ )
276
+ Card.displayName = 'Card'
277
+
278
+ const CardHeader = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
279
+ ({ className, ...props }, ref) => (
280
+ <div
281
+ ref={ref}
282
+ className={cn('flex flex-col space-y-1.5 p-6', className)}
283
+ {...props}
284
+ />
285
+ )
286
+ )
287
+ CardHeader.displayName = 'CardHeader'
288
+
289
+ const CardTitle = forwardRef<HTMLParagraphElement, React.HTMLAttributes<HTMLHeadingElement>>(
290
+ ({ className, ...props }, ref) => (
291
+ <h3
292
+ ref={ref}
293
+ className={cn('font-semibold leading-none tracking-tight', className)}
294
+ {...props}
295
+ />
296
+ )
297
+ )
298
+ CardTitle.displayName = 'CardTitle'
299
+
300
+ const CardDescription = forwardRef<HTMLParagraphElement, React.HTMLAttributes<HTMLParagraphElement>>(
301
+ ({ className, ...props }, ref) => (
302
+ <p
303
+ ref={ref}
304
+ className={cn('text-sm text-muted-foreground', className)}
305
+ {...props}
306
+ />
307
+ )
308
+ )
309
+ CardDescription.displayName = 'CardDescription'
310
+
311
+ const CardContent = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
312
+ ({ className, ...props }, ref) => (
313
+ <div ref={ref} className={cn('p-6 pt-0', className)} {...props} />
314
+ )
315
+ )
316
+ CardContent.displayName = 'CardContent'
317
+
318
+ const CardFooter = forwardRef<HTMLDivElement, React.HTMLAttributes<HTMLDivElement>>(
319
+ ({ className, ...props }, ref) => (
320
+ <div
321
+ ref={ref}
322
+ className={cn('flex items-center p-6 pt-0', className)}
323
+ {...props}
324
+ />
325
+ )
326
+ )
327
+ CardFooter.displayName = 'CardFooter'
328
+
329
+ export { Card, CardHeader, CardTitle, CardDescription, CardContent, CardFooter }
330
+ ```
331
+
332
+ ## Accessible Components with Radix
333
+
334
+ ```tsx
335
+ // components/ui/dialog.tsx
336
+ 'use client'
337
+
338
+ import * as DialogPrimitive from '@radix-ui/react-dialog'
339
+ import { X } from 'lucide-react'
340
+ import { cn } from '@/lib/utils'
341
+
342
+ const Dialog = DialogPrimitive.Root
343
+ const DialogTrigger = DialogPrimitive.Trigger
344
+ const DialogPortal = DialogPrimitive.Portal
345
+ const DialogClose = DialogPrimitive.Close
346
+
347
+ const DialogOverlay = forwardRef<
348
+ React.ElementRef<typeof DialogPrimitive.Overlay>,
349
+ React.ComponentPropsWithoutRef<typeof DialogPrimitive.Overlay>
350
+ >(({ className, ...props }, ref) => (
351
+ <DialogPrimitive.Overlay
352
+ ref={ref}
353
+ className={cn(
354
+ 'fixed inset-0 z-50 bg-black/80 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0',
355
+ className
356
+ )}
357
+ {...props}
358
+ />
359
+ ))
360
+
361
+ const DialogContent = forwardRef<
362
+ React.ElementRef<typeof DialogPrimitive.Content>,
363
+ React.ComponentPropsWithoutRef<typeof DialogPrimitive.Content>
364
+ >(({ className, children, ...props }, ref) => (
365
+ <DialogPortal>
366
+ <DialogOverlay />
367
+ <DialogPrimitive.Content
368
+ ref={ref}
369
+ className={cn(
370
+ 'fixed left-[50%] top-[50%] z-50 grid w-full max-w-lg translate-x-[-50%] translate-y-[-50%] gap-4 border bg-background p-6 shadow-lg duration-200 data-[state=open]:animate-in data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=open]:fade-in-0 data-[state=closed]:zoom-out-95 data-[state=open]:zoom-in-95 data-[state=closed]:slide-out-to-left-1/2 data-[state=closed]:slide-out-to-top-[48%] data-[state=open]:slide-in-from-left-1/2 data-[state=open]:slide-in-from-top-[48%] sm:rounded-lg',
371
+ className
372
+ )}
373
+ {...props}
374
+ >
375
+ {children}
376
+ <DialogPrimitive.Close className="absolute right-4 top-4 rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none data-[state=open]:bg-accent data-[state=open]:text-muted-foreground">
377
+ <X className="h-4 w-4" />
378
+ <span className="sr-only">Close</span>
379
+ </DialogPrimitive.Close>
380
+ </DialogPrimitive.Content>
381
+ </DialogPortal>
382
+ ))
383
+
384
+ export { Dialog, DialogTrigger, DialogContent, DialogClose }
385
+ ```
386
+
387
+ ## Component Documentation Pattern
388
+
389
+ ```tsx
390
+ // components/ui/button.stories.tsx (or docs)
391
+ /**
392
+ * Button Component
393
+ *
394
+ * A versatile button component with multiple variants and sizes.
395
+ *
396
+ * @example
397
+ * ```tsx
398
+ * <Button variant="default" size="md">Click me</Button>
399
+ * <Button variant="outline" size="sm">Small</Button>
400
+ * <Button variant="destructive" disabled>Disabled</Button>
401
+ * ```
402
+ *
403
+ * ## Variants
404
+ * - `default` - Primary action button
405
+ * - `secondary` - Secondary actions
406
+ * - `destructive` - Dangerous actions (delete, remove)
407
+ * - `outline` - Less prominent actions
408
+ * - `ghost` - Minimal visual weight
409
+ * - `link` - Styled as a link
410
+ *
411
+ * ## Sizes
412
+ * - `sm` - 32px height
413
+ * - `default` - 36px height
414
+ * - `lg` - 40px height
415
+ * - `icon` - 36x36px square for icon-only buttons
416
+ *
417
+ * ## Accessibility
418
+ * - Uses native `<button>` element
419
+ * - Supports `disabled` attribute
420
+ * - Focus ring visible on keyboard navigation
421
+ * - Works with `asChild` prop for custom elements
422
+ */
423
+ ```
424
+
425
+ ## File Structure
426
+
427
+ ```
428
+ src/
429
+ ├── components/
430
+ │ └── ui/
431
+ │ ├── button.tsx
432
+ │ ├── card.tsx
433
+ │ ├── dialog.tsx
434
+ │ ├── input.tsx
435
+ │ ├── label.tsx
436
+ │ ├── select.tsx
437
+ │ ├── textarea.tsx
438
+ │ ├── toast.tsx
439
+ │ └── index.ts # Barrel export
440
+ ├── lib/
441
+ │ └── utils.ts # cn() helper
442
+ ├── styles/
443
+ │ └── globals.css # CSS tokens
444
+ └── tailwind.config.ts # Theme config
445
+ ```
446
+
447
+ ## Validation [LOW freedom — do not skip]
448
+
449
+ After creating design system components:
450
+
451
+ 1. **Consistency** → All components use same tokens
452
+ 2. **Variants** → Cover all needed use cases
453
+ 3. **Accessibility** → Keyboard nav, ARIA, focus states
454
+ 4. **Dark mode** → All components work in dark mode
455
+ 5. **Responsive** → Mobile-friendly by default
456
+ 6. **Documentation** → JSDoc comments, usage examples
457
+ 7. **Type safety** → Full TypeScript support with VariantProps
@@ -0,0 +1,226 @@
1
+ ---
2
+ name: design-theme
3
+ description: >
4
+ Apply one of 11 preset themes (colors, fonts) to slides, docs, or landing
5
+ pages. Use when "apply theme", "color palette", "brand colors", "styling
6
+ slides", "presentation design", "visual identity", or styling artifacts
7
+ consistently.
8
+ license: MIT
9
+ ---
10
+
11
+ # Theme Factory Skill
12
+
13
+ **Degree of freedom: MIXED.** Custom-theme authoring `[HIGH freedom]`; wait-for-
14
+ selection and existing-token inventory `[LOW freedom — run exactly]`.
15
+
16
+ A curated collection of professional font and color themes. Once a theme is chosen, it can be applied to any artifact.
17
+
18
+ ## How to reason
19
+
20
+ 1. **Inventory** — existing tokens, fonts, and brand colors
21
+ 2. **Select** — show the catalog; wait for an explicit choice
22
+ 3. **Apply** — one palette + pairing everywhere on the artifact
23
+ 4. **Contrast** — 4.5:1 text; do not override the design system arbitrarily
24
+
25
+ ## Worked example
26
+
27
+ > **Inventory:** slide deck uses mixed hex; `globals.css` already has `--primary`.
28
+ > **Select:** user picks **Forest Canopy** after seeing the 11 options.
29
+ > **Apply:** headings Merriweather / body Lato; `#276749` primary on `#f0fff4`.
30
+ > **Contrast:** body text vs background ≥4.5:1; app chrome still uses existing tokens.
31
+
32
+ ## Self-critique before reporting
33
+
34
+ - **Choice recorded** — a theme was not applied until the user picked one
35
+ - **One pairing** — no leftover fonts or hex from a second theme
36
+ - **Readable** — contrast checked, not assumed
37
+ - **Right owner** — component library / tokens from scratch → `design-system`; drifted token SSOT → `housekeep-design`
38
+
39
+ ## Purpose
40
+
41
+ To apply consistent, professional styling to presentation slide decks or other artifacts. Each theme includes:
42
+ - A cohesive color palette with hex codes
43
+ - Complementary font pairings for headers and body text
44
+ - A distinct visual identity suitable for different contexts and audiences
45
+
46
+ ## Usage Instructions [LOW freedom — run exactly]
47
+
48
+ To apply styling to a slide deck or other artifact:
49
+
50
+ 1. **Show available themes**: Display the theme options to allow users to see all available themes
51
+ 2. **Ask for their choice**: Ask which theme to apply
52
+ 3. **Wait for selection**: Get explicit confirmation about the chosen theme
53
+ 4. **Apply the theme**: Apply the selected theme's colors and fonts
54
+
55
+ ## Themes Available
56
+
57
+ The following 11 themes are available:
58
+
59
+ ### 1. Ocean Depths
60
+ Professional and calming maritime theme
61
+ - **Primary**: `#1a365d` (deep blue)
62
+ - **Secondary**: `#2c5282`
63
+ - **Accent**: `#63b3ed`
64
+ - **Background**: `#ebf8ff`
65
+ - **Heading Font**: Playfair Display
66
+ - **Body Font**: Source Sans Pro
67
+
68
+ ### 2. Sunset Boulevard
69
+ Warm and vibrant sunset colors
70
+ - **Primary**: `#c05621` (burnt orange)
71
+ - **Secondary**: `#dd6b20`
72
+ - **Accent**: `#ed8936`
73
+ - **Background**: `#fffaf0`
74
+ - **Heading Font**: Poppins
75
+ - **Body Font**: Open Sans
76
+
77
+ ### 3. Forest Canopy
78
+ Natural and grounded earth tones
79
+ - **Primary**: `#276749` (forest green)
80
+ - **Secondary**: `#38a169`
81
+ - **Accent**: `#9ae6b4`
82
+ - **Background**: `#f0fff4`
83
+ - **Heading Font**: Merriweather
84
+ - **Body Font**: Lato
85
+
86
+ ### 4. Modern Minimalist
87
+ Clean and contemporary grayscale
88
+ - **Primary**: `#1a202c` (charcoal)
89
+ - **Secondary**: `#4a5568`
90
+ - **Accent**: `#718096`
91
+ - **Background**: `#f7fafc`
92
+ - **Heading Font**: Inter
93
+ - **Body Font**: Inter
94
+
95
+ ### 5. Golden Hour
96
+ Rich and warm autumnal palette
97
+ - **Primary**: `#744210` (golden brown)
98
+ - **Secondary**: `#b7791f`
99
+ - **Accent**: `#ecc94b`
100
+ - **Background**: `#fffff0`
101
+ - **Heading Font**: Cormorant Garamond
102
+ - **Body Font**: Work Sans
103
+
104
+ ### 6. Arctic Frost
105
+ Cool and crisp winter-inspired theme
106
+ - **Primary**: `#2b6cb0` (ice blue)
107
+ - **Secondary**: `#4299e1`
108
+ - **Accent**: `#90cdf4`
109
+ - **Background**: `#ebf8ff`
110
+ - **Heading Font**: Montserrat
111
+ - **Body Font**: Nunito
112
+
113
+ ### 7. Desert Rose
114
+ Soft and sophisticated dusty tones
115
+ - **Primary**: `#97266d` (dusty rose)
116
+ - **Secondary**: `#d53f8c`
117
+ - **Accent**: `#ed64a6`
118
+ - **Background**: `#fff5f7`
119
+ - **Heading Font**: DM Serif Display
120
+ - **Body Font**: DM Sans
121
+
122
+ ### 8. Tech Innovation
123
+ Bold and modern tech aesthetic
124
+ - **Primary**: `#2d3748` (slate)
125
+ - **Secondary**: `#4c51bf`
126
+ - **Accent**: `#667eea`
127
+ - **Background**: `#edf2f7`
128
+ - **Heading Font**: JetBrains Mono
129
+ - **Body Font**: IBM Plex Sans
130
+
131
+ ### 9. Botanical Garden
132
+ Fresh and organic garden colors
133
+ - **Primary**: `#285e61` (teal)
134
+ - **Secondary**: `#319795`
135
+ - **Accent**: `#81e6d9`
136
+ - **Background**: `#e6fffa`
137
+ - **Heading Font**: Libre Baskerville
138
+ - **Body Font**: Karla
139
+
140
+ ### 10. Midnight Galaxy
141
+ Dramatic and cosmic deep tones
142
+ - **Primary**: `#1a1a2e` (midnight)
143
+ - **Secondary**: `#16213e`
144
+ - **Accent**: `#e94560`
145
+ - **Background**: `#0f0f23`
146
+ - **Text**: `#edf2f7`
147
+ - **Heading Font**: Orbitron
148
+ - **Body Font**: Rajdhani
149
+
150
+ ### 11. Tsumagoi Ranch
151
+ Neo-Brutalist "Cute-alism" - Japanese ranch/campground aesthetic
152
+ - **Primary**: `#0c85f4` (mountain blue)
153
+ - **Secondary**: `#10b981` (pine green)
154
+ - **Accent**: `#ff6b35` (campfire orange)
155
+ - **Accent Alt**: `#FF6D38` (navigate orange - CTAs)
156
+ - **Premium**: `#8584FF` (navigate purple)
157
+ - **Background Light**: `#faf7f2` (warm cream)
158
+ - **Background Dark**: `#0c1424` (night sky)
159
+ - **Border**: `#b8a080` (wood/sand tone)
160
+ - **Text**: `#1a1a1a` (near black)
161
+ - **Heading Font**: M PLUS Rounded 1c
162
+ - **Body Font**: Inter
163
+ - **Body JP**: Noto Sans JP
164
+ - **Mono**: JetBrains Mono
165
+
166
+ **Neo-Brutal Shadows**: Hard-edge `3px 3px 0 0 #b8a080` (no blur)
167
+ **Border Style**: 3px solid with rounded-xl corners
168
+ **Motion**: Bounce easing `cubic-bezier(0.34, 1.56, 0.64, 1)`
169
+
170
+ See `themes/tsumagoi-ranch.md` for full specification including mobile patterns.
171
+
172
+ ## Application Process [LOW freedom — run exactly]
173
+
174
+ After a preferred theme is selected:
175
+ 1. Read the corresponding theme specifications
176
+ 2. Apply the specified colors and fonts consistently throughout
177
+ 3. Ensure proper contrast and readability
178
+ 4. Maintain the theme's visual identity across all elements
179
+
180
+ ## Create Your Own Theme [HIGH freedom]
181
+
182
+ To handle cases where none of the existing themes work, create a custom theme based on:
183
+ - User's brand colors
184
+ - Specific aesthetic direction
185
+ - Industry or context requirements
186
+
187
+ Generate a new theme with:
188
+ - 5 color palette (primary, secondary, accent, background, text)
189
+ - Font pairing (heading + body)
190
+ - A descriptive name
191
+
192
+ Name the fallbacks and avoid them: Inter/Roboto as the pairing, a cream or off-white background, a purple gradient — a custom theme that lands on those is the model's default, not the user's brand.
193
+
194
+ After generating, show it for review before applying.
195
+
196
+ ## Check existing first [LOW freedom — run exactly]
197
+
198
+ **Before applying ANY theme, verify:**
199
+
200
+ 1. **Check for existing theme/design system:**
201
+ ```bash
202
+ cat tailwind.config.* 2>/dev/null | grep -A30 "colors\|fontFamily"
203
+ cat src/styles/globals.css docs/THEME_GUIDE.md 2>/dev/null
204
+ ```
205
+
206
+ 2. **Check for existing CSS variables:**
207
+ ```bash
208
+ rg "var\(--" --type css --type tsx | head -20
209
+ ```
210
+
211
+ 3. **Check for existing brand colors:**
212
+ - Look in `public/` for logos
213
+ - Check existing components for color patterns
214
+
215
+ **Why:** Themes must integrate with existing design systems, not override them arbitrarily.
216
+
217
+ ## Validation [LOW freedom — do not skip]
218
+
219
+ After applying a theme:
220
+
221
+ 1. **Visual consistency** → All components use theme colors
222
+ 2. **Contrast check** → Text readable on backgrounds (4.5:1 min)
223
+ 3. **Font loading** → Google Fonts load correctly
224
+ 4. **Dark mode** → If applicable, verify dark variant works
225
+ 5. **Mobile check** → Typography scales appropriately
226
+ 6. **Print preview** → If printable, colors work in print