@bovinphang/craft-common 1.0.1 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (323) hide show
  1. package/CHANGELOG.md +39 -0
  2. package/CHANGELOG.zh-CN.md +39 -0
  3. package/README.md +17 -3
  4. package/dist/content/applicability.d.ts +17 -0
  5. package/dist/content/catalog.d.ts +1 -1
  6. package/dist/content/snapshot.d.ts +32 -0
  7. package/dist/index.d.ts +18 -0
  8. package/dist/index.js +10873 -208
  9. package/dist/install/file-transition.d.ts +10 -0
  10. package/dist/install/product/lifecycle.d.ts +17 -0
  11. package/dist/install/product/locks.d.ts +2 -0
  12. package/dist/install/product/ownership.d.ts +3 -0
  13. package/dist/install/product/paths.d.ts +17 -0
  14. package/dist/install/product/runtime-descriptors.d.ts +109 -0
  15. package/dist/install/product/session.d.ts +31 -0
  16. package/dist/install/product/shared-config/hash.d.ts +9 -0
  17. package/dist/install/product/shared-config/index.d.ts +16 -0
  18. package/dist/install/product/shared-config/json.d.ts +11 -0
  19. package/dist/install/product/shared-config/text.d.ts +5 -0
  20. package/dist/install/product/shared-config/toml.d.ts +7 -0
  21. package/dist/install/product/shared-config/types.d.ts +21 -0
  22. package/dist/install/product/transaction.d.ts +10 -0
  23. package/dist/install/product/types.d.ts +65 -0
  24. package/dist/project/discover.d.ts +2 -0
  25. package/dist/project/evidence.d.ts +37 -0
  26. package/dist/project/frameworks.d.ts +5 -0
  27. package/dist/project/recommend.d.ts +17 -0
  28. package/dist/project/types.d.ts +42 -0
  29. package/docs/consuming-common.md +65 -6
  30. package/docs/releases/2.0.0.md +58 -0
  31. package/localized/zh-CN/methods/engineering-practices.md +237 -0
  32. package/localized/zh-CN/methods/engineering-practices.rules.json +121 -0
  33. package/localized/zh-CN/methods/engineering-practices.sources.json +377 -0
  34. package/localized/zh-CN/skills/cc-c-project-standard/SKILL.md +25 -0
  35. package/localized/zh-CN/skills/cc-c-project-standard/examples/engineering/README.md +7 -0
  36. package/localized/zh-CN/skills/cc-c-project-standard/examples/engineering/boundary.c +26 -0
  37. package/localized/zh-CN/skills/cc-c-project-standard/examples/engineering/boundary.h +15 -0
  38. package/localized/zh-CN/skills/cc-c-project-standard/examples/engineering/boundary_test.c +73 -0
  39. package/localized/zh-CN/skills/cc-c-project-standard/references/common/engineering-practices.md +237 -0
  40. package/localized/zh-CN/skills/cc-c-project-standard/references/common/engineering-practices.rules.json +121 -0
  41. package/localized/zh-CN/skills/cc-c-project-standard/references/common/engineering-practices.sources.json +377 -0
  42. package/localized/zh-CN/skills/cc-c-project-standard/references/engineering-practices.md +106 -0
  43. package/localized/zh-CN/skills/cc-c-project-standard/references/practice.md +37 -0
  44. package/localized/zh-CN/skills/cc-cpp-project-standard/SKILL.md +25 -0
  45. package/localized/zh-CN/skills/cc-cpp-project-standard/examples/engineering/README.md +7 -0
  46. package/localized/zh-CN/skills/cc-cpp-project-standard/examples/engineering/boundary.cpp +26 -0
  47. package/localized/zh-CN/skills/cc-cpp-project-standard/examples/engineering/boundary.hpp +12 -0
  48. package/localized/zh-CN/skills/cc-cpp-project-standard/examples/engineering/boundary_test.cpp +38 -0
  49. package/localized/zh-CN/skills/cc-cpp-project-standard/references/common/engineering-practices.md +237 -0
  50. package/localized/zh-CN/skills/cc-cpp-project-standard/references/common/engineering-practices.rules.json +121 -0
  51. package/localized/zh-CN/skills/cc-cpp-project-standard/references/common/engineering-practices.sources.json +377 -0
  52. package/localized/zh-CN/skills/cc-cpp-project-standard/references/engineering-practices.md +106 -0
  53. package/localized/zh-CN/skills/cc-cpp-project-standard/references/practice.md +37 -0
  54. package/localized/zh-CN/skills/cc-electron-project-standard/SKILL.md +21 -0
  55. package/localized/zh-CN/skills/cc-electron-project-standard/examples/engineering/README.md +7 -0
  56. package/localized/zh-CN/skills/cc-electron-project-standard/examples/engineering/ipc-lifecycle.cjs +44 -0
  57. package/localized/zh-CN/skills/cc-electron-project-standard/examples/engineering/ipc-lifecycle.test.cjs +44 -0
  58. package/localized/zh-CN/skills/cc-electron-project-standard/examples/engineering/package.json +8 -0
  59. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/README.md +9 -0
  60. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/boundary.cjs +19 -0
  61. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/boundary.test.cjs +7 -0
  62. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/index.html +1 -0
  63. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/main.cjs +20 -0
  64. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/package.json +9 -0
  65. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/preload.cjs +2 -0
  66. package/localized/zh-CN/skills/cc-electron-project-standard/examples/minimal/renderer.js +4 -0
  67. package/localized/zh-CN/skills/cc-electron-project-standard/references/common/engineering-practices.md +237 -0
  68. package/localized/zh-CN/skills/cc-electron-project-standard/references/common/engineering-practices.rules.json +121 -0
  69. package/localized/zh-CN/skills/cc-electron-project-standard/references/common/engineering-practices.sources.json +377 -0
  70. package/localized/zh-CN/skills/cc-electron-project-standard/references/engineering-practices.md +73 -0
  71. package/localized/zh-CN/skills/cc-electron-project-standard/references/practice.md +19 -0
  72. package/localized/zh-CN/skills/cc-electron-project-standard/references/verification.md +17 -0
  73. package/localized/zh-CN/skills/cc-go-concurrency/SKILL.md +25 -0
  74. package/localized/zh-CN/skills/cc-go-concurrency/references/common/engineering-practices.md +237 -0
  75. package/localized/zh-CN/skills/cc-go-concurrency/references/common/engineering-practices.rules.json +121 -0
  76. package/localized/zh-CN/skills/cc-go-concurrency/references/common/engineering-practices.sources.json +377 -0
  77. package/localized/zh-CN/skills/cc-go-concurrency/references/engineering-practices.md +73 -0
  78. package/localized/zh-CN/skills/cc-go-concurrency/references/practice.md +37 -0
  79. package/localized/zh-CN/skills/cc-go-project-standard/SKILL.md +25 -0
  80. package/localized/zh-CN/skills/cc-go-project-standard/examples/engineering/README.md +7 -0
  81. package/localized/zh-CN/skills/cc-go-project-standard/examples/engineering/go.mod +3 -0
  82. package/localized/zh-CN/skills/cc-go-project-standard/examples/engineering/lifecycle.go +71 -0
  83. package/localized/zh-CN/skills/cc-go-project-standard/examples/engineering/lifecycle_test.go +22 -0
  84. package/localized/zh-CN/skills/cc-go-project-standard/references/common/engineering-practices.md +237 -0
  85. package/localized/zh-CN/skills/cc-go-project-standard/references/common/engineering-practices.rules.json +121 -0
  86. package/localized/zh-CN/skills/cc-go-project-standard/references/common/engineering-practices.sources.json +377 -0
  87. package/localized/zh-CN/skills/cc-go-project-standard/references/engineering-practices.md +106 -0
  88. package/localized/zh-CN/skills/cc-go-project-standard/references/practice.md +37 -0
  89. package/localized/zh-CN/skills/cc-java-project-standard/SKILL.md +25 -0
  90. package/localized/zh-CN/skills/cc-java-project-standard/examples/engineering/README.md +5 -0
  91. package/localized/zh-CN/skills/cc-java-project-standard/examples/engineering/ResourceBoundary.java +26 -0
  92. package/localized/zh-CN/skills/cc-java-project-standard/examples/engineering/ResourceBoundaryTest.java +41 -0
  93. package/localized/zh-CN/skills/cc-java-project-standard/references/common/engineering-practices.md +237 -0
  94. package/localized/zh-CN/skills/cc-java-project-standard/references/common/engineering-practices.rules.json +121 -0
  95. package/localized/zh-CN/skills/cc-java-project-standard/references/common/engineering-practices.sources.json +377 -0
  96. package/localized/zh-CN/skills/cc-java-project-standard/references/engineering-practices.md +106 -0
  97. package/localized/zh-CN/skills/cc-java-project-standard/references/practice.md +37 -0
  98. package/localized/zh-CN/skills/cc-java-runtime/SKILL.md +25 -0
  99. package/localized/zh-CN/skills/cc-java-runtime/references/common/engineering-practices.md +237 -0
  100. package/localized/zh-CN/skills/cc-java-runtime/references/common/engineering-practices.rules.json +121 -0
  101. package/localized/zh-CN/skills/cc-java-runtime/references/common/engineering-practices.sources.json +377 -0
  102. package/localized/zh-CN/skills/cc-java-runtime/references/engineering-practices.md +73 -0
  103. package/localized/zh-CN/skills/cc-java-runtime/references/practice.md +37 -0
  104. package/localized/zh-CN/skills/cc-native-memory-safety/SKILL.md +25 -0
  105. package/localized/zh-CN/skills/cc-native-memory-safety/references/common/engineering-practices.md +237 -0
  106. package/localized/zh-CN/skills/cc-native-memory-safety/references/common/engineering-practices.rules.json +121 -0
  107. package/localized/zh-CN/skills/cc-native-memory-safety/references/common/engineering-practices.sources.json +377 -0
  108. package/localized/zh-CN/skills/cc-native-memory-safety/references/engineering-practices.md +73 -0
  109. package/localized/zh-CN/skills/cc-native-memory-safety/references/practice.md +37 -0
  110. package/localized/zh-CN/skills/cc-python-async/SKILL.md +25 -0
  111. package/localized/zh-CN/skills/cc-python-async/references/common/engineering-practices.md +237 -0
  112. package/localized/zh-CN/skills/cc-python-async/references/common/engineering-practices.rules.json +121 -0
  113. package/localized/zh-CN/skills/cc-python-async/references/common/engineering-practices.sources.json +377 -0
  114. package/localized/zh-CN/skills/cc-python-async/references/engineering-practices.md +73 -0
  115. package/localized/zh-CN/skills/cc-python-async/references/practice.md +37 -0
  116. package/localized/zh-CN/skills/cc-python-project-standard/SKILL.md +25 -0
  117. package/localized/zh-CN/skills/cc-python-project-standard/examples/engineering/README.md +7 -0
  118. package/localized/zh-CN/skills/cc-python-project-standard/examples/engineering/resource_boundary.py +37 -0
  119. package/localized/zh-CN/skills/cc-python-project-standard/examples/engineering/test_resource_boundary.py +49 -0
  120. package/localized/zh-CN/skills/cc-python-project-standard/references/common/engineering-practices.md +237 -0
  121. package/localized/zh-CN/skills/cc-python-project-standard/references/common/engineering-practices.rules.json +121 -0
  122. package/localized/zh-CN/skills/cc-python-project-standard/references/common/engineering-practices.sources.json +377 -0
  123. package/localized/zh-CN/skills/cc-python-project-standard/references/engineering-practices.md +106 -0
  124. package/localized/zh-CN/skills/cc-python-project-standard/references/practice.md +37 -0
  125. package/localized/zh-CN/skills/cc-rust-async/SKILL.md +25 -0
  126. package/localized/zh-CN/skills/cc-rust-async/references/common/engineering-practices.md +237 -0
  127. package/localized/zh-CN/skills/cc-rust-async/references/common/engineering-practices.rules.json +121 -0
  128. package/localized/zh-CN/skills/cc-rust-async/references/common/engineering-practices.sources.json +377 -0
  129. package/localized/zh-CN/skills/cc-rust-async/references/engineering-practices.md +73 -0
  130. package/localized/zh-CN/skills/cc-rust-async/references/practice.md +37 -0
  131. package/localized/zh-CN/skills/cc-rust-project-standard/SKILL.md +25 -0
  132. package/localized/zh-CN/skills/cc-rust-project-standard/examples/engineering/Cargo.lock +7 -0
  133. package/localized/zh-CN/skills/cc-rust-project-standard/examples/engineering/Cargo.toml +8 -0
  134. package/localized/zh-CN/skills/cc-rust-project-standard/examples/engineering/README.md +5 -0
  135. package/localized/zh-CN/skills/cc-rust-project-standard/examples/engineering/src/lib.rs +43 -0
  136. package/localized/zh-CN/skills/cc-rust-project-standard/references/common/engineering-practices.md +237 -0
  137. package/localized/zh-CN/skills/cc-rust-project-standard/references/common/engineering-practices.rules.json +121 -0
  138. package/localized/zh-CN/skills/cc-rust-project-standard/references/common/engineering-practices.sources.json +377 -0
  139. package/localized/zh-CN/skills/cc-rust-project-standard/references/engineering-practices.md +106 -0
  140. package/localized/zh-CN/skills/cc-rust-project-standard/references/practice.md +37 -0
  141. package/localized/zh-CN/skills/cc-tauri-project-standard/SKILL.md +21 -0
  142. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/README.md +9 -0
  143. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/core/Cargo.lock +5 -0
  144. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/core/Cargo.toml +9 -0
  145. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/core/src/lib.rs +46 -0
  146. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/Cargo.toml +12 -0
  147. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/build.rs +5 -0
  148. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/capabilities/main.json +6 -0
  149. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/permissions/documents.toml +4 -0
  150. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/src/main.rs +22 -0
  151. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/src-tauri/tauri.conf.json +13 -0
  152. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/ui/app.js +5 -0
  153. package/localized/zh-CN/skills/cc-tauri-project-standard/examples/minimal/ui/index.html +1 -0
  154. package/localized/zh-CN/skills/cc-tauri-project-standard/references/common/engineering-practices.md +237 -0
  155. package/localized/zh-CN/skills/cc-tauri-project-standard/references/common/engineering-practices.rules.json +121 -0
  156. package/localized/zh-CN/skills/cc-tauri-project-standard/references/common/engineering-practices.sources.json +377 -0
  157. package/localized/zh-CN/skills/cc-tauri-project-standard/references/engineering-practices.md +73 -0
  158. package/localized/zh-CN/skills/cc-tauri-project-standard/references/practice.md +20 -0
  159. package/localized/zh-CN/skills/cc-tauri-project-standard/references/verification.md +18 -0
  160. package/localized/zh-CN/skills/cc-typescript-project-standard/SKILL.md +60 -0
  161. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/README.md +7 -0
  162. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/boundary.test.ts +16 -0
  163. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/input.ts +12 -0
  164. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/package.json +12 -0
  165. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/pnpm-lock.yaml +39 -0
  166. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/pnpm-workspace.yaml +1 -0
  167. package/localized/zh-CN/skills/cc-typescript-project-standard/examples/engineering/tsconfig.json +8 -0
  168. package/localized/zh-CN/skills/cc-typescript-project-standard/references/common/engineering-practices.md +237 -0
  169. package/localized/zh-CN/skills/cc-typescript-project-standard/references/common/engineering-practices.rules.json +121 -0
  170. package/localized/zh-CN/skills/cc-typescript-project-standard/references/common/engineering-practices.sources.json +377 -0
  171. package/localized/zh-CN/skills/cc-typescript-project-standard/references/engineering-practices.md +106 -0
  172. package/localized/zh-CN/skills/cc-typescript-project-standard/references/type-safety-patterns.md +73 -0
  173. package/localized/zh-CN/skills/cc-typescript-project-standard/references/type-safety.md +154 -0
  174. package/localized/zh-CN/skills/eval_queries.json +336 -0
  175. package/localized/zh-CN/skills/metadata.json +545 -7
  176. package/localized/zh-CN/skills/relations.json +143 -0
  177. package/methods/engineering-practices.md +237 -0
  178. package/methods/engineering-practices.rules.json +121 -0
  179. package/methods/engineering-practices.sources.json +377 -0
  180. package/package.json +10 -2
  181. package/skills/cc-c-project-standard/SKILL.md +25 -0
  182. package/skills/cc-c-project-standard/examples/engineering/README.md +7 -0
  183. package/skills/cc-c-project-standard/examples/engineering/boundary.c +26 -0
  184. package/skills/cc-c-project-standard/examples/engineering/boundary.h +15 -0
  185. package/skills/cc-c-project-standard/examples/engineering/boundary_test.c +73 -0
  186. package/skills/cc-c-project-standard/references/common/engineering-practices.md +237 -0
  187. package/skills/cc-c-project-standard/references/common/engineering-practices.rules.json +121 -0
  188. package/skills/cc-c-project-standard/references/common/engineering-practices.sources.json +377 -0
  189. package/skills/cc-c-project-standard/references/engineering-practices.md +106 -0
  190. package/skills/cc-c-project-standard/references/practice.md +37 -0
  191. package/skills/cc-cpp-project-standard/SKILL.md +25 -0
  192. package/skills/cc-cpp-project-standard/examples/engineering/README.md +7 -0
  193. package/skills/cc-cpp-project-standard/examples/engineering/boundary.cpp +26 -0
  194. package/skills/cc-cpp-project-standard/examples/engineering/boundary.hpp +12 -0
  195. package/skills/cc-cpp-project-standard/examples/engineering/boundary_test.cpp +38 -0
  196. package/skills/cc-cpp-project-standard/references/common/engineering-practices.md +237 -0
  197. package/skills/cc-cpp-project-standard/references/common/engineering-practices.rules.json +121 -0
  198. package/skills/cc-cpp-project-standard/references/common/engineering-practices.sources.json +377 -0
  199. package/skills/cc-cpp-project-standard/references/engineering-practices.md +106 -0
  200. package/skills/cc-cpp-project-standard/references/practice.md +37 -0
  201. package/skills/cc-electron-project-standard/SKILL.md +21 -0
  202. package/skills/cc-electron-project-standard/examples/engineering/README.md +7 -0
  203. package/skills/cc-electron-project-standard/examples/engineering/ipc-lifecycle.cjs +44 -0
  204. package/skills/cc-electron-project-standard/examples/engineering/ipc-lifecycle.test.cjs +44 -0
  205. package/skills/cc-electron-project-standard/examples/engineering/package.json +8 -0
  206. package/skills/cc-electron-project-standard/examples/minimal/README.md +9 -0
  207. package/skills/cc-electron-project-standard/examples/minimal/boundary.cjs +19 -0
  208. package/skills/cc-electron-project-standard/examples/minimal/boundary.test.cjs +7 -0
  209. package/skills/cc-electron-project-standard/examples/minimal/index.html +1 -0
  210. package/skills/cc-electron-project-standard/examples/minimal/main.cjs +20 -0
  211. package/skills/cc-electron-project-standard/examples/minimal/package.json +9 -0
  212. package/skills/cc-electron-project-standard/examples/minimal/preload.cjs +2 -0
  213. package/skills/cc-electron-project-standard/examples/minimal/renderer.js +4 -0
  214. package/skills/cc-electron-project-standard/references/common/engineering-practices.md +237 -0
  215. package/skills/cc-electron-project-standard/references/common/engineering-practices.rules.json +121 -0
  216. package/skills/cc-electron-project-standard/references/common/engineering-practices.sources.json +377 -0
  217. package/skills/cc-electron-project-standard/references/engineering-practices.md +73 -0
  218. package/skills/cc-electron-project-standard/references/practice.md +19 -0
  219. package/skills/cc-electron-project-standard/references/verification.md +17 -0
  220. package/skills/cc-go-concurrency/SKILL.md +25 -0
  221. package/skills/cc-go-concurrency/references/common/engineering-practices.md +237 -0
  222. package/skills/cc-go-concurrency/references/common/engineering-practices.rules.json +121 -0
  223. package/skills/cc-go-concurrency/references/common/engineering-practices.sources.json +377 -0
  224. package/skills/cc-go-concurrency/references/engineering-practices.md +73 -0
  225. package/skills/cc-go-concurrency/references/practice.md +37 -0
  226. package/skills/cc-go-project-standard/SKILL.md +25 -0
  227. package/skills/cc-go-project-standard/examples/engineering/README.md +7 -0
  228. package/skills/cc-go-project-standard/examples/engineering/go.mod +3 -0
  229. package/skills/cc-go-project-standard/examples/engineering/lifecycle.go +71 -0
  230. package/skills/cc-go-project-standard/examples/engineering/lifecycle_test.go +22 -0
  231. package/skills/cc-go-project-standard/references/common/engineering-practices.md +237 -0
  232. package/skills/cc-go-project-standard/references/common/engineering-practices.rules.json +121 -0
  233. package/skills/cc-go-project-standard/references/common/engineering-practices.sources.json +377 -0
  234. package/skills/cc-go-project-standard/references/engineering-practices.md +106 -0
  235. package/skills/cc-go-project-standard/references/practice.md +37 -0
  236. package/skills/cc-java-project-standard/SKILL.md +25 -0
  237. package/skills/cc-java-project-standard/examples/engineering/README.md +7 -0
  238. package/skills/cc-java-project-standard/examples/engineering/ResourceBoundary.java +26 -0
  239. package/skills/cc-java-project-standard/examples/engineering/ResourceBoundaryTest.java +41 -0
  240. package/skills/cc-java-project-standard/references/common/engineering-practices.md +237 -0
  241. package/skills/cc-java-project-standard/references/common/engineering-practices.rules.json +121 -0
  242. package/skills/cc-java-project-standard/references/common/engineering-practices.sources.json +377 -0
  243. package/skills/cc-java-project-standard/references/engineering-practices.md +106 -0
  244. package/skills/cc-java-project-standard/references/practice.md +35 -0
  245. package/skills/cc-java-runtime/SKILL.md +25 -0
  246. package/skills/cc-java-runtime/references/common/engineering-practices.md +237 -0
  247. package/skills/cc-java-runtime/references/common/engineering-practices.rules.json +121 -0
  248. package/skills/cc-java-runtime/references/common/engineering-practices.sources.json +377 -0
  249. package/skills/cc-java-runtime/references/engineering-practices.md +73 -0
  250. package/skills/cc-java-runtime/references/practice.md +37 -0
  251. package/skills/cc-native-memory-safety/SKILL.md +25 -0
  252. package/skills/cc-native-memory-safety/references/common/engineering-practices.md +237 -0
  253. package/skills/cc-native-memory-safety/references/common/engineering-practices.rules.json +121 -0
  254. package/skills/cc-native-memory-safety/references/common/engineering-practices.sources.json +377 -0
  255. package/skills/cc-native-memory-safety/references/engineering-practices.md +73 -0
  256. package/skills/cc-native-memory-safety/references/practice.md +37 -0
  257. package/skills/cc-python-async/SKILL.md +25 -0
  258. package/skills/cc-python-async/references/common/engineering-practices.md +237 -0
  259. package/skills/cc-python-async/references/common/engineering-practices.rules.json +121 -0
  260. package/skills/cc-python-async/references/common/engineering-practices.sources.json +377 -0
  261. package/skills/cc-python-async/references/engineering-practices.md +73 -0
  262. package/skills/cc-python-async/references/practice.md +37 -0
  263. package/skills/cc-python-project-standard/SKILL.md +25 -0
  264. package/skills/cc-python-project-standard/examples/engineering/README.md +7 -0
  265. package/skills/cc-python-project-standard/examples/engineering/resource_boundary.py +37 -0
  266. package/skills/cc-python-project-standard/examples/engineering/test_resource_boundary.py +49 -0
  267. package/skills/cc-python-project-standard/references/common/engineering-practices.md +237 -0
  268. package/skills/cc-python-project-standard/references/common/engineering-practices.rules.json +121 -0
  269. package/skills/cc-python-project-standard/references/common/engineering-practices.sources.json +377 -0
  270. package/skills/cc-python-project-standard/references/engineering-practices.md +106 -0
  271. package/skills/cc-python-project-standard/references/practice.md +37 -0
  272. package/skills/cc-rust-async/SKILL.md +25 -0
  273. package/skills/cc-rust-async/references/common/engineering-practices.md +237 -0
  274. package/skills/cc-rust-async/references/common/engineering-practices.rules.json +121 -0
  275. package/skills/cc-rust-async/references/common/engineering-practices.sources.json +377 -0
  276. package/skills/cc-rust-async/references/engineering-practices.md +73 -0
  277. package/skills/cc-rust-async/references/practice.md +37 -0
  278. package/skills/cc-rust-project-standard/SKILL.md +25 -0
  279. package/skills/cc-rust-project-standard/examples/engineering/Cargo.lock +7 -0
  280. package/skills/cc-rust-project-standard/examples/engineering/Cargo.toml +8 -0
  281. package/skills/cc-rust-project-standard/examples/engineering/README.md +5 -0
  282. package/skills/cc-rust-project-standard/examples/engineering/src/lib.rs +43 -0
  283. package/skills/cc-rust-project-standard/references/common/engineering-practices.md +237 -0
  284. package/skills/cc-rust-project-standard/references/common/engineering-practices.rules.json +121 -0
  285. package/skills/cc-rust-project-standard/references/common/engineering-practices.sources.json +377 -0
  286. package/skills/cc-rust-project-standard/references/engineering-practices.md +106 -0
  287. package/skills/cc-rust-project-standard/references/practice.md +37 -0
  288. package/skills/cc-tauri-project-standard/SKILL.md +21 -0
  289. package/skills/cc-tauri-project-standard/examples/minimal/README.md +9 -0
  290. package/skills/cc-tauri-project-standard/examples/minimal/core/Cargo.lock +5 -0
  291. package/skills/cc-tauri-project-standard/examples/minimal/core/Cargo.toml +9 -0
  292. package/skills/cc-tauri-project-standard/examples/minimal/core/src/lib.rs +46 -0
  293. package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/Cargo.toml +12 -0
  294. package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/build.rs +5 -0
  295. package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/capabilities/main.json +6 -0
  296. package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/permissions/documents.toml +4 -0
  297. package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/src/main.rs +22 -0
  298. package/skills/cc-tauri-project-standard/examples/minimal/src-tauri/tauri.conf.json +13 -0
  299. package/skills/cc-tauri-project-standard/examples/minimal/ui/app.js +5 -0
  300. package/skills/cc-tauri-project-standard/examples/minimal/ui/index.html +1 -0
  301. package/skills/cc-tauri-project-standard/references/common/engineering-practices.md +237 -0
  302. package/skills/cc-tauri-project-standard/references/common/engineering-practices.rules.json +121 -0
  303. package/skills/cc-tauri-project-standard/references/common/engineering-practices.sources.json +377 -0
  304. package/skills/cc-tauri-project-standard/references/engineering-practices.md +73 -0
  305. package/skills/cc-tauri-project-standard/references/practice.md +20 -0
  306. package/skills/cc-tauri-project-standard/references/verification.md +18 -0
  307. package/skills/cc-typescript-project-standard/SKILL.md +60 -0
  308. package/skills/cc-typescript-project-standard/examples/engineering/README.md +9 -0
  309. package/skills/cc-typescript-project-standard/examples/engineering/boundary.test.ts +16 -0
  310. package/skills/cc-typescript-project-standard/examples/engineering/input.ts +12 -0
  311. package/skills/cc-typescript-project-standard/examples/engineering/package.json +12 -0
  312. package/skills/cc-typescript-project-standard/examples/engineering/pnpm-lock.yaml +39 -0
  313. package/skills/cc-typescript-project-standard/examples/engineering/pnpm-workspace.yaml +1 -0
  314. package/skills/cc-typescript-project-standard/examples/engineering/tsconfig.json +8 -0
  315. package/skills/cc-typescript-project-standard/references/common/engineering-practices.md +237 -0
  316. package/skills/cc-typescript-project-standard/references/common/engineering-practices.rules.json +121 -0
  317. package/skills/cc-typescript-project-standard/references/common/engineering-practices.sources.json +377 -0
  318. package/skills/cc-typescript-project-standard/references/engineering-practices.md +106 -0
  319. package/skills/cc-typescript-project-standard/references/type-safety-patterns.md +73 -0
  320. package/skills/cc-typescript-project-standard/references/type-safety.md +154 -0
  321. package/skills/eval_queries.json +336 -0
  322. package/skills/metadata.json +545 -7
  323. package/skills/relations.json +143 -0
@@ -0,0 +1,154 @@
1
+ #TypeScript type safety
2
+
3
+ ## Purpose
4
+
5
+ Establish evolvable type contracts for TypeScript applications, libraries, CLI tools and desktop processes, reducing `any`, assertions, and runtime shape drift.
6
+
7
+ ## Procedure
8
+
9
+ ### 1. First determine the type boundary
10
+
11
+ Divide types into external input, domain model, UI view model, component props, and tool function API. Don't let backend DTOs, form models, and UI presentation models pretend to be each other.
12
+
13
+ ```ts
14
+ interface UserDto {
15
+ id: string;
16
+ display_name: string;
17
+ status: "ACTIVE" | "DISABLED";
18
+ }
19
+
20
+ interface UserViewModel {
21
+ id: string;
22
+ displayName: string;
23
+ status: "active" | "disabled";
24
+ }
25
+
26
+ export function mapUserDto(dto: UserDto): UserViewModel {
27
+ return {
28
+ id: dto.id,
29
+ displayName: dto.display_name,
30
+ status: dto.status === "ACTIVE" ? "active" : "disabled",
31
+ };
32
+ }
33
+ ```
34
+
35
+ ### 2. Use `unknown` and narrowing to handle untrusted data
36
+
37
+ External input must be verified before use. Don't use `as` to shut up the compiler.
38
+
39
+ ```ts
40
+ interface ApiErrorBody {
41
+ message: string;
42
+ }
43
+
44
+ function isApiErrorBody(value: unknown): value is ApiErrorBody {
45
+ return (
46
+ typeof value === "object" &&
47
+ value !== null &&
48
+ "message" in value &&
49
+ typeof value.message === "string"
50
+ );
51
+ }
52
+
53
+ export function getApiErrorMessage(value: unknown): string {
54
+ return isApiErrorBody(value) ? value.message : "Unexpected error";
55
+ }
56
+ ```
57
+
58
+ ### 3. Express state machine using discriminant union
59
+
60
+ Limited states such as asynchronous status, permission branches, payment status, etc. use discriminant fields to expose new branches during compilation.
61
+
62
+ ```ts
63
+ type Loadable<T> =
64
+ | { state: "idle" }
65
+ | { state: "loading" }
66
+ | { state: "success"; data: T }
67
+ | { state: "error"; error: Error };
68
+
69
+ function assertNever(value: never): never {
70
+ throw new Error(`Unhandled state: ${JSON.stringify(value)}`);
71
+ }
72
+
73
+ export function renderUserState(user: Loadable<{ name: string }>): string {
74
+ switch (user.state) {
75
+ case "idle":
76
+ return "Ready";
77
+ case "loading":
78
+ return "Loading";
79
+ case "success":
80
+ return user.data.name;
81
+ case "error":
82
+ return user.error.message;
83
+ default:
84
+ return assertNever(user);
85
+ }
86
+ }
87
+ ```
88
+
89
+ ### 4. Let generics serve callers, not show off their skills
90
+
91
+ Generics should reduce duplication and keep caller inference clear. When the complex type exceeds the reading cost, the named type will be demolished first.
92
+
93
+ ```ts
94
+ interface SelectOption<TValue extends string | number> {
95
+ label: string;
96
+ value: TValue;
97
+ }
98
+
99
+ interface SelectProps<TValue extends string | number> {
100
+ value: TValue;
101
+ options: Array<SelectOption<TValue>>;
102
+ onChange: (value: TValue) => void;
103
+ }
104
+
105
+ export function Select<TValue extends string | number>({
106
+ value,
107
+ options,
108
+ onChange,
109
+ }: SelectProps<TValue>) {
110
+ return (
111
+ <select value={value} onChange={(event) => onChange(event.target.value as TValue)}>
112
+ {options.map((option) => (
113
+ <option key={option.value} value={option.value}>
114
+ {option.label}
115
+ </option>
116
+ ))}
117
+ </select>
118
+ );
119
+ }
120
+ ```
121
+
122
+ ### 5. Protect public types with type testing
123
+
124
+ Public tool types, component library types, and SDK types should have lightweight type tests or compile-time assertions.
125
+
126
+ ```ts
127
+ type Equal<TLeft, TRight> =
128
+ (<T>() => T extends TLeft ? 1 : 2) extends <T>() => T extends TRight ? 1 : 2
129
+ ? true
130
+ : false;
131
+
132
+ type Expect<T extends true> = T;
133
+
134
+ type UserStatus = UserViewModel["status"];
135
+ type _UserStatusTest = Expect<Equal<UserStatus, "active" | "disabled">>;
136
+ ```
137
+
138
+ ## Constraints
139
+
140
+ - Avoid `any`, unguarded non-null assertions and coercion `as` between unrelated types.
141
+ - Don’t pile large anonymous types on function parameters or JSX props; extract named types to express business meaning.
142
+ - Do not over-design recursive conditional types for simple business; type complexity should serve maintainability.
143
+ - The input and output of the public API must be explicitly annotated, and local variables can be relied upon for inference.
144
+ - Type modeling does not replace runtime validation; external data still requires schema or type guard.
145
+
146
+ ## Expected Output
147
+
148
+ Produce clear type boundaries, narrowable data models, and necessary type testing and verification commands. The review should list type risks, runtime impacts, recommended modeling methods, and whether special fixes are needed.
149
+
150
+ ## Application workflow boundaries
151
+
152
+ - Use framework project workflows for component architecture, routing, state ownership, and framework-specific module boundaries.
153
+ - Use API integration when runtime API clients, auth refresh, uploads, realtime behavior, or error mapping go beyond TypeScript type contracts.
154
+ - Use validation fix when the task is to repair concrete lint, typecheck, test, build, or CI failures after TypeScript changes.
@@ -1,4 +1,52 @@
1
1
  {
2
+ "cc-c-project-standard": {
3
+ "should_trigger": [
4
+ "Review or fix C allocation cleanup paths",
5
+ "Review or fix C library ABI compatibility",
6
+ "Review or fix C output initialization on failure",
7
+ "Review or fix C buffer length validation",
8
+ "Review or fix C integer overflow at allocation",
9
+ "Review or fix pure C ownership transfer",
10
+ "Review or fix C header implementation boundaries",
11
+ "Review or fix C failure injection tests",
12
+ "Review pure C allocation size and allocator pairing without a C++ migration"
13
+ ],
14
+ "should_not_trigger": [
15
+ "Only adjust CSS spacing without code contracts",
16
+ "Translate product copy without programming",
17
+ "Generate a poster illustration",
18
+ "Choose a restaurant for dinner",
19
+ "Change a database index without language code",
20
+ "Design framework component routing without language configuration",
21
+ "Rewrite a marketing headline",
22
+ "Produce an audio soundtrack",
23
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
24
+ ]
25
+ },
26
+ "cc-cpp-project-standard": {
27
+ "should_trigger": [
28
+ "Review or fix C++ library RAII ownership",
29
+ "Review or fix C++ exception guarantees",
30
+ "Review or fix C++ desktop plugin ABI",
31
+ "Review or fix C++ partial construction cleanup",
32
+ "Review or fix C++ callback lifetime",
33
+ "Review or fix C++ compiler standard preservation",
34
+ "Review or fix C++ custom deleter pairing",
35
+ "Review or fix C++ module teardown synchronization",
36
+ "Review borrowed C++ plugin pointer cleanup while preserving disabled-exception policy"
37
+ ],
38
+ "should_not_trigger": [
39
+ "Only adjust CSS spacing without code contracts",
40
+ "Translate product copy without programming",
41
+ "Generate a poster illustration",
42
+ "Choose a restaurant for dinner",
43
+ "Change a database index without language code",
44
+ "Design framework component routing without language configuration",
45
+ "Rewrite a marketing headline",
46
+ "Produce an audio soundtrack",
47
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
48
+ ]
49
+ },
2
50
  "cc-debug-methodology": {
3
51
  "should_trigger": [
4
52
  "Vite build error reports Module not found, please help me troubleshoot",
@@ -69,6 +117,198 @@
69
117
  "Generate comic avatars and brand boards"
70
118
  ]
71
119
  },
120
+ "cc-electron-project-standard": {
121
+ "should_trigger": [
122
+ "Validate Electron IPC sender before effects",
123
+ "Restrict an Electron contextBridge API",
124
+ "Review Electron main preload renderer contracts",
125
+ "Enable and verify Electron sandbox boundaries",
126
+ "Restrict Electron navigation and new windows",
127
+ "Review Electron secure custom protocol assets",
128
+ "Check Electron native module ABI packaging",
129
+ "Own Electron IPC handlers during shutdown",
130
+ "Review Electron IPC delayed preparation after its window closed"
131
+ ],
132
+ "should_not_trigger": [
133
+ "Implement a Node HTTP API without Electron",
134
+ "Organize an ordinary Rust library",
135
+ "Only adjust a Vue CSS color",
136
+ "Design Tauri capabilities",
137
+ "Tune a Go worker channel",
138
+ "Translate a marketing headline",
139
+ "Review a database isolation level",
140
+ "Generate a diagram without code changes",
141
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
142
+ ]
143
+ },
144
+ "cc-go-concurrency": {
145
+ "should_trigger": [
146
+ "Review or fix Go worker cancellation",
147
+ "Review or fix Go channel close ownership",
148
+ "Review or fix Go blocked send after receiver exit",
149
+ "Review or fix bounded Go goroutines",
150
+ "Review or fix Go synchronization happens-before",
151
+ "Review or fix Go concurrent shutdown race",
152
+ "Review or fix Go queue saturation tests",
153
+ "Review or fix Go worker completion evidence",
154
+ "Review blocked Go channel shutdown and completion of both workers"
155
+ ],
156
+ "should_not_trigger": [
157
+ "Only adjust CSS spacing without code contracts",
158
+ "Translate product copy without programming",
159
+ "Generate a poster illustration",
160
+ "Choose a restaurant for dinner",
161
+ "Change a database index without language code",
162
+ "Design framework component routing without language configuration",
163
+ "Rewrite a marketing headline",
164
+ "Produce an audio soundtrack",
165
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
166
+ ]
167
+ },
168
+ "cc-go-project-standard": {
169
+ "should_trigger": [
170
+ "Review or fix go.work submodule boundaries",
171
+ "Review or fix Go internal package organization",
172
+ "Review or fix error wrapping in a Go CLI",
173
+ "Review or fix Go context ownership in blocking operations",
174
+ "Review or fix Go resource factory cleanup",
175
+ "Review or fix Go module import compatibility",
176
+ "Review or fix targeted Go vet and test commands",
177
+ "Review or fix Go public interface design",
178
+ "Review a Go library context and error boundary without adding HTTP layers"
179
+ ],
180
+ "should_not_trigger": [
181
+ "Only adjust CSS spacing without code contracts",
182
+ "Translate product copy without programming",
183
+ "Generate a poster illustration",
184
+ "Choose a restaurant for dinner",
185
+ "Change a database index without language code",
186
+ "Design framework component routing without language configuration",
187
+ "Rewrite a marketing headline",
188
+ "Produce an audio soundtrack",
189
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
190
+ ]
191
+ },
192
+ "cc-java-project-standard": {
193
+ "should_trigger": [
194
+ "Review or fix Java library public module boundary",
195
+ "Review or fix Java CLI exception causes",
196
+ "Review or fix Swing module executor cleanup",
197
+ "Review or fix JavaFX blocking work ownership",
198
+ "Review or fix Maven wrapper version preservation",
199
+ "Review or fix Gradle module dependency boundaries",
200
+ "Review or fix Java file handle closure",
201
+ "Review or fix Java library behavior tests",
202
+ "Review Java library partial initialization and cause without adding a Web framework"
203
+ ],
204
+ "should_not_trigger": [
205
+ "Only adjust CSS spacing without code contracts",
206
+ "Translate product copy without programming",
207
+ "Generate a poster illustration",
208
+ "Choose a restaurant for dinner",
209
+ "Change a database index without language code",
210
+ "Design framework component routing without language configuration",
211
+ "Rewrite a marketing headline",
212
+ "Produce an audio soundtrack",
213
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
214
+ ]
215
+ },
216
+ "cc-java-runtime": {
217
+ "should_trigger": [
218
+ "Review or fix JVM thread pool queue growth",
219
+ "Review or fix Java desktop thread contention",
220
+ "Review or fix bounded JFR evidence",
221
+ "Review or fix Java GC allocation pressure",
222
+ "Review or fix Java operation deadline overload",
223
+ "Review or fix Java controlled heap comparison",
224
+ "Review or fix Java thread dump sampling",
225
+ "Review or fix Java runtime recovery thresholds",
226
+ "Diagnose an owned Java executor that does not terminate after shutdown"
227
+ ],
228
+ "should_not_trigger": [
229
+ "Only adjust CSS spacing without code contracts",
230
+ "Translate product copy without programming",
231
+ "Generate a poster illustration",
232
+ "Choose a restaurant for dinner",
233
+ "Change a database index without language code",
234
+ "Design framework component routing without language configuration",
235
+ "Rewrite a marketing headline",
236
+ "Produce an audio soundtrack",
237
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
238
+ ]
239
+ },
240
+ "cc-native-memory-safety": {
241
+ "should_trigger": [
242
+ "Review or fix C C++ FFI allocator pairing",
243
+ "Review or fix Rust native borrowed buffer lifetime",
244
+ "Review or fix native callback after unload",
245
+ "Review or fix C partial initialization failure",
246
+ "Review or fix C++ cross-DLL exception boundary",
247
+ "Review or fix native repeated close behavior",
248
+ "Review or fix native concurrent destruction race",
249
+ "Review or fix address sanitizer reproduction evidence",
250
+ "Review callback completion before native plugin allocator release and unload"
251
+ ],
252
+ "should_not_trigger": [
253
+ "Only adjust CSS spacing without code contracts",
254
+ "Translate product copy without programming",
255
+ "Generate a poster illustration",
256
+ "Choose a restaurant for dinner",
257
+ "Change a database index without language code",
258
+ "Design framework component routing without language configuration",
259
+ "Rewrite a marketing headline",
260
+ "Produce an audio soundtrack",
261
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
262
+ ]
263
+ },
264
+ "cc-python-async": {
265
+ "should_trigger": [
266
+ "Review or fix Python task cancellation cleanup",
267
+ "Review or fix Python blocking client offloading",
268
+ "Review or fix Python async executor bounds",
269
+ "Review or fix Python async pool ownership",
270
+ "Review or fix Python TaskGroup error propagation",
271
+ "Review or fix Python coroutine shutdown deadline",
272
+ "Review or fix Python thread lifetime after cancellation",
273
+ "Review or fix Python async resource acquisition timeout",
274
+ "Review cancellation of an asyncio waiter while its blocking operation continues"
275
+ ],
276
+ "should_not_trigger": [
277
+ "Only adjust CSS spacing without code contracts",
278
+ "Translate product copy without programming",
279
+ "Generate a poster illustration",
280
+ "Choose a restaurant for dinner",
281
+ "Change a database index without language code",
282
+ "Design framework component routing without language configuration",
283
+ "Rewrite a marketing headline",
284
+ "Produce an audio soundtrack",
285
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
286
+ ]
287
+ },
288
+ "cc-python-project-standard": {
289
+ "should_trigger": [
290
+ "Review or fix Python CLI package layout",
291
+ "Review or fix pyproject environment conventions",
292
+ "Review or fix Python library type boundaries",
293
+ "Review or fix Python import-time side effects",
294
+ "Review or fix Python resource context manager",
295
+ "Review or fix existing Ruff mypy pytest scripts",
296
+ "Review or fix Python public package imports",
297
+ "Review or fix Python malformed input behavior",
298
+ "Remove Python library import-time external initialization and preserve cleanup"
299
+ ],
300
+ "should_not_trigger": [
301
+ "Only adjust CSS spacing without code contracts",
302
+ "Translate product copy without programming",
303
+ "Generate a poster illustration",
304
+ "Choose a restaurant for dinner",
305
+ "Change a database index without language code",
306
+ "Design framework component routing without language configuration",
307
+ "Rewrite a marketing headline",
308
+ "Produce an audio soundtrack",
309
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
310
+ ]
311
+ },
72
312
  "cc-refactoring-core": {
73
313
  "should_trigger": [
74
314
  "Keep observable behavior unchanged while restructuring this frontend module.",
@@ -91,6 +331,54 @@
91
331
  "Add a new responsive dashboard from this Figma design."
92
332
  ]
93
333
  },
334
+ "cc-rust-async": {
335
+ "should_trigger": [
336
+ "Review or fix Rust future cancellation safety",
337
+ "Review or fix Tokio partial write cancellation",
338
+ "Review or fix bounded Rust spawned tasks",
339
+ "Review or fix Rust JoinHandle shutdown ownership",
340
+ "Review or fix Rust blocking I/O boundary",
341
+ "Review or fix Rust async queue backpressure",
342
+ "Review or fix Rust async resource acquisition cancellation",
343
+ "Review or fix Rust async timeout recovery",
344
+ "Review cancellation and joining of existing Rust async tasks after a desktop window closes"
345
+ ],
346
+ "should_not_trigger": [
347
+ "Only adjust CSS spacing without code contracts",
348
+ "Translate product copy without programming",
349
+ "Generate a poster illustration",
350
+ "Choose a restaurant for dinner",
351
+ "Change a database index without language code",
352
+ "Design framework component routing without language configuration",
353
+ "Rewrite a marketing headline",
354
+ "Produce an audio soundtrack",
355
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
356
+ ]
357
+ },
358
+ "cc-rust-project-standard": {
359
+ "should_trigger": [
360
+ "Review or fix Cargo workspace crate boundaries",
361
+ "Review or fix Rust MSRV and edition configuration",
362
+ "Review or fix Rust library borrowing contract",
363
+ "Review or fix Result propagation in a Rust CLI",
364
+ "Review or fix public Rust module visibility",
365
+ "Review or fix Rust library release checks",
366
+ "Review or fix Rust adapter dependency direction",
367
+ "Review or fix Rust resource ownership transfer",
368
+ "Review Rust Result cause and partial acquisition cleanup in a desktop core"
369
+ ],
370
+ "should_not_trigger": [
371
+ "Only adjust CSS spacing without code contracts",
372
+ "Translate product copy without programming",
373
+ "Generate a poster illustration",
374
+ "Choose a restaurant for dinner",
375
+ "Change a database index without language code",
376
+ "Design framework component routing without language configuration",
377
+ "Rewrite a marketing headline",
378
+ "Produce an audio soundtrack",
379
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
380
+ ]
381
+ },
94
382
  "cc-source-driven-development": {
95
383
  "should_trigger": [
96
384
  "For this new version of Next.js API, please check the official documentation before making a decision.",
@@ -113,6 +401,30 @@
113
401
  "Review token storage security"
114
402
  ]
115
403
  },
404
+ "cc-tauri-project-standard": {
405
+ "should_trigger": [
406
+ "Review Tauri command input validation",
407
+ "Restrict a Tauri 2 capability to one window",
408
+ "Review Tauri app command permission generation",
409
+ "Define a Tauri invoke error contract",
410
+ "Own Tauri managed-state shutdown",
411
+ "Bound blocking work in a Tauri core",
412
+ "Verify Tauri target bundle resources",
413
+ "Review Tauri plugin and sidecar authority",
414
+ "Review actual Tauri2 selected capability and app-command permission boundaries"
415
+ ],
416
+ "should_not_trigger": [
417
+ "Organize an ordinary Rust library with no Tauri",
418
+ "Tune a Node HTTP server without a WebView",
419
+ "Only adjust a React CSS margin",
420
+ "Design a Go CLI flag parser",
421
+ "Edit an Electron preload script",
422
+ "Translate a poster caption",
423
+ "Review a SQL execution plan",
424
+ "Format unrelated Python files",
425
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
426
+ ]
427
+ },
116
428
  "cc-tdd-methodology": {
117
429
  "should_trigger": [
118
430
  "Implement this hook using TDD",
@@ -156,5 +468,29 @@
156
468
  "Write a CLI unit test",
157
469
  "Polish marketing copy"
158
470
  ]
471
+ },
472
+ "cc-typescript-project-standard": {
473
+ "should_trigger": [
474
+ "Review or fix TypeScript SDK declaration exports",
475
+ "Review or fix TypeScript CLI NodeNext resolution",
476
+ "Review or fix TypeScript desktop preload contract",
477
+ "Review or fix TypeScript unknown input narrowing",
478
+ "Review or fix TypeScript discriminated union API",
479
+ "Review or fix TypeScript monorepo project references",
480
+ "Review or fix TypeScript generic library constraints",
481
+ "Review or fix TypeScript consumer type tests",
482
+ "Review a TypeScript library unknown-input boundary before effects without changing its module mode"
483
+ ],
484
+ "should_not_trigger": [
485
+ "Only adjust CSS spacing without code contracts",
486
+ "Translate product copy without programming",
487
+ "Generate a poster illustration",
488
+ "Choose a restaurant for dinner",
489
+ "Change a database index without language code",
490
+ "Design framework component routing without language configuration",
491
+ "Rewrite a marketing headline",
492
+ "Produce an audio soundtrack",
493
+ "Only translate prose mentioning the technology without modifying or reviewing a program"
494
+ ]
159
495
  }
160
496
  }