@rotifer/playground 0.8.1 → 0.8.6

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 (453) hide show
  1. package/CHANGELOG.md +46 -11
  2. package/README.md +92 -58
  3. package/README.zh.md +90 -49
  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 +166 -44
  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 +114 -37
  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 +80 -58
  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 +152 -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 +32 -12
  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 +104 -79
  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 +1 -0
  122. package/dist/utils/binding.d.ts.map +1 -1
  123. package/dist/utils/binding.js +37 -15
  124. package/dist/utils/binding.js.map +1 -1
  125. package/dist/utils/content-hash.d.ts +3 -0
  126. package/dist/utils/content-hash.d.ts.map +1 -0
  127. package/dist/utils/content-hash.js +25 -0
  128. package/dist/utils/content-hash.js.map +1 -0
  129. package/dist/utils/detect-source-language.d.ts +20 -0
  130. package/dist/utils/detect-source-language.d.ts.map +1 -0
  131. package/dist/utils/detect-source-language.js +83 -0
  132. package/dist/utils/detect-source-language.js.map +1 -0
  133. package/dist/utils/display.d.ts +44 -1
  134. package/dist/utils/display.d.ts.map +1 -1
  135. package/dist/utils/display.js +443 -14
  136. package/dist/utils/display.js.map +1 -1
  137. package/dist/utils/domain-suggest.d.ts.map +1 -1
  138. package/dist/utils/domain-suggest.js +3 -3
  139. package/dist/utils/domain-suggest.js.map +1 -1
  140. package/dist/utils/javy-compiler.d.ts.map +1 -1
  141. package/dist/utils/javy-compiler.js +10 -3
  142. package/dist/utils/javy-compiler.js.map +1 -1
  143. package/dist/utils/open-browser.d.ts +7 -3
  144. package/dist/utils/open-browser.d.ts.map +1 -1
  145. package/dist/utils/open-browser.js +15 -4
  146. package/dist/utils/open-browser.js.map +1 -1
  147. package/dist/utils/palette.d.ts +49 -0
  148. package/dist/utils/palette.d.ts.map +1 -0
  149. package/dist/utils/palette.js +80 -0
  150. package/dist/utils/palette.js.map +1 -0
  151. package/dist/utils/private-fs.d.ts +3 -0
  152. package/dist/utils/private-fs.d.ts.map +1 -0
  153. package/dist/utils/private-fs.js +25 -0
  154. package/dist/utils/private-fs.js.map +1 -0
  155. package/dist/utils/project-root.d.ts +2 -0
  156. package/dist/utils/project-root.d.ts.map +1 -0
  157. package/dist/utils/project-root.js +49 -0
  158. package/dist/utils/project-root.js.map +1 -0
  159. package/dist/utils/run-logger.d.ts +24 -0
  160. package/dist/utils/run-logger.d.ts.map +1 -0
  161. package/dist/utils/run-logger.js +70 -0
  162. package/dist/utils/run-logger.js.map +1 -0
  163. package/dist/utils/sandbox-defaults.d.ts +9 -0
  164. package/dist/utils/sandbox-defaults.d.ts.map +1 -0
  165. package/dist/utils/sandbox-defaults.js +12 -0
  166. package/dist/utils/sandbox-defaults.js.map +1 -0
  167. package/dist/utils/update-check.d.ts +20 -0
  168. package/dist/utils/update-check.d.ts.map +1 -0
  169. package/dist/utils/update-check.js +155 -0
  170. package/dist/utils/update-check.js.map +1 -0
  171. package/dist/utils/user-config.d.ts +10 -0
  172. package/dist/utils/user-config.d.ts.map +1 -0
  173. package/dist/utils/user-config.js +54 -0
  174. package/dist/utils/user-config.js.map +1 -0
  175. package/dist/utils/validate-gene-name.d.ts +7 -0
  176. package/dist/utils/validate-gene-name.d.ts.map +1 -0
  177. package/dist/utils/validate-gene-name.js +28 -0
  178. package/dist/utils/validate-gene-name.js.map +1 -0
  179. package/genes/genesis-code-format/phenotype.json +4 -3
  180. package/genes/genesis-file-read/phenotype.json +4 -3
  181. package/genes/genesis-l0-constraint/phenotype.json +4 -3
  182. package/genes/genesis-web-search/phenotype.json +5 -4
  183. package/genes/genesis-web-search-lite/phenotype.json +4 -3
  184. package/package.json +35 -8
  185. package/scripts/postinstall.js +38 -0
  186. package/dist/errors/formatter.d.ts +0 -25
  187. package/dist/errors/formatter.d.ts.map +0 -1
  188. package/dist/errors/formatter.js +0 -43
  189. package/dist/errors/formatter.js.map +0 -1
  190. package/genes/academic-writer/.cloud-manifest.json +0 -6
  191. package/genes/academic-writer/.gene-manifest.json +0 -8
  192. package/genes/academic-writer/SKILL.md +0 -274
  193. package/genes/academic-writer/phenotype.json +0 -28
  194. package/genes/ai-components/.cloud-manifest.json +0 -6
  195. package/genes/ai-components/.gene-manifest.json +0 -8
  196. package/genes/ai-components/SKILL.md +0 -381
  197. package/genes/ai-components/phenotype.json +0 -28
  198. package/genes/algorithmic-art/.cloud-manifest.json +0 -6
  199. package/genes/algorithmic-art/.gene-manifest.json +0 -8
  200. package/genes/algorithmic-art/SKILL.md +0 -405
  201. package/genes/algorithmic-art/phenotype.json +0 -28
  202. package/genes/answer-synthesizer/.cloud-manifest.json +0 -6
  203. package/genes/answer-synthesizer/index.ts +0 -194
  204. package/genes/answer-synthesizer/phenotype.json +0 -61
  205. package/genes/api-designer/.cloud-manifest.json +0 -6
  206. package/genes/api-designer/.gene-manifest.json +0 -8
  207. package/genes/api-designer/SKILL.md +0 -456
  208. package/genes/api-designer/phenotype.json +0 -28
  209. package/genes/auto-coder/.cloud-manifest.json +0 -6
  210. package/genes/auto-coder/.gene-manifest.json +0 -8
  211. package/genes/auto-coder/SKILL.md +0 -400
  212. package/genes/auto-coder/phenotype.json +0 -28
  213. package/genes/auto-writer/.cloud-manifest.json +0 -6
  214. package/genes/auto-writer/.gene-manifest.json +0 -8
  215. package/genes/auto-writer/SKILL.md +0 -361
  216. package/genes/auto-writer/phenotype.json +0 -28
  217. package/genes/brand-personality/.cloud-manifest.json +0 -6
  218. package/genes/brand-personality/.gene-manifest.json +0 -8
  219. package/genes/brand-personality/SKILL.md +0 -549
  220. package/genes/brand-personality/phenotype.json +0 -28
  221. package/genes/business-writer/.cloud-manifest.json +0 -6
  222. package/genes/business-writer/.gene-manifest.json +0 -8
  223. package/genes/business-writer/SKILL.md +0 -448
  224. package/genes/business-writer/phenotype.json +0 -28
  225. package/genes/citation-manager/.cloud-manifest.json +0 -6
  226. package/genes/citation-manager/.gene-manifest.json +0 -8
  227. package/genes/citation-manager/SKILL.md +0 -279
  228. package/genes/citation-manager/index.ts +0 -162
  229. package/genes/citation-manager/package.json +0 -1
  230. package/genes/citation-manager/phenotype.json +0 -50
  231. package/genes/code-complexity/.cloud-manifest.json +0 -6
  232. package/genes/code-complexity/README.md +0 -35
  233. package/genes/code-complexity/index.ts +0 -101
  234. package/genes/code-complexity/phenotype.json +0 -34
  235. package/genes/copywriter/.cloud-manifest.json +0 -6
  236. package/genes/copywriter/.gene-manifest.json +0 -8
  237. package/genes/copywriter/SKILL.md +0 -329
  238. package/genes/copywriter/phenotype.json +0 -28
  239. package/genes/creative-writer/.cloud-manifest.json +0 -6
  240. package/genes/creative-writer/.gene-manifest.json +0 -8
  241. package/genes/creative-writer/SKILL.md +0 -356
  242. package/genes/creative-writer/phenotype.json +0 -28
  243. package/genes/data-modeler/.cloud-manifest.json +0 -6
  244. package/genes/data-modeler/.gene-manifest.json +0 -8
  245. package/genes/data-modeler/SKILL.md +0 -486
  246. package/genes/data-modeler/phenotype.json +0 -28
  247. package/genes/debugger/.cloud-manifest.json +0 -6
  248. package/genes/debugger/.gene-manifest.json +0 -8
  249. package/genes/debugger/SKILL.md +0 -416
  250. package/genes/debugger/phenotype.json +0 -28
  251. package/genes/design-tokens/.cloud-manifest.json +0 -6
  252. package/genes/design-tokens/.gene-manifest.json +0 -8
  253. package/genes/design-tokens/SKILL.md +0 -222
  254. package/genes/design-tokens/index.ts +0 -128
  255. package/genes/design-tokens/package.json +0 -1
  256. package/genes/design-tokens/phenotype.json +0 -1
  257. package/genes/devops-automator/.cloud-manifest.json +0 -6
  258. package/genes/devops-automator/.gene-manifest.json +0 -8
  259. package/genes/devops-automator/SKILL.md +0 -490
  260. package/genes/devops-automator/phenotype.json +0 -28
  261. package/genes/doc-coauthoring/.cloud-manifest.json +0 -6
  262. package/genes/doc-coauthoring/.gene-manifest.json +0 -8
  263. package/genes/doc-coauthoring/SKILL.md +0 -375
  264. package/genes/doc-coauthoring/phenotype.json +0 -28
  265. package/genes/doc-retrieval/.cloud-manifest.json +0 -6
  266. package/genes/doc-retrieval/index.ts +0 -134
  267. package/genes/doc-retrieval/phenotype.json +0 -54
  268. package/genes/docs-writer/.cloud-manifest.json +0 -6
  269. package/genes/docs-writer/.gene-manifest.json +0 -8
  270. package/genes/docs-writer/SKILL.md +0 -492
  271. package/genes/docs-writer/phenotype.json +0 -28
  272. package/genes/evolve-life/.cloud-manifest.json +0 -6
  273. package/genes/evolve-life/.compile-result.json +0 -12
  274. package/genes/evolve-life/README.md +0 -52
  275. package/genes/evolve-life/gene.ir.wasm +0 -0
  276. package/genes/evolve-life/gene.wasm +0 -0
  277. package/genes/evolve-life/index.ts +0 -255
  278. package/genes/evolve-life/phenotype.json +0 -129
  279. package/genes/evolve-life-bitwise/.cloud-manifest.json +0 -6
  280. package/genes/evolve-life-bitwise/.compile-result.json +0 -12
  281. package/genes/evolve-life-bitwise/gene.ir.wasm +0 -0
  282. package/genes/evolve-life-bitwise/gene.wasm +0 -0
  283. package/genes/evolve-life-bitwise/index.ts +0 -273
  284. package/genes/evolve-life-bitwise/phenotype.json +0 -129
  285. package/genes/evolve-life-sparse/.cloud-manifest.json +0 -6
  286. package/genes/evolve-life-sparse/.compile-result.json +0 -12
  287. package/genes/evolve-life-sparse/gene.ir.wasm +0 -0
  288. package/genes/evolve-life-sparse/gene.wasm +0 -0
  289. package/genes/evolve-life-sparse/index.ts +0 -236
  290. package/genes/evolve-life-sparse/phenotype.json +0 -129
  291. package/genes/fact-checker/.cloud-manifest.json +0 -6
  292. package/genes/fact-checker/.gene-manifest.json +0 -8
  293. package/genes/fact-checker/SKILL.md +0 -373
  294. package/genes/fact-checker/phenotype.json +0 -28
  295. package/genes/git-workflow/.cloud-manifest.json +0 -6
  296. package/genes/git-workflow/.gene-manifest.json +0 -8
  297. package/genes/git-workflow/SKILL.md +0 -407
  298. package/genes/git-workflow/phenotype.json +0 -28
  299. package/genes/grammar-checker/.cloud-manifest.json +0 -6
  300. package/genes/grammar-checker/.gene-manifest.json +0 -8
  301. package/genes/grammar-checker/SKILL.md +0 -194
  302. package/genes/grammar-checker/index.ts +0 -168
  303. package/genes/grammar-checker/package.json +0 -1
  304. package/genes/grammar-checker/phenotype.json +0 -52
  305. package/genes/guard-balanced/.gene-manifest.json +0 -8
  306. package/genes/guard-balanced/phenotype.json +0 -105
  307. package/genes/guard-balanced/system-prompt.md +0 -23
  308. package/genes/guard-strict/.gene-manifest.json +0 -8
  309. package/genes/guard-strict/phenotype.json +0 -107
  310. package/genes/guard-strict/system-prompt.md +0 -18
  311. package/genes/json-validator/.cloud-manifest.json +0 -6
  312. package/genes/json-validator/README.md +0 -42
  313. package/genes/json-validator/index.ts +0 -112
  314. package/genes/json-validator/phenotype.json +0 -42
  315. package/genes/license-advisor/.cloud-manifest.json +0 -6
  316. package/genes/license-advisor/.gene-manifest.json +0 -8
  317. package/genes/license-advisor/SKILL.md +0 -117
  318. package/genes/license-advisor/phenotype.json +0 -28
  319. package/genes/logic-architect/.cloud-manifest.json +0 -6
  320. package/genes/logic-architect/.gene-manifest.json +0 -8
  321. package/genes/logic-architect/SKILL.md +0 -451
  322. package/genes/logic-architect/phenotype.json +0 -28
  323. package/genes/markdown-formatter/.cloud-manifest.json +0 -6
  324. package/genes/markdown-formatter/README.md +0 -34
  325. package/genes/markdown-formatter/index.ts +0 -86
  326. package/genes/markdown-formatter/phenotype.json +0 -32
  327. package/genes/orch/.cloud-manifest.json +0 -6
  328. package/genes/orch/.gene-manifest.json +0 -8
  329. package/genes/orch/SKILL.md +0 -504
  330. package/genes/orch/phenotype.json +0 -28
  331. package/genes/particle-barneshut/.cloud-manifest.json +0 -6
  332. package/genes/particle-barneshut/.compile-result.json +0 -12
  333. package/genes/particle-barneshut/README.md +0 -55
  334. package/genes/particle-barneshut/gene.ir.wasm +0 -0
  335. package/genes/particle-barneshut/gene.wasm +0 -0
  336. package/genes/particle-barneshut/index.ts +0 -486
  337. package/genes/particle-barneshut/phenotype.json +0 -137
  338. package/genes/particle-brute/.cloud-manifest.json +0 -6
  339. package/genes/particle-brute/.compile-result.json +0 -12
  340. package/genes/particle-brute/README.md +0 -55
  341. package/genes/particle-brute/gene.ir.wasm +0 -0
  342. package/genes/particle-brute/gene.wasm +0 -0
  343. package/genes/particle-brute/index.ts +0 -277
  344. package/genes/particle-brute/phenotype.json +0 -137
  345. package/genes/particle-spatial/.cloud-manifest.json +0 -6
  346. package/genes/particle-spatial/.compile-result.json +0 -12
  347. package/genes/particle-spatial/README.md +0 -53
  348. package/genes/particle-spatial/gene.ir.wasm +0 -0
  349. package/genes/particle-spatial/gene.wasm +0 -0
  350. package/genes/particle-spatial/index.ts +0 -352
  351. package/genes/particle-spatial/phenotype.json +0 -137
  352. package/genes/performance-optimizer/.cloud-manifest.json +0 -6
  353. package/genes/performance-optimizer/.gene-manifest.json +0 -8
  354. package/genes/performance-optimizer/SKILL.md +0 -480
  355. package/genes/performance-optimizer/phenotype.json +0 -28
  356. package/genes/plagiarism-checker/.cloud-manifest.json +0 -6
  357. package/genes/plagiarism-checker/.gene-manifest.json +0 -8
  358. package/genes/plagiarism-checker/SKILL.md +0 -342
  359. package/genes/plagiarism-checker/phenotype.json +0 -28
  360. package/genes/product-manager/.cloud-manifest.json +0 -6
  361. package/genes/product-manager/.gene-manifest.json +0 -8
  362. package/genes/product-manager/SKILL.md +0 -249
  363. package/genes/product-manager/phenotype.json +0 -28
  364. package/genes/project-reviewer/.cloud-manifest.json +0 -6
  365. package/genes/project-reviewer/.gene-manifest.json +0 -8
  366. package/genes/project-reviewer/SKILL.md +0 -312
  367. package/genes/project-reviewer/phenotype.json +0 -28
  368. package/genes/prompt-engineer/.cloud-manifest.json +0 -6
  369. package/genes/prompt-engineer/.gene-manifest.json +0 -8
  370. package/genes/prompt-engineer/SKILL.md +0 -411
  371. package/genes/prompt-engineer/phenotype.json +0 -28
  372. package/genes/prompt-review-perf/.gene-manifest.json +0 -8
  373. package/genes/prompt-review-perf/phenotype.json +0 -61
  374. package/genes/prompt-review-perf/system-prompt.md +0 -22
  375. package/genes/prompt-review-readability/.gene-manifest.json +0 -8
  376. package/genes/prompt-review-readability/phenotype.json +0 -60
  377. package/genes/prompt-review-readability/system-prompt.md +0 -21
  378. package/genes/prompt-review-security/.gene-manifest.json +0 -8
  379. package/genes/prompt-review-security/phenotype.json +0 -60
  380. package/genes/prompt-review-security/system-prompt.md +0 -21
  381. package/genes/readability-analyzer/.cloud-manifest.json +0 -6
  382. package/genes/readability-analyzer/.gene-manifest.json +0 -8
  383. package/genes/readability-analyzer/SKILL.md +0 -357
  384. package/genes/readability-analyzer/index.ts +0 -123
  385. package/genes/readability-analyzer/package.json +0 -1
  386. package/genes/readability-analyzer/phenotype.json +0 -35
  387. package/genes/rotifer-protocol/SKILL.md +0 -121
  388. package/genes/rule-router-frequency/.gene-manifest.json +0 -8
  389. package/genes/rule-router-frequency/phenotype.json +0 -76
  390. package/genes/rule-router-frequency/system-prompt.md +0 -26
  391. package/genes/rule-router-relevance/.gene-manifest.json +0 -8
  392. package/genes/rule-router-relevance/phenotype.json +0 -76
  393. package/genes/rule-router-relevance/system-prompt.md +0 -29
  394. package/genes/security-auditor/.cloud-manifest.json +0 -6
  395. package/genes/security-auditor/.gene-manifest.json +0 -8
  396. package/genes/security-auditor/SKILL.md +0 -494
  397. package/genes/security-auditor/phenotype.json +0 -28
  398. package/genes/seo-optimizer/.cloud-manifest.json +0 -6
  399. package/genes/seo-optimizer/.gene-manifest.json +0 -8
  400. package/genes/seo-optimizer/SKILL.md +0 -327
  401. package/genes/seo-optimizer/index.ts +0 -206
  402. package/genes/seo-optimizer/package.json +0 -1
  403. package/genes/seo-optimizer/phenotype.json +0 -1
  404. package/genes/source-linker/.cloud-manifest.json +0 -6
  405. package/genes/source-linker/index.ts +0 -88
  406. package/genes/source-linker/phenotype.json +0 -45
  407. package/genes/style-optimizer/.cloud-manifest.json +0 -6
  408. package/genes/style-optimizer/.gene-manifest.json +0 -8
  409. package/genes/style-optimizer/SKILL.md +0 -285
  410. package/genes/style-optimizer/phenotype.json +0 -28
  411. package/genes/tech-lead/.cloud-manifest.json +0 -6
  412. package/genes/tech-lead/.gene-manifest.json +0 -8
  413. package/genes/tech-lead/SKILL.md +0 -451
  414. package/genes/tech-lead/phenotype.json +0 -28
  415. package/genes/test-wrap/.cloud-manifest.json +0 -6
  416. package/genes/test-wrap/.gene-manifest.json +0 -8
  417. package/genes/test-wrap/phenotype.json +0 -28
  418. package/genes/testing-strategist/.cloud-manifest.json +0 -6
  419. package/genes/testing-strategist/.gene-manifest.json +0 -8
  420. package/genes/testing-strategist/SKILL.md +0 -500
  421. package/genes/testing-strategist/phenotype.json +0 -28
  422. package/genes/text-summarizer/.cloud-manifest.json +0 -6
  423. package/genes/text-summarizer/README.md +0 -34
  424. package/genes/text-summarizer/index.ts +0 -122
  425. package/genes/text-summarizer/phenotype.json +0 -32
  426. package/genes/tone-analyzer/.cloud-manifest.json +0 -6
  427. package/genes/tone-analyzer/.gene-manifest.json +0 -8
  428. package/genes/tone-analyzer/SKILL.md +0 -410
  429. package/genes/tone-analyzer/phenotype.json +0 -28
  430. package/genes/translator/.cloud-manifest.json +0 -6
  431. package/genes/translator/.gene-manifest.json +0 -8
  432. package/genes/translator/SKILL.md +0 -355
  433. package/genes/translator/phenotype.json +0 -28
  434. package/genes/ui-components/.cloud-manifest.json +0 -6
  435. package/genes/ui-components/.gene-manifest.json +0 -8
  436. package/genes/ui-components/SKILL.md +0 -467
  437. package/genes/ui-components/phenotype.json +0 -28
  438. package/genes/uiux-designer/.cloud-manifest.json +0 -6
  439. package/genes/uiux-designer/.gene-manifest.json +0 -8
  440. package/genes/uiux-designer/SKILL.md +0 -353
  441. package/genes/uiux-designer/phenotype.json +0 -28
  442. package/genes/url-extractor/.cloud-manifest.json +0 -6
  443. package/genes/url-extractor/README.md +0 -37
  444. package/genes/url-extractor/index.ts +0 -86
  445. package/genes/url-extractor/phenotype.json +0 -48
  446. package/genes/ux-patterns/.cloud-manifest.json +0 -6
  447. package/genes/ux-patterns/.gene-manifest.json +0 -8
  448. package/genes/ux-patterns/SKILL.md +0 -872
  449. package/genes/ux-patterns/phenotype.json +0 -28
  450. package/genes/web3-components/.cloud-manifest.json +0 -6
  451. package/genes/web3-components/.gene-manifest.json +0 -8
  452. package/genes/web3-components/SKILL.md +0 -390
  453. package/genes/web3-components/phenotype.json +0 -28
@@ -1,416 +0,0 @@
1
- ---
2
- name: debugger
3
- description: Systematic debugging guide for AI and Web3 applications. Diagnose errors, analyze logs, and identify root causes. Use when troubleshooting issues, analyzing errors, or when the user mentions bug, error, not working, debug, or fix.
4
- ---
5
-
6
- # Debugger (问题诊断师)
7
-
8
- **Goal**: 系统化排查问题,快速定位根因,提供修复方案。
9
-
10
- **原则**: 不要猜,要验证。
11
-
12
- ---
13
-
14
- ## Debugging Mindset
15
-
16
- ```
17
- 问题 → 复现 → 隔离 → 定位 → 修复 → 验证
18
- ```
19
-
20
- ### 排查黄金法则
21
-
22
- 1. **先复现**: 不能稳定复现的问题不要急着修
23
- 2. **二分法**: 缩小范围,逐步排除
24
- 3. **看日志**: 错误信息是最好的线索
25
- 4. **最小化**: 创建最小复现用例
26
- 5. **记录**: 记录排查过程,避免重复尝试
27
-
28
- ---
29
-
30
- ## 1. Error Classification
31
-
32
- ### 错误类型速查
33
-
34
- | 错误类型 | 常见原因 | 排查方向 |
35
- |----------|----------|----------|
36
- | TypeError | null/undefined 访问 | 检查数据流 |
37
- | SyntaxError | 代码语法错误 | 检查引号、括号 |
38
- | ReferenceError | 变量未定义 | 检查作用域、导入 |
39
- | NetworkError | 网络/API 问题 | 检查请求、响应 |
40
- | TimeoutError | 操作超时 | 检查异步逻辑 |
41
- | ValidationError | 数据验证失败 | 检查输入格式 |
42
-
43
- ### 分层排查
44
-
45
- ```
46
- 前端 ─── 网络 ─── 后端 ─── 数据库 ─── 外部服务
47
- ↓ ↓ ↓ ↓ ↓
48
- Console Network Logs Query API Logs
49
- ```
50
-
51
- ---
52
-
53
- ## 2. Frontend Debugging
54
-
55
- ### Console 技巧
56
-
57
- ```typescript
58
- // 基础
59
- console.log('value:', value)
60
-
61
- // 表格 (数组/对象)
62
- console.table(users)
63
-
64
- // 分组
65
- console.group('API Request')
66
- console.log('URL:', url)
67
- console.log('Payload:', payload)
68
- console.groupEnd()
69
-
70
- // 计时
71
- console.time('fetch')
72
- await fetch(url)
73
- console.timeEnd('fetch')
74
-
75
- // 条件断点
76
- if (user.id === 'problem-id') {
77
- debugger
78
- }
79
- ```
80
-
81
- ### React DevTools
82
-
83
- ```
84
- 1. Components 面板 → 检查 props/state
85
- 2. Profiler 面板 → 检查重渲染
86
- 3. 搜索组件名快速定位
87
- ```
88
-
89
- ### 常见前端问题
90
-
91
- | 症状 | 可能原因 | 解决方案 |
92
- |------|----------|----------|
93
- | 白屏 | JS 错误阻断渲染 | 检查 Console 错误 |
94
- | 不更新 | State 引用未变 | 确保返回新对象 |
95
- | 闪烁 | 条件渲染逻辑错误 | 添加 loading 状态 |
96
- | 无限循环 | useEffect 依赖错误 | 检查依赖数组 |
97
- | 内存泄漏 | 未清理订阅/定时器 | 添加 cleanup |
98
-
99
- ### React 常见坑
100
-
101
- ```typescript
102
- // ❌ 无限循环
103
- useEffect(() => {
104
- setData(fetchData()) // 触发重渲染,又触发 effect
105
- })
106
-
107
- // ✅ 正确
108
- useEffect(() => {
109
- fetchData().then(setData)
110
- }, []) // 空依赖
111
-
112
- // ❌ State 不更新
113
- const [items, setItems] = useState([])
114
- items.push(newItem) // 直接修改
115
- setItems(items) // 引用没变,不更新
116
-
117
- // ✅ 正确
118
- setItems([...items, newItem])
119
- ```
120
-
121
- ---
122
-
123
- ## 3. Network Debugging
124
-
125
- ### 检查请求
126
-
127
- ```
128
- DevTools → Network 面板
129
- 1. 请求是否发出?
130
- 2. URL 是否正确?
131
- 3. Headers 是否正确?(Authorization, Content-Type)
132
- 4. Payload 是否正确?
133
- 5. 响应状态码?
134
- 6. 响应内容?
135
- ```
136
-
137
- ### 常见网络问题
138
-
139
- | 状态码 | 可能原因 | 排查方向 |
140
- |--------|----------|----------|
141
- | 400 | 请求格式错误 | 检查请求体 |
142
- | 401 | 认证失败 | 检查 token |
143
- | 403 | 权限不足 | 检查用户权限 |
144
- | 404 | 路径错误 | 检查 URL |
145
- | 405 | 方法错误 | 检查 HTTP 方法 |
146
- | 500 | 服务端错误 | 查看服务端日志 |
147
- | 502/503 | 服务不可用 | 检查部署状态 |
148
-
149
- ### CORS 问题
150
-
151
- ```
152
- 错误: Access-Control-Allow-Origin
153
-
154
- 排查:
155
- 1. 服务端是否设置 CORS headers?
156
- 2. 预检请求 (OPTIONS) 是否正确响应?
157
- 3. 是否使用了不允许的 header?
158
- ```
159
-
160
- ---
161
-
162
- ## 4. AI API Debugging
163
-
164
- ### 常见 AI 错误
165
-
166
- | 错误 | 原因 | 解决方案 |
167
- |------|------|----------|
168
- | 401 Invalid API Key | 密钥错误/过期 | 检查环境变量 |
169
- | 429 Rate Limited | 请求过快 | 添加重试/限流 |
170
- | 400 Token Limit | 上下文过长 | 截断/分块 |
171
- | 500 Server Error | OpenAI 服务问题 | 添加 fallback |
172
- | Timeout | 响应时间过长 | 增加超时/用流式 |
173
-
174
- ### 排查步骤
175
-
176
- ```typescript
177
- // 1. 检查 API 密钥
178
- console.log('API Key exists:', !!process.env.OPENAI_API_KEY)
179
- console.log('API Key prefix:', process.env.OPENAI_API_KEY?.slice(0, 7))
180
-
181
- // 2. 检查请求参数
182
- console.log('Messages count:', messages.length)
183
- console.log('Token estimate:', estimateTokens(messages))
184
-
185
- // 3. 检查响应
186
- try {
187
- const response = await openai.chat.completions.create({...})
188
- console.log('Usage:', response.usage)
189
- } catch (error) {
190
- console.error('Error type:', error.constructor.name)
191
- console.error('Error message:', error.message)
192
- console.error('Error code:', error.code)
193
- }
194
- ```
195
-
196
- ### Token 超限处理
197
-
198
- ```typescript
199
- // 估算 token 数
200
- function estimateTokens(text: string): number {
201
- return Math.ceil(text.length / 4) // 粗略估算
202
- }
203
-
204
- // 截断策略
205
- function truncateMessages(messages: Message[], maxTokens: number): Message[] {
206
- let total = 0
207
- const result: Message[] = []
208
-
209
- // 从最新消息往前保留
210
- for (let i = messages.length - 1; i >= 0; i--) {
211
- const tokens = estimateTokens(messages[i].content)
212
- if (total + tokens > maxTokens) break
213
- result.unshift(messages[i])
214
- total += tokens
215
- }
216
-
217
- return result
218
- }
219
- ```
220
-
221
- ---
222
-
223
- ## 5. Web3 Debugging
224
-
225
- ### 常见 Web3 错误
226
-
227
- | 错误 | 原因 | 解决方案 |
228
- |------|------|----------|
229
- | User rejected | 用户拒绝签名 | 添加用户提示 |
230
- | Insufficient funds | 余额不足 | 检查余额+Gas |
231
- | Nonce too low | Nonce 冲突 | 等待或加速前一笔 |
232
- | Gas estimation failed | 交易会失败 | 检查参数/权限 |
233
- | Network mismatch | 网络不匹配 | 提示切换网络 |
234
-
235
- ### 交易排查
236
-
237
- ```typescript
238
- // 1. 检查钱包状态
239
- console.log('Connected:', isConnected)
240
- console.log('Address:', address)
241
- console.log('Chain ID:', chainId)
242
-
243
- // 2. 检查余额
244
- const balance = await publicClient.getBalance({ address })
245
- console.log('Balance:', formatEther(balance))
246
-
247
- // 3. 模拟交易
248
- try {
249
- await publicClient.simulateContract({
250
- address: contractAddress,
251
- abi,
252
- functionName: 'transfer',
253
- args: [to, amount],
254
- })
255
- console.log('Simulation passed')
256
- } catch (error) {
257
- console.error('Simulation failed:', error.message)
258
- }
259
-
260
- // 4. 检查 Gas
261
- const gasEstimate = await publicClient.estimateContractGas({...})
262
- console.log('Gas estimate:', gasEstimate)
263
- ```
264
-
265
- ### 交易追踪
266
-
267
- ```typescript
268
- // 使用 Etherscan API 查询交易状态
269
- const txStatus = await fetch(
270
- `https://api.etherscan.io/api?module=transaction&action=gettxreceiptstatus&txhash=${hash}`
271
- )
272
-
273
- // 或使用 viem
274
- const receipt = await publicClient.waitForTransactionReceipt({ hash })
275
- console.log('Status:', receipt.status) // 'success' | 'reverted'
276
- console.log('Gas used:', receipt.gasUsed)
277
- ```
278
-
279
- ---
280
-
281
- ## 6. Backend Debugging
282
-
283
- ### 日志级别
284
-
285
- ```typescript
286
- // lib/logger.ts
287
- const logger = {
288
- debug: (msg: string, data?: object) => {
289
- if (process.env.LOG_LEVEL === 'debug') {
290
- console.log(`[DEBUG] ${msg}`, data)
291
- }
292
- },
293
- info: (msg: string, data?: object) => {
294
- console.log(`[INFO] ${msg}`, data)
295
- },
296
- warn: (msg: string, data?: object) => {
297
- console.warn(`[WARN] ${msg}`, data)
298
- },
299
- error: (msg: string, error?: Error) => {
300
- console.error(`[ERROR] ${msg}`, {
301
- message: error?.message,
302
- stack: error?.stack,
303
- })
304
- },
305
- }
306
- ```
307
-
308
- ### 请求追踪
309
-
310
- ```typescript
311
- // middleware.ts
312
- export function middleware(request: NextRequest) {
313
- const requestId = crypto.randomUUID()
314
-
315
- console.log(`[${requestId}] ${request.method} ${request.url}`)
316
-
317
- const response = NextResponse.next()
318
- response.headers.set('x-request-id', requestId)
319
-
320
- return response
321
- }
322
- ```
323
-
324
- ### 数据库调试
325
-
326
- ```typescript
327
- // Prisma 查询日志
328
- const prisma = new PrismaClient({
329
- log: ['query', 'error', 'warn'],
330
- })
331
-
332
- // 检查慢查询
333
- prisma.$on('query', (e) => {
334
- if (e.duration > 100) {
335
- console.warn(`Slow query (${e.duration}ms):`, e.query)
336
- }
337
- })
338
- ```
339
-
340
- ---
341
-
342
- ## 7. Debugging Checklist
343
-
344
- ### 通用排查清单
345
-
346
- ```markdown
347
- ## 问题排查清单
348
-
349
- ### 1. 信息收集
350
- - [ ] 错误信息是什么?
351
- - [ ] 哪个页面/功能出问题?
352
- - [ ] 何时开始出现?
353
- - [ ] 能否稳定复现?
354
-
355
- ### 2. 环境检查
356
- - [ ] 本地还是生产环境?
357
- - [ ] 特定浏览器/设备?
358
- - [ ] 环境变量正确?
359
- - [ ] 依赖版本正确?
360
-
361
- ### 3. 日志检查
362
- - [ ] Console 有错误吗?
363
- - [ ] Network 请求正常吗?
364
- - [ ] 服务端日志有什么?
365
-
366
- ### 4. 代码检查
367
- - [ ] 最近有什么改动?
368
- - [ ] 是否引入了新依赖?
369
- - [ ] 相关代码逻辑正确吗?
370
-
371
- ### 5. 隔离测试
372
- - [ ] 最小复现用例
373
- - [ ] 硬编码测试数据
374
- - [ ] 逐步注释排除
375
- ```
376
-
377
- ---
378
-
379
- ## Quick Reference
380
-
381
- ### 调试工具
382
-
383
- ```
384
- 前端: Chrome DevTools, React DevTools
385
- 网络: Network 面板, Postman
386
- 后端: console.log, debugger, Prisma Studio
387
- Web3: Etherscan, Tenderly
388
- AI: OpenAI Playground
389
- ```
390
-
391
- ### 常用命令
392
-
393
- ```bash
394
- # 查看日志
395
- tail -f app.log
396
-
397
- # 环境变量检查
398
- printenv | grep API
399
-
400
- # 端口占用
401
- lsof -i :3000
402
-
403
- # 进程查看
404
- ps aux | grep node
405
- ```
406
-
407
- ### 二分法模板
408
-
409
- ```
410
- 1. 问题出现在 A 还是 B?
411
- → 确认是 A
412
- 2. 问题出现在 A1 还是 A2?
413
- → 确认是 A2
414
- 3. 问题出现在 A2a 还是 A2b?
415
- → 找到根因
416
- ```
@@ -1,28 +0,0 @@
1
- {
2
- "domain": "code.debug",
3
- "description": "Systematic debugging guide for AI and Web3 applications. Diagnose errors, analyze logs, and identify root causes. Use when troubleshooting issues, analyzing errors, or when the user mentions bug, error, not working, debug, or fix.",
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": 1771939411990,
25
- "fidelity": "Wrapped",
26
- "transparency": "Open",
27
- "source": "skill"
28
- }
@@ -1,6 +0,0 @@
1
- {
2
- "cloud_id": "fc5f4322-be1d-49c5-b4c7-7500ea62cbac",
3
- "owner": "Rotifer Protocol",
4
- "version": "0.2.0",
5
- "published_at": "2026-03-17T14:12:21.968Z"
6
- }
@@ -1,8 +0,0 @@
1
- {
2
- "geneId": "18ed990edbb734eab0445c0c6dd996269268d3e793b05c2f9e25095c54b5f65a",
3
- "name": "design-tokens",
4
- "domain": "ui.design",
5
- "fidelity": "Wrapped",
6
- "wrappedAt": "2026-02-24T13:20:46.890Z",
7
- "fromSkill": "../.cursor/skills/design-tokens/SKILL.md"
8
- }
@@ -1,222 +0,0 @@
1
- ---
2
- name: design-tokens
3
- description: Parameterized design token system. Dynamically generates CSS variables for colors, border-radius, spacing, and typography based on brand parameters.
4
- ---
5
-
6
- # Design Tokens
7
-
8
- **Purpose**: UI design foundation layer that dynamically generates design variables from style parameters.
9
-
10
- **Core Value**: Automatic mapping from style dimension values to concrete CSS variables.
11
-
12
- ---
13
-
14
- ## Design Philosophy
15
-
16
- **Core Principle**: Parameter-driven, not hardcoded presets.
17
-
18
- | Principle | Description |
19
- |-----------|-------------|
20
- | Parameter mapping | 0-100 dimension values automatically convert to concrete CSS values |
21
- | Transparent formulas | Mapping logic is clear and predictable |
22
- | Fine-tunable | Generated values can still be manually adjusted |
23
- | Backward compatible | Default values used when parameters are unspecified |
24
-
25
- ---
26
-
27
- ## Parameter to Token Mapping
28
-
29
- ### Input: Style Parameters
30
-
31
- ```typescript
32
- interface DesignTokenInput {
33
- primaryHue?: number; // 0-360 (HSL hue)
34
- mode?: "light" | "dark"; // Color mode
35
- density?: "compact" | "normal" | "spacious"; // Spacing density
36
- borderRadius?: "sharp" | "rounded" | "pill"; // Border radius style
37
- }
38
- ```
39
-
40
- ### Output: CSS Variables
41
-
42
- ```css
43
- :root {
44
- /* Colors */
45
- --color-primary: ...;
46
- --color-surface: ...;
47
- --color-text: ...;
48
-
49
- /* Spacing */
50
- --space-0 through --space-9: ...;
51
-
52
- /* Border Radius */
53
- --radius-sm: ...;
54
- --radius-md: ...;
55
- --radius-lg: ...;
56
- --radius-full: ...;
57
-
58
- /* Typography */
59
- --font-sans: ...;
60
- --font-mono: ...;
61
- --text-xs through --text-3xl: ...;
62
-
63
- /* Shadows */
64
- --shadow-sm through --shadow-xl: ...;
65
- }
66
- ```
67
-
68
- ---
69
-
70
- ## Mapping Formula Details
71
-
72
- ### 1. Color Palette Generation (primaryHue + mode → CSS)
73
-
74
- ```typescript
75
- function generatePalette(hue: number, dark: boolean) {
76
- // Generates 15 color tokens from a single hue value
77
- // Dark mode inverts lightness values
78
- // Complementary accent color at hue+30°
79
- return {
80
- '--color-bg': hsl(hue, saturation, lightness),
81
- '--color-surface': ...,
82
- '--color-primary': hsl(hue, 70, dark ? 55 : 45),
83
- '--color-accent': hsl((hue + 30) % 360, 60, ...),
84
- // ... 15 total color tokens
85
- };
86
- }
87
- ```
88
-
89
- ### 2. Spacing Scale (density → CSS)
90
-
91
- ```typescript
92
- function generateSpacing(density: string) {
93
- // base: compact=4px, normal=6px, spacious=8px
94
- // scale multipliers: [0.25, 0.5, 1, 1.5, 2, 3, 4, 6, 8, 12]
95
- // Generates --space-0 through --space-9
96
- }
97
- ```
98
-
99
- | Density | Base | --space-2 | --space-4 | --space-6 |
100
- |---------|------|-----------|-----------|-----------|
101
- | compact | 4px | 4px | 12px | 24px |
102
- | normal | 6px | 6px | 18px | 36px |
103
- | spacious | 8px | 8px | 24px | 48px |
104
-
105
- ### 3. Border Radius (borderRadius → CSS)
106
-
107
- | Style | --radius-sm | --radius-md | --radius-lg | --radius-full |
108
- |-------|-------------|-------------|-------------|---------------|
109
- | sharp | 2px | 4px | 6px | 8px |
110
- | rounded | 4px | 8px | 12px | 9999px |
111
- | pill | 9999px | 9999px | 9999px | 9999px |
112
-
113
- ### 4. Typography (fixed, does not vary with parameters)
114
-
115
- ```css
116
- :root {
117
- --font-sans: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
118
- --font-mono: 'JetBrains Mono', 'Fira Code', monospace;
119
-
120
- --text-xs: 0.75rem; /* 12px */
121
- --text-sm: 0.875rem; /* 14px */
122
- --text-base: 1rem; /* 16px */
123
- --text-lg: 1.125rem; /* 18px */
124
- --text-xl: 1.25rem; /* 20px */
125
- --text-2xl: 1.5rem; /* 24px */
126
- --text-3xl: 2rem; /* 32px */
127
-
128
- --line-height-tight: 1.25;
129
- --line-height-normal: 1.5;
130
- --line-height-relaxed: 1.75;
131
- }
132
- ```
133
-
134
- ### 5. Shadows (mode → CSS)
135
-
136
- Shadow opacity scales with light/dark mode:
137
-
138
- ```typescript
139
- function generateShadows(dark: boolean) {
140
- const opacity = dark ? 0.5 : 0.1;
141
- return {
142
- '--shadow-sm': `0 1px 2px rgba(0,0,0,${opacity})`,
143
- '--shadow-md': `0 4px 6px rgba(0,0,0,${opacity})`,
144
- '--shadow-lg': `0 10px 15px rgba(0,0,0,${opacity})`,
145
- '--shadow-xl': `0 20px 25px rgba(0,0,0,${opacity})`,
146
- };
147
- }
148
- ```
149
-
150
- ---
151
-
152
- ## Usage Examples
153
-
154
- ### Generate from Parameters
155
-
156
- ```typescript
157
- import { express } from './index';
158
-
159
- const result = await express({
160
- primaryHue: 220, // Blue
161
- mode: 'dark',
162
- density: 'normal',
163
- borderRadius: 'rounded'
164
- });
165
-
166
- console.log(result.css); // Full :root { ... } block
167
- console.log(result.totalTokens); // Number of generated tokens
168
- ```
169
-
170
- ### Use in Components
171
-
172
- ```html
173
- <button style="
174
- background: var(--color-primary);
175
- color: var(--color-primary-fg);
176
- border-radius: var(--radius-md);
177
- padding: var(--space-2) var(--space-4);
178
- font-family: var(--font-sans);
179
- font-size: var(--text-sm);
180
- box-shadow: var(--shadow-md);
181
- ">
182
- Button
183
- </button>
184
- ```
185
-
186
- ---
187
-
188
- ## Default Tokens
189
-
190
- When no parameters are specified, defaults are used:
191
- - `primaryHue`: 220 (blue)
192
- - `mode`: "dark"
193
- - `density`: "normal"
194
- - `borderRadius`: "rounded"
195
-
196
- This generates approximately 48 CSS custom properties covering colors, spacing, radii, typography, and shadows.
197
-
198
- ---
199
-
200
- ## Tailwind CSS Integration
201
-
202
- ```javascript
203
- // tailwind.config.js
204
- module.exports = {
205
- theme: {
206
- extend: {
207
- colors: {
208
- primary: 'var(--color-primary)',
209
- 'primary-hover': 'var(--color-primary-hover)',
210
- surface: 'var(--color-surface)',
211
- accent: 'var(--color-accent)',
212
- },
213
- borderRadius: {
214
- sm: 'var(--radius-sm)',
215
- DEFAULT: 'var(--radius-md)',
216
- lg: 'var(--radius-lg)',
217
- full: 'var(--radius-full)',
218
- },
219
- },
220
- },
221
- }
222
- ```