lua-cli 3.5.0-alpha.3 → 3.5.0-beta.1

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 (465) hide show
  1. package/README.md +137 -689
  2. package/dist/api/agent.api.service.d.ts +1 -8
  3. package/dist/api/agent.api.service.js +1 -11
  4. package/dist/api/agent.api.service.js.map +1 -1
  5. package/dist/api/auth.api.service.d.ts +1 -1
  6. package/dist/api/auth.api.service.js +1 -1
  7. package/dist/api/auth.api.service.js.map +1 -1
  8. package/dist/api/backup.api.service.d.ts +80 -0
  9. package/dist/api/backup.api.service.js +101 -0
  10. package/dist/api/backup.api.service.js.map +1 -0
  11. package/dist/api/basket.api.service.d.ts +4 -5
  12. package/dist/api/basket.api.service.js +13 -18
  13. package/dist/api/basket.api.service.js.map +1 -1
  14. package/dist/api/cdn.api.service.d.ts +2 -0
  15. package/dist/api/cdn.api.service.js +2 -0
  16. package/dist/api/cdn.api.service.js.map +1 -1
  17. package/dist/api/chat.api.service.d.ts +10 -2
  18. package/dist/api/chat.api.service.js +21 -2
  19. package/dist/api/chat.api.service.js.map +1 -1
  20. package/dist/api/credentials.js +5 -8
  21. package/dist/api/credentials.js.map +1 -1
  22. package/dist/api/custom.data.api.service.d.ts +3 -3
  23. package/dist/api/custom.data.api.service.js +9 -10
  24. package/dist/api/custom.data.api.service.js.map +1 -1
  25. package/dist/api/developer.api.service.d.ts +1 -1
  26. package/dist/api/developer.api.service.js +1 -1
  27. package/dist/api/developer.api.service.js.map +1 -1
  28. package/dist/api/http.client.js.map +1 -0
  29. package/dist/api/job.api.service.d.ts +2 -2
  30. package/dist/api/job.api.service.js +2 -2
  31. package/dist/api/job.api.service.js.map +1 -1
  32. package/dist/api/logs.api.service.d.ts +1 -1
  33. package/dist/api/logs.api.service.js +1 -1
  34. package/dist/api/logs.api.service.js.map +1 -1
  35. package/dist/api/marketplace.api.service.d.ts +6 -6
  36. package/dist/api/marketplace.api.service.js.map +1 -1
  37. package/dist/api/order.api.service.d.ts +3 -4
  38. package/dist/api/order.api.service.js +8 -10
  39. package/dist/api/order.api.service.js.map +1 -1
  40. package/dist/api/persona.api.service.d.ts +1 -1
  41. package/dist/api/persona.api.service.js +1 -1
  42. package/dist/api/persona.api.service.js.map +1 -1
  43. package/dist/api/postprocessor.api.service.d.ts +1 -1
  44. package/dist/api/postprocessor.api.service.js +1 -1
  45. package/dist/api/postprocessor.api.service.js.map +1 -1
  46. package/dist/api/preprocessor.api.service.d.ts +1 -1
  47. package/dist/api/preprocessor.api.service.js +1 -1
  48. package/dist/api/preprocessor.api.service.js.map +1 -1
  49. package/dist/api/products.api.service.d.ts +4 -4
  50. package/dist/api/products.api.service.js +6 -6
  51. package/dist/api/products.api.service.js.map +1 -1
  52. package/dist/api/resource.api.service.d.ts +76 -0
  53. package/dist/api/resource.api.service.js +74 -0
  54. package/dist/api/resource.api.service.js.map +1 -0
  55. package/dist/api/skills.api.service.d.ts +7 -15
  56. package/dist/api/skills.api.service.js +1 -1
  57. package/dist/api/skills.api.service.js.map +1 -1
  58. package/dist/api/tool.api.service.d.ts +1 -1
  59. package/dist/api/tool.api.service.js +1 -1
  60. package/dist/api/tool.api.service.js.map +1 -1
  61. package/dist/api/unifiedto.api.service.d.ts +1 -1
  62. package/dist/api/unifiedto.api.service.js +1 -1
  63. package/dist/api/unifiedto.api.service.js.map +1 -1
  64. package/dist/api/user.data.api.service.d.ts +7 -8
  65. package/dist/api/user.data.api.service.js +2 -3
  66. package/dist/api/user.data.api.service.js.map +1 -1
  67. package/dist/api/webhook.api.service.d.ts +1 -1
  68. package/dist/api/webhook.api.service.js +1 -1
  69. package/dist/api/webhook.api.service.js.map +1 -1
  70. package/dist/api/whatsapp-templates.api.service.d.ts +1 -1
  71. package/dist/api/whatsapp-templates.api.service.js +1 -1
  72. package/dist/api/whatsapp-templates.api.service.js.map +1 -1
  73. package/dist/api-exports.d.ts +14 -12
  74. package/dist/api-exports.js +8 -8
  75. package/dist/api-exports.js.map +1 -1
  76. package/dist/cli/command-definitions.js +32 -17
  77. package/dist/cli/command-definitions.js.map +1 -1
  78. package/dist/commands/admin.js +3 -24
  79. package/dist/commands/admin.js.map +1 -1
  80. package/dist/commands/agents.d.ts +8 -7
  81. package/dist/commands/agents.js +63 -21
  82. package/dist/commands/agents.js.map +1 -1
  83. package/dist/commands/channels.js +11 -23
  84. package/dist/commands/channels.js.map +1 -1
  85. package/dist/commands/chat.js +33 -47
  86. package/dist/commands/chat.js.map +1 -1
  87. package/dist/commands/chatClear.js +11 -41
  88. package/dist/commands/chatClear.js.map +1 -1
  89. package/dist/commands/compile.d.ts +26 -23
  90. package/dist/commands/compile.js +98 -403
  91. package/dist/commands/compile.js.map +1 -1
  92. package/dist/commands/completion.js +1 -1
  93. package/dist/commands/completion.js.map +1 -1
  94. package/dist/commands/deploy.js +55 -25
  95. package/dist/commands/deploy.js.map +1 -1
  96. package/dist/commands/dev.js +29 -45
  97. package/dist/commands/dev.js.map +1 -1
  98. package/dist/commands/env.js +12 -25
  99. package/dist/commands/env.js.map +1 -1
  100. package/dist/commands/evals.js +3 -20
  101. package/dist/commands/evals.js.map +1 -1
  102. package/dist/commands/features.js +10 -23
  103. package/dist/commands/features.js.map +1 -1
  104. package/dist/commands/index.d.ts +1 -0
  105. package/dist/commands/index.js +1 -0
  106. package/dist/commands/index.js.map +1 -1
  107. package/dist/commands/init.d.ts +1 -0
  108. package/dist/commands/init.js +135 -19
  109. package/dist/commands/init.js.map +1 -1
  110. package/dist/commands/integrations.js +26 -37
  111. package/dist/commands/integrations.js.map +1 -1
  112. package/dist/commands/jobs.js +32 -56
  113. package/dist/commands/jobs.js.map +1 -1
  114. package/dist/commands/logs.js +9 -20
  115. package/dist/commands/logs.js.map +1 -1
  116. package/dist/commands/marketplace.js +34 -52
  117. package/dist/commands/marketplace.js.map +1 -1
  118. package/dist/commands/mcp.js +10 -23
  119. package/dist/commands/mcp.js.map +1 -1
  120. package/dist/commands/persona.js +43 -74
  121. package/dist/commands/persona.js.map +1 -1
  122. package/dist/commands/postprocessors.js +15 -28
  123. package/dist/commands/postprocessors.js.map +1 -1
  124. package/dist/commands/preprocessors.js +15 -28
  125. package/dist/commands/preprocessors.js.map +1 -1
  126. package/dist/commands/production.js +30 -63
  127. package/dist/commands/production.js.map +1 -1
  128. package/dist/commands/push.js +294 -1241
  129. package/dist/commands/push.js.map +1 -1
  130. package/dist/commands/pushBackup.d.ts +22 -0
  131. package/dist/commands/pushBackup.js +133 -0
  132. package/dist/commands/pushBackup.js.map +1 -0
  133. package/dist/commands/resources.js +29 -72
  134. package/dist/commands/resources.js.map +1 -1
  135. package/dist/commands/skills.d.ts +1 -1
  136. package/dist/commands/skills.js +58 -70
  137. package/dist/commands/skills.js.map +1 -1
  138. package/dist/commands/sync.d.ts +1 -3
  139. package/dist/commands/sync.js +12 -24
  140. package/dist/commands/sync.js.map +1 -1
  141. package/dist/commands/test.js +135 -104
  142. package/dist/commands/test.js.map +1 -1
  143. package/dist/commands/webhooks.js +15 -28
  144. package/dist/commands/webhooks.js.map +1 -1
  145. package/dist/compiler/agent-traverser.d.ts +104 -0
  146. package/dist/compiler/agent-traverser.js +311 -0
  147. package/dist/compiler/agent-traverser.js.map +1 -0
  148. package/dist/compiler/bundler.d.ts +42 -0
  149. package/dist/compiler/bundler.js +187 -0
  150. package/dist/compiler/bundler.js.map +1 -0
  151. package/dist/compiler/compiler.d.ts +177 -0
  152. package/dist/compiler/compiler.js +580 -0
  153. package/dist/compiler/compiler.js.map +1 -0
  154. package/dist/compiler/index.d.ts +36 -0
  155. package/dist/compiler/index.js +42 -0
  156. package/dist/compiler/index.js.map +1 -0
  157. package/dist/compiler/plugins/base.d.ts +264 -0
  158. package/dist/compiler/plugins/base.js +307 -0
  159. package/dist/compiler/plugins/base.js.map +1 -0
  160. package/dist/compiler/plugins/job.plugin.d.ts +33 -0
  161. package/dist/compiler/plugins/job.plugin.js +143 -0
  162. package/dist/compiler/plugins/job.plugin.js.map +1 -0
  163. package/dist/compiler/plugins/mcp-server.plugin.d.ts +50 -0
  164. package/dist/compiler/plugins/mcp-server.plugin.js +186 -0
  165. package/dist/compiler/plugins/mcp-server.plugin.js.map +1 -0
  166. package/dist/compiler/plugins/postprocessor.plugin.d.ts +20 -0
  167. package/dist/compiler/plugins/postprocessor.plugin.js +39 -0
  168. package/dist/compiler/plugins/postprocessor.plugin.js.map +1 -0
  169. package/dist/compiler/plugins/preprocessor.plugin.d.ts +20 -0
  170. package/dist/compiler/plugins/preprocessor.plugin.js +48 -0
  171. package/dist/compiler/plugins/preprocessor.plugin.js.map +1 -0
  172. package/dist/compiler/plugins/processor-base.d.ts +16 -0
  173. package/dist/compiler/plugins/processor-base.js +34 -0
  174. package/dist/compiler/plugins/processor-base.js.map +1 -0
  175. package/dist/compiler/plugins/registry.d.ts +61 -0
  176. package/dist/compiler/plugins/registry.js +107 -0
  177. package/dist/compiler/plugins/registry.js.map +1 -0
  178. package/dist/compiler/plugins/skill.plugin.d.ts +71 -0
  179. package/dist/compiler/plugins/skill.plugin.js +243 -0
  180. package/dist/compiler/plugins/skill.plugin.js.map +1 -0
  181. package/dist/compiler/plugins/tool.plugin.d.ts +67 -0
  182. package/dist/compiler/plugins/tool.plugin.js +279 -0
  183. package/dist/compiler/plugins/tool.plugin.js.map +1 -0
  184. package/dist/compiler/plugins/webhook.plugin.d.ts +37 -0
  185. package/dist/compiler/plugins/webhook.plugin.js +127 -0
  186. package/dist/compiler/plugins/webhook.plugin.js.map +1 -0
  187. package/dist/compiler/source-writer.d.ts +98 -0
  188. package/dist/compiler/source-writer.js +223 -0
  189. package/dist/compiler/source-writer.js.map +1 -0
  190. package/dist/compiler/types.d.ts +289 -0
  191. package/dist/compiler/types.js +20 -0
  192. package/dist/compiler/types.js.map +1 -0
  193. package/dist/compiler/utils/ast-helpers.d.ts +57 -0
  194. package/dist/compiler/utils/ast-helpers.js +164 -0
  195. package/dist/compiler/utils/ast-helpers.js.map +1 -0
  196. package/dist/compiler/utils/common.d.ts +23 -0
  197. package/dist/compiler/utils/common.js +66 -0
  198. package/dist/compiler/utils/common.js.map +1 -0
  199. package/dist/compiler/utils/file-discovery.d.ts +34 -0
  200. package/dist/compiler/utils/file-discovery.js +68 -0
  201. package/dist/compiler/utils/file-discovery.js.map +1 -0
  202. package/dist/compiler/utils/path-resolver.d.ts +25 -0
  203. package/dist/compiler/utils/path-resolver.js +66 -0
  204. package/dist/compiler/utils/path-resolver.js.map +1 -0
  205. package/dist/compiler/utils/schema-converter.d.ts +26 -0
  206. package/dist/compiler/utils/schema-converter.js +94 -0
  207. package/dist/compiler/utils/schema-converter.js.map +1 -0
  208. package/dist/config/compile.constants.d.ts +2 -22
  209. package/dist/config/compile.constants.js +2 -49
  210. package/dist/config/compile.constants.js.map +1 -1
  211. package/dist/config/constants.d.ts +18 -2
  212. package/dist/config/constants.js +28 -8
  213. package/dist/config/constants.js.map +1 -1
  214. package/dist/config/dev.constants.d.ts +0 -10
  215. package/dist/config/dev.constants.js +0 -10
  216. package/dist/config/dev.constants.js.map +1 -1
  217. package/dist/index.js +7 -0
  218. package/dist/index.js.map +1 -1
  219. package/dist/instances/basket.instance.js.map +1 -0
  220. package/dist/instances/data.entry.instance.js.map +1 -0
  221. package/dist/instances/job.instance.js.map +1 -0
  222. package/dist/instances/order.instance.js.map +1 -0
  223. package/dist/instances/product.instance.js.map +1 -0
  224. package/dist/instances/product.pagination.instance.js.map +1 -0
  225. package/dist/instances/product.search.instance.js.map +1 -0
  226. package/dist/instances/user.instance.js.map +1 -0
  227. package/dist/interfaces/admin.d.ts +0 -38
  228. package/dist/interfaces/backup.d.ts +125 -0
  229. package/dist/interfaces/backup.js +8 -0
  230. package/dist/interfaces/backup.js.map +1 -0
  231. package/dist/interfaces/baskets.d.ts +0 -56
  232. package/dist/interfaces/common.d.ts +1 -0
  233. package/dist/interfaces/deploy.d.ts +0 -15
  234. package/dist/interfaces/index.d.ts +1 -1
  235. package/dist/interfaces/marketplace.d.ts +51 -0
  236. package/dist/interfaces/marketplace.js +1 -1
  237. package/dist/interfaces/marketplace.js.map +1 -1
  238. package/dist/interfaces/message.d.ts +0 -3
  239. package/dist/interfaces/orders.d.ts +0 -24
  240. package/dist/interfaces/postprocessors.d.ts +0 -18
  241. package/dist/interfaces/preprocessors.d.ts +0 -18
  242. package/dist/interfaces/skills.d.ts +61 -0
  243. package/dist/interfaces/user.d.ts +25 -0
  244. package/dist/interfaces/webhooks.d.ts +0 -9
  245. package/dist/primitives/base.handler.d.ts +106 -0
  246. package/dist/primitives/base.handler.js +370 -0
  247. package/dist/primitives/base.handler.js.map +1 -0
  248. package/dist/primitives/index.d.ts +47 -0
  249. package/dist/primitives/index.js +78 -0
  250. package/dist/primitives/index.js.map +1 -0
  251. package/dist/primitives/job.handler.d.ts +52 -0
  252. package/dist/primitives/job.handler.js +118 -0
  253. package/dist/primitives/job.handler.js.map +1 -0
  254. package/dist/primitives/mcp-server.handler.d.ts +54 -0
  255. package/dist/primitives/mcp-server.handler.js +91 -0
  256. package/dist/primitives/mcp-server.handler.js.map +1 -0
  257. package/dist/primitives/postprocessor.handler.d.ts +49 -0
  258. package/dist/primitives/postprocessor.handler.js +81 -0
  259. package/dist/primitives/postprocessor.handler.js.map +1 -0
  260. package/dist/primitives/preprocessor.handler.d.ts +54 -0
  261. package/dist/primitives/preprocessor.handler.js +95 -0
  262. package/dist/primitives/preprocessor.handler.js.map +1 -0
  263. package/dist/primitives/skill.handler.d.ts +44 -0
  264. package/dist/primitives/skill.handler.js +192 -0
  265. package/dist/primitives/skill.handler.js.map +1 -0
  266. package/dist/primitives/types.d.ts +72 -0
  267. package/dist/primitives/types.js +17 -0
  268. package/dist/primitives/types.js.map +1 -0
  269. package/dist/primitives/webhook.handler.d.ts +50 -0
  270. package/dist/primitives/webhook.handler.js +96 -0
  271. package/dist/primitives/webhook.handler.js.map +1 -0
  272. package/dist/services/auth.js +1 -2
  273. package/dist/services/auth.js.map +1 -1
  274. package/dist/services/sandbox.service.d.ts +103 -0
  275. package/dist/services/sandbox.service.js +479 -0
  276. package/dist/services/sandbox.service.js.map +1 -0
  277. package/dist/types/api-contracts.d.ts +1 -1
  278. package/dist/types/index.d.ts +2 -1
  279. package/dist/types/index.js.map +1 -1
  280. package/dist/types/skill.d.ts +8 -2
  281. package/dist/types/skill.js +8 -0
  282. package/dist/types/skill.js.map +1 -1
  283. package/dist/types/yaml.types.d.ts +69 -0
  284. package/dist/types/yaml.types.js +6 -0
  285. package/dist/types/yaml.types.js.map +1 -0
  286. package/dist/utils/artifact-loader.d.ts +108 -0
  287. package/dist/utils/artifact-loader.js +188 -0
  288. package/dist/utils/artifact-loader.js.map +1 -0
  289. package/dist/utils/backup-helpers.d.ts +122 -0
  290. package/dist/utils/backup-helpers.js +274 -0
  291. package/dist/utils/backup-helpers.js.map +1 -0
  292. package/dist/utils/cli.d.ts +8 -0
  293. package/dist/utils/cli.js +19 -2
  294. package/dist/utils/cli.js.map +1 -1
  295. package/dist/utils/command-utils.d.ts +42 -0
  296. package/dist/utils/command-utils.js +83 -0
  297. package/dist/utils/command-utils.js.map +1 -0
  298. package/dist/utils/deploy-helpers.d.ts +0 -29
  299. package/dist/utils/deploy-helpers.js +0 -70
  300. package/dist/utils/deploy-helpers.js.map +1 -1
  301. package/dist/utils/dev-api.d.ts +3 -99
  302. package/dist/utils/dev-api.js +3 -430
  303. package/dist/utils/dev-api.js.map +1 -1
  304. package/dist/utils/dev-server.d.ts +3 -1
  305. package/dist/utils/dev-server.js +69 -145
  306. package/dist/utils/dev-server.js.map +1 -1
  307. package/dist/utils/dev-watcher.d.ts +0 -1
  308. package/dist/utils/dev-watcher.js +23 -8
  309. package/dist/utils/dev-watcher.js.map +1 -1
  310. package/dist/utils/env-loader.utils.d.ts +10 -1
  311. package/dist/utils/env-loader.utils.js +39 -31
  312. package/dist/utils/env-loader.utils.js.map +1 -1
  313. package/dist/utils/files.d.ts +47 -3
  314. package/dist/utils/files.js +98 -40
  315. package/dist/utils/files.js.map +1 -1
  316. package/dist/utils/init-agent.js +1 -2
  317. package/dist/utils/init-agent.js.map +1 -1
  318. package/dist/utils/init-helpers.d.ts +2 -10
  319. package/dist/utils/init-helpers.js +9 -17
  320. package/dist/utils/init-helpers.js.map +1 -1
  321. package/dist/utils/init-prompts.d.ts +0 -8
  322. package/dist/utils/init-prompts.js +0 -22
  323. package/dist/utils/init-prompts.js.map +1 -1
  324. package/dist/utils/prompt-handler.d.ts +3 -0
  325. package/dist/utils/prompt-handler.js +13 -0
  326. package/dist/utils/prompt-handler.js.map +1 -1
  327. package/dist/utils/sandbox-storage.d.ts +6 -5
  328. package/dist/utils/sandbox-storage.js +12 -12
  329. package/dist/utils/sandbox-storage.js.map +1 -1
  330. package/dist/utils/sandbox.d.ts +7 -30
  331. package/dist/utils/sandbox.js +247 -223
  332. package/dist/utils/sandbox.js.map +1 -1
  333. package/dist/utils/semver.d.ts +12 -0
  334. package/dist/utils/semver.js +23 -0
  335. package/dist/utils/semver.js.map +1 -1
  336. package/dist/utils/sync-display.d.ts +9 -0
  337. package/dist/utils/sync-display.js +67 -0
  338. package/dist/utils/sync-display.js.map +1 -0
  339. package/dist/utils/sync-fetch.d.ts +23 -0
  340. package/dist/utils/sync-fetch.js +64 -0
  341. package/dist/utils/sync-fetch.js.map +1 -0
  342. package/dist/utils/sync-helpers.d.ts +4 -59
  343. package/dist/utils/sync-helpers.js +4 -206
  344. package/dist/utils/sync-helpers.js.map +1 -1
  345. package/dist/web/app.css +912 -186
  346. package/dist/web/app.js +46 -46
  347. package/docs/API_INDEX.md +100 -0
  348. package/docs/API_REFERENCE.md +773 -0
  349. package/docs/CLI_REFERENCE.md +924 -0
  350. package/docs/GETTING_STARTED.md +862 -0
  351. package/docs/README.md +270 -0
  352. package/docs/api/AI.md +882 -0
  353. package/docs/api/Baskets.md +511 -0
  354. package/docs/api/CDN.md +524 -0
  355. package/docs/api/Data.md +446 -0
  356. package/docs/api/Jobs.md +524 -0
  357. package/docs/api/LuaAgent.md +454 -0
  358. package/docs/api/LuaJob.md +604 -0
  359. package/docs/api/LuaSkill.md +396 -0
  360. package/docs/api/LuaTool.md +521 -0
  361. package/docs/api/LuaWebhook.md +601 -0
  362. package/docs/api/Orders.md +514 -0
  363. package/docs/api/PostProcessor.md +565 -0
  364. package/docs/api/PreProcessor.md +630 -0
  365. package/docs/api/Products.md +507 -0
  366. package/docs/api/Templates.md +662 -0
  367. package/docs/api/User.md +567 -0
  368. package/docs/archive/DEVELOPMENT_GUIDE_V1.md +1294 -0
  369. package/docs/compiler-v2/ASSESSMENT.md +205 -0
  370. package/docs/compiler-v2/TEST_PLAN.md +306 -0
  371. package/package.json +3 -7
  372. package/template/tsconfig.json +1 -1
  373. package/dist/common/basket.instance.js.map +0 -1
  374. package/dist/common/data.entry.instance.js.map +0 -1
  375. package/dist/common/http.client.js.map +0 -1
  376. package/dist/common/job.instance.js.map +0 -1
  377. package/dist/common/order.instance.js.map +0 -1
  378. package/dist/common/product.instance.js.map +0 -1
  379. package/dist/common/product.pagination.instance.js.map +0 -1
  380. package/dist/common/product.search.instance.js.map +0 -1
  381. package/dist/common/user.instance.js.map +0 -1
  382. package/dist/config/auth.constants.d.ts +0 -11
  383. package/dist/config/auth.constants.js +0 -12
  384. package/dist/config/auth.constants.js.map +0 -1
  385. package/dist/config/init.constants.d.ts +0 -15
  386. package/dist/config/init.constants.js +0 -20
  387. package/dist/config/init.constants.js.map +0 -1
  388. package/dist/interfaces/compile.d.ts +0 -12
  389. package/dist/interfaces/compile.js +0 -5
  390. package/dist/interfaces/compile.js.map +0 -1
  391. package/dist/types/compile.types.d.ts +0 -131
  392. package/dist/types/compile.types.js +0 -6
  393. package/dist/types/compile.types.js.map +0 -1
  394. package/dist/utils/agent-code-utils.d.ts +0 -25
  395. package/dist/utils/agent-code-utils.js +0 -107
  396. package/dist/utils/agent-code-utils.js.map +0 -1
  397. package/dist/utils/bundling.d.ts +0 -89
  398. package/dist/utils/bundling.js +0 -1068
  399. package/dist/utils/bundling.js.map +0 -1
  400. package/dist/utils/compile.d.ts +0 -116
  401. package/dist/utils/compile.js +0 -1062
  402. package/dist/utils/compile.js.map +0 -1
  403. package/dist/utils/deploy-api.d.ts +0 -26
  404. package/dist/utils/deploy-api.js +0 -54
  405. package/dist/utils/deploy-api.js.map +0 -1
  406. package/dist/utils/deployment.d.ts +0 -26
  407. package/dist/utils/deployment.js +0 -218
  408. package/dist/utils/deployment.js.map +0 -1
  409. package/dist/utils/dev-helpers.d.ts +0 -47
  410. package/dist/utils/dev-helpers.js +0 -82
  411. package/dist/utils/dev-helpers.js.map +0 -1
  412. package/dist/utils/job-management.d.ts +0 -27
  413. package/dist/utils/job-management.js +0 -248
  414. package/dist/utils/job-management.js.map +0 -1
  415. package/dist/utils/mcp-server-management.d.ts +0 -26
  416. package/dist/utils/mcp-server-management.js +0 -197
  417. package/dist/utils/mcp-server-management.js.map +0 -1
  418. package/dist/utils/postprocessor-management.d.ts +0 -9
  419. package/dist/utils/postprocessor-management.js +0 -117
  420. package/dist/utils/postprocessor-management.js.map +0 -1
  421. package/dist/utils/pre-bundle-jobs.d.ts +0 -27
  422. package/dist/utils/pre-bundle-jobs.js +0 -189
  423. package/dist/utils/pre-bundle-jobs.js.map +0 -1
  424. package/dist/utils/preprocessor-management.d.ts +0 -9
  425. package/dist/utils/preprocessor-management.js +0 -117
  426. package/dist/utils/preprocessor-management.js.map +0 -1
  427. package/dist/utils/push-api.d.ts +0 -15
  428. package/dist/utils/push-api.js +0 -49
  429. package/dist/utils/push-api.js.map +0 -1
  430. package/dist/utils/push-helpers.d.ts +0 -82
  431. package/dist/utils/push-helpers.js +0 -246
  432. package/dist/utils/push-helpers.js.map +0 -1
  433. package/dist/utils/skill-management.d.ts +0 -39
  434. package/dist/utils/skill-management.js +0 -299
  435. package/dist/utils/skill-management.js.map +0 -1
  436. package/dist/utils/test-helpers.d.ts +0 -33
  437. package/dist/utils/test-helpers.js +0 -84
  438. package/dist/utils/test-helpers.js.map +0 -1
  439. package/dist/utils/test-prompts.d.ts +0 -23
  440. package/dist/utils/test-prompts.js +0 -187
  441. package/dist/utils/test-prompts.js.map +0 -1
  442. package/dist/utils/tool-detection.d.ts +0 -19
  443. package/dist/utils/tool-detection.js +0 -125
  444. package/dist/utils/tool-detection.js.map +0 -1
  445. package/dist/utils/webhook-management.d.ts +0 -27
  446. package/dist/utils/webhook-management.js +0 -241
  447. package/dist/utils/webhook-management.js.map +0 -1
  448. /package/dist/{common → api}/http.client.d.ts +0 -0
  449. /package/dist/{common → api}/http.client.js +0 -0
  450. /package/dist/{common → instances}/basket.instance.d.ts +0 -0
  451. /package/dist/{common → instances}/basket.instance.js +0 -0
  452. /package/dist/{common → instances}/data.entry.instance.d.ts +0 -0
  453. /package/dist/{common → instances}/data.entry.instance.js +0 -0
  454. /package/dist/{common → instances}/job.instance.d.ts +0 -0
  455. /package/dist/{common → instances}/job.instance.js +0 -0
  456. /package/dist/{common → instances}/order.instance.d.ts +0 -0
  457. /package/dist/{common → instances}/order.instance.js +0 -0
  458. /package/dist/{common → instances}/product.instance.d.ts +0 -0
  459. /package/dist/{common → instances}/product.instance.js +0 -0
  460. /package/dist/{common → instances}/product.pagination.instance.d.ts +0 -0
  461. /package/dist/{common → instances}/product.pagination.instance.js +0 -0
  462. /package/dist/{common → instances}/product.search.instance.d.ts +0 -0
  463. /package/dist/{common → instances}/product.search.instance.js +0 -0
  464. /package/dist/{common → instances}/user.instance.d.ts +0 -0
  465. /package/dist/{common → instances}/user.instance.js +0 -0
@@ -0,0 +1,524 @@
1
+ # CDN API
2
+
3
+ The CDN API allows you to upload and retrieve files from the Lua CDN. Use this for handling file uploads, document storage, and media management.
4
+
5
+ ## Import
6
+
7
+ ```typescript
8
+ import { CDN } from 'lua-cli';
9
+ ```
10
+
11
+ ## Overview
12
+
13
+ The CDN API enables:
14
+ - Upload files to the Lua CDN
15
+ - Retrieve files by ID
16
+ - Store images, documents, and media
17
+ - Share files with users
18
+ - Generate file URLs for access
19
+
20
+ ## Methods
21
+
22
+ | Method | Description |
23
+ |--------|-------------|
24
+ | `CDN.upload(file)` | Upload a file to the CDN |
25
+ | `CDN.get(fileId)` | Retrieve a file by its ID |
26
+
27
+ ## Methods
28
+
29
+ ### `CDN.upload(file)`
30
+
31
+ Uploads a file to the CDN and returns a file ID.
32
+
33
+ **Parameters:**
34
+ - `file` (File) - The file object to upload
35
+
36
+ **Returns:** `Promise<string>` - File ID
37
+
38
+ **Example:**
39
+ ```typescript
40
+ const fileId = await CDN.upload(file);
41
+ console.log('Uploaded file ID:', fileId);
42
+ ```
43
+
44
+ ### `CDN.get(fileId)`
45
+
46
+ Retrieves a file from the CDN by its ID.
47
+
48
+ **Parameters:**
49
+ - `fileId` (string) - The unique file identifier
50
+
51
+ **Returns:** `Promise<File>` - File object
52
+
53
+ **Example:**
54
+ ```typescript
55
+ const file = await CDN.get('file_abc123');
56
+ console.log('File name:', file.name);
57
+ console.log('File type:', file.type);
58
+ console.log('File size:', file.size);
59
+ ```
60
+
61
+ ## Complete Examples
62
+
63
+ ### File Upload Tool
64
+
65
+ ```typescript
66
+ import { LuaTool, CDN, Data } from 'lua-cli';
67
+ import { z } from 'zod';
68
+
69
+ export default class UploadFileTool implements LuaTool {
70
+ name = 'upload_file';
71
+ description = 'Upload a file to storage';
72
+
73
+ inputSchema = z.object({
74
+ file: z.instanceof(File).describe('File to upload'),
75
+ category: z.string().optional().describe('File category')
76
+ });
77
+
78
+ async execute(input: z.infer<typeof this.inputSchema>) {
79
+ try {
80
+ // Upload to CDN
81
+ const fileId = await CDN.upload(input.file);
82
+
83
+ // Store file metadata in custom data
84
+ await Data.create('files', {
85
+ fileId,
86
+ fileName: input.file.name,
87
+ fileType: input.file.type,
88
+ fileSize: input.file.size,
89
+ category: input.category || 'general',
90
+ uploadedAt: new Date().toISOString()
91
+ });
92
+
93
+ return {
94
+ success: true,
95
+ message: `File "${input.file.name}" uploaded successfully`,
96
+ fileId,
97
+ fileName: input.file.name,
98
+ fileSize: input.file.size
99
+ };
100
+ } catch (error) {
101
+ return {
102
+ success: false,
103
+ error: error instanceof Error ? error.message : 'Upload failed'
104
+ };
105
+ }
106
+ }
107
+ }
108
+ ```
109
+
110
+ ### Download File Tool
111
+
112
+ ```typescript
113
+ import { LuaTool, CDN } from 'lua-cli';
114
+ import { z } from 'zod';
115
+
116
+ export default class DownloadFileTool implements LuaTool {
117
+ name = 'download_file';
118
+ description = 'Download a file by ID';
119
+
120
+ inputSchema = z.object({
121
+ fileId: z.string().describe('File ID to download')
122
+ });
123
+
124
+ async execute(input: z.infer<typeof this.inputSchema>) {
125
+ try {
126
+ const file = await CDN.get(input.fileId);
127
+
128
+ return {
129
+ success: true,
130
+ fileName: file.name,
131
+ fileType: file.type,
132
+ fileSize: file.size,
133
+ file: file // Can be sent to user or processed
134
+ };
135
+ } catch (error) {
136
+ return {
137
+ success: false,
138
+ error: 'File not found or download failed'
139
+ };
140
+ }
141
+ }
142
+ }
143
+ ```
144
+
145
+ ### Image Upload with Processing
146
+
147
+ ```typescript
148
+ import { LuaTool, CDN, User } from 'lua-cli';
149
+ import { z } from 'zod';
150
+
151
+ export default class UploadImageTool implements LuaTool {
152
+ name = 'upload_image';
153
+ description = 'Upload and share an image';
154
+
155
+ inputSchema = z.object({
156
+ image: z.instanceof(File).describe('Image file'),
157
+ caption: z.string().optional()
158
+ });
159
+
160
+ async execute(input: z.infer<typeof this.inputSchema>) {
161
+ // Validate file type
162
+ if (!input.image.type.startsWith('image/')) {
163
+ return {
164
+ success: false,
165
+ error: 'File must be an image'
166
+ };
167
+ }
168
+
169
+ // Validate file size (max 5MB)
170
+ const maxSize = 5 * 1024 * 1024; // 5MB in bytes
171
+ if (input.image.size > maxSize) {
172
+ return {
173
+ success: false,
174
+ error: 'Image must be smaller than 5MB'
175
+ };
176
+ }
177
+
178
+ try {
179
+ // Upload to CDN
180
+ const fileId = await CDN.upload(input.image);
181
+
182
+ // Get current user
183
+ const user = await User.get();
184
+
185
+ // Send confirmation with image
186
+ await user.send([
187
+ {
188
+ type: 'text',
189
+ text: input.caption || 'Image uploaded successfully'
190
+ },
191
+ {
192
+ type: 'image',
193
+ url: `https://cdn.heylua.ai/${fileId}`
194
+ }
195
+ ]);
196
+
197
+ return {
198
+ success: true,
199
+ fileId,
200
+ fileName: input.image.name,
201
+ fileSize: input.image.size,
202
+ message: 'Image uploaded and shared'
203
+ };
204
+ } catch (error) {
205
+ return {
206
+ success: false,
207
+ error: error instanceof Error ? error.message : 'Upload failed'
208
+ };
209
+ }
210
+ }
211
+ }
212
+ ```
213
+
214
+ ### Document Manager Tool
215
+
216
+ ```typescript
217
+ import { LuaTool, CDN, Data } from 'lua-cli';
218
+ import { z } from 'zod';
219
+
220
+ export default class ManageDocumentsTool implements LuaTool {
221
+ name = 'manage_documents';
222
+ description = 'Upload and list user documents';
223
+
224
+ inputSchema = z.object({
225
+ action: z.enum(['upload', 'list', 'get']),
226
+ file: z.instanceof(File).optional(),
227
+ fileId: z.string().optional()
228
+ });
229
+
230
+ async execute(input: z.infer<typeof this.inputSchema>) {
231
+ if (input.action === 'upload') {
232
+ if (!input.file) {
233
+ return { success: false, error: 'File is required for upload' };
234
+ }
235
+
236
+ // Upload file
237
+ const fileId = await CDN.upload(input.file);
238
+
239
+ // Store metadata
240
+ const entry = await Data.create('documents', {
241
+ fileId,
242
+ fileName: input.file.name,
243
+ fileType: input.file.type,
244
+ fileSize: input.file.size,
245
+ uploadedAt: new Date().toISOString()
246
+ });
247
+
248
+ return {
249
+ success: true,
250
+ message: 'Document uploaded',
251
+ fileId,
252
+ entryId: entry.id
253
+ };
254
+ }
255
+
256
+ if (input.action === 'list') {
257
+ // List all user documents
258
+ const documents = await Data.get('documents');
259
+
260
+ return {
261
+ success: true,
262
+ documents: documents.map(doc => ({
263
+ id: doc.id,
264
+ fileName: doc.data.fileName,
265
+ fileSize: doc.data.fileSize,
266
+ uploadedAt: doc.data.uploadedAt
267
+ }))
268
+ };
269
+ }
270
+
271
+ if (input.action === 'get') {
272
+ if (!input.fileId) {
273
+ return { success: false, error: 'fileId is required' };
274
+ }
275
+
276
+ // Retrieve file
277
+ const file = await CDN.get(input.fileId);
278
+
279
+ return {
280
+ success: true,
281
+ fileName: file.name,
282
+ fileType: file.type,
283
+ fileSize: file.size
284
+ };
285
+ }
286
+
287
+ return { success: false, error: 'Invalid action' };
288
+ }
289
+ }
290
+ ```
291
+
292
+ ### Avatar Upload Tool
293
+
294
+ ```typescript
295
+ import { LuaTool, CDN, User } from 'lua-cli';
296
+ import { z } from 'zod';
297
+
298
+ export default class UploadAvatarTool implements LuaTool {
299
+ name = 'upload_avatar';
300
+ description = 'Upload user profile picture';
301
+
302
+ inputSchema = z.object({
303
+ avatar: z.instanceof(File).describe('Avatar image file')
304
+ });
305
+
306
+ async execute(input: z.infer<typeof this.inputSchema>) {
307
+ // Validate image type
308
+ const validTypes = ['image/jpeg', 'image/png', 'image/gif', 'image/webp'];
309
+ if (!validTypes.includes(input.avatar.type)) {
310
+ return {
311
+ success: false,
312
+ error: 'Avatar must be JPEG, PNG, GIF, or WebP'
313
+ };
314
+ }
315
+
316
+ // Validate size (max 2MB)
317
+ const maxSize = 2 * 1024 * 1024;
318
+ if (input.avatar.size > maxSize) {
319
+ return {
320
+ success: false,
321
+ error: 'Avatar must be smaller than 2MB'
322
+ };
323
+ }
324
+
325
+ try {
326
+ // Upload to CDN
327
+ const fileId = await CDN.upload(input.avatar);
328
+
329
+ // Update user profile
330
+ const user = await User.get();
331
+ await user.update({
332
+ avatarUrl: `https://cdn.heylua.ai/${fileId}`,
333
+ avatarFileId: fileId
334
+ });
335
+
336
+ return {
337
+ success: true,
338
+ message: 'Avatar updated successfully',
339
+ fileId,
340
+ avatarUrl: `https://cdn.heylua.ai/${fileId}`
341
+ };
342
+ } catch (error) {
343
+ return {
344
+ success: false,
345
+ error: error instanceof Error ? error.message : 'Avatar upload failed'
346
+ };
347
+ }
348
+ }
349
+ }
350
+ ```
351
+
352
+ ### File Share Tool
353
+
354
+ ```typescript
355
+ import { LuaTool, CDN, Data, User } from 'lua-cli';
356
+ import { z } from 'zod';
357
+
358
+ export default class ShareFileTool implements LuaTool {
359
+ name = 'share_file';
360
+ description = 'Share a file with the user';
361
+
362
+ inputSchema = z.object({
363
+ fileId: z.string().describe('File ID to share'),
364
+ message: z.string().optional()
365
+ });
366
+
367
+ async execute(input: z.infer<typeof this.inputSchema>) {
368
+ try {
369
+ // Get file info from metadata
370
+ const files = await Data.search('files', input.fileId);
371
+
372
+ if (files.data.length === 0) {
373
+ return {
374
+ success: false,
375
+ error: 'File not found'
376
+ };
377
+ }
378
+
379
+ const fileInfo = files.data[0].data;
380
+ const user = await User.get();
381
+
382
+ // Send file to user
383
+ const fileUrl = `https://cdn.heylua.ai/${input.fileId}`;
384
+
385
+ await user.send([
386
+ {
387
+ type: 'text',
388
+ text: input.message || `Here's your file: ${fileInfo.fileName}`
389
+ },
390
+ {
391
+ type: 'file',
392
+ url: fileUrl,
393
+ mimeType: fileInfo.fileType
394
+ }
395
+ ]);
396
+
397
+ return {
398
+ success: true,
399
+ message: 'File shared successfully',
400
+ fileName: fileInfo.fileName,
401
+ fileUrl
402
+ };
403
+ } catch (error) {
404
+ return {
405
+ success: false,
406
+ error: error instanceof Error ? error.message : 'Share failed'
407
+ };
408
+ }
409
+ }
410
+ }
411
+ ```
412
+
413
+ ## File Object Properties
414
+
415
+ The `File` object returned by `CDN.get()` has:
416
+
417
+ ```typescript
418
+ const file = await CDN.get('file_123');
419
+
420
+ console.log(file.name); // File name (e.g., "document.pdf")
421
+ console.log(file.type); // MIME type (e.g., "application/pdf")
422
+ console.log(file.size); // File size in bytes
423
+ ```
424
+
425
+ ## Best Practices
426
+
427
+ ### ✅ DO
428
+
429
+ - Validate file types before uploading
430
+ - Check file size limits to prevent large uploads
431
+ - Store file metadata in Data API for tracking
432
+ - Use meaningful file IDs and organize by category
433
+ - Handle upload/download errors gracefully
434
+ - Compress images before uploading when possible
435
+ - Clean up unused files periodically
436
+
437
+ ### ❌ DON'T
438
+
439
+ - Don't upload files without validation
440
+ - Don't store sensitive data without encryption
441
+ - Don't exceed reasonable file size limits
442
+ - Don't lose track of file IDs
443
+ - Don't upload files without proper error handling
444
+ - Don't forget to inform users about upload status
445
+
446
+ ## Common File Types
447
+
448
+ | Category | MIME Types |
449
+ |----------|-----------|
450
+ | Images | `image/jpeg`, `image/png`, `image/gif`, `image/webp` |
451
+ | Documents | `application/pdf`, `application/msword`, `application/vnd.openxmlformats-officedocument.wordprocessingml.document` |
452
+ | Spreadsheets | `application/vnd.ms-excel`, `application/vnd.openxmlformats-officedocument.spreadsheetml.sheet` |
453
+ | Text | `text/plain`, `text/csv`, `text/html` |
454
+ | Audio | `audio/mpeg`, `audio/wav`, `audio/ogg` |
455
+ | Video | `video/mp4`, `video/webm`, `video/quicktime` |
456
+
457
+ ## Error Handling
458
+
459
+ ```typescript
460
+ try {
461
+ const fileId = await CDN.upload(file);
462
+ console.log('Upload successful:', fileId);
463
+ } catch (error) {
464
+ if (error.message.includes('size')) {
465
+ console.log('File too large');
466
+ } else if (error.message.includes('type')) {
467
+ console.log('Invalid file type');
468
+ } else {
469
+ console.log('Upload failed:', error.message);
470
+ }
471
+ }
472
+ ```
473
+
474
+ ## Common Patterns
475
+
476
+ ### File Size Validation
477
+
478
+ ```typescript
479
+ function validateFileSize(file: File, maxSizeMB: number): boolean {
480
+ const maxBytes = maxSizeMB * 1024 * 1024;
481
+ return file.size <= maxBytes;
482
+ }
483
+
484
+ // Usage
485
+ if (!validateFileSize(file, 5)) {
486
+ throw new Error('File must be smaller than 5MB');
487
+ }
488
+ ```
489
+
490
+ ### File Type Validation
491
+
492
+ ```typescript
493
+ function validateFileType(
494
+ file: File,
495
+ allowedTypes: string[]
496
+ ): boolean {
497
+ return allowedTypes.includes(file.type);
498
+ }
499
+
500
+ // Usage
501
+ const imageTypes = ['image/jpeg', 'image/png', 'image/gif'];
502
+ if (!validateFileType(file, imageTypes)) {
503
+ throw new Error('File must be an image');
504
+ }
505
+ ```
506
+
507
+ ### Generate CDN URL
508
+
509
+ ```typescript
510
+ function getCdnUrl(fileId: string): string {
511
+ return `https://cdn.heylua.ai/${fileId}`;
512
+ }
513
+ ```
514
+
515
+ ## Related APIs
516
+
517
+ - [Data API](./Data.md) - Store file metadata
518
+ - [User API](./User.md) - Send files to users
519
+ - [AI API](./AI.md) - Analyze uploaded images/documents
520
+
521
+ ## See Also
522
+
523
+ - [File Upload Guide](../guides/FileUploads.md)
524
+ - [Media Management](../guides/MediaManagement.md)