@skyroc/scripts 2.5.1 → 2.5.3

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 (275) hide show
  1. package/README.md +6 -3
  2. package/dist/cli.mjs +2 -2
  3. package/dist/{config-BKkdncJS.mjs → config-DWrHl2hS.mjs} +106 -5
  4. package/dist/index.mjs +1 -1
  5. package/package.json +1 -1
  6. package/templates/admin/README.md +1 -2
  7. package/templates/admin/package.json +9 -2
  8. package/templates/admin/src/App.tsx +2 -2
  9. package/templates/admin/src/assets/svg-icon/logo.svg +1 -1
  10. package/templates/admin/src/config.ts +1 -1
  11. package/templates/admin/src/main.tsx +1 -1
  12. package/templates/admin/uno.config.ts +1 -1
  13. package/templates/admin-root/.agents/skills/component-doc/SKILL.md +304 -0
  14. package/templates/admin-root/.agents/skills/component-refactoring/SKILL.md +483 -0
  15. package/templates/admin-root/.agents/skills/component-refactoring/references/complexity-patterns.md +493 -0
  16. package/templates/admin-root/.agents/skills/component-refactoring/references/component-splitting.md +477 -0
  17. package/templates/admin-root/.agents/skills/component-refactoring/references/hook-extraction.md +317 -0
  18. package/templates/admin-root/.agents/skills/doc-coauthoring/SKILL.md +375 -0
  19. package/templates/admin-root/.agents/skills/feature-dev/SKILL.md +78 -0
  20. package/templates/admin-root/.agents/skills/frontend-code-review/SKILL.md +73 -0
  21. package/templates/admin-root/.agents/skills/frontend-code-review/references/business-logic.md +15 -0
  22. package/templates/admin-root/.agents/skills/frontend-code-review/references/code-quality.md +44 -0
  23. package/templates/admin-root/.agents/skills/frontend-code-review/references/performance.md +45 -0
  24. package/templates/admin-root/.agents/skills/frontend-design/LICENSE.txt +177 -0
  25. package/templates/admin-root/.agents/skills/frontend-design/SKILL.md +42 -0
  26. package/templates/admin-root/.agents/skills/frontend-testing/SKILL.md +325 -0
  27. package/templates/admin-root/.agents/skills/frontend-testing/assets/component-test.template.tsx +293 -0
  28. package/templates/admin-root/.agents/skills/frontend-testing/assets/hook-test.template.ts +207 -0
  29. package/templates/admin-root/.agents/skills/frontend-testing/assets/utility-test.template.ts +154 -0
  30. package/templates/admin-root/.agents/skills/frontend-testing/references/async-testing.md +345 -0
  31. package/templates/admin-root/.agents/skills/frontend-testing/references/checklist.md +205 -0
  32. package/templates/admin-root/.agents/skills/frontend-testing/references/common-patterns.md +449 -0
  33. package/templates/admin-root/.agents/skills/frontend-testing/references/domain-components.md +523 -0
  34. package/templates/admin-root/.agents/skills/frontend-testing/references/mocking.md +512 -0
  35. package/templates/admin-root/.agents/skills/frontend-testing/references/workflow.md +269 -0
  36. package/templates/admin-root/.agents/skills/migrate-nativewind-to-uniwind/SKILL.md +734 -0
  37. package/templates/admin-root/.agents/skills/migrate-oxfmt/SKILL.md +202 -0
  38. package/templates/admin-root/.agents/skills/migrate-oxlint/SKILL.md +196 -0
  39. package/templates/admin-root/.agents/skills/native-component-doc/SKILL.md +245 -0
  40. package/templates/admin-root/.agents/skills/senior-frontend/SKILL.md +209 -0
  41. package/templates/admin-root/.agents/skills/senior-frontend/references/frontend_best_practices.md +103 -0
  42. package/templates/admin-root/.agents/skills/senior-frontend/references/nextjs_optimization_guide.md +103 -0
  43. package/templates/admin-root/.agents/skills/senior-frontend/references/react_patterns.md +103 -0
  44. package/templates/admin-root/.agents/skills/senior-frontend/scripts/bundle_analyzer.py +114 -0
  45. package/templates/admin-root/.agents/skills/senior-frontend/scripts/component_generator.py +114 -0
  46. package/templates/admin-root/.agents/skills/senior-frontend/scripts/frontend_scaffolder.py +114 -0
  47. package/templates/admin-root/.agents/skills/skill-creator/SKILL.md +355 -0
  48. package/templates/admin-root/.agents/skills/skill-creator/references/output-patterns.md +86 -0
  49. package/templates/admin-root/.agents/skills/skill-creator/references/workflows.md +28 -0
  50. package/templates/admin-root/.agents/skills/skill-creator/scripts/init_skill.py +300 -0
  51. package/templates/admin-root/.agents/skills/skill-creator/scripts/package_skill.py +110 -0
  52. package/templates/admin-root/.agents/skills/skill-creator/scripts/quick_validate.py +97 -0
  53. package/templates/admin-root/.agents/skills/skyroc-admin-prd-prototype/SKILL.md +163 -0
  54. package/templates/admin-root/.agents/skills/skyroc-admin-prd-prototype/references/acceptance-checklist.md +75 -0
  55. package/templates/admin-root/.agents/skills/skyroc-admin-prd-prototype/references/evidence-order.md +109 -0
  56. package/templates/admin-root/.agents/skills/skyroc-admin-prd-prototype/references/prd-rules.md +103 -0
  57. package/templates/admin-root/.agents/skills/skyroc-admin-prd-prototype/references/prototype-rules.md +85 -0
  58. package/templates/admin-root/.agents/skills/skyroc-admin-prd-prototype/scripts/verify-prototypes.mjs +144 -0
  59. package/templates/admin-root/.agents/skills/skyroc-admin-prd-prototype/templates/admin-page.html +771 -0
  60. package/templates/admin-root/.agents/skills/skyroc-admin-prd-prototype/templates/prd.md +182 -0
  61. package/templates/admin-root/.agents/skills/ui-ux-pro-max/SKILL.md +292 -0
  62. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/charts.csv +26 -0
  63. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/colors.csv +97 -0
  64. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/icons.csv +101 -0
  65. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/landing.csv +31 -0
  66. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/products.csv +97 -0
  67. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
  68. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -0
  69. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  70. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  71. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
  72. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  73. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
  74. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  75. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  76. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
  77. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  78. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  79. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  80. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  81. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/styles.csv +68 -0
  82. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/typography.csv +58 -0
  83. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  84. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  85. package/templates/admin-root/.agents/skills/ui-ux-pro-max/data/web-interface.csv +31 -0
  86. package/templates/admin-root/.agents/skills/ui-ux-pro-max/scripts/core.py +253 -0
  87. package/templates/admin-root/.agents/skills/ui-ux-pro-max/scripts/design_system.py +1067 -0
  88. package/templates/admin-root/.agents/skills/ui-ux-pro-max/scripts/search.py +114 -0
  89. package/templates/admin-root/.agents/skills/uniwind/SKILL.md +64 -0
  90. package/templates/admin-root/.agents/skills/uniwind/references/component-bindings.md +338 -0
  91. package/templates/admin-root/.agents/skills/uniwind/references/css-and-utilities.md +325 -0
  92. package/templates/admin-root/.agents/skills/uniwind/references/integrations.md +75 -0
  93. package/templates/admin-root/.agents/skills/uniwind/references/pro.md +354 -0
  94. package/templates/admin-root/.agents/skills/uniwind/references/setup.md +144 -0
  95. package/templates/admin-root/.agents/skills/uniwind/references/styling-patterns.md +237 -0
  96. package/templates/admin-root/.agents/skills/uniwind/references/theming.md +309 -0
  97. package/templates/admin-root/.agents/skills/uniwind/references/troubleshooting.md +179 -0
  98. package/templates/admin-root/.agents/skills/uniwind/references/variants-and-selectors.md +224 -0
  99. package/templates/admin-root/.agents/skills/vercel-react-best-practices/AGENTS.md +2934 -0
  100. package/templates/admin-root/.agents/skills/vercel-react-best-practices/SKILL.md +136 -0
  101. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  102. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/advanced-init-once.md +42 -0
  103. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/advanced-use-latest.md +39 -0
  104. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/async-api-routes.md +38 -0
  105. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/async-defer-await.md +80 -0
  106. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/async-dependencies.md +51 -0
  107. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/async-parallel.md +28 -0
  108. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +99 -0
  109. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +59 -0
  110. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/bundle-conditional.md +31 -0
  111. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +49 -0
  112. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  113. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/bundle-preload.md +50 -0
  114. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/client-event-listeners.md +74 -0
  115. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +71 -0
  116. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +48 -0
  117. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/client-swr-dedup.md +56 -0
  118. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +107 -0
  119. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/js-cache-function-results.md +80 -0
  120. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/js-cache-property-access.md +28 -0
  121. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/js-cache-storage.md +70 -0
  122. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/js-combine-iterations.md +32 -0
  123. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/js-early-exit.md +50 -0
  124. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +45 -0
  125. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/js-index-maps.md +37 -0
  126. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/js-length-check-first.md +49 -0
  127. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/js-min-max-loop.md +82 -0
  128. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +24 -0
  129. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +57 -0
  130. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rendering-activity.md +26 -0
  131. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  132. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +40 -0
  133. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +38 -0
  134. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  135. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  136. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md +30 -0
  137. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +28 -0
  138. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md +75 -0
  139. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +39 -0
  140. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rerender-dependencies.md +45 -0
  141. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md +40 -0
  142. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rerender-derived-state.md +29 -0
  143. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +74 -0
  144. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  145. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +38 -0
  146. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rerender-memo.md +44 -0
  147. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rerender-move-effect-to-event.md +45 -0
  148. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
  149. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rerender-transitions.md +40 -0
  150. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md +73 -0
  151. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +73 -0
  152. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/server-auth-actions.md +96 -0
  153. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/server-cache-lru.md +41 -0
  154. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/server-cache-react.md +76 -0
  155. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/server-dedup-props.md +65 -0
  156. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +83 -0
  157. package/templates/admin-root/.agents/skills/vercel-react-best-practices/rules/server-serialization.md +38 -0
  158. package/templates/admin-root/.claude/settings.json +5 -0
  159. package/templates/admin-root/.claude/skills/component-doc/SKILL.md +304 -0
  160. package/templates/admin-root/.claude/skills/component-refactoring/SKILL.md +483 -0
  161. package/templates/admin-root/.claude/skills/component-refactoring/references/complexity-patterns.md +493 -0
  162. package/templates/admin-root/.claude/skills/component-refactoring/references/component-splitting.md +477 -0
  163. package/templates/admin-root/.claude/skills/component-refactoring/references/hook-extraction.md +317 -0
  164. package/templates/admin-root/.claude/skills/doc-coauthoring/SKILL.md +375 -0
  165. package/templates/admin-root/.claude/skills/feature-dev/SKILL.md +78 -0
  166. package/templates/admin-root/.claude/skills/frontend-code-review/SKILL.md +73 -0
  167. package/templates/admin-root/.claude/skills/frontend-code-review/references/business-logic.md +15 -0
  168. package/templates/admin-root/.claude/skills/frontend-code-review/references/code-quality.md +44 -0
  169. package/templates/admin-root/.claude/skills/frontend-code-review/references/performance.md +45 -0
  170. package/templates/admin-root/.claude/skills/frontend-design/LICENSE.txt +177 -0
  171. package/templates/admin-root/.claude/skills/frontend-design/SKILL.md +42 -0
  172. package/templates/admin-root/.claude/skills/frontend-testing/SKILL.md +325 -0
  173. package/templates/admin-root/.claude/skills/frontend-testing/assets/component-test.template.tsx +293 -0
  174. package/templates/admin-root/.claude/skills/frontend-testing/assets/hook-test.template.ts +207 -0
  175. package/templates/admin-root/.claude/skills/frontend-testing/assets/utility-test.template.ts +154 -0
  176. package/templates/admin-root/.claude/skills/frontend-testing/references/async-testing.md +345 -0
  177. package/templates/admin-root/.claude/skills/frontend-testing/references/checklist.md +205 -0
  178. package/templates/admin-root/.claude/skills/frontend-testing/references/common-patterns.md +449 -0
  179. package/templates/admin-root/.claude/skills/frontend-testing/references/domain-components.md +523 -0
  180. package/templates/admin-root/.claude/skills/frontend-testing/references/mocking.md +512 -0
  181. package/templates/admin-root/.claude/skills/frontend-testing/references/workflow.md +269 -0
  182. package/templates/admin-root/.claude/skills/migrate-nativewind-to-uniwind +1 -0
  183. package/templates/admin-root/.claude/skills/migrate-oxfmt +1 -0
  184. package/templates/admin-root/.claude/skills/migrate-oxlint +1 -0
  185. package/templates/admin-root/.claude/skills/native-component-doc/SKILL.md +245 -0
  186. package/templates/admin-root/.claude/skills/senior-frontend/SKILL.md +209 -0
  187. package/templates/admin-root/.claude/skills/senior-frontend/references/frontend_best_practices.md +103 -0
  188. package/templates/admin-root/.claude/skills/senior-frontend/references/nextjs_optimization_guide.md +103 -0
  189. package/templates/admin-root/.claude/skills/senior-frontend/references/react_patterns.md +103 -0
  190. package/templates/admin-root/.claude/skills/senior-frontend/scripts/bundle_analyzer.py +114 -0
  191. package/templates/admin-root/.claude/skills/senior-frontend/scripts/component_generator.py +114 -0
  192. package/templates/admin-root/.claude/skills/senior-frontend/scripts/frontend_scaffolder.py +114 -0
  193. package/templates/admin-root/.claude/skills/skill-creator/SKILL.md +355 -0
  194. package/templates/admin-root/.claude/skills/skill-creator/references/output-patterns.md +86 -0
  195. package/templates/admin-root/.claude/skills/skill-creator/references/workflows.md +28 -0
  196. package/templates/admin-root/.claude/skills/skill-creator/scripts/init_skill.py +300 -0
  197. package/templates/admin-root/.claude/skills/skill-creator/scripts/package_skill.py +110 -0
  198. package/templates/admin-root/.claude/skills/skill-creator/scripts/quick_validate.py +97 -0
  199. package/templates/admin-root/.claude/skills/ui-ux-pro-max/SKILL.md +386 -0
  200. package/templates/admin-root/.claude/skills/ui-ux-pro-max/data +1 -0
  201. package/templates/admin-root/.claude/skills/ui-ux-pro-max/scripts +1 -0
  202. package/templates/admin-root/.claude/skills/uniwind +1 -0
  203. package/templates/admin-root/.claude/skills/vercel-react-best-practices/AGENTS.md +2934 -0
  204. package/templates/admin-root/.claude/skills/vercel-react-best-practices/SKILL.md +136 -0
  205. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/advanced-event-handler-refs.md +55 -0
  206. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/advanced-init-once.md +42 -0
  207. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/advanced-use-latest.md +39 -0
  208. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/async-api-routes.md +38 -0
  209. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/async-defer-await.md +80 -0
  210. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/async-dependencies.md +51 -0
  211. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/async-parallel.md +28 -0
  212. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/async-suspense-boundaries.md +99 -0
  213. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/bundle-barrel-imports.md +59 -0
  214. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/bundle-conditional.md +31 -0
  215. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/bundle-defer-third-party.md +49 -0
  216. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/bundle-dynamic-imports.md +35 -0
  217. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/bundle-preload.md +50 -0
  218. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/client-event-listeners.md +74 -0
  219. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/client-localstorage-schema.md +71 -0
  220. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/client-passive-event-listeners.md +48 -0
  221. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/client-swr-dedup.md +56 -0
  222. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/js-batch-dom-css.md +107 -0
  223. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/js-cache-function-results.md +80 -0
  224. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/js-cache-property-access.md +28 -0
  225. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/js-cache-storage.md +70 -0
  226. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/js-combine-iterations.md +32 -0
  227. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/js-early-exit.md +50 -0
  228. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/js-hoist-regexp.md +45 -0
  229. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/js-index-maps.md +37 -0
  230. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/js-length-check-first.md +49 -0
  231. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/js-min-max-loop.md +82 -0
  232. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/js-set-map-lookups.md +24 -0
  233. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/js-tosorted-immutable.md +57 -0
  234. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rendering-activity.md +26 -0
  235. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rendering-animate-svg-wrapper.md +47 -0
  236. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rendering-conditional-render.md +40 -0
  237. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rendering-content-visibility.md +38 -0
  238. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rendering-hoist-jsx.md +46 -0
  239. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rendering-hydration-no-flicker.md +82 -0
  240. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rendering-hydration-suppress-warning.md +30 -0
  241. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rendering-svg-precision.md +28 -0
  242. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rendering-usetransition-loading.md +75 -0
  243. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rerender-defer-reads.md +39 -0
  244. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rerender-dependencies.md +45 -0
  245. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rerender-derived-state-no-effect.md +40 -0
  246. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rerender-derived-state.md +29 -0
  247. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rerender-functional-setstate.md +74 -0
  248. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rerender-lazy-state-init.md +58 -0
  249. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rerender-memo-with-default-value.md +38 -0
  250. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rerender-memo.md +44 -0
  251. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rerender-move-effect-to-event.md +45 -0
  252. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rerender-simple-expression-in-memo.md +35 -0
  253. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rerender-transitions.md +40 -0
  254. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/rerender-use-ref-transient-values.md +73 -0
  255. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/server-after-nonblocking.md +73 -0
  256. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/server-auth-actions.md +96 -0
  257. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/server-cache-lru.md +41 -0
  258. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/server-cache-react.md +76 -0
  259. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/server-dedup-props.md +65 -0
  260. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/server-parallel-fetching.md +83 -0
  261. package/templates/admin-root/.claude/skills/vercel-react-best-practices/rules/server-serialization.md +38 -0
  262. package/templates/admin-root/.cursor/settings.json +10 -0
  263. package/templates/admin-root/.editorconfig +19 -0
  264. package/templates/admin-root/.gitattributes +16 -0
  265. package/templates/admin-root/.oxfmtrc.json +35 -0
  266. package/templates/admin-root/AGENTS.md +297 -0
  267. package/templates/admin-root/CLAUDE.md +1 -0
  268. package/templates/admin-root/skills-lock.json +27 -0
  269. package/templates/admin-root.manifest.json +1317 -0
  270. package/templates/admin-shell/devtools/AdminDevtools.css +27 -0
  271. package/templates/admin-shell/devtools/AdminDevtools.tsx +253 -0
  272. package/templates/admin-shell/devtools/index.ts +7 -0
  273. package/templates/admin-shell/devtools/jotai.ts +2 -0
  274. package/templates/admin.meta.json +14 -6
  275. package/LICENSE +0 -21
@@ -0,0 +1,297 @@
1
+ # AGENTS.md
2
+
3
+ 本文件为编码智能体(Claude Code、Codex 等)在本仓库工作时提供指导。
4
+
5
+ > `CLAUDE.md` 是指向本文件的符号链接,全仓库只有一份事实来源。
6
+ > 修改本文件,永远不要直接编辑 `CLAUDE.md`。
7
+
8
+ ## 规范索引
9
+
10
+ 本文件只包含**跨端通用、随时可能被违反**的规则。平台专属规范放在对应子树,
11
+ 工作涉及该子树时才需要阅读:
12
+
13
+ | 范围 | 文件 |
14
+ | ---------------------------------------- | --------------------------- |
15
+ | Native 样式(Uniwind / 语义色 / 安全区) | `packages/native/AGENTS.md` |
16
+ | Web 样式(UnoCSS / 色阶 / antd) | `packages/web/AGENTS.md` |
17
+ | 包布局与命名(平台优先分层) | `packages/ARCHITECTURE.md` |
18
+
19
+ ## Skills 调用规则(关键)
20
+
21
+ 技能位于 `.agents/skills/`(`.claude/skills/` 为镜像)。
22
+ **权威清单以该目录为准**,此处不做枚举——手工维护的列表必然过期。
23
+
24
+ ## 思考顺序
25
+
26
+ 你是一位经验丰富的软件架构师与工程师。回应任何任务时,严格遵循以下顺序:
27
+
28
+ 1. **功能开发**:先分析架构 → 描述系统结构、职责与交互 → 架构明确后才动手实现。
29
+ 2. **代码重构**:先定义代码的理想终态 → 描述目标结构、抽象与边界 → 朝终态增量重构。
30
+ 3. **调试修复**:先梳理已知信息 → 明确区分「事实 vs 假设」「症状 vs 根因」 → 问题空间厘清前不提修复方案。
31
+
32
+ 信息不完整时请求澄清。不要急于写代码。行动前审慎且透明地推理。
33
+
34
+ ---
35
+
36
+ ## React 组件规范
37
+
38
+ 以下规则定义的是**强制开发工作流**,不是建议、不是偏好、不是「最佳实践」。
39
+ 违反这些规则的代码即视为**缺陷**,即使功能正常也必须修正。
40
+
41
+ ## 组件定义
42
+
43
+ ### 必须使用箭头函数
44
+
45
+ ```tsx
46
+ // ✅ 正确
47
+ const Portal = (props: PortalProps) => { ... };
48
+
49
+ // ❌ 禁止 function 声明式组件
50
+ function Portal(props: PortalProps) { ... }
51
+ ```
52
+
53
+ ### 必须有独立的 Props 接口
54
+
55
+ 用 `interface`,禁止在函数签名里内联。每个字段必须有 JSDoc 注释说明**意图**(不是重复类型):
56
+
57
+ ```tsx
58
+ interface PortalProps {
59
+ /** 是否在容器不存在时自动创建 */
60
+ autoCreate?: boolean;
61
+ /** 传送门内容 */
62
+ children: ReactNode;
63
+ }
64
+ ```
65
+
66
+ ### Props 在函数体内解构
67
+
68
+ **禁止**在参数位置解构,解构必须是函数体第一行:
69
+
70
+ ```tsx
71
+ // ✅ 正确
72
+ const Portal = (props: PortalProps) => {
73
+ const { autoCreate = false, children, container } = props;
74
+ ...
75
+ };
76
+
77
+ // ❌ 禁止
78
+ const Portal = ({ autoCreate, children }: PortalProps) => { ... };
79
+ ```
80
+
81
+ 理由:保持单一可预测的入口、便于调试重构、防止 prop 意外遮蔽。
82
+
83
+ ## Hooks 规则
84
+
85
+ ### `useCallback` — 禁止使用
86
+
87
+ `useCallback` **不得**出现在组件代码中。以下用法一律禁止:
88
+
89
+ - 为传给子组件的函数「稳定」引用
90
+ - 配合 `React.memo` 阻止子组件重渲染
91
+ - 用来消除 `exhaustive-deps` 告警
92
+ - 任何预防性 / 防御性优化
93
+
94
+ 若某处看起来「必须」用它,说明**设计有问题**,改设计而不是加 hook:
95
+
96
+ - 函数不闭包任何东西 → 提到组件外
97
+ - 命令式且不应影响渲染 → 改用 `ref`
98
+ - 其余 → 重划组件边界,让该函数不再跨界
99
+
100
+ > Web 端另有一层理由:`packages/web/admin-vite` 默认启用 React Compiler,
101
+ > 手动 memo 不仅多余,还可能干扰编译器优化。Native 端(Expo)未启用编译器,
102
+ > 但禁令同样成立——理由见文末「核心理念」。
103
+
104
+ ### `useMemo` — 仅限两种场景
105
+
106
+ 1. **从逻辑派生值**:memo 结果是一个**值**(不是函数),且逻辑非平凡
107
+ 2. **高开销计算**:可证明的高开销,非预防性优化
108
+
109
+ 其余场景**禁止**使用。
110
+
111
+ ### `react-hooks/exhaustive-deps`
112
+
113
+ 默认**不允许**禁用。仅当确认理解依赖模型、且行为是有意为之时可禁用,
114
+ 且必须写在**文件顶部**,禁止行内禁用:
115
+
116
+ ```ts
117
+ /* eslint-disable react-hooks/exhaustive-deps */
118
+ ```
119
+
120
+ ## 组件内部排列顺序
121
+
122
+ 组件内部声明必须按以下顺序排列,不得随意穿插:
123
+
124
+ | 顺序 | 内容 | 说明 |
125
+ | ---- | -------------------------- | --------------------------------- |
126
+ | 0 | 常量 | 组件**外部**,与实例无关的纯值 |
127
+ | 1 | 路由 / 安全区 / 环境 hooks | 环境上下文,最先获取 |
128
+ | 2 | `useState` | 组件自有状态 |
129
+ | 3 | `useRef` | 命令式引用 |
130
+ | 4 | 自定义 hooks | 业务逻辑封装 |
131
+ | 5 | 网络 hooks | query / mutation |
132
+ | 6 | 计算变量 | 由以上状态派生 |
133
+ | 7 | 函数声明 | 事件处理、辅助逻辑 |
134
+ | 8 | `useEffect` | 副作用,放在函数之后、return 之前 |
135
+ | 9 | `return` | JSX 渲染 |
136
+
137
+ ```tsx
138
+ const CODE_LENGTH = 6; // 0. 常量在组件外
139
+
140
+ const MyScreen = (props: MyScreenProps) => {
141
+ const { title } = props;
142
+
143
+ const router = useRouter(); // 1. 环境
144
+ const insets = useSafeAreaInsets();
145
+
146
+ const [value, setValue] = useState(''); // 2. state
147
+ const inputRef = useRef<TextInput>(null); // 3. ref
148
+
149
+ const { count, start } = useCountDownTimer(60); // 4. 自定义 hooks
150
+ const { data: profile } = useMyProfileQuery(); // 5. 网络 hooks
151
+ const { mutate: submit, isPending } = useSubmitMutation();
152
+
153
+ const canSubmit = value.length > 0 && !isPending; // 6. 计算变量
154
+
155
+ function handleSubmit() { ... } // 7. 函数声明
156
+
157
+ useEffect(() => { ... }, []); // 8. 副作用
158
+
159
+ return ( ... ); // 9. JSX
160
+ };
161
+ ```
162
+
163
+ > **原则**:数据流自上而下——先声明数据源,再派生,再处理,最后渲染。
164
+ > 后面的可以引用前面的,前面的不应依赖后面的。
165
+
166
+ ### 例外:初始值依赖上游数据
167
+
168
+ 当 `useState` 的初始值需要由 hook / 网络接口的返回值决定时,允许把该 `useState`
169
+ 下移到数据源之后:
170
+
171
+ ```tsx
172
+ const { data: profile } = useMyProfileQuery();
173
+ const profilePhone = profile?.phone_number ?? '';
174
+
175
+ // ✅ 初始值依赖 profilePhone,放在数据源之后
176
+ const [phone, setPhone] = useState(phoneParam ?? profilePhone);
177
+ ```
178
+
179
+ **判断标准**:初始值表达式引用了前面的 hook 返回值或派生变量,则该 state
180
+ 跟随其依赖的位置,而非固定在第 2 层。
181
+
182
+ ## 内部函数
183
+
184
+ 组件内的辅助函数必须使用 **function 声明**(不是箭头函数);可复用的应提到组件外:
185
+
186
+ ```tsx
187
+ // ✅ function 声明
188
+ function findTargetElement() { ... }
189
+
190
+ // ❌ 禁止箭头函数
191
+ const findTargetElement = () => { ... };
192
+ ```
193
+
194
+ 理由:执行意图清晰、栈追踪更好。
195
+
196
+ ## State vs Ref
197
+
198
+ | 用途 | Hook |
199
+ | --------------------------- | ---------- |
200
+ | 影响渲染的状态 | `useState` |
201
+ | 命令式 / 不触发渲染的可变值 | `useRef` |
202
+
203
+ 绝不混淆职责。
204
+
205
+ ## useEffect
206
+
207
+ 仅用于:生命周期绑定、外部系统同步、DOM / 命令式集成。
208
+
209
+ 目的必须一读即明;副作用必须局部化;**创建了资源必须有 cleanup**。
210
+
211
+ ## Boolean 条件规则
212
+
213
+ - 只需判断真值时,一律写 `Boolean(value)`
214
+ - 不要仅为得到布尔条件而写 `value !== undefined`、`value != null`
215
+ - 仅当 `undefined` 必须与 `0`、空字符串、`false`、`null` 区分开时,才允许显式空值比较
216
+
217
+ ---
218
+
219
+ ## 命名规范
220
+
221
+ ### 文件命名
222
+
223
+ | 类型 | 格式 | 示例 |
224
+ | --- | --- | --- |
225
+ | 组件文件 | **PascalCase** | `TreeRoot.tsx`, `CheckboxGroup.tsx` |
226
+ | 测试文件 | kebab-case + `.test` | `button-group.test.tsx` |
227
+ | Hook 文件 | kebab-case,`use-` 前缀 | `use-auth.ts` |
228
+ | 类型文件 | kebab-case | `types.ts`, `types.d.ts` |
229
+ | 常量 / 工具文件 | kebab-case | `service-config.ts`, `atom-with-storage.ts` |
230
+
231
+ > 组件文件是 PascalCase,**与文件内导出的组件名一致**;只有测试和非组件模块用 kebab-case。
232
+
233
+ ### 导出命名
234
+
235
+ | 类型 | 格式 | 示例 |
236
+ | --- | --- | --- |
237
+ | 组件 | PascalCase | `Button`, `PasswordInput` |
238
+ | Hook | camelCase,`use` 前缀 | `useAuth`, `useLoginMutation` |
239
+ | 常量 | UPPER_SNAKE_CASE | `AUTH_URLS`, `SERVICE_CODES` |
240
+ | 类型 / 接口 | PascalCase | `AuthTokens`, `LoginParams` |
241
+ | 工具函数 | camelCase | `createAppRequest`, `getAtomValue` |
242
+
243
+ ### API 相关命名
244
+
245
+ | 类型 | 规则 | 示例 |
246
+ | --- | --- | --- |
247
+ | URL 常量 | `MODULE_URLS` | `AUTH_URLS`, `MONITOR_CACHE_URLS` |
248
+ | Query Keys | `MODULE_QUERY_KEYS` | `AUTH_QUERY_KEYS` |
249
+ | Mutation Keys | `MODULE_MUTATION_KEYS` | `AUTH_MUTATION_KEYS` |
250
+ | Fetch 函数 | `fetchXxx` | `fetchLogin`, `fetchCaptcha` |
251
+ | Query Hook | `useXxxQuery` | `useCacheInfoQuery` |
252
+ | Mutation Hook | `useXxxMutation` | `useAssignRoleMembersMutation` |
253
+
254
+ ### API 类型
255
+
256
+ 定义在 `packages/@core/types/src/api/*.d.ts`,写在 `declare global` 内、用**点号分段**的
257
+ namespace,字段一律 **camelCase**,每个字段必须有注释:
258
+
259
+ ```ts
260
+ declare global {
261
+ namespace Api.Auth {
262
+ /** 账号密码登录 */
263
+ type PwdLoginParams = LoginContext & {
264
+ /** 图形验证码内容 */
265
+ code?: string;
266
+ /** 密码 */
267
+ password: string;
268
+ /** 用户名 */
269
+ userName: string;
270
+ };
271
+ }
272
+ }
273
+ ```
274
+
275
+ 后端返回 snake_case 时在 service 层转换,**不要把 snake_case 带进类型定义**。
276
+
277
+ ### Feature 模块结构
278
+
279
+ ```
280
+ features/<name>/
281
+ ├── components/ # 该 feature 私有的组件
282
+ ├── use-xxx.ts # hooks 平铺,不套 hooks/ 目录
283
+ └── types.ts # 需要时才建
284
+ ```
285
+
286
+ 不使用 `core/` 子目录;hooks 直接平铺在模块根下。
287
+
288
+ ---
289
+
290
+ ## 核心理念
291
+
292
+ - React **不是**关于「防止 re-render」
293
+ - Hooks 是**语义工具**,不是性能 hack
294
+ - 可读性 > 过早优化
295
+ - **架构错误不能用 hooks 来打补丁**
296
+
297
+ 如果某个 hook 让你觉得「必须要用」,先质疑设计。
@@ -0,0 +1 @@
1
+ AGENTS.md
@@ -0,0 +1,27 @@
1
+ {
2
+ "version": 1,
3
+ "skills": {
4
+ "migrate-nativewind-to-uniwind": {
5
+ "source": "uni-stack/uniwind",
6
+ "sourceType": "github",
7
+ "skillPath": "skills/migrate-nativewind-to-uniwind/SKILL.md",
8
+ "computedHash": "095066623a369bccadd62065ac44e7b4addce4cd1f9317b08fc2f8ea2d9ad4bd"
9
+ },
10
+ "migrate-oxfmt": {
11
+ "source": "oxc-project/oxc",
12
+ "sourceType": "github",
13
+ "computedHash": "b313a891bc4173aac0bd948d5e8c40f5dd921fe67eb5f51184c364e2b869f0e7"
14
+ },
15
+ "migrate-oxlint": {
16
+ "source": "oxc-project/oxc",
17
+ "sourceType": "github",
18
+ "computedHash": "80ce5201b1ef52d6cabe553a4cacfd6e1db97bad99618216b9cf9318d11d7e64"
19
+ },
20
+ "uniwind": {
21
+ "source": "uni-stack/uniwind",
22
+ "sourceType": "github",
23
+ "skillPath": "skills/uniwind/SKILL.md",
24
+ "computedHash": "ecdc81b7f18b46ca48843bdf052c0f9796d9da42578471ca725c38faf74673fd"
25
+ }
26
+ }
27
+ }