lua-cli 3.5.0-alpha.3 → 3.5.0-alpha.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (464) 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/{common → api}/http.client.js +5 -1
  29. package/dist/api/http.client.js.map +1 -0
  30. package/dist/api/job.api.service.d.ts +2 -2
  31. package/dist/api/job.api.service.js +2 -2
  32. package/dist/api/job.api.service.js.map +1 -1
  33. package/dist/api/logs.api.service.d.ts +1 -1
  34. package/dist/api/logs.api.service.js +1 -1
  35. package/dist/api/logs.api.service.js.map +1 -1
  36. package/dist/api/marketplace.api.service.d.ts +6 -6
  37. package/dist/api/marketplace.api.service.js.map +1 -1
  38. package/dist/api/order.api.service.d.ts +3 -4
  39. package/dist/api/order.api.service.js +8 -10
  40. package/dist/api/order.api.service.js.map +1 -1
  41. package/dist/api/persona.api.service.d.ts +1 -1
  42. package/dist/api/persona.api.service.js +1 -1
  43. package/dist/api/persona.api.service.js.map +1 -1
  44. package/dist/api/postprocessor.api.service.d.ts +1 -1
  45. package/dist/api/postprocessor.api.service.js +1 -1
  46. package/dist/api/postprocessor.api.service.js.map +1 -1
  47. package/dist/api/preprocessor.api.service.d.ts +1 -1
  48. package/dist/api/preprocessor.api.service.js +1 -1
  49. package/dist/api/preprocessor.api.service.js.map +1 -1
  50. package/dist/api/products.api.service.d.ts +4 -4
  51. package/dist/api/products.api.service.js +6 -6
  52. package/dist/api/products.api.service.js.map +1 -1
  53. package/dist/api/resource.api.service.d.ts +76 -0
  54. package/dist/api/resource.api.service.js +74 -0
  55. package/dist/api/resource.api.service.js.map +1 -0
  56. package/dist/api/skills.api.service.d.ts +7 -15
  57. package/dist/api/skills.api.service.js +1 -1
  58. package/dist/api/skills.api.service.js.map +1 -1
  59. package/dist/api/tool.api.service.d.ts +1 -1
  60. package/dist/api/tool.api.service.js +1 -1
  61. package/dist/api/tool.api.service.js.map +1 -1
  62. package/dist/api/unifiedto.api.service.d.ts +1 -1
  63. package/dist/api/unifiedto.api.service.js +1 -1
  64. package/dist/api/unifiedto.api.service.js.map +1 -1
  65. package/dist/api/user.data.api.service.d.ts +7 -8
  66. package/dist/api/user.data.api.service.js +2 -3
  67. package/dist/api/user.data.api.service.js.map +1 -1
  68. package/dist/api/webhook.api.service.d.ts +1 -1
  69. package/dist/api/webhook.api.service.js +1 -1
  70. package/dist/api/webhook.api.service.js.map +1 -1
  71. package/dist/api/whatsapp-templates.api.service.d.ts +1 -1
  72. package/dist/api/whatsapp-templates.api.service.js +1 -1
  73. package/dist/api/whatsapp-templates.api.service.js.map +1 -1
  74. package/dist/api-exports.d.ts +14 -12
  75. package/dist/api-exports.js +8 -8
  76. package/dist/api-exports.js.map +1 -1
  77. package/dist/cli/command-definitions.js +32 -17
  78. package/dist/cli/command-definitions.js.map +1 -1
  79. package/dist/commands/admin.js +3 -24
  80. package/dist/commands/admin.js.map +1 -1
  81. package/dist/commands/agents.d.ts +8 -7
  82. package/dist/commands/agents.js +63 -21
  83. package/dist/commands/agents.js.map +1 -1
  84. package/dist/commands/channels.js +11 -23
  85. package/dist/commands/channels.js.map +1 -1
  86. package/dist/commands/chat.js +33 -47
  87. package/dist/commands/chat.js.map +1 -1
  88. package/dist/commands/chatClear.js +11 -41
  89. package/dist/commands/chatClear.js.map +1 -1
  90. package/dist/commands/compile.d.ts +25 -23
  91. package/dist/commands/compile.js +101 -402
  92. package/dist/commands/compile.js.map +1 -1
  93. package/dist/commands/completion.js +1 -1
  94. package/dist/commands/completion.js.map +1 -1
  95. package/dist/commands/deploy.js +55 -25
  96. package/dist/commands/deploy.js.map +1 -1
  97. package/dist/commands/dev.js +29 -45
  98. package/dist/commands/dev.js.map +1 -1
  99. package/dist/commands/env.js +12 -25
  100. package/dist/commands/env.js.map +1 -1
  101. package/dist/commands/evals.js +3 -20
  102. package/dist/commands/evals.js.map +1 -1
  103. package/dist/commands/features.js +10 -23
  104. package/dist/commands/features.js.map +1 -1
  105. package/dist/commands/index.d.ts +1 -0
  106. package/dist/commands/index.js +1 -0
  107. package/dist/commands/index.js.map +1 -1
  108. package/dist/commands/init.d.ts +1 -0
  109. package/dist/commands/init.js +135 -19
  110. package/dist/commands/init.js.map +1 -1
  111. package/dist/commands/integrations.js +26 -37
  112. package/dist/commands/integrations.js.map +1 -1
  113. package/dist/commands/jobs.js +32 -56
  114. package/dist/commands/jobs.js.map +1 -1
  115. package/dist/commands/logs.js +9 -20
  116. package/dist/commands/logs.js.map +1 -1
  117. package/dist/commands/marketplace.js +34 -52
  118. package/dist/commands/marketplace.js.map +1 -1
  119. package/dist/commands/mcp.js +10 -23
  120. package/dist/commands/mcp.js.map +1 -1
  121. package/dist/commands/persona.js +43 -74
  122. package/dist/commands/persona.js.map +1 -1
  123. package/dist/commands/postprocessors.js +15 -28
  124. package/dist/commands/postprocessors.js.map +1 -1
  125. package/dist/commands/preprocessors.js +15 -28
  126. package/dist/commands/preprocessors.js.map +1 -1
  127. package/dist/commands/production.js +30 -63
  128. package/dist/commands/production.js.map +1 -1
  129. package/dist/commands/push.js +313 -1241
  130. package/dist/commands/push.js.map +1 -1
  131. package/dist/commands/pushBackup.d.ts +22 -0
  132. package/dist/commands/pushBackup.js +133 -0
  133. package/dist/commands/pushBackup.js.map +1 -0
  134. package/dist/commands/resources.js +29 -72
  135. package/dist/commands/resources.js.map +1 -1
  136. package/dist/commands/skills.d.ts +1 -1
  137. package/dist/commands/skills.js +58 -70
  138. package/dist/commands/skills.js.map +1 -1
  139. package/dist/commands/sync.d.ts +1 -3
  140. package/dist/commands/sync.js +20 -28
  141. package/dist/commands/sync.js.map +1 -1
  142. package/dist/commands/test.js +135 -104
  143. package/dist/commands/test.js.map +1 -1
  144. package/dist/commands/webhooks.js +15 -28
  145. package/dist/commands/webhooks.js.map +1 -1
  146. package/dist/compiler/agent-traverser.d.ts +104 -0
  147. package/dist/compiler/agent-traverser.js +311 -0
  148. package/dist/compiler/agent-traverser.js.map +1 -0
  149. package/dist/compiler/bundler.d.ts +42 -0
  150. package/dist/compiler/bundler.js +188 -0
  151. package/dist/compiler/bundler.js.map +1 -0
  152. package/dist/compiler/compiler.d.ts +177 -0
  153. package/dist/compiler/compiler.js +581 -0
  154. package/dist/compiler/compiler.js.map +1 -0
  155. package/dist/compiler/index.d.ts +36 -0
  156. package/dist/compiler/index.js +42 -0
  157. package/dist/compiler/index.js.map +1 -0
  158. package/dist/compiler/plugins/base.d.ts +284 -0
  159. package/dist/compiler/plugins/base.js +343 -0
  160. package/dist/compiler/plugins/base.js.map +1 -0
  161. package/dist/compiler/plugins/job.plugin.d.ts +33 -0
  162. package/dist/compiler/plugins/job.plugin.js +96 -0
  163. package/dist/compiler/plugins/job.plugin.js.map +1 -0
  164. package/dist/compiler/plugins/mcp-server.plugin.d.ts +50 -0
  165. package/dist/compiler/plugins/mcp-server.plugin.js +157 -0
  166. package/dist/compiler/plugins/mcp-server.plugin.js.map +1 -0
  167. package/dist/compiler/plugins/postprocessor.plugin.d.ts +20 -0
  168. package/dist/compiler/plugins/postprocessor.plugin.js +30 -0
  169. package/dist/compiler/plugins/postprocessor.plugin.js.map +1 -0
  170. package/dist/compiler/plugins/preprocessor.plugin.d.ts +20 -0
  171. package/dist/compiler/plugins/preprocessor.plugin.js +35 -0
  172. package/dist/compiler/plugins/preprocessor.plugin.js.map +1 -0
  173. package/dist/compiler/plugins/processor-base.d.ts +16 -0
  174. package/dist/compiler/plugins/processor-base.js +27 -0
  175. package/dist/compiler/plugins/processor-base.js.map +1 -0
  176. package/dist/compiler/plugins/registry.d.ts +61 -0
  177. package/dist/compiler/plugins/registry.js +107 -0
  178. package/dist/compiler/plugins/registry.js.map +1 -0
  179. package/dist/compiler/plugins/skill.plugin.d.ts +71 -0
  180. package/dist/compiler/plugins/skill.plugin.js +225 -0
  181. package/dist/compiler/plugins/skill.plugin.js.map +1 -0
  182. package/dist/compiler/plugins/tool.plugin.d.ts +68 -0
  183. package/dist/compiler/plugins/tool.plugin.js +258 -0
  184. package/dist/compiler/plugins/tool.plugin.js.map +1 -0
  185. package/dist/compiler/plugins/webhook.plugin.d.ts +37 -0
  186. package/dist/compiler/plugins/webhook.plugin.js +112 -0
  187. package/dist/compiler/plugins/webhook.plugin.js.map +1 -0
  188. package/dist/compiler/source-writer.d.ts +98 -0
  189. package/dist/compiler/source-writer.js +223 -0
  190. package/dist/compiler/source-writer.js.map +1 -0
  191. package/dist/compiler/types.d.ts +294 -0
  192. package/dist/compiler/types.js +27 -0
  193. package/dist/compiler/types.js.map +1 -0
  194. package/dist/compiler/utils/ast-helpers.d.ts +69 -0
  195. package/dist/compiler/utils/ast-helpers.js +184 -0
  196. package/dist/compiler/utils/ast-helpers.js.map +1 -0
  197. package/dist/compiler/utils/common.d.ts +23 -0
  198. package/dist/compiler/utils/common.js +66 -0
  199. package/dist/compiler/utils/common.js.map +1 -0
  200. package/dist/compiler/utils/file-discovery.d.ts +34 -0
  201. package/dist/compiler/utils/file-discovery.js +68 -0
  202. package/dist/compiler/utils/file-discovery.js.map +1 -0
  203. package/dist/compiler/utils/path-resolver.d.ts +25 -0
  204. package/dist/compiler/utils/path-resolver.js +66 -0
  205. package/dist/compiler/utils/path-resolver.js.map +1 -0
  206. package/dist/compiler/utils/schema-converter.d.ts +26 -0
  207. package/dist/compiler/utils/schema-converter.js +94 -0
  208. package/dist/compiler/utils/schema-converter.js.map +1 -0
  209. package/dist/config/compile.constants.d.ts +2 -22
  210. package/dist/config/compile.constants.js +2 -49
  211. package/dist/config/compile.constants.js.map +1 -1
  212. package/dist/config/constants.d.ts +18 -2
  213. package/dist/config/constants.js +28 -8
  214. package/dist/config/constants.js.map +1 -1
  215. package/dist/config/dev.constants.d.ts +0 -10
  216. package/dist/config/dev.constants.js +0 -10
  217. package/dist/config/dev.constants.js.map +1 -1
  218. package/dist/index.js +7 -0
  219. package/dist/index.js.map +1 -1
  220. package/dist/instances/basket.instance.js.map +1 -0
  221. package/dist/instances/data.entry.instance.js.map +1 -0
  222. package/dist/instances/job.instance.js.map +1 -0
  223. package/dist/instances/order.instance.js.map +1 -0
  224. package/dist/instances/product.instance.js.map +1 -0
  225. package/dist/instances/product.pagination.instance.js.map +1 -0
  226. package/dist/instances/product.search.instance.js.map +1 -0
  227. package/dist/instances/user.instance.js.map +1 -0
  228. package/dist/interfaces/admin.d.ts +0 -38
  229. package/dist/interfaces/backup.d.ts +125 -0
  230. package/dist/interfaces/backup.js +8 -0
  231. package/dist/interfaces/backup.js.map +1 -0
  232. package/dist/interfaces/baskets.d.ts +0 -56
  233. package/dist/interfaces/common.d.ts +1 -0
  234. package/dist/interfaces/deploy.d.ts +0 -15
  235. package/dist/interfaces/index.d.ts +1 -1
  236. package/dist/interfaces/marketplace.d.ts +51 -0
  237. package/dist/interfaces/marketplace.js +1 -1
  238. package/dist/interfaces/marketplace.js.map +1 -1
  239. package/dist/interfaces/message.d.ts +0 -3
  240. package/dist/interfaces/orders.d.ts +0 -24
  241. package/dist/interfaces/postprocessors.d.ts +0 -18
  242. package/dist/interfaces/preprocessors.d.ts +0 -18
  243. package/dist/interfaces/skills.d.ts +61 -0
  244. package/dist/interfaces/user.d.ts +25 -0
  245. package/dist/interfaces/webhooks.d.ts +0 -9
  246. package/dist/primitives/base.handler.d.ts +145 -0
  247. package/dist/primitives/base.handler.js +474 -0
  248. package/dist/primitives/base.handler.js.map +1 -0
  249. package/dist/primitives/index.d.ts +46 -0
  250. package/dist/primitives/index.js +68 -0
  251. package/dist/primitives/index.js.map +1 -0
  252. package/dist/primitives/job.handler.d.ts +47 -0
  253. package/dist/primitives/job.handler.js +104 -0
  254. package/dist/primitives/job.handler.js.map +1 -0
  255. package/dist/primitives/mcp-server.handler.d.ts +54 -0
  256. package/dist/primitives/mcp-server.handler.js +100 -0
  257. package/dist/primitives/mcp-server.handler.js.map +1 -0
  258. package/dist/primitives/postprocessor.handler.d.ts +38 -0
  259. package/dist/primitives/postprocessor.handler.js +58 -0
  260. package/dist/primitives/postprocessor.handler.js.map +1 -0
  261. package/dist/primitives/preprocessor.handler.d.ts +43 -0
  262. package/dist/primitives/preprocessor.handler.js +72 -0
  263. package/dist/primitives/preprocessor.handler.js.map +1 -0
  264. package/dist/primitives/skill.handler.d.ts +46 -0
  265. package/dist/primitives/skill.handler.js +173 -0
  266. package/dist/primitives/skill.handler.js.map +1 -0
  267. package/dist/primitives/types.d.ts +90 -0
  268. package/dist/primitives/types.js +17 -0
  269. package/dist/primitives/types.js.map +1 -0
  270. package/dist/primitives/webhook.handler.d.ts +45 -0
  271. package/dist/primitives/webhook.handler.js +82 -0
  272. package/dist/primitives/webhook.handler.js.map +1 -0
  273. package/dist/services/auth.js +1 -2
  274. package/dist/services/auth.js.map +1 -1
  275. package/dist/services/sandbox.service.d.ts +103 -0
  276. package/dist/services/sandbox.service.js +479 -0
  277. package/dist/services/sandbox.service.js.map +1 -0
  278. package/dist/types/api-contracts.d.ts +1 -1
  279. package/dist/types/index.d.ts +2 -1
  280. package/dist/types/index.js.map +1 -1
  281. package/dist/types/skill.d.ts +8 -2
  282. package/dist/types/skill.js +8 -0
  283. package/dist/types/skill.js.map +1 -1
  284. package/dist/types/yaml.types.d.ts +69 -0
  285. package/dist/types/yaml.types.js +6 -0
  286. package/dist/types/yaml.types.js.map +1 -0
  287. package/dist/utils/artifact-loader.d.ts +108 -0
  288. package/dist/utils/artifact-loader.js +188 -0
  289. package/dist/utils/artifact-loader.js.map +1 -0
  290. package/dist/utils/backup-helpers.d.ts +122 -0
  291. package/dist/utils/backup-helpers.js +274 -0
  292. package/dist/utils/backup-helpers.js.map +1 -0
  293. package/dist/utils/cli.d.ts +8 -0
  294. package/dist/utils/cli.js +20 -3
  295. package/dist/utils/cli.js.map +1 -1
  296. package/dist/utils/command-utils.d.ts +44 -0
  297. package/dist/utils/command-utils.js +85 -0
  298. package/dist/utils/command-utils.js.map +1 -0
  299. package/dist/utils/deploy-helpers.d.ts +0 -29
  300. package/dist/utils/deploy-helpers.js +0 -70
  301. package/dist/utils/deploy-helpers.js.map +1 -1
  302. package/dist/utils/dev-api.d.ts +3 -99
  303. package/dist/utils/dev-api.js +3 -430
  304. package/dist/utils/dev-api.js.map +1 -1
  305. package/dist/utils/dev-server.d.ts +3 -1
  306. package/dist/utils/dev-server.js +69 -145
  307. package/dist/utils/dev-server.js.map +1 -1
  308. package/dist/utils/dev-watcher.d.ts +0 -1
  309. package/dist/utils/dev-watcher.js +23 -8
  310. package/dist/utils/dev-watcher.js.map +1 -1
  311. package/dist/utils/env-loader.utils.d.ts +10 -1
  312. package/dist/utils/env-loader.utils.js +39 -31
  313. package/dist/utils/env-loader.utils.js.map +1 -1
  314. package/dist/utils/files.d.ts +57 -3
  315. package/dist/utils/files.js +132 -40
  316. package/dist/utils/files.js.map +1 -1
  317. package/dist/utils/init-agent.js +1 -2
  318. package/dist/utils/init-agent.js.map +1 -1
  319. package/dist/utils/init-helpers.d.ts +2 -10
  320. package/dist/utils/init-helpers.js +9 -17
  321. package/dist/utils/init-helpers.js.map +1 -1
  322. package/dist/utils/init-prompts.d.ts +0 -8
  323. package/dist/utils/init-prompts.js +0 -22
  324. package/dist/utils/init-prompts.js.map +1 -1
  325. package/dist/utils/prompt-handler.d.ts +3 -0
  326. package/dist/utils/prompt-handler.js +13 -0
  327. package/dist/utils/prompt-handler.js.map +1 -1
  328. package/dist/utils/sandbox-storage.d.ts +6 -5
  329. package/dist/utils/sandbox-storage.js +12 -12
  330. package/dist/utils/sandbox-storage.js.map +1 -1
  331. package/dist/utils/sandbox.d.ts +7 -30
  332. package/dist/utils/sandbox.js +247 -223
  333. package/dist/utils/sandbox.js.map +1 -1
  334. package/dist/utils/semver.d.ts +12 -0
  335. package/dist/utils/semver.js +23 -0
  336. package/dist/utils/semver.js.map +1 -1
  337. package/dist/utils/sync-display.d.ts +9 -0
  338. package/dist/utils/sync-display.js +67 -0
  339. package/dist/utils/sync-display.js.map +1 -0
  340. package/dist/utils/sync-fetch.d.ts +23 -0
  341. package/dist/utils/sync-fetch.js +64 -0
  342. package/dist/utils/sync-fetch.js.map +1 -0
  343. package/dist/utils/sync-helpers.d.ts +4 -59
  344. package/dist/utils/sync-helpers.js +4 -206
  345. package/dist/utils/sync-helpers.js.map +1 -1
  346. package/docs/API_INDEX.md +100 -0
  347. package/docs/API_REFERENCE.md +773 -0
  348. package/docs/CLI_REFERENCE.md +924 -0
  349. package/docs/GETTING_STARTED.md +862 -0
  350. package/docs/README.md +270 -0
  351. package/docs/api/AI.md +882 -0
  352. package/docs/api/Baskets.md +511 -0
  353. package/docs/api/CDN.md +524 -0
  354. package/docs/api/Data.md +446 -0
  355. package/docs/api/Jobs.md +524 -0
  356. package/docs/api/LuaAgent.md +454 -0
  357. package/docs/api/LuaJob.md +604 -0
  358. package/docs/api/LuaSkill.md +396 -0
  359. package/docs/api/LuaTool.md +521 -0
  360. package/docs/api/LuaWebhook.md +601 -0
  361. package/docs/api/Orders.md +514 -0
  362. package/docs/api/PostProcessor.md +565 -0
  363. package/docs/api/PreProcessor.md +630 -0
  364. package/docs/api/Products.md +507 -0
  365. package/docs/api/Templates.md +662 -0
  366. package/docs/api/User.md +567 -0
  367. package/docs/archive/DEVELOPMENT_GUIDE_V1.md +1294 -0
  368. package/docs/compiler-v2/ASSESSMENT.md +205 -0
  369. package/docs/compiler-v2/TEST_PLAN.md +306 -0
  370. package/package.json +3 -7
  371. package/template/package.json +1 -1
  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 → instances}/basket.instance.d.ts +0 -0
  450. /package/dist/{common → instances}/basket.instance.js +0 -0
  451. /package/dist/{common → instances}/data.entry.instance.d.ts +0 -0
  452. /package/dist/{common → instances}/data.entry.instance.js +0 -0
  453. /package/dist/{common → instances}/job.instance.d.ts +0 -0
  454. /package/dist/{common → instances}/job.instance.js +0 -0
  455. /package/dist/{common → instances}/order.instance.d.ts +0 -0
  456. /package/dist/{common → instances}/order.instance.js +0 -0
  457. /package/dist/{common → instances}/product.instance.d.ts +0 -0
  458. /package/dist/{common → instances}/product.instance.js +0 -0
  459. /package/dist/{common → instances}/product.pagination.instance.d.ts +0 -0
  460. /package/dist/{common → instances}/product.pagination.instance.js +0 -0
  461. /package/dist/{common → instances}/product.search.instance.d.ts +0 -0
  462. /package/dist/{common → instances}/product.search.instance.js +0 -0
  463. /package/dist/{common → instances}/user.instance.d.ts +0 -0
  464. /package/dist/{common → instances}/user.instance.js +0 -0
@@ -25,3 +25,15 @@ export declare function parseVersion(version: string): {
25
25
  * - 0 if version1 === version2
26
26
  */
27
27
  export declare function compareVersions(version1: string, version2: string): number;
28
+ /**
29
+ * Increments the patch version automatically (e.g., 1.0.0 → 1.0.1).
30
+ * Preserves pre-release tag if present.
31
+ *
32
+ * @param version - Current version string (or undefined/null for first version)
33
+ * @returns Incremented version string
34
+ */
35
+ export declare function incrementPatchVersion(version: string | undefined | null): string;
36
+ /**
37
+ * Returns the higher of two semantic version strings.
38
+ */
39
+ export declare function maxSemver(a: string, b: string): string;
@@ -73,4 +73,27 @@ export function compareVersions(version1, version2) {
73
73
  }
74
74
  return v1.preRelease.localeCompare(v2.preRelease);
75
75
  }
76
+ /**
77
+ * Increments the patch version automatically (e.g., 1.0.0 → 1.0.1).
78
+ * Preserves pre-release tag if present.
79
+ *
80
+ * @param version - Current version string (or undefined/null for first version)
81
+ * @returns Incremented version string
82
+ */
83
+ export function incrementPatchVersion(version) {
84
+ // Handle undefined/null version - return default starting version
85
+ if (!version) {
86
+ return '0.0.1';
87
+ }
88
+ const parsed = parseVersion(version);
89
+ const newPatch = parsed.patch + 1;
90
+ const preRelease = parsed.preRelease ? `-${parsed.preRelease}` : '';
91
+ return `${parsed.major}.${parsed.minor}.${newPatch}${preRelease}`;
92
+ }
93
+ /**
94
+ * Returns the higher of two semantic version strings.
95
+ */
96
+ export function maxSemver(a, b) {
97
+ return compareVersions(a, b) >= 0 ? a : b;
98
+ }
76
99
  //# sourceMappingURL=semver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"semver.js","sourceRoot":"","sources":["../../src/utils/semver.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"semver.js","sourceRoot":"","sources":["../../src/utils/semver.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Sync Display — Presentation layer for drift detection.
3
+ * Displays colored diffs, warnings, and comparison output.
4
+ */
5
+ import type { PersonaDrift } from './sync-fetch.js';
6
+ export declare function showColoredDiff(oldText: string, newText: string, oldLabel?: string, newLabel?: string): void;
7
+ export declare function showPersonaDiff(serverPersona: string | null, localPersona: string): void;
8
+ export declare function showDriftWarning(drift: PersonaDrift): void;
9
+ export declare function showNameDiff(serverName: string | null, localName: string): void;
@@ -0,0 +1,67 @@
1
+ /**
2
+ * Sync Display — Presentation layer for drift detection.
3
+ * Displays colored diffs, warnings, and comparison output.
4
+ */
5
+ import { diffLines } from 'diff';
6
+ const colors = {
7
+ red: '\x1b[31m',
8
+ green: '\x1b[32m',
9
+ gray: '\x1b[90m',
10
+ reset: '\x1b[0m',
11
+ bold: '\x1b[1m',
12
+ };
13
+ export function showColoredDiff(oldText, newText, oldLabel = 'Server', newLabel = 'Local') {
14
+ if (!oldText && !newText) {
15
+ console.log(colors.gray + '(both empty)' + colors.reset);
16
+ return;
17
+ }
18
+ if (!oldText) {
19
+ console.log(colors.green + `+ (${newLabel} only - no ${oldLabel} content)` + colors.reset);
20
+ return;
21
+ }
22
+ if (!newText) {
23
+ console.log(colors.red + `- (${oldLabel} only - no ${newLabel} content)` + colors.reset);
24
+ return;
25
+ }
26
+ const diff = diffLines(oldText, newText);
27
+ diff.forEach(part => {
28
+ if (part.added) {
29
+ part.value.split('\n').filter(l => l).forEach(line => console.log(colors.green + '+ ' + line + colors.reset));
30
+ }
31
+ else if (part.removed) {
32
+ part.value.split('\n').filter(l => l).forEach(line => console.log(colors.red + '- ' + line + colors.reset));
33
+ }
34
+ else {
35
+ const lines = part.value.split('\n').filter(l => l);
36
+ if (lines.length <= 6) {
37
+ lines.forEach(line => console.log(colors.gray + ' ' + line + colors.reset));
38
+ }
39
+ else {
40
+ lines.slice(0, 3).forEach(line => console.log(colors.gray + ' ' + line + colors.reset));
41
+ console.log(colors.gray + ` ... (${lines.length - 6} unchanged lines) ...` + colors.reset);
42
+ lines.slice(-3).forEach(line => console.log(colors.gray + ' ' + line + colors.reset));
43
+ }
44
+ }
45
+ });
46
+ }
47
+ export function showPersonaDiff(serverPersona, localPersona) {
48
+ console.log('\n' + '='.repeat(60));
49
+ console.log(colors.bold + 'PERSONA DIFF' + colors.reset);
50
+ console.log(colors.red + '- Server (deployed)' + colors.reset + ' ' + colors.green + '+ Local (code)' + colors.reset);
51
+ console.log('='.repeat(60) + '\n');
52
+ showColoredDiff(serverPersona || '', localPersona, 'Server', 'Local');
53
+ console.log('\n' + '='.repeat(60) + '\n');
54
+ }
55
+ export function showDriftWarning(drift) {
56
+ console.log('\n⚠️ Persona drift detected!');
57
+ console.log(` Server version ${drift.serverVersion || 'unknown'} differs from local code.`);
58
+ }
59
+ export function showNameDiff(serverName, localName) {
60
+ console.log('\n' + '='.repeat(60));
61
+ console.log(colors.bold + 'NAME DIFF' + colors.reset);
62
+ console.log('='.repeat(60));
63
+ console.log(colors.red + `- Server: "${serverName || '(none)'}"` + colors.reset);
64
+ console.log(colors.green + `+ Local: "${localName || '(none)'}"` + colors.reset);
65
+ console.log('='.repeat(60) + '\n');
66
+ }
67
+ //# sourceMappingURL=sync-display.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-display.js","sourceRoot":"","sources":["../../src/utils/sync-display.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Sync Fetch — Data fetching layer for drift detection.
3
+ * Fetches server state (persona, name) and compares with local code.
4
+ */
5
+ export interface PersonaDrift {
6
+ hasDrift: boolean;
7
+ serverPersona: string | null;
8
+ localPersona: string;
9
+ serverVersion?: number;
10
+ }
11
+ export interface NameDrift {
12
+ hasDrift: boolean;
13
+ serverName: string | null;
14
+ localName: string;
15
+ }
16
+ export declare function comparePersona(serverPersona: string | null, localPersona: string): boolean;
17
+ export declare function fetchServerPersona(apiKey: string, agentId: string): Promise<{
18
+ persona: string;
19
+ version: number;
20
+ } | null>;
21
+ export declare function checkPersonaDrift(apiKey: string, agentId: string): Promise<PersonaDrift | null>;
22
+ export declare function fetchServerName(apiKey: string, agentId: string): Promise<string | null>;
23
+ export declare function checkNameDrift(apiKey: string, agentId: string): Promise<NameDrift | null>;
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Sync Fetch — Data fetching layer for drift detection.
3
+ * Fetches server state (persona, name) and compares with local code.
4
+ */
5
+ import { BASE_URLS } from '../config/constants.js';
6
+ import { getAgentName, getAgentPersona } from './artifact-loader.js';
7
+ import PersonaApi from '../api/persona.api.service.js';
8
+ import AgentApi from '../api/agent.api.service.js';
9
+ function normalizeForComparison(str) {
10
+ return str
11
+ .trim()
12
+ .replace(/\\'/g, "'")
13
+ .replace(/\\"/g, '"')
14
+ .replace(/\\\\/g, '\\')
15
+ .replace(/\r\n/g, '\n')
16
+ .replace(/\r/g, '\n');
17
+ }
18
+ export function comparePersona(serverPersona, localPersona) {
19
+ if (serverPersona === null)
20
+ return false;
21
+ return normalizeForComparison(serverPersona) !== normalizeForComparison(localPersona);
22
+ }
23
+ export async function fetchServerPersona(apiKey, agentId) {
24
+ try {
25
+ const personaApi = new PersonaApi(BASE_URLS.API, apiKey, agentId);
26
+ const latestPublished = await personaApi.getLatestPublishedVersion();
27
+ if (latestPublished?.persona) {
28
+ return { persona: latestPublished.persona, version: latestPublished.version };
29
+ }
30
+ return null;
31
+ }
32
+ catch {
33
+ return null;
34
+ }
35
+ }
36
+ export async function checkPersonaDrift(apiKey, agentId) {
37
+ const localPersona = getAgentPersona() ?? '';
38
+ const serverData = await fetchServerPersona(apiKey, agentId);
39
+ const hasDrift = comparePersona(serverData?.persona || null, localPersona);
40
+ if (!hasDrift)
41
+ return null;
42
+ return { hasDrift: true, serverPersona: serverData?.persona || null, localPersona, serverVersion: serverData?.version };
43
+ }
44
+ export async function fetchServerName(apiKey, agentId) {
45
+ try {
46
+ const agentApi = new AgentApi(BASE_URLS.API, apiKey);
47
+ const response = await agentApi.getAgent(agentId);
48
+ return response.success && response.data?.name ? response.data.name : null;
49
+ }
50
+ catch {
51
+ return null;
52
+ }
53
+ }
54
+ export async function checkNameDrift(apiKey, agentId) {
55
+ const localName = getAgentName() ?? '';
56
+ const serverName = await fetchServerName(apiKey, agentId);
57
+ if (serverName === null)
58
+ return null;
59
+ const hasDrift = normalizeForComparison(serverName) !== normalizeForComparison(localName);
60
+ if (!hasDrift)
61
+ return null;
62
+ return { hasDrift: true, serverName, localName };
63
+ }
64
+ //# sourceMappingURL=sync-fetch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync-fetch.js","sourceRoot":"","sources":["../../src/utils/sync-fetch.ts"],"names":[],"mappings":"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"}
@@ -1,61 +1,6 @@
1
1
  /**
2
- * Sync Helpers
3
- * Utilities for detecting drift between server state and local code
2
+ * Sync Helpers — barrel re-export for backward compatibility.
3
+ * Data fetching lives in sync-fetch.ts, display logic in sync-display.ts.
4
4
  */
5
- export interface PersonaDrift {
6
- hasDrift: boolean;
7
- serverPersona: string | null;
8
- localPersona: string;
9
- serverVersion?: number;
10
- }
11
- export interface NameDrift {
12
- hasDrift: boolean;
13
- serverName: string | null;
14
- localName: string;
15
- }
16
- /**
17
- * Fetch the latest published persona version from the server.
18
- * Returns null if no persona is published or on error.
19
- *
20
- * Note: This returns the most recently published version, NOT the current/active one.
21
- * The current version might be an older rollback, but code should match the latest push.
22
- * Drafts are excluded since they haven't been deployed yet.
23
- */
24
- export declare function fetchServerPersona(apiKey: string, agentId: string): Promise<{
25
- persona: string;
26
- version: number;
27
- } | null>;
28
- /**
29
- * Compare server persona with local persona.
30
- * Returns true if they differ (drift detected).
31
- */
32
- export declare function comparePersona(serverPersona: string | null, localPersona: string): boolean;
33
- /**
34
- * Check for persona drift between server and local code.
35
- * Returns drift info if drift detected, null otherwise.
36
- */
37
- export declare function checkPersonaDrift(apiKey: string, agentId: string): Promise<PersonaDrift | null>;
38
- /**
39
- * Display a colored diff between two strings.
40
- */
41
- export declare function showColoredDiff(oldText: string, newText: string, oldLabel?: string, newLabel?: string): void;
42
- /**
43
- * Display a diff between server and local persona.
44
- */
45
- export declare function showPersonaDiff(serverPersona: string | null, localPersona: string): void;
46
- /**
47
- * Display a compact drift warning for compile flow.
48
- */
49
- export declare function showDriftWarning(drift: PersonaDrift): void;
50
- /**
51
- * Fetch the agent name from the server.
52
- */
53
- export declare function fetchServerName(apiKey: string, agentId: string): Promise<string | null>;
54
- /**
55
- * Check for name drift between server and local code.
56
- */
57
- export declare function checkNameDrift(apiKey: string, agentId: string): Promise<NameDrift | null>;
58
- /**
59
- * Display name drift info.
60
- */
61
- export declare function showNameDiff(serverName: string | null, localName: string): void;
5
+ export { fetchServerPersona, fetchServerName, checkPersonaDrift, checkNameDrift, comparePersona, type PersonaDrift, type NameDrift, } from './sync-fetch.js';
6
+ export { showColoredDiff, showPersonaDiff, showNameDiff, showDriftWarning, } from './sync-display.js';
@@ -1,209 +1,7 @@
1
1
  /**
2
- * Sync Helpers
3
- * Utilities for detecting drift between server state and local code
2
+ * Sync Helpers — barrel re-export for backward compatibility.
3
+ * Data fetching lives in sync-fetch.ts, display logic in sync-display.ts.
4
4
  */
5
- import { diffLines } from 'diff';
6
- import { BASE_URLS } from '../config/constants.js';
7
- import { loadPersonaFromCode, loadNameFromCode } from './agent-code-utils.js';
8
- import PersonaApi from '../api/persona.api.service.js';
9
- import AgentApi from '../api/agent.api.service.js';
10
- // ANSI color codes
11
- const colors = {
12
- red: '\x1b[31m',
13
- green: '\x1b[32m',
14
- gray: '\x1b[90m',
15
- reset: '\x1b[0m',
16
- bold: '\x1b[1m',
17
- };
18
- /**
19
- * Fetch the latest published persona version from the server.
20
- * Returns null if no persona is published or on error.
21
- *
22
- * Note: This returns the most recently published version, NOT the current/active one.
23
- * The current version might be an older rollback, but code should match the latest push.
24
- * Drafts are excluded since they haven't been deployed yet.
25
- */
26
- export async function fetchServerPersona(apiKey, agentId) {
27
- try {
28
- const personaApi = new PersonaApi(BASE_URLS.API, apiKey, agentId);
29
- const latestPublished = await personaApi.getLatestPublishedVersion();
30
- if (latestPublished && latestPublished.persona) {
31
- return {
32
- persona: latestPublished.persona,
33
- version: latestPublished.version,
34
- };
35
- }
36
- return null;
37
- }
38
- catch (error) {
39
- // Silently fail - network issues shouldn't block compilation
40
- return null;
41
- }
42
- }
43
- /**
44
- * Normalize a string for comparison by handling escape sequences.
45
- * This ensures that semantically identical strings compare as equal
46
- * even if they have different escape representations.
47
- */
48
- function normalizeForComparison(str) {
49
- return str
50
- .trim()
51
- // Normalize escaped quotes to unescaped
52
- .replace(/\\'/g, "'")
53
- .replace(/\\"/g, '"')
54
- // Normalize escaped backslashes
55
- .replace(/\\\\/g, '\\')
56
- // Normalize line endings
57
- .replace(/\r\n/g, '\n')
58
- .replace(/\r/g, '\n');
59
- }
60
- /**
61
- * Compare server persona with local persona.
62
- * Returns true if they differ (drift detected).
63
- */
64
- export function comparePersona(serverPersona, localPersona) {
65
- if (serverPersona === null) {
66
- return false; // No server state to compare against
67
- }
68
- // Normalize both strings for comparison (handles escape sequence differences)
69
- const normalizedServer = normalizeForComparison(serverPersona);
70
- const normalizedLocal = normalizeForComparison(localPersona);
71
- return normalizedServer !== normalizedLocal;
72
- }
73
- /**
74
- * Check for persona drift between server and local code.
75
- * Returns drift info if drift detected, null otherwise.
76
- */
77
- export async function checkPersonaDrift(apiKey, agentId) {
78
- const localPersona = loadPersonaFromCode();
79
- const serverData = await fetchServerPersona(apiKey, agentId);
80
- const hasDrift = comparePersona(serverData?.persona || null, localPersona);
81
- if (!hasDrift) {
82
- return null;
83
- }
84
- return {
85
- hasDrift: true,
86
- serverPersona: serverData?.persona || null,
87
- localPersona,
88
- serverVersion: serverData?.version,
89
- };
90
- }
91
- /**
92
- * Display a colored diff between two strings.
93
- */
94
- export function showColoredDiff(oldText, newText, oldLabel = 'Server', newLabel = 'Local') {
95
- if (!oldText && !newText) {
96
- console.log(colors.gray + '(both empty)' + colors.reset);
97
- return;
98
- }
99
- if (!oldText) {
100
- console.log(colors.green + `+ (${newLabel} only - no ${oldLabel} content)` + colors.reset);
101
- return;
102
- }
103
- if (!newText) {
104
- console.log(colors.red + `- (${oldLabel} only - no ${newLabel} content)` + colors.reset);
105
- return;
106
- }
107
- const diff = diffLines(oldText, newText);
108
- diff.forEach(part => {
109
- if (part.added) {
110
- // Added in local (green)
111
- const lines = part.value.split('\n').filter(l => l);
112
- lines.forEach(line => {
113
- console.log(colors.green + '+ ' + line + colors.reset);
114
- });
115
- }
116
- else if (part.removed) {
117
- // Removed from server (red)
118
- const lines = part.value.split('\n').filter(l => l);
119
- lines.forEach(line => {
120
- console.log(colors.red + '- ' + line + colors.reset);
121
- });
122
- }
123
- else {
124
- // Unchanged - show abbreviated context
125
- const lines = part.value.split('\n').filter(l => l);
126
- if (lines.length <= 6) {
127
- lines.forEach(line => {
128
- console.log(colors.gray + ' ' + line + colors.reset);
129
- });
130
- }
131
- else {
132
- // Show first 3 and last 3 lines
133
- lines.slice(0, 3).forEach(line => {
134
- console.log(colors.gray + ' ' + line + colors.reset);
135
- });
136
- console.log(colors.gray + ` ... (${lines.length - 6} unchanged lines) ...` + colors.reset);
137
- lines.slice(-3).forEach(line => {
138
- console.log(colors.gray + ' ' + line + colors.reset);
139
- });
140
- }
141
- }
142
- });
143
- }
144
- /**
145
- * Display a diff between server and local persona.
146
- */
147
- export function showPersonaDiff(serverPersona, localPersona) {
148
- console.log('\n' + '='.repeat(60));
149
- console.log(colors.bold + 'PERSONA DIFF' + colors.reset);
150
- console.log(colors.red + '- Server (deployed)' + colors.reset + ' ' + colors.green + '+ Local (code)' + colors.reset);
151
- console.log('='.repeat(60) + '\n');
152
- showColoredDiff(serverPersona || '', localPersona, 'Server', 'Local');
153
- console.log('\n' + '='.repeat(60) + '\n');
154
- }
155
- /**
156
- * Display a compact drift warning for compile flow.
157
- */
158
- export function showDriftWarning(drift) {
159
- console.log('\n⚠️ Persona drift detected!');
160
- console.log(` Server version ${drift.serverVersion || 'unknown'} differs from local code.`);
161
- }
162
- /**
163
- * Fetch the agent name from the server.
164
- */
165
- export async function fetchServerName(apiKey, agentId) {
166
- try {
167
- const agentApi = new AgentApi(BASE_URLS.API, apiKey);
168
- const response = await agentApi.getAgent(agentId);
169
- if (response.success && response.data?.name) {
170
- return response.data.name;
171
- }
172
- return null;
173
- }
174
- catch (error) {
175
- return null;
176
- }
177
- }
178
- /**
179
- * Check for name drift between server and local code.
180
- */
181
- export async function checkNameDrift(apiKey, agentId) {
182
- const localName = loadNameFromCode();
183
- const serverName = await fetchServerName(apiKey, agentId);
184
- if (serverName === null) {
185
- return null; // No server state to compare against
186
- }
187
- // Use same normalization as persona comparison
188
- const hasDrift = normalizeForComparison(serverName) !== normalizeForComparison(localName);
189
- if (!hasDrift) {
190
- return null;
191
- }
192
- return {
193
- hasDrift: true,
194
- serverName,
195
- localName,
196
- };
197
- }
198
- /**
199
- * Display name drift info.
200
- */
201
- export function showNameDiff(serverName, localName) {
202
- console.log('\n' + '='.repeat(60));
203
- console.log(colors.bold + 'NAME DIFF' + colors.reset);
204
- console.log('='.repeat(60));
205
- console.log(colors.red + `- Server: "${serverName || '(none)'}"` + colors.reset);
206
- console.log(colors.green + `+ Local: "${localName || '(none)'}"` + colors.reset);
207
- console.log('='.repeat(60) + '\n');
208
- }
5
+ export { fetchServerPersona, fetchServerName, checkPersonaDrift, checkNameDrift, comparePersona, } from './sync-fetch.js';
6
+ export { showColoredDiff, showPersonaDiff, showNameDiff, showDriftWarning, } from './sync-display.js';
209
7
  //# sourceMappingURL=sync-helpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sync-helpers.js","sourceRoot":"","sources":["../../src/utils/sync-helpers.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync-helpers.js","sourceRoot":"","sources":["../../src/utils/sync-helpers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,iBAAiB,EACjB,cAAc,EACd,cAAc,GAGf,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EACL,eAAe,EACf,eAAe,EACf,YAAY,EACZ,gBAAgB,GACjB,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,100 @@
1
+ # Complete API Index
2
+
3
+ Quick reference for all lua-cli APIs and exports.
4
+
5
+ ## Core Classes
6
+
7
+ | Class | Purpose | Import |
8
+ |-------|---------|--------|
9
+ | [LuaAgent](./api/LuaAgent.md) | Unified agent configuration | `import { LuaAgent } from 'lua-cli'` |
10
+ | [LuaSkill](./api/LuaSkill.md) | Tool collection | `import { LuaSkill } from 'lua-cli'` |
11
+ | [LuaTool](./api/LuaTool.md) | Individual tool interface | `import { LuaTool } from 'lua-cli/skill'` |
12
+ | [LuaWebhook](./api/LuaWebhook.md) | HTTP webhook handler | `import { LuaWebhook } from 'lua-cli'` |
13
+ | [LuaJob](./api/LuaJob.md) | Scheduled task | `import { LuaJob } from 'lua-cli'` |
14
+ | [PreProcessor](./api/PreProcessor.md) | Message preprocessor | `import { PreProcessor } from 'lua-cli'` |
15
+ | [PostProcessor](./api/PostProcessor.md) | Response postprocessor | `import { PostProcessor } from 'lua-cli'` |
16
+ | LuaMCPServer | MCP server integration | `import { LuaMCPServer } from 'lua-cli'` |
17
+
18
+ ## Runtime APIs
19
+
20
+ | API | Purpose | Methods |
21
+ |-----|---------|---------|
22
+ | [AI](./api/AI.md) | AI text generation | `generate()` |
23
+ | [User](./api/User.md) | User data management | `get()`, `getChatHistory()` |
24
+ | [Products](./api/Products.md) | Product catalog | `get()`, `search()`, `getById()`, `create()`, `update()`, `delete()` |
25
+ | [Baskets](./api/Baskets.md) | Shopping carts | `get()`, `create()`, `getById()`, `addItem()`, `clear()`, `placeOrder()` |
26
+ | [Orders](./api/Orders.md) | Order management | `get()`, `getById()`, `create()`, `updateStatus()`, `updateData()` |
27
+ | [Data](./api/Data.md) | Custom data storage | `get()`, `getEntry()`, `search()`, `create()`, `update()`, `delete()` |
28
+ | [Jobs](./api/Jobs.md) | Dynamic job creation | `create()`, `getJob()`, `getAll()` |
29
+ | [Templates](./api/Templates.md) | WhatsApp templates | `Templates.whatsapp.list()`, `.get()`, `.send()` |
30
+ | [CDN](./api/CDN.md) | File upload/download | `upload()`, `get()` |
31
+ | Lua | Runtime context | `Lua.request.channel`, `Lua.request.webhook` |
32
+
33
+ ## Instance Classes
34
+
35
+ | Instance | Description | Key Methods |
36
+ |----------|-------------|-------------|
37
+ | UserDataInstance | User data with proxy access | `update()`, `send()`, `clear()`, `save()`, `getChatHistory()` |
38
+ | ProductInstance | Product with CRUD methods | `update()`, `delete()`, `save()` |
39
+ | BasketInstance | Shopping cart with operations | `addItem()`, `removeItem()`, `clear()`, `placeOrder()` |
40
+ | OrderInstance | Order with status management | `updateStatus()`, `updateData()`, `save()` |
41
+ | DataEntryInstance | Custom data entry | `update()`, `delete()`, `save()` |
42
+ | JobInstance | Job with metadata access | `user()`, `updateMetadata()`, `delete()` |
43
+
44
+ ## Enums
45
+
46
+ | Enum | Values | Usage |
47
+ |------|--------|-------|
48
+ | BasketStatus | `ACTIVE`, `CHECKED_OUT`, `ABANDONED`, `EXPIRED` | Basket state management |
49
+ | OrderStatus | `PENDING`, `CONFIRMED`, `FULFILLED`, `CANCELLED` | Order state tracking |
50
+
51
+ ## Utilities
52
+
53
+ | Function | Purpose | Example |
54
+ |----------|---------|---------|
55
+ | [env()](./api/env.md) | Access environment variables | `env('API_KEY')` |
56
+
57
+ ## Type Definitions
58
+
59
+ | Type | Description | File |
60
+ |------|-------------|------|
61
+ | ChatMessage | Message format for user communication | See [User API](./api/User.md) |
62
+ | JobSchedule | Job scheduling configuration | See [Jobs API](./api/Jobs.md) |
63
+ | Product | Product data structure | See [Products API](./api/Products.md) |
64
+ | Basket | Basket data structure | See [Baskets API](./api/Baskets.md) |
65
+ | Order | Order data structure | See [Orders API](./api/Orders.md) |
66
+
67
+ ## Quick Links by Use Case
68
+
69
+ ### Building an Agent
70
+ 1. [LuaAgent](./api/LuaAgent.md) - Configure your agent
71
+ 2. [LuaSkill](./api/LuaSkill.md) - Organize tools
72
+ 3. [LuaTool](./api/LuaTool.md) - Create tools
73
+
74
+ ### E-commerce
75
+ 1. [Products API](./api/Products.md) - Manage catalog
76
+ 2. [Baskets API](./api/Baskets.md) - Shopping carts
77
+ 3. [Orders API](./api/Orders.md) - Process orders
78
+ 4. [CDN API](./api/CDN.md) - Product images/files
79
+
80
+ ### Automation
81
+ 1. [LuaJob](./api/LuaJob.md) - Scheduled tasks (cron, intervals)
82
+ 2. [Jobs API](./api/Jobs.md) - Dynamic job creation from tools
83
+ 3. [LuaWebhook](./api/LuaWebhook.md) - External HTTP triggers
84
+ 4. [PreProcessor](./api/PreProcessor.md) - Filter incoming messages
85
+ 5. [PostProcessor](./api/PostProcessor.md) - Format responses
86
+
87
+ ### Data Management
88
+ 1. [User API](./api/User.md) - User data
89
+ 2. [Data API](./api/Data.md) - Custom collections
90
+ 3. [CDN API](./api/CDN.md) - File storage
91
+ 4. env() - Environment config
92
+
93
+ ### Communication
94
+ 1. [User API](./api/User.md) - Send messages to users
95
+ 2. [Templates API](./api/Templates.md) - WhatsApp template messages
96
+ 3. [AI API](./api/AI.md) - Generate AI responses
97
+
98
+ ---
99
+
100
+ **See [README](./README.md) for complete documentation navigation**