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
+ # Jobs API
2
+
3
+ The Jobs API allows you to dynamically create scheduled tasks from within your tools. Use this to defer work, schedule reminders, or automate recurring tasks.
4
+
5
+ ## Import
6
+
7
+ ```typescript
8
+ import { Jobs } from 'lua-cli';
9
+ // or
10
+ import { Jobs } from 'lua-cli/skill';
11
+ ```
12
+
13
+ ## Overview
14
+
15
+ The Jobs API enables:
16
+ - Dynamic job creation from tools
17
+ - One-time scheduled tasks
18
+ - Recurring jobs with cron patterns
19
+ - Passing data via metadata
20
+ - User-scoped job execution
21
+
22
+ ## Methods
23
+
24
+ ### `Jobs.create(config)`
25
+
26
+ Creates a new scheduled job.
27
+
28
+ **Parameters:**
29
+ - `config` (object) - Job configuration
30
+
31
+ **Returns:** `Promise<JobInstance>`
32
+
33
+ **Example:**
34
+ ```typescript
35
+ const job = await Jobs.create({
36
+ name: 'user-reminder',
37
+ description: 'Remind user about meeting',
38
+ metadata: { message: 'Team meeting in 10 minutes' },
39
+ schedule: {
40
+ type: 'once',
41
+ executeAt: new Date(Date.now() + 600000)
42
+ },
43
+ execute: async (jobInstance) => {
44
+ const user = await jobInstance.user();
45
+ await user.send([{
46
+ type: 'text',
47
+ text: jobInstance.metadata.message
48
+ }]);
49
+ return { success: true };
50
+ }
51
+ });
52
+
53
+ console.log('Job created:', job.id);
54
+ ```
55
+
56
+ ### `Jobs.get(jobId)`
57
+
58
+ Retrieves a job by ID.
59
+
60
+ **Parameters:**
61
+ - `jobId` (string) - Job ID
62
+
63
+ **Returns:** `Promise<JobInstance>`
64
+
65
+ **Example:**
66
+ ```typescript
67
+ const job = await Jobs.get('job_123');
68
+ console.log(job.name);
69
+ console.log(job.schedule);
70
+ ```
71
+
72
+ ## Job Configuration
73
+
74
+ ```typescript
75
+ interface JobConfig {
76
+ /** Unique job name */
77
+ name: string;
78
+
79
+ /** Job description */
80
+ description?: string;
81
+
82
+ /** Data to pass to execute function */
83
+ metadata?: Record<string, any>;
84
+
85
+ /** When/how often to run */
86
+ schedule: JobSchedule;
87
+
88
+ /** Maximum execution time in ms */
89
+ timeout?: number;
90
+
91
+ /** Retry configuration */
92
+ retry?: {
93
+ maxRetries: number;
94
+ backoffSeconds: number;
95
+ };
96
+
97
+ /** Whether to activate immediately */
98
+ activate?: boolean;
99
+
100
+ /** Execute function */
101
+ execute: (job: JobInstance) => Promise<any>;
102
+ }
103
+ ```
104
+
105
+ ## Schedule Types
106
+
107
+ ### Once (One-time execution)
108
+
109
+ ```typescript
110
+ schedule: {
111
+ type: 'once',
112
+ executeAt: Date // When to run
113
+ }
114
+ ```
115
+
116
+ **Example:**
117
+ ```typescript
118
+ // Run in 1 hour
119
+ schedule: {
120
+ type: 'once',
121
+ executeAt: new Date(Date.now() + 3600000)
122
+ }
123
+
124
+ // Run at specific time
125
+ schedule: {
126
+ type: 'once',
127
+ executeAt: new Date('2025-12-25T09:00:00Z')
128
+ }
129
+ ```
130
+
131
+ ### Interval (Recurring at fixed intervals)
132
+
133
+ ```typescript
134
+ schedule: {
135
+ type: 'interval',
136
+ intervalSeconds: number // Seconds between executions
137
+ }
138
+ ```
139
+
140
+ **Example:**
141
+ ```typescript
142
+ // Run every 5 minutes
143
+ schedule: {
144
+ type: 'interval',
145
+ intervalSeconds: 300
146
+ }
147
+
148
+ // Run every hour
149
+ schedule: {
150
+ type: 'interval',
151
+ intervalSeconds: 3600
152
+ }
153
+ ```
154
+
155
+ ### Cron (Schedule with cron pattern)
156
+
157
+ ```typescript
158
+ schedule: {
159
+ type: 'cron',
160
+ pattern: string // Cron pattern
161
+ }
162
+ ```
163
+
164
+ **Example:**
165
+ ```typescript
166
+ // Every day at 9 AM
167
+ schedule: {
168
+ type: 'cron',
169
+ pattern: '0 9 * * *'
170
+ }
171
+
172
+ // Every Monday at 8 AM
173
+ schedule: {
174
+ type: 'cron',
175
+ pattern: '0 8 * * 1'
176
+ }
177
+
178
+ // Every 15 minutes
179
+ schedule: {
180
+ type: 'cron',
181
+ pattern: '*/15 * * * *'
182
+ }
183
+ ```
184
+
185
+ ## Complete Examples
186
+
187
+ ### Reminder Tool
188
+
189
+ ```typescript
190
+ import { LuaTool, Jobs, JobInstance } from 'lua-cli/skill';
191
+ import { z } from 'zod';
192
+
193
+ export default class ReminderTool implements LuaTool {
194
+ name = 'set_reminder';
195
+ description = 'Set a reminder to notify user later';
196
+
197
+ inputSchema = z.object({
198
+ message: z.string().describe('Reminder message'),
199
+ minutes: z.number().min(1).max(10080).describe('Minutes from now')
200
+ });
201
+
202
+ async execute(input: z.infer<typeof this.inputSchema>) {
203
+ // Create job to notify user later
204
+ const job = await Jobs.create({
205
+ name: `reminder-${Date.now()}`,
206
+ description: 'User reminder',
207
+
208
+ // ✅ Pass data via metadata (not parent scope!)
209
+ metadata: {
210
+ message: input.message,
211
+ setAt: new Date().toISOString()
212
+ },
213
+
214
+ schedule: {
215
+ type: 'once',
216
+ executeAt: new Date(Date.now() + input.minutes * 60000)
217
+ },
218
+
219
+ execute: async (jobInstance: JobInstance) => {
220
+ const user = await jobInstance.user();
221
+ const message = jobInstance.metadata.message;
222
+
223
+ await user.send([{
224
+ type: 'text',
225
+ text: `⏰ Reminder: ${message}`
226
+ }]);
227
+
228
+ return {
229
+ success: true,
230
+ deliveredAt: new Date().toISOString()
231
+ };
232
+ }
233
+ });
234
+
235
+ return {
236
+ success: true,
237
+ message: `Reminder set for ${input.minutes} minutes from now`,
238
+ jobId: job.id,
239
+ executeAt: job.schedule.executeAt
240
+ };
241
+ }
242
+ }
243
+ ```
244
+
245
+ ### Follow-up Tool
246
+
247
+ ```typescript
248
+ import { LuaTool, Jobs, JobInstance, Data } from 'lua-cli/skill';
249
+ import { z } from 'zod';
250
+
251
+ export default class ScheduleFollowupTool implements LuaTool {
252
+ name = 'schedule_followup';
253
+ description = 'Schedule a follow-up message for customer support';
254
+
255
+ inputSchema = z.object({
256
+ ticketId: z.string(),
257
+ followupHours: z.number().min(1).max(168),
258
+ message: z.string()
259
+ });
260
+
261
+ async execute(input: z.infer<typeof this.inputSchema>) {
262
+ // Create job for follow-up
263
+ const job = await Jobs.create({
264
+ name: `followup-${input.ticketId}`,
265
+ description: `Follow-up for ticket ${input.ticketId}`,
266
+
267
+ metadata: {
268
+ ticketId: input.ticketId,
269
+ message: input.message
270
+ },
271
+
272
+ schedule: {
273
+ type: 'once',
274
+ executeAt: new Date(Date.now() + input.followupHours * 3600000)
275
+ },
276
+
277
+ execute: async (jobInstance: JobInstance) => {
278
+ const user = await jobInstance.user();
279
+ const { ticketId, message } = jobInstance.metadata;
280
+
281
+ // Check if ticket is still open
282
+ const tickets = await Data.search('tickets', ticketId, 1);
283
+
284
+ if (tickets.data.length > 0 && tickets.data[0].data.status === 'open') {
285
+ // Send follow-up
286
+ await user.send([{
287
+ type: 'text',
288
+ text: `📋 Ticket #${ticketId} Follow-up:\n\n${message}`
289
+ }]);
290
+
291
+ // Update ticket
292
+ await Data.update('tickets', tickets.data[0].id, {
293
+ ...tickets.data[0].data,
294
+ followupSent: true,
295
+ followupAt: new Date().toISOString()
296
+ });
297
+
298
+ return { success: true, sent: true };
299
+ }
300
+
301
+ return { success: true, sent: false, reason: 'Ticket closed' };
302
+ }
303
+ });
304
+
305
+ return {
306
+ success: true,
307
+ message: `Follow-up scheduled for ${input.followupHours} hours`,
308
+ jobId: job.id
309
+ };
310
+ }
311
+ }
312
+ ```
313
+
314
+ ### Recurring Report
315
+
316
+ ```typescript
317
+ import { LuaTool, Jobs, JobInstance, Products } from 'lua-cli/skill';
318
+ import { z } from 'zod';
319
+
320
+ export default class DailyReportTool implements LuaTool {
321
+ name = 'setup_daily_report';
322
+ description = 'Set up daily sales report';
323
+
324
+ inputSchema = z.object({
325
+ timeOfDay: z.string().regex(/^([0-1]?[0-9]|2[0-3]):[0-5][0-9]$/)
326
+ .describe('Time in HH:MM format (24-hour)')
327
+ });
328
+
329
+ async execute(input: z.infer<typeof this.inputSchema>) {
330
+ const [hour, minute] = input.timeOfDay.split(':');
331
+
332
+ const job = await Jobs.create({
333
+ name: 'daily-sales-report',
334
+ description: 'Daily sales summary',
335
+
336
+ metadata: {
337
+ reportTime: input.timeOfDay
338
+ },
339
+
340
+ schedule: {
341
+ type: 'cron',
342
+ pattern: `${minute} ${hour} * * *` // Every day at specified time
343
+ },
344
+
345
+ execute: async (jobInstance: JobInstance) => {
346
+ // Get products sold today
347
+ const products = await Products.get(1, 100);
348
+ const totalValue = products.reduce((sum, p) => sum + (p.price || 0), 0);
349
+
350
+ const report = `📊 Daily Sales Report\n\n` +
351
+ `Total Products: ${products.length}\n` +
352
+ `Catalog Value: $${totalValue.toFixed(2)}\n` +
353
+ `Report Time: ${jobInstance.metadata.reportTime}`;
354
+
355
+ const user = await jobInstance.user();
356
+ await user.send([{ type: 'text', text: report }]);
357
+
358
+ return {
359
+ success: true,
360
+ productCount: products.length,
361
+ totalValue
362
+ };
363
+ }
364
+ });
365
+
366
+ return {
367
+ success: true,
368
+ message: `Daily report scheduled for ${input.timeOfDay}`,
369
+ jobId: job.id
370
+ };
371
+ }
372
+ }
373
+ ```
374
+
375
+ ## Important: Metadata Pattern
376
+
377
+ **⚠️ Jobs execute functions must be self-contained!**
378
+
379
+ ```typescript
380
+ // ❌ WRONG - Accessing parent scope
381
+ async execute(input: any) {
382
+ const userMessage = input.message; // This variable...
383
+
384
+ await Jobs.create({
385
+ execute: async (job) => {
386
+ // ...is NOT available here! ❌
387
+ await user.send(userMessage); // Error: userMessage is not defined
388
+ }
389
+ });
390
+ }
391
+
392
+ // ✅ CORRECT - Using metadata
393
+ async execute(input: any) {
394
+ await Jobs.create({
395
+ metadata: {
396
+ message: input.message // ✅ Pass via metadata
397
+ },
398
+ execute: async (job) => {
399
+ const message = job.metadata.message; // ✅ Access from metadata
400
+ const user = await job.user();
401
+ await user.send([{ type: 'text', text: message }]);
402
+ }
403
+ });
404
+ }
405
+ ```
406
+
407
+ **Why?** Jobs are serialized, bundled, and executed in an isolated sandbox. They can't access the parent function's scope.
408
+
409
+ ## JobInstance
410
+
411
+ The `JobInstance` passed to execute functions provides:
412
+
413
+ ### `job.user()`
414
+
415
+ Gets the user who triggered the job.
416
+
417
+ **Returns:** `Promise<UserDataInstance>`
418
+
419
+ **Example:**
420
+ ```typescript
421
+ execute: async (job) => {
422
+ const user = await job.user();
423
+ await user.send([{ type: 'text', text: 'Job complete!' }]);
424
+ }
425
+ ```
426
+
427
+ ### `job.metadata`
428
+
429
+ Access to the metadata passed during creation.
430
+
431
+ **Example:**
432
+ ```typescript
433
+ execute: async (job) => {
434
+ console.log(job.metadata.customData);
435
+ }
436
+ ```
437
+
438
+ ### `job.updateMetadata(data)`
439
+
440
+ Updates job metadata.
441
+
442
+ **Example:**
443
+ ```typescript
444
+ execute: async (job) => {
445
+ await job.updateMetadata({
446
+ lastRun: new Date().toISOString(),
447
+ runCount: (job.metadata.runCount || 0) + 1
448
+ });
449
+ }
450
+ ```
451
+
452
+ ### `job.delete()`
453
+
454
+ Deletes the job.
455
+
456
+ **Example:**
457
+ ```typescript
458
+ execute: async (job) => {
459
+ // Do work...
460
+
461
+ // Delete one-time job after execution
462
+ await job.delete();
463
+ }
464
+ ```
465
+
466
+ ## Retry Configuration
467
+
468
+ ```typescript
469
+ await Jobs.create({
470
+ name: 'important-task',
471
+
472
+ retry: {
473
+ maxRetries: 3,
474
+ backoffSeconds: 60 // Wait 60s between retries
475
+ },
476
+
477
+ execute: async (job) => {
478
+ // If this throws, will retry up to 3 times
479
+ await criticalOperation();
480
+ }
481
+ });
482
+ ```
483
+
484
+ ## Timeout Configuration
485
+
486
+ ```typescript
487
+ await Jobs.create({
488
+ name: 'long-running-task',
489
+ timeout: 300000, // 5 minutes max
490
+
491
+ execute: async (job) => {
492
+ // Will be terminated if exceeds 5 minutes
493
+ await longOperation();
494
+ }
495
+ });
496
+ ```
497
+
498
+ ## Best Practices
499
+
500
+ ### ✅ DO
501
+ - Use unique, descriptive job names
502
+ - Pass all necessary data via metadata
503
+ - Handle errors gracefully in execute function
504
+ - Set appropriate timeouts
505
+ - Use retry for critical jobs
506
+
507
+ ### ❌ DON'T
508
+ - Don't access parent scope variables
509
+ - Don't create jobs inside jobs (use metadata to track state)
510
+ - Don't use extremely short intervals (< 1 minute)
511
+ - Don't forget to handle errors
512
+
513
+ ## Related APIs
514
+
515
+ - [LuaJob](./LuaJob.md) - Pre-defined scheduled jobs
516
+ - [JobInstance](./instances/JobInstance.md) - Job instance methods
517
+ - [User API](./User.md) - Send messages from jobs
518
+
519
+ ## See Also
520
+
521
+ - [Dynamic Job Creation Guide](../../DYNAMIC_JOB_CREATION_API.md)
522
+ - [Job Examples](../../template/src/jobs/)
523
+ - [CreateInlineJob Example](../../template/src/skills/tools/CreateInlineJob.ts)
524
+