@bovinphang/frontend-craft 2.8.0 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (681) hide show
  1. package/.claude-plugin/marketplace.json +3 -3
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/CHANGELOG.md +64 -0
  4. package/CHANGELOG.zh-CN.md +64 -0
  5. package/CONTRIBUTING.md +74 -54
  6. package/CONTRIBUTING.zh-CN.md +75 -53
  7. package/README.md +150 -38
  8. package/README.openclaw.md +86 -11
  9. package/README.openclaw.zh-CN.md +86 -11
  10. package/README.zh-CN.md +147 -35
  11. package/agents/fec-code-reviewer.md +24 -3
  12. package/agents/fec-debugger.md +1 -1
  13. package/agents/fec-doc-updater.md +1 -1
  14. package/agents/fec-e2e-runner.md +1 -1
  15. package/agents/fec-figma-implementer.md +1 -1
  16. package/agents/fec-performance-optimizer.md +1 -1
  17. package/agents/fec-refactor-cleaner.md +4 -1
  18. package/agents/fec-refactoring-expert.md +81 -0
  19. package/agents/fec-security-reviewer.md +17 -1
  20. package/agents/fec-test-planner.md +1 -1
  21. package/agents/fec-typescript-reviewer.md +25 -9
  22. package/agents/fec-ui-checker.md +11 -11
  23. package/commands/fec-debug.md +1 -1
  24. package/commands/fec-refactor-plan.md +17 -0
  25. package/commands/fec-refactor.md +18 -0
  26. package/commands/fec-review.md +40 -10
  27. package/commands/fec-scaffold.md +1 -1
  28. package/commands/fec-smell.md +17 -0
  29. package/commands/fec-tdd.md +6 -2
  30. package/common-content.lock.json +3795 -0
  31. package/dist/bin/frontend-craft.js +386 -55
  32. package/dist/hooks/fec-run-tests.js +5 -1
  33. package/dist/hooks/fec-session-start.js +1 -1
  34. package/docs/common-migration.md +61 -0
  35. package/docs/example-prompts.md +29 -12
  36. package/docs/ja-JP/README.md +129 -34
  37. package/docs/ko-KR/README.md +129 -34
  38. package/docs/project-structure.md +49 -14
  39. package/docs/refactoring/README.md +50 -0
  40. package/docs/refactoring/catalog.md +105 -0
  41. package/docs/refactoring/smell-refactoring-matrix.md +41 -0
  42. package/docs/review-and-diagram-workflows.md +39 -0
  43. package/docs/runtimes/antigravity.md +13 -5
  44. package/docs/runtimes/augment.md +13 -5
  45. package/docs/runtimes/claude.md +26 -10
  46. package/docs/runtimes/claude.zh-CN.md +26 -10
  47. package/docs/runtimes/cline.md +13 -5
  48. package/docs/runtimes/codebuddy.md +13 -5
  49. package/docs/runtimes/codex.md +13 -5
  50. package/docs/runtimes/compatibility.md +42 -0
  51. package/docs/runtimes/copilot.md +13 -5
  52. package/docs/runtimes/cursor.md +13 -5
  53. package/docs/runtimes/gemini.md +13 -5
  54. package/docs/runtimes/kilo.md +13 -5
  55. package/docs/runtimes/openclaw.md +13 -5
  56. package/docs/runtimes/opencode.md +13 -5
  57. package/docs/runtimes/qoder.md +11 -12
  58. package/docs/runtimes/trae.md +13 -5
  59. package/docs/runtimes/windsurf.md +13 -5
  60. package/docs/superpowers/plans/2026-09-26-content-integrity.md +145 -0
  61. package/docs/superpowers/plans/2026-09-26-diagram-quality.md +170 -0
  62. package/docs/superpowers/specs/2026-09-26-diagram-quality-design.md +77 -0
  63. package/docs/superpowers/specs/2026-09-26-project-optimization-design.md +95 -0
  64. package/docs/zh-CN/common-migration.md +57 -0
  65. package/docs/zh-CN/example-prompts.md +29 -12
  66. package/docs/zh-CN/project-structure.md +49 -11
  67. package/docs/zh-CN/review-and-diagram-workflows.md +39 -0
  68. package/docs/zh-TW/README.md +129 -34
  69. package/localized/zh-CN/agents/fec-code-reviewer.md +22 -3
  70. package/localized/zh-CN/agents/fec-refactor-cleaner.md +3 -0
  71. package/localized/zh-CN/agents/fec-refactoring-expert.md +53 -0
  72. package/localized/zh-CN/agents/fec-security-reviewer.md +16 -0
  73. package/localized/zh-CN/agents/fec-typescript-reviewer.md +24 -8
  74. package/localized/zh-CN/commands/fec-refactor-plan.md +15 -0
  75. package/localized/zh-CN/commands/fec-refactor.md +14 -0
  76. package/localized/zh-CN/commands/fec-review.md +40 -9
  77. package/localized/zh-CN/commands/fec-smell.md +13 -0
  78. package/localized/zh-CN/commands/fec-tdd.md +4 -0
  79. package/localized/zh-CN/skills/cc-c-project-standard/SKILL.md +25 -0
  80. package/localized/zh-CN/skills/cc-c-project-standard/examples/engineering/README.md +7 -0
  81. package/localized/zh-CN/skills/cc-c-project-standard/examples/engineering/boundary.c +26 -0
  82. package/localized/zh-CN/skills/cc-c-project-standard/examples/engineering/boundary.h +15 -0
  83. package/localized/zh-CN/skills/cc-c-project-standard/examples/engineering/boundary_test.c +73 -0
  84. package/localized/zh-CN/skills/cc-c-project-standard/references/common/engineering-practices.md +237 -0
  85. package/localized/zh-CN/skills/cc-c-project-standard/references/common/engineering-practices.rules.json +121 -0
  86. package/localized/zh-CN/skills/cc-c-project-standard/references/common/engineering-practices.sources.json +377 -0
  87. package/localized/zh-CN/skills/cc-c-project-standard/references/engineering-practices.md +106 -0
  88. package/localized/zh-CN/skills/cc-c-project-standard/references/practice.md +37 -0
  89. package/localized/zh-CN/skills/cc-cpp-project-standard/SKILL.md +25 -0
  90. package/localized/zh-CN/skills/cc-cpp-project-standard/examples/engineering/README.md +7 -0
  91. package/localized/zh-CN/skills/cc-cpp-project-standard/examples/engineering/boundary.cpp +26 -0
  92. package/localized/zh-CN/skills/cc-cpp-project-standard/examples/engineering/boundary.hpp +12 -0
  93. package/localized/zh-CN/skills/cc-cpp-project-standard/examples/engineering/boundary_test.cpp +38 -0
  94. package/localized/zh-CN/skills/cc-cpp-project-standard/references/common/engineering-practices.md +237 -0
  95. package/localized/zh-CN/skills/cc-cpp-project-standard/references/common/engineering-practices.rules.json +121 -0
  96. package/localized/zh-CN/skills/cc-cpp-project-standard/references/common/engineering-practices.sources.json +377 -0
  97. package/localized/zh-CN/skills/cc-cpp-project-standard/references/engineering-practices.md +106 -0
  98. package/localized/zh-CN/skills/cc-cpp-project-standard/references/practice.md +37 -0
  99. package/localized/zh-CN/skills/cc-debug-methodology/SKILL.md +8 -0
  100. package/localized/zh-CN/skills/cc-debug-methodology/references/method.md +13 -0
  101. package/localized/zh-CN/skills/cc-doc-sync-core/SKILL.md +8 -0
  102. package/localized/zh-CN/skills/cc-doc-sync-core/references/method.md +12 -0
  103. package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/SKILL.md +5 -5
  104. package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/references/flowchart-quality.md +1 -1
  105. package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/references/layout-and-export.md +9 -9
  106. package/localized/zh-CN/skills/cc-electron-project-standard/SKILL.md +21 -0
  107. package/localized/zh-CN/skills/cc-electron-project-standard/examples/engineering/README.md +7 -0
  108. package/localized/zh-CN/skills/cc-electron-project-standard/examples/engineering/ipc-lifecycle.cjs +44 -0
  109. package/localized/zh-CN/skills/cc-electron-project-standard/examples/engineering/ipc-lifecycle.test.cjs +44 -0
  110. package/localized/zh-CN/skills/cc-electron-project-standard/examples/engineering/package.json +8 -0
  111. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/README.md +9 -0
  112. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/boundary.cjs +19 -0
  113. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/boundary.test.cjs +7 -0
  114. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/index.html +1 -0
  115. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/main.cjs +20 -0
  116. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/package.json +9 -0
  117. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/preload.cjs +2 -0
  118. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/renderer.js +4 -0
  119. package/localized/zh-CN/skills/cc-electron-project-standard/references/common/engineering-practices.md +237 -0
  120. package/localized/zh-CN/skills/cc-electron-project-standard/references/common/engineering-practices.rules.json +121 -0
  121. package/localized/zh-CN/skills/cc-electron-project-standard/references/common/engineering-practices.sources.json +377 -0
  122. package/localized/zh-CN/skills/cc-electron-project-standard/references/engineering-practices.md +73 -0
  123. package/localized/zh-CN/skills/cc-electron-project-standard/references/practice.md +19 -0
  124. package/localized/zh-CN/skills/cc-electron-project-standard/references/verification.md +17 -0
  125. package/localized/zh-CN/skills/cc-go-concurrency/SKILL.md +25 -0
  126. package/localized/zh-CN/skills/cc-go-concurrency/references/common/engineering-practices.md +237 -0
  127. package/localized/zh-CN/skills/cc-go-concurrency/references/common/engineering-practices.rules.json +121 -0
  128. package/localized/zh-CN/skills/cc-go-concurrency/references/common/engineering-practices.sources.json +377 -0
  129. package/localized/zh-CN/skills/cc-go-concurrency/references/engineering-practices.md +73 -0
  130. package/localized/zh-CN/skills/cc-go-concurrency/references/practice.md +37 -0
  131. package/localized/zh-CN/skills/cc-go-project-standard/SKILL.md +25 -0
  132. package/localized/zh-CN/skills/cc-go-project-standard/examples/engineering/README.md +7 -0
  133. package/localized/zh-CN/skills/cc-go-project-standard/examples/engineering/go.mod +3 -0
  134. package/localized/zh-CN/skills/cc-go-project-standard/examples/engineering/lifecycle.go +71 -0
  135. package/localized/zh-CN/skills/cc-go-project-standard/examples/engineering/lifecycle_test.go +22 -0
  136. package/localized/zh-CN/skills/cc-go-project-standard/references/common/engineering-practices.md +237 -0
  137. package/localized/zh-CN/skills/cc-go-project-standard/references/common/engineering-practices.rules.json +121 -0
  138. package/localized/zh-CN/skills/cc-go-project-standard/references/common/engineering-practices.sources.json +377 -0
  139. package/localized/zh-CN/skills/cc-go-project-standard/references/engineering-practices.md +106 -0
  140. package/localized/zh-CN/skills/cc-go-project-standard/references/practice.md +37 -0
  141. package/localized/zh-CN/skills/cc-java-project-standard/SKILL.md +25 -0
  142. package/localized/zh-CN/skills/cc-java-project-standard/examples/engineering/README.md +5 -0
  143. package/localized/zh-CN/skills/cc-java-project-standard/examples/engineering/ResourceBoundary.java +26 -0
  144. package/localized/zh-CN/skills/cc-java-project-standard/examples/engineering/ResourceBoundaryTest.java +41 -0
  145. package/localized/zh-CN/skills/cc-java-project-standard/references/common/engineering-practices.md +237 -0
  146. package/localized/zh-CN/skills/cc-java-project-standard/references/common/engineering-practices.rules.json +121 -0
  147. package/localized/zh-CN/skills/cc-java-project-standard/references/common/engineering-practices.sources.json +377 -0
  148. package/localized/zh-CN/skills/cc-java-project-standard/references/engineering-practices.md +106 -0
  149. package/localized/zh-CN/skills/cc-java-project-standard/references/practice.md +37 -0
  150. package/localized/zh-CN/skills/cc-java-runtime/SKILL.md +25 -0
  151. package/localized/zh-CN/skills/cc-java-runtime/references/common/engineering-practices.md +237 -0
  152. package/localized/zh-CN/skills/cc-java-runtime/references/common/engineering-practices.rules.json +121 -0
  153. package/localized/zh-CN/skills/cc-java-runtime/references/common/engineering-practices.sources.json +377 -0
  154. package/localized/zh-CN/skills/cc-java-runtime/references/engineering-practices.md +73 -0
  155. package/localized/zh-CN/skills/cc-java-runtime/references/practice.md +37 -0
  156. package/localized/zh-CN/skills/cc-native-memory-safety/SKILL.md +25 -0
  157. package/localized/zh-CN/skills/cc-native-memory-safety/references/common/engineering-practices.md +237 -0
  158. package/localized/zh-CN/skills/cc-native-memory-safety/references/common/engineering-practices.rules.json +121 -0
  159. package/localized/zh-CN/skills/cc-native-memory-safety/references/common/engineering-practices.sources.json +377 -0
  160. package/localized/zh-CN/skills/cc-native-memory-safety/references/engineering-practices.md +73 -0
  161. package/localized/zh-CN/skills/cc-native-memory-safety/references/practice.md +37 -0
  162. package/localized/zh-CN/skills/cc-python-async/SKILL.md +25 -0
  163. package/localized/zh-CN/skills/cc-python-async/references/common/engineering-practices.md +237 -0
  164. package/localized/zh-CN/skills/cc-python-async/references/common/engineering-practices.rules.json +121 -0
  165. package/localized/zh-CN/skills/cc-python-async/references/common/engineering-practices.sources.json +377 -0
  166. package/localized/zh-CN/skills/cc-python-async/references/engineering-practices.md +73 -0
  167. package/localized/zh-CN/skills/cc-python-async/references/practice.md +37 -0
  168. package/localized/zh-CN/skills/cc-python-project-standard/SKILL.md +25 -0
  169. package/localized/zh-CN/skills/cc-python-project-standard/examples/engineering/README.md +7 -0
  170. package/localized/zh-CN/skills/cc-python-project-standard/examples/engineering/resource_boundary.py +37 -0
  171. package/localized/zh-CN/skills/cc-python-project-standard/examples/engineering/test_resource_boundary.py +49 -0
  172. package/localized/zh-CN/skills/cc-python-project-standard/references/common/engineering-practices.md +237 -0
  173. package/localized/zh-CN/skills/cc-python-project-standard/references/common/engineering-practices.rules.json +121 -0
  174. package/localized/zh-CN/skills/cc-python-project-standard/references/common/engineering-practices.sources.json +377 -0
  175. package/localized/zh-CN/skills/cc-python-project-standard/references/engineering-practices.md +106 -0
  176. package/localized/zh-CN/skills/cc-python-project-standard/references/practice.md +37 -0
  177. package/localized/zh-CN/skills/cc-refactoring-core/SKILL.md +8 -0
  178. package/localized/zh-CN/skills/cc-refactoring-core/references/method.md +16 -0
  179. package/localized/zh-CN/skills/cc-rust-async/SKILL.md +25 -0
  180. package/localized/zh-CN/skills/cc-rust-async/references/common/engineering-practices.md +237 -0
  181. package/localized/zh-CN/skills/cc-rust-async/references/common/engineering-practices.rules.json +121 -0
  182. package/localized/zh-CN/skills/cc-rust-async/references/common/engineering-practices.sources.json +377 -0
  183. package/localized/zh-CN/skills/cc-rust-async/references/engineering-practices.md +73 -0
  184. package/localized/zh-CN/skills/cc-rust-async/references/practice.md +37 -0
  185. package/localized/zh-CN/skills/cc-rust-project-standard/SKILL.md +25 -0
  186. package/localized/zh-CN/skills/cc-rust-project-standard/examples/engineering/Cargo.lock +7 -0
  187. package/localized/zh-CN/skills/cc-rust-project-standard/examples/engineering/Cargo.toml +8 -0
  188. package/localized/zh-CN/skills/cc-rust-project-standard/examples/engineering/README.md +5 -0
  189. package/localized/zh-CN/skills/cc-rust-project-standard/examples/engineering/src/lib.rs +43 -0
  190. package/localized/zh-CN/skills/cc-rust-project-standard/references/common/engineering-practices.md +237 -0
  191. package/localized/zh-CN/skills/cc-rust-project-standard/references/common/engineering-practices.rules.json +121 -0
  192. package/localized/zh-CN/skills/cc-rust-project-standard/references/common/engineering-practices.sources.json +377 -0
  193. package/localized/zh-CN/skills/cc-rust-project-standard/references/engineering-practices.md +106 -0
  194. package/localized/zh-CN/skills/cc-rust-project-standard/references/practice.md +37 -0
  195. package/localized/zh-CN/skills/cc-source-driven-development/SKILL.md +8 -0
  196. package/localized/zh-CN/skills/cc-source-driven-development/references/method.md +19 -0
  197. package/localized/zh-CN/skills/cc-tauri-project-standard/SKILL.md +21 -0
  198. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/README.md +9 -0
  199. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/core/Cargo.lock +5 -0
  200. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/core/Cargo.toml +9 -0
  201. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/core/src/lib.rs +46 -0
  202. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/Cargo.toml +12 -0
  203. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/build.rs +5 -0
  204. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/capabilities/main.json +6 -0
  205. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/permissions/documents.toml +4 -0
  206. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/src/main.rs +22 -0
  207. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/tauri.conf.json +13 -0
  208. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/ui/app.js +5 -0
  209. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/ui/index.html +1 -0
  210. package/localized/zh-CN/skills/cc-tauri-project-standard/references/common/engineering-practices.md +237 -0
  211. package/localized/zh-CN/skills/cc-tauri-project-standard/references/common/engineering-practices.rules.json +121 -0
  212. package/localized/zh-CN/skills/cc-tauri-project-standard/references/common/engineering-practices.sources.json +377 -0
  213. package/localized/zh-CN/skills/cc-tauri-project-standard/references/engineering-practices.md +73 -0
  214. package/localized/zh-CN/skills/cc-tauri-project-standard/references/practice.md +20 -0
  215. package/localized/zh-CN/skills/cc-tauri-project-standard/references/verification.md +18 -0
  216. package/localized/zh-CN/skills/cc-tdd-methodology/SKILL.md +8 -0
  217. package/localized/zh-CN/skills/cc-tdd-methodology/references/method.md +13 -0
  218. package/localized/zh-CN/skills/cc-technical-diagrams/SKILL.md +34 -0
  219. package/localized/zh-CN/skills/{fec-image-generation → cc-technical-diagrams}/assets/interactive-diagram.html +371 -371
  220. package/localized/zh-CN/skills/cc-technical-diagrams/assets/quality-examples/README.md +14 -0
  221. package/localized/zh-CN/skills/cc-technical-diagrams/assets/quality-examples/architecture.json +121 -0
  222. package/localized/zh-CN/skills/cc-technical-diagrams/assets/quality-examples/invalid-explicit.json +41 -0
  223. package/localized/zh-CN/skills/cc-technical-diagrams/assets/quality-examples/sequence.json +53 -0
  224. package/localized/zh-CN/skills/cc-technical-diagrams/assets/quality-examples/sequence.mmd +21 -0
  225. package/localized/zh-CN/skills/cc-technical-diagrams/assets/quality-examples/workflow.json +98 -0
  226. package/localized/zh-CN/skills/cc-technical-diagrams/assets/quality-examples/workflow.mmd +7 -0
  227. package/localized/zh-CN/skills/{fec-image-generation → cc-technical-diagrams}/references/diagram-workflows.md +12 -5
  228. package/localized/zh-CN/skills/{fec-image-generation → cc-technical-diagrams}/references/html-technical-diagrams.md +14 -7
  229. package/localized/zh-CN/skills/cc-technical-diagrams/references/png-qa-autofix.md +37 -0
  230. package/localized/zh-CN/skills/cc-technical-diagrams/scripts/diagram-browser.mjs +153 -0
  231. package/localized/zh-CN/skills/cc-technical-diagrams/scripts/diagram-layout.mjs +176 -0
  232. package/{skills/fec-image-generation → localized/zh-CN/skills/cc-technical-diagrams}/scripts/export-diagram.mjs +48 -80
  233. package/localized/zh-CN/skills/cc-technical-diagrams/scripts/mermaid-render.mjs +64 -0
  234. package/localized/zh-CN/skills/cc-technical-diagrams/scripts/png-qa.mjs +462 -0
  235. package/localized/zh-CN/skills/{fec-image-generation → cc-technical-diagrams}/scripts/tech-diagram-render.mjs +193 -53
  236. package/localized/zh-CN/skills/{fec-typescript-project-standard → cc-typescript-project-standard}/SKILL.md +10 -4
  237. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/README.md +7 -0
  238. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/boundary.test.ts +16 -0
  239. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/input.ts +12 -0
  240. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/package.json +12 -0
  241. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/pnpm-lock.yaml +39 -0
  242. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/pnpm-workspace.yaml +1 -0
  243. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/tsconfig.json +8 -0
  244. package/localized/zh-CN/skills/cc-typescript-project-standard/references/common/engineering-practices.md +237 -0
  245. package/localized/zh-CN/skills/cc-typescript-project-standard/references/common/engineering-practices.rules.json +121 -0
  246. package/localized/zh-CN/skills/cc-typescript-project-standard/references/common/engineering-practices.sources.json +377 -0
  247. package/localized/zh-CN/skills/cc-typescript-project-standard/references/engineering-practices.md +106 -0
  248. package/localized/zh-CN/skills/{fec-typescript-project-standard → cc-typescript-project-standard}/references/type-safety-patterns.md +5 -34
  249. package/localized/zh-CN/skills/{fec-typescript-project-standard → cc-typescript-project-standard}/references/type-safety.md +6 -0
  250. package/localized/zh-CN/skills/eval_queries.json +738 -72
  251. package/localized/zh-CN/skills/fec-api-integration/SKILL.md +5 -1
  252. package/localized/zh-CN/skills/fec-api-integration/references/common/engineering-practices.md +237 -0
  253. package/localized/zh-CN/skills/fec-api-integration/references/common/engineering-practices.rules.json +121 -0
  254. package/localized/zh-CN/skills/fec-api-integration/references/common/engineering-practices.sources.json +377 -0
  255. package/localized/zh-CN/skills/fec-api-integration/references/engineering-practices.md +73 -0
  256. package/localized/zh-CN/skills/fec-code-review/SKILL.md +24 -1
  257. package/localized/zh-CN/skills/fec-code-review/references/common/engineering-practices.md +237 -0
  258. package/localized/zh-CN/skills/fec-code-review/references/common/engineering-practices.rules.json +121 -0
  259. package/localized/zh-CN/skills/fec-code-review/references/common/engineering-practices.sources.json +377 -0
  260. package/localized/zh-CN/skills/fec-code-review/references/engineering-practices.md +73 -0
  261. package/localized/zh-CN/skills/fec-code-review/references/report-template.md +11 -1
  262. package/localized/zh-CN/skills/fec-code-smells/SKILL.md +33 -0
  263. package/localized/zh-CN/skills/fec-code-smells/references/detection-guide.md +25 -0
  264. package/localized/zh-CN/skills/fec-code-smells/references/smell-catalog.md +817 -0
  265. package/localized/zh-CN/skills/fec-code-smells/references/smell-to-refactoring-map.md +265 -0
  266. package/localized/zh-CN/skills/fec-data-fetching/SKILL.md +4 -0
  267. package/localized/zh-CN/skills/fec-data-fetching/references/common/engineering-practices.md +237 -0
  268. package/localized/zh-CN/skills/fec-data-fetching/references/common/engineering-practices.rules.json +121 -0
  269. package/localized/zh-CN/skills/fec-data-fetching/references/common/engineering-practices.sources.json +377 -0
  270. package/localized/zh-CN/skills/fec-data-fetching/references/engineering-practices.md +73 -0
  271. package/localized/zh-CN/skills/fec-debug-framework/SKILL.md +1 -50
  272. package/localized/zh-CN/skills/fec-debug-framework/references/common/debug.md +13 -0
  273. package/localized/zh-CN/skills/fec-dependency-upgrade/SKILL.md +4 -0
  274. package/localized/zh-CN/skills/fec-dependency-upgrade/references/common/engineering-practices.md +237 -0
  275. package/localized/zh-CN/skills/fec-dependency-upgrade/references/common/engineering-practices.rules.json +121 -0
  276. package/localized/zh-CN/skills/fec-dependency-upgrade/references/common/engineering-practices.sources.json +377 -0
  277. package/localized/zh-CN/skills/fec-dependency-upgrade/references/engineering-practices.md +73 -0
  278. package/localized/zh-CN/skills/fec-doc-sync/SKILL.md +7 -28
  279. package/localized/zh-CN/skills/fec-doc-sync/references/common/doc-sync.md +12 -0
  280. package/localized/zh-CN/skills/fec-image-generation/SKILL.md +7 -71
  281. package/localized/zh-CN/skills/fec-image-generation/references/png-qa-autofix.md +9 -2
  282. package/localized/zh-CN/skills/fec-image-generation/scripts/diagram-layout.mjs +176 -0
  283. package/localized/zh-CN/skills/fec-image-generation/scripts/png-qa.mjs +36 -5
  284. package/localized/zh-CN/skills/fec-react-project-standard/SKILL.md +6 -0
  285. package/localized/zh-CN/skills/fec-react-project-standard/examples/engineering/README.md +7 -0
  286. package/localized/zh-CN/skills/fec-react-project-standard/examples/engineering/package.json +15 -0
  287. package/localized/zh-CN/skills/fec-react-project-standard/examples/engineering/pnpm-lock.yaml +662 -0
  288. package/localized/zh-CN/skills/fec-react-project-standard/examples/engineering/pnpm-workspace.yaml +1 -0
  289. package/localized/zh-CN/skills/fec-react-project-standard/examples/engineering/request-view.mjs +24 -0
  290. package/localized/zh-CN/skills/fec-react-project-standard/examples/engineering/request-view.test.mjs +33 -0
  291. package/localized/zh-CN/skills/fec-react-project-standard/references/common/engineering-practices.md +237 -0
  292. package/localized/zh-CN/skills/fec-react-project-standard/references/common/engineering-practices.rules.json +121 -0
  293. package/localized/zh-CN/skills/fec-react-project-standard/references/common/engineering-practices.sources.json +377 -0
  294. package/localized/zh-CN/skills/fec-react-project-standard/references/engineering-practices.md +73 -0
  295. package/localized/zh-CN/skills/fec-react-project-standard/references/generic-component-types.md +37 -0
  296. package/localized/zh-CN/skills/fec-react-project-standard/references/react-quality-patterns.md +3 -3
  297. package/localized/zh-CN/skills/fec-react-project-standard/references/react-runtime-patterns.md +1 -1
  298. package/localized/zh-CN/skills/fec-refactor-clean/SKILL.md +3 -0
  299. package/localized/zh-CN/skills/fec-refactoring/SKILL.md +25 -0
  300. package/localized/zh-CN/skills/fec-refactoring/references/common/refactoring.md +16 -0
  301. package/localized/zh-CN/skills/fec-refactoring/references/principles.md +13 -0
  302. package/localized/zh-CN/skills/fec-refactoring/references/refactoring-vs-feature-change.md +25 -0
  303. package/localized/zh-CN/skills/fec-refactoring/references/when-to-refactor.md +17 -0
  304. package/localized/zh-CN/skills/fec-refactoring/references/workflow.md +7 -0
  305. package/localized/zh-CN/skills/fec-refactoring-api/SKILL.md +25 -0
  306. package/localized/zh-CN/skills/fec-refactoring-api/references/api-refactorings.md +496 -0
  307. package/localized/zh-CN/skills/fec-refactoring-catalog/SKILL.md +21 -0
  308. package/localized/zh-CN/skills/fec-refactoring-catalog/references/catalog-index.md +99 -0
  309. package/localized/zh-CN/skills/fec-refactoring-catalog/references/composition-guide.md +49 -0
  310. package/localized/zh-CN/skills/fec-refactoring-catalog/references/selection-guide.md +41 -0
  311. package/localized/zh-CN/skills/fec-refactoring-control/SKILL.md +25 -0
  312. package/localized/zh-CN/skills/fec-refactoring-control/references/conditional-refactorings.md +299 -0
  313. package/localized/zh-CN/skills/fec-refactoring-data/SKILL.md +25 -0
  314. package/localized/zh-CN/skills/fec-refactoring-data/references/data-refactorings.md +248 -0
  315. package/localized/zh-CN/skills/fec-refactoring-encapsulation/SKILL.md +25 -0
  316. package/localized/zh-CN/skills/fec-refactoring-encapsulation/references/encapsulation-refactorings.md +452 -0
  317. package/localized/zh-CN/skills/fec-refactoring-functions/SKILL.md +25 -0
  318. package/localized/zh-CN/skills/fec-refactoring-functions/references/function-refactorings.md +567 -0
  319. package/localized/zh-CN/skills/fec-refactoring-inheritance/SKILL.md +25 -0
  320. package/localized/zh-CN/skills/fec-refactoring-inheritance/references/inheritance-refactorings.md +550 -0
  321. package/localized/zh-CN/skills/fec-refactoring-move-features/SKILL.md +25 -0
  322. package/localized/zh-CN/skills/fec-refactoring-move-features/references/moving-refactorings.md +453 -0
  323. package/localized/zh-CN/skills/fec-refactoring-validation/SKILL.md +52 -0
  324. package/localized/zh-CN/skills/fec-refactoring-validation/references/behavior-preservation.md +15 -0
  325. package/localized/zh-CN/skills/fec-refactoring-validation/references/refactoring-test-checklist.md +25 -0
  326. package/localized/zh-CN/skills/fec-security-review/SKILL.md +20 -0
  327. package/localized/zh-CN/skills/fec-security-review/references/common/engineering-practices.md +237 -0
  328. package/localized/zh-CN/skills/fec-security-review/references/common/engineering-practices.rules.json +121 -0
  329. package/localized/zh-CN/skills/fec-security-review/references/common/engineering-practices.sources.json +377 -0
  330. package/localized/zh-CN/skills/fec-security-review/references/engineering-practices.md +73 -0
  331. package/localized/zh-CN/skills/fec-security-review/references/report-template.md +10 -0
  332. package/localized/zh-CN/skills/fec-tdd-workflow/SKILL.md +12 -40
  333. package/localized/zh-CN/skills/fec-tdd-workflow/references/common/tdd.md +13 -0
  334. package/localized/zh-CN/skills/fec-testing-strategy/SKILL.md +4 -0
  335. package/localized/zh-CN/skills/fec-testing-strategy/references/common/engineering-practices.md +237 -0
  336. package/localized/zh-CN/skills/fec-testing-strategy/references/common/engineering-practices.rules.json +121 -0
  337. package/localized/zh-CN/skills/fec-testing-strategy/references/common/engineering-practices.sources.json +377 -0
  338. package/localized/zh-CN/skills/fec-testing-strategy/references/engineering-practices.md +73 -0
  339. package/localized/zh-CN/skills/fec-vue3-project-standard/SKILL.md +4 -0
  340. package/localized/zh-CN/skills/fec-vue3-project-standard/references/common/engineering-practices.md +237 -0
  341. package/localized/zh-CN/skills/fec-vue3-project-standard/references/common/engineering-practices.rules.json +121 -0
  342. package/localized/zh-CN/skills/fec-vue3-project-standard/references/common/engineering-practices.sources.json +377 -0
  343. package/localized/zh-CN/skills/fec-vue3-project-standard/references/engineering-practices.md +73 -0
  344. package/localized/zh-CN/skills/fec-vue3-project-standard/references/vue3-project-structure.md +2 -2
  345. package/localized/zh-CN/skills/metadata.json +2222 -626
  346. package/localized/zh-CN/skills/relations.json +472 -75
  347. package/localized/zh-CN/templates/shared/rules/fec-agent-workflow.md +1 -0
  348. package/localized/zh-CN/templates/shared/rules/fec-source-driven-development.md +3 -29
  349. package/localized/zh-CN/templates/shared/rules/fec-typescript.md +4 -4
  350. package/localized/zh-CN/templates/shared/rules/references/common/source-driven-development.md +19 -0
  351. package/openclaw.plugin.json +2 -3
  352. package/package.json +34 -17
  353. package/skills/cc-c-project-standard/SKILL.md +25 -0
  354. package/skills/cc-c-project-standard/examples/engineering/README.md +7 -0
  355. package/skills/cc-c-project-standard/examples/engineering/boundary.c +26 -0
  356. package/skills/cc-c-project-standard/examples/engineering/boundary.h +15 -0
  357. package/skills/cc-c-project-standard/examples/engineering/boundary_test.c +73 -0
  358. package/skills/cc-c-project-standard/references/common/engineering-practices.md +237 -0
  359. package/skills/cc-c-project-standard/references/common/engineering-practices.rules.json +121 -0
  360. package/skills/cc-c-project-standard/references/common/engineering-practices.sources.json +377 -0
  361. package/skills/cc-c-project-standard/references/engineering-practices.md +106 -0
  362. package/skills/cc-c-project-standard/references/practice.md +37 -0
  363. package/skills/cc-cpp-project-standard/SKILL.md +25 -0
  364. package/skills/cc-cpp-project-standard/examples/engineering/README.md +7 -0
  365. package/skills/cc-cpp-project-standard/examples/engineering/boundary.cpp +26 -0
  366. package/skills/cc-cpp-project-standard/examples/engineering/boundary.hpp +12 -0
  367. package/skills/cc-cpp-project-standard/examples/engineering/boundary_test.cpp +38 -0
  368. package/skills/cc-cpp-project-standard/references/common/engineering-practices.md +237 -0
  369. package/skills/cc-cpp-project-standard/references/common/engineering-practices.rules.json +121 -0
  370. package/skills/cc-cpp-project-standard/references/common/engineering-practices.sources.json +377 -0
  371. package/skills/cc-cpp-project-standard/references/engineering-practices.md +106 -0
  372. package/skills/cc-cpp-project-standard/references/practice.md +37 -0
  373. package/skills/cc-debug-methodology/SKILL.md +8 -0
  374. package/skills/cc-debug-methodology/references/method.md +13 -0
  375. package/skills/cc-doc-sync-core/SKILL.md +8 -0
  376. package/skills/cc-doc-sync-core/references/method.md +12 -0
  377. package/skills/{fec-drawio-studio → cc-drawio-studio}/SKILL.md +5 -5
  378. package/skills/{fec-drawio-studio → cc-drawio-studio}/references/flowchart-quality.md +1 -1
  379. package/skills/{fec-drawio-studio → cc-drawio-studio}/references/layout-and-export.md +9 -9
  380. package/skills/cc-electron-project-standard/SKILL.md +21 -0
  381. package/skills/cc-electron-project-standard/examples/engineering/README.md +7 -0
  382. package/skills/cc-electron-project-standard/examples/engineering/ipc-lifecycle.cjs +44 -0
  383. package/skills/cc-electron-project-standard/examples/engineering/ipc-lifecycle.test.cjs +44 -0
  384. package/skills/cc-electron-project-standard/examples/engineering/package.json +8 -0
  385. package/skills/cc-electron-project-standard/examples/minimal/README.md +9 -0
  386. package/skills/cc-electron-project-standard/examples/minimal/boundary.cjs +19 -0
  387. package/skills/cc-electron-project-standard/examples/minimal/boundary.test.cjs +7 -0
  388. package/skills/cc-electron-project-standard/examples/minimal/index.html +1 -0
  389. package/skills/cc-electron-project-standard/examples/minimal/main.cjs +20 -0
  390. package/skills/cc-electron-project-standard/examples/minimal/package.json +9 -0
  391. package/skills/cc-electron-project-standard/examples/minimal/preload.cjs +2 -0
  392. package/skills/cc-electron-project-standard/examples/minimal/renderer.js +4 -0
  393. package/skills/cc-electron-project-standard/references/common/engineering-practices.md +237 -0
  394. package/skills/cc-electron-project-standard/references/common/engineering-practices.rules.json +121 -0
  395. package/skills/cc-electron-project-standard/references/common/engineering-practices.sources.json +377 -0
  396. package/skills/cc-electron-project-standard/references/engineering-practices.md +73 -0
  397. package/skills/cc-electron-project-standard/references/practice.md +19 -0
  398. package/skills/cc-electron-project-standard/references/verification.md +17 -0
  399. package/skills/cc-go-concurrency/SKILL.md +25 -0
  400. package/skills/cc-go-concurrency/references/common/engineering-practices.md +237 -0
  401. package/skills/cc-go-concurrency/references/common/engineering-practices.rules.json +121 -0
  402. package/skills/cc-go-concurrency/references/common/engineering-practices.sources.json +377 -0
  403. package/skills/cc-go-concurrency/references/engineering-practices.md +73 -0
  404. package/skills/cc-go-concurrency/references/practice.md +37 -0
  405. package/skills/cc-go-project-standard/SKILL.md +25 -0
  406. package/skills/cc-go-project-standard/examples/engineering/README.md +7 -0
  407. package/skills/cc-go-project-standard/examples/engineering/go.mod +3 -0
  408. package/skills/cc-go-project-standard/examples/engineering/lifecycle.go +71 -0
  409. package/skills/cc-go-project-standard/examples/engineering/lifecycle_test.go +22 -0
  410. package/skills/cc-go-project-standard/references/common/engineering-practices.md +237 -0
  411. package/skills/cc-go-project-standard/references/common/engineering-practices.rules.json +121 -0
  412. package/skills/cc-go-project-standard/references/common/engineering-practices.sources.json +377 -0
  413. package/skills/cc-go-project-standard/references/engineering-practices.md +106 -0
  414. package/skills/cc-go-project-standard/references/practice.md +37 -0
  415. package/skills/cc-java-project-standard/SKILL.md +25 -0
  416. package/skills/cc-java-project-standard/examples/engineering/README.md +7 -0
  417. package/skills/cc-java-project-standard/examples/engineering/ResourceBoundary.java +26 -0
  418. package/skills/cc-java-project-standard/examples/engineering/ResourceBoundaryTest.java +41 -0
  419. package/skills/cc-java-project-standard/references/common/engineering-practices.md +237 -0
  420. package/skills/cc-java-project-standard/references/common/engineering-practices.rules.json +121 -0
  421. package/skills/cc-java-project-standard/references/common/engineering-practices.sources.json +377 -0
  422. package/skills/cc-java-project-standard/references/engineering-practices.md +106 -0
  423. package/skills/cc-java-project-standard/references/practice.md +35 -0
  424. package/skills/cc-java-runtime/SKILL.md +25 -0
  425. package/skills/cc-java-runtime/references/common/engineering-practices.md +237 -0
  426. package/skills/cc-java-runtime/references/common/engineering-practices.rules.json +121 -0
  427. package/skills/cc-java-runtime/references/common/engineering-practices.sources.json +377 -0
  428. package/skills/cc-java-runtime/references/engineering-practices.md +73 -0
  429. package/skills/cc-java-runtime/references/practice.md +37 -0
  430. package/skills/cc-native-memory-safety/SKILL.md +25 -0
  431. package/skills/cc-native-memory-safety/references/common/engineering-practices.md +237 -0
  432. package/skills/cc-native-memory-safety/references/common/engineering-practices.rules.json +121 -0
  433. package/skills/cc-native-memory-safety/references/common/engineering-practices.sources.json +377 -0
  434. package/skills/cc-native-memory-safety/references/engineering-practices.md +73 -0
  435. package/skills/cc-native-memory-safety/references/practice.md +37 -0
  436. package/skills/cc-python-async/SKILL.md +25 -0
  437. package/skills/cc-python-async/references/common/engineering-practices.md +237 -0
  438. package/skills/cc-python-async/references/common/engineering-practices.rules.json +121 -0
  439. package/skills/cc-python-async/references/common/engineering-practices.sources.json +377 -0
  440. package/skills/cc-python-async/references/engineering-practices.md +73 -0
  441. package/skills/cc-python-async/references/practice.md +37 -0
  442. package/skills/cc-python-project-standard/SKILL.md +25 -0
  443. package/skills/cc-python-project-standard/examples/engineering/README.md +7 -0
  444. package/skills/cc-python-project-standard/examples/engineering/resource_boundary.py +37 -0
  445. package/skills/cc-python-project-standard/examples/engineering/test_resource_boundary.py +49 -0
  446. package/skills/cc-python-project-standard/references/common/engineering-practices.md +237 -0
  447. package/skills/cc-python-project-standard/references/common/engineering-practices.rules.json +121 -0
  448. package/skills/cc-python-project-standard/references/common/engineering-practices.sources.json +377 -0
  449. package/skills/cc-python-project-standard/references/engineering-practices.md +106 -0
  450. package/skills/cc-python-project-standard/references/practice.md +37 -0
  451. package/skills/cc-refactoring-core/SKILL.md +8 -0
  452. package/skills/cc-refactoring-core/references/method.md +16 -0
  453. package/skills/cc-rust-async/SKILL.md +25 -0
  454. package/skills/cc-rust-async/references/common/engineering-practices.md +237 -0
  455. package/skills/cc-rust-async/references/common/engineering-practices.rules.json +121 -0
  456. package/skills/cc-rust-async/references/common/engineering-practices.sources.json +377 -0
  457. package/skills/cc-rust-async/references/engineering-practices.md +73 -0
  458. package/skills/cc-rust-async/references/practice.md +37 -0
  459. package/skills/cc-rust-project-standard/SKILL.md +25 -0
  460. package/skills/cc-rust-project-standard/examples/engineering/Cargo.lock +7 -0
  461. package/skills/cc-rust-project-standard/examples/engineering/Cargo.toml +8 -0
  462. package/skills/cc-rust-project-standard/examples/engineering/README.md +5 -0
  463. package/skills/cc-rust-project-standard/examples/engineering/src/lib.rs +43 -0
  464. package/skills/cc-rust-project-standard/references/common/engineering-practices.md +237 -0
  465. package/skills/cc-rust-project-standard/references/common/engineering-practices.rules.json +121 -0
  466. package/skills/cc-rust-project-standard/references/common/engineering-practices.sources.json +377 -0
  467. package/skills/cc-rust-project-standard/references/engineering-practices.md +106 -0
  468. package/skills/cc-rust-project-standard/references/practice.md +37 -0
  469. package/skills/cc-source-driven-development/SKILL.md +8 -0
  470. package/skills/cc-source-driven-development/references/method.md +19 -0
  471. package/skills/cc-tauri-project-standard/SKILL.md +21 -0
  472. package/skills/cc-tauri-project-standard/examples/minimal/README.md +9 -0
  473. package/skills/cc-tauri-project-standard/examples/minimal/core/Cargo.lock +5 -0
  474. package/skills/cc-tauri-project-standard/examples/minimal/core/Cargo.toml +9 -0
  475. package/skills/cc-tauri-project-standard/examples/minimal/core/src/lib.rs +46 -0
  476. package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/Cargo.toml +12 -0
  477. package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/build.rs +5 -0
  478. package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/capabilities/main.json +6 -0
  479. package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/permissions/documents.toml +4 -0
  480. package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/src/main.rs +22 -0
  481. package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/tauri.conf.json +13 -0
  482. package/skills/cc-tauri-project-standard/examples/minimal/ui/app.js +5 -0
  483. package/skills/cc-tauri-project-standard/examples/minimal/ui/index.html +1 -0
  484. package/skills/cc-tauri-project-standard/references/common/engineering-practices.md +237 -0
  485. package/skills/cc-tauri-project-standard/references/common/engineering-practices.rules.json +121 -0
  486. package/skills/cc-tauri-project-standard/references/common/engineering-practices.sources.json +377 -0
  487. package/skills/cc-tauri-project-standard/references/engineering-practices.md +73 -0
  488. package/skills/cc-tauri-project-standard/references/practice.md +20 -0
  489. package/skills/cc-tauri-project-standard/references/verification.md +18 -0
  490. package/skills/cc-tdd-methodology/SKILL.md +8 -0
  491. package/skills/cc-tdd-methodology/references/method.md +13 -0
  492. package/skills/cc-technical-diagrams/SKILL.md +34 -0
  493. package/skills/{fec-image-generation → cc-technical-diagrams}/assets/interactive-diagram.html +371 -371
  494. package/skills/cc-technical-diagrams/assets/quality-examples/README.md +14 -0
  495. package/skills/cc-technical-diagrams/assets/quality-examples/architecture.json +121 -0
  496. package/skills/cc-technical-diagrams/assets/quality-examples/invalid-explicit.json +41 -0
  497. package/skills/cc-technical-diagrams/assets/quality-examples/sequence.json +53 -0
  498. package/skills/cc-technical-diagrams/assets/quality-examples/sequence.mmd +21 -0
  499. package/skills/cc-technical-diagrams/assets/quality-examples/workflow.json +98 -0
  500. package/skills/cc-technical-diagrams/assets/quality-examples/workflow.mmd +7 -0
  501. package/skills/{fec-image-generation → cc-technical-diagrams}/references/diagram-workflows.md +12 -5
  502. package/skills/{fec-image-generation → cc-technical-diagrams}/references/html-technical-diagrams.md +14 -7
  503. package/skills/cc-technical-diagrams/references/png-qa-autofix.md +37 -0
  504. package/skills/cc-technical-diagrams/scripts/diagram-browser.mjs +153 -0
  505. package/skills/cc-technical-diagrams/scripts/diagram-layout.mjs +176 -0
  506. package/{localized/zh-CN/skills/fec-image-generation → skills/cc-technical-diagrams}/scripts/export-diagram.mjs +48 -80
  507. package/skills/cc-technical-diagrams/scripts/mermaid-render.mjs +64 -0
  508. package/skills/cc-technical-diagrams/scripts/png-qa.mjs +462 -0
  509. package/skills/{fec-image-generation → cc-technical-diagrams}/scripts/tech-diagram-render.mjs +193 -53
  510. package/skills/{fec-typescript-project-standard → cc-typescript-project-standard}/SKILL.md +10 -4
  511. package/skills/cc-typescript-project-standard/examples/engineering/README.md +9 -0
  512. package/skills/cc-typescript-project-standard/examples/engineering/boundary.test.ts +16 -0
  513. package/skills/cc-typescript-project-standard/examples/engineering/input.ts +12 -0
  514. package/skills/cc-typescript-project-standard/examples/engineering/package.json +12 -0
  515. package/skills/cc-typescript-project-standard/examples/engineering/pnpm-lock.yaml +39 -0
  516. package/skills/cc-typescript-project-standard/examples/engineering/pnpm-workspace.yaml +1 -0
  517. package/skills/cc-typescript-project-standard/examples/engineering/tsconfig.json +8 -0
  518. package/skills/cc-typescript-project-standard/references/common/engineering-practices.md +237 -0
  519. package/skills/cc-typescript-project-standard/references/common/engineering-practices.rules.json +121 -0
  520. package/skills/cc-typescript-project-standard/references/common/engineering-practices.sources.json +377 -0
  521. package/skills/cc-typescript-project-standard/references/engineering-practices.md +106 -0
  522. package/skills/{fec-typescript-project-standard → cc-typescript-project-standard}/references/type-safety-patterns.md +6 -35
  523. package/skills/{fec-typescript-project-standard → cc-typescript-project-standard}/references/type-safety.md +7 -1
  524. package/skills/eval_queries.json +738 -72
  525. package/skills/fec-api-integration/SKILL.md +5 -1
  526. package/skills/fec-api-integration/references/common/engineering-practices.md +237 -0
  527. package/skills/fec-api-integration/references/common/engineering-practices.rules.json +121 -0
  528. package/skills/fec-api-integration/references/common/engineering-practices.sources.json +377 -0
  529. package/skills/fec-api-integration/references/engineering-practices.md +73 -0
  530. package/skills/fec-code-review/SKILL.md +24 -1
  531. package/skills/fec-code-review/references/common/engineering-practices.md +237 -0
  532. package/skills/fec-code-review/references/common/engineering-practices.rules.json +121 -0
  533. package/skills/fec-code-review/references/common/engineering-practices.sources.json +377 -0
  534. package/skills/fec-code-review/references/engineering-practices.md +73 -0
  535. package/skills/fec-code-review/references/report-template.md +11 -1
  536. package/skills/fec-code-smells/SKILL.md +33 -0
  537. package/skills/fec-code-smells/references/detection-guide.md +25 -0
  538. package/skills/fec-code-smells/references/smell-catalog.md +861 -0
  539. package/skills/fec-code-smells/references/smell-to-refactoring-map.md +265 -0
  540. package/skills/fec-data-fetching/SKILL.md +5 -1
  541. package/skills/fec-data-fetching/references/common/engineering-practices.md +237 -0
  542. package/skills/fec-data-fetching/references/common/engineering-practices.rules.json +121 -0
  543. package/skills/fec-data-fetching/references/common/engineering-practices.sources.json +377 -0
  544. package/skills/fec-data-fetching/references/engineering-practices.md +73 -0
  545. package/skills/fec-debug-framework/SKILL.md +2 -51
  546. package/skills/fec-debug-framework/references/common/debug.md +13 -0
  547. package/skills/fec-dependency-upgrade/SKILL.md +4 -0
  548. package/skills/fec-dependency-upgrade/references/common/engineering-practices.md +237 -0
  549. package/skills/fec-dependency-upgrade/references/common/engineering-practices.rules.json +121 -0
  550. package/skills/fec-dependency-upgrade/references/common/engineering-practices.sources.json +377 -0
  551. package/skills/fec-dependency-upgrade/references/engineering-practices.md +73 -0
  552. package/skills/fec-doc-sync/SKILL.md +7 -28
  553. package/skills/fec-doc-sync/references/common/doc-sync.md +12 -0
  554. package/skills/fec-image-generation/SKILL.md +7 -72
  555. package/skills/fec-image-generation/references/png-qa-autofix.md +9 -2
  556. package/skills/fec-image-generation/scripts/diagram-layout.mjs +176 -0
  557. package/skills/fec-image-generation/scripts/png-qa.mjs +36 -5
  558. package/skills/fec-legacy-web-standard/SKILL.md +1 -1
  559. package/skills/fec-react-project-standard/SKILL.md +6 -0
  560. package/skills/fec-react-project-standard/examples/engineering/README.md +7 -0
  561. package/skills/fec-react-project-standard/examples/engineering/package.json +15 -0
  562. package/skills/fec-react-project-standard/examples/engineering/pnpm-lock.yaml +662 -0
  563. package/skills/fec-react-project-standard/examples/engineering/pnpm-workspace.yaml +1 -0
  564. package/skills/fec-react-project-standard/examples/engineering/request-view.mjs +24 -0
  565. package/skills/fec-react-project-standard/examples/engineering/request-view.test.mjs +33 -0
  566. package/skills/fec-react-project-standard/references/common/engineering-practices.md +237 -0
  567. package/skills/fec-react-project-standard/references/common/engineering-practices.rules.json +121 -0
  568. package/skills/fec-react-project-standard/references/common/engineering-practices.sources.json +377 -0
  569. package/skills/fec-react-project-standard/references/engineering-practices.md +73 -0
  570. package/skills/fec-react-project-standard/references/generic-component-types.md +37 -0
  571. package/skills/fec-react-project-standard/references/react-quality-patterns.md +3 -3
  572. package/skills/fec-react-project-standard/references/react-runtime-patterns.md +1 -1
  573. package/skills/fec-refactor-clean/SKILL.md +3 -0
  574. package/skills/fec-refactoring/SKILL.md +25 -0
  575. package/skills/fec-refactoring/references/common/refactoring.md +16 -0
  576. package/skills/fec-refactoring/references/principles.md +13 -0
  577. package/skills/fec-refactoring/references/refactoring-vs-feature-change.md +27 -0
  578. package/skills/fec-refactoring/references/when-to-refactor.md +31 -0
  579. package/skills/fec-refactoring/references/workflow.md +7 -0
  580. package/skills/fec-refactoring-api/SKILL.md +25 -0
  581. package/skills/fec-refactoring-api/references/api-refactorings.md +496 -0
  582. package/skills/fec-refactoring-catalog/SKILL.md +28 -0
  583. package/skills/fec-refactoring-catalog/references/catalog-index.md +99 -0
  584. package/skills/fec-refactoring-catalog/references/composition-guide.md +49 -0
  585. package/skills/fec-refactoring-catalog/references/selection-guide.md +47 -0
  586. package/skills/fec-refactoring-control/SKILL.md +25 -0
  587. package/skills/fec-refactoring-control/references/conditional-refactorings.md +299 -0
  588. package/skills/fec-refactoring-data/SKILL.md +25 -0
  589. package/skills/fec-refactoring-data/references/data-refactorings.md +248 -0
  590. package/skills/fec-refactoring-encapsulation/SKILL.md +25 -0
  591. package/skills/fec-refactoring-encapsulation/references/encapsulation-refactorings.md +452 -0
  592. package/skills/fec-refactoring-functions/SKILL.md +25 -0
  593. package/skills/fec-refactoring-functions/references/function-refactorings.md +567 -0
  594. package/skills/fec-refactoring-inheritance/SKILL.md +25 -0
  595. package/skills/fec-refactoring-inheritance/references/inheritance-refactorings.md +550 -0
  596. package/skills/fec-refactoring-move-features/SKILL.md +25 -0
  597. package/skills/fec-refactoring-move-features/references/moving-refactorings.md +453 -0
  598. package/skills/fec-refactoring-validation/SKILL.md +59 -0
  599. package/skills/fec-refactoring-validation/references/behavior-preservation.md +53 -0
  600. package/skills/fec-refactoring-validation/references/refactoring-test-checklist.md +42 -0
  601. package/skills/fec-security-review/SKILL.md +20 -0
  602. package/skills/fec-security-review/references/common/engineering-practices.md +237 -0
  603. package/skills/fec-security-review/references/common/engineering-practices.rules.json +121 -0
  604. package/skills/fec-security-review/references/common/engineering-practices.sources.json +377 -0
  605. package/skills/fec-security-review/references/engineering-practices.md +73 -0
  606. package/skills/fec-security-review/references/report-template.md +10 -0
  607. package/skills/fec-tdd-workflow/SKILL.md +14 -42
  608. package/skills/fec-tdd-workflow/references/common/tdd.md +13 -0
  609. package/skills/fec-testing-strategy/SKILL.md +4 -0
  610. package/skills/fec-testing-strategy/references/common/engineering-practices.md +237 -0
  611. package/skills/fec-testing-strategy/references/common/engineering-practices.rules.json +121 -0
  612. package/skills/fec-testing-strategy/references/common/engineering-practices.sources.json +377 -0
  613. package/skills/fec-testing-strategy/references/engineering-practices.md +73 -0
  614. package/skills/fec-vue3-project-standard/SKILL.md +4 -0
  615. package/skills/fec-vue3-project-standard/references/common/engineering-practices.md +237 -0
  616. package/skills/fec-vue3-project-standard/references/common/engineering-practices.rules.json +121 -0
  617. package/skills/fec-vue3-project-standard/references/common/engineering-practices.sources.json +377 -0
  618. package/skills/fec-vue3-project-standard/references/engineering-practices.md +73 -0
  619. package/skills/fec-vue3-project-standard/references/vue3-project-structure.md +2 -2
  620. package/skills/metadata.json +2230 -629
  621. package/skills/relations.json +467 -74
  622. package/templates/shared/rules/fec-agent-workflow.md +1 -0
  623. package/templates/shared/rules/fec-source-driven-development.md +3 -29
  624. package/templates/shared/rules/fec-typescript.md +4 -4
  625. package/templates/shared/rules/references/common/source-driven-development.md +19 -0
  626. package/docs/superpowers/plans/2026-05-29-fec-debug.md +0 -491
  627. package/docs/superpowers/specs/2026-05-29-fec-debug-design.md +0 -340
  628. package/localized/zh-CN/skills/fec-source-driven-development/SKILL.md +0 -87
  629. package/skills/fec-source-driven-development/SKILL.md +0 -87
  630. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/data/THIRD_PARTY_NOTICES.md +0 -0
  631. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/data/brand-icons.json +0 -0
  632. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/data/shape-index.json +0 -0
  633. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/references/data-residency.md +0 -0
  634. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/references/diagram-patterns.md +0 -0
  635. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/references/troubleshooting.md +0 -0
  636. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/references/xml-and-mermaid.md +0 -0
  637. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/brand-symbols.mjs +0 -0
  638. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/diagram-lint.mjs +0 -0
  639. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/diagram-url.mjs +0 -0
  640. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/drawio-export.mjs +0 -0
  641. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/layout-graph.mjs +0 -0
  642. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/png-embed-fix.mjs +0 -0
  643. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/scan-go-packages.mjs +0 -0
  644. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/scan-js-modules.mjs +0 -0
  645. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/scan-python-classes.mjs +0 -0
  646. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/scan-python-modules.mjs +0 -0
  647. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/scan-rust-modules.mjs +0 -0
  648. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/scan-ts-modules.mjs +0 -0
  649. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/shape-query.mjs +0 -0
  650. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/studio-core.mjs +0 -0
  651. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/styles/built-in/corporate.json +0 -0
  652. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/styles/built-in/default.json +0 -0
  653. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/styles/built-in/handdrawn.json +0 -0
  654. /package/localized/zh-CN/skills/{fec-drawio-studio → cc-drawio-studio}/styles/schema.json +0 -0
  655. /package/localized/zh-CN/skills/{fec-image-generation → cc-technical-diagrams}/scripts/interactive-diagram-server.mjs +0 -0
  656. /package/skills/{fec-drawio-studio → cc-drawio-studio}/data/THIRD_PARTY_NOTICES.md +0 -0
  657. /package/skills/{fec-drawio-studio → cc-drawio-studio}/data/brand-icons.json +0 -0
  658. /package/skills/{fec-drawio-studio → cc-drawio-studio}/data/shape-index.json +0 -0
  659. /package/skills/{fec-drawio-studio → cc-drawio-studio}/references/data-residency.md +0 -0
  660. /package/skills/{fec-drawio-studio → cc-drawio-studio}/references/diagram-patterns.md +0 -0
  661. /package/skills/{fec-drawio-studio → cc-drawio-studio}/references/troubleshooting.md +0 -0
  662. /package/skills/{fec-drawio-studio → cc-drawio-studio}/references/xml-and-mermaid.md +0 -0
  663. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/brand-symbols.mjs +0 -0
  664. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/diagram-lint.mjs +0 -0
  665. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/diagram-url.mjs +0 -0
  666. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/drawio-export.mjs +0 -0
  667. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/layout-graph.mjs +0 -0
  668. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/png-embed-fix.mjs +0 -0
  669. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/scan-go-packages.mjs +0 -0
  670. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/scan-js-modules.mjs +0 -0
  671. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/scan-python-classes.mjs +0 -0
  672. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/scan-python-modules.mjs +0 -0
  673. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/scan-rust-modules.mjs +0 -0
  674. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/scan-ts-modules.mjs +0 -0
  675. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/shape-query.mjs +0 -0
  676. /package/skills/{fec-drawio-studio → cc-drawio-studio}/scripts/studio-core.mjs +0 -0
  677. /package/skills/{fec-drawio-studio → cc-drawio-studio}/styles/built-in/corporate.json +0 -0
  678. /package/skills/{fec-drawio-studio → cc-drawio-studio}/styles/built-in/default.json +0 -0
  679. /package/skills/{fec-drawio-studio → cc-drawio-studio}/styles/built-in/handdrawn.json +0 -0
  680. /package/skills/{fec-drawio-studio → cc-drawio-studio}/styles/schema.json +0 -0
  681. /package/skills/{fec-image-generation → cc-technical-diagrams}/scripts/interactive-diagram-server.mjs +0 -0
@@ -1,25 +1,23 @@
1
1
  [
2
2
  {
3
- "id": "fec-accessibility-check",
4
- "name": "无障碍检查",
5
- "category": "review-quality",
3
+ "id": "cc-c-project-standard",
4
+ "name": "C 工程规范",
5
+ "category": "project-standard",
6
6
  "tags": [
7
- "a11y",
8
- "wcag",
9
- "accessibility",
10
- "audit"
7
+ "c",
8
+ "project",
9
+ "standard"
11
10
  ],
12
- "summary": "用于审查或改进前端无障碍、语义结构、键盘支持、焦点管理、ARIA 标签、屏幕阅读器行为、WCAG 2.2 问题、触控无障碍或辅助技术回归。",
13
- "version": "2.7.0",
11
+ "summary": "C 工程规范",
12
+ "version": "2.0.0",
14
13
  "license": "MIT",
15
- "homepage": "https://github.com/bovinphang/frontend-craft",
16
- "repository": "https://github.com/bovinphang/frontend-craft",
14
+ "homepage": "https://github.com/bovinphang/craft-common",
15
+ "repository": "https://github.com/bovinphang/craft-common",
17
16
  "keywords": [
18
- "review-quality",
19
- "a11y",
20
- "wcag",
21
- "accessibility",
22
- "audit"
17
+ "project-standard",
18
+ "c",
19
+ "project",
20
+ "standard"
23
21
  ],
24
22
  "platforms": [
25
23
  "skills-cli",
@@ -30,31 +28,32 @@
30
28
  "opencode",
31
29
  "openclaw",
32
30
  "generic-skill-runtime"
33
- ]
31
+ ],
32
+ "applicability": {
33
+ "languages": [
34
+ "c"
35
+ ]
36
+ }
34
37
  },
35
38
  {
36
- "id": "fec-alchemy",
37
- "name": "项目吸收与原创化整合",
38
- "category": "project-evolution",
39
+ "id": "cc-cpp-project-standard",
40
+ "name": "C++ 工程规范",
41
+ "category": "project-standard",
39
42
  "tags": [
40
- "alchemy",
41
- "project-absorption",
42
- "originality",
43
- "reference-analysis",
44
- "workflow"
43
+ "cpp",
44
+ "project",
45
+ "standard"
45
46
  ],
46
- "summary": "用于从参考系统中吸收想法、能力、工作流、架构、质量体系、生态扩展或工程实践,并通过原创的项目内重设计转化为当前项目能力,而不是复制原实现。",
47
- "version": "2.7.0",
47
+ "summary": "C++ 工程规范",
48
+ "version": "2.0.0",
48
49
  "license": "MIT",
49
- "homepage": "https://github.com/bovinphang/frontend-craft",
50
- "repository": "https://github.com/bovinphang/frontend-craft",
50
+ "homepage": "https://github.com/bovinphang/craft-common",
51
+ "repository": "https://github.com/bovinphang/craft-common",
51
52
  "keywords": [
52
- "project-evolution",
53
- "alchemy",
54
- "project-absorption",
55
- "originality",
56
- "reference-analysis",
57
- "workflow"
53
+ "project-standard",
54
+ "cpp",
55
+ "project",
56
+ "standard"
58
57
  ],
59
58
  "platforms": [
60
59
  "skills-cli",
@@ -65,31 +64,32 @@
65
64
  "opencode",
66
65
  "openclaw",
67
66
  "generic-skill-runtime"
68
- ]
67
+ ],
68
+ "applicability": {
69
+ "languages": [
70
+ "cpp"
71
+ ]
72
+ }
69
73
  },
70
74
  {
71
- "id": "fec-api-integration",
72
- "name": "API 集成",
73
- "category": "implementation-capability",
75
+ "id": "cc-debug-methodology",
76
+ "name": "证据驱动诊断",
77
+ "category": "review-quality",
74
78
  "tags": [
75
- "api",
76
- "typed-client",
77
- "auth-refresh",
78
- "upload",
79
- "realtime"
79
+ "debug",
80
+ "evidence",
81
+ "root-cause"
80
82
  ],
81
- "summary": "用于设计、实现或审查前后端 API 集成、类型化 API client、REST/tRPC/OpenAPI 客户端选型、认证刷新、API 错误映射、上传流程、SSE/WebSocket/轮询选择、CORS 相关前端行为或跨边界 loading/error 状态。不要用于纯后端服务架构或仅 TanStack Query 缓存策略。",
82
- "version": "2.7.0",
83
+ "summary": "证据驱动诊断",
84
+ "version": "2.0.0",
83
85
  "license": "MIT",
84
- "homepage": "https://github.com/bovinphang/frontend-craft",
85
- "repository": "https://github.com/bovinphang/frontend-craft",
86
+ "homepage": "https://github.com/bovinphang/craft-common",
87
+ "repository": "https://github.com/bovinphang/craft-common",
86
88
  "keywords": [
87
- "implementation-capability",
88
- "api",
89
- "typed-client",
90
- "auth-refresh",
91
- "upload",
92
- "realtime"
89
+ "review-quality",
90
+ "debug",
91
+ "evidence",
92
+ "root-cause"
93
93
  ],
94
94
  "platforms": [
95
95
  "skills-cli",
@@ -103,28 +103,24 @@
103
103
  ]
104
104
  },
105
105
  {
106
- "id": "fec-backend-requirements-handoff",
107
- "name": "前后端需求交接",
106
+ "id": "cc-doc-sync-core",
107
+ "name": "文档事实同步",
108
108
  "category": "maintenance-docs",
109
109
  "tags": [
110
- "backend-requirements",
111
- "api-collaboration",
112
- "handoff",
113
- "data-needs",
114
- "frontend-backend"
110
+ "documentation",
111
+ "source-of-truth",
112
+ "i18n"
115
113
  ],
116
- "summary": "用于前端工作需要向后端团队说明数据、动作、状态、权限、校验或业务规则需求,但不指定端点设计、字段名、数据库形态或实现细节。",
117
- "version": "2.7.0",
114
+ "summary": "文档事实同步",
115
+ "version": "2.0.0",
118
116
  "license": "MIT",
119
- "homepage": "https://github.com/bovinphang/frontend-craft",
120
- "repository": "https://github.com/bovinphang/frontend-craft",
117
+ "homepage": "https://github.com/bovinphang/craft-common",
118
+ "repository": "https://github.com/bovinphang/craft-common",
121
119
  "keywords": [
122
120
  "maintenance-docs",
123
- "backend-requirements",
124
- "api-collaboration",
125
- "handoff",
126
- "data-needs",
127
- "frontend-backend"
121
+ "documentation",
122
+ "source-of-truth",
123
+ "i18n"
128
124
  ],
129
125
  "platforms": [
130
126
  "skills-cli",
@@ -138,28 +134,26 @@
138
134
  ]
139
135
  },
140
136
  {
141
- "id": "fec-browser-storage",
142
- "name": "浏览器存储",
137
+ "id": "cc-drawio-studio",
138
+ "name": "可编辑技术图",
143
139
  "category": "implementation-capability",
144
140
  "tags": [
145
- "storage",
146
- "localStorage",
147
- "indexedDB",
148
- "cookie",
149
- "client-persistence"
141
+ "drawio",
142
+ "uml",
143
+ "erd",
144
+ "architecture"
150
145
  ],
151
- "summary": "用于选择、实现或审查 localStorage、sessionStorage、IndexedDB、cookie、客户端持久化、离线数据、安全存储或清理策略等浏览器存储方案。",
152
- "version": "2.7.0",
146
+ "summary": "可编辑技术图",
147
+ "version": "2.0.0",
153
148
  "license": "MIT",
154
- "homepage": "https://github.com/bovinphang/frontend-craft",
155
- "repository": "https://github.com/bovinphang/frontend-craft",
149
+ "homepage": "https://github.com/bovinphang/craft-common",
150
+ "repository": "https://github.com/bovinphang/craft-common",
156
151
  "keywords": [
157
152
  "implementation-capability",
158
- "storage",
159
- "localStorage",
160
- "indexedDB",
161
- "cookie",
162
- "client-persistence"
153
+ "drawio",
154
+ "uml",
155
+ "erd",
156
+ "architecture"
163
157
  ],
164
158
  "platforms": [
165
159
  "skills-cli",
@@ -173,30 +167,24 @@
173
167
  ]
174
168
  },
175
169
  {
176
- "id": "fec-canvas-threejs",
177
- "name": "Canvas 与 Three.js",
178
- "category": "implementation-capability",
170
+ "id": "cc-electron-project-standard",
171
+ "name": "Electron 应用工程",
172
+ "category": "project-standard",
179
173
  "tags": [
180
- "canvas",
181
- "webgl",
182
- "three.js",
183
- "3d",
184
- "visualization",
185
- "r3f"
174
+ "electron",
175
+ "desktop",
176
+ "ipc"
186
177
  ],
187
- "summary": "用于构建或审查 Canvas 2D、Three.js/WebGL、React Three Fiber、GLSL shader、ShaderToy 到 WebGL 适配、2D/3D 可视化、游戏渲染、动画循环、GPU 资源清理或渲染性能。不要用于标准 DOM UI、已有图表库覆盖的图表或非图形类性能工作。",
188
- "version": "2.7.0",
178
+ "summary": "Electron 应用工程",
179
+ "version": "2.0.0",
189
180
  "license": "MIT",
190
- "homepage": "https://github.com/bovinphang/frontend-craft",
191
- "repository": "https://github.com/bovinphang/frontend-craft",
181
+ "homepage": "https://github.com/bovinphang/craft-common",
182
+ "repository": "https://github.com/bovinphang/craft-common",
192
183
  "keywords": [
193
- "implementation-capability",
194
- "canvas",
195
- "webgl",
196
- "three.js",
197
- "3d",
198
- "visualization",
199
- "r3f"
184
+ "project-standard",
185
+ "electron",
186
+ "desktop",
187
+ "ipc"
200
188
  ],
201
189
  "platforms": [
202
190
  "skills-cli",
@@ -207,29 +195,44 @@
207
195
  "opencode",
208
196
  "openclaw",
209
197
  "generic-skill-runtime"
210
- ]
198
+ ],
199
+ "applicability": {
200
+ "languages": [
201
+ "javascript",
202
+ "typescript"
203
+ ],
204
+ "frameworks": [
205
+ "electron"
206
+ ],
207
+ "roles": [
208
+ "ui",
209
+ "desktop-core"
210
+ ],
211
+ "taskKinds": [
212
+ "ipc",
213
+ "build",
214
+ "review",
215
+ "native-memory"
216
+ ]
217
+ }
211
218
  },
212
219
  {
213
- "id": "fec-code-review",
214
- "name": "前端代码评审",
215
- "category": "review-quality",
220
+ "id": "cc-go-concurrency",
221
+ "name": "Go 并发生命周期",
222
+ "category": "implementation-capability",
216
223
  "tags": [
217
- "code-review",
218
- "architecture",
219
- "quality",
220
- "best-practices"
224
+ "go",
225
+ "concurrency"
221
226
  ],
222
- "summary": "用于用户要求通用前端代码评审、PR 评审、合并就绪评估、架构可维护性、类型安全、渲染/状态风险、样式一致性、可测性缺口或横向评审总结时。深度安全、无障碍、E2E 或性能问题应委托对应专项 skill。",
223
- "version": "2.7.0",
227
+ "summary": "Go 并发生命周期",
228
+ "version": "2.0.0",
224
229
  "license": "MIT",
225
- "homepage": "https://github.com/bovinphang/frontend-craft",
226
- "repository": "https://github.com/bovinphang/frontend-craft",
230
+ "homepage": "https://github.com/bovinphang/craft-common",
231
+ "repository": "https://github.com/bovinphang/craft-common",
227
232
  "keywords": [
228
- "review-quality",
229
- "code-review",
230
- "architecture",
231
- "quality",
232
- "best-practices"
233
+ "implementation-capability",
234
+ "go",
235
+ "concurrency"
233
236
  ],
234
237
  "platforms": [
235
238
  "skills-cli",
@@ -240,31 +243,32 @@
240
243
  "opencode",
241
244
  "openclaw",
242
245
  "generic-skill-runtime"
243
- ]
246
+ ],
247
+ "applicability": {
248
+ "languages": [
249
+ "go"
250
+ ]
251
+ }
244
252
  },
245
253
  {
246
- "id": "fec-component-testing",
247
- "name": "组件测试",
248
- "category": "testing",
254
+ "id": "cc-go-project-standard",
255
+ "name": "Go 工程规范",
256
+ "category": "project-standard",
249
257
  "tags": [
250
- "rtl",
251
- "vue-test-utils",
252
- "component-test",
253
- "user-event",
254
- "regression"
258
+ "go",
259
+ "project",
260
+ "standard"
255
261
  ],
256
- "summary": "用于编写或审查靠近 UI 代码的前端单元、组件或轻量集成测试,包括 React Testing Library、Vue Test Utils、hooks/composables、props/emits、回调、可访问查询、user-event 交互、mock、loading/error/empty 状态和回归覆盖。若是测试分层规划、真实浏览器旅程或现有验证失败,优先选择对应测试或验证工作流。",
257
- "version": "2.7.0",
262
+ "summary": "Go 工程规范",
263
+ "version": "2.0.0",
258
264
  "license": "MIT",
259
- "homepage": "https://github.com/bovinphang/frontend-craft",
260
- "repository": "https://github.com/bovinphang/frontend-craft",
265
+ "homepage": "https://github.com/bovinphang/craft-common",
266
+ "repository": "https://github.com/bovinphang/craft-common",
261
267
  "keywords": [
262
- "testing",
263
- "rtl",
264
- "vue-test-utils",
265
- "component-test",
266
- "user-event",
267
- "regression"
268
+ "project-standard",
269
+ "go",
270
+ "project",
271
+ "standard"
268
272
  ],
269
273
  "platforms": [
270
274
  "skills-cli",
@@ -275,31 +279,32 @@
275
279
  "opencode",
276
280
  "openclaw",
277
281
  "generic-skill-runtime"
278
- ]
282
+ ],
283
+ "applicability": {
284
+ "languages": [
285
+ "go"
286
+ ]
287
+ }
279
288
  },
280
289
  {
281
- "id": "fec-data-fetching",
282
- "name": "Server State 数据获取",
283
- "category": "implementation-capability",
290
+ "id": "cc-java-project-standard",
291
+ "name": "Java 工程规范",
292
+ "category": "project-standard",
284
293
  "tags": [
285
- "react-query",
286
- "tanstack",
287
- "caching",
288
- "optimistic-update",
289
- "server-state"
294
+ "java",
295
+ "project",
296
+ "standard"
290
297
  ],
291
- "summary": "用于实现或审查前端服务端状态流程:类型化查询、请求缓存、失效、mutation、乐观更新、无限查询、预取、SSR hydration 或 API 层整合。不要用于本地 UI 状态或 Service Worker 缓存。",
292
- "version": "2.7.0",
298
+ "summary": "Java 工程规范",
299
+ "version": "2.0.0",
293
300
  "license": "MIT",
294
- "homepage": "https://github.com/bovinphang/frontend-craft",
295
- "repository": "https://github.com/bovinphang/frontend-craft",
301
+ "homepage": "https://github.com/bovinphang/craft-common",
302
+ "repository": "https://github.com/bovinphang/craft-common",
296
303
  "keywords": [
297
- "implementation-capability",
298
- "react-query",
299
- "tanstack",
300
- "caching",
301
- "optimistic-update",
302
- "server-state"
304
+ "project-standard",
305
+ "java",
306
+ "project",
307
+ "standard"
303
308
  ],
304
309
  "platforms": [
305
310
  "skills-cli",
@@ -310,31 +315,30 @@
310
315
  "opencode",
311
316
  "openclaw",
312
317
  "generic-skill-runtime"
313
- ]
318
+ ],
319
+ "applicability": {
320
+ "languages": [
321
+ "java"
322
+ ]
323
+ }
314
324
  },
315
325
  {
316
- "id": "fec-debug-framework",
317
- "name": "前端调试框架",
318
- "category": "review-quality",
326
+ "id": "cc-java-runtime",
327
+ "name": "Java 运行时诊断",
328
+ "category": "implementation-capability",
319
329
  "tags": [
320
- "debug",
321
- "diagnostic",
322
- "build-error",
323
- "runtime-error",
324
- "troubleshooting"
330
+ "java",
331
+ "runtime"
325
332
  ],
326
- "summary": "用于诊断前端构建失败、运行时错误、UI 异常、API/数据问题、白屏、请求失败或难以解释的线上异常。",
327
- "version": "2.7.0",
333
+ "summary": "Java 运行时诊断",
334
+ "version": "2.0.0",
328
335
  "license": "MIT",
329
- "homepage": "https://github.com/bovinphang/frontend-craft",
330
- "repository": "https://github.com/bovinphang/frontend-craft",
336
+ "homepage": "https://github.com/bovinphang/craft-common",
337
+ "repository": "https://github.com/bovinphang/craft-common",
331
338
  "keywords": [
332
- "review-quality",
333
- "debug",
334
- "diagnostic",
335
- "build-error",
336
- "runtime-error",
337
- "troubleshooting"
339
+ "implementation-capability",
340
+ "java",
341
+ "runtime"
338
342
  ],
339
343
  "platforms": [
340
344
  "skills-cli",
@@ -345,31 +349,32 @@
345
349
  "opencode",
346
350
  "openclaw",
347
351
  "generic-skill-runtime"
348
- ]
352
+ ],
353
+ "applicability": {
354
+ "languages": [
355
+ "java"
356
+ ]
357
+ }
349
358
  },
350
359
  {
351
- "id": "fec-dependency-upgrade",
352
- "name": "依赖升级",
353
- "category": "review-quality",
360
+ "id": "cc-native-memory-safety",
361
+ "name": "原生内存与 FFI 安全",
362
+ "category": "implementation-capability",
354
363
  "tags": [
355
- "dependency-upgrade",
356
- "lockfile",
357
- "cve",
358
- "migration",
359
- "peer-dependency"
364
+ "native",
365
+ "memory",
366
+ "safety"
360
367
  ],
361
- "summary": "用于规划、实现或审查前端依赖升级、包迁移、lockfile 变更、框架大版本升级、CVE 修复、peer dependency 冲突、ESM/CJS 切换、构建工具兼容性或 CI 验证矩阵。",
362
- "version": "2.7.0",
368
+ "summary": "原生内存与 FFI 安全",
369
+ "version": "2.0.0",
363
370
  "license": "MIT",
364
- "homepage": "https://github.com/bovinphang/frontend-craft",
365
- "repository": "https://github.com/bovinphang/frontend-craft",
371
+ "homepage": "https://github.com/bovinphang/craft-common",
372
+ "repository": "https://github.com/bovinphang/craft-common",
366
373
  "keywords": [
367
- "review-quality",
368
- "dependency-upgrade",
369
- "lockfile",
370
- "cve",
371
- "migration",
372
- "peer-dependency"
374
+ "implementation-capability",
375
+ "native",
376
+ "memory",
377
+ "safety"
373
378
  ],
374
379
  "platforms": [
375
380
  "skills-cli",
@@ -380,41 +385,37 @@
380
385
  "opencode",
381
386
  "openclaw",
382
387
  "generic-skill-runtime"
383
- ]
388
+ ],
389
+ "applicability": {
390
+ "languages": [
391
+ "c",
392
+ "cpp",
393
+ "rust"
394
+ ],
395
+ "taskKinds": [
396
+ "native-memory",
397
+ "ipc",
398
+ "review"
399
+ ]
400
+ }
384
401
  },
385
402
  {
386
- "id": "fec-drawio-studio",
387
- "name": "draw.io 图表工作室",
388
- "category": "design-ui",
403
+ "id": "cc-python-async",
404
+ "name": "Python 异步生命周期",
405
+ "category": "implementation-capability",
389
406
  "tags": [
390
- "drawio",
391
- "diagrams.net",
392
- "diagram",
393
- "architecture-diagram",
394
- "uml",
395
- "erd",
396
- "autolayout",
397
- "shape-search"
407
+ "python",
408
+ "async"
398
409
  ],
399
- "summary": "用于创建带 draw.io / diagrams.net 源文件的可编辑技术图,包括架构图、ERD、UML、序列图、流程图、ML 模型图、官方形状检索、品牌符号、Graphviz 自动布局、代码结构图、.drawio 校验或 draw.io CLI 导出兜底。不要用于普通位图生成、手绘草图、交互式 Canvas/Three.js 场景或装饰性 SVG 动画。",
400
- "version": "2.7.0",
410
+ "summary": "Python 异步生命周期",
411
+ "version": "2.0.0",
401
412
  "license": "MIT",
402
- "homepage": "https://github.com/bovinphang/frontend-craft",
403
- "repository": "https://github.com/bovinphang/frontend-craft",
413
+ "homepage": "https://github.com/bovinphang/craft-common",
414
+ "repository": "https://github.com/bovinphang/craft-common",
404
415
  "keywords": [
405
- "design-ui",
406
- "drawio",
407
- "diagrams.net",
408
- "diagram",
409
- "architecture-diagram",
410
- "uml",
411
- "erd",
412
- "autolayout",
413
- "shape-search",
414
- "editable-diagram",
415
- "sequence-diagram",
416
- "flowchart",
417
- "code-structure-map"
416
+ "implementation-capability",
417
+ "python",
418
+ "async"
418
419
  ],
419
420
  "platforms": [
420
421
  "skills-cli",
@@ -425,27 +426,902 @@
425
426
  "opencode",
426
427
  "openclaw",
427
428
  "generic-skill-runtime"
428
- ]
429
+ ],
430
+ "applicability": {
431
+ "languages": [
432
+ "python"
433
+ ]
434
+ }
429
435
  },
430
436
  {
431
- "id": "fec-doc-sync",
432
- "name": "文档同步",
433
- "category": "maintenance-docs",
437
+ "id": "cc-python-project-standard",
438
+ "name": "Python 工程规范",
439
+ "category": "project-standard",
434
440
  "tags": [
435
- "docs",
436
- "readme",
437
- "env",
438
- "api",
439
- "sync",
440
- "deploy-docs"
441
+ "python",
442
+ "project",
443
+ "standard"
441
444
  ],
442
- "summary": "用于根据 package.json、lockfile、配置、env 示例、路由、API client 或 server routes、schema、组件、测试、CI、构建/部署配置、ADR、changelog 或迁移说明等事实源同步前端项目文档。不要用于单纯润色普通文案。",
443
- "version": "2.7.0",
445
+ "summary": "Python 工程规范",
446
+ "version": "2.0.0",
444
447
  "license": "MIT",
445
- "homepage": "https://github.com/bovinphang/frontend-craft",
446
- "repository": "https://github.com/bovinphang/frontend-craft",
448
+ "homepage": "https://github.com/bovinphang/craft-common",
449
+ "repository": "https://github.com/bovinphang/craft-common",
447
450
  "keywords": [
448
- "maintenance-docs",
451
+ "project-standard",
452
+ "python",
453
+ "project",
454
+ "standard"
455
+ ],
456
+ "platforms": [
457
+ "skills-cli",
458
+ "skillreg",
459
+ "claude-code",
460
+ "codex",
461
+ "cursor",
462
+ "opencode",
463
+ "openclaw",
464
+ "generic-skill-runtime"
465
+ ],
466
+ "applicability": {
467
+ "languages": [
468
+ "python"
469
+ ]
470
+ }
471
+ },
472
+ {
473
+ "id": "cc-refactoring-core",
474
+ "name": "保持行为的重构",
475
+ "category": "project-evolution",
476
+ "tags": [
477
+ "refactoring",
478
+ "behavior-preservation",
479
+ "baseline"
480
+ ],
481
+ "summary": "保持行为的重构",
482
+ "version": "2.0.0",
483
+ "license": "MIT",
484
+ "homepage": "https://github.com/bovinphang/craft-common",
485
+ "repository": "https://github.com/bovinphang/craft-common",
486
+ "keywords": [
487
+ "project-evolution",
488
+ "refactoring",
489
+ "behavior-preservation",
490
+ "baseline"
491
+ ],
492
+ "platforms": [
493
+ "skills-cli",
494
+ "skillreg",
495
+ "claude-code",
496
+ "codex",
497
+ "cursor",
498
+ "opencode",
499
+ "openclaw",
500
+ "generic-skill-runtime"
501
+ ]
502
+ },
503
+ {
504
+ "id": "cc-rust-async",
505
+ "name": "Rust 异步生命周期",
506
+ "category": "implementation-capability",
507
+ "tags": [
508
+ "rust",
509
+ "async"
510
+ ],
511
+ "summary": "Rust 异步生命周期",
512
+ "version": "2.0.0",
513
+ "license": "MIT",
514
+ "homepage": "https://github.com/bovinphang/craft-common",
515
+ "repository": "https://github.com/bovinphang/craft-common",
516
+ "keywords": [
517
+ "implementation-capability",
518
+ "rust",
519
+ "async"
520
+ ],
521
+ "platforms": [
522
+ "skills-cli",
523
+ "skillreg",
524
+ "claude-code",
525
+ "codex",
526
+ "cursor",
527
+ "opencode",
528
+ "openclaw",
529
+ "generic-skill-runtime"
530
+ ],
531
+ "applicability": {
532
+ "languages": [
533
+ "rust"
534
+ ]
535
+ }
536
+ },
537
+ {
538
+ "id": "cc-rust-project-standard",
539
+ "name": "Rust 工程规范",
540
+ "category": "project-standard",
541
+ "tags": [
542
+ "rust",
543
+ "project",
544
+ "standard"
545
+ ],
546
+ "summary": "Rust 工程规范",
547
+ "version": "2.0.0",
548
+ "license": "MIT",
549
+ "homepage": "https://github.com/bovinphang/craft-common",
550
+ "repository": "https://github.com/bovinphang/craft-common",
551
+ "keywords": [
552
+ "project-standard",
553
+ "rust",
554
+ "project",
555
+ "standard"
556
+ ],
557
+ "platforms": [
558
+ "skills-cli",
559
+ "skillreg",
560
+ "claude-code",
561
+ "codex",
562
+ "cursor",
563
+ "opencode",
564
+ "openclaw",
565
+ "generic-skill-runtime"
566
+ ],
567
+ "applicability": {
568
+ "languages": [
569
+ "rust"
570
+ ]
571
+ }
572
+ },
573
+ {
574
+ "id": "cc-source-driven-development",
575
+ "name": "以事实来源驱动开发",
576
+ "category": "project-standard",
577
+ "tags": [
578
+ "official-docs",
579
+ "versioning",
580
+ "local-knowledge"
581
+ ],
582
+ "summary": "以事实来源驱动开发",
583
+ "version": "2.0.0",
584
+ "license": "MIT",
585
+ "homepage": "https://github.com/bovinphang/craft-common",
586
+ "repository": "https://github.com/bovinphang/craft-common",
587
+ "keywords": [
588
+ "project-standard",
589
+ "official-docs",
590
+ "versioning",
591
+ "local-knowledge"
592
+ ],
593
+ "platforms": [
594
+ "skills-cli",
595
+ "skillreg",
596
+ "claude-code",
597
+ "codex",
598
+ "cursor",
599
+ "opencode",
600
+ "openclaw",
601
+ "generic-skill-runtime"
602
+ ]
603
+ },
604
+ {
605
+ "id": "cc-tauri-project-standard",
606
+ "name": "Tauri 应用工程",
607
+ "category": "project-standard",
608
+ "tags": [
609
+ "tauri",
610
+ "desktop",
611
+ "ipc"
612
+ ],
613
+ "summary": "Tauri 应用工程",
614
+ "version": "2.0.0",
615
+ "license": "MIT",
616
+ "homepage": "https://github.com/bovinphang/craft-common",
617
+ "repository": "https://github.com/bovinphang/craft-common",
618
+ "keywords": [
619
+ "project-standard",
620
+ "tauri",
621
+ "desktop",
622
+ "ipc"
623
+ ],
624
+ "platforms": [
625
+ "skills-cli",
626
+ "skillreg",
627
+ "claude-code",
628
+ "codex",
629
+ "cursor",
630
+ "opencode",
631
+ "openclaw",
632
+ "generic-skill-runtime"
633
+ ],
634
+ "applicability": {
635
+ "languages": [
636
+ "rust",
637
+ "typescript",
638
+ "javascript"
639
+ ],
640
+ "frameworks": [
641
+ "tauri"
642
+ ],
643
+ "roles": [
644
+ "ui",
645
+ "desktop-core"
646
+ ],
647
+ "taskKinds": [
648
+ "ipc",
649
+ "build",
650
+ "review",
651
+ "native-memory"
652
+ ]
653
+ }
654
+ },
655
+ {
656
+ "id": "cc-tdd-methodology",
657
+ "name": "测试驱动开发",
658
+ "category": "testing",
659
+ "tags": [
660
+ "tdd",
661
+ "regression",
662
+ "red-green-refactor"
663
+ ],
664
+ "summary": "测试驱动开发",
665
+ "version": "2.0.0",
666
+ "license": "MIT",
667
+ "homepage": "https://github.com/bovinphang/craft-common",
668
+ "repository": "https://github.com/bovinphang/craft-common",
669
+ "keywords": [
670
+ "testing",
671
+ "tdd",
672
+ "regression",
673
+ "red-green-refactor"
674
+ ],
675
+ "platforms": [
676
+ "skills-cli",
677
+ "skillreg",
678
+ "claude-code",
679
+ "codex",
680
+ "cursor",
681
+ "opencode",
682
+ "openclaw",
683
+ "generic-skill-runtime"
684
+ ]
685
+ },
686
+ {
687
+ "id": "cc-technical-diagrams",
688
+ "name": "结构化技术图表",
689
+ "category": "implementation-capability",
690
+ "tags": [
691
+ "architecture",
692
+ "sequence",
693
+ "workflow",
694
+ "png-qa"
695
+ ],
696
+ "summary": "结构化技术图表",
697
+ "version": "2.0.0",
698
+ "license": "MIT",
699
+ "homepage": "https://github.com/bovinphang/craft-common",
700
+ "repository": "https://github.com/bovinphang/craft-common",
701
+ "keywords": [
702
+ "implementation-capability",
703
+ "architecture",
704
+ "sequence",
705
+ "workflow",
706
+ "png-qa"
707
+ ],
708
+ "platforms": [
709
+ "skills-cli",
710
+ "skillreg",
711
+ "claude-code",
712
+ "codex",
713
+ "cursor",
714
+ "opencode",
715
+ "openclaw",
716
+ "generic-skill-runtime"
717
+ ]
718
+ },
719
+ {
720
+ "id": "cc-typescript-project-standard",
721
+ "name": "TypeScript 项目规范",
722
+ "category": "project-standard",
723
+ "tags": [
724
+ "typescript",
725
+ "project-standard",
726
+ "type-safety",
727
+ "tsconfig",
728
+ "declarations"
729
+ ],
730
+ "summary": "用于创建、配置、审查或调试前端应用、库、SDK、CLI、monorepo 包中的 TypeScript 项目规范,包括 tsconfig、strictness、module/moduleResolution、路径别名、project references、声明文件、package exports、公共 API 类型、DTO、高级泛型、判别联合、类型守卫、类型收窄或类型级回归。React/Vue/Next/Nuxt 组件架构优先使用框架项目 skill。",
731
+ "version": "2.0.0",
732
+ "license": "MIT",
733
+ "homepage": "https://github.com/bovinphang/craft-common",
734
+ "repository": "https://github.com/bovinphang/craft-common",
735
+ "keywords": [
736
+ "project-standard",
737
+ "typescript",
738
+ "type-safety",
739
+ "tsconfig",
740
+ "declarations",
741
+ "generics",
742
+ "dto"
743
+ ],
744
+ "platforms": [
745
+ "skills-cli",
746
+ "skillreg",
747
+ "claude-code",
748
+ "codex",
749
+ "cursor",
750
+ "opencode",
751
+ "openclaw",
752
+ "generic-skill-runtime"
753
+ ],
754
+ "applicability": {
755
+ "languages": [
756
+ "typescript",
757
+ "javascript"
758
+ ]
759
+ }
760
+ },
761
+ {
762
+ "id": "fec-accessibility-check",
763
+ "name": "无障碍检查",
764
+ "category": "review-quality",
765
+ "tags": [
766
+ "a11y",
767
+ "wcag",
768
+ "accessibility",
769
+ "audit"
770
+ ],
771
+ "summary": "用于审查或改进前端无障碍、语义结构、键盘支持、焦点管理、ARIA 标签、屏幕阅读器行为、WCAG 2.2 问题、触控无障碍或辅助技术回归。",
772
+ "version": "3.0.0",
773
+ "license": "MIT",
774
+ "homepage": "https://github.com/bovinphang/frontend-craft",
775
+ "repository": "https://github.com/bovinphang/frontend-craft",
776
+ "keywords": [
777
+ "review-quality",
778
+ "a11y",
779
+ "wcag",
780
+ "accessibility",
781
+ "audit"
782
+ ],
783
+ "platforms": [
784
+ "skills-cli",
785
+ "skillreg",
786
+ "claude-code",
787
+ "codex",
788
+ "cursor",
789
+ "opencode",
790
+ "openclaw",
791
+ "generic-skill-runtime"
792
+ ],
793
+ "applicability": {
794
+ "roles": [
795
+ "ui"
796
+ ],
797
+ "taskKinds": [
798
+ "ui",
799
+ "ipc",
800
+ "build",
801
+ "review"
802
+ ]
803
+ }
804
+ },
805
+ {
806
+ "id": "fec-alchemy",
807
+ "name": "项目吸收与原创化整合",
808
+ "category": "project-evolution",
809
+ "tags": [
810
+ "alchemy",
811
+ "project-absorption",
812
+ "originality",
813
+ "reference-analysis",
814
+ "workflow"
815
+ ],
816
+ "summary": "用于从参考系统中吸收想法、能力、工作流、架构、质量体系、生态扩展或工程实践,并通过原创的项目内重设计转化为当前项目能力,而不是复制原实现。",
817
+ "version": "3.0.0",
818
+ "license": "MIT",
819
+ "homepage": "https://github.com/bovinphang/frontend-craft",
820
+ "repository": "https://github.com/bovinphang/frontend-craft",
821
+ "keywords": [
822
+ "project-evolution",
823
+ "alchemy",
824
+ "project-absorption",
825
+ "originality",
826
+ "reference-analysis",
827
+ "workflow"
828
+ ],
829
+ "platforms": [
830
+ "skills-cli",
831
+ "skillreg",
832
+ "claude-code",
833
+ "codex",
834
+ "cursor",
835
+ "opencode",
836
+ "openclaw",
837
+ "generic-skill-runtime"
838
+ ],
839
+ "applicability": {
840
+ "roles": [
841
+ "ui"
842
+ ],
843
+ "taskKinds": [
844
+ "ui",
845
+ "ipc",
846
+ "build",
847
+ "review"
848
+ ]
849
+ }
850
+ },
851
+ {
852
+ "id": "fec-api-integration",
853
+ "name": "API 集成",
854
+ "category": "implementation-capability",
855
+ "tags": [
856
+ "api",
857
+ "typed-client",
858
+ "auth-refresh",
859
+ "upload",
860
+ "realtime"
861
+ ],
862
+ "summary": "用于设计、实现或审查前后端 API 集成、类型化 API client、REST/tRPC/OpenAPI 客户端选型、认证刷新、API 错误映射、上传流程、SSE/WebSocket/轮询选择、CORS 相关前端行为或跨边界 loading/error 状态。不要用于纯后端服务架构或仅 TanStack Query 缓存策略。",
863
+ "version": "3.0.0",
864
+ "license": "MIT",
865
+ "homepage": "https://github.com/bovinphang/frontend-craft",
866
+ "repository": "https://github.com/bovinphang/frontend-craft",
867
+ "keywords": [
868
+ "implementation-capability",
869
+ "api",
870
+ "typed-client",
871
+ "auth-refresh",
872
+ "upload",
873
+ "realtime"
874
+ ],
875
+ "platforms": [
876
+ "skills-cli",
877
+ "skillreg",
878
+ "claude-code",
879
+ "codex",
880
+ "cursor",
881
+ "opencode",
882
+ "openclaw",
883
+ "generic-skill-runtime"
884
+ ],
885
+ "applicability": {
886
+ "roles": [
887
+ "ui"
888
+ ],
889
+ "taskKinds": [
890
+ "ui",
891
+ "ipc",
892
+ "build",
893
+ "review"
894
+ ]
895
+ }
896
+ },
897
+ {
898
+ "id": "fec-backend-requirements-handoff",
899
+ "name": "前后端需求交接",
900
+ "category": "maintenance-docs",
901
+ "tags": [
902
+ "backend-requirements",
903
+ "api-collaboration",
904
+ "handoff",
905
+ "data-needs",
906
+ "frontend-backend"
907
+ ],
908
+ "summary": "用于前端工作需要向后端团队说明数据、动作、状态、权限、校验或业务规则需求,但不指定端点设计、字段名、数据库形态或实现细节。",
909
+ "version": "3.0.0",
910
+ "license": "MIT",
911
+ "homepage": "https://github.com/bovinphang/frontend-craft",
912
+ "repository": "https://github.com/bovinphang/frontend-craft",
913
+ "keywords": [
914
+ "maintenance-docs",
915
+ "backend-requirements",
916
+ "api-collaboration",
917
+ "handoff",
918
+ "data-needs",
919
+ "frontend-backend"
920
+ ],
921
+ "platforms": [
922
+ "skills-cli",
923
+ "skillreg",
924
+ "claude-code",
925
+ "codex",
926
+ "cursor",
927
+ "opencode",
928
+ "openclaw",
929
+ "generic-skill-runtime"
930
+ ],
931
+ "applicability": {
932
+ "roles": [
933
+ "ui"
934
+ ],
935
+ "taskKinds": [
936
+ "ui",
937
+ "ipc",
938
+ "build",
939
+ "review"
940
+ ]
941
+ }
942
+ },
943
+ {
944
+ "id": "fec-browser-storage",
945
+ "name": "浏览器存储",
946
+ "category": "implementation-capability",
947
+ "tags": [
948
+ "storage",
949
+ "localStorage",
950
+ "indexedDB",
951
+ "cookie",
952
+ "client-persistence"
953
+ ],
954
+ "summary": "用于选择、实现或审查 localStorage、sessionStorage、IndexedDB、cookie、客户端持久化、离线数据、安全存储或清理策略等浏览器存储方案。",
955
+ "version": "3.0.0",
956
+ "license": "MIT",
957
+ "homepage": "https://github.com/bovinphang/frontend-craft",
958
+ "repository": "https://github.com/bovinphang/frontend-craft",
959
+ "keywords": [
960
+ "implementation-capability",
961
+ "storage",
962
+ "localStorage",
963
+ "indexedDB",
964
+ "cookie",
965
+ "client-persistence"
966
+ ],
967
+ "platforms": [
968
+ "skills-cli",
969
+ "skillreg",
970
+ "claude-code",
971
+ "codex",
972
+ "cursor",
973
+ "opencode",
974
+ "openclaw",
975
+ "generic-skill-runtime"
976
+ ],
977
+ "applicability": {
978
+ "roles": [
979
+ "ui"
980
+ ],
981
+ "taskKinds": [
982
+ "ui",
983
+ "ipc",
984
+ "build",
985
+ "review"
986
+ ]
987
+ }
988
+ },
989
+ {
990
+ "id": "fec-canvas-threejs",
991
+ "name": "Canvas 与 Three.js",
992
+ "category": "implementation-capability",
993
+ "tags": [
994
+ "canvas",
995
+ "webgl",
996
+ "three.js",
997
+ "3d",
998
+ "visualization",
999
+ "r3f"
1000
+ ],
1001
+ "summary": "用于构建或审查 Canvas 2D、Three.js/WebGL、React Three Fiber、GLSL shader、ShaderToy 到 WebGL 适配、2D/3D 可视化、游戏渲染、动画循环、GPU 资源清理或渲染性能。不要用于标准 DOM UI、已有图表库覆盖的图表或非图形类性能工作。",
1002
+ "version": "3.0.0",
1003
+ "license": "MIT",
1004
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1005
+ "repository": "https://github.com/bovinphang/frontend-craft",
1006
+ "keywords": [
1007
+ "implementation-capability",
1008
+ "canvas",
1009
+ "webgl",
1010
+ "three.js",
1011
+ "3d",
1012
+ "visualization",
1013
+ "r3f"
1014
+ ],
1015
+ "platforms": [
1016
+ "skills-cli",
1017
+ "skillreg",
1018
+ "claude-code",
1019
+ "codex",
1020
+ "cursor",
1021
+ "opencode",
1022
+ "openclaw",
1023
+ "generic-skill-runtime"
1024
+ ],
1025
+ "applicability": {
1026
+ "roles": [
1027
+ "ui"
1028
+ ],
1029
+ "taskKinds": [
1030
+ "ui",
1031
+ "ipc",
1032
+ "build",
1033
+ "review"
1034
+ ]
1035
+ }
1036
+ },
1037
+ {
1038
+ "id": "fec-code-review",
1039
+ "name": "前端代码评审",
1040
+ "category": "review-quality",
1041
+ "tags": [
1042
+ "code-review",
1043
+ "architecture",
1044
+ "quality",
1045
+ "best-practices"
1046
+ ],
1047
+ "summary": "用于用户要求通用前端代码评审、PR 评审、合并就绪评估、架构可维护性、类型安全、渲染/状态风险、样式一致性、可测性缺口或横向评审总结时。深度安全、无障碍、E2E 或性能问题应委托对应专项 skill。",
1048
+ "version": "3.0.0",
1049
+ "license": "MIT",
1050
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1051
+ "repository": "https://github.com/bovinphang/frontend-craft",
1052
+ "keywords": [
1053
+ "review-quality",
1054
+ "code-review",
1055
+ "architecture",
1056
+ "quality",
1057
+ "best-practices"
1058
+ ],
1059
+ "platforms": [
1060
+ "skills-cli",
1061
+ "skillreg",
1062
+ "claude-code",
1063
+ "codex",
1064
+ "cursor",
1065
+ "opencode",
1066
+ "openclaw",
1067
+ "generic-skill-runtime"
1068
+ ],
1069
+ "applicability": {
1070
+ "roles": [
1071
+ "ui"
1072
+ ],
1073
+ "taskKinds": [
1074
+ "review"
1075
+ ]
1076
+ }
1077
+ },
1078
+ {
1079
+ "id": "fec-code-smells",
1080
+ "name": "代码坏味道诊断",
1081
+ "category": "review-quality",
1082
+ "tags": [
1083
+ "code-smells",
1084
+ "diagnosis",
1085
+ "maintainability",
1086
+ "evidence"
1087
+ ],
1088
+ "summary": "基于证据诊断 24 种标准代码坏味道,包含误判保护和前端常见表现。",
1089
+ "version": "3.0.0",
1090
+ "license": "MIT",
1091
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1092
+ "repository": "https://github.com/bovinphang/frontend-craft",
1093
+ "keywords": [
1094
+ "review-quality",
1095
+ "code-smells",
1096
+ "diagnosis",
1097
+ "maintainability",
1098
+ "evidence"
1099
+ ],
1100
+ "platforms": [
1101
+ "skills-cli",
1102
+ "skillreg",
1103
+ "claude-code",
1104
+ "codex",
1105
+ "cursor",
1106
+ "opencode",
1107
+ "openclaw",
1108
+ "generic-skill-runtime"
1109
+ ],
1110
+ "applicability": {
1111
+ "roles": [
1112
+ "ui"
1113
+ ],
1114
+ "taskKinds": [
1115
+ "ui",
1116
+ "ipc",
1117
+ "build",
1118
+ "review"
1119
+ ]
1120
+ }
1121
+ },
1122
+ {
1123
+ "id": "fec-component-testing",
1124
+ "name": "组件测试",
1125
+ "category": "testing",
1126
+ "tags": [
1127
+ "rtl",
1128
+ "vue-test-utils",
1129
+ "component-test",
1130
+ "user-event",
1131
+ "regression"
1132
+ ],
1133
+ "summary": "用于编写或审查靠近 UI 代码的前端单元、组件或轻量集成测试,包括 React Testing Library、Vue Test Utils、hooks/composables、props/emits、回调、可访问查询、user-event 交互、mock、loading/error/empty 状态和回归覆盖。若是测试分层规划、真实浏览器旅程或现有验证失败,优先选择对应测试或验证工作流。",
1134
+ "version": "3.0.0",
1135
+ "license": "MIT",
1136
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1137
+ "repository": "https://github.com/bovinphang/frontend-craft",
1138
+ "keywords": [
1139
+ "testing",
1140
+ "rtl",
1141
+ "vue-test-utils",
1142
+ "component-test",
1143
+ "user-event",
1144
+ "regression"
1145
+ ],
1146
+ "platforms": [
1147
+ "skills-cli",
1148
+ "skillreg",
1149
+ "claude-code",
1150
+ "codex",
1151
+ "cursor",
1152
+ "opencode",
1153
+ "openclaw",
1154
+ "generic-skill-runtime"
1155
+ ],
1156
+ "applicability": {
1157
+ "roles": [
1158
+ "ui"
1159
+ ],
1160
+ "taskKinds": [
1161
+ "ui",
1162
+ "ipc",
1163
+ "build",
1164
+ "review"
1165
+ ]
1166
+ }
1167
+ },
1168
+ {
1169
+ "id": "fec-data-fetching",
1170
+ "name": "Server State 数据获取",
1171
+ "category": "implementation-capability",
1172
+ "tags": [
1173
+ "react-query",
1174
+ "tanstack",
1175
+ "caching",
1176
+ "optimistic-update",
1177
+ "server-state"
1178
+ ],
1179
+ "summary": "用于实现或审查前端服务端状态流程:类型化查询、请求缓存、失效、mutation、乐观更新、无限查询、预取、SSR hydration 或 API 层整合。不要用于本地 UI 状态或 Service Worker 缓存。",
1180
+ "version": "3.0.0",
1181
+ "license": "MIT",
1182
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1183
+ "repository": "https://github.com/bovinphang/frontend-craft",
1184
+ "keywords": [
1185
+ "implementation-capability",
1186
+ "react-query",
1187
+ "tanstack",
1188
+ "caching",
1189
+ "optimistic-update",
1190
+ "server-state"
1191
+ ],
1192
+ "platforms": [
1193
+ "skills-cli",
1194
+ "skillreg",
1195
+ "claude-code",
1196
+ "codex",
1197
+ "cursor",
1198
+ "opencode",
1199
+ "openclaw",
1200
+ "generic-skill-runtime"
1201
+ ],
1202
+ "applicability": {
1203
+ "roles": [
1204
+ "ui"
1205
+ ],
1206
+ "taskKinds": [
1207
+ "ui",
1208
+ "ipc",
1209
+ "build",
1210
+ "review"
1211
+ ]
1212
+ }
1213
+ },
1214
+ {
1215
+ "id": "fec-debug-framework",
1216
+ "name": "前端调试框架",
1217
+ "category": "review-quality",
1218
+ "tags": [
1219
+ "debug",
1220
+ "diagnostic",
1221
+ "build-error",
1222
+ "runtime-error",
1223
+ "troubleshooting"
1224
+ ],
1225
+ "summary": "用于诊断前端构建失败、运行时错误、UI 异常、API/数据问题、白屏、请求失败或难以解释的线上异常。",
1226
+ "version": "3.0.0",
1227
+ "license": "MIT",
1228
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1229
+ "repository": "https://github.com/bovinphang/frontend-craft",
1230
+ "keywords": [
1231
+ "review-quality",
1232
+ "debug",
1233
+ "diagnostic",
1234
+ "build-error",
1235
+ "runtime-error",
1236
+ "troubleshooting"
1237
+ ],
1238
+ "platforms": [
1239
+ "skills-cli",
1240
+ "skillreg",
1241
+ "claude-code",
1242
+ "codex",
1243
+ "cursor",
1244
+ "opencode",
1245
+ "openclaw",
1246
+ "generic-skill-runtime"
1247
+ ],
1248
+ "applicability": {
1249
+ "roles": [
1250
+ "ui"
1251
+ ],
1252
+ "taskKinds": [
1253
+ "ui",
1254
+ "ipc",
1255
+ "build",
1256
+ "review"
1257
+ ]
1258
+ }
1259
+ },
1260
+ {
1261
+ "id": "fec-dependency-upgrade",
1262
+ "name": "依赖升级",
1263
+ "category": "review-quality",
1264
+ "tags": [
1265
+ "dependency-upgrade",
1266
+ "lockfile",
1267
+ "cve",
1268
+ "migration",
1269
+ "peer-dependency"
1270
+ ],
1271
+ "summary": "用于规划、实现或审查前端依赖升级、包迁移、lockfile 变更、框架大版本升级、CVE 修复、peer dependency 冲突、ESM/CJS 切换、构建工具兼容性或 CI 验证矩阵。",
1272
+ "version": "3.0.0",
1273
+ "license": "MIT",
1274
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1275
+ "repository": "https://github.com/bovinphang/frontend-craft",
1276
+ "keywords": [
1277
+ "review-quality",
1278
+ "dependency-upgrade",
1279
+ "lockfile",
1280
+ "cve",
1281
+ "migration",
1282
+ "peer-dependency"
1283
+ ],
1284
+ "platforms": [
1285
+ "skills-cli",
1286
+ "skillreg",
1287
+ "claude-code",
1288
+ "codex",
1289
+ "cursor",
1290
+ "opencode",
1291
+ "openclaw",
1292
+ "generic-skill-runtime"
1293
+ ],
1294
+ "applicability": {
1295
+ "roles": [
1296
+ "ui"
1297
+ ],
1298
+ "taskKinds": [
1299
+ "ui",
1300
+ "ipc",
1301
+ "build",
1302
+ "review"
1303
+ ]
1304
+ }
1305
+ },
1306
+ {
1307
+ "id": "fec-doc-sync",
1308
+ "name": "文档同步",
1309
+ "category": "maintenance-docs",
1310
+ "tags": [
1311
+ "docs",
1312
+ "readme",
1313
+ "env",
1314
+ "api",
1315
+ "sync",
1316
+ "deploy-docs"
1317
+ ],
1318
+ "summary": "用于根据 package.json、lockfile、配置、env 示例、路由、API client 或 server routes、schema、组件、测试、CI、构建/部署配置、ADR、changelog 或迁移说明等事实源同步前端项目文档。不要用于单纯润色普通文案。",
1319
+ "version": "3.0.0",
1320
+ "license": "MIT",
1321
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1322
+ "repository": "https://github.com/bovinphang/frontend-craft",
1323
+ "keywords": [
1324
+ "maintenance-docs",
449
1325
  "docs",
450
1326
  "readme",
451
1327
  "env",
@@ -462,33 +1338,485 @@
462
1338
  "opencode",
463
1339
  "openclaw",
464
1340
  "generic-skill-runtime"
465
- ]
1341
+ ],
1342
+ "applicability": {
1343
+ "roles": [
1344
+ "ui"
1345
+ ],
1346
+ "taskKinds": [
1347
+ "ui",
1348
+ "ipc",
1349
+ "build",
1350
+ "review"
1351
+ ]
1352
+ }
1353
+ },
1354
+ {
1355
+ "id": "fec-e2e-testing",
1356
+ "name": "端到端测试",
1357
+ "category": "testing",
1358
+ "tags": [
1359
+ "playwright",
1360
+ "cypress",
1361
+ "e2e",
1362
+ "visual-regression",
1363
+ "ci",
1364
+ "pom"
1365
+ ],
1366
+ "summary": "用于创建、维护、调试或审查真实浏览器端到端测试,包括 Playwright/Cypress、Page Object、CI 产物、trace、不稳定用例、跨页面视觉回归以及登录、支付、权限或 CRUD 等关键用户旅程。若是测试层规划或靠近 UI 组件的测试,先选择对应测试工作流。",
1367
+ "version": "3.0.0",
1368
+ "license": "MIT",
1369
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1370
+ "repository": "https://github.com/bovinphang/frontend-craft",
1371
+ "keywords": [
1372
+ "testing",
1373
+ "playwright",
1374
+ "cypress",
1375
+ "e2e",
1376
+ "visual-regression",
1377
+ "ci",
1378
+ "pom"
1379
+ ],
1380
+ "platforms": [
1381
+ "skills-cli",
1382
+ "skillreg",
1383
+ "claude-code",
1384
+ "codex",
1385
+ "cursor",
1386
+ "opencode",
1387
+ "openclaw",
1388
+ "generic-skill-runtime"
1389
+ ],
1390
+ "applicability": {
1391
+ "roles": [
1392
+ "ui"
1393
+ ],
1394
+ "taskKinds": [
1395
+ "ui",
1396
+ "ipc",
1397
+ "build",
1398
+ "review"
1399
+ ]
1400
+ }
1401
+ },
1402
+ {
1403
+ "id": "fec-form-handling",
1404
+ "name": "表单处理",
1405
+ "category": "implementation-capability",
1406
+ "tags": [
1407
+ "react-hook-form",
1408
+ "zod",
1409
+ "validation",
1410
+ "dynamic-forms",
1411
+ "file-upload"
1412
+ ],
1413
+ "summary": "用于构建或审查较复杂表单,包括 React Hook Form、Zod schema、类型化校验、动态字段、受控第三方输入、文件上传、多步骤流程、依赖校验或表单性能。不要用于没有校验的 1-3 个字段小表单。",
1414
+ "version": "3.0.0",
1415
+ "license": "MIT",
1416
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1417
+ "repository": "https://github.com/bovinphang/frontend-craft",
1418
+ "keywords": [
1419
+ "implementation-capability",
1420
+ "react-hook-form",
1421
+ "zod",
1422
+ "validation",
1423
+ "dynamic-forms",
1424
+ "file-upload"
1425
+ ],
1426
+ "platforms": [
1427
+ "skills-cli",
1428
+ "skillreg",
1429
+ "claude-code",
1430
+ "codex",
1431
+ "cursor",
1432
+ "opencode",
1433
+ "openclaw",
1434
+ "generic-skill-runtime"
1435
+ ],
1436
+ "applicability": {
1437
+ "roles": [
1438
+ "ui"
1439
+ ],
1440
+ "taskKinds": [
1441
+ "ui",
1442
+ "ipc",
1443
+ "build",
1444
+ "review"
1445
+ ]
1446
+ }
1447
+ },
1448
+ {
1449
+ "id": "fec-image-generation",
1450
+ "name": "前端视觉资产生成与编辑",
1451
+ "category": "design-ui",
1452
+ "tags": [
1453
+ "image-generation",
1454
+ "image-editing",
1455
+ "diagram-generation",
1456
+ "html-diagram",
1457
+ "png-qa",
1458
+ "visual-assets",
1459
+ "infographic",
1460
+ "mockup",
1461
+ "autofix"
1462
+ ],
1463
+ "summary": "生成和编辑 UI、产品、品牌视觉资产,复用公共 PNG 质检;结构化技术图表使用公共入口。",
1464
+ "version": "3.0.0",
1465
+ "license": "MIT",
1466
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1467
+ "repository": "https://github.com/bovinphang/frontend-craft",
1468
+ "keywords": [
1469
+ "design-ui",
1470
+ "image-generation",
1471
+ "image-editing",
1472
+ "diagram-generation",
1473
+ "html-diagram",
1474
+ "png-qa",
1475
+ "visual-assets",
1476
+ "infographic",
1477
+ "mockup",
1478
+ "autofix",
1479
+ "er-diagram",
1480
+ "uml",
1481
+ "sequence-diagram",
1482
+ "architecture-diagram",
1483
+ "workflow-diagram",
1484
+ "data-flow",
1485
+ "lifecycle-diagram",
1486
+ "state-machine",
1487
+ "poster",
1488
+ "storyboard",
1489
+ "brand-board"
1490
+ ],
1491
+ "platforms": [
1492
+ "skills-cli",
1493
+ "skillreg",
1494
+ "claude-code",
1495
+ "codex",
1496
+ "cursor",
1497
+ "opencode",
1498
+ "openclaw",
1499
+ "generic-skill-runtime"
1500
+ ],
1501
+ "applicability": {
1502
+ "roles": [
1503
+ "ui"
1504
+ ],
1505
+ "taskKinds": [
1506
+ "ui",
1507
+ "ipc",
1508
+ "build",
1509
+ "review"
1510
+ ]
1511
+ }
1512
+ },
1513
+ {
1514
+ "id": "fec-implement-from-design",
1515
+ "name": "按设计实现",
1516
+ "category": "design-ui",
1517
+ "tags": [
1518
+ "figma",
1519
+ "sketch",
1520
+ "mastergo",
1521
+ "pixso",
1522
+ "design-to-code",
1523
+ "screenshot-reference",
1524
+ "visual-reference",
1525
+ "mcp"
1526
+ ],
1527
+ "summary": "用于根据 Figma、Sketch、MasterGo、Pixso、墨刀、摹客、截图、设计选区、设计 Token 或设计转代码任务实现生产级前端组件/页面。",
1528
+ "version": "3.0.0",
1529
+ "license": "MIT",
1530
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1531
+ "repository": "https://github.com/bovinphang/frontend-craft",
1532
+ "keywords": [
1533
+ "design-ui",
1534
+ "figma",
1535
+ "sketch",
1536
+ "mastergo",
1537
+ "pixso",
1538
+ "design-to-code",
1539
+ "screenshot-reference",
1540
+ "visual-reference",
1541
+ "mcp"
1542
+ ],
1543
+ "platforms": [
1544
+ "skills-cli",
1545
+ "skillreg",
1546
+ "claude-code",
1547
+ "codex",
1548
+ "cursor",
1549
+ "opencode",
1550
+ "openclaw",
1551
+ "generic-skill-runtime"
1552
+ ],
1553
+ "applicability": {
1554
+ "roles": [
1555
+ "ui"
1556
+ ],
1557
+ "taskKinds": [
1558
+ "ui",
1559
+ "ipc",
1560
+ "build",
1561
+ "review"
1562
+ ]
1563
+ }
1564
+ },
1565
+ {
1566
+ "id": "fec-legacy-to-modern-migration",
1567
+ "name": "遗留项目现代化迁移",
1568
+ "category": "legacy-migration",
1569
+ "tags": [
1570
+ "migration",
1571
+ "jquery",
1572
+ "mpa",
1573
+ "react",
1574
+ "vue",
1575
+ "modernization"
1576
+ ],
1577
+ "summary": "用于规划或实施从 JavaScript、jQuery、HTML/CSS、服务端渲染模板、MPA 遗留前端代码或旧框架代码迁移到现代前端技术栈,同时保持行为一致。不要用于仍留在旧技术栈内的日常遗留 bug 修复。",
1578
+ "version": "3.0.0",
1579
+ "license": "MIT",
1580
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1581
+ "repository": "https://github.com/bovinphang/frontend-craft",
1582
+ "keywords": [
1583
+ "legacy-migration",
1584
+ "migration",
1585
+ "jquery",
1586
+ "mpa",
1587
+ "react",
1588
+ "vue",
1589
+ "modernization"
1590
+ ],
1591
+ "platforms": [
1592
+ "skills-cli",
1593
+ "skillreg",
1594
+ "claude-code",
1595
+ "codex",
1596
+ "cursor",
1597
+ "opencode",
1598
+ "openclaw",
1599
+ "generic-skill-runtime"
1600
+ ],
1601
+ "applicability": {
1602
+ "roles": [
1603
+ "ui"
1604
+ ],
1605
+ "taskKinds": [
1606
+ "ui",
1607
+ "ipc",
1608
+ "build",
1609
+ "review"
1610
+ ]
1611
+ }
1612
+ },
1613
+ {
1614
+ "id": "fec-legacy-web-standard",
1615
+ "name": "传统前端规范",
1616
+ "category": "legacy-migration",
1617
+ "tags": [
1618
+ "jquery",
1619
+ "mpa",
1620
+ "legacy",
1621
+ "vanilla-js"
1622
+ ],
1623
+ "summary": "用于维护或安全修改既有非框架前端代码:原生 JavaScript、jQuery、HTML/CSS、MPA 页面、服务端渲染模板、遗留插件或需要长期保持当前技术栈的代码。若是规划迁移到 React/Vue/TypeScript,请使用迁移 skill。",
1624
+ "version": "3.0.0",
1625
+ "license": "MIT",
1626
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1627
+ "repository": "https://github.com/bovinphang/frontend-craft",
1628
+ "keywords": [
1629
+ "legacy-migration",
1630
+ "jquery",
1631
+ "mpa",
1632
+ "legacy",
1633
+ "vanilla-js"
1634
+ ],
1635
+ "platforms": [
1636
+ "skills-cli",
1637
+ "skillreg",
1638
+ "claude-code",
1639
+ "codex",
1640
+ "cursor",
1641
+ "opencode",
1642
+ "openclaw",
1643
+ "generic-skill-runtime"
1644
+ ],
1645
+ "applicability": {
1646
+ "roles": [
1647
+ "ui"
1648
+ ],
1649
+ "taskKinds": [
1650
+ "ui",
1651
+ "ipc",
1652
+ "build",
1653
+ "review"
1654
+ ]
1655
+ }
1656
+ },
1657
+ {
1658
+ "id": "fec-list-virtualization",
1659
+ "name": "列表虚拟化",
1660
+ "category": "implementation-capability",
1661
+ "tags": [
1662
+ "virtualization",
1663
+ "windowing",
1664
+ "react-window",
1665
+ "tanstack-virtual",
1666
+ "performance"
1667
+ ],
1668
+ "summary": "用于优化或审查大列表、虚拟滚动、windowing、react-window、TanStack Virtual、可变高度行、动态测量、无限滚动、网格虚拟化或滚动性能。",
1669
+ "version": "3.0.0",
1670
+ "license": "MIT",
1671
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1672
+ "repository": "https://github.com/bovinphang/frontend-craft",
1673
+ "keywords": [
1674
+ "implementation-capability",
1675
+ "virtualization",
1676
+ "windowing",
1677
+ "react-window",
1678
+ "tanstack-virtual",
1679
+ "performance"
1680
+ ],
1681
+ "platforms": [
1682
+ "skills-cli",
1683
+ "skillreg",
1684
+ "claude-code",
1685
+ "codex",
1686
+ "cursor",
1687
+ "opencode",
1688
+ "openclaw",
1689
+ "generic-skill-runtime"
1690
+ ],
1691
+ "applicability": {
1692
+ "roles": [
1693
+ "ui"
1694
+ ],
1695
+ "taskKinds": [
1696
+ "ui",
1697
+ "ipc",
1698
+ "build",
1699
+ "review"
1700
+ ]
1701
+ }
1702
+ },
1703
+ {
1704
+ "id": "fec-monorepo-project-standard",
1705
+ "name": "Monorepo 项目规范",
1706
+ "category": "project-standard",
1707
+ "tags": [
1708
+ "monorepo",
1709
+ "pnpm",
1710
+ "turborepo",
1711
+ "nx",
1712
+ "workspace"
1713
+ ],
1714
+ "summary": "用于创建、审查或重构前端 monorepo,包括 pnpm workspace、Turborepo、Nx、多包依赖边界、任务编排、包命名或包发布。",
1715
+ "version": "3.0.0",
1716
+ "license": "MIT",
1717
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1718
+ "repository": "https://github.com/bovinphang/frontend-craft",
1719
+ "keywords": [
1720
+ "project-standard",
1721
+ "monorepo",
1722
+ "pnpm",
1723
+ "turborepo",
1724
+ "nx",
1725
+ "workspace"
1726
+ ],
1727
+ "platforms": [
1728
+ "skills-cli",
1729
+ "skillreg",
1730
+ "claude-code",
1731
+ "codex",
1732
+ "cursor",
1733
+ "opencode",
1734
+ "openclaw",
1735
+ "generic-skill-runtime"
1736
+ ],
1737
+ "applicability": {
1738
+ "roles": [
1739
+ "ui"
1740
+ ],
1741
+ "taskKinds": [
1742
+ "ui",
1743
+ "ipc",
1744
+ "build",
1745
+ "review"
1746
+ ]
1747
+ }
1748
+ },
1749
+ {
1750
+ "id": "fec-motion-interaction",
1751
+ "name": "交互动效",
1752
+ "category": "design-ui",
1753
+ "tags": [
1754
+ "motion",
1755
+ "motion-intensity",
1756
+ "framer-motion",
1757
+ "gsap",
1758
+ "lottie",
1759
+ "reduced-motion"
1760
+ ],
1761
+ "summary": "用于设计、实现或审查前端交互动效、页面转场、滚动动画、Framer Motion、GSAP、Lottie、CSS 动画、动效强度、动画性能、减少动效行为或兼具表现力与可访问性的 UI 动效。不要用于仅 SVG 路径绘制、Canvas/WebGL 渲染或普通 hover 状态。",
1762
+ "version": "3.0.0",
1763
+ "license": "MIT",
1764
+ "homepage": "https://github.com/bovinphang/frontend-craft",
1765
+ "repository": "https://github.com/bovinphang/frontend-craft",
1766
+ "keywords": [
1767
+ "design-ui",
1768
+ "motion",
1769
+ "motion-intensity",
1770
+ "framer-motion",
1771
+ "gsap",
1772
+ "lottie",
1773
+ "reduced-motion"
1774
+ ],
1775
+ "platforms": [
1776
+ "skills-cli",
1777
+ "skillreg",
1778
+ "claude-code",
1779
+ "codex",
1780
+ "cursor",
1781
+ "opencode",
1782
+ "openclaw",
1783
+ "generic-skill-runtime"
1784
+ ],
1785
+ "applicability": {
1786
+ "roles": [
1787
+ "ui"
1788
+ ],
1789
+ "taskKinds": [
1790
+ "ui",
1791
+ "ipc",
1792
+ "build",
1793
+ "review"
1794
+ ]
1795
+ }
466
1796
  },
467
1797
  {
468
- "id": "fec-e2e-testing",
469
- "name": "端到端测试",
470
- "category": "testing",
1798
+ "id": "fec-nextjs-project-standard",
1799
+ "name": "Next.js 项目规范",
1800
+ "category": "project-standard",
471
1801
  "tags": [
472
- "playwright",
473
- "cypress",
474
- "e2e",
475
- "visual-regression",
476
- "ci",
477
- "pom"
1802
+ "nextjs",
1803
+ "app-router",
1804
+ "ssr",
1805
+ "rsc",
1806
+ "react"
478
1807
  ],
479
- "summary": "用于创建、维护、调试或审查真实浏览器端到端测试,包括 Playwright/Cypress、Page Object、CI 产物、trace、不稳定用例、跨页面视觉回归以及登录、支付、权限或 CRUD 等关键用户旅程。若是测试层规划或靠近 UI 组件的测试,先选择对应测试工作流。",
480
- "version": "2.7.0",
1808
+ "summary": "用于创建或审查 Next.js 14+ App Router 项目、文件路由、layout、服务端/客户端组件边界、SSR/SSG/ISR、streaming、metadata、middleware、server actions 或 Next 特定数据获取。通用客户端 React 组件架构另按项目 React 约定处理。",
1809
+ "version": "3.0.0",
481
1810
  "license": "MIT",
482
1811
  "homepage": "https://github.com/bovinphang/frontend-craft",
483
1812
  "repository": "https://github.com/bovinphang/frontend-craft",
484
1813
  "keywords": [
485
- "testing",
486
- "playwright",
487
- "cypress",
488
- "e2e",
489
- "visual-regression",
490
- "ci",
491
- "pom"
1814
+ "project-standard",
1815
+ "nextjs",
1816
+ "app-router",
1817
+ "ssr",
1818
+ "rsc",
1819
+ "react"
492
1820
  ],
493
1821
  "platforms": [
494
1822
  "skills-cli",
@@ -499,31 +1827,45 @@
499
1827
  "opencode",
500
1828
  "openclaw",
501
1829
  "generic-skill-runtime"
502
- ]
1830
+ ],
1831
+ "applicability": {
1832
+ "roles": [
1833
+ "ui"
1834
+ ],
1835
+ "frameworks": [
1836
+ "next"
1837
+ ],
1838
+ "taskKinds": [
1839
+ "ui",
1840
+ "ipc",
1841
+ "build",
1842
+ "review"
1843
+ ]
1844
+ }
503
1845
  },
504
1846
  {
505
- "id": "fec-form-handling",
506
- "name": "表单处理",
507
- "category": "implementation-capability",
1847
+ "id": "fec-nuxt-project-standard",
1848
+ "name": "Nuxt 3 项目规范",
1849
+ "category": "project-standard",
508
1850
  "tags": [
509
- "react-hook-form",
510
- "zod",
511
- "validation",
512
- "dynamic-forms",
513
- "file-upload"
1851
+ "nuxt",
1852
+ "vue",
1853
+ "ssr",
1854
+ "ssg",
1855
+ "data-fetching"
514
1856
  ],
515
- "summary": "用于构建或审查较复杂表单,包括 React Hook Form、Zod schema、类型化校验、动态字段、受控第三方输入、文件上传、多步骤流程、依赖校验或表单性能。不要用于没有校验的 1-3 个字段小表单。",
516
- "version": "2.7.0",
1857
+ "summary": "用于创建或审查 Nuxt 3 项目、文件路由、pages、layouts、SSR/SSG/SPA 行为、Nuxt 数据获取、route middleware、plugins、modules、server routes 或 Nuxt 特定 Vue 3 约定。通用 Vue 组件架构另按项目 Vue 约定处理。",
1858
+ "version": "3.0.0",
517
1859
  "license": "MIT",
518
1860
  "homepage": "https://github.com/bovinphang/frontend-craft",
519
1861
  "repository": "https://github.com/bovinphang/frontend-craft",
520
1862
  "keywords": [
521
- "implementation-capability",
522
- "react-hook-form",
523
- "zod",
524
- "validation",
525
- "dynamic-forms",
526
- "file-upload"
1863
+ "project-standard",
1864
+ "nuxt",
1865
+ "vue",
1866
+ "ssr",
1867
+ "ssg",
1868
+ "data-fetching"
527
1869
  ],
528
1870
  "platforms": [
529
1871
  "skills-cli",
@@ -534,55 +1876,45 @@
534
1876
  "opencode",
535
1877
  "openclaw",
536
1878
  "generic-skill-runtime"
537
- ]
1879
+ ],
1880
+ "applicability": {
1881
+ "roles": [
1882
+ "ui"
1883
+ ],
1884
+ "frameworks": [
1885
+ "nuxt"
1886
+ ],
1887
+ "taskKinds": [
1888
+ "ui",
1889
+ "ipc",
1890
+ "build",
1891
+ "review"
1892
+ ]
1893
+ }
538
1894
  },
539
1895
  {
540
- "id": "fec-image-generation",
541
- "name": "图像生成",
542
- "category": "design-ui",
1896
+ "id": "fec-performance-optimization",
1897
+ "name": "性能优化",
1898
+ "category": "review-quality",
543
1899
  "tags": [
544
- "image-generation",
545
- "image-editing",
546
- "diagram-generation",
547
- "html-diagram",
548
- "png-qa",
549
- "visual-assets",
550
- "infographic",
551
- "mockup",
552
- "autofix"
1900
+ "performance",
1901
+ "web-vitals",
1902
+ "bundle",
1903
+ "runtime",
1904
+ "lighthouse"
553
1905
  ],
554
- "summary": "用于生成或编辑图表、图形资产、海报、UI 样机、产品图、信息图、学术图、漫画、头像、分镜、品牌板或图像编辑工作流,尤其是导出 PNG 需要视觉质检和有限自动修复时。文字密集图表优先使用确定性的 Mermaid/SVG/HTML/canvas 源;浏览器可打开的 HTML 技术图覆盖系统蓝图、架构图、部署拓扑、Agent runtime、memory flow、before-after architecture、工作流、序列、数据流、生命周期和状态机;不要用于不涉及生成图像的普通 UI 打磨。中文触发词包括 图片生成、图像编辑、图表生成、架构图、系统蓝图、部署拓扑、ER 图、UML、序列图、海报、UI 样机、产品图、信息图、学术图、漫画、头像、分镜、品牌板、PNG 自检、自动修复。",
555
- "version": "2.7.0",
1906
+ "summary": "用于诊断或改进前端性能、Core Web Vitals、包体积、运行时渲染成本、网络瀑布、内存泄漏、长任务、Lighthouse 问题或性能预算。",
1907
+ "version": "3.0.0",
556
1908
  "license": "MIT",
557
1909
  "homepage": "https://github.com/bovinphang/frontend-craft",
558
1910
  "repository": "https://github.com/bovinphang/frontend-craft",
559
1911
  "keywords": [
560
- "design-ui",
561
- "image-generation",
562
- "image-editing",
563
- "diagram-generation",
564
- "html-diagram",
565
- "png-qa",
566
- "visual-assets",
567
- "infographic",
568
- "mockup",
569
- "autofix",
570
- "system-blueprint",
571
- "deployment-topology",
572
- "agent-runtime",
573
- "memory-flow",
574
- "before-after-architecture",
575
- "er-diagram",
576
- "uml",
577
- "sequence-diagram",
578
- "architecture-diagram",
579
- "workflow-diagram",
580
- "data-flow",
581
- "lifecycle-diagram",
582
- "state-machine",
583
- "poster",
584
- "storyboard",
585
- "brand-board"
1912
+ "review-quality",
1913
+ "performance",
1914
+ "web-vitals",
1915
+ "bundle",
1916
+ "runtime",
1917
+ "lighthouse"
586
1918
  ],
587
1919
  "platforms": [
588
1920
  "skills-cli",
@@ -593,37 +1925,42 @@
593
1925
  "opencode",
594
1926
  "openclaw",
595
1927
  "generic-skill-runtime"
596
- ]
1928
+ ],
1929
+ "applicability": {
1930
+ "roles": [
1931
+ "ui"
1932
+ ],
1933
+ "taskKinds": [
1934
+ "ui",
1935
+ "ipc",
1936
+ "build",
1937
+ "review"
1938
+ ]
1939
+ }
597
1940
  },
598
1941
  {
599
- "id": "fec-implement-from-design",
600
- "name": "按设计实现",
601
- "category": "design-ui",
1942
+ "id": "fec-pwa-implementation",
1943
+ "name": "PWA 实现",
1944
+ "category": "implementation-capability",
602
1945
  "tags": [
603
- "figma",
604
- "sketch",
605
- "mastergo",
606
- "pixso",
607
- "design-to-code",
608
- "screenshot-reference",
609
- "visual-reference",
610
- "mcp"
1946
+ "pwa",
1947
+ "service-worker",
1948
+ "offline",
1949
+ "workbox",
1950
+ "installable"
611
1951
  ],
612
- "summary": "用于根据 Figma、Sketch、MasterGo、Pixso、墨刀、摹客、截图、设计选区、设计 Token 或设计转代码任务实现生产级前端组件/页面。",
613
- "version": "2.7.0",
1952
+ "summary": "用于添加或审查 Progressive Web App 能力,如可安装性、manifest 元数据、Service Worker 注册、Workbox 缓存、离线兜底、应用更新提示、maskable icons 或 iOS PWA 兼容性。不要用于普通 API 缓存或不可安装的性能调优。",
1953
+ "version": "3.0.0",
614
1954
  "license": "MIT",
615
1955
  "homepage": "https://github.com/bovinphang/frontend-craft",
616
1956
  "repository": "https://github.com/bovinphang/frontend-craft",
617
1957
  "keywords": [
618
- "design-ui",
619
- "figma",
620
- "sketch",
621
- "mastergo",
622
- "pixso",
623
- "design-to-code",
624
- "screenshot-reference",
625
- "visual-reference",
626
- "mcp"
1958
+ "implementation-capability",
1959
+ "pwa",
1960
+ "service-worker",
1961
+ "offline",
1962
+ "workbox",
1963
+ "installable"
627
1964
  ],
628
1965
  "platforms": [
629
1966
  "skills-cli",
@@ -634,33 +1971,42 @@
634
1971
  "opencode",
635
1972
  "openclaw",
636
1973
  "generic-skill-runtime"
637
- ]
1974
+ ],
1975
+ "applicability": {
1976
+ "roles": [
1977
+ "ui"
1978
+ ],
1979
+ "taskKinds": [
1980
+ "ui",
1981
+ "ipc",
1982
+ "build",
1983
+ "review"
1984
+ ]
1985
+ }
638
1986
  },
639
1987
  {
640
- "id": "fec-legacy-to-modern-migration",
641
- "name": "遗留项目现代化迁移",
642
- "category": "legacy-migration",
1988
+ "id": "fec-react-project-standard",
1989
+ "name": "React 项目规范",
1990
+ "category": "project-standard",
643
1991
  "tags": [
644
- "migration",
645
- "jquery",
646
- "mpa",
647
1992
  "react",
648
- "vue",
649
- "modernization"
1993
+ "typescript",
1994
+ "hooks",
1995
+ "components",
1996
+ "architecture"
650
1997
  ],
651
- "summary": "用于规划或实施从 JavaScript、jQuery、HTML/CSS、服务端渲染模板、MPA 遗留前端代码或旧框架代码迁移到现代前端技术栈,同时保持行为一致。不要用于仍留在旧技术栈内的日常遗留 bug 修复。",
652
- "version": "2.7.0",
1998
+ "summary": "用于设计或审查 React + TypeScript 项目结构、feature/module 边界、组件架构、hooks 组织、路由组合、状态/API/错误/样式默认约定或仓库级 React 规范。表单、数据获取、测试、无障碍、虚拟列表、动画或安全深挖优先使用更窄的 skill。",
1999
+ "version": "3.0.0",
653
2000
  "license": "MIT",
654
2001
  "homepage": "https://github.com/bovinphang/frontend-craft",
655
2002
  "repository": "https://github.com/bovinphang/frontend-craft",
656
2003
  "keywords": [
657
- "legacy-migration",
658
- "migration",
659
- "jquery",
660
- "mpa",
2004
+ "project-standard",
661
2005
  "react",
662
- "vue",
663
- "modernization"
2006
+ "typescript",
2007
+ "hooks",
2008
+ "components",
2009
+ "architecture"
664
2010
  ],
665
2011
  "platforms": [
666
2012
  "skills-cli",
@@ -671,29 +2017,45 @@
671
2017
  "opencode",
672
2018
  "openclaw",
673
2019
  "generic-skill-runtime"
674
- ]
2020
+ ],
2021
+ "applicability": {
2022
+ "roles": [
2023
+ "ui"
2024
+ ],
2025
+ "frameworks": [
2026
+ "react"
2027
+ ],
2028
+ "taskKinds": [
2029
+ "ui",
2030
+ "ipc",
2031
+ "build",
2032
+ "review"
2033
+ ]
2034
+ }
675
2035
  },
676
2036
  {
677
- "id": "fec-legacy-web-standard",
678
- "name": "传统前端规范",
679
- "category": "legacy-migration",
2037
+ "id": "fec-refactor-clean",
2038
+ "name": "重构清理",
2039
+ "category": "review-quality",
680
2040
  "tags": [
681
- "jquery",
682
- "mpa",
683
- "legacy",
684
- "vanilla-js"
2041
+ "refactor",
2042
+ "dead-code",
2043
+ "cleanup",
2044
+ "unused-exports",
2045
+ "dependencies"
685
2046
  ],
686
- "summary": "用于维护或安全修改既有非框架前端代码:原生 JavaScript、jQuery、HTML/CSS、MPA 页面、服务端渲染模板、遗留插件或需要长期保持当前技术栈的代码。若是规划迁移到 React/Vue/TypeScript,请使用迁移 skill。",
687
- "version": "2.7.0",
2047
+ "summary": "用于安全移除前端死代码、未使用导出、陈旧组件、废弃路由、未使用依赖,或由 knip、depcheck、ts-prune、TypeScript、ESLint、人工审查发现的清理目标。不要用于会改变行为的功能重写。",
2048
+ "version": "3.0.0",
688
2049
  "license": "MIT",
689
2050
  "homepage": "https://github.com/bovinphang/frontend-craft",
690
2051
  "repository": "https://github.com/bovinphang/frontend-craft",
691
2052
  "keywords": [
692
- "legacy-migration",
693
- "jquery",
694
- "mpa",
695
- "legacy",
696
- "vanilla-js"
2053
+ "review-quality",
2054
+ "refactor",
2055
+ "dead-code",
2056
+ "cleanup",
2057
+ "unused-exports",
2058
+ "dependencies"
697
2059
  ],
698
2060
  "platforms": [
699
2061
  "skills-cli",
@@ -704,31 +2066,84 @@
704
2066
  "opencode",
705
2067
  "openclaw",
706
2068
  "generic-skill-runtime"
707
- ]
2069
+ ],
2070
+ "applicability": {
2071
+ "roles": [
2072
+ "ui"
2073
+ ],
2074
+ "taskKinds": [
2075
+ "ui",
2076
+ "ipc",
2077
+ "build",
2078
+ "review"
2079
+ ]
2080
+ }
2081
+ },
2082
+ {
2083
+ "id": "fec-refactoring",
2084
+ "name": "保持行为重构",
2085
+ "category": "review-quality",
2086
+ "tags": [
2087
+ "refactoring",
2088
+ "behavior-preservation",
2089
+ "workflow",
2090
+ "validation"
2091
+ ],
2092
+ "summary": "保持现有可观察行为的前端重构编排:证据诊断、风险分级、差异预算、逐步验证、失败回滚和证明报告。",
2093
+ "version": "3.0.0",
2094
+ "license": "MIT",
2095
+ "homepage": "https://github.com/bovinphang/frontend-craft",
2096
+ "repository": "https://github.com/bovinphang/frontend-craft",
2097
+ "keywords": [
2098
+ "review-quality",
2099
+ "refactoring",
2100
+ "behavior-preservation",
2101
+ "workflow",
2102
+ "validation"
2103
+ ],
2104
+ "platforms": [
2105
+ "skills-cli",
2106
+ "skillreg",
2107
+ "claude-code",
2108
+ "codex",
2109
+ "cursor",
2110
+ "opencode",
2111
+ "openclaw",
2112
+ "generic-skill-runtime"
2113
+ ],
2114
+ "applicability": {
2115
+ "roles": [
2116
+ "ui"
2117
+ ],
2118
+ "taskKinds": [
2119
+ "ui",
2120
+ "ipc",
2121
+ "build",
2122
+ "review"
2123
+ ]
2124
+ }
708
2125
  },
709
2126
  {
710
- "id": "fec-list-virtualization",
711
- "name": "列表虚拟化",
712
- "category": "implementation-capability",
2127
+ "id": "fec-refactoring-api",
2128
+ "name": "API 类重构",
2129
+ "category": "review-quality",
713
2130
  "tags": [
714
- "virtualization",
715
- "windowing",
716
- "react-window",
717
- "tanstack-virtual",
718
- "performance"
2131
+ "refactoring",
2132
+ "api",
2133
+ "parameters",
2134
+ "dependencies"
719
2135
  ],
720
- "summary": "用于优化或审查大列表、虚拟滚动、windowing、react-window、TanStack Virtual、可变高度行、动态测量、无限滚动、网格虚拟化或滚动性能。",
721
- "version": "2.7.0",
2136
+ "summary": "函数 API 形态、行为 flag、依赖方向、可变性、构造以及 Command/Function 权衡。",
2137
+ "version": "3.0.0",
722
2138
  "license": "MIT",
723
2139
  "homepage": "https://github.com/bovinphang/frontend-craft",
724
2140
  "repository": "https://github.com/bovinphang/frontend-craft",
725
2141
  "keywords": [
726
- "implementation-capability",
727
- "virtualization",
728
- "windowing",
729
- "react-window",
730
- "tanstack-virtual",
731
- "performance"
2142
+ "review-quality",
2143
+ "refactoring",
2144
+ "api",
2145
+ "parameters",
2146
+ "dependencies"
732
2147
  ],
733
2148
  "platforms": [
734
2149
  "skills-cli",
@@ -739,31 +2154,40 @@
739
2154
  "opencode",
740
2155
  "openclaw",
741
2156
  "generic-skill-runtime"
742
- ]
2157
+ ],
2158
+ "applicability": {
2159
+ "roles": [
2160
+ "ui"
2161
+ ],
2162
+ "taskKinds": [
2163
+ "ui",
2164
+ "ipc",
2165
+ "build",
2166
+ "review"
2167
+ ]
2168
+ }
743
2169
  },
744
2170
  {
745
- "id": "fec-monorepo-project-standard",
746
- "name": "Monorepo 项目规范",
747
- "category": "project-standard",
2171
+ "id": "fec-refactoring-catalog",
2172
+ "name": "重构目录",
2173
+ "category": "review-quality",
748
2174
  "tags": [
749
- "monorepo",
750
- "pnpm",
751
- "turborepo",
752
- "nx",
753
- "workspace"
2175
+ "refactoring",
2176
+ "catalog",
2177
+ "selection",
2178
+ "composition"
754
2179
  ],
755
- "summary": "用于创建、审查或重构前端 monorepo,包括 pnpm workspace、Turborepo、Nx、多包依赖边界、任务编排、包命名或包发布。",
756
- "version": "2.7.0",
2180
+ "summary": "用于选择和组合 61 种标准重构手法,并明确其前置条件和组合边界。",
2181
+ "version": "3.0.0",
757
2182
  "license": "MIT",
758
2183
  "homepage": "https://github.com/bovinphang/frontend-craft",
759
2184
  "repository": "https://github.com/bovinphang/frontend-craft",
760
2185
  "keywords": [
761
- "project-standard",
762
- "monorepo",
763
- "pnpm",
764
- "turborepo",
765
- "nx",
766
- "workspace"
2186
+ "review-quality",
2187
+ "refactoring",
2188
+ "catalog",
2189
+ "selection",
2190
+ "composition"
767
2191
  ],
768
2192
  "platforms": [
769
2193
  "skills-cli",
@@ -774,33 +2198,40 @@
774
2198
  "opencode",
775
2199
  "openclaw",
776
2200
  "generic-skill-runtime"
777
- ]
2201
+ ],
2202
+ "applicability": {
2203
+ "roles": [
2204
+ "ui"
2205
+ ],
2206
+ "taskKinds": [
2207
+ "ui",
2208
+ "ipc",
2209
+ "build",
2210
+ "review"
2211
+ ]
2212
+ }
778
2213
  },
779
2214
  {
780
- "id": "fec-motion-interaction",
781
- "name": "交互动效",
782
- "category": "design-ui",
2215
+ "id": "fec-refactoring-control",
2216
+ "name": "条件控制类重构",
2217
+ "category": "review-quality",
783
2218
  "tags": [
784
- "motion",
785
- "motion-intensity",
786
- "framer-motion",
787
- "gsap",
788
- "lottie",
789
- "reduced-motion"
2219
+ "refactoring",
2220
+ "conditionals",
2221
+ "guard-clauses",
2222
+ "polymorphism"
790
2223
  ],
791
- "summary": "用于设计、实现或审查前端交互动效、页面转场、滚动动画、Framer Motion、GSAP、Lottie、CSS 动画、动效强度、动画性能、减少动效行为或兼具表现力与可访问性的 UI 动效。不要用于仅 SVG 路径绘制、Canvas/WebGL 渲染或普通 hover 状态。",
792
- "version": "2.7.0",
2224
+ "summary": "条件分解、卫语句、变体分派、特例与内部不变量重构。",
2225
+ "version": "3.0.0",
793
2226
  "license": "MIT",
794
2227
  "homepage": "https://github.com/bovinphang/frontend-craft",
795
2228
  "repository": "https://github.com/bovinphang/frontend-craft",
796
2229
  "keywords": [
797
- "design-ui",
798
- "motion",
799
- "motion-intensity",
800
- "framer-motion",
801
- "gsap",
802
- "lottie",
803
- "reduced-motion"
2230
+ "review-quality",
2231
+ "refactoring",
2232
+ "conditionals",
2233
+ "guard-clauses",
2234
+ "polymorphism"
804
2235
  ],
805
2236
  "platforms": [
806
2237
  "skills-cli",
@@ -811,31 +2242,40 @@
811
2242
  "opencode",
812
2243
  "openclaw",
813
2244
  "generic-skill-runtime"
814
- ]
2245
+ ],
2246
+ "applicability": {
2247
+ "roles": [
2248
+ "ui"
2249
+ ],
2250
+ "taskKinds": [
2251
+ "ui",
2252
+ "ipc",
2253
+ "build",
2254
+ "review"
2255
+ ]
2256
+ }
815
2257
  },
816
2258
  {
817
- "id": "fec-nextjs-project-standard",
818
- "name": "Next.js 项目规范",
819
- "category": "project-standard",
2259
+ "id": "fec-refactoring-data",
2260
+ "name": "数据重组类重构",
2261
+ "category": "review-quality",
820
2262
  "tags": [
821
- "nextjs",
822
- "app-router",
823
- "ssr",
824
- "rsc",
825
- "react"
2263
+ "refactoring",
2264
+ "data",
2265
+ "derived-state",
2266
+ "identity"
826
2267
  ],
827
- "summary": "用于创建或审查 Next.js 14+ App Router 项目、文件路由、layout、服务端/客户端组件边界、SSR/SSG/ISR、streaming、metadata、middleware、server actions 或 Next 特定数据获取。通用客户端 React 组件架构另按项目 React 约定处理。",
828
- "version": "2.7.0",
2268
+ "summary": "变量含义、字段命名、派生状态以及引用/值身份语义重构。",
2269
+ "version": "3.0.0",
829
2270
  "license": "MIT",
830
2271
  "homepage": "https://github.com/bovinphang/frontend-craft",
831
2272
  "repository": "https://github.com/bovinphang/frontend-craft",
832
2273
  "keywords": [
833
- "project-standard",
834
- "nextjs",
835
- "app-router",
836
- "ssr",
837
- "rsc",
838
- "react"
2274
+ "review-quality",
2275
+ "refactoring",
2276
+ "data",
2277
+ "derived-state",
2278
+ "identity"
839
2279
  ],
840
2280
  "platforms": [
841
2281
  "skills-cli",
@@ -846,31 +2286,40 @@
846
2286
  "opencode",
847
2287
  "openclaw",
848
2288
  "generic-skill-runtime"
849
- ]
2289
+ ],
2290
+ "applicability": {
2291
+ "roles": [
2292
+ "ui"
2293
+ ],
2294
+ "taskKinds": [
2295
+ "ui",
2296
+ "ipc",
2297
+ "build",
2298
+ "review"
2299
+ ]
2300
+ }
850
2301
  },
851
2302
  {
852
- "id": "fec-nuxt-project-standard",
853
- "name": "Nuxt 3 项目规范",
854
- "category": "project-standard",
2303
+ "id": "fec-refactoring-encapsulation",
2304
+ "name": "封装类重构",
2305
+ "category": "review-quality",
855
2306
  "tags": [
856
- "nuxt",
857
- "vue",
858
- "ssr",
859
- "ssg",
860
- "data-fetching"
2307
+ "refactoring",
2308
+ "encapsulation",
2309
+ "delegation",
2310
+ "value-object"
861
2311
  ],
862
- "summary": "用于创建或审查 Nuxt 3 项目、文件路由、pages、layouts、SSR/SSG/SPA 行为、Nuxt 数据获取、route middleware、plugins、modules、server routes 或 Nuxt 特定 Vue 3 约定。通用 Vue 组件架构另按项目 Vue 约定处理。",
863
- "version": "2.7.0",
2312
+ "summary": "记录、集合、领域值、职责、委托关系与算法边界的封装类重构。",
2313
+ "version": "3.0.0",
864
2314
  "license": "MIT",
865
2315
  "homepage": "https://github.com/bovinphang/frontend-craft",
866
2316
  "repository": "https://github.com/bovinphang/frontend-craft",
867
2317
  "keywords": [
868
- "project-standard",
869
- "nuxt",
870
- "vue",
871
- "ssr",
872
- "ssg",
873
- "data-fetching"
2318
+ "review-quality",
2319
+ "refactoring",
2320
+ "encapsulation",
2321
+ "delegation",
2322
+ "value-object"
874
2323
  ],
875
2324
  "platforms": [
876
2325
  "skills-cli",
@@ -881,31 +2330,40 @@
881
2330
  "opencode",
882
2331
  "openclaw",
883
2332
  "generic-skill-runtime"
884
- ]
2333
+ ],
2334
+ "applicability": {
2335
+ "roles": [
2336
+ "ui"
2337
+ ],
2338
+ "taskKinds": [
2339
+ "ui",
2340
+ "ipc",
2341
+ "build",
2342
+ "review"
2343
+ ]
2344
+ }
885
2345
  },
886
2346
  {
887
- "id": "fec-performance-optimization",
888
- "name": "性能优化",
2347
+ "id": "fec-refactoring-functions",
2348
+ "name": "函数类重构",
889
2349
  "category": "review-quality",
890
2350
  "tags": [
891
- "performance",
892
- "web-vitals",
893
- "bundle",
894
- "runtime",
895
- "lighthouse"
2351
+ "refactoring",
2352
+ "functions",
2353
+ "parameters",
2354
+ "decomposition"
896
2355
  ],
897
- "summary": "用于诊断或改进前端性能、Core Web Vitals、包体积、运行时渲染成本、网络瀑布、内存泄漏、长任务、Lighthouse 问题或性能预算。",
898
- "version": "2.7.0",
2356
+ "summary": "面向前端的函数提炼/内联、命名、参数对象、共享上下文与阶段拆分重构。",
2357
+ "version": "3.0.0",
899
2358
  "license": "MIT",
900
2359
  "homepage": "https://github.com/bovinphang/frontend-craft",
901
2360
  "repository": "https://github.com/bovinphang/frontend-craft",
902
2361
  "keywords": [
903
2362
  "review-quality",
904
- "performance",
905
- "web-vitals",
906
- "bundle",
907
- "runtime",
908
- "lighthouse"
2363
+ "refactoring",
2364
+ "functions",
2365
+ "parameters",
2366
+ "decomposition"
909
2367
  ],
910
2368
  "platforms": [
911
2369
  "skills-cli",
@@ -916,31 +2374,40 @@
916
2374
  "opencode",
917
2375
  "openclaw",
918
2376
  "generic-skill-runtime"
919
- ]
2377
+ ],
2378
+ "applicability": {
2379
+ "roles": [
2380
+ "ui"
2381
+ ],
2382
+ "taskKinds": [
2383
+ "ui",
2384
+ "ipc",
2385
+ "build",
2386
+ "review"
2387
+ ]
2388
+ }
920
2389
  },
921
2390
  {
922
- "id": "fec-pwa-implementation",
923
- "name": "PWA 实现",
924
- "category": "implementation-capability",
2391
+ "id": "fec-refactoring-inheritance",
2392
+ "name": "继承关系类重构",
2393
+ "category": "review-quality",
925
2394
  "tags": [
926
- "pwa",
927
- "service-worker",
928
- "offline",
929
- "workbox",
930
- "installable"
2395
+ "refactoring",
2396
+ "inheritance",
2397
+ "delegation",
2398
+ "composition"
931
2399
  ],
932
- "summary": "用于添加或审查 Progressive Web App 能力,如可安装性、manifest 元数据、Service Worker 注册、Workbox 缓存、离线兜底、应用更新提示、maskable icons 或 iOS PWA 兼容性。不要用于普通 API 缓存或不可安装的性能调优。",
933
- "version": "2.7.0",
2400
+ "summary": "面向 legacy OO 的继承体系、子类型职责、超类/子类和委托重构,并提供组合优先的前端适配。",
2401
+ "version": "3.0.0",
934
2402
  "license": "MIT",
935
2403
  "homepage": "https://github.com/bovinphang/frontend-craft",
936
2404
  "repository": "https://github.com/bovinphang/frontend-craft",
937
2405
  "keywords": [
938
- "implementation-capability",
939
- "pwa",
940
- "service-worker",
941
- "offline",
942
- "workbox",
943
- "installable"
2406
+ "review-quality",
2407
+ "refactoring",
2408
+ "inheritance",
2409
+ "delegation",
2410
+ "composition"
944
2411
  ],
945
2412
  "platforms": [
946
2413
  "skills-cli",
@@ -951,31 +2418,40 @@
951
2418
  "opencode",
952
2419
  "openclaw",
953
2420
  "generic-skill-runtime"
954
- ]
2421
+ ],
2422
+ "applicability": {
2423
+ "roles": [
2424
+ "ui"
2425
+ ],
2426
+ "taskKinds": [
2427
+ "ui",
2428
+ "ipc",
2429
+ "build",
2430
+ "review"
2431
+ ]
2432
+ }
955
2433
  },
956
2434
  {
957
- "id": "fec-react-project-standard",
958
- "name": "React 项目规范",
959
- "category": "project-standard",
2435
+ "id": "fec-refactoring-move-features",
2436
+ "name": "搬移特性类重构",
2437
+ "category": "review-quality",
960
2438
  "tags": [
961
- "react",
962
- "typescript",
963
- "hooks",
964
- "components",
965
- "architecture"
2439
+ "refactoring",
2440
+ "move-function",
2441
+ "ownership",
2442
+ "loops"
966
2443
  ],
967
- "summary": "用于设计或审查 React + TypeScript 项目结构、feature/module 边界、组件架构、hooks 组织、路由组合、状态/API/错误/样式默认约定或仓库级 React 规范。表单、数据获取、测试、无障碍、虚拟列表、动画或安全深挖优先使用更窄的 skill。",
968
- "version": "2.7.0",
2444
+ "summary": "行为/数据所有权、语句搬移、循环转换以及死代码目录知识。",
2445
+ "version": "3.0.0",
969
2446
  "license": "MIT",
970
2447
  "homepage": "https://github.com/bovinphang/frontend-craft",
971
2448
  "repository": "https://github.com/bovinphang/frontend-craft",
972
2449
  "keywords": [
973
- "project-standard",
974
- "react",
975
- "typescript",
976
- "hooks",
977
- "components",
978
- "architecture"
2450
+ "review-quality",
2451
+ "refactoring",
2452
+ "move-function",
2453
+ "ownership",
2454
+ "loops"
979
2455
  ],
980
2456
  "platforms": [
981
2457
  "skills-cli",
@@ -986,31 +2462,40 @@
986
2462
  "opencode",
987
2463
  "openclaw",
988
2464
  "generic-skill-runtime"
989
- ]
2465
+ ],
2466
+ "applicability": {
2467
+ "roles": [
2468
+ "ui"
2469
+ ],
2470
+ "taskKinds": [
2471
+ "ui",
2472
+ "ipc",
2473
+ "build",
2474
+ "review"
2475
+ ]
2476
+ }
990
2477
  },
991
2478
  {
992
- "id": "fec-refactor-clean",
993
- "name": "重构清理",
2479
+ "id": "fec-refactoring-validation",
2480
+ "name": "重构验证",
994
2481
  "category": "review-quality",
995
2482
  "tags": [
996
- "refactor",
997
- "dead-code",
998
- "cleanup",
999
- "unused-exports",
1000
- "dependencies"
2483
+ "refactoring",
2484
+ "validation",
2485
+ "behavior-preservation",
2486
+ "rollback"
1001
2487
  ],
1002
- "summary": "用于安全移除前端死代码、未使用导出、陈旧组件、废弃路由、未使用依赖,或由 knip、depcheck、ts-prune、TypeScript、ESLint、人工审查发现的清理目标。不要用于会改变行为的功能重写。",
1003
- "version": "2.7.0",
2488
+ "summary": "定义行为保持契约、安全网、验证阶梯、回滚规则和重构证明等级。",
2489
+ "version": "3.0.0",
1004
2490
  "license": "MIT",
1005
2491
  "homepage": "https://github.com/bovinphang/frontend-craft",
1006
2492
  "repository": "https://github.com/bovinphang/frontend-craft",
1007
2493
  "keywords": [
1008
2494
  "review-quality",
1009
- "refactor",
1010
- "dead-code",
1011
- "cleanup",
1012
- "unused-exports",
1013
- "dependencies"
2495
+ "refactoring",
2496
+ "validation",
2497
+ "behavior-preservation",
2498
+ "rollback"
1014
2499
  ],
1015
2500
  "platforms": [
1016
2501
  "skills-cli",
@@ -1021,7 +2506,18 @@
1021
2506
  "opencode",
1022
2507
  "openclaw",
1023
2508
  "generic-skill-runtime"
1024
- ]
2509
+ ],
2510
+ "applicability": {
2511
+ "roles": [
2512
+ "ui"
2513
+ ],
2514
+ "taskKinds": [
2515
+ "ui",
2516
+ "ipc",
2517
+ "build",
2518
+ "review"
2519
+ ]
2520
+ }
1025
2521
  },
1026
2522
  {
1027
2523
  "id": "fec-responsive-layout",
@@ -1035,7 +2531,7 @@
1035
2531
  "touch-target"
1036
2532
  ],
1037
2533
  "summary": "用于设计、实现或审查响应式前端布局、移动优先断点、容器查询、流式网格、数据密集表格、触摸目标、安全区域、横竖屏变化、视口溢出或跨设备 UI 行为。",
1038
- "version": "2.7.0",
2534
+ "version": "3.0.0",
1039
2535
  "license": "MIT",
1040
2536
  "homepage": "https://github.com/bovinphang/frontend-craft",
1041
2537
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1056,7 +2552,18 @@
1056
2552
  "opencode",
1057
2553
  "openclaw",
1058
2554
  "generic-skill-runtime"
1059
- ]
2555
+ ],
2556
+ "applicability": {
2557
+ "roles": [
2558
+ "ui"
2559
+ ],
2560
+ "taskKinds": [
2561
+ "ui",
2562
+ "ipc",
2563
+ "build",
2564
+ "review"
2565
+ ]
2566
+ }
1060
2567
  },
1061
2568
  {
1062
2569
  "id": "fec-route-protection",
@@ -1071,7 +2578,7 @@
1071
2578
  "vue-router"
1072
2579
  ],
1073
2580
  "summary": "用于实现或审查前端路由保护、auth guard、RBAC、权限路由、登录态处理、重定向、middleware、React Router、Next.js、Vue Router 或 Nuxt route middleware。",
1074
- "version": "2.7.0",
2581
+ "version": "3.0.0",
1075
2582
  "license": "MIT",
1076
2583
  "homepage": "https://github.com/bovinphang/frontend-craft",
1077
2584
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1093,7 +2600,18 @@
1093
2600
  "opencode",
1094
2601
  "openclaw",
1095
2602
  "generic-skill-runtime"
1096
- ]
2603
+ ],
2604
+ "applicability": {
2605
+ "roles": [
2606
+ "ui"
2607
+ ],
2608
+ "taskKinds": [
2609
+ "ui",
2610
+ "ipc",
2611
+ "build",
2612
+ "review"
2613
+ ]
2614
+ }
1097
2615
  },
1098
2616
  {
1099
2617
  "id": "fec-security-review",
@@ -1108,7 +2626,7 @@
1108
2626
  "dompurify"
1109
2627
  ],
1110
2628
  "summary": "用于审查前端安全风险,如 XSS、CSRF、敏感数据暴露、不安全 DOM API、不可信用户输入、认证/token 处理、支付流程、文件上传、CSP、依赖风险或第三方脚本。",
1111
- "version": "2.7.0",
2629
+ "version": "3.0.0",
1112
2630
  "license": "MIT",
1113
2631
  "homepage": "https://github.com/bovinphang/frontend-craft",
1114
2632
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1130,42 +2648,18 @@
1130
2648
  "opencode",
1131
2649
  "openclaw",
1132
2650
  "generic-skill-runtime"
1133
- ]
1134
- },
1135
- {
1136
- "id": "fec-source-driven-development",
1137
- "name": "事实源驱动开发",
1138
- "category": "maintenance-docs",
1139
- "tags": [
1140
- "source-driven",
1141
- "official-docs",
1142
- "versioning",
1143
- "framework-docs",
1144
- "decision-record"
1145
- ],
1146
- "summary": "用于前端决策依赖可能变化的框架、库、浏览器、运行时、包、API 或平台行为时,包括官方文档核验、版本敏感模式、迁移选择或公共接口假设。",
1147
- "version": "2.7.0",
1148
- "license": "MIT",
1149
- "homepage": "https://github.com/bovinphang/frontend-craft",
1150
- "repository": "https://github.com/bovinphang/frontend-craft",
1151
- "keywords": [
1152
- "maintenance-docs",
1153
- "source-driven",
1154
- "official-docs",
1155
- "versioning",
1156
- "framework-docs",
1157
- "decision-record"
1158
2651
  ],
1159
- "platforms": [
1160
- "skills-cli",
1161
- "skillreg",
1162
- "claude-code",
1163
- "codex",
1164
- "cursor",
1165
- "opencode",
1166
- "openclaw",
1167
- "generic-skill-runtime"
1168
- ]
2652
+ "applicability": {
2653
+ "roles": [
2654
+ "ui"
2655
+ ],
2656
+ "taskKinds": [
2657
+ "ui",
2658
+ "ipc",
2659
+ "build",
2660
+ "review"
2661
+ ]
2662
+ }
1169
2663
  },
1170
2664
  {
1171
2665
  "id": "fec-state-management",
@@ -1179,7 +2673,7 @@
1179
2673
  "store"
1180
2674
  ],
1181
2675
  "summary": "用于选择、实现、审查或重构 React、Vue、Next.js、Nuxt、URL 状态、服务端状态、表单状态、浏览器持久化或全局 store 的前端状态归属。TanStack Query 缓存细节、浏览器存储持久化或表单校验内部问题优先使用更窄的 skill。",
1182
- "version": "2.7.0",
2676
+ "version": "3.0.0",
1183
2677
  "license": "MIT",
1184
2678
  "homepage": "https://github.com/bovinphang/frontend-craft",
1185
2679
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1200,7 +2694,18 @@
1200
2694
  "opencode",
1201
2695
  "openclaw",
1202
2696
  "generic-skill-runtime"
1203
- ]
2697
+ ],
2698
+ "applicability": {
2699
+ "roles": [
2700
+ "ui"
2701
+ ],
2702
+ "taskKinds": [
2703
+ "ui",
2704
+ "ipc",
2705
+ "build",
2706
+ "review"
2707
+ ]
2708
+ }
1204
2709
  },
1205
2710
  {
1206
2711
  "id": "fec-storybook-component-doc",
@@ -1214,7 +2719,7 @@
1214
2719
  "mdx"
1215
2720
  ],
1216
2721
  "summary": "用于设置或审查 Storybook 组件文档、设计系统展示、隔离组件状态预览、stories、addons、decorators、MDX 文档、组件状态交互检查、视觉基线或 Chromatic。真实浏览器跨页面旅程或更广覆盖规划优先选择对应测试工作流。",
1217
- "version": "2.7.0",
2722
+ "version": "3.0.0",
1218
2723
  "license": "MIT",
1219
2724
  "homepage": "https://github.com/bovinphang/frontend-craft",
1220
2725
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1235,7 +2740,18 @@
1235
2740
  "opencode",
1236
2741
  "openclaw",
1237
2742
  "generic-skill-runtime"
1238
- ]
2743
+ ],
2744
+ "applicability": {
2745
+ "roles": [
2746
+ "ui"
2747
+ ],
2748
+ "taskKinds": [
2749
+ "ui",
2750
+ "ipc",
2751
+ "build",
2752
+ "review"
2753
+ ]
2754
+ }
1239
2755
  },
1240
2756
  {
1241
2757
  "id": "fec-svg-animation",
@@ -1249,7 +2765,7 @@
1249
2765
  "micro-interaction"
1250
2766
  ],
1251
2767
  "summary": "用于实现或审查 SVG 动画、路径绘制、图标动效、Logo 动画、插画动效、微交互、CSS/SMIL/Framer Motion/GSAP 选型、动效无障碍或降级行为。",
1252
- "version": "2.7.0",
2768
+ "version": "3.0.0",
1253
2769
  "license": "MIT",
1254
2770
  "homepage": "https://github.com/bovinphang/frontend-craft",
1255
2771
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1270,7 +2786,18 @@
1270
2786
  "opencode",
1271
2787
  "openclaw",
1272
2788
  "generic-skill-runtime"
1273
- ]
2789
+ ],
2790
+ "applicability": {
2791
+ "roles": [
2792
+ "ui"
2793
+ ],
2794
+ "taskKinds": [
2795
+ "ui",
2796
+ "ipc",
2797
+ "build",
2798
+ "review"
2799
+ ]
2800
+ }
1274
2801
  },
1275
2802
  {
1276
2803
  "id": "fec-tailwind-design-system",
@@ -1284,7 +2811,7 @@
1284
2811
  "dark-mode"
1285
2812
  ],
1286
2813
  "summary": "用于设计、实现或审查 Tailwind CSS 设计系统、Token 映射、主题扩展、工具类治理、组件变体、暗色模式、响应式工具、safelist 或可维护的 class 组合。",
1287
- "version": "2.7.0",
2814
+ "version": "3.0.0",
1288
2815
  "license": "MIT",
1289
2816
  "homepage": "https://github.com/bovinphang/frontend-craft",
1290
2817
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1305,7 +2832,18 @@
1305
2832
  "opencode",
1306
2833
  "openclaw",
1307
2834
  "generic-skill-runtime"
1308
- ]
2835
+ ],
2836
+ "applicability": {
2837
+ "roles": [
2838
+ "ui"
2839
+ ],
2840
+ "taskKinds": [
2841
+ "ui",
2842
+ "ipc",
2843
+ "build",
2844
+ "review"
2845
+ ]
2846
+ }
1309
2847
  },
1310
2848
  {
1311
2849
  "id": "fec-tdd-workflow",
@@ -1319,7 +2857,7 @@
1319
2857
  "frontend-tests"
1320
2858
  ],
1321
2859
  "summary": "用于实现新前端行为、修复 bug 或重构可先由测试描述预期行为的逻辑。适用于组件、hooks/composables、工具函数、API clients、路由守卫或用户工作流。",
1322
- "version": "2.7.0",
2860
+ "version": "3.0.0",
1323
2861
  "license": "MIT",
1324
2862
  "homepage": "https://github.com/bovinphang/frontend-craft",
1325
2863
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1339,7 +2877,18 @@
1339
2877
  "opencode",
1340
2878
  "openclaw",
1341
2879
  "generic-skill-runtime"
1342
- ]
2880
+ ],
2881
+ "applicability": {
2882
+ "roles": [
2883
+ "ui"
2884
+ ],
2885
+ "taskKinds": [
2886
+ "ui",
2887
+ "ipc",
2888
+ "build",
2889
+ "review"
2890
+ ]
2891
+ }
1343
2892
  },
1344
2893
  {
1345
2894
  "id": "fec-testing-strategy",
@@ -1353,7 +2902,7 @@
1353
2902
  "quality-gate"
1354
2903
  ],
1355
2904
  "summary": "用于规划或审查前端测试策略,按风险选择正确测试层级,将覆盖映射到静态检查、单元测试、组件测试、集成测试、E2E、Storybook/视觉回归、a11y、安全、性能或 CI gates。不要用于编写单个组件/E2E 测试或只是运行现有验证命令。",
1356
- "version": "2.7.0",
2905
+ "version": "3.0.0",
1357
2906
  "license": "MIT",
1358
2907
  "homepage": "https://github.com/bovinphang/frontend-craft",
1359
2908
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1374,43 +2923,18 @@
1374
2923
  "opencode",
1375
2924
  "openclaw",
1376
2925
  "generic-skill-runtime"
1377
- ]
1378
- },
1379
- {
1380
- "id": "fec-typescript-project-standard",
1381
- "name": "TypeScript 项目规范",
1382
- "category": "project-standard",
1383
- "tags": [
1384
- "typescript",
1385
- "project-standard",
1386
- "type-safety",
1387
- "tsconfig",
1388
- "declarations"
1389
- ],
1390
- "summary": "用于创建、配置、审查或调试前端应用、库、SDK、CLI、monorepo 包中的 TypeScript 项目规范,包括 tsconfig、strictness、module/moduleResolution、路径别名、project references、声明文件、package exports、公共 API 类型、DTO、高级泛型、判别联合、类型守卫、类型收窄或类型级回归。React/Vue/Next/Nuxt 组件架构优先使用框架项目 skill。",
1391
- "version": "2.7.0",
1392
- "license": "MIT",
1393
- "homepage": "https://github.com/bovinphang/frontend-craft",
1394
- "repository": "https://github.com/bovinphang/frontend-craft",
1395
- "keywords": [
1396
- "project-standard",
1397
- "typescript",
1398
- "type-safety",
1399
- "tsconfig",
1400
- "declarations",
1401
- "generics",
1402
- "dto"
1403
2926
  ],
1404
- "platforms": [
1405
- "skills-cli",
1406
- "skillreg",
1407
- "claude-code",
1408
- "codex",
1409
- "cursor",
1410
- "opencode",
1411
- "openclaw",
1412
- "generic-skill-runtime"
1413
- ]
2927
+ "applicability": {
2928
+ "roles": [
2929
+ "ui"
2930
+ ],
2931
+ "taskKinds": [
2932
+ "ui",
2933
+ "ipc",
2934
+ "build",
2935
+ "review"
2936
+ ]
2937
+ }
1414
2938
  },
1415
2939
  {
1416
2940
  "id": "fec-ui-design",
@@ -1430,7 +2954,7 @@
1430
2954
  "chart-ux"
1431
2955
  ],
1432
2956
  "summary": "用于构建、审查或改进需要产品专属设计方向的前端 UI,包括设计系统生成、Master/Page 覆盖、独特视觉识别、反通用界面选择、首屏层级、UI 打磨、图表 UX、交互状态、响应式行为或视觉 QA。外部设计文件为权威时,应从该来源实现,而不是自行发明方向。",
1433
- "version": "2.7.0",
2957
+ "version": "3.0.0",
1434
2958
  "license": "MIT",
1435
2959
  "homepage": "https://github.com/bovinphang/frontend-craft",
1436
2960
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1460,7 +2984,18 @@
1460
2984
  "opencode",
1461
2985
  "openclaw",
1462
2986
  "generic-skill-runtime"
1463
- ]
2987
+ ],
2988
+ "applicability": {
2989
+ "roles": [
2990
+ "ui"
2991
+ ],
2992
+ "taskKinds": [
2993
+ "ui",
2994
+ "ipc",
2995
+ "build",
2996
+ "review"
2997
+ ]
2998
+ }
1464
2999
  },
1465
3000
  {
1466
3001
  "id": "fec-validation-fix",
@@ -1475,7 +3010,7 @@
1475
3010
  "fix"
1476
3011
  ],
1477
3012
  "summary": "用于运行现有项目验证命令并修复代码变更后的失败,包括 lint、type-check、单元/集成测试、build、CI 或本地脚本失败。不要用于设计或编写新的组件/E2E 测试。",
1478
- "version": "2.7.0",
3013
+ "version": "3.0.0",
1479
3014
  "license": "MIT",
1480
3015
  "homepage": "https://github.com/bovinphang/frontend-craft",
1481
3016
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1497,7 +3032,18 @@
1497
3032
  "opencode",
1498
3033
  "openclaw",
1499
3034
  "generic-skill-runtime"
1500
- ]
3035
+ ],
3036
+ "applicability": {
3037
+ "roles": [
3038
+ "ui"
3039
+ ],
3040
+ "taskKinds": [
3041
+ "ui",
3042
+ "ipc",
3043
+ "build",
3044
+ "review"
3045
+ ]
3046
+ }
1501
3047
  },
1502
3048
  {
1503
3049
  "id": "fec-vite-project-standard",
@@ -1512,7 +3058,7 @@
1512
3058
  "dev-server"
1513
3059
  ],
1514
3060
  "summary": "用于创建、配置、审查或调试基于 Vite 的前端项目、vite.config.ts、环境变量、dev server proxy、HMR、插件顺序、library mode、依赖预打包、bundle splitting 或 Vite 构建性能。React/Vue 组件架构请使用框架专项 skill。",
1515
- "version": "2.7.0",
3061
+ "version": "3.0.0",
1516
3062
  "license": "MIT",
1517
3063
  "homepage": "https://github.com/bovinphang/frontend-craft",
1518
3064
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1534,7 +3080,21 @@
1534
3080
  "opencode",
1535
3081
  "openclaw",
1536
3082
  "generic-skill-runtime"
1537
- ]
3083
+ ],
3084
+ "applicability": {
3085
+ "roles": [
3086
+ "ui"
3087
+ ],
3088
+ "frameworks": [
3089
+ "vite"
3090
+ ],
3091
+ "taskKinds": [
3092
+ "ui",
3093
+ "ipc",
3094
+ "build",
3095
+ "review"
3096
+ ]
3097
+ }
1538
3098
  },
1539
3099
  {
1540
3100
  "id": "fec-vue3-project-standard",
@@ -1548,7 +3108,7 @@
1548
3108
  "components"
1549
3109
  ],
1550
3110
  "summary": "用于设计或审查 Vue 3 + TypeScript 项目结构、SFC/组件边界、composables 组织、路由组合、Pinia 归属、API/错误/样式默认约定、directives 或仓库级 Vue 规范。表单、数据获取、测试、无障碍、虚拟列表、动画或安全深挖优先使用更窄的 skill。",
1551
- "version": "2.7.0",
3111
+ "version": "3.0.0",
1552
3112
  "license": "MIT",
1553
3113
  "homepage": "https://github.com/bovinphang/frontend-craft",
1554
3114
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1569,7 +3129,21 @@
1569
3129
  "opencode",
1570
3130
  "openclaw",
1571
3131
  "generic-skill-runtime"
1572
- ]
3132
+ ],
3133
+ "applicability": {
3134
+ "roles": [
3135
+ "ui"
3136
+ ],
3137
+ "frameworks": [
3138
+ "vue"
3139
+ ],
3140
+ "taskKinds": [
3141
+ "ui",
3142
+ "ipc",
3143
+ "build",
3144
+ "review"
3145
+ ]
3146
+ }
1573
3147
  },
1574
3148
  {
1575
3149
  "id": "fec-web-video-presentation",
@@ -1584,7 +3158,7 @@
1584
3158
  "vite"
1585
3159
  ],
1586
3160
  "summary": "用于将文章、演讲稿、课程、产品演示或口播解释转成可录制的 16:9 网页演示,包含步骤驱动场景、可选口播对齐、主题 Token 与录屏指导。",
1587
- "version": "2.7.0",
3161
+ "version": "3.0.0",
1588
3162
  "license": "MIT",
1589
3163
  "homepage": "https://github.com/bovinphang/frontend-craft",
1590
3164
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1606,7 +3180,18 @@
1606
3180
  "opencode",
1607
3181
  "openclaw",
1608
3182
  "generic-skill-runtime"
1609
- ]
3183
+ ],
3184
+ "applicability": {
3185
+ "roles": [
3186
+ "ui"
3187
+ ],
3188
+ "taskKinds": [
3189
+ "ui",
3190
+ "ipc",
3191
+ "build",
3192
+ "review"
3193
+ ]
3194
+ }
1610
3195
  },
1611
3196
  {
1612
3197
  "id": "fec-web-workers",
@@ -1620,7 +3205,7 @@
1620
3205
  "performance"
1621
3206
  ],
1622
3207
  "summary": "用于将昂贵的浏览器工作移出主线程,涉及 Web Workers、SharedWorker、worker 池、Comlink、transferable objects、Vite/Webpack worker 集成或 UI 响应性修复。不要用于轻量同步工作或 DOM 操作。",
1623
- "version": "2.7.0",
3208
+ "version": "3.0.0",
1624
3209
  "license": "MIT",
1625
3210
  "homepage": "https://github.com/bovinphang/frontend-craft",
1626
3211
  "repository": "https://github.com/bovinphang/frontend-craft",
@@ -1641,6 +3226,17 @@
1641
3226
  "opencode",
1642
3227
  "openclaw",
1643
3228
  "generic-skill-runtime"
1644
- ]
3229
+ ],
3230
+ "applicability": {
3231
+ "roles": [
3232
+ "ui"
3233
+ ],
3234
+ "taskKinds": [
3235
+ "ui",
3236
+ "ipc",
3237
+ "build",
3238
+ "review"
3239
+ ]
3240
+ }
1645
3241
  }
1646
3242
  ]