@robota-sdk/agent-core 3.0.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 (508) hide show
  1. package/CHANGELOG.md +180 -0
  2. package/LICENSE +21 -0
  3. package/README.md +230 -0
  4. package/dist/abstracts/abstract-agent.d.ts +56 -0
  5. package/dist/abstracts/abstract-agent.d.ts.map +1 -0
  6. package/dist/abstracts/abstract-agent.js +55 -0
  7. package/dist/abstracts/abstract-agent.js.map +1 -0
  8. package/dist/abstracts/abstract-ai-provider.d.ts +187 -0
  9. package/dist/abstracts/abstract-ai-provider.d.ts.map +1 -0
  10. package/dist/abstracts/abstract-ai-provider.js +252 -0
  11. package/dist/abstracts/abstract-ai-provider.js.map +1 -0
  12. package/dist/abstracts/abstract-executor.d.ts +110 -0
  13. package/dist/abstracts/abstract-executor.d.ts.map +1 -0
  14. package/dist/abstracts/abstract-executor.js +156 -0
  15. package/dist/abstracts/abstract-executor.js.map +1 -0
  16. package/dist/abstracts/abstract-manager.d.ts +42 -0
  17. package/dist/abstracts/abstract-manager.d.ts.map +1 -0
  18. package/dist/abstracts/abstract-manager.js +49 -0
  19. package/dist/abstracts/abstract-manager.js.map +1 -0
  20. package/dist/abstracts/abstract-module.d.ts +365 -0
  21. package/dist/abstracts/abstract-module.d.ts.map +1 -0
  22. package/dist/abstracts/abstract-module.js +474 -0
  23. package/dist/abstracts/abstract-module.js.map +1 -0
  24. package/dist/abstracts/abstract-plugin.d.ts +369 -0
  25. package/dist/abstracts/abstract-plugin.d.ts.map +1 -0
  26. package/dist/abstracts/abstract-plugin.js +258 -0
  27. package/dist/abstracts/abstract-plugin.js.map +1 -0
  28. package/dist/abstracts/abstract-tool.d.ts +175 -0
  29. package/dist/abstracts/abstract-tool.d.ts.map +1 -0
  30. package/dist/abstracts/abstract-tool.js +140 -0
  31. package/dist/abstracts/abstract-tool.js.map +1 -0
  32. package/dist/abstracts/abstract-workflow-converter.d.ts +136 -0
  33. package/dist/abstracts/abstract-workflow-converter.d.ts.map +1 -0
  34. package/dist/abstracts/abstract-workflow-converter.js +252 -0
  35. package/dist/abstracts/abstract-workflow-converter.js.map +1 -0
  36. package/dist/abstracts/abstract-workflow-validator.d.ts +203 -0
  37. package/dist/abstracts/abstract-workflow-validator.d.ts.map +1 -0
  38. package/dist/abstracts/abstract-workflow-validator.js +447 -0
  39. package/dist/abstracts/abstract-workflow-validator.js.map +1 -0
  40. package/dist/abstracts/index.d.ts +6 -0
  41. package/dist/abstracts/index.d.ts.map +1 -0
  42. package/dist/abstracts/index.js +9 -0
  43. package/dist/abstracts/index.js.map +1 -0
  44. package/dist/agents/constants.d.ts +23 -0
  45. package/dist/agents/constants.d.ts.map +1 -0
  46. package/dist/agents/constants.js +22 -0
  47. package/dist/agents/constants.js.map +1 -0
  48. package/dist/agents/index.d.ts +1 -0
  49. package/dist/agents/index.d.ts.map +1 -0
  50. package/dist/agents/index.js +4 -0
  51. package/dist/agents/index.js.map +1 -0
  52. package/dist/agents/robota.test.d.ts +2 -0
  53. package/dist/agents/robota.test.d.ts.map +1 -0
  54. package/dist/agents/robota.test.js +416 -0
  55. package/dist/agents/robota.test.js.map +1 -0
  56. package/dist/browser/builtin-templates.json +107 -0
  57. package/dist/browser/index.d.ts +4237 -0
  58. package/dist/browser/index.js +4 -0
  59. package/dist/core/robota.d.ts +694 -0
  60. package/dist/core/robota.d.ts.map +1 -0
  61. package/dist/core/robota.js +1277 -0
  62. package/dist/core/robota.js.map +1 -0
  63. package/dist/executors/local-executor.d.ts +96 -0
  64. package/dist/executors/local-executor.d.ts.map +1 -0
  65. package/dist/executors/local-executor.js +197 -0
  66. package/dist/executors/local-executor.js.map +1 -0
  67. package/dist/executors/local-executor.test.d.ts +2 -0
  68. package/dist/executors/local-executor.test.d.ts.map +1 -0
  69. package/dist/executors/local-executor.test.js +192 -0
  70. package/dist/executors/local-executor.test.js.map +1 -0
  71. package/dist/index.d.ts +274 -0
  72. package/dist/index.d.ts.map +1 -0
  73. package/dist/index.js +235 -0
  74. package/dist/index.js.map +1 -0
  75. package/dist/interfaces/agent.d.ts +198 -0
  76. package/dist/interfaces/agent.d.ts.map +1 -0
  77. package/dist/interfaces/agent.js +2 -0
  78. package/dist/interfaces/agent.js.map +1 -0
  79. package/dist/interfaces/event-service.d.ts +79 -0
  80. package/dist/interfaces/event-service.d.ts.map +1 -0
  81. package/dist/interfaces/event-service.js +2 -0
  82. package/dist/interfaces/event-service.js.map +1 -0
  83. package/dist/interfaces/executor.d.ts +128 -0
  84. package/dist/interfaces/executor.d.ts.map +1 -0
  85. package/dist/interfaces/executor.js +2 -0
  86. package/dist/interfaces/executor.js.map +1 -0
  87. package/dist/interfaces/history-module.d.ts +19 -0
  88. package/dist/interfaces/history-module.d.ts.map +1 -0
  89. package/dist/interfaces/history-module.js +2 -0
  90. package/dist/interfaces/history-module.js.map +1 -0
  91. package/dist/interfaces/index.d.ts +13 -0
  92. package/dist/interfaces/index.d.ts.map +1 -0
  93. package/dist/interfaces/index.js +4 -0
  94. package/dist/interfaces/index.js.map +1 -0
  95. package/dist/interfaces/manager.d.ts +142 -0
  96. package/dist/interfaces/manager.d.ts.map +1 -0
  97. package/dist/interfaces/manager.js +2 -0
  98. package/dist/interfaces/manager.js.map +1 -0
  99. package/dist/interfaces/messages.d.ts +75 -0
  100. package/dist/interfaces/messages.d.ts.map +1 -0
  101. package/dist/interfaces/messages.js +29 -0
  102. package/dist/interfaces/messages.js.map +1 -0
  103. package/dist/interfaces/progress-reporting.d.ts +86 -0
  104. package/dist/interfaces/progress-reporting.d.ts.map +1 -0
  105. package/dist/interfaces/progress-reporting.js +37 -0
  106. package/dist/interfaces/progress-reporting.js.map +1 -0
  107. package/dist/interfaces/provider.d.ts +217 -0
  108. package/dist/interfaces/provider.d.ts.map +1 -0
  109. package/dist/interfaces/provider.js +2 -0
  110. package/dist/interfaces/provider.js.map +1 -0
  111. package/dist/interfaces/service.d.ts +205 -0
  112. package/dist/interfaces/service.d.ts.map +1 -0
  113. package/dist/interfaces/service.js +6 -0
  114. package/dist/interfaces/service.js.map +1 -0
  115. package/dist/interfaces/tool.d.ts +248 -0
  116. package/dist/interfaces/tool.d.ts.map +1 -0
  117. package/dist/interfaces/tool.js +2 -0
  118. package/dist/interfaces/tool.js.map +1 -0
  119. package/dist/interfaces/types.d.ts +71 -0
  120. package/dist/interfaces/types.d.ts.map +1 -0
  121. package/dist/interfaces/types.js +33 -0
  122. package/dist/interfaces/types.js.map +1 -0
  123. package/dist/interfaces/workflow-converter.d.ts +193 -0
  124. package/dist/interfaces/workflow-converter.d.ts.map +1 -0
  125. package/dist/interfaces/workflow-converter.js +11 -0
  126. package/dist/interfaces/workflow-converter.js.map +1 -0
  127. package/dist/interfaces/workflow-validator.d.ts +209 -0
  128. package/dist/interfaces/workflow-validator.d.ts.map +1 -0
  129. package/dist/interfaces/workflow-validator.js +16 -0
  130. package/dist/interfaces/workflow-validator.js.map +1 -0
  131. package/dist/managers/agent-factory.d.ts +132 -0
  132. package/dist/managers/agent-factory.d.ts.map +1 -0
  133. package/dist/managers/agent-factory.js +284 -0
  134. package/dist/managers/agent-factory.js.map +1 -0
  135. package/dist/managers/agent-factory.test.d.ts +2 -0
  136. package/dist/managers/agent-factory.test.d.ts.map +1 -0
  137. package/dist/managers/agent-factory.test.js +249 -0
  138. package/dist/managers/agent-factory.test.js.map +1 -0
  139. package/dist/managers/agent-templates.d.ts +84 -0
  140. package/dist/managers/agent-templates.d.ts.map +1 -0
  141. package/dist/managers/agent-templates.js +159 -0
  142. package/dist/managers/agent-templates.js.map +1 -0
  143. package/dist/managers/ai-provider-manager.d.ts +80 -0
  144. package/dist/managers/ai-provider-manager.d.ts.map +1 -0
  145. package/dist/managers/ai-provider-manager.js +226 -0
  146. package/dist/managers/ai-provider-manager.js.map +1 -0
  147. package/dist/managers/conversation-history-manager.d.ts +455 -0
  148. package/dist/managers/conversation-history-manager.d.ts.map +1 -0
  149. package/dist/managers/conversation-history-manager.js +578 -0
  150. package/dist/managers/conversation-history-manager.js.map +1 -0
  151. package/dist/managers/conversation-history-manager.test.d.ts +2 -0
  152. package/dist/managers/conversation-history-manager.test.d.ts.map +1 -0
  153. package/dist/managers/conversation-history-manager.test.js +374 -0
  154. package/dist/managers/conversation-history-manager.test.js.map +1 -0
  155. package/dist/managers/index.d.ts +8 -0
  156. package/dist/managers/index.d.ts.map +1 -0
  157. package/dist/managers/index.js +8 -0
  158. package/dist/managers/index.js.map +1 -0
  159. package/dist/managers/module-registry.d.ts +161 -0
  160. package/dist/managers/module-registry.d.ts.map +1 -0
  161. package/dist/managers/module-registry.js +519 -0
  162. package/dist/managers/module-registry.js.map +1 -0
  163. package/dist/managers/module-type-registry.d.ts +113 -0
  164. package/dist/managers/module-type-registry.d.ts.map +1 -0
  165. package/dist/managers/module-type-registry.js +439 -0
  166. package/dist/managers/module-type-registry.js.map +1 -0
  167. package/dist/managers/plugins.d.ts +166 -0
  168. package/dist/managers/plugins.d.ts.map +1 -0
  169. package/dist/managers/plugins.js +339 -0
  170. package/dist/managers/plugins.js.map +1 -0
  171. package/dist/managers/tool-manager.d.ts +70 -0
  172. package/dist/managers/tool-manager.d.ts.map +1 -0
  173. package/dist/managers/tool-manager.js +138 -0
  174. package/dist/managers/tool-manager.js.map +1 -0
  175. package/dist/managers/tool-manager.test.d.ts +2 -0
  176. package/dist/managers/tool-manager.test.d.ts.map +1 -0
  177. package/dist/managers/tool-manager.test.js +186 -0
  178. package/dist/managers/tool-manager.test.js.map +1 -0
  179. package/dist/node/builtin-templates.json +107 -0
  180. package/dist/node/index.cjs +4 -0
  181. package/dist/node/index.d.cts +4237 -0
  182. package/dist/node/index.d.ts +4237 -0
  183. package/dist/node/index.js +4 -0
  184. package/dist/plugins/conversation-history/conversation-history-plugin.d.ts +67 -0
  185. package/dist/plugins/conversation-history/conversation-history-plugin.d.ts.map +1 -0
  186. package/dist/plugins/conversation-history/conversation-history-plugin.js +270 -0
  187. package/dist/plugins/conversation-history/conversation-history-plugin.js.map +1 -0
  188. package/dist/plugins/conversation-history/index.d.ts +3 -0
  189. package/dist/plugins/conversation-history/index.d.ts.map +1 -0
  190. package/dist/plugins/conversation-history/index.js +2 -0
  191. package/dist/plugins/conversation-history/index.js.map +1 -0
  192. package/dist/plugins/conversation-history/storages/database-storage.d.ts +19 -0
  193. package/dist/plugins/conversation-history/storages/database-storage.d.ts.map +1 -0
  194. package/dist/plugins/conversation-history/storages/database-storage.js +94 -0
  195. package/dist/plugins/conversation-history/storages/database-storage.js.map +1 -0
  196. package/dist/plugins/conversation-history/storages/file-storage.d.ts +15 -0
  197. package/dist/plugins/conversation-history/storages/file-storage.d.ts.map +1 -0
  198. package/dist/plugins/conversation-history/storages/file-storage.js +94 -0
  199. package/dist/plugins/conversation-history/storages/file-storage.js.map +1 -0
  200. package/dist/plugins/conversation-history/storages/index.d.ts +4 -0
  201. package/dist/plugins/conversation-history/storages/index.d.ts.map +1 -0
  202. package/dist/plugins/conversation-history/storages/index.js +4 -0
  203. package/dist/plugins/conversation-history/storages/index.js.map +1 -0
  204. package/dist/plugins/conversation-history/storages/memory-storage.d.ts +15 -0
  205. package/dist/plugins/conversation-history/storages/memory-storage.d.ts.map +1 -0
  206. package/dist/plugins/conversation-history/storages/memory-storage.js +33 -0
  207. package/dist/plugins/conversation-history/storages/memory-storage.js.map +1 -0
  208. package/dist/plugins/conversation-history/types.d.ts +61 -0
  209. package/dist/plugins/conversation-history/types.d.ts.map +1 -0
  210. package/dist/plugins/conversation-history/types.js +2 -0
  211. package/dist/plugins/conversation-history/types.js.map +1 -0
  212. package/dist/plugins/error-handling/context-adapter.d.ts +30 -0
  213. package/dist/plugins/error-handling/context-adapter.d.ts.map +1 -0
  214. package/dist/plugins/error-handling/context-adapter.js +41 -0
  215. package/dist/plugins/error-handling/context-adapter.js.map +1 -0
  216. package/dist/plugins/error-handling/error-handling-plugin.d.ts +49 -0
  217. package/dist/plugins/error-handling/error-handling-plugin.d.ts.map +1 -0
  218. package/dist/plugins/error-handling/error-handling-plugin.js +229 -0
  219. package/dist/plugins/error-handling/error-handling-plugin.js.map +1 -0
  220. package/dist/plugins/error-handling/index.d.ts +10 -0
  221. package/dist/plugins/error-handling/index.d.ts.map +1 -0
  222. package/dist/plugins/error-handling/index.js +10 -0
  223. package/dist/plugins/error-handling/index.js.map +1 -0
  224. package/dist/plugins/error-handling/types.d.ts +73 -0
  225. package/dist/plugins/error-handling/types.d.ts.map +1 -0
  226. package/dist/plugins/error-handling/types.js +14 -0
  227. package/dist/plugins/error-handling/types.js.map +1 -0
  228. package/dist/plugins/event-emitter/metrics.d.ts +17 -0
  229. package/dist/plugins/event-emitter/metrics.d.ts.map +1 -0
  230. package/dist/plugins/event-emitter/metrics.js +17 -0
  231. package/dist/plugins/event-emitter/metrics.js.map +1 -0
  232. package/dist/plugins/event-emitter/types.d.ts +112 -0
  233. package/dist/plugins/event-emitter/types.d.ts.map +1 -0
  234. package/dist/plugins/event-emitter/types.js +65 -0
  235. package/dist/plugins/event-emitter/types.js.map +1 -0
  236. package/dist/plugins/event-emitter-plugin.d.ts +222 -0
  237. package/dist/plugins/event-emitter-plugin.d.ts.map +1 -0
  238. package/dist/plugins/event-emitter-plugin.js +432 -0
  239. package/dist/plugins/event-emitter-plugin.js.map +1 -0
  240. package/dist/plugins/event-emitter-plugin.test.d.ts +2 -0
  241. package/dist/plugins/event-emitter-plugin.test.d.ts.map +1 -0
  242. package/dist/plugins/event-emitter-plugin.test.js +94 -0
  243. package/dist/plugins/event-emitter-plugin.test.js.map +1 -0
  244. package/dist/plugins/execution/execution-analytics-plugin.d.ts +129 -0
  245. package/dist/plugins/execution/execution-analytics-plugin.d.ts.map +1 -0
  246. package/dist/plugins/execution/execution-analytics-plugin.js +517 -0
  247. package/dist/plugins/execution/execution-analytics-plugin.js.map +1 -0
  248. package/dist/plugins/execution/index.d.ts +3 -0
  249. package/dist/plugins/execution/index.d.ts.map +1 -0
  250. package/dist/plugins/execution/index.js +2 -0
  251. package/dist/plugins/execution/index.js.map +1 -0
  252. package/dist/plugins/execution/types.d.ts +90 -0
  253. package/dist/plugins/execution/types.d.ts.map +1 -0
  254. package/dist/plugins/execution/types.js +2 -0
  255. package/dist/plugins/execution/types.js.map +1 -0
  256. package/dist/plugins/index.d.ts +10 -0
  257. package/dist/plugins/index.d.ts.map +1 -0
  258. package/dist/plugins/index.js +11 -0
  259. package/dist/plugins/index.js.map +1 -0
  260. package/dist/plugins/limits/types.d.ts +61 -0
  261. package/dist/plugins/limits/types.d.ts.map +1 -0
  262. package/dist/plugins/limits/types.js +2 -0
  263. package/dist/plugins/limits/types.js.map +1 -0
  264. package/dist/plugins/limits-plugin.d.ts +113 -0
  265. package/dist/plugins/limits-plugin.d.ts.map +1 -0
  266. package/dist/plugins/limits-plugin.js +380 -0
  267. package/dist/plugins/limits-plugin.js.map +1 -0
  268. package/dist/plugins/logging/formatters.d.ts +14 -0
  269. package/dist/plugins/logging/formatters.d.ts.map +1 -0
  270. package/dist/plugins/logging/formatters.js +24 -0
  271. package/dist/plugins/logging/formatters.js.map +1 -0
  272. package/dist/plugins/logging/index.d.ts +3 -0
  273. package/dist/plugins/logging/index.d.ts.map +1 -0
  274. package/dist/plugins/logging/index.js +2 -0
  275. package/dist/plugins/logging/index.js.map +1 -0
  276. package/dist/plugins/logging/logging-plugin.d.ts +91 -0
  277. package/dist/plugins/logging/logging-plugin.d.ts.map +1 -0
  278. package/dist/plugins/logging/logging-plugin.js +335 -0
  279. package/dist/plugins/logging/logging-plugin.js.map +1 -0
  280. package/dist/plugins/logging/storages/console-storage.d.ts +14 -0
  281. package/dist/plugins/logging/storages/console-storage.d.ts.map +1 -0
  282. package/dist/plugins/logging/storages/console-storage.js +38 -0
  283. package/dist/plugins/logging/storages/console-storage.js.map +1 -0
  284. package/dist/plugins/logging/storages/file-storage.d.ts +14 -0
  285. package/dist/plugins/logging/storages/file-storage.d.ts.map +1 -0
  286. package/dist/plugins/logging/storages/file-storage.js +41 -0
  287. package/dist/plugins/logging/storages/file-storage.js.map +1 -0
  288. package/dist/plugins/logging/storages/index.d.ts +5 -0
  289. package/dist/plugins/logging/storages/index.d.ts.map +1 -0
  290. package/dist/plugins/logging/storages/index.js +5 -0
  291. package/dist/plugins/logging/storages/index.js.map +1 -0
  292. package/dist/plugins/logging/storages/remote-storage.d.ts +20 -0
  293. package/dist/plugins/logging/storages/remote-storage.d.ts.map +1 -0
  294. package/dist/plugins/logging/storages/remote-storage.js +61 -0
  295. package/dist/plugins/logging/storages/remote-storage.js.map +1 -0
  296. package/dist/plugins/logging/storages/silent-storage.d.ts +10 -0
  297. package/dist/plugins/logging/storages/silent-storage.d.ts.map +1 -0
  298. package/dist/plugins/logging/storages/silent-storage.js +15 -0
  299. package/dist/plugins/logging/storages/silent-storage.js.map +1 -0
  300. package/dist/plugins/logging/types.d.ts +84 -0
  301. package/dist/plugins/logging/types.d.ts.map +1 -0
  302. package/dist/plugins/logging/types.js +2 -0
  303. package/dist/plugins/logging/types.js.map +1 -0
  304. package/dist/plugins/performance/collectors/system-metrics-collector.d.ts +12 -0
  305. package/dist/plugins/performance/collectors/system-metrics-collector.d.ts.map +1 -0
  306. package/dist/plugins/performance/collectors/system-metrics-collector.js +65 -0
  307. package/dist/plugins/performance/collectors/system-metrics-collector.js.map +1 -0
  308. package/dist/plugins/performance/index.d.ts +5 -0
  309. package/dist/plugins/performance/index.d.ts.map +1 -0
  310. package/dist/plugins/performance/index.js +4 -0
  311. package/dist/plugins/performance/index.js.map +1 -0
  312. package/dist/plugins/performance/performance-plugin.d.ts +49 -0
  313. package/dist/plugins/performance/performance-plugin.d.ts.map +1 -0
  314. package/dist/plugins/performance/performance-plugin.js +293 -0
  315. package/dist/plugins/performance/performance-plugin.js.map +1 -0
  316. package/dist/plugins/performance/storages/index.d.ts +2 -0
  317. package/dist/plugins/performance/storages/index.d.ts.map +1 -0
  318. package/dist/plugins/performance/storages/index.js +4 -0
  319. package/dist/plugins/performance/storages/index.js.map +1 -0
  320. package/dist/plugins/performance/storages/memory-storage.d.ts +19 -0
  321. package/dist/plugins/performance/storages/memory-storage.d.ts.map +1 -0
  322. package/dist/plugins/performance/storages/memory-storage.js +69 -0
  323. package/dist/plugins/performance/storages/memory-storage.js.map +1 -0
  324. package/dist/plugins/performance/types.d.ts +154 -0
  325. package/dist/plugins/performance/types.d.ts.map +1 -0
  326. package/dist/plugins/performance/types.js +2 -0
  327. package/dist/plugins/performance/types.js.map +1 -0
  328. package/dist/plugins/usage/aggregate-usage-stats.d.ts +12 -0
  329. package/dist/plugins/usage/aggregate-usage-stats.d.ts.map +1 -0
  330. package/dist/plugins/usage/aggregate-usage-stats.js +115 -0
  331. package/dist/plugins/usage/aggregate-usage-stats.js.map +1 -0
  332. package/dist/plugins/usage/index.d.ts +5 -0
  333. package/dist/plugins/usage/index.d.ts.map +1 -0
  334. package/dist/plugins/usage/index.js +4 -0
  335. package/dist/plugins/usage/index.js.map +1 -0
  336. package/dist/plugins/usage/storages/file-storage.d.ts +22 -0
  337. package/dist/plugins/usage/storages/file-storage.d.ts.map +1 -0
  338. package/dist/plugins/usage/storages/file-storage.js +111 -0
  339. package/dist/plugins/usage/storages/file-storage.js.map +1 -0
  340. package/dist/plugins/usage/storages/index.d.ts +5 -0
  341. package/dist/plugins/usage/storages/index.d.ts.map +1 -0
  342. package/dist/plugins/usage/storages/index.js +5 -0
  343. package/dist/plugins/usage/storages/index.js.map +1 -0
  344. package/dist/plugins/usage/storages/memory-storage.d.ts +22 -0
  345. package/dist/plugins/usage/storages/memory-storage.d.ts.map +1 -0
  346. package/dist/plugins/usage/storages/memory-storage.js +42 -0
  347. package/dist/plugins/usage/storages/memory-storage.js.map +1 -0
  348. package/dist/plugins/usage/storages/remote-storage.d.ts +26 -0
  349. package/dist/plugins/usage/storages/remote-storage.d.ts.map +1 -0
  350. package/dist/plugins/usage/storages/remote-storage.js +115 -0
  351. package/dist/plugins/usage/storages/remote-storage.js.map +1 -0
  352. package/dist/plugins/usage/storages/silent-storage.d.ts +19 -0
  353. package/dist/plugins/usage/storages/silent-storage.d.ts.map +1 -0
  354. package/dist/plugins/usage/storages/silent-storage.js +26 -0
  355. package/dist/plugins/usage/storages/silent-storage.js.map +1 -0
  356. package/dist/plugins/usage/types.d.ts +127 -0
  357. package/dist/plugins/usage/types.d.ts.map +1 -0
  358. package/dist/plugins/usage/types.js +2 -0
  359. package/dist/plugins/usage/types.js.map +1 -0
  360. package/dist/plugins/usage/usage-plugin.d.ts +67 -0
  361. package/dist/plugins/usage/usage-plugin.d.ts.map +1 -0
  362. package/dist/plugins/usage/usage-plugin.js +309 -0
  363. package/dist/plugins/usage/usage-plugin.js.map +1 -0
  364. package/dist/plugins/webhook/http-client.d.ts +30 -0
  365. package/dist/plugins/webhook/http-client.d.ts.map +1 -0
  366. package/dist/plugins/webhook/http-client.js +110 -0
  367. package/dist/plugins/webhook/http-client.js.map +1 -0
  368. package/dist/plugins/webhook/index.d.ts +9 -0
  369. package/dist/plugins/webhook/index.d.ts.map +1 -0
  370. package/dist/plugins/webhook/index.js +9 -0
  371. package/dist/plugins/webhook/index.js.map +1 -0
  372. package/dist/plugins/webhook/transformer.d.ts +63 -0
  373. package/dist/plugins/webhook/transformer.d.ts.map +1 -0
  374. package/dist/plugins/webhook/transformer.js +157 -0
  375. package/dist/plugins/webhook/transformer.js.map +1 -0
  376. package/dist/plugins/webhook/types.d.ts +183 -0
  377. package/dist/plugins/webhook/types.d.ts.map +1 -0
  378. package/dist/plugins/webhook/types.js +2 -0
  379. package/dist/plugins/webhook/types.js.map +1 -0
  380. package/dist/plugins/webhook/webhook-plugin.d.ts +92 -0
  381. package/dist/plugins/webhook/webhook-plugin.d.ts.map +1 -0
  382. package/dist/plugins/webhook/webhook-plugin.js +328 -0
  383. package/dist/plugins/webhook/webhook-plugin.js.map +1 -0
  384. package/dist/schemas/agent-template-schema.d.ts +137 -0
  385. package/dist/schemas/agent-template-schema.d.ts.map +1 -0
  386. package/dist/schemas/agent-template-schema.js +87 -0
  387. package/dist/schemas/agent-template-schema.js.map +1 -0
  388. package/dist/services/conversation-service/index.d.ts +88 -0
  389. package/dist/services/conversation-service/index.d.ts.map +1 -0
  390. package/dist/services/conversation-service/index.js +441 -0
  391. package/dist/services/conversation-service/index.js.map +1 -0
  392. package/dist/services/conversation-service/types.d.ts +32 -0
  393. package/dist/services/conversation-service/types.d.ts.map +1 -0
  394. package/dist/services/conversation-service/types.js +8 -0
  395. package/dist/services/conversation-service/types.js.map +1 -0
  396. package/dist/services/event-service.d.ts +61 -0
  397. package/dist/services/event-service.d.ts.map +1 -0
  398. package/dist/services/event-service.js +110 -0
  399. package/dist/services/event-service.js.map +1 -0
  400. package/dist/services/event-service.test.d.ts +2 -0
  401. package/dist/services/event-service.test.d.ts.map +1 -0
  402. package/dist/services/event-service.test.js +86 -0
  403. package/dist/services/event-service.test.js.map +1 -0
  404. package/dist/services/execution-service.d.ts +151 -0
  405. package/dist/services/execution-service.d.ts.map +1 -0
  406. package/dist/services/execution-service.js +1262 -0
  407. package/dist/services/execution-service.js.map +1 -0
  408. package/dist/services/execution-service.test.d.ts +2 -0
  409. package/dist/services/execution-service.test.d.ts.map +1 -0
  410. package/dist/services/execution-service.test.js +338 -0
  411. package/dist/services/execution-service.test.js.map +1 -0
  412. package/dist/services/history-module.d.ts +15 -0
  413. package/dist/services/history-module.d.ts.map +1 -0
  414. package/dist/services/history-module.js +42 -0
  415. package/dist/services/history-module.js.map +1 -0
  416. package/dist/services/in-memory-history-store.d.ts +12 -0
  417. package/dist/services/in-memory-history-store.d.ts.map +1 -0
  418. package/dist/services/in-memory-history-store.js +41 -0
  419. package/dist/services/in-memory-history-store.js.map +1 -0
  420. package/dist/services/index.d.ts +7 -0
  421. package/dist/services/index.d.ts.map +1 -0
  422. package/dist/services/index.js +13 -0
  423. package/dist/services/index.js.map +1 -0
  424. package/dist/services/task-events.d.ts +6 -0
  425. package/dist/services/task-events.d.ts.map +1 -0
  426. package/dist/services/task-events.js +6 -0
  427. package/dist/services/task-events.js.map +1 -0
  428. package/dist/services/tool-execution-service.d.ts +74 -0
  429. package/dist/services/tool-execution-service.d.ts.map +1 -0
  430. package/dist/services/tool-execution-service.js +189 -0
  431. package/dist/services/tool-execution-service.js.map +1 -0
  432. package/dist/services/user-events.d.ts +7 -0
  433. package/dist/services/user-events.d.ts.map +1 -0
  434. package/dist/services/user-events.js +6 -0
  435. package/dist/services/user-events.js.map +1 -0
  436. package/dist/tools/implementations/function-tool/index.d.ts +9 -0
  437. package/dist/tools/implementations/function-tool/index.d.ts.map +1 -0
  438. package/dist/tools/implementations/function-tool/index.js +13 -0
  439. package/dist/tools/implementations/function-tool/index.js.map +1 -0
  440. package/dist/tools/implementations/function-tool/schema-converter.d.ts +32 -0
  441. package/dist/tools/implementations/function-tool/schema-converter.d.ts.map +1 -0
  442. package/dist/tools/implementations/function-tool/schema-converter.js +164 -0
  443. package/dist/tools/implementations/function-tool/schema-converter.js.map +1 -0
  444. package/dist/tools/implementations/function-tool/types.d.ts +72 -0
  445. package/dist/tools/implementations/function-tool/types.d.ts.map +1 -0
  446. package/dist/tools/implementations/function-tool/types.js +14 -0
  447. package/dist/tools/implementations/function-tool/types.js.map +1 -0
  448. package/dist/tools/implementations/function-tool.d.ts +49 -0
  449. package/dist/tools/implementations/function-tool.d.ts.map +1 -0
  450. package/dist/tools/implementations/function-tool.js +223 -0
  451. package/dist/tools/implementations/function-tool.js.map +1 -0
  452. package/dist/tools/implementations/index.d.ts +4 -0
  453. package/dist/tools/implementations/index.d.ts.map +1 -0
  454. package/dist/tools/implementations/index.js +5 -0
  455. package/dist/tools/implementations/index.js.map +1 -0
  456. package/dist/tools/implementations/mcp-tool.d.ts +72 -0
  457. package/dist/tools/implementations/mcp-tool.d.ts.map +1 -0
  458. package/dist/tools/implementations/mcp-tool.js +246 -0
  459. package/dist/tools/implementations/mcp-tool.js.map +1 -0
  460. package/dist/tools/implementations/openapi-tool.d.ts +56 -0
  461. package/dist/tools/implementations/openapi-tool.d.ts.map +1 -0
  462. package/dist/tools/implementations/openapi-tool.js +324 -0
  463. package/dist/tools/implementations/openapi-tool.js.map +1 -0
  464. package/dist/tools/implementations/relay-mcp-tool.d.ts +38 -0
  465. package/dist/tools/implementations/relay-mcp-tool.d.ts.map +1 -0
  466. package/dist/tools/implementations/relay-mcp-tool.js +46 -0
  467. package/dist/tools/implementations/relay-mcp-tool.js.map +1 -0
  468. package/dist/tools/index.d.ts +3 -0
  469. package/dist/tools/index.d.ts.map +1 -0
  470. package/dist/tools/index.js +4 -0
  471. package/dist/tools/index.js.map +1 -0
  472. package/dist/tools/registry/index.d.ts +2 -0
  473. package/dist/tools/registry/index.d.ts.map +1 -0
  474. package/dist/tools/registry/index.js +3 -0
  475. package/dist/tools/registry/index.js.map +1 -0
  476. package/dist/tools/registry/tool-registry.d.ts +54 -0
  477. package/dist/tools/registry/tool-registry.d.ts.map +1 -0
  478. package/dist/tools/registry/tool-registry.js +146 -0
  479. package/dist/tools/registry/tool-registry.js.map +1 -0
  480. package/dist/utils/errors.d.ts +155 -0
  481. package/dist/utils/errors.d.ts.map +1 -0
  482. package/dist/utils/errors.js +203 -0
  483. package/dist/utils/errors.js.map +1 -0
  484. package/dist/utils/execution-proxy.d.ts +75 -0
  485. package/dist/utils/execution-proxy.d.ts.map +1 -0
  486. package/dist/utils/execution-proxy.js +230 -0
  487. package/dist/utils/execution-proxy.js.map +1 -0
  488. package/dist/utils/index.d.ts +11 -0
  489. package/dist/utils/index.d.ts.map +1 -0
  490. package/dist/utils/index.js +7 -0
  491. package/dist/utils/index.js.map +1 -0
  492. package/dist/utils/logger.d.ts +74 -0
  493. package/dist/utils/logger.d.ts.map +1 -0
  494. package/dist/utils/logger.js +143 -0
  495. package/dist/utils/logger.js.map +1 -0
  496. package/dist/utils/message-converter.d.ts +68 -0
  497. package/dist/utils/message-converter.d.ts.map +1 -0
  498. package/dist/utils/message-converter.js +87 -0
  499. package/dist/utils/message-converter.js.map +1 -0
  500. package/dist/utils/periodic-task.d.ts +14 -0
  501. package/dist/utils/periodic-task.d.ts.map +1 -0
  502. package/dist/utils/periodic-task.js +26 -0
  503. package/dist/utils/periodic-task.js.map +1 -0
  504. package/dist/utils/validation.d.ts +40 -0
  505. package/dist/utils/validation.d.ts.map +1 -0
  506. package/dist/utils/validation.js +162 -0
  507. package/dist/utils/validation.js.map +1 -0
  508. package/package.json +101 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/services/index.ts"],"names":[],"mappings":"AAAA,WAAW;AACX,cAAc,qBAAqB,CAAC;AACpC,OAAO,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,6FAA6F;AAC7F,gHAAgH;AAChH,cAAc,wBAAwB,CAAC;AACvC,cAAc,iBAAiB,CAAC;AAChC,sCAAsC;AAEtC,QAAQ;AACR,wEAAwE;AACxE,0DAA0D"}
@@ -0,0 +1,6 @@
1
+ export declare const TASK_EVENTS: {
2
+ readonly ASSIGNED: "assigned";
3
+ readonly COMPLETED: "completed";
4
+ };
5
+ export declare const TASK_EVENT_PREFIX: "task";
6
+ //# sourceMappingURL=task-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-events.d.ts","sourceRoot":"","sources":["../../src/services/task-events.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;CAGd,CAAC;AAEX,eAAO,MAAM,iBAAiB,EAAG,MAAe,CAAC"}
@@ -0,0 +1,6 @@
1
+ export const TASK_EVENTS = {
2
+ ASSIGNED: 'assigned',
3
+ COMPLETED: 'completed',
4
+ };
5
+ export const TASK_EVENT_PREFIX = 'task';
6
+ //# sourceMappingURL=task-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-events.js","sourceRoot":"","sources":["../../src/services/task-events.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;IACvB,QAAQ,EAAE,UAAU;IACpB,SAAS,EAAE,WAAW;CAChB,CAAC;AAEX,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAe,CAAC"}
@@ -0,0 +1,74 @@
1
+ import { IToolExecutionResult, IToolExecutionContext } from '../interfaces/tool';
2
+ import type { IToolManager } from '../interfaces/manager';
3
+ import type { TToolParameters, TToolMetadata } from '../interfaces/tool';
4
+ import type { IOwnerPathSegment } from '../interfaces/event-service';
5
+ import type { IToolExecutionRequest } from '../interfaces/service';
6
+ import { type ILogger } from '../utils/logger';
7
+ /**
8
+ * ToolExecutionService owned events
9
+ * Local event names only (no dots). Full names are composed at emit time.
10
+ */
11
+ export declare const TOOL_EVENTS: {
12
+ readonly CALL_START: "call_start";
13
+ readonly CALL_COMPLETE: "call_complete";
14
+ readonly CALL_ERROR: "call_error";
15
+ readonly CALL_RESPONSE_READY: "call_response_ready";
16
+ };
17
+ export declare const TOOL_EVENT_PREFIX: "tool";
18
+ export interface IToolExecutionBatchContext {
19
+ requests: IToolExecutionRequest[];
20
+ mode: 'parallel' | 'sequential';
21
+ timeout?: number;
22
+ continueOnError?: boolean;
23
+ maxConcurrency?: number;
24
+ parentContext?: IToolExecutionContext;
25
+ }
26
+ /**
27
+ * Simplified ToolExecutionService
28
+ * Focuses only on core tool execution without complex hierarchy tracking
29
+ */
30
+ export declare class ToolExecutionService {
31
+ private tools;
32
+ private logger;
33
+ constructor(tools: IToolManager, logger?: ILogger);
34
+ /**
35
+ * Execute a single tool
36
+ * @param toolName - Name of the tool to execute
37
+ * @param parameters - Tool parameters
38
+ * @param context - Optional execution context
39
+ * @returns Promise resolving to tool execution result
40
+ */
41
+ executeTool(toolName: string, parameters: TToolParameters, context?: IToolExecutionContext): Promise<IToolExecutionResult>;
42
+ /**
43
+ * Create execution requests with context (for ExecutionService compatibility)
44
+ * @param toolCalls - Array of tool calls from AI provider
45
+ * @param context - Execution context
46
+ * @returns Array of tool execution requests
47
+ */
48
+ createExecutionRequestsWithContext(toolCalls: Array<{
49
+ id: string;
50
+ function: {
51
+ name: string;
52
+ arguments: string;
53
+ };
54
+ }>, context: {
55
+ ownerPathBase: IOwnerPathSegment[];
56
+ metadataFactory?: (toolCall: {
57
+ id: string;
58
+ function: {
59
+ name: string;
60
+ arguments: string;
61
+ };
62
+ }) => TToolMetadata | undefined;
63
+ }): IToolExecutionRequest[];
64
+ /**
65
+ * Execute tools from batch context (for ExecutionService compatibility)
66
+ * @param batchContext - Batch execution context
67
+ * @returns Promise resolving to tool execution summary
68
+ */
69
+ executeTools(batchContext: IToolExecutionBatchContext): Promise<{
70
+ results: IToolExecutionResult[];
71
+ errors: Error[];
72
+ }>;
73
+ }
74
+ //# sourceMappingURL=tool-execution-service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-execution-service.d.ts","sourceRoot":"","sources":["../../src/services/tool-execution-service.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,eAAe,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,KAAK,EAAE,iBAAiB,EAAkB,MAAM,6BAA6B,CAAC;AACrF,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AACnE,OAAO,EAAgB,KAAK,OAAO,EAAE,MAAM,iBAAiB,CAAC;AAG7D;;;GAGG;AACH,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,eAAO,MAAM,iBAAiB,EAAG,MAAe,CAAC;AAEjD,MAAM,WAAW,0BAA0B;IACvC,QAAQ,EAAE,qBAAqB,EAAE,CAAC;IAClC,IAAI,EAAE,UAAU,GAAG,YAAY,CAAC;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,aAAa,CAAC,EAAE,qBAAqB,CAAC;CACzC;AAED;;;GAGG;AACH,qBAAa,oBAAoB;IAC7B,OAAO,CAAC,KAAK,CAAe;IAC5B,OAAO,CAAC,MAAM,CAAU;gBAEZ,KAAK,EAAE,YAAY,EAAE,MAAM,GAAE,OAAsB;IAK/D;;;;;;OAMG;IACG,WAAW,CACb,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,eAAe,EAC3B,OAAO,CAAC,EAAE,qBAAqB,GAChC,OAAO,CAAC,oBAAoB,CAAC;IAgFhC;;;;;OAKG;IACH,kCAAkC,CAC9B,SAAS,EAAE,KAAK,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,SAAS,EAAE,MAAM,CAAA;SAAE,CAAA;KAAE,CAAC,EAC/E,OAAO,EAAE;QACL,aAAa,EAAE,iBAAiB,EAAE,CAAC;QACnC,eAAe,CAAC,EAAE,CAAC,QAAQ,EAAE;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE;gBAAE,IAAI,EAAE,MAAM,CAAC;gBAAC,SAAS,EAAE,MAAM,CAAA;aAAE,CAAA;SAAE,KAAK,aAAa,GAAG,SAAS,CAAC;KAC5H,GACF,qBAAqB,EAAE;IAY1B;;;;OAIG;IACG,YAAY,CAAC,YAAY,EAAE,0BAA0B,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,oBAAoB,EAAE,CAAC;QAAC,MAAM,EAAE,KAAK,EAAE,CAAA;KAAE,CAAC;CAiF9H"}
@@ -0,0 +1,189 @@
1
+ import { SilentLogger } from '../utils/logger';
2
+ import { ValidationError } from '../utils/errors';
3
+ /**
4
+ * ToolExecutionService owned events
5
+ * Local event names only (no dots). Full names are composed at emit time.
6
+ */
7
+ export const TOOL_EVENTS = {
8
+ CALL_START: 'call_start',
9
+ CALL_COMPLETE: 'call_complete',
10
+ CALL_ERROR: 'call_error',
11
+ CALL_RESPONSE_READY: 'call_response_ready'
12
+ };
13
+ export const TOOL_EVENT_PREFIX = 'tool';
14
+ /**
15
+ * Simplified ToolExecutionService
16
+ * Focuses only on core tool execution without complex hierarchy tracking
17
+ */
18
+ export class ToolExecutionService {
19
+ tools;
20
+ logger;
21
+ constructor(tools, logger = SilentLogger) {
22
+ this.tools = tools;
23
+ this.logger = logger;
24
+ }
25
+ /**
26
+ * Execute a single tool
27
+ * @param toolName - Name of the tool to execute
28
+ * @param parameters - Tool parameters
29
+ * @param context - Optional execution context
30
+ * @returns Promise resolving to tool execution result
31
+ */
32
+ async executeTool(toolName, parameters, context) {
33
+ this.logger.debug(`Executing tool: ${toolName}`);
34
+ try {
35
+ if (!context?.executionId) {
36
+ throw new ValidationError('ToolExecutionService requires executionId (toolCallId) in ToolExecutionContext');
37
+ }
38
+ const eventService = context.eventService;
39
+ if (eventService) {
40
+ const startEvent = {
41
+ timestamp: new Date(),
42
+ toolName,
43
+ parameters
44
+ };
45
+ eventService.emit(TOOL_EVENTS.CALL_START, startEvent);
46
+ }
47
+ // Normalize execution context without duplicating keys from the spread.
48
+ const { toolName: _toolName, parameters: _parameters, ...restContext } = context;
49
+ void _toolName;
50
+ void _parameters;
51
+ const executionContext = {
52
+ ...restContext,
53
+ toolName,
54
+ parameters,
55
+ executionId: context.executionId
56
+ };
57
+ // Execute the tool with full context
58
+ // Context already contains all necessary information including tool call ID
59
+ const result = await this.tools.executeTool(toolName, parameters, executionContext);
60
+ this.logger.debug(`Tool execution completed: ${toolName}`);
61
+ if (eventService) {
62
+ const completeEvent = {
63
+ timestamp: new Date(),
64
+ toolName,
65
+ result: result
66
+ };
67
+ eventService.emit(TOOL_EVENTS.CALL_COMPLETE, completeEvent);
68
+ eventService.emit(TOOL_EVENTS.CALL_RESPONSE_READY, completeEvent);
69
+ }
70
+ return {
71
+ success: true,
72
+ result: result,
73
+ toolName,
74
+ executionId: executionContext.executionId
75
+ };
76
+ }
77
+ catch (error) {
78
+ this.logger.error(`Tool execution failed: ${toolName}`);
79
+ const toolError = error instanceof Error ? error : new Error(String(error));
80
+ const eventService = context?.eventService;
81
+ if (eventService && context?.executionId) {
82
+ const errorEvent = {
83
+ timestamp: new Date(),
84
+ toolName,
85
+ error: toolError.message
86
+ };
87
+ eventService.emit(TOOL_EVENTS.CALL_ERROR, errorEvent);
88
+ }
89
+ return {
90
+ success: false,
91
+ error: toolError.message,
92
+ toolName,
93
+ executionId: context?.executionId
94
+ };
95
+ }
96
+ }
97
+ /**
98
+ * Create execution requests with context (for ExecutionService compatibility)
99
+ * @param toolCalls - Array of tool calls from AI provider
100
+ * @param context - Execution context
101
+ * @returns Array of tool execution requests
102
+ */
103
+ createExecutionRequestsWithContext(toolCalls, context) {
104
+ return toolCalls.map(toolCall => ({
105
+ toolName: toolCall.function.name,
106
+ parameters: JSON.parse(toolCall.function.arguments),
107
+ executionId: toolCall.id,
108
+ ownerType: 'tool',
109
+ ownerId: toolCall.id,
110
+ ownerPath: [...context.ownerPathBase, { type: 'tool', id: toolCall.id }],
111
+ metadata: context.metadataFactory ? context.metadataFactory(toolCall) : undefined
112
+ }));
113
+ }
114
+ /**
115
+ * Execute tools from batch context (for ExecutionService compatibility)
116
+ * @param batchContext - Batch execution context
117
+ * @returns Promise resolving to tool execution summary
118
+ */
119
+ async executeTools(batchContext) {
120
+ this.logger.debug(`Executing ${batchContext.requests.length} tools in ${batchContext.mode} mode`);
121
+ const results = [];
122
+ const errors = [];
123
+ if (batchContext.mode === 'parallel') {
124
+ const promises = batchContext.requests.map(request => this.executeTool(request.toolName, request.parameters, {
125
+ toolName: request.toolName,
126
+ parameters: request.parameters,
127
+ executionId: request.executionId,
128
+ ownerType: request.ownerType || 'tool',
129
+ ownerId: request.ownerId || request.executionId,
130
+ ownerPath: request.ownerPath,
131
+ metadata: request.metadata,
132
+ eventService: request.eventService,
133
+ baseEventService: request.baseEventService
134
+ }).catch(error => ({
135
+ toolName: request.toolName || 'unknown',
136
+ result: null,
137
+ success: false,
138
+ error: error instanceof Error ? error.message : String(error),
139
+ executionId: request.executionId || 'unknown'
140
+ })));
141
+ const allResults = await Promise.all(promises);
142
+ // Preserve a result entry for every request (SSOT for toolCallId → result mapping).
143
+ // ExecutionService depends on `executionId` to add tool messages in the original call order.
144
+ allResults.forEach(result => {
145
+ results.push(result);
146
+ if (!result.success) {
147
+ const err = new Error(`Tool execution failed: toolName=${String(result.toolName)} executionId=${String(result.executionId)} error=${String(result.error || 'Unknown error')}`);
148
+ errors.push(err);
149
+ }
150
+ });
151
+ }
152
+ else {
153
+ // Sequential execution
154
+ for (const request of batchContext.requests) {
155
+ try {
156
+ const result = await this.executeTool(request.toolName, request.parameters, {
157
+ toolName: request.toolName,
158
+ parameters: request.parameters,
159
+ executionId: request.executionId,
160
+ ownerType: request.ownerType || 'tool',
161
+ ownerId: request.ownerId || request.executionId,
162
+ ownerPath: request.ownerPath,
163
+ metadata: request.metadata,
164
+ eventService: request.eventService,
165
+ baseEventService: request.baseEventService
166
+ });
167
+ results.push(result);
168
+ if (!result.success) {
169
+ errors.push(new Error(`Tool execution failed: toolName=${String(result.toolName)} executionId=${String(result.executionId)} error=${String(result.error || 'Unknown error')}`));
170
+ }
171
+ if (!result.success && !batchContext.continueOnError) {
172
+ break;
173
+ }
174
+ }
175
+ catch (error) {
176
+ const err = error instanceof Error
177
+ ? error
178
+ : new Error(String(error));
179
+ errors.push(err);
180
+ if (!batchContext.continueOnError) {
181
+ break;
182
+ }
183
+ }
184
+ }
185
+ }
186
+ return { results, errors };
187
+ }
188
+ }
189
+ //# sourceMappingURL=tool-execution-service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tool-execution-service.js","sourceRoot":"","sources":["../../src/services/tool-execution-service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ export declare const USER_EVENTS: {
2
+ readonly MESSAGE: "message";
3
+ readonly INPUT: "input";
4
+ };
5
+ export declare const USER_EVENT_PREFIX: "user";
6
+ export type TUserEvent = typeof USER_EVENTS[keyof typeof USER_EVENTS];
7
+ //# sourceMappingURL=user-events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-events.d.ts","sourceRoot":"","sources":["../../src/services/user-events.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW;;;CAGd,CAAC;AAEX,eAAO,MAAM,iBAAiB,EAAG,MAAe,CAAC;AAEjD,MAAM,MAAM,UAAU,GAAG,OAAO,WAAW,CAAC,MAAM,OAAO,WAAW,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ export const USER_EVENTS = {
2
+ MESSAGE: 'message',
3
+ INPUT: 'input',
4
+ };
5
+ export const USER_EVENT_PREFIX = 'user';
6
+ //# sourceMappingURL=user-events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-events.js","sourceRoot":"","sources":["../../src/services/user-events.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG;IACvB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;CACR,CAAC;AAEX,MAAM,CAAC,MAAM,iBAAiB,GAAG,MAAe,CAAC"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * FunctionTool - Centralized exports for Facade pattern
3
+ *
4
+ * This module provides a clean interface for function tool functionality
5
+ * with proper separation of concerns and type safety.
6
+ */
7
+ export type { IZodSchema, IZodParseResult, IZodSchemaDef, IFunctionToolValidationOptions, ISchemaConversionOptions, IFunctionToolExecutionMetadata, IFunctionToolResult } from './types';
8
+ export { zodToJsonSchema, extractEnumValues, hasValidationConstraints, getSchemaTypeName } from './schema-converter';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/tools/implementations/function-tool/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,YAAY,EACR,UAAU,EACV,eAAe,EACf,aAAa,EACb,8BAA8B,EAC9B,wBAAwB,EACxB,8BAA8B,EAC9B,mBAAmB,EACtB,MAAM,SAAS,CAAC;AAGjB,OAAO,EACH,eAAe,EACf,iBAAiB,EACjB,wBAAwB,EACxB,iBAAiB,EACpB,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * FunctionTool - Centralized exports for Facade pattern
3
+ *
4
+ * This module provides a clean interface for function tool functionality
5
+ * with proper separation of concerns and type safety.
6
+ */
7
+ // Schema conversion utilities
8
+ export { zodToJsonSchema, extractEnumValues, hasValidationConstraints, getSchemaTypeName } from './schema-converter';
9
+ // Main function tool class (to be imported from refactored implementation)
10
+ // export { FunctionTool } from './function-tool';
11
+ // Helper functions for creating tools
12
+ // export { createFunctionTool, createZodFunctionTool } from './factory';
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/tools/implementations/function-tool/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAaH,8BAA8B;AAC9B,OAAO,EACH,eAAe,EACf,iBAAiB,EACjB,wBAAwB,EACxB,iBAAiB,EACpB,MAAM,oBAAoB,CAAC;AAE5B,2EAA2E;AAC3E,kDAAkD;AAElD,sCAAsC;AACtC,0EAA0E"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * FunctionTool - Schema conversion utilities for Facade pattern
3
+ *
4
+ * REASON: Complex Zod to JSON schema conversion requires isolated utility functions
5
+ * ALTERNATIVES_CONSIDERED:
6
+ * 1. Keep conversion logic in main class (violates single responsibility)
7
+ * 2. Use third-party library (adds external dependency)
8
+ * 3. Manual conversion each time (code duplication)
9
+ * 4. Runtime type checking only (loses compile-time safety)
10
+ * 5. Remove Zod support (breaks backward compatibility)
11
+ * TODO: Consider caching conversion results for performance
12
+ */
13
+ import type { IToolSchema } from '../../../interfaces/provider';
14
+ import type { IZodSchema, ISchemaConversionOptions } from './types';
15
+ import type { TUniversalValue } from '../../../interfaces/types';
16
+ /**
17
+ * Convert Zod schema to JSON Schema format with safe undefined handling
18
+ */
19
+ export declare function zodToJsonSchema(schema: IZodSchema, options?: ISchemaConversionOptions): IToolSchema['parameters'];
20
+ /**
21
+ * Safely extract enum values from Zod schema
22
+ */
23
+ export declare function extractEnumValues(schema: IZodSchema): TUniversalValue[];
24
+ /**
25
+ * Check if schema has validation constraints
26
+ */
27
+ export declare function hasValidationConstraints(schema: IZodSchema): boolean;
28
+ /**
29
+ * Safe schema type name extraction
30
+ */
31
+ export declare function getSchemaTypeName(schema: IZodSchema): string;
32
+ //# sourceMappingURL=schema-converter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-converter.d.ts","sourceRoot":"","sources":["../../../../src/tools/implementations/function-tool/schema-converter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAqC,MAAM,8BAA8B,CAAC;AACnG,OAAO,KAAK,EACR,UAAU,EACV,wBAAwB,EAC3B,MAAM,SAAS,CAAC;AACjB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE;;GAEG;AACH,wBAAgB,eAAe,CAC3B,MAAM,EAAE,UAAU,EAClB,OAAO,GAAE,wBAA6B,GACvC,WAAW,CAAC,YAAY,CAAC,CAgC3B;AAqGD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,eAAe,EAAE,CASvE;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAOpE;AAED;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAS5D"}
@@ -0,0 +1,164 @@
1
+ /**
2
+ * FunctionTool - Schema conversion utilities for Facade pattern
3
+ *
4
+ * REASON: Complex Zod to JSON schema conversion requires isolated utility functions
5
+ * ALTERNATIVES_CONSIDERED:
6
+ * 1. Keep conversion logic in main class (violates single responsibility)
7
+ * 2. Use third-party library (adds external dependency)
8
+ * 3. Manual conversion each time (code duplication)
9
+ * 4. Runtime type checking only (loses compile-time safety)
10
+ * 5. Remove Zod support (breaks backward compatibility)
11
+ * TODO: Consider caching conversion results for performance
12
+ */
13
+ /**
14
+ * Convert Zod schema to JSON Schema format with safe undefined handling
15
+ */
16
+ export function zodToJsonSchema(schema, options = {}) {
17
+ const properties = {};
18
+ const required = [];
19
+ // Safe access to schema definition (no fallback).
20
+ const schemaDef = schema._def;
21
+ if (!schemaDef) {
22
+ throw new Error('Zod schema is missing _def; cannot convert to JSON schema.');
23
+ }
24
+ // Handle object schemas with shape
25
+ if (schemaDef.typeName === 'ZodObject' && schemaDef.shape) {
26
+ // In Zod v3, shape is a property, not a function
27
+ const shape = typeof schemaDef.shape === 'function' ? schemaDef.shape() : schemaDef.shape;
28
+ for (const [key, typeObj] of Object.entries(shape)) {
29
+ const property = convertZodTypeToProperty(typeObj);
30
+ properties[key] = property;
31
+ // Check if field is required (not optional/nullable)
32
+ if (isRequiredField(typeObj)) {
33
+ required.push(key);
34
+ }
35
+ }
36
+ }
37
+ return {
38
+ type: 'object',
39
+ properties,
40
+ required,
41
+ ...(options.allowAdditionalProperties && { additionalProperties: true })
42
+ };
43
+ }
44
+ /**
45
+ * Convert individual Zod type to parameter schema with safe undefined handling
46
+ */
47
+ function convertZodTypeToProperty(typeObj) {
48
+ // Safe access to type definition
49
+ const typeDef = typeObj._def;
50
+ if (!typeDef) {
51
+ throw new Error('Zod type is missing _def; cannot convert to JSON schema.');
52
+ }
53
+ const base = {};
54
+ // Add description if available
55
+ if (typeDef.description) {
56
+ base.description = typeDef.description;
57
+ }
58
+ // Handle different Zod types
59
+ switch (typeDef.typeName) {
60
+ case 'ZodString':
61
+ return { type: 'string', ...base };
62
+ case 'ZodNumber':
63
+ return { type: 'number', ...base };
64
+ case 'ZodBoolean':
65
+ return { type: 'boolean', ...base };
66
+ case 'ZodArray': {
67
+ if (!typeDef.type) {
68
+ throw new Error('ZodArray is missing item type; cannot convert to JSON schema.');
69
+ }
70
+ const arrayItems = convertZodTypeToProperty(typeDef.type);
71
+ return {
72
+ type: 'array',
73
+ items: arrayItems,
74
+ ...base
75
+ };
76
+ }
77
+ case 'ZodObject':
78
+ return { type: 'object', ...base };
79
+ case 'ZodEnum': {
80
+ const enumValues = typeDef.values;
81
+ if (!enumValues || !Array.isArray(enumValues)) {
82
+ throw new Error('ZodEnum is missing enum values; cannot convert to JSON schema.');
83
+ }
84
+ return {
85
+ type: 'string',
86
+ enum: enumValues,
87
+ ...base
88
+ };
89
+ }
90
+ case 'ZodOptional':
91
+ // Handle optional types by recursion
92
+ if (typeDef.innerType) {
93
+ const innerProperty = convertZodTypeToProperty(typeDef.innerType);
94
+ return { ...innerProperty, ...base };
95
+ }
96
+ throw new Error('ZodOptional is missing innerType; cannot convert to JSON schema.');
97
+ case 'ZodNullable':
98
+ // Handle nullable types
99
+ if (typeDef.innerType) {
100
+ const innerProperty = convertZodTypeToProperty(typeDef.innerType);
101
+ return { ...innerProperty, ...base };
102
+ }
103
+ throw new Error('ZodNullable is missing innerType; cannot convert to JSON schema.');
104
+ case 'ZodDefault':
105
+ // Handle default values by processing the inner type
106
+ if (typeDef.innerType) {
107
+ const innerProperty = convertZodTypeToProperty(typeDef.innerType);
108
+ return { ...innerProperty, ...base };
109
+ }
110
+ throw new Error('ZodDefault is missing innerType; cannot convert to JSON schema.');
111
+ default:
112
+ throw new Error(`Unsupported Zod type: ${String(typeDef.typeName)}`);
113
+ }
114
+ }
115
+ /**
116
+ * Check if a Zod field is required (not optional or nullable)
117
+ */
118
+ function isRequiredField(typeObj) {
119
+ const typeDef = typeObj._def;
120
+ if (!typeDef) {
121
+ throw new Error('Zod schema is missing _def; cannot determine required fields.');
122
+ }
123
+ // Field is optional if it's ZodOptional, ZodNullable, or ZodDefault
124
+ return typeDef.typeName !== 'ZodOptional' &&
125
+ typeDef.typeName !== 'ZodNullable' &&
126
+ typeDef.typeName !== 'ZodDefault';
127
+ }
128
+ /**
129
+ * Safely extract enum values from Zod schema
130
+ */
131
+ export function extractEnumValues(schema) {
132
+ const typeDef = schema._def;
133
+ if (!typeDef) {
134
+ throw new Error('Zod schema is missing _def; cannot extract enum values.');
135
+ }
136
+ if (!typeDef.values || !Array.isArray(typeDef.values)) {
137
+ throw new Error('ZodEnum schema is missing enum values; cannot extract enum values.');
138
+ }
139
+ return typeDef.values;
140
+ }
141
+ /**
142
+ * Check if schema has validation constraints
143
+ */
144
+ export function hasValidationConstraints(schema) {
145
+ const typeDef = schema._def;
146
+ if (!typeDef) {
147
+ throw new Error('Zod schema is missing _def; cannot determine validation constraints.');
148
+ }
149
+ return !!(typeDef.checks && typeDef.checks.length > 0);
150
+ }
151
+ /**
152
+ * Safe schema type name extraction
153
+ */
154
+ export function getSchemaTypeName(schema) {
155
+ const typeDef = schema._def;
156
+ if (!typeDef) {
157
+ throw new Error('Zod schema is missing _def; cannot determine schema type name.');
158
+ }
159
+ if (!typeDef.typeName) {
160
+ throw new Error('Zod schema has empty typeName; cannot determine schema type name.');
161
+ }
162
+ return typeDef.typeName;
163
+ }
164
+ //# sourceMappingURL=schema-converter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-converter.js","sourceRoot":"","sources":["../../../../src/tools/implementations/function-tool/schema-converter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * FunctionTool - Type definitions for Facade pattern implementation
3
+ *
4
+ * REASON: Complex Zod schema type compatibility requires separation of concerns
5
+ * ALTERNATIVES_CONSIDERED:
6
+ * 1. Fix all Zod undefined issues in single file (creates maintenance burden)
7
+ * 2. Use any types strategically (reduces type safety)
8
+ * 3. Remove Zod support entirely (breaks existing functionality)
9
+ * 4. Create complex conditional types (adds cognitive overhead)
10
+ * 5. Use type assertions everywhere (increases runtime risk)
11
+ * NOTE: Tool functionality is now integrated into @robota-sdk/agents package
12
+ */
13
+ import type { TToolParameters } from '../../../interfaces/tool';
14
+ import type { TUniversalValue } from '../../../interfaces/types';
15
+ /**
16
+ * Zod schema compatibility types
17
+ */
18
+ export interface IZodParseResult {
19
+ success: boolean;
20
+ data?: TToolParameters;
21
+ error?: string | Error;
22
+ }
23
+ export interface IZodSchemaDef {
24
+ typeName?: string;
25
+ innerType?: IZodSchema;
26
+ checks?: Array<{
27
+ kind: string;
28
+ value?: TUniversalValue;
29
+ }>;
30
+ shape?: () => Record<string, IZodSchema>;
31
+ type?: IZodSchema;
32
+ values?: TUniversalValue[];
33
+ description?: string;
34
+ }
35
+ export interface IZodSchema {
36
+ parse(value: TToolParameters): TToolParameters;
37
+ safeParse(value: TToolParameters): IZodParseResult;
38
+ _def?: IZodSchemaDef;
39
+ }
40
+ /**
41
+ * Parameter type validation options
42
+ */
43
+ export interface IFunctionToolValidationOptions {
44
+ strict?: boolean;
45
+ allowUnknown?: boolean;
46
+ validateTypes?: boolean;
47
+ }
48
+ /**
49
+ * Schema conversion options
50
+ */
51
+ export interface ISchemaConversionOptions {
52
+ includeDescription?: boolean;
53
+ strictTypes?: boolean;
54
+ allowAdditionalProperties?: boolean;
55
+ }
56
+ /**
57
+ * Tool execution metadata
58
+ */
59
+ export interface IFunctionToolExecutionMetadata {
60
+ executionTime: number;
61
+ toolName: string;
62
+ parameters: TToolParameters;
63
+ }
64
+ /**
65
+ * Tool result with metadata
66
+ */
67
+ export interface IFunctionToolResult {
68
+ success: boolean;
69
+ data: TUniversalValue;
70
+ metadata?: IFunctionToolExecutionMetadata;
71
+ }
72
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/tools/implementations/function-tool/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAEjE;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,eAAe,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,GAAG,KAAK,CAAC;CAC1B;AAED,MAAM,WAAW,aAAa;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,UAAU,CAAC;IACvB,MAAM,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,eAAe,CAAA;KAAE,CAAC,CAAC;IAC1D,KAAK,CAAC,EAAE,MAAM,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACzC,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,MAAM,CAAC,EAAE,eAAe,EAAE,CAAC;IAC3B,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACvB,KAAK,CAAC,KAAK,EAAE,eAAe,GAAG,eAAe,CAAC;IAC/C,SAAS,CAAC,KAAK,EAAE,eAAe,GAAG,eAAe,CAAC;IACnD,IAAI,CAAC,EAAE,aAAa,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC3C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACrC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,yBAAyB,CAAC,EAAE,OAAO,CAAC;CACvC;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC3C,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,eAAe,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,eAAe,CAAC;IACtB,QAAQ,CAAC,EAAE,8BAA8B,CAAC;CAC7C"}