@rotifer/playground 0.8.1 → 0.8.5

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 (443) hide show
  1. package/CHANGELOG.md +25 -11
  2. package/README.md +64 -48
  3. package/README.zh.md +60 -37
  4. package/dist/cloud/auth.d.ts +9 -3
  5. package/dist/cloud/auth.d.ts.map +1 -1
  6. package/dist/cloud/auth.js +28 -13
  7. package/dist/cloud/auth.js.map +1 -1
  8. package/dist/cloud/client.d.ts +4 -3
  9. package/dist/cloud/client.d.ts.map +1 -1
  10. package/dist/cloud/client.js +139 -68
  11. package/dist/cloud/client.js.map +1 -1
  12. package/dist/cloud/types.d.ts +3 -0
  13. package/dist/cloud/types.d.ts.map +1 -1
  14. package/dist/cloud/types.js.map +1 -1
  15. package/dist/commands/agent-create.d.ts +20 -0
  16. package/dist/commands/agent-create.d.ts.map +1 -1
  17. package/dist/commands/agent-create.js +91 -80
  18. package/dist/commands/agent-create.js.map +1 -1
  19. package/dist/commands/agent-list.d.ts.map +1 -1
  20. package/dist/commands/agent-list.js +27 -24
  21. package/dist/commands/agent-list.js.map +1 -1
  22. package/dist/commands/agent-run.d.ts +24 -0
  23. package/dist/commands/agent-run.d.ts.map +1 -1
  24. package/dist/commands/agent-run.js +154 -36
  25. package/dist/commands/agent-run.js.map +1 -1
  26. package/dist/commands/api-key.d.ts +3 -0
  27. package/dist/commands/api-key.d.ts.map +1 -0
  28. package/dist/commands/api-key.js +235 -0
  29. package/dist/commands/api-key.js.map +1 -0
  30. package/dist/commands/arena-list.d.ts.map +1 -1
  31. package/dist/commands/arena-list.js +113 -97
  32. package/dist/commands/arena-list.js.map +1 -1
  33. package/dist/commands/arena-submit.d.ts.map +1 -1
  34. package/dist/commands/arena-submit.js +113 -30
  35. package/dist/commands/arena-submit.js.map +1 -1
  36. package/dist/commands/arena-watch.d.ts.map +1 -1
  37. package/dist/commands/arena-watch.js +59 -87
  38. package/dist/commands/arena-watch.js.map +1 -1
  39. package/dist/commands/compare.d.ts.map +1 -1
  40. package/dist/commands/compare.js +40 -50
  41. package/dist/commands/compare.js.map +1 -1
  42. package/dist/commands/compile.d.ts.map +1 -1
  43. package/dist/commands/compile.js +60 -37
  44. package/dist/commands/compile.js.map +1 -1
  45. package/dist/commands/hello.d.ts +3 -0
  46. package/dist/commands/hello.d.ts.map +1 -0
  47. package/dist/commands/hello.js +575 -0
  48. package/dist/commands/hello.js.map +1 -0
  49. package/dist/commands/info.d.ts.map +1 -1
  50. package/dist/commands/info.js +130 -40
  51. package/dist/commands/info.js.map +1 -1
  52. package/dist/commands/init.d.ts.map +1 -1
  53. package/dist/commands/init.js +39 -60
  54. package/dist/commands/init.js.map +1 -1
  55. package/dist/commands/install.d.ts.map +1 -1
  56. package/dist/commands/install.js +35 -9
  57. package/dist/commands/install.js.map +1 -1
  58. package/dist/commands/list.d.ts.map +1 -1
  59. package/dist/commands/list.js +111 -58
  60. package/dist/commands/list.js.map +1 -1
  61. package/dist/commands/login.d.ts.map +1 -1
  62. package/dist/commands/login.js +23 -10
  63. package/dist/commands/login.js.map +1 -1
  64. package/dist/commands/network.d.ts.map +1 -1
  65. package/dist/commands/network.js +48 -67
  66. package/dist/commands/network.js.map +1 -1
  67. package/dist/commands/publish.d.ts.map +1 -1
  68. package/dist/commands/publish.js +127 -53
  69. package/dist/commands/publish.js.map +1 -1
  70. package/dist/commands/reputation.js +84 -85
  71. package/dist/commands/reputation.js.map +1 -1
  72. package/dist/commands/run.d.ts.map +1 -1
  73. package/dist/commands/run.js +26 -9
  74. package/dist/commands/run.js.map +1 -1
  75. package/dist/commands/scan.d.ts.map +1 -1
  76. package/dist/commands/scan.js +8 -9
  77. package/dist/commands/scan.js.map +1 -1
  78. package/dist/commands/search.d.ts.map +1 -1
  79. package/dist/commands/search.js +80 -54
  80. package/dist/commands/search.js.map +1 -1
  81. package/dist/commands/self-update.d.ts +7 -0
  82. package/dist/commands/self-update.d.ts.map +1 -0
  83. package/dist/commands/self-update.js +187 -0
  84. package/dist/commands/self-update.js.map +1 -0
  85. package/dist/commands/stats.d.ts.map +1 -1
  86. package/dist/commands/stats.js +20 -26
  87. package/dist/commands/stats.js.map +1 -1
  88. package/dist/commands/test.d.ts.map +1 -1
  89. package/dist/commands/test.js +95 -75
  90. package/dist/commands/test.js.map +1 -1
  91. package/dist/commands/user-config.d.ts +3 -0
  92. package/dist/commands/user-config.d.ts.map +1 -0
  93. package/dist/commands/user-config.js +82 -0
  94. package/dist/commands/user-config.js.map +1 -0
  95. package/dist/commands/versions.d.ts.map +1 -1
  96. package/dist/commands/versions.js +46 -33
  97. package/dist/commands/versions.js.map +1 -1
  98. package/dist/commands/vg.d.ts.map +1 -1
  99. package/dist/commands/vg.js +65 -63
  100. package/dist/commands/vg.js.map +1 -1
  101. package/dist/commands/whoami.d.ts.map +1 -1
  102. package/dist/commands/whoami.js +33 -23
  103. package/dist/commands/whoami.js.map +1 -1
  104. package/dist/commands/wrap.d.ts.map +1 -1
  105. package/dist/commands/wrap.js +57 -40
  106. package/dist/commands/wrap.js.map +1 -1
  107. package/dist/index.js +61 -1
  108. package/dist/index.js.map +1 -1
  109. package/dist/publish/pre-publish-check.d.ts +15 -0
  110. package/dist/publish/pre-publish-check.d.ts.map +1 -0
  111. package/dist/publish/pre-publish-check.js +228 -0
  112. package/dist/publish/pre-publish-check.js.map +1 -0
  113. package/dist/runtime/domain-failover.d.ts +1 -1
  114. package/dist/runtime/domain-failover.js +1 -1
  115. package/dist/runtime/network-gateway.d.ts +1 -1
  116. package/dist/runtime/network-gateway.d.ts.map +1 -1
  117. package/dist/runtime/network-gateway.js +10 -10
  118. package/dist/runtime/network-gateway.js.map +1 -1
  119. package/dist/scanner/scanner.js +3 -3
  120. package/dist/scanner/scanner.js.map +1 -1
  121. package/dist/utils/binding.d.ts.map +1 -1
  122. package/dist/utils/binding.js +5 -4
  123. package/dist/utils/binding.js.map +1 -1
  124. package/dist/utils/content-hash.d.ts +3 -0
  125. package/dist/utils/content-hash.d.ts.map +1 -0
  126. package/dist/utils/content-hash.js +25 -0
  127. package/dist/utils/content-hash.js.map +1 -0
  128. package/dist/utils/display.d.ts +44 -1
  129. package/dist/utils/display.d.ts.map +1 -1
  130. package/dist/utils/display.js +443 -14
  131. package/dist/utils/display.js.map +1 -1
  132. package/dist/utils/domain-suggest.d.ts.map +1 -1
  133. package/dist/utils/domain-suggest.js +3 -3
  134. package/dist/utils/domain-suggest.js.map +1 -1
  135. package/dist/utils/javy-compiler.js +9 -3
  136. package/dist/utils/javy-compiler.js.map +1 -1
  137. package/dist/utils/open-browser.d.ts +7 -3
  138. package/dist/utils/open-browser.d.ts.map +1 -1
  139. package/dist/utils/open-browser.js +15 -4
  140. package/dist/utils/open-browser.js.map +1 -1
  141. package/dist/utils/palette.d.ts +49 -0
  142. package/dist/utils/palette.d.ts.map +1 -0
  143. package/dist/utils/palette.js +80 -0
  144. package/dist/utils/palette.js.map +1 -0
  145. package/dist/utils/private-fs.d.ts +3 -0
  146. package/dist/utils/private-fs.d.ts.map +1 -0
  147. package/dist/utils/private-fs.js +25 -0
  148. package/dist/utils/private-fs.js.map +1 -0
  149. package/dist/utils/project-root.d.ts +2 -0
  150. package/dist/utils/project-root.d.ts.map +1 -0
  151. package/dist/utils/project-root.js +49 -0
  152. package/dist/utils/project-root.js.map +1 -0
  153. package/dist/utils/run-logger.d.ts +24 -0
  154. package/dist/utils/run-logger.d.ts.map +1 -0
  155. package/dist/utils/run-logger.js +70 -0
  156. package/dist/utils/run-logger.js.map +1 -0
  157. package/dist/utils/update-check.d.ts +20 -0
  158. package/dist/utils/update-check.d.ts.map +1 -0
  159. package/dist/utils/update-check.js +155 -0
  160. package/dist/utils/update-check.js.map +1 -0
  161. package/dist/utils/user-config.d.ts +10 -0
  162. package/dist/utils/user-config.d.ts.map +1 -0
  163. package/dist/utils/user-config.js +54 -0
  164. package/dist/utils/user-config.js.map +1 -0
  165. package/dist/utils/validate-gene-name.d.ts +7 -0
  166. package/dist/utils/validate-gene-name.d.ts.map +1 -0
  167. package/dist/utils/validate-gene-name.js +28 -0
  168. package/dist/utils/validate-gene-name.js.map +1 -0
  169. package/genes/genesis-code-format/phenotype.json +4 -3
  170. package/genes/genesis-file-read/phenotype.json +4 -3
  171. package/genes/genesis-l0-constraint/phenotype.json +4 -3
  172. package/genes/genesis-web-search/phenotype.json +5 -4
  173. package/genes/genesis-web-search-lite/phenotype.json +4 -3
  174. package/package.json +29 -8
  175. package/scripts/postinstall.js +38 -0
  176. package/dist/errors/formatter.d.ts +0 -25
  177. package/dist/errors/formatter.d.ts.map +0 -1
  178. package/dist/errors/formatter.js +0 -43
  179. package/dist/errors/formatter.js.map +0 -1
  180. package/genes/academic-writer/.cloud-manifest.json +0 -6
  181. package/genes/academic-writer/.gene-manifest.json +0 -8
  182. package/genes/academic-writer/SKILL.md +0 -274
  183. package/genes/academic-writer/phenotype.json +0 -28
  184. package/genes/ai-components/.cloud-manifest.json +0 -6
  185. package/genes/ai-components/.gene-manifest.json +0 -8
  186. package/genes/ai-components/SKILL.md +0 -381
  187. package/genes/ai-components/phenotype.json +0 -28
  188. package/genes/algorithmic-art/.cloud-manifest.json +0 -6
  189. package/genes/algorithmic-art/.gene-manifest.json +0 -8
  190. package/genes/algorithmic-art/SKILL.md +0 -405
  191. package/genes/algorithmic-art/phenotype.json +0 -28
  192. package/genes/answer-synthesizer/.cloud-manifest.json +0 -6
  193. package/genes/answer-synthesizer/index.ts +0 -194
  194. package/genes/answer-synthesizer/phenotype.json +0 -61
  195. package/genes/api-designer/.cloud-manifest.json +0 -6
  196. package/genes/api-designer/.gene-manifest.json +0 -8
  197. package/genes/api-designer/SKILL.md +0 -456
  198. package/genes/api-designer/phenotype.json +0 -28
  199. package/genes/auto-coder/.cloud-manifest.json +0 -6
  200. package/genes/auto-coder/.gene-manifest.json +0 -8
  201. package/genes/auto-coder/SKILL.md +0 -400
  202. package/genes/auto-coder/phenotype.json +0 -28
  203. package/genes/auto-writer/.cloud-manifest.json +0 -6
  204. package/genes/auto-writer/.gene-manifest.json +0 -8
  205. package/genes/auto-writer/SKILL.md +0 -361
  206. package/genes/auto-writer/phenotype.json +0 -28
  207. package/genes/brand-personality/.cloud-manifest.json +0 -6
  208. package/genes/brand-personality/.gene-manifest.json +0 -8
  209. package/genes/brand-personality/SKILL.md +0 -549
  210. package/genes/brand-personality/phenotype.json +0 -28
  211. package/genes/business-writer/.cloud-manifest.json +0 -6
  212. package/genes/business-writer/.gene-manifest.json +0 -8
  213. package/genes/business-writer/SKILL.md +0 -448
  214. package/genes/business-writer/phenotype.json +0 -28
  215. package/genes/citation-manager/.cloud-manifest.json +0 -6
  216. package/genes/citation-manager/.gene-manifest.json +0 -8
  217. package/genes/citation-manager/SKILL.md +0 -279
  218. package/genes/citation-manager/index.ts +0 -162
  219. package/genes/citation-manager/package.json +0 -1
  220. package/genes/citation-manager/phenotype.json +0 -50
  221. package/genes/code-complexity/.cloud-manifest.json +0 -6
  222. package/genes/code-complexity/README.md +0 -35
  223. package/genes/code-complexity/index.ts +0 -101
  224. package/genes/code-complexity/phenotype.json +0 -34
  225. package/genes/copywriter/.cloud-manifest.json +0 -6
  226. package/genes/copywriter/.gene-manifest.json +0 -8
  227. package/genes/copywriter/SKILL.md +0 -329
  228. package/genes/copywriter/phenotype.json +0 -28
  229. package/genes/creative-writer/.cloud-manifest.json +0 -6
  230. package/genes/creative-writer/.gene-manifest.json +0 -8
  231. package/genes/creative-writer/SKILL.md +0 -356
  232. package/genes/creative-writer/phenotype.json +0 -28
  233. package/genes/data-modeler/.cloud-manifest.json +0 -6
  234. package/genes/data-modeler/.gene-manifest.json +0 -8
  235. package/genes/data-modeler/SKILL.md +0 -486
  236. package/genes/data-modeler/phenotype.json +0 -28
  237. package/genes/debugger/.cloud-manifest.json +0 -6
  238. package/genes/debugger/.gene-manifest.json +0 -8
  239. package/genes/debugger/SKILL.md +0 -416
  240. package/genes/debugger/phenotype.json +0 -28
  241. package/genes/design-tokens/.cloud-manifest.json +0 -6
  242. package/genes/design-tokens/.gene-manifest.json +0 -8
  243. package/genes/design-tokens/SKILL.md +0 -222
  244. package/genes/design-tokens/index.ts +0 -128
  245. package/genes/design-tokens/package.json +0 -1
  246. package/genes/design-tokens/phenotype.json +0 -1
  247. package/genes/devops-automator/.cloud-manifest.json +0 -6
  248. package/genes/devops-automator/.gene-manifest.json +0 -8
  249. package/genes/devops-automator/SKILL.md +0 -490
  250. package/genes/devops-automator/phenotype.json +0 -28
  251. package/genes/doc-coauthoring/.cloud-manifest.json +0 -6
  252. package/genes/doc-coauthoring/.gene-manifest.json +0 -8
  253. package/genes/doc-coauthoring/SKILL.md +0 -375
  254. package/genes/doc-coauthoring/phenotype.json +0 -28
  255. package/genes/doc-retrieval/.cloud-manifest.json +0 -6
  256. package/genes/doc-retrieval/index.ts +0 -134
  257. package/genes/doc-retrieval/phenotype.json +0 -54
  258. package/genes/docs-writer/.cloud-manifest.json +0 -6
  259. package/genes/docs-writer/.gene-manifest.json +0 -8
  260. package/genes/docs-writer/SKILL.md +0 -492
  261. package/genes/docs-writer/phenotype.json +0 -28
  262. package/genes/evolve-life/.cloud-manifest.json +0 -6
  263. package/genes/evolve-life/.compile-result.json +0 -12
  264. package/genes/evolve-life/README.md +0 -52
  265. package/genes/evolve-life/gene.ir.wasm +0 -0
  266. package/genes/evolve-life/gene.wasm +0 -0
  267. package/genes/evolve-life/index.ts +0 -255
  268. package/genes/evolve-life/phenotype.json +0 -129
  269. package/genes/evolve-life-bitwise/.cloud-manifest.json +0 -6
  270. package/genes/evolve-life-bitwise/.compile-result.json +0 -12
  271. package/genes/evolve-life-bitwise/gene.ir.wasm +0 -0
  272. package/genes/evolve-life-bitwise/gene.wasm +0 -0
  273. package/genes/evolve-life-bitwise/index.ts +0 -273
  274. package/genes/evolve-life-bitwise/phenotype.json +0 -129
  275. package/genes/evolve-life-sparse/.cloud-manifest.json +0 -6
  276. package/genes/evolve-life-sparse/.compile-result.json +0 -12
  277. package/genes/evolve-life-sparse/gene.ir.wasm +0 -0
  278. package/genes/evolve-life-sparse/gene.wasm +0 -0
  279. package/genes/evolve-life-sparse/index.ts +0 -236
  280. package/genes/evolve-life-sparse/phenotype.json +0 -129
  281. package/genes/fact-checker/.cloud-manifest.json +0 -6
  282. package/genes/fact-checker/.gene-manifest.json +0 -8
  283. package/genes/fact-checker/SKILL.md +0 -373
  284. package/genes/fact-checker/phenotype.json +0 -28
  285. package/genes/git-workflow/.cloud-manifest.json +0 -6
  286. package/genes/git-workflow/.gene-manifest.json +0 -8
  287. package/genes/git-workflow/SKILL.md +0 -407
  288. package/genes/git-workflow/phenotype.json +0 -28
  289. package/genes/grammar-checker/.cloud-manifest.json +0 -6
  290. package/genes/grammar-checker/.gene-manifest.json +0 -8
  291. package/genes/grammar-checker/SKILL.md +0 -194
  292. package/genes/grammar-checker/index.ts +0 -168
  293. package/genes/grammar-checker/package.json +0 -1
  294. package/genes/grammar-checker/phenotype.json +0 -52
  295. package/genes/guard-balanced/.gene-manifest.json +0 -8
  296. package/genes/guard-balanced/phenotype.json +0 -105
  297. package/genes/guard-balanced/system-prompt.md +0 -23
  298. package/genes/guard-strict/.gene-manifest.json +0 -8
  299. package/genes/guard-strict/phenotype.json +0 -107
  300. package/genes/guard-strict/system-prompt.md +0 -18
  301. package/genes/json-validator/.cloud-manifest.json +0 -6
  302. package/genes/json-validator/README.md +0 -42
  303. package/genes/json-validator/index.ts +0 -112
  304. package/genes/json-validator/phenotype.json +0 -42
  305. package/genes/license-advisor/.cloud-manifest.json +0 -6
  306. package/genes/license-advisor/.gene-manifest.json +0 -8
  307. package/genes/license-advisor/SKILL.md +0 -117
  308. package/genes/license-advisor/phenotype.json +0 -28
  309. package/genes/logic-architect/.cloud-manifest.json +0 -6
  310. package/genes/logic-architect/.gene-manifest.json +0 -8
  311. package/genes/logic-architect/SKILL.md +0 -451
  312. package/genes/logic-architect/phenotype.json +0 -28
  313. package/genes/markdown-formatter/.cloud-manifest.json +0 -6
  314. package/genes/markdown-formatter/README.md +0 -34
  315. package/genes/markdown-formatter/index.ts +0 -86
  316. package/genes/markdown-formatter/phenotype.json +0 -32
  317. package/genes/orch/.cloud-manifest.json +0 -6
  318. package/genes/orch/.gene-manifest.json +0 -8
  319. package/genes/orch/SKILL.md +0 -504
  320. package/genes/orch/phenotype.json +0 -28
  321. package/genes/particle-barneshut/.cloud-manifest.json +0 -6
  322. package/genes/particle-barneshut/.compile-result.json +0 -12
  323. package/genes/particle-barneshut/README.md +0 -55
  324. package/genes/particle-barneshut/gene.ir.wasm +0 -0
  325. package/genes/particle-barneshut/gene.wasm +0 -0
  326. package/genes/particle-barneshut/index.ts +0 -486
  327. package/genes/particle-barneshut/phenotype.json +0 -137
  328. package/genes/particle-brute/.cloud-manifest.json +0 -6
  329. package/genes/particle-brute/.compile-result.json +0 -12
  330. package/genes/particle-brute/README.md +0 -55
  331. package/genes/particle-brute/gene.ir.wasm +0 -0
  332. package/genes/particle-brute/gene.wasm +0 -0
  333. package/genes/particle-brute/index.ts +0 -277
  334. package/genes/particle-brute/phenotype.json +0 -137
  335. package/genes/particle-spatial/.cloud-manifest.json +0 -6
  336. package/genes/particle-spatial/.compile-result.json +0 -12
  337. package/genes/particle-spatial/README.md +0 -53
  338. package/genes/particle-spatial/gene.ir.wasm +0 -0
  339. package/genes/particle-spatial/gene.wasm +0 -0
  340. package/genes/particle-spatial/index.ts +0 -352
  341. package/genes/particle-spatial/phenotype.json +0 -137
  342. package/genes/performance-optimizer/.cloud-manifest.json +0 -6
  343. package/genes/performance-optimizer/.gene-manifest.json +0 -8
  344. package/genes/performance-optimizer/SKILL.md +0 -480
  345. package/genes/performance-optimizer/phenotype.json +0 -28
  346. package/genes/plagiarism-checker/.cloud-manifest.json +0 -6
  347. package/genes/plagiarism-checker/.gene-manifest.json +0 -8
  348. package/genes/plagiarism-checker/SKILL.md +0 -342
  349. package/genes/plagiarism-checker/phenotype.json +0 -28
  350. package/genes/product-manager/.cloud-manifest.json +0 -6
  351. package/genes/product-manager/.gene-manifest.json +0 -8
  352. package/genes/product-manager/SKILL.md +0 -249
  353. package/genes/product-manager/phenotype.json +0 -28
  354. package/genes/project-reviewer/.cloud-manifest.json +0 -6
  355. package/genes/project-reviewer/.gene-manifest.json +0 -8
  356. package/genes/project-reviewer/SKILL.md +0 -312
  357. package/genes/project-reviewer/phenotype.json +0 -28
  358. package/genes/prompt-engineer/.cloud-manifest.json +0 -6
  359. package/genes/prompt-engineer/.gene-manifest.json +0 -8
  360. package/genes/prompt-engineer/SKILL.md +0 -411
  361. package/genes/prompt-engineer/phenotype.json +0 -28
  362. package/genes/prompt-review-perf/.gene-manifest.json +0 -8
  363. package/genes/prompt-review-perf/phenotype.json +0 -61
  364. package/genes/prompt-review-perf/system-prompt.md +0 -22
  365. package/genes/prompt-review-readability/.gene-manifest.json +0 -8
  366. package/genes/prompt-review-readability/phenotype.json +0 -60
  367. package/genes/prompt-review-readability/system-prompt.md +0 -21
  368. package/genes/prompt-review-security/.gene-manifest.json +0 -8
  369. package/genes/prompt-review-security/phenotype.json +0 -60
  370. package/genes/prompt-review-security/system-prompt.md +0 -21
  371. package/genes/readability-analyzer/.cloud-manifest.json +0 -6
  372. package/genes/readability-analyzer/.gene-manifest.json +0 -8
  373. package/genes/readability-analyzer/SKILL.md +0 -357
  374. package/genes/readability-analyzer/index.ts +0 -123
  375. package/genes/readability-analyzer/package.json +0 -1
  376. package/genes/readability-analyzer/phenotype.json +0 -35
  377. package/genes/rotifer-protocol/SKILL.md +0 -121
  378. package/genes/rule-router-frequency/.gene-manifest.json +0 -8
  379. package/genes/rule-router-frequency/phenotype.json +0 -76
  380. package/genes/rule-router-frequency/system-prompt.md +0 -26
  381. package/genes/rule-router-relevance/.gene-manifest.json +0 -8
  382. package/genes/rule-router-relevance/phenotype.json +0 -76
  383. package/genes/rule-router-relevance/system-prompt.md +0 -29
  384. package/genes/security-auditor/.cloud-manifest.json +0 -6
  385. package/genes/security-auditor/.gene-manifest.json +0 -8
  386. package/genes/security-auditor/SKILL.md +0 -494
  387. package/genes/security-auditor/phenotype.json +0 -28
  388. package/genes/seo-optimizer/.cloud-manifest.json +0 -6
  389. package/genes/seo-optimizer/.gene-manifest.json +0 -8
  390. package/genes/seo-optimizer/SKILL.md +0 -327
  391. package/genes/seo-optimizer/index.ts +0 -206
  392. package/genes/seo-optimizer/package.json +0 -1
  393. package/genes/seo-optimizer/phenotype.json +0 -1
  394. package/genes/source-linker/.cloud-manifest.json +0 -6
  395. package/genes/source-linker/index.ts +0 -88
  396. package/genes/source-linker/phenotype.json +0 -45
  397. package/genes/style-optimizer/.cloud-manifest.json +0 -6
  398. package/genes/style-optimizer/.gene-manifest.json +0 -8
  399. package/genes/style-optimizer/SKILL.md +0 -285
  400. package/genes/style-optimizer/phenotype.json +0 -28
  401. package/genes/tech-lead/.cloud-manifest.json +0 -6
  402. package/genes/tech-lead/.gene-manifest.json +0 -8
  403. package/genes/tech-lead/SKILL.md +0 -451
  404. package/genes/tech-lead/phenotype.json +0 -28
  405. package/genes/test-wrap/.cloud-manifest.json +0 -6
  406. package/genes/test-wrap/.gene-manifest.json +0 -8
  407. package/genes/test-wrap/phenotype.json +0 -28
  408. package/genes/testing-strategist/.cloud-manifest.json +0 -6
  409. package/genes/testing-strategist/.gene-manifest.json +0 -8
  410. package/genes/testing-strategist/SKILL.md +0 -500
  411. package/genes/testing-strategist/phenotype.json +0 -28
  412. package/genes/text-summarizer/.cloud-manifest.json +0 -6
  413. package/genes/text-summarizer/README.md +0 -34
  414. package/genes/text-summarizer/index.ts +0 -122
  415. package/genes/text-summarizer/phenotype.json +0 -32
  416. package/genes/tone-analyzer/.cloud-manifest.json +0 -6
  417. package/genes/tone-analyzer/.gene-manifest.json +0 -8
  418. package/genes/tone-analyzer/SKILL.md +0 -410
  419. package/genes/tone-analyzer/phenotype.json +0 -28
  420. package/genes/translator/.cloud-manifest.json +0 -6
  421. package/genes/translator/.gene-manifest.json +0 -8
  422. package/genes/translator/SKILL.md +0 -355
  423. package/genes/translator/phenotype.json +0 -28
  424. package/genes/ui-components/.cloud-manifest.json +0 -6
  425. package/genes/ui-components/.gene-manifest.json +0 -8
  426. package/genes/ui-components/SKILL.md +0 -467
  427. package/genes/ui-components/phenotype.json +0 -28
  428. package/genes/uiux-designer/.cloud-manifest.json +0 -6
  429. package/genes/uiux-designer/.gene-manifest.json +0 -8
  430. package/genes/uiux-designer/SKILL.md +0 -353
  431. package/genes/uiux-designer/phenotype.json +0 -28
  432. package/genes/url-extractor/.cloud-manifest.json +0 -6
  433. package/genes/url-extractor/README.md +0 -37
  434. package/genes/url-extractor/index.ts +0 -86
  435. package/genes/url-extractor/phenotype.json +0 -48
  436. package/genes/ux-patterns/.cloud-manifest.json +0 -6
  437. package/genes/ux-patterns/.gene-manifest.json +0 -8
  438. package/genes/ux-patterns/SKILL.md +0 -872
  439. package/genes/ux-patterns/phenotype.json +0 -28
  440. package/genes/web3-components/.cloud-manifest.json +0 -6
  441. package/genes/web3-components/.gene-manifest.json +0 -8
  442. package/genes/web3-components/SKILL.md +0 -390
  443. package/genes/web3-components/phenotype.json +0 -28
@@ -1,128 +0,0 @@
1
- interface DesignTokenInput {
2
- primaryHue?: number;
3
- mode?: "light" | "dark";
4
- density?: "compact" | "normal" | "spacious";
5
- borderRadius?: "sharp" | "rounded" | "pill";
6
- }
7
-
8
- interface DesignTokenOutput {
9
- css: string;
10
- tokens: Record<string, string>;
11
- totalTokens: number;
12
- }
13
-
14
- function hsl(h: number, s: number, l: number): string {
15
- return `hsl(${Math.round(h)}, ${Math.round(s)}%, ${Math.round(l)}%)`;
16
- }
17
-
18
- function generatePalette(hue: number, dark: boolean): Record<string, string> {
19
- const bg = dark ? hsl(hue, 5, 5) : hsl(hue, 10, 99);
20
- const surface = dark ? hsl(hue, 5, 8) : hsl(hue, 8, 96);
21
- const surfaceHover = dark ? hsl(hue, 5, 12) : hsl(hue, 8, 93);
22
- const border = dark ? hsl(hue, 6, 15) : hsl(hue, 10, 88);
23
- const borderHover = dark ? hsl(hue, 6, 25) : hsl(hue, 10, 75);
24
- const text = dark ? hsl(hue, 5, 96) : hsl(hue, 8, 8);
25
- const textMuted = dark ? hsl(hue, 4, 60) : hsl(hue, 5, 40);
26
- const textDim = dark ? hsl(hue, 3, 40) : hsl(hue, 4, 60);
27
- const primary = hsl(hue, 70, dark ? 55 : 45);
28
- const primaryHover = hsl(hue, 70, dark ? 60 : 40);
29
- const primaryForeground = dark ? hsl(hue, 5, 5) : hsl(0, 0, 100);
30
- const accent = hsl((hue + 30) % 360, 60, dark ? 50 : 45);
31
- const destructive = hsl(0, 70, dark ? 55 : 45);
32
- const success = hsl(140, 60, dark ? 50 : 40);
33
- const warning = hsl(40, 80, dark ? 55 : 45);
34
-
35
- return {
36
- "--color-bg": bg,
37
- "--color-surface": surface,
38
- "--color-surface-hover": surfaceHover,
39
- "--color-border": border,
40
- "--color-border-hover": borderHover,
41
- "--color-text": text,
42
- "--color-text-muted": textMuted,
43
- "--color-text-dim": textDim,
44
- "--color-primary": primary,
45
- "--color-primary-hover": primaryHover,
46
- "--color-primary-fg": primaryForeground,
47
- "--color-accent": accent,
48
- "--color-destructive": destructive,
49
- "--color-success": success,
50
- "--color-warning": warning,
51
- };
52
- }
53
-
54
- function generateSpacing(density: string): Record<string, string> {
55
- const base = density === "compact" ? 4 : density === "spacious" ? 8 : 6;
56
- const scale = [0.25, 0.5, 1, 1.5, 2, 3, 4, 6, 8, 12];
57
- const tokens: Record<string, string> = {};
58
- scale.forEach((m, i) => {
59
- tokens[`--space-${i}`] = `${Math.round(base * m)}px`;
60
- });
61
- return tokens;
62
- }
63
-
64
- function generateRadius(style: string): Record<string, string> {
65
- const values: Record<string, Record<string, string>> = {
66
- sharp: { "--radius-sm": "2px", "--radius-md": "4px", "--radius-lg": "6px", "--radius-full": "8px" },
67
- rounded: { "--radius-sm": "4px", "--radius-md": "8px", "--radius-lg": "12px", "--radius-full": "9999px" },
68
- pill: { "--radius-sm": "9999px", "--radius-md": "9999px", "--radius-lg": "9999px", "--radius-full": "9999px" },
69
- };
70
- return values[style] || values.rounded;
71
- }
72
-
73
- function generateTypography(): Record<string, string> {
74
- return {
75
- "--font-sans": "'Inter', -apple-system, BlinkMacSystemFont, sans-serif",
76
- "--font-mono": "'JetBrains Mono', 'Fira Code', monospace",
77
- "--text-xs": "0.75rem",
78
- "--text-sm": "0.875rem",
79
- "--text-base": "1rem",
80
- "--text-lg": "1.125rem",
81
- "--text-xl": "1.25rem",
82
- "--text-2xl": "1.5rem",
83
- "--text-3xl": "2rem",
84
- "--line-height-tight": "1.25",
85
- "--line-height-normal": "1.5",
86
- "--line-height-relaxed": "1.75",
87
- "--font-weight-normal": "400",
88
- "--font-weight-medium": "500",
89
- "--font-weight-semibold": "600",
90
- "--font-weight-bold": "700",
91
- };
92
- }
93
-
94
- function generateShadows(dark: boolean): Record<string, string> {
95
- const opacity = dark ? 0.5 : 0.1;
96
- return {
97
- "--shadow-sm": `0 1px 2px rgba(0,0,0,${opacity})`,
98
- "--shadow-md": `0 4px 6px rgba(0,0,0,${opacity})`,
99
- "--shadow-lg": `0 10px 15px rgba(0,0,0,${opacity})`,
100
- "--shadow-xl": `0 20px 25px rgba(0,0,0,${opacity})`,
101
- };
102
- }
103
-
104
- /**
105
- * Design Tokens Gene
106
- *
107
- * Generates a complete CSS custom property system from brand parameters.
108
- * Pure HSL math and scale calculations — no external dependencies.
109
- */
110
- export async function express(input: DesignTokenInput): Promise<DesignTokenOutput> {
111
- const hue = input.primaryHue ?? 220;
112
- const dark = (input.mode ?? "dark") === "dark";
113
- const density = input.density ?? "normal";
114
- const radius = input.borderRadius ?? "rounded";
115
-
116
- const tokens: Record<string, string> = {
117
- ...generatePalette(hue, dark),
118
- ...generateSpacing(density),
119
- ...generateRadius(radius),
120
- ...generateTypography(),
121
- ...generateShadows(dark),
122
- };
123
-
124
- const lines = Object.entries(tokens).map(([k, v]) => ` ${k}: ${v};`);
125
- const css = `:root {\n${lines.join("\n")}\n}`;
126
-
127
- return { css, tokens, totalTokens: Object.keys(tokens).length };
128
- }
@@ -1 +0,0 @@
1
- {"type":"module"}
@@ -1 +0,0 @@
1
- {"domain":"ui.design","description":"Parameterized design token system. Dynamically generates CSS variables for colors, border-radius, spacing, and typography based on brand parameters.","inputSchema":{"type":"object","properties":{"primaryHue":{"type":"number","description":"Primary color hue (0-360)"},"mode":{"type":"string","enum":["light","dark"],"description":"Color mode"},"density":{"type":"string","enum":["compact","normal","spacious"],"description":"Spacing density"},"borderRadius":{"type":"string","enum":["sharp","rounded","pill"],"description":"Border radius style"}},"required":[]},"outputSchema":{"type":"object","properties":{"css":{"type":"string","description":"Full :root { --var: value; } block"},"tokens":{"type":"object","additionalProperties":{"type":"string"},"description":"Token name to value mapping"},"totalTokens":{"type":"number","description":"Total number of token variables"}},"required":["css","tokens","totalTokens"]},"dependencies":[],"version":"0.2.0","author":"rotifer-team","createdAt":1771939246888,"fidelity":"Native","transparency":"Open","source":"skill"}
@@ -1,6 +0,0 @@
1
- {
2
- "cloud_id": "5cc8c2ea-7ce4-4d9a-8347-a43a3ec80a96",
3
- "owner": "Rotifer Protocol",
4
- "version": "0.1.0",
5
- "published_at": "2026-03-17T14:12:28.975Z"
6
- }
@@ -1,8 +0,0 @@
1
- {
2
- "geneId": "613f1a7b180c758016c44f85210f4beec2dede9944a36f77a4d4fad9d02285c2",
3
- "name": "devops-automator",
4
- "domain": "devops.cicd",
5
- "fidelity": "Wrapped",
6
- "wrappedAt": "2026-02-24T13:23:33.758Z",
7
- "fromSkill": "../.cursor/skills/devops-automator/SKILL.md"
8
- }
@@ -1,490 +0,0 @@
1
- ---
2
- name: devops-automator
3
- description: Automate CI/CD pipelines, Docker configuration, and deployment for Next.js AI/Web3 apps. Setup GitHub Actions, Vercel, and environment management. Use when setting up deployment, CI/CD, or when the user mentions deploy, docker, github actions, vercel, or ci/cd.
4
- ---
5
-
6
- # DevOps Automator (自动化运维师)
7
-
8
- **Goal**: 自动化构建、测试、部署流程,降低 OPC 运维负担。
9
-
10
- **原则**: 能自动化的不手动,能托管的不自建。
11
-
12
- ---
13
-
14
- ## 1. GitHub Actions
15
-
16
- ### 基础 CI 流程
17
-
18
- ```yaml
19
- # .github/workflows/ci.yml
20
- name: CI
21
-
22
- on:
23
- push:
24
- branches: [main]
25
- pull_request:
26
- branches: [main]
27
-
28
- jobs:
29
- lint:
30
- runs-on: ubuntu-latest
31
- steps:
32
- - uses: actions/checkout@v4
33
- - uses: pnpm/action-setup@v2
34
- - uses: actions/setup-node@v4
35
- with:
36
- node-version: 20
37
- cache: 'pnpm'
38
- - run: pnpm install
39
- - run: pnpm lint
40
- - run: pnpm typecheck
41
-
42
- test:
43
- runs-on: ubuntu-latest
44
- steps:
45
- - uses: actions/checkout@v4
46
- - uses: pnpm/action-setup@v2
47
- - uses: actions/setup-node@v4
48
- with:
49
- node-version: 20
50
- cache: 'pnpm'
51
- - run: pnpm install
52
- - run: pnpm test
53
-
54
- build:
55
- runs-on: ubuntu-latest
56
- needs: [lint, test]
57
- steps:
58
- - uses: actions/checkout@v4
59
- - uses: pnpm/action-setup@v2
60
- - uses: actions/setup-node@v4
61
- with:
62
- node-version: 20
63
- cache: 'pnpm'
64
- - run: pnpm install
65
- - run: pnpm build
66
- ```
67
-
68
- ### 带数据库的测试
69
-
70
- ```yaml
71
- # .github/workflows/test.yml
72
- name: Test
73
-
74
- on: [push, pull_request]
75
-
76
- jobs:
77
- test:
78
- runs-on: ubuntu-latest
79
-
80
- services:
81
- postgres:
82
- image: postgres:15
83
- env:
84
- POSTGRES_USER: test
85
- POSTGRES_PASSWORD: test
86
- POSTGRES_DB: test
87
- ports:
88
- - 5432:5432
89
- options: >-
90
- --health-cmd pg_isready
91
- --health-interval 10s
92
- --health-timeout 5s
93
- --health-retries 5
94
-
95
- steps:
96
- - uses: actions/checkout@v4
97
- - uses: pnpm/action-setup@v2
98
- - uses: actions/setup-node@v4
99
- with:
100
- node-version: 20
101
- cache: 'pnpm'
102
-
103
- - run: pnpm install
104
-
105
- - name: Setup Database
106
- run: pnpm prisma db push
107
- env:
108
- DATABASE_URL: postgresql://test:test@localhost:5432/test
109
-
110
- - name: Run Tests
111
- run: pnpm test
112
- env:
113
- DATABASE_URL: postgresql://test:test@localhost:5432/test
114
- ```
115
-
116
- ### 自动发布
117
-
118
- ```yaml
119
- # .github/workflows/release.yml
120
- name: Release
121
-
122
- on:
123
- push:
124
- tags:
125
- - 'v*'
126
-
127
- jobs:
128
- release:
129
- runs-on: ubuntu-latest
130
- steps:
131
- - uses: actions/checkout@v4
132
- with:
133
- fetch-depth: 0
134
-
135
- - name: Generate Changelog
136
- id: changelog
137
- uses: metcalfc/changelog-generator@v4
138
- with:
139
- myToken: ${{ secrets.GITHUB_TOKEN }}
140
-
141
- - name: Create Release
142
- uses: softprops/action-gh-release@v1
143
- with:
144
- body: ${{ steps.changelog.outputs.changelog }}
145
- env:
146
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
147
- ```
148
-
149
- ---
150
-
151
- ## 2. Vercel Deployment
152
-
153
- ### vercel.json 配置
154
-
155
- ```json
156
- {
157
- "framework": "nextjs",
158
- "buildCommand": "pnpm build",
159
- "installCommand": "pnpm install",
160
- "regions": ["hkg1"],
161
- "env": {
162
- "DATABASE_URL": "@database-url",
163
- "OPENAI_API_KEY": "@openai-api-key"
164
- },
165
- "headers": [
166
- {
167
- "source": "/api/(.*)",
168
- "headers": [
169
- { "key": "Cache-Control", "value": "no-store" }
170
- ]
171
- }
172
- ]
173
- }
174
- ```
175
-
176
- ### 环境变量设置
177
-
178
- ```bash
179
- # 使用 Vercel CLI
180
- vercel env add DATABASE_URL production
181
- vercel env add OPENAI_API_KEY production
182
-
183
- # 或在 Vercel Dashboard 设置
184
- # Settings → Environment Variables
185
- ```
186
-
187
- ### 预览部署
188
-
189
- ```yaml
190
- # PR 自动预览 (Vercel 默认支持)
191
- # 每个 PR 都会有独立预览 URL
192
- ```
193
-
194
- ---
195
-
196
- ## 3. Docker
197
-
198
- ### Next.js Dockerfile
199
-
200
- ```dockerfile
201
- # Dockerfile
202
- FROM node:20-alpine AS base
203
-
204
- # Install pnpm
205
- RUN corepack enable && corepack prepare pnpm@latest --activate
206
-
207
- # Dependencies
208
- FROM base AS deps
209
- WORKDIR /app
210
- COPY package.json pnpm-lock.yaml ./
211
- RUN pnpm install --frozen-lockfile
212
-
213
- # Builder
214
- FROM base AS builder
215
- WORKDIR /app
216
- COPY --from=deps /app/node_modules ./node_modules
217
- COPY . .
218
- RUN pnpm build
219
-
220
- # Runner
221
- FROM base AS runner
222
- WORKDIR /app
223
- ENV NODE_ENV=production
224
-
225
- RUN addgroup --system --gid 1001 nodejs
226
- RUN adduser --system --uid 1001 nextjs
227
-
228
- COPY --from=builder /app/public ./public
229
- COPY --from=builder --chown=nextjs:nodejs /app/.next/standalone ./
230
- COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static
231
-
232
- USER nextjs
233
- EXPOSE 3000
234
- ENV PORT=3000
235
- CMD ["node", "server.js"]
236
- ```
237
-
238
- ### next.config.js (Standalone)
239
-
240
- ```javascript
241
- /** @type {import('next').NextConfig} */
242
- const nextConfig = {
243
- output: 'standalone',
244
- }
245
-
246
- module.exports = nextConfig
247
- ```
248
-
249
- ### docker-compose.yml
250
-
251
- ```yaml
252
- version: '3.8'
253
-
254
- services:
255
- app:
256
- build: .
257
- ports:
258
- - "3000:3000"
259
- environment:
260
- - DATABASE_URL=postgresql://postgres:postgres@db:5432/app
261
- - OPENAI_API_KEY=${OPENAI_API_KEY}
262
- depends_on:
263
- - db
264
-
265
- db:
266
- image: postgres:15-alpine
267
- volumes:
268
- - postgres_data:/var/lib/postgresql/data
269
- environment:
270
- - POSTGRES_USER=postgres
271
- - POSTGRES_PASSWORD=postgres
272
- - POSTGRES_DB=app
273
-
274
- volumes:
275
- postgres_data:
276
- ```
277
-
278
- ---
279
-
280
- ## 4. Environment Management
281
-
282
- ### .env 文件结构
283
-
284
- ```bash
285
- # .env.local (本地开发,不提交)
286
- DATABASE_URL="postgresql://..."
287
- OPENAI_API_KEY="sk-..."
288
-
289
- # .env.development (开发环境默认值,可提交)
290
- NEXT_PUBLIC_APP_URL="http://localhost:3000"
291
- NEXT_PUBLIC_CHAIN_ID="11155111"
292
-
293
- # .env.production (生产环境默认值,可提交)
294
- NEXT_PUBLIC_APP_URL="https://myapp.com"
295
- NEXT_PUBLIC_CHAIN_ID="1"
296
-
297
- # .env.example (示例,必须提交)
298
- DATABASE_URL="postgresql://user:password@localhost:5432/db"
299
- OPENAI_API_KEY="sk-..."
300
- ```
301
-
302
- ### 环境变量验证
303
-
304
- ```typescript
305
- // lib/env.ts
306
- import { z } from 'zod'
307
-
308
- const envSchema = z.object({
309
- DATABASE_URL: z.string().url(),
310
- OPENAI_API_KEY: z.string().startsWith('sk-'),
311
- NEXT_PUBLIC_APP_URL: z.string().url(),
312
- NEXT_PUBLIC_CHAIN_ID: z.string().optional().default('1'),
313
- })
314
-
315
- export const env = envSchema.parse(process.env)
316
- ```
317
-
318
- ---
319
-
320
- ## 5. Database Management
321
-
322
- ### Prisma Migrate in CI
323
-
324
- ```yaml
325
- # 在部署前运行 migration
326
- - name: Run Migrations
327
- run: pnpm prisma migrate deploy
328
- env:
329
- DATABASE_URL: ${{ secrets.DATABASE_URL }}
330
- ```
331
-
332
- ### 数据库备份 (Cron Job)
333
-
334
- ```yaml
335
- # .github/workflows/backup.yml
336
- name: Database Backup
337
-
338
- on:
339
- schedule:
340
- - cron: '0 0 * * *' # 每天 UTC 00:00
341
-
342
- jobs:
343
- backup:
344
- runs-on: ubuntu-latest
345
- steps:
346
- - name: Backup Database
347
- run: |
348
- pg_dump $DATABASE_URL > backup-$(date +%Y%m%d).sql
349
- env:
350
- DATABASE_URL: ${{ secrets.DATABASE_URL }}
351
-
352
- - name: Upload to S3
353
- uses: aws-actions/configure-aws-credentials@v4
354
- with:
355
- aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
356
- aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
357
- aws-region: ap-northeast-1
358
- - run: aws s3 cp backup-*.sql s3://my-backups/
359
- ```
360
-
361
- ---
362
-
363
- ## 6. Monitoring & Alerts
364
-
365
- ### Uptime Monitoring
366
-
367
- ```yaml
368
- # 使用 Better Uptime / UptimeRobot
369
- # 或自建 GitHub Actions 检查
370
-
371
- name: Health Check
372
-
373
- on:
374
- schedule:
375
- - cron: '*/5 * * * *' # 每 5 分钟
376
-
377
- jobs:
378
- health:
379
- runs-on: ubuntu-latest
380
- steps:
381
- - name: Check Health
382
- run: |
383
- response=$(curl -s -o /dev/null -w "%{http_code}" ${{ secrets.APP_URL }}/api/health)
384
- if [ $response != "200" ]; then
385
- echo "Health check failed with status $response"
386
- exit 1
387
- fi
388
- ```
389
-
390
- ### Error Tracking (Sentry)
391
-
392
- ```typescript
393
- // sentry.client.config.ts
394
- import * as Sentry from '@sentry/nextjs'
395
-
396
- Sentry.init({
397
- dsn: process.env.NEXT_PUBLIC_SENTRY_DSN,
398
- tracesSampleRate: 0.1,
399
- environment: process.env.NODE_ENV,
400
- })
401
- ```
402
-
403
- ---
404
-
405
- ## 7. Security
406
-
407
- ### Secrets 管理
408
-
409
- ```bash
410
- # GitHub Secrets (Settings → Secrets)
411
- OPENAI_API_KEY
412
- DATABASE_URL
413
- VERCEL_TOKEN
414
-
415
- # 永远不要在代码中硬编码
416
- # 永远不要提交 .env.local
417
- ```
418
-
419
- ### Dependabot
420
-
421
- ```yaml
422
- # .github/dependabot.yml
423
- version: 2
424
- updates:
425
- - package-ecosystem: "npm"
426
- directory: "/"
427
- schedule:
428
- interval: "weekly"
429
- open-pull-requests-limit: 5
430
-
431
- - package-ecosystem: "github-actions"
432
- directory: "/"
433
- schedule:
434
- interval: "weekly"
435
- ```
436
-
437
- ---
438
-
439
- ## 8. Quick Deploy Configs
440
-
441
- ### Railway
442
-
443
- ```json
444
- // railway.json
445
- {
446
- "build": {
447
- "builder": "nixpacks"
448
- },
449
- "deploy": {
450
- "startCommand": "pnpm start",
451
- "healthcheckPath": "/api/health"
452
- }
453
- }
454
- ```
455
-
456
- ### Fly.io
457
-
458
- ```toml
459
- # fly.toml
460
- app = "my-app"
461
-
462
- [build]
463
- dockerfile = "Dockerfile"
464
-
465
- [http_service]
466
- internal_port = 3000
467
- force_https = true
468
-
469
- [env]
470
- NODE_ENV = "production"
471
- ```
472
-
473
- ---
474
-
475
- ## Quick Reference
476
-
477
- ### 部署平台选择
478
-
479
- | 平台 | 优势 | 适合场景 |
480
- |------|------|----------|
481
- | Vercel | Next.js 原生支持 | 大部分项目 |
482
- | Railway | 简单、数据库集成 | 需要后端服务 |
483
- | Fly.io | 全球边缘、Docker | 需要低延迟 |
484
- | 自建 VPS | 完全控制 | 特殊需求 |
485
-
486
- ### 必备 Secrets
487
-
488
- ```
489
- DATABASE_URL, OPENAI_API_KEY, VERCEL_TOKEN, SENTRY_DSN
490
- ```
@@ -1,28 +0,0 @@
1
- {
2
- "domain": "devops.cicd",
3
- "description": "Automate CI/CD pipelines, Docker configuration, and deployment for Next.js AI/Web3 apps. Setup GitHub Actions, Vercel, and environment management. Use when setting up deployment, CI/CD, or when the user mentions deploy, docker, github actions, vercel, or ci/cd.",
4
- "inputSchema": {
5
- "type": "object",
6
- "properties": {
7
- "prompt": {
8
- "type": "string"
9
- }
10
- },
11
- "required": []
12
- },
13
- "outputSchema": {
14
- "type": "object",
15
- "properties": {
16
- "result": {
17
- "type": "string"
18
- }
19
- }
20
- },
21
- "dependencies": [],
22
- "version": "0.1.0",
23
- "author": "rotifer-team",
24
- "createdAt": 1771939413757,
25
- "fidelity": "Wrapped",
26
- "transparency": "Open",
27
- "source": "skill"
28
- }
@@ -1,6 +0,0 @@
1
- {
2
- "cloud_id": "3d7ee85d-d92e-4b04-8e02-0c0177bef9ec",
3
- "owner": "Rotifer Protocol",
4
- "version": "0.1.0",
5
- "published_at": "2026-03-17T14:12:31.104Z"
6
- }
@@ -1,8 +0,0 @@
1
- {
2
- "geneId": "0589d147fcc7c3ae9d5ec9522ea8dc65404fb8c2101fc64ee01b975eff91690d",
3
- "name": "doc-coauthoring",
4
- "domain": "docs.collaboration",
5
- "fidelity": "Wrapped",
6
- "wrappedAt": "2026-02-24T13:23:36.272Z",
7
- "fromSkill": "../.cursor/skills/doc-coauthoring/SKILL.md"
8
- }