@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,53 +0,0 @@
1
- # particle-spatial
2
-
3
- Spatial hash grid N-body simulation — a pure-computation Native Gene for the Rotifer Protocol.
4
-
5
- ## Algorithm
6
-
7
- Partitions space into a uniform grid of fixed-size cells. For each particle, only computes gravitational forces from particles in the same cell and 8 neighboring cells (3×3 neighborhood). Long-range forces beyond the cell neighborhood are ignored.
8
-
9
- Cell size is adaptive: `cellSize = max(2ε, 2 × √(area / n))`, scaling with the average inter-particle spacing and bounded by the softening parameter.
10
-
11
- Integration uses the symplectic leapfrog (kick-drift-kick) scheme.
12
-
13
- This approach trades long-range gravitational accuracy for raw speed — achieving near-O(n) performance when particles are roughly uniformly distributed. It's better suited for short-range-dominated systems (collisions, dense clusters) than for orbital mechanics where long-range gravity dominates.
14
-
15
- ## Usage
16
-
17
- ```bash
18
- # Cluster preset (good fit for spatial hashing)
19
- rotifer run particle-spatial --input '{"preset": "cluster", "count": 256}'
20
-
21
- # Collision (where short-range forces dominate)
22
- rotifer run particle-spatial --input '{"preset": "collision", "count": 512, "steps": 300}'
23
-
24
- # Solar system (less accurate due to missing long-range forces)
25
- rotifer run particle-spatial --input '{"preset": "solar"}'
26
- ```
27
-
28
- ## Presets
29
-
30
- | Preset | Description |
31
- |--------|-------------|
32
- | `solar` | Central massive body + orbiting lighter bodies with circular velocities |
33
- | `binary` | Two equal-mass stars in mutual orbit + debris ring |
34
- | `cluster` | Random particles in a disk with small random velocities |
35
- | `collision` | Two groups of particles approaching head-on |
36
-
37
- ## Output
38
-
39
- - `particles` — final positions and velocities of all particles
40
- - `steps_computed` — number of simulation steps executed
41
- - `total_energy` — total system energy (kinetic + potential) for conservation validation
42
- - `interactions_computed` — total neighbor-cell force evaluations
43
-
44
- ## Fitness Characteristics
45
-
46
- | Metric | Expected |
47
- |--------|----------|
48
- | Success Rate | 1.0 (deterministic, no failure mode) |
49
- | Accuracy | Low-medium (only short-range interactions, misses distant forces) |
50
- | Complexity | ~O(n × steps) for uniform distributions |
51
- | Interactions | Depends on particle clustering — much fewer than n² |
52
- | Best For | Large N with short-range dominated interactions (collisions, dense clusters) |
53
- | Weakness | Poor for orbital/long-range gravity (solar, binary) |
Binary file
Binary file
@@ -1,352 +0,0 @@
1
- interface Particle {
2
- x: number;
3
- y: number;
4
- vx: number;
5
- vy: number;
6
- mass: number;
7
- }
8
-
9
- interface ParticleInput {
10
- particles?: Particle[];
11
- preset?: "solar" | "binary" | "cluster" | "collision";
12
- count?: number;
13
- steps?: number;
14
- dt?: number;
15
- G?: number;
16
- softening?: number;
17
- seed?: number;
18
- }
19
-
20
- interface ParticleOutput {
21
- particles: Particle[];
22
- steps_computed: number;
23
- total_energy: number;
24
- interactions_computed: number;
25
- }
26
-
27
- function mulberry32(seed: number): () => number {
28
- let s = seed | 0;
29
- return () => {
30
- s = (s + 0x6d2b79f5) | 0;
31
- let t = Math.imul(s ^ (s >>> 15), 1 | s);
32
- t = (t + Math.imul(t ^ (t >>> 7), 61 | t)) ^ t;
33
- return ((t ^ (t >>> 14)) >>> 0) / 4294967296;
34
- };
35
- }
36
-
37
- function generatePreset(
38
- preset: "solar" | "binary" | "cluster" | "collision",
39
- count: number,
40
- seed: number
41
- ): Particle[] {
42
- const rng = mulberry32(seed);
43
- const G = 1.0;
44
-
45
- switch (preset) {
46
- case "solar": {
47
- const particles: Particle[] = [];
48
- const M_central = 100;
49
- particles.push({ x: 0, y: 0, vx: 0, vy: 0, mass: M_central });
50
-
51
- const nOrbiters = Math.min(count - 1, 63);
52
- for (let i = 0; i < nOrbiters; i++) {
53
- const r = 2 + rng() * 8;
54
- const theta = rng() * 2 * Math.PI;
55
- const x = r * Math.cos(theta);
56
- const y = r * Math.sin(theta);
57
- const v = Math.sqrt((G * M_central) / r);
58
- const vx = -v * Math.sin(theta);
59
- const vy = v * Math.cos(theta);
60
- const mass = 0.1 + rng() * 0.9;
61
- particles.push({ x, y, vx, vy, mass });
62
- }
63
- return particles;
64
- }
65
-
66
- case "binary": {
67
- const particles: Particle[] = [];
68
- const m1 = 50;
69
- const m2 = 50;
70
- const d = 4;
71
- const r1 = (d * m2) / (m1 + m2);
72
- const r2 = (d * m1) / (m1 + m2);
73
- const omega = Math.sqrt((G * (m1 + m2)) / (d * d * d));
74
- const v1 = omega * r1;
75
- const v2 = omega * r2;
76
-
77
- particles.push({ x: -r1, y: 0, vx: 0, vy: -v1, mass: m1 });
78
- particles.push({ x: r2, y: 0, vx: 0, vy: v2, mass: m2 });
79
-
80
- const nDebris = Math.min(count - 2, 62);
81
- for (let i = 0; i < nDebris; i++) {
82
- const r = 6 + rng() * 4;
83
- const theta = rng() * 2 * Math.PI;
84
- const x = r * Math.cos(theta);
85
- const y = r * Math.sin(theta);
86
- const v = Math.sqrt((G * (m1 + m2)) / r) * (0.8 + rng() * 0.4);
87
- const vx = -v * Math.sin(theta);
88
- const vy = v * Math.cos(theta);
89
- const mass = 0.1 + rng() * 0.5;
90
- particles.push({ x, y, vx, vy, mass });
91
- }
92
- return particles;
93
- }
94
-
95
- case "cluster": {
96
- const particles: Particle[] = [];
97
- const radius = 5;
98
- for (let i = 0; i < count; i++) {
99
- const r = radius * Math.sqrt(rng());
100
- const theta = rng() * 2 * Math.PI;
101
- const x = r * Math.cos(theta);
102
- const y = r * Math.sin(theta);
103
- const vMax = 0.3;
104
- const vx = (rng() - 0.5) * 2 * vMax;
105
- const vy = (rng() - 0.5) * 2 * vMax;
106
- const mass = 0.5 + rng() * 1.5;
107
- particles.push({ x, y, vx, vy, mass });
108
- }
109
- return particles;
110
- }
111
-
112
- case "collision": {
113
- const particles: Particle[] = [];
114
- const half = Math.floor(count / 2);
115
- const sep = 10;
116
- const vApproach = 1.5;
117
-
118
- for (let i = 0; i < half; i++) {
119
- const x = -sep + (rng() - 0.5) * 4;
120
- const y = (rng() - 0.5) * 4;
121
- const vx = vApproach + (rng() - 0.5) * 0.4;
122
- const vy = (rng() - 0.5) * 0.4;
123
- const mass = 0.5 + rng() * 1.5;
124
- particles.push({ x, y, vx, vy, mass });
125
- }
126
- for (let i = 0; i < count - half; i++) {
127
- const x = sep + (rng() - 0.5) * 4;
128
- const y = (rng() - 0.5) * 4;
129
- const vx = -vApproach + (rng() - 0.5) * 0.4;
130
- const vy = (rng() - 0.5) * 0.4;
131
- const mass = 0.5 + rng() * 1.5;
132
- particles.push({ x, y, vx, vy, mass });
133
- }
134
- return particles;
135
- }
136
-
137
- default:
138
- return generatePreset("cluster", count, seed);
139
- }
140
- }
141
-
142
- function computeTotalEnergy(
143
- particles: Particle[],
144
- G: number,
145
- softening: number
146
- ): number {
147
- let kinetic = 0;
148
- let potential = 0;
149
- const n = particles.length;
150
-
151
- for (let i = 0; i < n; i++) {
152
- const p = particles[i];
153
- kinetic += 0.5 * p.mass * (p.vx * p.vx + p.vy * p.vy);
154
- }
155
-
156
- for (let i = 0; i < n; i++) {
157
- for (let j = i + 1; j < n; j++) {
158
- const pi = particles[i];
159
- const pj = particles[j];
160
- const dx = pj.x - pi.x;
161
- const dy = pj.y - pi.y;
162
- const rSq = dx * dx + dy * dy + softening * softening;
163
- const r = Math.sqrt(rSq);
164
- potential -= (G * pi.mass * pj.mass) / r;
165
- }
166
- }
167
-
168
- return kinetic + potential;
169
- }
170
-
171
- function buildGrid(
172
- particles: Particle[],
173
- cellSize: number
174
- ): Map<string, number[]> {
175
- const grid = new Map<string, number[]>();
176
- for (let i = 0; i < particles.length; i++) {
177
- const p = particles[i];
178
- const cx = Math.floor(p.x / cellSize);
179
- const cy = Math.floor(p.y / cellSize);
180
- const key = `${cx},${cy}`;
181
- let cell = grid.get(key);
182
- if (!cell) {
183
- cell = [];
184
- grid.set(key, cell);
185
- }
186
- cell.push(i);
187
- }
188
- return grid;
189
- }
190
-
191
- function computeForcesSpatial(
192
- particles: Particle[],
193
- grid: Map<string, number[]>,
194
- cellSize: number,
195
- ax: Float64Array,
196
- ay: Float64Array,
197
- G: number,
198
- softening: number
199
- ): number {
200
- const n = particles.length;
201
- let interactions = 0;
202
-
203
- for (let i = 0; i < n; i++) {
204
- const pi = particles[i];
205
- const cx = Math.floor(pi.x / cellSize);
206
- const cy = Math.floor(pi.y / cellSize);
207
-
208
- for (let dx = -1; dx <= 1; dx++) {
209
- for (let dy = -1; dy <= 1; dy++) {
210
- const key = `${cx + dx},${cy + dy}`;
211
- const cell = grid.get(key);
212
- if (!cell) continue;
213
-
214
- for (const j of cell) {
215
- if (j === i) continue;
216
- const pj = particles[j];
217
- const ddx = pj.x - pi.x;
218
- const ddy = pj.y - pi.y;
219
- const rSq = ddx * ddx + ddy * ddy + softening * softening;
220
- const rSoft = Math.pow(rSq, 1.5);
221
- const factor = G / rSoft;
222
-
223
- ax[i] += factor * pj.mass * ddx;
224
- ay[i] += factor * pj.mass * ddy;
225
- interactions++;
226
- }
227
- }
228
- }
229
- }
230
-
231
- return interactions;
232
- }
233
-
234
- export async function express(input: ParticleInput): Promise<ParticleOutput> {
235
- const count = Math.max(2, Math.min(2048, input.count ?? 64));
236
- const steps = Math.max(1, Math.min(10000, input.steps ?? 100));
237
- const dt = input.dt ?? 0.01;
238
- const G = input.G ?? 1.0;
239
- const softening = input.softening ?? 0.01;
240
- const seed = input.seed ?? 42;
241
-
242
- let particles: Particle[];
243
-
244
- if (input.particles && input.particles.length > 0) {
245
- particles = input.particles.map((p) => ({
246
- x: p.x,
247
- y: p.y,
248
- vx: p.vx,
249
- vy: p.vy,
250
- mass: p.mass,
251
- }));
252
- } else {
253
- const preset = input.preset ?? "cluster";
254
- particles = generatePreset(preset, count, seed);
255
- }
256
-
257
- const n = particles.length;
258
- const ax = new Float64Array(n);
259
- const ay = new Float64Array(n);
260
- let interactionsComputed = 0;
261
-
262
- for (let stepIdx = 0; stepIdx < steps; stepIdx++) {
263
- let minX = particles[0].x;
264
- let maxX = particles[0].x;
265
- let minY = particles[0].y;
266
- let maxY = particles[0].y;
267
-
268
- for (let i = 1; i < n; i++) {
269
- const p = particles[i];
270
- if (p.x < minX) minX = p.x;
271
- if (p.x > maxX) maxX = p.x;
272
- if (p.y < minY) minY = p.y;
273
- if (p.y > maxY) maxY = p.y;
274
- }
275
-
276
- const w = Math.max(maxX - minX, softening * 4);
277
- const h = Math.max(maxY - minY, softening * 4);
278
- const area = w * h;
279
- const cellSize = Math.max(softening * 2, Math.sqrt(area / n) * 2);
280
-
281
- const grid = buildGrid(particles, cellSize);
282
-
283
- ax.fill(0);
284
- ay.fill(0);
285
- interactionsComputed += computeForcesSpatial(
286
- particles,
287
- grid,
288
- cellSize,
289
- ax,
290
- ay,
291
- G,
292
- softening
293
- );
294
-
295
- for (let i = 0; i < n; i++) {
296
- const p = particles[i];
297
- p.vx += 0.5 * dt * ax[i];
298
- p.vy += 0.5 * dt * ay[i];
299
- }
300
-
301
- for (let i = 0; i < n; i++) {
302
- const p = particles[i];
303
- p.x += dt * p.vx;
304
- p.y += dt * p.vy;
305
- }
306
-
307
- minX = particles[0].x;
308
- maxX = particles[0].x;
309
- minY = particles[0].y;
310
- maxY = particles[0].y;
311
- for (let i = 1; i < n; i++) {
312
- const p = particles[i];
313
- if (p.x < minX) minX = p.x;
314
- if (p.x > maxX) maxX = p.x;
315
- if (p.y < minY) minY = p.y;
316
- if (p.y > maxY) maxY = p.y;
317
- }
318
- const w2 = Math.max(maxX - minX, softening * 4);
319
- const h2 = Math.max(maxY - minY, softening * 4);
320
- const area2 = w2 * h2;
321
- const cellSize2 = Math.max(softening * 2, Math.sqrt(area2 / n) * 2);
322
-
323
- const grid2 = buildGrid(particles, cellSize2);
324
-
325
- ax.fill(0);
326
- ay.fill(0);
327
- interactionsComputed += computeForcesSpatial(
328
- particles,
329
- grid2,
330
- cellSize2,
331
- ax,
332
- ay,
333
- G,
334
- softening
335
- );
336
-
337
- for (let i = 0; i < n; i++) {
338
- const p = particles[i];
339
- p.vx += 0.5 * dt * ax[i];
340
- p.vy += 0.5 * dt * ay[i];
341
- }
342
- }
343
-
344
- const totalEnergy = computeTotalEnergy(particles, G, softening);
345
-
346
- return {
347
- particles,
348
- steps_computed: steps,
349
- total_energy: totalEnergy,
350
- interactions_computed: interactionsComputed,
351
- };
352
- }
@@ -1,137 +0,0 @@
1
- {
2
- "domain": "sim.particle",
3
- "description": "N-body gravitational simulation using spatial hash grid. Partitions particles into cells based on bounding box; each particle interacts only with neighbors in its 3x3 cell neighborhood. Reduces pairwise evaluations for spatially clustered distributions.",
4
- "inputSchema": {
5
- "type": "object",
6
- "properties": {
7
- "particles": {
8
- "type": "array",
9
- "description": "Initial particle states. Ignored if preset is provided.",
10
- "items": {
11
- "type": "object",
12
- "properties": {
13
- "x": {
14
- "type": "number"
15
- },
16
- "y": {
17
- "type": "number"
18
- },
19
- "vx": {
20
- "type": "number"
21
- },
22
- "vy": {
23
- "type": "number"
24
- },
25
- "mass": {
26
- "type": "number"
27
- }
28
- },
29
- "required": [
30
- "x",
31
- "y",
32
- "vx",
33
- "vy",
34
- "mass"
35
- ]
36
- }
37
- },
38
- "preset": {
39
- "type": "string",
40
- "description": "Preset particle configuration",
41
- "enum": [
42
- "solar",
43
- "binary",
44
- "cluster",
45
- "collision"
46
- ]
47
- },
48
- "count": {
49
- "type": "number",
50
- "description": "Number of particles for preset generation",
51
- "default": 64,
52
- "minimum": 2,
53
- "maximum": 2048
54
- },
55
- "steps": {
56
- "type": "number",
57
- "description": "Number of simulation steps",
58
- "default": 100,
59
- "minimum": 1,
60
- "maximum": 10000
61
- },
62
- "dt": {
63
- "type": "number",
64
- "description": "Time step size",
65
- "default": 0.01
66
- },
67
- "G": {
68
- "type": "number",
69
- "description": "Gravitational constant",
70
- "default": 1
71
- },
72
- "softening": {
73
- "type": "number",
74
- "description": "Softening parameter to prevent singularity at close range",
75
- "default": 0.01
76
- },
77
- "seed": {
78
- "type": "number",
79
- "description": "Random seed for preset generation (deterministic output)"
80
- }
81
- },
82
- "required": []
83
- },
84
- "outputSchema": {
85
- "type": "object",
86
- "properties": {
87
- "particles": {
88
- "type": "array",
89
- "description": "Final particle states after simulation",
90
- "items": {
91
- "type": "object",
92
- "properties": {
93
- "x": {
94
- "type": "number"
95
- },
96
- "y": {
97
- "type": "number"
98
- },
99
- "vx": {
100
- "type": "number"
101
- },
102
- "vy": {
103
- "type": "number"
104
- },
105
- "mass": {
106
- "type": "number"
107
- }
108
- }
109
- }
110
- },
111
- "steps_computed": {
112
- "type": "number",
113
- "description": "Actual number of simulation steps computed"
114
- },
115
- "total_energy": {
116
- "type": "number",
117
- "description": "Total system energy (kinetic + potential) at final state"
118
- },
119
- "interactions_computed": {
120
- "type": "number",
121
- "description": "Total pairwise force evaluations across all steps"
122
- }
123
- },
124
- "required": [
125
- "particles",
126
- "steps_computed",
127
- "total_energy",
128
- "interactions_computed"
129
- ]
130
- },
131
- "dependencies": [],
132
- "version": "0.1.0",
133
- "author": "rotifer-team",
134
- "fidelity": "Native",
135
- "transparency": "Open",
136
- "ir_hash": "391614d239e64ad94d257ec59c079a1a060d0143b28f6edd8ec255858f961d1c"
137
- }
@@ -1,6 +0,0 @@
1
- {
2
- "cloud_id": "fb63a8d2-4c60-493f-8ccb-a91d8997a0fb",
3
- "owner": "Rotifer Protocol",
4
- "version": "0.1.0",
5
- "published_at": "2026-03-17T14:13:22.120Z"
6
- }
@@ -1,8 +0,0 @@
1
- {
2
- "geneId": "6a4c87cfeb6420cf1b9bed5f282e808d2b277dc7f8baff6580b219a944ebfddd",
3
- "name": "performance-optimizer",
4
- "domain": "code.performance",
5
- "fidelity": "Wrapped",
6
- "wrappedAt": "2026-02-24T13:23:32.820Z",
7
- "fromSkill": "../.cursor/skills/performance-optimizer/SKILL.md"
8
- }