leniu-dev 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 (670) hide show
  1. package/.claude/agents/auto-test-generator.md +315 -0
  2. package/.claude/agents/bug-analyzer.md +103 -0
  3. package/.claude/agents/code-reviewer.md +122 -0
  4. package/.claude/agents/code-scanner.md +145 -0
  5. package/.claude/agents/image-reader.md +154 -0
  6. package/.claude/agents/loki-runner.md +80 -0
  7. package/.claude/agents/mysql-runner.md +81 -0
  8. package/.claude/agents/project-manager.md +159 -0
  9. package/.claude/agents/requirements-analyzer.md +175 -0
  10. package/.claude/agents/task-fetcher.md +75 -0
  11. package/.claude/audio/completed.wav +0 -0
  12. package/.claude/commands/add-todo.md +255 -0
  13. package/.claude/commands/auto-test.md +252 -0
  14. package/.claude/commands/check.md +210 -0
  15. package/.claude/commands/crud.md +454 -0
  16. package/.claude/commands/dev.md +532 -0
  17. package/.claude/commands/init-config.md +154 -0
  18. package/.claude/commands/init-docs.md +681 -0
  19. package/.claude/commands/next.md +281 -0
  20. package/.claude/commands/opsx-apply.md +147 -0
  21. package/.claude/commands/opsx-archive.md +105 -0
  22. package/.claude/commands/opsx-bulk-archive.md +237 -0
  23. package/.claude/commands/opsx-continue.md +109 -0
  24. package/.claude/commands/opsx-explore.md +281 -0
  25. package/.claude/commands/opsx-ff.md +92 -0
  26. package/.claude/commands/opsx-new.md +65 -0
  27. package/.claude/commands/opsx-onboard.md +397 -0
  28. package/.claude/commands/opsx-sync.md +129 -0
  29. package/.claude/commands/opsx-verify.md +159 -0
  30. package/.claude/commands/progress.md +264 -0
  31. package/.claude/commands/release.md +109 -0
  32. package/.claude/commands/start.md +199 -0
  33. package/.claude/commands/sync.md +307 -0
  34. package/.claude/commands/update-status.md +428 -0
  35. package/.claude/docs/Mixin/344/275/277/347/224/250/346/214/207/345/215/227.md +299 -0
  36. package/.claude/docs/README.md +167 -0
  37. package/.claude/docs//345/211/215/347/253/257/345/274/200/345/217/221/346/214/207/345/215/227.md +599 -0
  38. package/.claude/docs//345/220/216/347/253/257/345/274/200/345/217/221/346/214/207/345/215/227.md +726 -0
  39. package/.claude/docs//345/267/245/344/275/234/346/265/201/345/274/200/345/217/221/346/214/207/345/215/227.md +714 -0
  40. package/.claude/docs//345/267/245/345/205/267/347/261/273/344/275/277/347/224/250/346/214/207/345/215/227.md +463 -0
  41. package/.claude/docs//346/225/260/346/215/256/345/272/223/350/256/276/350/256/241/350/247/204/350/214/203.md +390 -0
  42. package/.claude/docs//346/226/260/345/212/237/350/203/275/345/274/200/345/217/221/346/265/201/347/250/213/350/247/204/350/214/203.md +688 -0
  43. package/.claude/docs//346/226/260/351/241/271/347/233/256/345/274/200/345/217/221/346/265/201/347/250/213.md +365 -0
  44. package/.claude/docs//346/241/206/346/236/266/350/257/264/346/230/216.md +393 -0
  45. package/.claude/docs//350/267/257/347/224/261/351/205/215/347/275/256/346/214/207/345/215/227.md +246 -0
  46. package/.claude/framework-config.json +73 -0
  47. package/.claude/hooks/lib/notify.js +310 -0
  48. package/.claude/hooks/pre-tool-use.js +117 -0
  49. package/.claude/hooks/skill-forced-eval.js +161 -0
  50. package/.claude/hooks/stop.js +55 -0
  51. package/.claude/notify-config.json +9 -0
  52. package/.claude/settings.json +57 -0
  53. package/.claude/skills/add-skill/SKILL.md +488 -0
  54. package/.claude/skills/analyze-requirements/SKILL.md +112 -0
  55. package/.claude/skills/api-development/SKILL.md +315 -0
  56. package/.claude/skills/architecture-design/SKILL.md +152 -0
  57. package/.claude/skills/auto-test/SKILL.md +625 -0
  58. package/.claude/skills/auto-test/references/api-conventions.md +260 -0
  59. package/.claude/skills/backend-annotations/SKILL.md +248 -0
  60. package/.claude/skills/banana-image/CHANGELOG.md +37 -0
  61. package/.claude/skills/banana-image/README.md +146 -0
  62. package/.claude/skills/banana-image/SKILL.md +171 -0
  63. package/.claude/skills/banana-image/assets/logo.png +0 -0
  64. package/.claude/skills/banana-image/references/advanced-usage.md +189 -0
  65. package/.claude/skills/banana-image/scripts/apply_template.py +125 -0
  66. package/.claude/skills/banana-image/scripts/banana_image_exec.ts +412 -0
  67. package/.claude/skills/banana-image/scripts/batch_prep.py +82 -0
  68. package/.claude/skills/banana-image/scripts/package-lock.json +1437 -0
  69. package/.claude/skills/banana-image/scripts/package.json +18 -0
  70. package/.claude/skills/banana-image/scripts/requirements.txt +10 -0
  71. package/.claude/skills/banana-image/templates/poster.json +22 -0
  72. package/.claude/skills/banana-image/templates/product.json +17 -0
  73. package/.claude/skills/banana-image/templates/social.json +22 -0
  74. package/.claude/skills/banana-image/templates/thumbnail.json +17 -0
  75. package/.claude/skills/brainstorm/SKILL.md +216 -0
  76. package/.claude/skills/bug-detective/SKILL.md +295 -0
  77. package/.claude/skills/bug-detective/references/error-patterns.md +242 -0
  78. package/.claude/skills/chrome-cdp/SKILL.md +81 -0
  79. package/.claude/skills/chrome-cdp/scripts/cdp.mjs +838 -0
  80. package/.claude/skills/chrome-cdp/scripts/run-cdp.sh +7 -0
  81. package/.claude/skills/code-patterns/SKILL.md +163 -0
  82. package/.claude/skills/code-patterns/references/leniu-code-patterns.md +87 -0
  83. package/.claude/skills/codex-code-review/SKILL.md +327 -0
  84. package/.claude/skills/collaborating-with-codex/SKILL.md +180 -0
  85. package/.claude/skills/collaborating-with-codex/scripts/codex_bridge.py +275 -0
  86. package/.claude/skills/collaborating-with-gemini/SKILL.md +194 -0
  87. package/.claude/skills/collaborating-with-gemini/scripts/gemini_bridge.py +275 -0
  88. package/.claude/skills/crud-development/SKILL.md +328 -0
  89. package/.claude/skills/data-permission/SKILL.md +221 -0
  90. package/.claude/skills/data-permission/references/custom-data-scope.md +90 -0
  91. package/.claude/skills/database-ops/SKILL.md +210 -0
  92. package/.claude/skills/error-handler/SKILL.md +310 -0
  93. package/.claude/skills/file-oss-management/SKILL.md +260 -0
  94. package/.claude/skills/file-oss-management/references/entities.md +105 -0
  95. package/.claude/skills/file-oss-management/references/service-impl.md +104 -0
  96. package/.claude/skills/fix-bug/SKILL.md +269 -0
  97. package/.claude/skills/git-workflow/SKILL.md +179 -0
  98. package/.claude/skills/jenkins-deploy/SKILL.md +134 -0
  99. package/.claude/skills/jenkins-deploy/assets/env_param.template.json +51 -0
  100. package/.claude/skills/jenkins-deploy/assets/jk_build.py +400 -0
  101. package/.claude/skills/json-serialization/SKILL.md +341 -0
  102. package/.claude/skills/lanhu-design/SKILL.md +99 -0
  103. package/.claude/skills/leniu-api-development/SKILL.md +319 -0
  104. package/.claude/skills/leniu-api-development/references/real-examples.md +273 -0
  105. package/.claude/skills/leniu-architecture-design/SKILL.md +383 -0
  106. package/.claude/skills/leniu-backend-annotations/SKILL.md +277 -0
  107. package/.claude/skills/leniu-brainstorm/SKILL.md +242 -0
  108. package/.claude/skills/leniu-brainstorm/references/business-scenarios.md +162 -0
  109. package/.claude/skills/leniu-code-patterns/SKILL.md +411 -0
  110. package/.claude/skills/leniu-crud-development/SKILL.md +404 -0
  111. package/.claude/skills/leniu-crud-development/references/templates.md +597 -0
  112. package/.claude/skills/leniu-customization-location/SKILL.md +410 -0
  113. package/.claude/skills/leniu-data-permission/SKILL.md +341 -0
  114. package/.claude/skills/leniu-database-ops/SKILL.md +426 -0
  115. package/.claude/skills/leniu-error-handler/SKILL.md +462 -0
  116. package/.claude/skills/leniu-java-concurrent/SKILL.md +400 -0
  117. package/.claude/skills/leniu-java-entity/SKILL.md +237 -0
  118. package/.claude/skills/leniu-java-entity/references/templates.md +237 -0
  119. package/.claude/skills/leniu-java-logging/SKILL.md +229 -0
  120. package/.claude/skills/leniu-java-logging/references/data-mask.md +46 -0
  121. package/.claude/skills/leniu-java-logging/references/logging-scenarios.md +113 -0
  122. package/.claude/skills/leniu-java-mq/SKILL.md +338 -0
  123. package/.claude/skills/leniu-java-mybatis/SKILL.md +267 -0
  124. package/.claude/skills/leniu-java-mybatis/references/report-mapper.md +88 -0
  125. package/.claude/skills/leniu-java-task/SKILL.md +367 -0
  126. package/.claude/skills/leniu-marketing-scenario/SKILL.md +448 -0
  127. package/.claude/skills/leniu-marketing-scenario/references/pay-meal-rules.md +197 -0
  128. package/.claude/skills/leniu-marketing-scenario/references/price-rules.md +286 -0
  129. package/.claude/skills/leniu-marketing-scenario/references/recharge-rules.md +188 -0
  130. package/.claude/skills/leniu-redis-cache/SKILL.md +331 -0
  131. package/.claude/skills/leniu-report-scenario/SKILL.md +508 -0
  132. package/.claude/skills/leniu-report-scenario/references/amount-handling.md +448 -0
  133. package/.claude/skills/leniu-report-scenario/references/analysis-module.md +64 -0
  134. package/.claude/skills/leniu-report-scenario/references/customization-table-fields.md +93 -0
  135. package/.claude/skills/leniu-report-scenario/references/customization.md +356 -0
  136. package/.claude/skills/leniu-report-scenario/references/data-permission.md +182 -0
  137. package/.claude/skills/leniu-report-scenario/references/export.md +553 -0
  138. package/.claude/skills/leniu-report-scenario/references/mealtime.md +197 -0
  139. package/.claude/skills/leniu-report-scenario/references/query-param.md +274 -0
  140. package/.claude/skills/leniu-report-scenario/references/report-tables.md +162 -0
  141. package/.claude/skills/leniu-report-scenario/references/standard-customization.md +112 -0
  142. package/.claude/skills/leniu-report-scenario/references/standard-table-fields.md +113 -0
  143. package/.claude/skills/leniu-report-scenario/references/total-line.md +179 -0
  144. package/.claude/skills/leniu-security-guard/SKILL.md +306 -0
  145. package/.claude/skills/leniu-utils-toolkit/SKILL.md +380 -0
  146. package/.claude/skills/loki-log-query/SKILL.md +430 -0
  147. package/.claude/skills/mysql-debug/SKILL.md +406 -0
  148. package/.claude/skills/performance-doctor/SKILL.md +297 -0
  149. package/.claude/skills/project-navigator/SKILL.md +211 -0
  150. package/.claude/skills/redis-cache/SKILL.md +282 -0
  151. package/.claude/skills/redis-cache/references/listeners.md +23 -0
  152. package/.claude/skills/scheduled-jobs/SKILL.md +277 -0
  153. package/.claude/skills/security-guard/SKILL.md +245 -0
  154. package/.claude/skills/security-guard/references/encrypt-config.md +103 -0
  155. package/.claude/skills/security-guard/references/sensitive-strategies.md +42 -0
  156. package/.claude/skills/sms-mail/SKILL.md +346 -0
  157. package/.claude/skills/sms-mail/references/mail-config.md +88 -0
  158. package/.claude/skills/sms-mail/references/sms-config.md +74 -0
  159. package/.claude/skills/social-login/SKILL.md +328 -0
  160. package/.claude/skills/social-login/references/provider-configs.md +118 -0
  161. package/.claude/skills/store-pc/SKILL.md +366 -0
  162. package/.claude/skills/sync-back-merge/SKILL.md +66 -0
  163. package/.claude/skills/task-tracker/SKILL.md +307 -0
  164. package/.claude/skills/tech-decision/SKILL.md +393 -0
  165. package/.claude/skills/tenant-management/SKILL.md +272 -0
  166. package/.claude/skills/tenant-management/references/tenant-scenarios.md +91 -0
  167. package/.claude/skills/test-development/SKILL.md +301 -0
  168. package/.claude/skills/test-development/references/parameterized-examples.md +119 -0
  169. package/.claude/skills/ui-pc/SKILL.md +438 -0
  170. package/.claude/skills/utils-toolkit/SKILL.md +354 -0
  171. package/.claude/skills/utils-toolkit/references/redis-utils-api.md +56 -0
  172. package/.claude/skills/websocket-sse/SKILL.md +350 -0
  173. package/.claude/skills/workflow-engine/SKILL.md +249 -0
  174. package/.claude/skills/yunxiao-task-management/SKILL.md +401 -0
  175. package/.claude/skills/yunxiao-task-management/templates//346/217/220/346/265/213/345/215/225/346/250/241/346/235/277.html +17 -0
  176. package/.claude/templates/env-config.md +27 -0
  177. package/.claude/templates//345/276/205/345/212/236/346/270/205/345/215/225/346/250/241/346/235/277.md +56 -0
  178. package/.claude/templates//351/234/200/346/261/202/346/226/207/346/241/243/346/250/241/346/235/277.md +85 -0
  179. package/.claude/templates//351/241/271/347/233/256/347/212/266/346/200/201/346/250/241/346/235/277.md +43 -0
  180. package/.codex/skills/add-skill/SKILL.md +488 -0
  181. package/.codex/skills/add-todo/SKILL.md +269 -0
  182. package/.codex/skills/analyze-requirements/SKILL.md +112 -0
  183. package/.codex/skills/api-development/SKILL.md +315 -0
  184. package/.codex/skills/architecture-design/SKILL.md +152 -0
  185. package/.codex/skills/auto-test/SKILL.md +453 -0
  186. package/.codex/skills/auto-test/references/api-conventions.md +260 -0
  187. package/.codex/skills/backend-annotations/SKILL.md +248 -0
  188. package/.codex/skills/banana-image/CHANGELOG.md +37 -0
  189. package/.codex/skills/banana-image/README.md +146 -0
  190. package/.codex/skills/banana-image/SKILL.md +171 -0
  191. package/.codex/skills/banana-image/assets/logo.png +0 -0
  192. package/.codex/skills/banana-image/references/advanced-usage.md +189 -0
  193. package/.codex/skills/banana-image/scripts/apply_template.py +125 -0
  194. package/.codex/skills/banana-image/scripts/banana_image_exec.ts +412 -0
  195. package/.codex/skills/banana-image/scripts/batch_prep.py +82 -0
  196. package/.codex/skills/banana-image/scripts/package-lock.json +1437 -0
  197. package/.codex/skills/banana-image/scripts/package.json +18 -0
  198. package/.codex/skills/banana-image/scripts/requirements.txt +10 -0
  199. package/.codex/skills/banana-image/templates/poster.json +22 -0
  200. package/.codex/skills/banana-image/templates/product.json +17 -0
  201. package/.codex/skills/banana-image/templates/social.json +22 -0
  202. package/.codex/skills/banana-image/templates/thumbnail.json +17 -0
  203. package/.codex/skills/brainstorm/SKILL.md +216 -0
  204. package/.codex/skills/bug-detective/SKILL.md +295 -0
  205. package/.codex/skills/bug-detective/references/error-patterns.md +242 -0
  206. package/.codex/skills/check/SKILL.md +367 -0
  207. package/.codex/skills/code-patterns/SKILL.md +163 -0
  208. package/.codex/skills/code-patterns/references/leniu-code-patterns.md +87 -0
  209. package/.codex/skills/collaborating-with-codex/SKILL.md +180 -0
  210. package/.codex/skills/collaborating-with-codex/scripts/codex_bridge.py +275 -0
  211. package/.codex/skills/collaborating-with-gemini/SKILL.md +194 -0
  212. package/.codex/skills/collaborating-with-gemini/scripts/gemini_bridge.py +275 -0
  213. package/.codex/skills/crud/SKILL.md +265 -0
  214. package/.codex/skills/crud-development/SKILL.md +328 -0
  215. package/.codex/skills/data-permission/SKILL.md +221 -0
  216. package/.codex/skills/data-permission/references/custom-data-scope.md +90 -0
  217. package/.codex/skills/database-ops/SKILL.md +210 -0
  218. package/.codex/skills/dev/SKILL.md +187 -0
  219. package/.codex/skills/error-handler/SKILL.md +310 -0
  220. package/.codex/skills/file-oss-management/SKILL.md +260 -0
  221. package/.codex/skills/file-oss-management/references/entities.md +105 -0
  222. package/.codex/skills/file-oss-management/references/service-impl.md +104 -0
  223. package/.codex/skills/fix-bug/SKILL.md +269 -0
  224. package/.codex/skills/git-workflow/SKILL.md +179 -0
  225. package/.codex/skills/init-docs/SKILL.md +194 -0
  226. package/.codex/skills/jenkins-deploy/SKILL.md +134 -0
  227. package/.codex/skills/json-serialization/SKILL.md +341 -0
  228. package/.codex/skills/lanhu-design/SKILL.md +99 -0
  229. package/.codex/skills/leniu-api-development/SKILL.md +319 -0
  230. package/.codex/skills/leniu-api-development/references/real-examples.md +273 -0
  231. package/.codex/skills/leniu-architecture-design/SKILL.md +383 -0
  232. package/.codex/skills/leniu-backend-annotations/SKILL.md +277 -0
  233. package/.codex/skills/leniu-brainstorm/SKILL.md +242 -0
  234. package/.codex/skills/leniu-brainstorm/references/business-scenarios.md +162 -0
  235. package/.codex/skills/leniu-code-patterns/SKILL.md +411 -0
  236. package/.codex/skills/leniu-crud-development/SKILL.md +404 -0
  237. package/.codex/skills/leniu-crud-development/references/templates.md +597 -0
  238. package/.codex/skills/leniu-customization-location/SKILL.md +410 -0
  239. package/.codex/skills/leniu-data-permission/SKILL.md +341 -0
  240. package/.codex/skills/leniu-database-ops/SKILL.md +426 -0
  241. package/.codex/skills/leniu-error-handler/SKILL.md +462 -0
  242. package/.codex/skills/leniu-java-amount-handling/SKILL.md +461 -0
  243. package/.codex/skills/leniu-java-code-style/SKILL.md +510 -0
  244. package/.codex/skills/leniu-java-concurrent/SKILL.md +400 -0
  245. package/.codex/skills/leniu-java-entity/SKILL.md +237 -0
  246. package/.codex/skills/leniu-java-entity/references/templates.md +237 -0
  247. package/.codex/skills/leniu-java-logging/SKILL.md +229 -0
  248. package/.codex/skills/leniu-java-logging/references/data-mask.md +46 -0
  249. package/.codex/skills/leniu-java-logging/references/logging-scenarios.md +113 -0
  250. package/.codex/skills/leniu-java-mq/SKILL.md +338 -0
  251. package/.codex/skills/leniu-java-mybatis/SKILL.md +267 -0
  252. package/.codex/skills/leniu-java-mybatis/references/report-mapper.md +88 -0
  253. package/.codex/skills/leniu-java-task/SKILL.md +367 -0
  254. package/.codex/skills/leniu-marketing-scenario/SKILL.md +448 -0
  255. package/.codex/skills/leniu-marketing-scenario/references/pay-meal-rules.md +197 -0
  256. package/.codex/skills/leniu-marketing-scenario/references/price-rules.md +286 -0
  257. package/.codex/skills/leniu-marketing-scenario/references/recharge-rules.md +188 -0
  258. package/.codex/skills/leniu-redis-cache/SKILL.md +331 -0
  259. package/.codex/skills/leniu-report-scenario/SKILL.md +508 -0
  260. package/.codex/skills/leniu-report-scenario/references/amount-handling.md +448 -0
  261. package/.codex/skills/leniu-report-scenario/references/analysis-module.md +64 -0
  262. package/.codex/skills/leniu-report-scenario/references/customization-table-fields.md +93 -0
  263. package/.codex/skills/leniu-report-scenario/references/customization.md +356 -0
  264. package/.codex/skills/leniu-report-scenario/references/data-permission.md +182 -0
  265. package/.codex/skills/leniu-report-scenario/references/export.md +553 -0
  266. package/.codex/skills/leniu-report-scenario/references/mealtime.md +197 -0
  267. package/.codex/skills/leniu-report-scenario/references/query-param.md +274 -0
  268. package/.codex/skills/leniu-report-scenario/references/report-tables.md +162 -0
  269. package/.codex/skills/leniu-report-scenario/references/standard-customization.md +112 -0
  270. package/.codex/skills/leniu-report-scenario/references/standard-table-fields.md +113 -0
  271. package/.codex/skills/leniu-report-scenario/references/total-line.md +179 -0
  272. package/.codex/skills/leniu-security-guard/SKILL.md +306 -0
  273. package/.codex/skills/leniu-utils-toolkit/SKILL.md +380 -0
  274. package/.codex/skills/loki-log-query/SKILL.md +430 -0
  275. package/.codex/skills/loki-log-query/environments.json +45 -0
  276. package/.codex/skills/mysql-debug/SKILL.md +406 -0
  277. package/.codex/skills/next/SKILL.md +137 -0
  278. package/.codex/skills/openspec-apply-change/SKILL.md +165 -0
  279. package/.codex/skills/openspec-archive-change/SKILL.md +122 -0
  280. package/.codex/skills/openspec-bulk-archive-change/SKILL.md +254 -0
  281. package/.codex/skills/openspec-continue-change/SKILL.md +126 -0
  282. package/.codex/skills/openspec-explore/SKILL.md +299 -0
  283. package/.codex/skills/openspec-ff-change/SKILL.md +109 -0
  284. package/.codex/skills/openspec-new-change/SKILL.md +82 -0
  285. package/.codex/skills/openspec-onboard/SKILL.md +414 -0
  286. package/.codex/skills/openspec-sync-specs/SKILL.md +146 -0
  287. package/.codex/skills/openspec-verify-change/SKILL.md +176 -0
  288. package/.codex/skills/performance-doctor/SKILL.md +297 -0
  289. package/.codex/skills/progress/SKILL.md +193 -0
  290. package/.codex/skills/project-navigator/SKILL.md +211 -0
  291. package/.codex/skills/redis-cache/SKILL.md +282 -0
  292. package/.codex/skills/redis-cache/references/listeners.md +23 -0
  293. package/.codex/skills/scheduled-jobs/SKILL.md +277 -0
  294. package/.codex/skills/security-guard/SKILL.md +245 -0
  295. package/.codex/skills/security-guard/references/encrypt-config.md +103 -0
  296. package/.codex/skills/security-guard/references/sensitive-strategies.md +42 -0
  297. package/.codex/skills/skill-creator/LICENSE.txt +202 -0
  298. package/.codex/skills/skill-creator/SKILL.md +479 -0
  299. package/.codex/skills/skill-creator/agents/analyzer.md +274 -0
  300. package/.codex/skills/skill-creator/agents/comparator.md +202 -0
  301. package/.codex/skills/skill-creator/agents/grader.md +223 -0
  302. package/.codex/skills/skill-creator/assets/eval_review.html +146 -0
  303. package/.codex/skills/skill-creator/eval-viewer/generate_review.py +471 -0
  304. package/.codex/skills/skill-creator/eval-viewer/viewer.html +1325 -0
  305. package/.codex/skills/skill-creator/references/schemas.md +430 -0
  306. package/.codex/skills/skill-creator/scripts/__init__.py +0 -0
  307. package/.codex/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
  308. package/.codex/skills/skill-creator/scripts/generate_report.py +326 -0
  309. package/.codex/skills/skill-creator/scripts/improve_description.py +248 -0
  310. package/.codex/skills/skill-creator/scripts/package_skill.py +136 -0
  311. package/.codex/skills/skill-creator/scripts/quick_validate.py +103 -0
  312. package/.codex/skills/skill-creator/scripts/run_eval.py +310 -0
  313. package/.codex/skills/skill-creator/scripts/run_loop.py +332 -0
  314. package/.codex/skills/skill-creator/scripts/utils.py +47 -0
  315. package/.codex/skills/sms-mail/SKILL.md +346 -0
  316. package/.codex/skills/sms-mail/references/mail-config.md +88 -0
  317. package/.codex/skills/sms-mail/references/sms-config.md +74 -0
  318. package/.codex/skills/social-login/SKILL.md +328 -0
  319. package/.codex/skills/social-login/references/provider-configs.md +118 -0
  320. package/.codex/skills/start/SKILL.md +154 -0
  321. package/.codex/skills/store-pc/SKILL.md +366 -0
  322. package/.codex/skills/sync/SKILL.md +149 -0
  323. package/.codex/skills/sync-back-merge/SKILL.md +66 -0
  324. package/.codex/skills/task-tracker/SKILL.md +307 -0
  325. package/.codex/skills/tech-decision/SKILL.md +393 -0
  326. package/.codex/skills/tenant-management/SKILL.md +272 -0
  327. package/.codex/skills/tenant-management/references/tenant-scenarios.md +91 -0
  328. package/.codex/skills/test-development/SKILL.md +301 -0
  329. package/.codex/skills/test-development/references/parameterized-examples.md +119 -0
  330. package/.codex/skills/ui-pc/SKILL.md +438 -0
  331. package/.codex/skills/update-status/SKILL.md +159 -0
  332. package/.codex/skills/utils-toolkit/SKILL.md +354 -0
  333. package/.codex/skills/utils-toolkit/references/redis-utils-api.md +56 -0
  334. package/.codex/skills/websocket-sse/SKILL.md +350 -0
  335. package/.codex/skills/workflow-engine/SKILL.md +249 -0
  336. package/.codex/skills/yunxiao-task-management/SKILL.md +401 -0
  337. package/.codex/skills/yunxiao-task-management/templates//346/217/220/346/265/213/345/215/225/346/250/241/346/235/277.html +17 -0
  338. package/.cursor/agents/bug-analyzer.md +102 -0
  339. package/.cursor/agents/code-reviewer.md +122 -0
  340. package/.cursor/agents/code-scanner.md +145 -0
  341. package/.cursor/agents/image-reader.md +154 -0
  342. package/.cursor/agents/loki-runner.md +80 -0
  343. package/.cursor/agents/mysql-runner.md +81 -0
  344. package/.cursor/agents/project-manager.md +159 -0
  345. package/.cursor/agents/requirements-analyzer.md +141 -0
  346. package/.cursor/agents/task-fetcher.md +75 -0
  347. package/.cursor/audio/completed.wav +0 -0
  348. package/.cursor/commands/opsx-apply.md +152 -0
  349. package/.cursor/commands/opsx-archive.md +157 -0
  350. package/.cursor/commands/opsx-bulk-archive.md +242 -0
  351. package/.cursor/commands/opsx-continue.md +114 -0
  352. package/.cursor/commands/opsx-explore.md +174 -0
  353. package/.cursor/commands/opsx-ff.md +94 -0
  354. package/.cursor/commands/opsx-new.md +69 -0
  355. package/.cursor/commands/opsx-onboard.md +525 -0
  356. package/.cursor/commands/opsx-sync.md +134 -0
  357. package/.cursor/commands/opsx-verify.md +164 -0
  358. package/.cursor/hooks/cursor-pre-tool-use.js +122 -0
  359. package/.cursor/hooks/cursor-skill-eval.js +466 -0
  360. package/.cursor/hooks/lib/notify.js +310 -0
  361. package/.cursor/hooks/stop.js +55 -0
  362. package/.cursor/hooks.json +23 -0
  363. package/.cursor/mcp.json +22 -0
  364. package/.cursor/rules/skill-activation.mdc +99 -0
  365. package/.cursor/skills/add-skill/SKILL.md +488 -0
  366. package/.cursor/skills/analyze-requirements/SKILL.md +112 -0
  367. package/.cursor/skills/api-development/SKILL.md +315 -0
  368. package/.cursor/skills/architecture-design/SKILL.md +152 -0
  369. package/.cursor/skills/auto-test/SKILL.md +453 -0
  370. package/.cursor/skills/auto-test/references/api-conventions.md +260 -0
  371. package/.cursor/skills/backend-annotations/SKILL.md +248 -0
  372. package/.cursor/skills/banana-image/CHANGELOG.md +37 -0
  373. package/.cursor/skills/banana-image/README.md +146 -0
  374. package/.cursor/skills/banana-image/SKILL.md +171 -0
  375. package/.cursor/skills/banana-image/assets/logo.png +0 -0
  376. package/.cursor/skills/banana-image/references/advanced-usage.md +189 -0
  377. package/.cursor/skills/banana-image/scripts/apply_template.py +125 -0
  378. package/.cursor/skills/banana-image/scripts/banana_image_exec.ts +412 -0
  379. package/.cursor/skills/banana-image/scripts/batch_prep.py +82 -0
  380. package/.cursor/skills/banana-image/scripts/package-lock.json +1437 -0
  381. package/.cursor/skills/banana-image/scripts/package.json +18 -0
  382. package/.cursor/skills/banana-image/scripts/requirements.txt +10 -0
  383. package/.cursor/skills/banana-image/templates/poster.json +22 -0
  384. package/.cursor/skills/banana-image/templates/product.json +17 -0
  385. package/.cursor/skills/banana-image/templates/social.json +22 -0
  386. package/.cursor/skills/banana-image/templates/thumbnail.json +17 -0
  387. package/.cursor/skills/brainstorm/SKILL.md +216 -0
  388. package/.cursor/skills/bug-detective/SKILL.md +295 -0
  389. package/.cursor/skills/bug-detective/references/error-patterns.md +242 -0
  390. package/.cursor/skills/code-patterns/SKILL.md +163 -0
  391. package/.cursor/skills/code-patterns/references/leniu-code-patterns.md +87 -0
  392. package/.cursor/skills/collaborating-with-codex/SKILL.md +180 -0
  393. package/.cursor/skills/collaborating-with-codex/scripts/codex_bridge.py +275 -0
  394. package/.cursor/skills/collaborating-with-gemini/SKILL.md +194 -0
  395. package/.cursor/skills/collaborating-with-gemini/scripts/gemini_bridge.py +275 -0
  396. package/.cursor/skills/crud-development/SKILL.md +328 -0
  397. package/.cursor/skills/data-permission/SKILL.md +221 -0
  398. package/.cursor/skills/data-permission/references/custom-data-scope.md +90 -0
  399. package/.cursor/skills/database-ops/SKILL.md +210 -0
  400. package/.cursor/skills/error-handler/SKILL.md +310 -0
  401. package/.cursor/skills/file-oss-management/SKILL.md +260 -0
  402. package/.cursor/skills/file-oss-management/references/entities.md +105 -0
  403. package/.cursor/skills/file-oss-management/references/service-impl.md +104 -0
  404. package/.cursor/skills/fix-bug/SKILL.md +269 -0
  405. package/.cursor/skills/git-workflow/SKILL.md +179 -0
  406. package/.cursor/skills/jenkins-deploy/SKILL.md +134 -0
  407. package/.cursor/skills/json-serialization/SKILL.md +341 -0
  408. package/.cursor/skills/lanhu-design/SKILL.md +99 -0
  409. package/.cursor/skills/leniu-api-development/SKILL.md +319 -0
  410. package/.cursor/skills/leniu-api-development/references/real-examples.md +273 -0
  411. package/.cursor/skills/leniu-architecture-design/SKILL.md +383 -0
  412. package/.cursor/skills/leniu-backend-annotations/SKILL.md +277 -0
  413. package/.cursor/skills/leniu-brainstorm/SKILL.md +242 -0
  414. package/.cursor/skills/leniu-brainstorm/references/business-scenarios.md +162 -0
  415. package/.cursor/skills/leniu-code-patterns/SKILL.md +411 -0
  416. package/.cursor/skills/leniu-crud-development/SKILL.md +404 -0
  417. package/.cursor/skills/leniu-crud-development/references/templates.md +597 -0
  418. package/.cursor/skills/leniu-customization-location/SKILL.md +410 -0
  419. package/.cursor/skills/leniu-data-permission/SKILL.md +341 -0
  420. package/.cursor/skills/leniu-database-ops/SKILL.md +426 -0
  421. package/.cursor/skills/leniu-error-handler/SKILL.md +462 -0
  422. package/.cursor/skills/leniu-java-amount-handling/SKILL.md +461 -0
  423. package/.cursor/skills/leniu-java-code-style/SKILL.md +510 -0
  424. package/.cursor/skills/leniu-java-concurrent/SKILL.md +400 -0
  425. package/.cursor/skills/leniu-java-entity/SKILL.md +237 -0
  426. package/.cursor/skills/leniu-java-entity/references/templates.md +237 -0
  427. package/.cursor/skills/leniu-java-logging/SKILL.md +229 -0
  428. package/.cursor/skills/leniu-java-logging/references/data-mask.md +46 -0
  429. package/.cursor/skills/leniu-java-logging/references/logging-scenarios.md +113 -0
  430. package/.cursor/skills/leniu-java-mq/SKILL.md +338 -0
  431. package/.cursor/skills/leniu-java-mybatis/SKILL.md +267 -0
  432. package/.cursor/skills/leniu-java-mybatis/references/report-mapper.md +88 -0
  433. package/.cursor/skills/leniu-java-task/SKILL.md +367 -0
  434. package/.cursor/skills/leniu-marketing-scenario/SKILL.md +448 -0
  435. package/.cursor/skills/leniu-marketing-scenario/references/pay-meal-rules.md +197 -0
  436. package/.cursor/skills/leniu-marketing-scenario/references/price-rules.md +286 -0
  437. package/.cursor/skills/leniu-marketing-scenario/references/recharge-rules.md +188 -0
  438. package/.cursor/skills/leniu-redis-cache/SKILL.md +331 -0
  439. package/.cursor/skills/leniu-report-scenario/SKILL.md +508 -0
  440. package/.cursor/skills/leniu-report-scenario/references/amount-handling.md +448 -0
  441. package/.cursor/skills/leniu-report-scenario/references/analysis-module.md +64 -0
  442. package/.cursor/skills/leniu-report-scenario/references/customization-table-fields.md +93 -0
  443. package/.cursor/skills/leniu-report-scenario/references/customization.md +356 -0
  444. package/.cursor/skills/leniu-report-scenario/references/data-permission.md +182 -0
  445. package/.cursor/skills/leniu-report-scenario/references/export.md +553 -0
  446. package/.cursor/skills/leniu-report-scenario/references/mealtime.md +197 -0
  447. package/.cursor/skills/leniu-report-scenario/references/query-param.md +274 -0
  448. package/.cursor/skills/leniu-report-scenario/references/report-tables.md +162 -0
  449. package/.cursor/skills/leniu-report-scenario/references/standard-customization.md +112 -0
  450. package/.cursor/skills/leniu-report-scenario/references/standard-table-fields.md +113 -0
  451. package/.cursor/skills/leniu-report-scenario/references/total-line.md +179 -0
  452. package/.cursor/skills/leniu-security-guard/SKILL.md +306 -0
  453. package/.cursor/skills/leniu-utils-toolkit/SKILL.md +380 -0
  454. package/.cursor/skills/loki-log-query/SKILL.md +430 -0
  455. package/.cursor/skills/loki-log-query/environments.json +45 -0
  456. package/.cursor/skills/mysql-debug/SKILL.md +406 -0
  457. package/.cursor/skills/openspec-apply-change/SKILL.md +165 -0
  458. package/.cursor/skills/openspec-archive-change/SKILL.md +122 -0
  459. package/.cursor/skills/openspec-bulk-archive-change/SKILL.md +254 -0
  460. package/.cursor/skills/openspec-continue-change/SKILL.md +126 -0
  461. package/.cursor/skills/openspec-explore/SKILL.md +299 -0
  462. package/.cursor/skills/openspec-ff-change/SKILL.md +109 -0
  463. package/.cursor/skills/openspec-new-change/SKILL.md +82 -0
  464. package/.cursor/skills/openspec-onboard/SKILL.md +414 -0
  465. package/.cursor/skills/openspec-sync-specs/SKILL.md +146 -0
  466. package/.cursor/skills/openspec-verify-change/SKILL.md +176 -0
  467. package/.cursor/skills/performance-doctor/SKILL.md +297 -0
  468. package/.cursor/skills/project-navigator/SKILL.md +211 -0
  469. package/.cursor/skills/redis-cache/SKILL.md +282 -0
  470. package/.cursor/skills/redis-cache/references/listeners.md +23 -0
  471. package/.cursor/skills/scheduled-jobs/SKILL.md +277 -0
  472. package/.cursor/skills/security-guard/SKILL.md +245 -0
  473. package/.cursor/skills/security-guard/references/encrypt-config.md +103 -0
  474. package/.cursor/skills/security-guard/references/sensitive-strategies.md +42 -0
  475. package/.cursor/skills/skill-creator/LICENSE.txt +202 -0
  476. package/.cursor/skills/skill-creator/SKILL.md +479 -0
  477. package/.cursor/skills/skill-creator/agents/analyzer.md +274 -0
  478. package/.cursor/skills/skill-creator/agents/comparator.md +202 -0
  479. package/.cursor/skills/skill-creator/agents/grader.md +223 -0
  480. package/.cursor/skills/skill-creator/assets/eval_review.html +146 -0
  481. package/.cursor/skills/skill-creator/eval-viewer/generate_review.py +471 -0
  482. package/.cursor/skills/skill-creator/eval-viewer/viewer.html +1325 -0
  483. package/.cursor/skills/skill-creator/references/schemas.md +430 -0
  484. package/.cursor/skills/skill-creator/scripts/__init__.py +0 -0
  485. package/.cursor/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
  486. package/.cursor/skills/skill-creator/scripts/generate_report.py +326 -0
  487. package/.cursor/skills/skill-creator/scripts/improve_description.py +248 -0
  488. package/.cursor/skills/skill-creator/scripts/package_skill.py +136 -0
  489. package/.cursor/skills/skill-creator/scripts/quick_validate.py +103 -0
  490. package/.cursor/skills/skill-creator/scripts/run_eval.py +310 -0
  491. package/.cursor/skills/skill-creator/scripts/run_loop.py +332 -0
  492. package/.cursor/skills/skill-creator/scripts/utils.py +47 -0
  493. package/.cursor/skills/sms-mail/SKILL.md +346 -0
  494. package/.cursor/skills/sms-mail/references/mail-config.md +88 -0
  495. package/.cursor/skills/sms-mail/references/sms-config.md +74 -0
  496. package/.cursor/skills/social-login/SKILL.md +328 -0
  497. package/.cursor/skills/social-login/references/provider-configs.md +118 -0
  498. package/.cursor/skills/store-pc/SKILL.md +366 -0
  499. package/.cursor/skills/sync-back-merge/SKILL.md +66 -0
  500. package/.cursor/skills/task-tracker/SKILL.md +307 -0
  501. package/.cursor/skills/tech-decision/SKILL.md +393 -0
  502. package/.cursor/skills/tenant-management/SKILL.md +272 -0
  503. package/.cursor/skills/tenant-management/references/tenant-scenarios.md +91 -0
  504. package/.cursor/skills/test-development/SKILL.md +301 -0
  505. package/.cursor/skills/test-development/references/parameterized-examples.md +119 -0
  506. package/.cursor/skills/ui-pc/SKILL.md +438 -0
  507. package/.cursor/skills/utils-toolkit/SKILL.md +354 -0
  508. package/.cursor/skills/utils-toolkit/references/redis-utils-api.md +56 -0
  509. package/.cursor/skills/websocket-sse/SKILL.md +350 -0
  510. package/.cursor/skills/workflow-engine/SKILL.md +249 -0
  511. package/.cursor/skills/yunxiao-task-management/SKILL.md +401 -0
  512. package/.cursor/skills/yunxiao-task-management/templates//346/217/220/346/265/213/345/215/225/346/250/241/346/235/277.html +17 -0
  513. package/.cursor/templates/env-config.md +27 -0
  514. package/AGENTS.md +275 -0
  515. package/CLAUDE.md +285 -0
  516. package/README.md +104 -0
  517. package/bin/index.js +3069 -0
  518. package/init.sh +178 -0
  519. package/package.json +40 -0
  520. package/scripts/build-skills.js +180 -0
  521. package/src/platform-map.json +100 -0
  522. package/src/skills/add-skill/SKILL.md +488 -0
  523. package/src/skills/add-todo/SKILL.md +269 -0
  524. package/src/skills/analyze-requirements/SKILL.md +112 -0
  525. package/src/skills/api-development/SKILL.md +315 -0
  526. package/src/skills/architecture-design/SKILL.md +152 -0
  527. package/src/skills/backend-annotations/SKILL.md +248 -0
  528. package/src/skills/banana-image/CHANGELOG.md +37 -0
  529. package/src/skills/banana-image/README.md +146 -0
  530. package/src/skills/banana-image/SKILL.md +171 -0
  531. package/src/skills/banana-image/assets/logo.png +0 -0
  532. package/src/skills/banana-image/references/advanced-usage.md +189 -0
  533. package/src/skills/banana-image/scripts/apply_template.py +125 -0
  534. package/src/skills/banana-image/scripts/banana_image_exec.ts +412 -0
  535. package/src/skills/banana-image/scripts/batch_prep.py +82 -0
  536. package/src/skills/banana-image/scripts/package-lock.json +1437 -0
  537. package/src/skills/banana-image/scripts/package.json +18 -0
  538. package/src/skills/banana-image/scripts/requirements.txt +10 -0
  539. package/src/skills/banana-image/templates/poster.json +22 -0
  540. package/src/skills/banana-image/templates/product.json +17 -0
  541. package/src/skills/banana-image/templates/social.json +22 -0
  542. package/src/skills/banana-image/templates/thumbnail.json +17 -0
  543. package/src/skills/brainstorm/SKILL.md +216 -0
  544. package/src/skills/bug-detective/SKILL.md +295 -0
  545. package/src/skills/bug-detective/references/error-patterns.md +242 -0
  546. package/src/skills/check/SKILL.md +367 -0
  547. package/src/skills/code-patterns/SKILL.md +163 -0
  548. package/src/skills/code-patterns/references/leniu-code-patterns.md +87 -0
  549. package/src/skills/codex-code-review/SKILL.md +327 -0
  550. package/src/skills/collaborating-with-codex/SKILL.md +180 -0
  551. package/src/skills/collaborating-with-codex/scripts/codex_bridge.py +275 -0
  552. package/src/skills/collaborating-with-gemini/SKILL.md +194 -0
  553. package/src/skills/collaborating-with-gemini/scripts/gemini_bridge.py +275 -0
  554. package/src/skills/crud/SKILL.md +265 -0
  555. package/src/skills/crud-development/SKILL.md +328 -0
  556. package/src/skills/data-permission/SKILL.md +221 -0
  557. package/src/skills/data-permission/references/custom-data-scope.md +90 -0
  558. package/src/skills/database-ops/SKILL.md +210 -0
  559. package/src/skills/dev/SKILL.md +187 -0
  560. package/src/skills/error-handler/SKILL.md +310 -0
  561. package/src/skills/file-oss-management/SKILL.md +260 -0
  562. package/src/skills/file-oss-management/references/entities.md +105 -0
  563. package/src/skills/file-oss-management/references/service-impl.md +104 -0
  564. package/src/skills/fix-bug/SKILL.md +269 -0
  565. package/src/skills/git-workflow/SKILL.md +179 -0
  566. package/src/skills/init-docs/SKILL.md +194 -0
  567. package/src/skills/json-serialization/SKILL.md +341 -0
  568. package/src/skills/leniu-api-development/SKILL.md +319 -0
  569. package/src/skills/leniu-api-development/references/real-examples.md +273 -0
  570. package/src/skills/leniu-architecture-design/SKILL.md +383 -0
  571. package/src/skills/leniu-backend-annotations/SKILL.md +277 -0
  572. package/src/skills/leniu-brainstorm/SKILL.md +242 -0
  573. package/src/skills/leniu-brainstorm/references/business-scenarios.md +162 -0
  574. package/src/skills/leniu-code-patterns/SKILL.md +411 -0
  575. package/src/skills/leniu-crud-development/SKILL.md +404 -0
  576. package/src/skills/leniu-crud-development/references/templates.md +597 -0
  577. package/src/skills/leniu-customization-location/SKILL.md +410 -0
  578. package/src/skills/leniu-data-permission/SKILL.md +341 -0
  579. package/src/skills/leniu-database-ops/SKILL.md +426 -0
  580. package/src/skills/leniu-error-handler/SKILL.md +462 -0
  581. package/src/skills/leniu-java-amount-handling/SKILL.md +461 -0
  582. package/src/skills/leniu-java-code-style/SKILL.md +510 -0
  583. package/src/skills/leniu-java-concurrent/SKILL.md +400 -0
  584. package/src/skills/leniu-java-entity/SKILL.md +237 -0
  585. package/src/skills/leniu-java-entity/references/templates.md +237 -0
  586. package/src/skills/leniu-java-export/SKILL.md +570 -0
  587. package/src/skills/leniu-java-logging/SKILL.md +229 -0
  588. package/src/skills/leniu-java-logging/references/data-mask.md +46 -0
  589. package/src/skills/leniu-java-logging/references/logging-scenarios.md +113 -0
  590. package/src/skills/leniu-java-mq/SKILL.md +338 -0
  591. package/src/skills/leniu-java-mybatis/SKILL.md +267 -0
  592. package/src/skills/leniu-java-mybatis/references/report-mapper.md +88 -0
  593. package/src/skills/leniu-java-report-query-param/SKILL.md +291 -0
  594. package/src/skills/leniu-java-task/SKILL.md +367 -0
  595. package/src/skills/leniu-java-total-line/SKILL.md +196 -0
  596. package/src/skills/leniu-marketing-price-rule-customizer/SKILL.md +301 -0
  597. package/src/skills/leniu-marketing-recharge-rule-customizer/SKILL.md +285 -0
  598. package/src/skills/leniu-mealtime/SKILL.md +215 -0
  599. package/src/skills/leniu-redis-cache/SKILL.md +331 -0
  600. package/src/skills/leniu-report-customization/SKILL.md +415 -0
  601. package/src/skills/leniu-report-customization/references/table-fields.md +93 -0
  602. package/src/skills/leniu-report-standard-customization/SKILL.md +391 -0
  603. package/src/skills/leniu-report-standard-customization/references/analysis-module.md +64 -0
  604. package/src/skills/leniu-report-standard-customization/references/table-fields.md +113 -0
  605. package/src/skills/leniu-security-guard/SKILL.md +306 -0
  606. package/src/skills/leniu-utils-toolkit/SKILL.md +380 -0
  607. package/src/skills/loki-log-query/SKILL.md +400 -0
  608. package/src/skills/loki-log-query/environments.json +45 -0
  609. package/src/skills/mysql-debug/SKILL.md +400 -0
  610. package/src/skills/next/SKILL.md +137 -0
  611. package/src/skills/openspec-apply-change/SKILL.md +165 -0
  612. package/src/skills/openspec-archive-change/SKILL.md +122 -0
  613. package/src/skills/openspec-bulk-archive-change/SKILL.md +254 -0
  614. package/src/skills/openspec-continue-change/SKILL.md +126 -0
  615. package/src/skills/openspec-explore/SKILL.md +299 -0
  616. package/src/skills/openspec-ff-change/SKILL.md +109 -0
  617. package/src/skills/openspec-new-change/SKILL.md +82 -0
  618. package/src/skills/openspec-onboard/SKILL.md +414 -0
  619. package/src/skills/openspec-sync-specs/SKILL.md +146 -0
  620. package/src/skills/openspec-verify-change/SKILL.md +176 -0
  621. package/src/skills/performance-doctor/SKILL.md +297 -0
  622. package/src/skills/progress/SKILL.md +193 -0
  623. package/src/skills/project-navigator/SKILL.md +211 -0
  624. package/src/skills/redis-cache/SKILL.md +282 -0
  625. package/src/skills/redis-cache/references/listeners.md +23 -0
  626. package/src/skills/scheduled-jobs/SKILL.md +277 -0
  627. package/src/skills/security-guard/SKILL.md +245 -0
  628. package/src/skills/security-guard/references/encrypt-config.md +103 -0
  629. package/src/skills/security-guard/references/sensitive-strategies.md +42 -0
  630. package/src/skills/skill-creator/LICENSE.txt +202 -0
  631. package/src/skills/skill-creator/SKILL.md +479 -0
  632. package/src/skills/skill-creator/agents/analyzer.md +274 -0
  633. package/src/skills/skill-creator/agents/comparator.md +202 -0
  634. package/src/skills/skill-creator/agents/grader.md +223 -0
  635. package/src/skills/skill-creator/assets/eval_review.html +146 -0
  636. package/src/skills/skill-creator/eval-viewer/generate_review.py +471 -0
  637. package/src/skills/skill-creator/eval-viewer/viewer.html +1325 -0
  638. package/src/skills/skill-creator/references/schemas.md +430 -0
  639. package/src/skills/skill-creator/scripts/__init__.py +0 -0
  640. package/src/skills/skill-creator/scripts/aggregate_benchmark.py +401 -0
  641. package/src/skills/skill-creator/scripts/generate_report.py +326 -0
  642. package/src/skills/skill-creator/scripts/improve_description.py +248 -0
  643. package/src/skills/skill-creator/scripts/package_skill.py +136 -0
  644. package/src/skills/skill-creator/scripts/quick_validate.py +103 -0
  645. package/src/skills/skill-creator/scripts/run_eval.py +310 -0
  646. package/src/skills/skill-creator/scripts/run_loop.py +332 -0
  647. package/src/skills/skill-creator/scripts/utils.py +47 -0
  648. package/src/skills/sms-mail/SKILL.md +346 -0
  649. package/src/skills/sms-mail/references/mail-config.md +88 -0
  650. package/src/skills/sms-mail/references/sms-config.md +74 -0
  651. package/src/skills/social-login/SKILL.md +328 -0
  652. package/src/skills/social-login/references/provider-configs.md +118 -0
  653. package/src/skills/start/SKILL.md +154 -0
  654. package/src/skills/store-pc/SKILL.md +366 -0
  655. package/src/skills/sync/SKILL.md +149 -0
  656. package/src/skills/sync-back-merge/SKILL.md +66 -0
  657. package/src/skills/task-tracker/SKILL.md +307 -0
  658. package/src/skills/tech-decision/SKILL.md +393 -0
  659. package/src/skills/tenant-management/SKILL.md +272 -0
  660. package/src/skills/tenant-management/references/tenant-scenarios.md +91 -0
  661. package/src/skills/test-development/SKILL.md +301 -0
  662. package/src/skills/test-development/references/parameterized-examples.md +119 -0
  663. package/src/skills/ui-pc/SKILL.md +438 -0
  664. package/src/skills/update-status/SKILL.md +159 -0
  665. package/src/skills/utils-toolkit/SKILL.md +354 -0
  666. package/src/skills/utils-toolkit/references/redis-utils-api.md +56 -0
  667. package/src/skills/websocket-sse/SKILL.md +350 -0
  668. package/src/skills/workflow-engine/SKILL.md +249 -0
  669. package/src/skills/yunxiao-task-management/SKILL.md +401 -0
  670. package/src/skills/yunxiao-task-management/templates//346/217/220/346/265/213/345/215/225/346/250/241/346/235/277.html +17 -0
@@ -0,0 +1,406 @@
1
+ ---
2
+ name: mysql-debug
3
+ description: |
4
+ MySQL 数据库查询调试技能。通过 mysql CLI 直接查询本地 MySQL 数据库,配合日志进行 Bug 排查。
5
+ Bug 修复时自动评估是否需要查库,从日志中提取数据库名(租户ID),支持手动指定数据库。
6
+
7
+ 触发场景:
8
+ - 结合日志排查 Bug 时需要查询数据库验证数据
9
+ - 检查数据库中某条记录的实际值
10
+ - 验证 SQL 执行结果是否符合预期
11
+ - 排查数据不一致、数据丢失、数据异常问题
12
+ - 需要查看表结构、索引、数据分布
13
+
14
+ 触发词:查数据库、查表、执行SQL、查记录、mysql查询、数据库排查、验证数据、查数据、db查询、数据库调试
15
+ ---
16
+
17
+ # MySQL 数据库查询调试技能
18
+
19
+ ## 概述
20
+
21
+ 本技能用于在 Bug 排查过程中直接查询 MySQL 数据库,验证数据状态。配合日志分析定位问题根因。
22
+
23
+ **核心能力**:
24
+ 1. 智能判断 Bug 是否需要查库(明显代码错误跳过)
25
+ 2. 从日志自动提取数据库名(租户 ID = 数据库名)
26
+ 3. 只读查询,安全排查
27
+
28
+ ---
29
+
30
+ ## 连接信息获取(四级降级,自动查找)
31
+
32
+ 当本技能被激活时,**按以下优先级获取数据库连接信息**:
33
+
34
+ ### 优先级 1:用户对话中指定(最高优先级)
35
+
36
+ 用户直接给出连接信息,或指定环境名:
37
+ - "连 dev 环境查一下" → 使用配置中 dev 环境
38
+ - "去 dev10 查" → **范围匹配** dev 环境(range: "1~15")
39
+ - 直接给出 host/port/user/password → 直接使用
40
+
41
+ ### 优先级 2:本地项目 `.claude/mysql-config.json`
42
+
43
+ 项目目录下的配置文件,优先于全局配置。
44
+
45
+ ### 优先级 3:全局配置(所有项目共享)
46
+
47
+ 全局配置文件(通过 `npx ai-engineering-init config --scope global` 创建)。
48
+ 查找路径:`~/.claude/mysql-config.json` 或 `~/.cursor/mysql-config.json`(取决于使用的工具)。
49
+ **推荐**:公司统一的数据库连接信息放全局,项目特定的覆盖放本地。
50
+
51
+ ### 优先级 4:工程配置文件(零配置,本地开发默认)
52
+
53
+ 从项目的 `bootstrap-dev.yml` 中自动提取连接信息:
54
+
55
+ **搜索路径**:
56
+ ```
57
+ **/bootstrap-dev.yml
58
+ **/bootstrap*.yml(降级)
59
+ ```
60
+
61
+ **解析位置**:`spring.dataset.system.master` 节点
62
+
63
+ **解析规则**:
64
+ ```yaml
65
+ # 从以下字段提取:
66
+ jdbcUrl: jdbc:mysql://127.0.0.1:3306/system_xxx
67
+ username: root
68
+ password: xxx
69
+ ```
70
+
71
+ **提取结果**:
72
+ - host = `127.0.0.1`(从 jdbcUrl 解析)
73
+ - port = `3306`(从 jdbcUrl 解析)
74
+ - user = `root`(username 字段)
75
+ - password = `xxx`(password 字段)
76
+ - 注意:jdbcUrl 中的数据库名(`system_xxx`)为系统库,**不作为查询目标数据库**。查询目标数据库 = 租户ID(从日志提取或用户指定)
77
+
78
+ ### mysql CLI 查找(多路径)
79
+
80
+ 按顺序查找 mysql 客户端:
81
+
82
+ ```bash
83
+ which mysql \
84
+ || ls /usr/local/mysql/bin/mysql \
85
+ || ls /opt/homebrew/bin/mysql \
86
+ || ls /opt/homebrew/opt/mysql-client/bin/mysql
87
+ ```
88
+
89
+ 找到任一即可使用。如果全部不存在,输出安装提示:
90
+ ```
91
+ brew install mysql-client
92
+ ```
93
+
94
+ ### 引导提示(仅当连接信息和 mysql CLI 都无法获取时)
95
+
96
+ ```
97
+ ⚠️ 数据库查询功能需要先完成配置:
98
+
99
+ 1. 连接信息获取失败:
100
+ - 未找到 bootstrap-dev.yml 工程配置文件
101
+ - 未找到 .claude/mysql-config.json 配置文件
102
+ → 请创建 .claude/mysql-config.json 或确保项目中存在 bootstrap-dev.yml
103
+
104
+ 2. 安装 MySQL 客户端:
105
+ brew install mysql-client
106
+
107
+ 完成后重新触发即可使用数据库查询辅助排查。
108
+ ```
109
+
110
+ > 引导提示输出后,Bug 排查仍可继续(走 bug-detective 纯代码分析路径),只是跳过数据库查询环节。
111
+
112
+ ---
113
+
114
+ ## 多环境支持
115
+
116
+ ### 配置文件结构
117
+
118
+ `.claude/mysql-config.json` 支持多环境配置:
119
+
120
+ ```json
121
+ {
122
+ "environments": {
123
+ "local": { "host": "127.0.0.1", "port": 3306, "user": "root", "password": "xxx" },
124
+ "dev": { "host": "dev-db.example.com", "port": 3306, "user": "dev_user", "password": "xxx" },
125
+ "prod": { "host": "prod-db.example.com", "port": 3306, "user": "readonly", "password": "xxx" }
126
+ },
127
+ "default": "local"
128
+ }
129
+ ```
130
+
131
+ ### 环境选择规则
132
+
133
+ | 优先级 | 来源 | 示例 |
134
+ |--------|------|------|
135
+ | 1(最高) | 用户对话中指定 | "连 dev 环境查一下"、"用生产库看看" |
136
+ | 2 | 配置文件 `default` 字段 | `"default": "local"` |
137
+
138
+ ### 环境关键词映射
139
+
140
+ 用户说的话 → 对应环境名:
141
+
142
+ | 用户说法 | 环境 |
143
+ |---------|------|
144
+ | "本地"、"local"、"本地环境" | `local` |
145
+ | "开发"、"dev"、"测试环境"、"开发环境" | `dev` |
146
+ | "生产"、"prod"、"线上"、"正式环境" | `prod` |
147
+
148
+ ### 连接示例
149
+
150
+ ```bash
151
+ # 用户说"连 dev 环境查一下 order_info"
152
+ # → 读取 environments.dev 的连接信息 + 日志提取的数据库名
153
+ mysql -h dev-db.example.com -P 3306 -u dev_user -p'xxx' 546198574447230976 -e "SELECT ..."
154
+ ```
155
+
156
+ ---
157
+
158
+ ## 核心流程:是否需要查库?
159
+
160
+ ### 决策树(Bug 修复时必须先评估)
161
+
162
+ ```
163
+ 用户报告 Bug / 提供日志
164
+
165
+ ├─ 明显的代码错误? ──→ ✅ 不需要查库,直接修复
166
+ │ - NPE 且代码中未做空判断
167
+ │ - 语法错误、拼写错误
168
+ │ - 类型转换错误(ClassCastException)
169
+ │ - 缺少 import、注解遗漏
170
+ │ - 方法签名不匹配
171
+
172
+ ├─ 数据相关的问题? ──→ 🔍 需要查库
173
+ │ - "查不到数据"、"数据为空"
174
+ │ - "数量不对"、"金额不对"
175
+ │ - SQL 相关异常(DataIntegrityViolation、DuplicateKey)
176
+ │ - 关联查询结果异常
177
+ │ - 状态流转异常(订单状态不对等)
178
+
179
+ ├─ 不确定是代码还是数据? ──→ 🔍 需要查库确认
180
+ │ - 逻辑正确但结果错误
181
+ │ - 特定租户/特定数据才出现的 Bug
182
+ │ - 生产有问题但本地无法复现
183
+
184
+ └─ 配置/环境问题? ──→ ✅ 不需要查库
185
+ - 启动失败、Bean 创建异常
186
+ - 配置文件错误
187
+ - 依赖版本冲突
188
+ ```
189
+
190
+ ### 评估输出格式
191
+
192
+ 在 Bug 修复响应中,先输出评估结论:
193
+
194
+ ```
195
+ 📊 数据库查询评估:需要查库
196
+ 理由:日志显示 order_info 查询返回空,需要确认数据是否存在
197
+ 数据库:546198574447230976(从日志提取)
198
+ ```
199
+
200
+ 或:
201
+
202
+ ```
203
+ 📊 数据库查询评估:不需要查库
204
+ 理由:明显的 NPE,代码中 getUserInfo() 返回值未做空判断
205
+ ```
206
+
207
+ ---
208
+
209
+ ## 从日志提取数据库名
210
+
211
+ ### 日志格式说明
212
+
213
+ 本项目的日志格式:
214
+
215
+ ```
216
+ 2026-03-04 10:21:40.902,-,546198574447230976,, DEBUG 94396 --- [ XNIO-1 task-3] n.x.f.c.request.RequestLoggingFilter : 47 : >>> GET /api/v2/web/xxx
217
+ ```
218
+
219
+ 各字段含义:
220
+
221
+ ```
222
+ 时间戳 ,-,租户ID(=数据库名),, 日志级别 PID --- [线程名] 类名 : 行号 : 日志内容
223
+ ```
224
+
225
+ ### 提取规则
226
+
227
+ 1. **自动提取**:从日志行中匹配 `,-,(\d{15,19}),,` 模式,提取的数字即为数据库名
228
+ 2. **手动指定**:用户直接说"查 546198574447230976 库"或"数据库名是 xxx"
229
+ 3. **优先级**:手动指定 > 日志提取 > 配置文件 default
230
+
231
+ ### 提取示例
232
+
233
+ ```
234
+ 日志:2026-03-04 10:21:40.902,-,546198574447230976,, DEBUG ...
235
+
236
+ 数据库名 = 546198574447230976
237
+ ```
238
+
239
+ 连接时使用:
240
+ ```bash
241
+ mysql -h 127.0.0.1 -P 3306 -u root -p'password' 546198574447230976 -e "SELECT ..."
242
+ ```
243
+
244
+ ---
245
+
246
+ ## 查询执行
247
+
248
+ ### 连接方式
249
+
250
+ 按"连接信息获取"章节的优先级获取 host/port/user/password,数据库名从日志提取或用户指定:
251
+
252
+ ```bash
253
+ # 连接信息来源:用户指定 > mysql-config.json > bootstrap-dev.yml 自动提取
254
+ # 数据库名来源:用户指定 > 日志提取的租户ID
255
+ mysql -h {host} -P {port} -u {user} -p'{password}' {database_from_log_or_user} -e "{SQL}"
256
+
257
+ # mysql 路径:如果 which mysql 失败,尝试绝对路径
258
+ /opt/homebrew/opt/mysql-client/bin/mysql -h {host} ...
259
+ ```
260
+
261
+ ### 常用排查查询模板
262
+
263
+ #### 查看表结构
264
+ ```sql
265
+ DESCRIBE table_name;
266
+ SHOW CREATE TABLE table_name;
267
+ ```
268
+
269
+ #### 按 ID 查记录
270
+ ```sql
271
+ SELECT * FROM table_name WHERE id = {id} AND del_flag = 2;
272
+ ```
273
+
274
+ #### 查看最近修改的数据
275
+ ```sql
276
+ SELECT * FROM table_name
277
+ WHERE uptime >= '{log_timestamp}'
278
+ ORDER BY uptime DESC
279
+ LIMIT 20;
280
+ ```
281
+
282
+ #### 检查关联数据一致性
283
+ ```sql
284
+ SELECT a.id, b.id AS related_id
285
+ FROM table_a a
286
+ LEFT JOIN table_b b ON a.related_id = b.id
287
+ WHERE a.id = {id} AND b.id IS NULL;
288
+ ```
289
+
290
+ #### 统计数据分布
291
+ ```sql
292
+ SELECT status, COUNT(*) as cnt
293
+ FROM table_name
294
+ WHERE del_flag = 2
295
+ GROUP BY status;
296
+ ```
297
+
298
+ #### 查看某时间段的操作记录
299
+ ```sql
300
+ SELECT * FROM table_name
301
+ WHERE crtime BETWEEN '{start}' AND '{end}'
302
+ ORDER BY crtime DESC
303
+ LIMIT 50;
304
+ ```
305
+
306
+ ---
307
+
308
+ ## 安全规范(强制执行,违反即终止)
309
+
310
+ ### 允许执行的 SQL(白名单)
311
+
312
+ **只允许以下语句类型**:
313
+ - `SELECT` — 查询数据
314
+ - `DESCRIBE` / `DESC` — 查看表结构
315
+ - `SHOW` — 查看建表语句、索引、状态等
316
+ - `EXPLAIN` — 分析执行计划
317
+
318
+ ### 禁止执行的 SQL(黑名单)
319
+
320
+ **DDL 操作 — 全部禁止**:
321
+ - `CREATE TABLE / VIEW / INDEX / DATABASE`
322
+ - `ALTER TABLE / COLUMN`
323
+ - `DROP TABLE / VIEW / INDEX / DATABASE`
324
+ - `TRUNCATE TABLE`
325
+ - `RENAME TABLE`
326
+
327
+ **DML 写操作 — 全部禁止**:
328
+ - `INSERT` — 禁止插入数据
329
+ - `UPDATE` — 禁止更新数据
330
+ - `DELETE` — 禁止删除数据
331
+ - `REPLACE` — 禁止替换数据
332
+
333
+ **权限/管理操作 — 全部禁止**:
334
+ - `GRANT / REVOKE`
335
+ - `SET GLOBAL`
336
+ - `FLUSH`
337
+
338
+ ### 敏感 SQL 拦截(执行前必须分析)
339
+
340
+ 在执行任何 SQL 之前,必须进行安全分析。遇到以下情况时,**不执行 SQL,改为输出分析结果并询问用户**:
341
+
342
+ | 风险类型 | 检测规则 | 处理方式 |
343
+ |---------|---------|---------|
344
+ | 无 WHERE 全表扫描 | `SELECT * FROM xxx` 无 WHERE 子句 | 提醒用户加条件,或自动加 `LIMIT 10` |
345
+ | 大范围查询 | WHERE 条件覆盖范围过大(如 `del_flag = 2`) | 提醒加更精确条件,强制 `LIMIT 50` |
346
+ | 多表 JOIN 无条件 | JOIN 无 ON 条件(笛卡尔积) | 拒绝执行,提示补充 JOIN 条件 |
347
+ | 子查询嵌套过深 | 超过 3 层嵌套子查询 | 输出 SQL 让用户确认后再执行 |
348
+ | 敏感表查询 | 涉及用户密码表、密钥表 | 输出脱敏后的 SQL 分析,不直接查询 |
349
+
350
+ ### 执行前检查流程
351
+
352
+ ```
353
+ 收到/构造 SQL
354
+
355
+ ├─ 是否在白名单内? ──→ 否 → 拒绝执行,输出原因
356
+
357
+ ├─ 是否命中敏感规则? ──→ 是 → 输出风险分析,询问用户
358
+
359
+ ├─ 是否包含 LIMIT? ──→ 否 → 自动追加 LIMIT 50
360
+
361
+ └─ 通过所有检查 → 执行 SQL
362
+ ```
363
+
364
+ ### 查询结果安全
365
+
366
+ - 查询必须加 `LIMIT`(默认 LIMIT 50)防止返回过多数据
367
+ - 不在输出中暴露密码、手机号(phone)、身份证(id_card)等敏感字段
368
+ - 查询结果中的敏感字段用 `***` 脱敏展示
369
+ - 如需修改数据,**只输出 SQL 语句让用户手动执行**,不代为执行
370
+
371
+ ### 配置文件安全
372
+
373
+ - `.claude/mysql-config.json` 已加入 `.gitignore`,禁止提交到版本库
374
+
375
+ ---
376
+
377
+ ## 与 bug-detective 配合
378
+
379
+ 本技能是 `bug-detective` 的数据层扩展。当 bug-detective 被触发时,会自动评估是否需要同时激活 mysql-debug:
380
+
381
+ | 步骤 | bug-detective | mysql-debug |
382
+ |------|--------------|-------------|
383
+ | 1 | 分析日志、定位异常层 | 评估是否需要查库 |
384
+ | 2 | 识别涉及的表和查询 | 从日志提取数据库名 |
385
+ | 3 | 推断可能原因 | 执行 SQL 验证数据 |
386
+ | 4 | 给出修复方案 | 用数据证实/排除假设 |
387
+
388
+ 典型联合使用:
389
+ ```
390
+ 用户:"订单查询接口返回空数据,日志如下..."
391
+ 日志:2026-03-04 10:21:40.902,-,546198574447230976,, ERROR ...
392
+
393
+ → 评估:需要查库(数据返回空,需确认数据是否存在)
394
+ → 提取数据库:546198574447230976
395
+ → 执行:SELECT * FROM order_info WHERE id = xxx AND del_flag = 2
396
+ → 发现:del_flag = 1(已删除),用户操作了删除但不知情
397
+ → 修复方案:恢复数据 / 检查前端删除按钮权限
398
+ ```
399
+
400
+ ---
401
+
402
+ ## 注意
403
+
404
+ - 本技能专注于**查询数据库辅助排查**,不涉及建表、迁移等操作(请使用 `database-ops`)
405
+ - 如果是纯代码错误(NPE、语法错误等)不需要查库,请使用 `bug-detective`
406
+ - 如果是 SQL 性能问题(慢查询),请使用 `performance-doctor`
@@ -0,0 +1,165 @@
1
+ ---
2
+ name: openspec-apply-change
3
+ description: |
4
+ Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks.
5
+
6
+ 触发场景:
7
+ - 需要实现 OpenSpec 变更中的任务
8
+ - 执行变更制品中定义的实现步骤
9
+ - 将规格和设计转化为实际代码
10
+ - 逐个完成 tasks.md 中的待办事项
11
+
12
+ 触发词:实现任务、开始实现、opsx:apply、openspec apply、执行变更、开始编码、实现变更
13
+ license: MIT
14
+ compatibility: Requires openspec CLI.
15
+ metadata:
16
+ author: openspec
17
+ version: "1.0"
18
+ generatedBy: "1.1.1"
19
+ ---
20
+
21
+ Implement tasks from an OpenSpec change.
22
+
23
+ **Input**: Optionally specify a change name. If omitted, check if it can be inferred from conversation context. If vague or ambiguous you MUST prompt for available changes.
24
+
25
+ **Steps**
26
+
27
+ 1. **Select the change**
28
+
29
+ If a name is provided, use it. Otherwise:
30
+ - Infer from conversation context if the user mentioned a change
31
+ - Auto-select if only one active change exists
32
+ - If ambiguous, run `openspec list --json` to get available changes and use the **AskUserQuestion tool** to let the user select
33
+
34
+ Always announce: "Using change: <name>" and how to override (e.g., `/opsx:apply <other>`).
35
+
36
+ 2. **Check status to understand the schema**
37
+ ```bash
38
+ openspec status --change "<name>" --json
39
+ ```
40
+ Parse the JSON to understand:
41
+ - `schemaName`: The workflow being used (e.g., "spec-driven")
42
+ - Which artifact contains the tasks (typically "tasks" for spec-driven, check status for others)
43
+
44
+ 3. **Get apply instructions**
45
+
46
+ ```bash
47
+ openspec instructions apply --change "<name>" --json
48
+ ```
49
+
50
+ This returns:
51
+ - Context file paths (varies by schema - could be proposal/specs/design/tasks or spec/tests/implementation/docs)
52
+ - Progress (total, complete, remaining)
53
+ - Task list with status
54
+ - Dynamic instruction based on current state
55
+
56
+ **Handle states:**
57
+ - If `state: "blocked"` (missing artifacts): show message, suggest using openspec-continue-change
58
+ - If `state: "all_done"`: congratulate, suggest archive
59
+ - Otherwise: proceed to implementation
60
+
61
+ 4. **Read context files**
62
+
63
+ Read the files listed in `contextFiles` from the apply instructions output.
64
+ The files depend on the schema being used:
65
+ - **spec-driven**: proposal, specs, design, tasks
66
+ - Other schemas: follow the contextFiles from CLI output
67
+
68
+ 5. **Show current progress**
69
+
70
+ Display:
71
+ - Schema being used
72
+ - Progress: "N/M tasks complete"
73
+ - Remaining tasks overview
74
+ - Dynamic instruction from CLI
75
+
76
+ 6. **Implement tasks (loop until done or blocked)**
77
+
78
+ For each pending task:
79
+ - Show which task is being worked on
80
+ - Make the code changes required
81
+ - Keep changes minimal and focused
82
+ - Mark task complete in the tasks file: `- [ ]` → `- [x]`
83
+ - Continue to next task
84
+
85
+ **Pause if:**
86
+ - Task is unclear → ask for clarification
87
+ - Implementation reveals a design issue → suggest updating artifacts
88
+ - Error or blocker encountered → report and wait for guidance
89
+ - User interrupts
90
+
91
+ 7. **On completion or pause, show status**
92
+
93
+ Display:
94
+ - Tasks completed this session
95
+ - Overall progress: "N/M tasks complete"
96
+ - If all done: suggest archive
97
+ - If paused: explain why and wait for guidance
98
+
99
+ **Output During Implementation**
100
+
101
+ ```
102
+ ## Implementing: <change-name> (schema: <schema-name>)
103
+
104
+ Working on task 3/7: <task description>
105
+ [...implementation happening...]
106
+ ✓ Task complete
107
+
108
+ Working on task 4/7: <task description>
109
+ [...implementation happening...]
110
+ ✓ Task complete
111
+ ```
112
+
113
+ **Output On Completion**
114
+
115
+ ```
116
+ ## Implementation Complete
117
+
118
+ **Change:** <change-name>
119
+ **Schema:** <schema-name>
120
+ **Progress:** 7/7 tasks complete ✓
121
+
122
+ ### Completed This Session
123
+ - [x] Task 1
124
+ - [x] Task 2
125
+ ...
126
+
127
+ All tasks complete! Ready to archive this change.
128
+ ```
129
+
130
+ **Output On Pause (Issue Encountered)**
131
+
132
+ ```
133
+ ## Implementation Paused
134
+
135
+ **Change:** <change-name>
136
+ **Schema:** <schema-name>
137
+ **Progress:** 4/7 tasks complete
138
+
139
+ ### Issue Encountered
140
+ <description of the issue>
141
+
142
+ **Options:**
143
+ 1. <option 1>
144
+ 2. <option 2>
145
+ 3. Other approach
146
+
147
+ What would you like to do?
148
+ ```
149
+
150
+ **Guardrails**
151
+ - Keep going through tasks until done or blocked
152
+ - Always read context files before starting (from the apply instructions output)
153
+ - If task is ambiguous, pause and ask before implementing
154
+ - If implementation reveals issues, pause and suggest artifact updates
155
+ - Keep code changes minimal and scoped to each task
156
+ - Update task checkbox immediately after completing each task
157
+ - Pause on errors, blockers, or unclear requirements - don't guess
158
+ - Use contextFiles from CLI output, don't assume specific file names
159
+
160
+ **Fluid Workflow Integration**
161
+
162
+ This skill supports the "actions on a change" model:
163
+
164
+ - **Can be invoked anytime**: Before all artifacts are done (if tasks exist), after partial implementation, interleaved with other actions
165
+ - **Allows artifact updates**: If implementation reveals design issues, suggest updating artifacts - not phase-locked, work fluidly
@@ -0,0 +1,122 @@
1
+ ---
2
+ name: openspec-archive-change
3
+ description: |
4
+ Archive a completed change in the experimental workflow. Use when the user wants to finalize and archive a change after implementation is complete.
5
+
6
+ 触发场景:
7
+ - 变更实现完毕,需要归档保存
8
+ - 完成的变更需要移入 archive 目录
9
+ - 项目决策记录需要持久化保存
10
+
11
+ 触发词:归档变更、归档、opsx:archive、openspec archive、完成变更、存档、归档完成
12
+ license: MIT
13
+ compatibility: Requires openspec CLI.
14
+ metadata:
15
+ author: openspec
16
+ version: "1.0"
17
+ generatedBy: "1.1.1"
18
+ ---
19
+
20
+ Archive a completed change in the experimental workflow.
21
+
22
+ **Input**: Optionally specify a change name. If omitted, check if it can be inferred from conversation context. If vague or ambiguous you MUST prompt for available changes.
23
+
24
+ **Steps**
25
+
26
+ 1. **If no change name provided, prompt for selection**
27
+
28
+ Run `openspec list --json` to get available changes. Use the **AskUserQuestion tool** to let the user select.
29
+
30
+ Show only active changes (not already archived).
31
+ Include the schema used for each change if available.
32
+
33
+ **IMPORTANT**: Do NOT guess or auto-select a change. Always let the user choose.
34
+
35
+ 2. **Check artifact completion status**
36
+
37
+ Run `openspec status --change "<name>" --json` to check artifact completion.
38
+
39
+ Parse the JSON to understand:
40
+ - `schemaName`: The workflow being used
41
+ - `artifacts`: List of artifacts with their status (`done` or other)
42
+
43
+ **If any artifacts are not `done`:**
44
+ - Display warning listing incomplete artifacts
45
+ - Use **AskUserQuestion tool** to confirm user wants to proceed
46
+ - Proceed if user confirms
47
+
48
+ 3. **Check task completion status**
49
+
50
+ Read the tasks file (typically `tasks.md`) to check for incomplete tasks.
51
+
52
+ Count tasks marked with `- [ ]` (incomplete) vs `- [x]` (complete).
53
+
54
+ **If incomplete tasks found:**
55
+ - Display warning showing count of incomplete tasks
56
+ - Use **AskUserQuestion tool** to confirm user wants to proceed
57
+ - Proceed if user confirms
58
+
59
+ **If no tasks file exists:** Proceed without task-related warning.
60
+
61
+ 4. **Assess delta spec sync state**
62
+
63
+ Check for delta specs at `openspec/changes/<name>/specs/`. If none exist, proceed without sync prompt.
64
+
65
+ **If delta specs exist:**
66
+ - Compare each delta spec with its corresponding main spec at `openspec/specs/<capability>/spec.md`
67
+ - Determine what changes would be applied (adds, modifications, removals, renames)
68
+ - Show a combined summary before prompting
69
+
70
+ **Prompt options:**
71
+ - If changes needed: "Sync now (recommended)", "Archive without syncing"
72
+ - If already synced: "Archive now", "Sync anyway", "Cancel"
73
+
74
+ If user chooses sync, execute /opsx:sync logic (use the openspec-sync-specs skill). Proceed to archive regardless of choice.
75
+
76
+ 5. **Perform the archive**
77
+
78
+ Create the archive directory if it doesn't exist:
79
+ ```bash
80
+ mkdir -p openspec/changes/archive
81
+ ```
82
+
83
+ Generate target name using current date: `YYYY-MM-DD-<change-name>`
84
+
85
+ **Check if target already exists:**
86
+ - If yes: Fail with error, suggest renaming existing archive or using different date
87
+ - If no: Move the change directory to archive
88
+
89
+ ```bash
90
+ mv openspec/changes/<name> openspec/changes/archive/YYYY-MM-DD-<name>
91
+ ```
92
+
93
+ 6. **Display summary**
94
+
95
+ Show archive completion summary including:
96
+ - Change name
97
+ - Schema that was used
98
+ - Archive location
99
+ - Whether specs were synced (if applicable)
100
+ - Note about any warnings (incomplete artifacts/tasks)
101
+
102
+ **Output On Success**
103
+
104
+ ```
105
+ ## Archive Complete
106
+
107
+ **Change:** <change-name>
108
+ **Schema:** <schema-name>
109
+ **Archived to:** openspec/changes/archive/YYYY-MM-DD-<name>/
110
+ **Specs:** ✓ Synced to main specs (or "No delta specs" or "Sync skipped")
111
+
112
+ All artifacts complete. All tasks complete.
113
+ ```
114
+
115
+ **Guardrails**
116
+ - Always prompt for change selection if not provided
117
+ - Use artifact graph (openspec status --json) for completion checking
118
+ - Don't block archive on warnings - just inform and confirm
119
+ - Preserve .openspec.yaml when moving to archive (it moves with the directory)
120
+ - Show clear summary of what happened
121
+ - If sync is requested, use openspec-sync-specs approach (agent-driven)
122
+ - If delta specs exist, always run the sync assessment and show the combined summary before prompting