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,118 @@
1
+ /**
2
+ * Job Handler
3
+ *
4
+ * Handles CLI operations for job primitives.
5
+ *
6
+ * Jobs:
7
+ * - Use 'status' field on entity (not 'active')
8
+ * - Use 'isActive' field on versions
9
+ * - buildPushData includes schedule field
10
+ */
11
+ import { PrimitiveKind } from '../compiler/types.js';
12
+ import { BASE_URLS } from '../config/constants.js';
13
+ import JobApi from '../api/job.api.service.js';
14
+ import { BaseVersionedHandler, DEFAULT_VERSION } from './base.handler.js';
15
+ /**
16
+ * Job primitive handler
17
+ */
18
+ export class JobHandler extends BaseVersionedHandler {
19
+ constructor() {
20
+ super(...arguments);
21
+ this.kind = PrimitiveKind.JOB;
22
+ this.displayName = 'job';
23
+ this.displayNamePlural = 'jobs';
24
+ this.deleteCommand = 'lua jobs delete';
25
+ this.yamlConfig = {
26
+ yamlKey: 'jobs',
27
+ idField: 'jobId',
28
+ };
29
+ }
30
+ getApi(apiKey, agentId) {
31
+ return new JobApi(BASE_URLS.API, apiKey, agentId);
32
+ }
33
+ async fetchFromServer(api) {
34
+ const response = await api.getJobs();
35
+ if (!response.success || !response.data?.jobs) {
36
+ return null;
37
+ }
38
+ return response.data.jobs;
39
+ }
40
+ async createOnServer(api, primitive) {
41
+ const job = primitive;
42
+ // Build complete schedule - fill in missing fields based on type
43
+ // Use any for the schedule since the manifest type doesn't include all API fields
44
+ let schedule = job.schedule;
45
+ if (!schedule || !schedule.type) {
46
+ schedule = { type: 'cron', expression: '0 0 * * *' };
47
+ }
48
+ else if (schedule.type === 'cron' && !schedule.expression) {
49
+ schedule = { ...schedule, expression: '0 0 * * *' }; // Default: daily at midnight
50
+ }
51
+ else if (schedule.type === 'interval' && !schedule.seconds) {
52
+ schedule = { ...schedule, seconds: 3600 }; // Default: every hour
53
+ }
54
+ else if (schedule.type === 'once' && !schedule.executeAt) {
55
+ // For "once" jobs, set to 1 hour from now as a reasonable default
56
+ const oneHourFromNow = new Date(Date.now() + 60 * 60 * 1000).toISOString();
57
+ schedule = { ...schedule, executeAt: oneHourFromNow };
58
+ }
59
+ const response = await api.createJob({
60
+ name: job.name,
61
+ description: job.description || `A Lua job for ${job.name}`,
62
+ schedule,
63
+ });
64
+ if (!response.success || !response.data?.id)
65
+ return null;
66
+ return response.data.id;
67
+ }
68
+ cleanItem(job) {
69
+ return {
70
+ name: job.name || '',
71
+ version: job.version || DEFAULT_VERSION,
72
+ jobId: job.jobId || '',
73
+ };
74
+ }
75
+ /**
76
+ * Jobs use 'status' field (not 'active').
77
+ * Active if status is not 'inactive'.
78
+ */
79
+ isActive(serverItem) {
80
+ return serverItem.status !== 'inactive';
81
+ }
82
+ /**
83
+ * Jobs use 'isActive' field on versions.
84
+ */
85
+ getActiveVersion(serverItem) {
86
+ const activeVersion = serverItem.versions?.find((v) => v.isActive === true);
87
+ return activeVersion?.version ?? null;
88
+ }
89
+ async pushToServer(apiKey, agentId, entityId, pushData) {
90
+ const api = this.getApi(apiKey, agentId);
91
+ const response = await api.pushJob(entityId, { ...pushData, jobId: entityId });
92
+ return { success: response.success, error: response.error?.message };
93
+ }
94
+ async publishVersion(apiKey, agentId, entityId, version) {
95
+ const api = this.getApi(apiKey, agentId);
96
+ const response = await api.publishJobVersion(entityId, version);
97
+ return { success: response.success, error: response.error?.message };
98
+ }
99
+ /**
100
+ * Override to include schedule, timeout, retry fields in push data.
101
+ */
102
+ buildPushData(primitive, compressedCode) {
103
+ const job = primitive;
104
+ return {
105
+ name: job.name,
106
+ description: job.description,
107
+ code: compressedCode,
108
+ executeFunction: compressedCode,
109
+ schedule: job.schedule,
110
+ timeout: job.timeout,
111
+ retry: job.retry,
112
+ metadata: job.metadata,
113
+ };
114
+ }
115
+ }
116
+ // Export singleton instance
117
+ export const jobHandler = new JobHandler();
118
+ //# sourceMappingURL=job.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"job.handler.js","sourceRoot":"","sources":["../../src/primitives/job.handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * MCP Server Handler
3
+ *
4
+ * Handles CLI operations for MCP server primitives.
5
+ *
6
+ * MCP Servers:
7
+ * - Don't have versions (non-versioned primitive)
8
+ * - Only perform orphan detection during sync
9
+ * - Use 'active' field on entity
10
+ */
11
+ import { PrimitiveKind } from '../compiler/types.js';
12
+ import DeveloperApi from '../api/developer.api.service.js';
13
+ import { BaseNonVersionedHandler } from './base.handler.js';
14
+ import type { YamlPrimitiveConfig } from './types.js';
15
+ import type { YamlConfigMCPServer } from '../types/yaml.types.js';
16
+ /**
17
+ * MCP Server primitive handler
18
+ */
19
+ export declare class MCPServerHandler extends BaseNonVersionedHandler<YamlConfigMCPServer> {
20
+ readonly kind = PrimitiveKind.MCP_SERVER;
21
+ readonly displayName = "MCP server";
22
+ readonly displayNamePlural = "MCP servers";
23
+ readonly deleteCommand = "lua mcp delete";
24
+ readonly yamlConfig: YamlPrimitiveConfig;
25
+ protected getApi(apiKey: string, agentId: string): DeveloperApi;
26
+ protected fetchFromServer(api: DeveloperApi): Promise<any[] | null>;
27
+ cleanItem(server: YamlConfigMCPServer): YamlConfigMCPServer;
28
+ /**
29
+ * Load bundled MCP server data from the compilation output.
30
+ */
31
+ loadBundledServers(projectPath?: string): any[];
32
+ /**
33
+ * Upsert an MCP server on the server (create or update by name).
34
+ */
35
+ upsertOnServer(apiKey: string, agentId: string, serverData: Record<string, unknown>): Promise<{
36
+ success: boolean;
37
+ id?: string;
38
+ active?: boolean;
39
+ error?: string;
40
+ }>;
41
+ /**
42
+ * Activate an MCP server on the server.
43
+ */
44
+ activate(apiKey: string, agentId: string, serverId: string): Promise<{
45
+ success: boolean;
46
+ error?: string;
47
+ }>;
48
+ /**
49
+ * MCP servers use 'active' field directly on the entity.
50
+ * Excludes integration-sourced servers (e.g., UnifiedTo) from orphan detection.
51
+ */
52
+ protected isActive(serverItem: any): boolean;
53
+ }
54
+ export declare const mcpServerHandler: MCPServerHandler;
@@ -0,0 +1,91 @@
1
+ /**
2
+ * MCP Server Handler
3
+ *
4
+ * Handles CLI operations for MCP server primitives.
5
+ *
6
+ * MCP Servers:
7
+ * - Don't have versions (non-versioned primitive)
8
+ * - Only perform orphan detection during sync
9
+ * - Use 'active' field on entity
10
+ */
11
+ import * as fs from 'fs';
12
+ import * as path from 'path';
13
+ import { PrimitiveKind } from '../compiler/types.js';
14
+ import { BASE_URLS } from '../config/constants.js';
15
+ import DeveloperApi from '../api/developer.api.service.js';
16
+ import { BaseNonVersionedHandler } from './base.handler.js';
17
+ /**
18
+ * MCP Server primitive handler
19
+ */
20
+ export class MCPServerHandler extends BaseNonVersionedHandler {
21
+ constructor() {
22
+ super(...arguments);
23
+ this.kind = PrimitiveKind.MCP_SERVER;
24
+ this.displayName = 'MCP server';
25
+ this.displayNamePlural = 'MCP servers';
26
+ this.deleteCommand = 'lua mcp delete';
27
+ this.yamlConfig = {
28
+ yamlKey: 'mcpServers',
29
+ idField: 'mcpServerId',
30
+ };
31
+ }
32
+ getApi(apiKey, agentId) {
33
+ return new DeveloperApi(BASE_URLS.API, apiKey, agentId);
34
+ }
35
+ async fetchFromServer(api) {
36
+ const response = await api.getMCPServers();
37
+ if (!response.success || !response.data) {
38
+ return null;
39
+ }
40
+ return response.data;
41
+ }
42
+ cleanItem(server) {
43
+ return {
44
+ name: server.name || '',
45
+ mcpServerId: server.mcpServerId || '',
46
+ };
47
+ }
48
+ /**
49
+ * Load bundled MCP server data from the compilation output.
50
+ */
51
+ loadBundledServers(projectPath = process.cwd()) {
52
+ const jsonPath = path.join(projectPath, 'dist', 'mcp-servers.json');
53
+ if (!fs.existsSync(jsonPath))
54
+ return [];
55
+ return JSON.parse(fs.readFileSync(jsonPath, 'utf8'));
56
+ }
57
+ /**
58
+ * Upsert an MCP server on the server (create or update by name).
59
+ */
60
+ async upsertOnServer(apiKey, agentId, serverData) {
61
+ const api = this.getApi(apiKey, agentId);
62
+ const response = await api.upsertMCPServer(serverData);
63
+ return {
64
+ success: response.success,
65
+ id: response.data?.id,
66
+ active: response.data?.active,
67
+ error: response.error?.message,
68
+ };
69
+ }
70
+ /**
71
+ * Activate an MCP server on the server.
72
+ */
73
+ async activate(apiKey, agentId, serverId) {
74
+ const api = this.getApi(apiKey, agentId);
75
+ const response = await api.activateMCPServer(serverId);
76
+ return { success: response.success, error: response.error?.message };
77
+ }
78
+ /**
79
+ * MCP servers use 'active' field directly on the entity.
80
+ * Excludes integration-sourced servers (e.g., UnifiedTo) from orphan detection.
81
+ */
82
+ isActive(serverItem) {
83
+ if (serverItem.source && serverItem.source !== 'manual') {
84
+ return false;
85
+ }
86
+ return serverItem.active !== false;
87
+ }
88
+ }
89
+ // Export singleton instance
90
+ export const mcpServerHandler = new MCPServerHandler();
91
+ //# sourceMappingURL=mcp-server.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-server.handler.js","sourceRoot":"","sources":["../../src/primitives/mcp-server.handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,49 @@
1
+ /**
2
+ * PostProcessor Handler
3
+ *
4
+ * Handles CLI operations for postprocessor primitives.
5
+ *
6
+ * PostProcessors:
7
+ * - Use 'activeVersionId' for active detection (no top-level 'active' field)
8
+ * - Use 'isActive' field on versions
9
+ */
10
+ import { PrimitiveKind, ManifestPrimitive } from '../compiler/types.js';
11
+ import PostProcessorApi from '../api/postprocessor.api.service.js';
12
+ import { BaseVersionedHandler } from './base.handler.js';
13
+ import type { YamlPrimitiveConfig } from './types.js';
14
+ import type { YamlConfigPostprocessor } from '../types/yaml.types.js';
15
+ /**
16
+ * PostProcessor primitive handler
17
+ */
18
+ type PostProcessorPushData = Parameters<PostProcessorApi['pushPostProcessor']>[1];
19
+ export declare class PostprocessorHandler extends BaseVersionedHandler<YamlConfigPostprocessor, PostProcessorPushData> {
20
+ readonly kind = PrimitiveKind.POSTPROCESSOR;
21
+ readonly displayName = "postprocessor";
22
+ readonly displayNamePlural = "postprocessors";
23
+ readonly deleteCommand = "lua postprocessors delete";
24
+ readonly yamlConfig: YamlPrimitiveConfig;
25
+ protected getApi(apiKey: string, agentId: string): PostProcessorApi;
26
+ protected fetchFromServer(api: PostProcessorApi): Promise<any[] | null>;
27
+ protected createOnServer(api: PostProcessorApi, primitive: ManifestPrimitive): Promise<string | null>;
28
+ cleanItem(postprocessor: YamlConfigPostprocessor): YamlConfigPostprocessor;
29
+ pushToServer(apiKey: string, agentId: string, entityId: string, pushData: PostProcessorPushData): Promise<{
30
+ success: boolean;
31
+ error: string | undefined;
32
+ }>;
33
+ publishVersion(apiKey: string, agentId: string, entityId: string, version: string): Promise<{
34
+ success: boolean;
35
+ error: string | undefined;
36
+ }>;
37
+ /**
38
+ * PostProcessors don't have a top-level 'active' field.
39
+ * They use 'activeVersionId' to determine if active.
40
+ * We consider them active unless explicitly deactivated.
41
+ */
42
+ isActive(_serverItem: any): boolean;
43
+ /**
44
+ * PostProcessors use 'isActive' field on versions.
45
+ */
46
+ getActiveVersion(serverItem: any): string | null;
47
+ }
48
+ export declare const postprocessorHandler: PostprocessorHandler;
49
+ export {};
@@ -0,0 +1,81 @@
1
+ /**
2
+ * PostProcessor Handler
3
+ *
4
+ * Handles CLI operations for postprocessor primitives.
5
+ *
6
+ * PostProcessors:
7
+ * - Use 'activeVersionId' for active detection (no top-level 'active' field)
8
+ * - Use 'isActive' field on versions
9
+ */
10
+ import { PrimitiveKind } from '../compiler/types.js';
11
+ import { BASE_URLS } from '../config/constants.js';
12
+ import PostProcessorApi from '../api/postprocessor.api.service.js';
13
+ import { BaseVersionedHandler, DEFAULT_VERSION } from './base.handler.js';
14
+ export class PostprocessorHandler extends BaseVersionedHandler {
15
+ constructor() {
16
+ super(...arguments);
17
+ this.kind = PrimitiveKind.POSTPROCESSOR;
18
+ this.displayName = 'postprocessor';
19
+ this.displayNamePlural = 'postprocessors';
20
+ this.deleteCommand = 'lua postprocessors delete';
21
+ this.yamlConfig = {
22
+ yamlKey: 'postprocessors',
23
+ idField: 'postprocessorId',
24
+ };
25
+ }
26
+ getApi(apiKey, agentId) {
27
+ return new PostProcessorApi(BASE_URLS.API, apiKey, agentId);
28
+ }
29
+ async fetchFromServer(api) {
30
+ const response = await api.getPostProcessors();
31
+ if (!response.success || !response.data?.postprocessors) {
32
+ return null;
33
+ }
34
+ return response.data.postprocessors;
35
+ }
36
+ async createOnServer(api, primitive) {
37
+ const response = await api.createPostProcessor({
38
+ name: primitive.name,
39
+ description: primitive.description || `A Lua postprocessor for ${primitive.name}`,
40
+ });
41
+ if (!response.success || !response.data?.id)
42
+ return null;
43
+ return response.data.id;
44
+ }
45
+ cleanItem(postprocessor) {
46
+ return {
47
+ name: postprocessor.name || '',
48
+ version: postprocessor.version || DEFAULT_VERSION,
49
+ postprocessorId: postprocessor.postprocessorId || '',
50
+ };
51
+ }
52
+ async pushToServer(apiKey, agentId, entityId, pushData) {
53
+ const api = this.getApi(apiKey, agentId);
54
+ const response = await api.pushPostProcessor(entityId, { ...pushData, postprocessorId: entityId });
55
+ return { success: response.success, error: response.error?.message };
56
+ }
57
+ async publishVersion(apiKey, agentId, entityId, version) {
58
+ const api = this.getApi(apiKey, agentId);
59
+ const response = await api.publishPostProcessorVersion(entityId, version);
60
+ return { success: response.success, error: response.error?.message };
61
+ }
62
+ /**
63
+ * PostProcessors don't have a top-level 'active' field.
64
+ * They use 'activeVersionId' to determine if active.
65
+ * We consider them active unless explicitly deactivated.
66
+ */
67
+ isActive(_serverItem) {
68
+ // PostProcessors are considered active unless explicitly marked otherwise
69
+ return true;
70
+ }
71
+ /**
72
+ * PostProcessors use 'isActive' field on versions.
73
+ */
74
+ getActiveVersion(serverItem) {
75
+ const activeVersion = serverItem.versions?.find((v) => v.isActive === true);
76
+ return activeVersion?.version ?? null;
77
+ }
78
+ }
79
+ // Export singleton instance
80
+ export const postprocessorHandler = new PostprocessorHandler();
81
+ //# sourceMappingURL=postprocessor.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postprocessor.handler.js","sourceRoot":"","sources":["../../src/primitives/postprocessor.handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,54 @@
1
+ /**
2
+ * PreProcessor Handler
3
+ *
4
+ * Handles CLI operations for preprocessor primitives.
5
+ *
6
+ * PreProcessors:
7
+ * - Use 'activeVersionId' for active detection (no top-level 'active' field)
8
+ * - Use 'isActive' field on versions
9
+ */
10
+ import { PrimitiveKind, ManifestPrimitive } from '../compiler/types.js';
11
+ import PreProcessorApi from '../api/preprocessor.api.service.js';
12
+ import { BaseVersionedHandler } from './base.handler.js';
13
+ import type { YamlPrimitiveConfig } from './types.js';
14
+ import type { YamlConfigPreprocessor } from '../types/yaml.types.js';
15
+ /**
16
+ * PreProcessor primitive handler
17
+ */
18
+ type PreProcessorPushData = Parameters<PreProcessorApi['pushPreProcessor']>[1];
19
+ export declare class PreprocessorHandler extends BaseVersionedHandler<YamlConfigPreprocessor, PreProcessorPushData> {
20
+ readonly kind = PrimitiveKind.PREPROCESSOR;
21
+ readonly displayName = "preprocessor";
22
+ readonly displayNamePlural = "preprocessors";
23
+ readonly deleteCommand = "lua preprocessors delete";
24
+ readonly yamlConfig: YamlPrimitiveConfig;
25
+ protected getApi(apiKey: string, agentId: string): PreProcessorApi;
26
+ protected fetchFromServer(api: PreProcessorApi): Promise<any[] | null>;
27
+ protected createOnServer(api: PreProcessorApi, primitive: ManifestPrimitive): Promise<string | null>;
28
+ cleanItem(preprocessor: YamlConfigPreprocessor): YamlConfigPreprocessor;
29
+ /**
30
+ * PreProcessors don't have a top-level 'active' field.
31
+ * They use 'activeVersionId' to determine if active.
32
+ * We consider them active unless explicitly deactivated.
33
+ */
34
+ isActive(_serverItem: any): boolean;
35
+ /**
36
+ * PreProcessors use 'isActive' field on versions.
37
+ */
38
+ getActiveVersion(serverItem: any): string | null;
39
+ pushToServer(apiKey: string, agentId: string, entityId: string, pushData: PreProcessorPushData): Promise<{
40
+ success: boolean;
41
+ error: string | undefined;
42
+ }>;
43
+ publishVersion(apiKey: string, agentId: string, entityId: string, version: string): Promise<{
44
+ success: boolean;
45
+ error: string | undefined;
46
+ }>;
47
+ /**
48
+ * Override to include async flag in push data.
49
+ * Reads the actual async value extracted during compilation.
50
+ */
51
+ protected buildPushData(primitive: ManifestPrimitive, compressedCode: string): Record<string, unknown>;
52
+ }
53
+ export declare const preprocessorHandler: PreprocessorHandler;
54
+ export {};
@@ -0,0 +1,95 @@
1
+ /**
2
+ * PreProcessor Handler
3
+ *
4
+ * Handles CLI operations for preprocessor primitives.
5
+ *
6
+ * PreProcessors:
7
+ * - Use 'activeVersionId' for active detection (no top-level 'active' field)
8
+ * - Use 'isActive' field on versions
9
+ */
10
+ import { PrimitiveKind } from '../compiler/types.js';
11
+ import { BASE_URLS } from '../config/constants.js';
12
+ import PreProcessorApi from '../api/preprocessor.api.service.js';
13
+ import { BaseVersionedHandler, DEFAULT_VERSION } from './base.handler.js';
14
+ export class PreprocessorHandler extends BaseVersionedHandler {
15
+ constructor() {
16
+ super(...arguments);
17
+ this.kind = PrimitiveKind.PREPROCESSOR;
18
+ this.displayName = 'preprocessor';
19
+ this.displayNamePlural = 'preprocessors';
20
+ this.deleteCommand = 'lua preprocessors delete';
21
+ this.yamlConfig = {
22
+ yamlKey: 'preprocessors',
23
+ idField: 'preprocessorId',
24
+ };
25
+ }
26
+ getApi(apiKey, agentId) {
27
+ return new PreProcessorApi(BASE_URLS.API, apiKey, agentId);
28
+ }
29
+ async fetchFromServer(api) {
30
+ const response = await api.getPreProcessors();
31
+ if (!response.success || !response.data?.preprocessors) {
32
+ return null;
33
+ }
34
+ return response.data.preprocessors;
35
+ }
36
+ async createOnServer(api, primitive) {
37
+ const response = await api.createPreProcessor({
38
+ name: primitive.name,
39
+ description: primitive.description || `A Lua preprocessor for ${primitive.name}`,
40
+ });
41
+ if (!response.success || !response.data?.id)
42
+ return null;
43
+ return response.data.id;
44
+ }
45
+ cleanItem(preprocessor) {
46
+ return {
47
+ name: preprocessor.name || '',
48
+ version: preprocessor.version || DEFAULT_VERSION,
49
+ preprocessorId: preprocessor.preprocessorId || '',
50
+ };
51
+ }
52
+ /**
53
+ * PreProcessors don't have a top-level 'active' field.
54
+ * They use 'activeVersionId' to determine if active.
55
+ * We consider them active unless explicitly deactivated.
56
+ */
57
+ isActive(_serverItem) {
58
+ // PreProcessors are considered active unless explicitly marked otherwise
59
+ return true;
60
+ }
61
+ /**
62
+ * PreProcessors use 'isActive' field on versions.
63
+ */
64
+ getActiveVersion(serverItem) {
65
+ const activeVersion = serverItem.versions?.find((v) => v.isActive === true);
66
+ return activeVersion?.version ?? null;
67
+ }
68
+ async pushToServer(apiKey, agentId, entityId, pushData) {
69
+ const api = this.getApi(apiKey, agentId);
70
+ const response = await api.pushPreProcessor(entityId, { ...pushData, preprocessorId: entityId });
71
+ return { success: response.success, error: response.error?.message };
72
+ }
73
+ async publishVersion(apiKey, agentId, entityId, version) {
74
+ const api = this.getApi(apiKey, agentId);
75
+ const response = await api.publishPreProcessorVersion(entityId, version);
76
+ return { success: response.success, error: response.error?.message };
77
+ }
78
+ /**
79
+ * Override to include async flag in push data.
80
+ * Reads the actual async value extracted during compilation.
81
+ */
82
+ buildPushData(primitive, compressedCode) {
83
+ const preProcessor = primitive;
84
+ return {
85
+ name: primitive.name,
86
+ description: primitive.description,
87
+ code: compressedCode,
88
+ executeFunction: compressedCode,
89
+ async: Boolean(preProcessor.isAsync ?? false),
90
+ };
91
+ }
92
+ }
93
+ // Export singleton instance
94
+ export const preprocessorHandler = new PreprocessorHandler();
95
+ //# sourceMappingURL=preprocessor.handler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"preprocessor.handler.js","sourceRoot":"","sources":["../../src/primitives/preprocessor.handler.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Skill Handler
3
+ *
4
+ * Skills have special behavior:
5
+ * - Custom syncYamlWithManifest (logs success message)
6
+ * - Orphan detection only considers CLI-sourced skills
7
+ * - Uses 'active' field on versions (not 'isActive')
8
+ * - Custom prepareForPush with tools array
9
+ */
10
+ import { PrimitiveKind, CompilationManifest, ManifestPrimitive } from '../compiler/types.js';
11
+ import { YamlConfig, YamlConfigSkill } from '../types/yaml.types.js';
12
+ import SkillApi from '../api/skills.api.service.js';
13
+ import type { PushSkillVersionRequest } from '../interfaces/skills.js';
14
+ import { BaseVersionedHandler } from './base.handler.js';
15
+ import type { YamlPrimitiveConfig } from './types.js';
16
+ export declare class SkillHandler extends BaseVersionedHandler<YamlConfigSkill, PushSkillVersionRequest> {
17
+ readonly kind = PrimitiveKind.SKILL;
18
+ readonly displayName = "skill";
19
+ readonly displayNamePlural = "skills";
20
+ readonly deleteCommand = "lua skills delete";
21
+ readonly yamlConfig: YamlPrimitiveConfig;
22
+ protected getApi(apiKey: string, agentId: string): SkillApi;
23
+ protected fetchFromServer(api: SkillApi): Promise<any[] | null>;
24
+ protected createOnServer(api: SkillApi, primitive: ManifestPrimitive): Promise<string | null>;
25
+ cleanItem(skill: YamlConfigSkill): YamlConfigSkill;
26
+ isActive(serverItem: any): boolean;
27
+ getActiveVersion(serverItem: any): string | null;
28
+ protected shouldConsiderForOrphan(serverItem: any): boolean;
29
+ getFromYaml(config: YamlConfig | null): YamlConfigSkill[];
30
+ updateVersionInYaml(name: string, newVersion: string, options?: {
31
+ silent?: boolean;
32
+ }): void;
33
+ syncYamlWithManifest(manifest: CompilationManifest, config: YamlConfig | null): void;
34
+ pushToServer(apiKey: string, agentId: string, entityId: string, pushData: PushSkillVersionRequest): Promise<{
35
+ success: boolean;
36
+ error: string | undefined;
37
+ }>;
38
+ publishVersion(apiKey: string, agentId: string, entityId: string, version: string): Promise<{
39
+ success: boolean;
40
+ error: string | undefined;
41
+ }>;
42
+ prepareForPush(manifest: CompilationManifest, name: string, projectPath?: string): Record<string, unknown> | null;
43
+ }
44
+ export declare const skillHandler: SkillHandler;