n8n 2.20.6 → 2.21.0

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 (580) hide show
  1. package/dist/abstract-server.d.ts +1 -0
  2. package/dist/abstract-server.js +10 -3
  3. package/dist/abstract-server.js.map +1 -1
  4. package/dist/agent-library-bundle.js +5989 -0
  5. package/dist/auth/auth.service.js +3 -3
  6. package/dist/auth/auth.service.js.map +1 -1
  7. package/dist/build.tsbuildinfo +1 -1
  8. package/dist/commands/execute-batch.d.ts +2 -2
  9. package/dist/commands/export/workflow.d.ts +2 -2
  10. package/dist/commands/import/workflow.d.ts +3 -0
  11. package/dist/commands/import/workflow.js +15 -1
  12. package/dist/commands/import/workflow.js.map +1 -1
  13. package/dist/commands/start.js +2 -0
  14. package/dist/commands/start.js.map +1 -1
  15. package/dist/constants.d.ts +1 -0
  16. package/dist/constants.js +6 -1
  17. package/dist/constants.js.map +1 -1
  18. package/dist/controller.registry.js +6 -0
  19. package/dist/controller.registry.js.map +1 -1
  20. package/dist/controllers/auth.controller.js +7 -2
  21. package/dist/controllers/auth.controller.js.map +1 -1
  22. package/dist/controllers/me.controller.d.ts +1 -0
  23. package/dist/controllers/me.controller.js +4 -1
  24. package/dist/controllers/me.controller.js.map +1 -1
  25. package/dist/controllers/users.controller.d.ts +2 -2
  26. package/dist/credentials/credentials.service.d.ts +1 -0
  27. package/dist/credentials/credentials.service.js +11 -4
  28. package/dist/credentials/credentials.service.js.map +1 -1
  29. package/dist/evaluation.ee/evaluation-api-error.d.ts +7 -0
  30. package/dist/evaluation.ee/evaluation-api-error.js +16 -0
  31. package/dist/evaluation.ee/evaluation-api-error.js.map +1 -0
  32. package/dist/evaluation.ee/evaluation-config-validator.d.ts +30 -0
  33. package/dist/evaluation.ee/evaluation-config-validator.js +236 -0
  34. package/dist/evaluation.ee/evaluation-config-validator.js.map +1 -0
  35. package/dist/evaluation.ee/evaluation-config.controller.d.ts +24 -0
  36. package/dist/evaluation.ee/evaluation-config.controller.js +94 -0
  37. package/dist/evaluation.ee/evaluation-config.controller.js.map +1 -0
  38. package/dist/evaluation.ee/evaluation-config.service.d.ts +18 -0
  39. package/dist/evaluation.ee/evaluation-config.service.js +74 -0
  40. package/dist/evaluation.ee/evaluation-config.service.js.map +1 -0
  41. package/dist/evaluation.ee/llm-judge-provider-registry.d.ts +13 -0
  42. package/dist/evaluation.ee/llm-judge-provider-registry.js +122 -0
  43. package/dist/evaluation.ee/llm-judge-provider-registry.js.map +1 -0
  44. package/dist/evaluation.ee/test-runner/test-runner.service.ee.d.ts +5 -0
  45. package/dist/evaluation.ee/test-runner/test-runner.service.ee.js +32 -10
  46. package/dist/evaluation.ee/test-runner/test-runner.service.ee.js.map +1 -1
  47. package/dist/evaluation.ee/test-runner/workflow-compiler.service.d.ts +22 -0
  48. package/dist/evaluation.ee/test-runner/workflow-compiler.service.js +285 -0
  49. package/dist/evaluation.ee/test-runner/workflow-compiler.service.js.map +1 -0
  50. package/dist/evaluation.ee/test-runs.controller.ee.d.ts +3 -0
  51. package/dist/evaluation.ee/test-runs.controller.ee.js +26 -9
  52. package/dist/evaluation.ee/test-runs.controller.ee.js.map +1 -1
  53. package/dist/evaluation.ee/test-runs.types.ee.d.ts +3 -0
  54. package/dist/eventbus/message-event-bus/message-event-bus.d.ts +2 -0
  55. package/dist/eventbus/message-event-bus/message-event-bus.js +54 -46
  56. package/dist/eventbus/message-event-bus/message-event-bus.js.map +1 -1
  57. package/dist/events/maps/relay.event-map.d.ts +3 -0
  58. package/dist/instance-settings-loader/instance-settings-loader.service.d.ts +4 -2
  59. package/dist/instance-settings-loader/instance-settings-loader.service.js +7 -3
  60. package/dist/instance-settings-loader/instance-settings-loader.service.js.map +1 -1
  61. package/dist/instance-settings-loader/loaders/community-packages.instance-settings-loader.d.ts +20 -0
  62. package/dist/instance-settings-loader/loaders/community-packages.instance-settings-loader.js +235 -0
  63. package/dist/instance-settings-loader/loaders/community-packages.instance-settings-loader.js.map +1 -0
  64. package/dist/instance-settings-loader/loaders/{sso.instance-settings-loader.d.ts → sso/oidc.instance-settings-loader.d.ts} +4 -10
  65. package/dist/instance-settings-loader/loaders/sso/oidc.instance-settings-loader.js +98 -0
  66. package/dist/instance-settings-loader/loaders/sso/oidc.instance-settings-loader.js.map +1 -0
  67. package/dist/instance-settings-loader/loaders/sso/provisioning.instance-settings-loader.d.ts +10 -0
  68. package/dist/instance-settings-loader/loaders/sso/provisioning.instance-settings-loader.js +65 -0
  69. package/dist/instance-settings-loader/loaders/sso/provisioning.instance-settings-loader.js.map +1 -0
  70. package/dist/instance-settings-loader/loaders/sso/saml.instance-settings-loader.d.ts +12 -0
  71. package/dist/instance-settings-loader/loaders/sso/saml.instance-settings-loader.js +75 -0
  72. package/dist/instance-settings-loader/loaders/sso/saml.instance-settings-loader.js.map +1 -0
  73. package/dist/instance-settings-loader/loaders/sso/sso.instance-settings-loader.d.ts +15 -0
  74. package/dist/instance-settings-loader/loaders/sso/sso.instance-settings-loader.js +75 -0
  75. package/dist/instance-settings-loader/loaders/sso/sso.instance-settings-loader.js.map +1 -0
  76. package/dist/load-nodes-and-credentials.d.ts +3 -3
  77. package/dist/load-nodes-and-credentials.js +25 -17
  78. package/dist/load-nodes-and-credentials.js.map +1 -1
  79. package/dist/modules/agents/adapters/agents-credential-provider.d.ts +12 -0
  80. package/dist/modules/agents/adapters/agents-credential-provider.js +63 -0
  81. package/dist/modules/agents/adapters/agents-credential-provider.js.map +1 -0
  82. package/dist/modules/agents/agent-execution.service.d.ts +42 -0
  83. package/dist/modules/agents/agent-execution.service.js +153 -0
  84. package/dist/modules/agents/agent-execution.service.js.map +1 -0
  85. package/dist/modules/agents/agent-message-mapper.d.ts +5 -0
  86. package/dist/modules/agents/agent-message-mapper.js +43 -0
  87. package/dist/modules/agents/agent-message-mapper.js.map +1 -0
  88. package/dist/modules/agents/agent-skills.service.d.ts +24 -0
  89. package/dist/modules/agents/agent-skills.service.js +166 -0
  90. package/dist/modules/agents/agent-skills.service.js.map +1 -0
  91. package/dist/modules/agents/agent-sse-stream.d.ts +15 -0
  92. package/dist/modules/agents/agent-sse-stream.js +194 -0
  93. package/dist/modules/agents/agent-sse-stream.js.map +1 -0
  94. package/dist/modules/agents/agents-tools.service.d.ts +18 -0
  95. package/dist/modules/agents/agents-tools.service.js +193 -0
  96. package/dist/modules/agents/agents-tools.service.js.map +1 -0
  97. package/dist/modules/agents/agents.controller.d.ts +260 -0
  98. package/dist/modules/agents/agents.controller.js +818 -0
  99. package/dist/modules/agents/agents.controller.js.map +1 -0
  100. package/dist/modules/agents/agents.module.d.ts +12 -0
  101. package/dist/modules/agents/agents.module.js +136 -0
  102. package/dist/modules/agents/agents.module.js.map +1 -0
  103. package/dist/modules/agents/agents.service.d.ts +151 -0
  104. package/dist/modules/agents/agents.service.js +1134 -0
  105. package/dist/modules/agents/agents.service.js.map +1 -0
  106. package/dist/modules/agents/builder/agents-builder-prompts.d.ts +27 -0
  107. package/dist/modules/agents/builder/agents-builder-prompts.js +584 -0
  108. package/dist/modules/agents/builder/agents-builder-prompts.js.map +1 -0
  109. package/dist/modules/agents/builder/agents-builder-settings.controller.d.ts +11 -0
  110. package/dist/modules/agents/builder/agents-builder-settings.controller.js +61 -0
  111. package/dist/modules/agents/builder/agents-builder-settings.controller.js.map +1 -0
  112. package/dist/modules/agents/builder/agents-builder-settings.service.d.ts +31 -0
  113. package/dist/modules/agents/builder/agents-builder-settings.service.js +199 -0
  114. package/dist/modules/agents/builder/agents-builder-settings.service.js.map +1 -0
  115. package/dist/modules/agents/builder/agents-builder-tools.service.d.ts +31 -0
  116. package/dist/modules/agents/builder/agents-builder-tools.service.js +420 -0
  117. package/dist/modules/agents/builder/agents-builder-tools.service.js.map +1 -0
  118. package/dist/modules/agents/builder/agents-builder.service.d.ts +26 -0
  119. package/dist/modules/agents/builder/agents-builder.service.js +164 -0
  120. package/dist/modules/agents/builder/agents-builder.service.js.map +1 -0
  121. package/dist/modules/agents/builder/builder-model-lookup.service.d.ts +17 -0
  122. package/dist/modules/agents/builder/builder-model-lookup.service.js +67 -0
  123. package/dist/modules/agents/builder/builder-model-lookup.service.js.map +1 -0
  124. package/dist/modules/agents/builder/builder-tool-names.d.ts +14 -0
  125. package/dist/modules/agents/builder/builder-tool-names.js +17 -0
  126. package/dist/modules/agents/builder/builder-tool-names.js.map +1 -0
  127. package/dist/modules/agents/builder/errors.d.ts +6 -0
  128. package/dist/modules/agents/builder/errors.js +13 -0
  129. package/dist/modules/agents/builder/errors.js.map +1 -0
  130. package/dist/modules/agents/builder/interactive/ask-credential.tool.d.ts +5 -0
  131. package/dist/modules/agents/builder/interactive/ask-credential.tool.js +29 -0
  132. package/dist/modules/agents/builder/interactive/ask-credential.tool.js.map +1 -0
  133. package/dist/modules/agents/builder/interactive/ask-llm.tool.d.ts +2 -0
  134. package/dist/modules/agents/builder/interactive/ask-llm.tool.js +27 -0
  135. package/dist/modules/agents/builder/interactive/ask-llm.tool.js.map +1 -0
  136. package/dist/modules/agents/builder/interactive/ask-question.tool.d.ts +2 -0
  137. package/dist/modules/agents/builder/interactive/ask-question.tool.js +26 -0
  138. package/dist/modules/agents/builder/interactive/ask-question.tool.js.map +1 -0
  139. package/dist/modules/agents/builder/interactive/index.d.ts +4 -0
  140. package/dist/modules/agents/builder/interactive/index.js +12 -0
  141. package/dist/modules/agents/builder/interactive/index.js.map +1 -0
  142. package/dist/modules/agents/builder/interactive/llm-provider-defaults.d.ts +17 -0
  143. package/dist/modules/agents/builder/interactive/llm-provider-defaults.js +60 -0
  144. package/dist/modules/agents/builder/interactive/llm-provider-defaults.js.map +1 -0
  145. package/dist/modules/agents/builder/interactive/resolve-llm.tool.d.ts +13 -0
  146. package/dist/modules/agents/builder/interactive/resolve-llm.tool.js +136 -0
  147. package/dist/modules/agents/builder/interactive/resolve-llm.tool.js.map +1 -0
  148. package/dist/modules/agents/entities/agent-checkpoint.entity.d.ts +9 -0
  149. package/dist/modules/agents/entities/agent-checkpoint.entity.js +43 -0
  150. package/dist/modules/agents/entities/agent-checkpoint.entity.js.map +1 -0
  151. package/dist/modules/agents/entities/agent-execution-thread.entity.d.ts +16 -0
  152. package/dist/modules/agents/entities/agent-execution-thread.entity.js +74 -0
  153. package/dist/modules/agents/entities/agent-execution-thread.entity.js.map +1 -0
  154. package/dist/modules/agents/entities/agent-execution.entity.d.ts +26 -0
  155. package/dist/modules/agents/entities/agent-execution.entity.js +100 -0
  156. package/dist/modules/agents/entities/agent-execution.entity.js.map +1 -0
  157. package/dist/modules/agents/entities/agent-message.entity.d.ts +10 -0
  158. package/dist/modules/agents/entities/agent-message.entity.js +47 -0
  159. package/dist/modules/agents/entities/agent-message.entity.js.map +1 -0
  160. package/dist/modules/agents/entities/agent-observation-cursor.entity.d.ts +8 -0
  161. package/dist/modules/agents/entities/agent-observation-cursor.entity.js +37 -0
  162. package/dist/modules/agents/entities/agent-observation-cursor.entity.js.map +1 -0
  163. package/dist/modules/agents/entities/agent-observation-lock.entity.d.ts +8 -0
  164. package/dist/modules/agents/entities/agent-observation-lock.entity.js +37 -0
  165. package/dist/modules/agents/entities/agent-observation-lock.entity.js.map +1 -0
  166. package/dist/modules/agents/entities/agent-observation.entity.d.ts +10 -0
  167. package/dist/modules/agents/entities/agent-observation.entity.js +47 -0
  168. package/dist/modules/agents/entities/agent-observation.entity.js.map +1 -0
  169. package/dist/modules/agents/entities/agent-published-version.entity.d.ts +22 -0
  170. package/dist/modules/agents/entities/agent-published-version.entity.js +67 -0
  171. package/dist/modules/agents/entities/agent-published-version.entity.js.map +1 -0
  172. package/dist/modules/agents/entities/agent-resource.entity.d.ts +5 -0
  173. package/dist/modules/agents/entities/agent-resource.entity.js +29 -0
  174. package/dist/modules/agents/entities/agent-resource.entity.js.map +1 -0
  175. package/dist/modules/agents/entities/agent-thread.entity.d.ts +6 -0
  176. package/dist/modules/agents/entities/agent-thread.entity.js +33 -0
  177. package/dist/modules/agents/entities/agent-thread.entity.js.map +1 -0
  178. package/dist/modules/agents/entities/agent.entity.d.ts +24 -0
  179. package/dist/modules/agents/entities/agent.entity.js +74 -0
  180. package/dist/modules/agents/entities/agent.entity.js.map +1 -0
  181. package/dist/modules/agents/execution-recorder.d.ts +82 -0
  182. package/dist/modules/agents/execution-recorder.js +272 -0
  183. package/dist/modules/agents/execution-recorder.js.map +1 -0
  184. package/dist/modules/agents/integrations/agent-chat-bridge.d.ts +62 -0
  185. package/dist/modules/agents/integrations/agent-chat-bridge.js +540 -0
  186. package/dist/modules/agents/integrations/agent-chat-bridge.js.map +1 -0
  187. package/dist/modules/agents/integrations/agent-chat-integration.d.ts +39 -0
  188. package/dist/modules/agents/integrations/agent-chat-integration.js +45 -0
  189. package/dist/modules/agents/integrations/agent-chat-integration.js.map +1 -0
  190. package/dist/modules/agents/integrations/agent-schedule.service.d.ts +30 -0
  191. package/dist/modules/agents/integrations/agent-schedule.service.js +327 -0
  192. package/dist/modules/agents/integrations/agent-schedule.service.js.map +1 -0
  193. package/dist/modules/agents/integrations/callback-store.d.ts +11 -0
  194. package/dist/modules/agents/integrations/callback-store.js +30 -0
  195. package/dist/modules/agents/integrations/callback-store.js.map +1 -0
  196. package/dist/modules/agents/integrations/chat-integration.service.d.ts +58 -0
  197. package/dist/modules/agents/integrations/chat-integration.service.js +397 -0
  198. package/dist/modules/agents/integrations/chat-integration.service.js.map +1 -0
  199. package/dist/modules/agents/integrations/component-mapper.d.ts +57 -0
  200. package/dist/modules/agents/integrations/component-mapper.js +223 -0
  201. package/dist/modules/agents/integrations/component-mapper.js.map +1 -0
  202. package/dist/modules/agents/integrations/cron-validation.d.ts +1 -0
  203. package/dist/modules/agents/integrations/cron-validation.js +8 -0
  204. package/dist/modules/agents/integrations/cron-validation.js.map +1 -0
  205. package/dist/modules/agents/integrations/esm-loader.d.ts +5 -0
  206. package/dist/modules/agents/integrations/esm-loader.js +24 -0
  207. package/dist/modules/agents/integrations/esm-loader.js.map +1 -0
  208. package/dist/modules/agents/integrations/integrations-sync.d.ts +4 -0
  209. package/dist/modules/agents/integrations/integrations-sync.js +78 -0
  210. package/dist/modules/agents/integrations/integrations-sync.js.map +1 -0
  211. package/dist/modules/agents/integrations/n8n-checkpoint-storage.d.ts +36 -0
  212. package/dist/modules/agents/integrations/n8n-checkpoint-storage.js +148 -0
  213. package/dist/modules/agents/integrations/n8n-checkpoint-storage.js.map +1 -0
  214. package/dist/modules/agents/integrations/n8n-memory.d.ts +76 -0
  215. package/dist/modules/agents/integrations/n8n-memory.js +383 -0
  216. package/dist/modules/agents/integrations/n8n-memory.js.map +1 -0
  217. package/dist/modules/agents/integrations/platforms/linear-integration.d.ts +14 -0
  218. package/dist/modules/agents/integrations/platforms/linear-integration.js +83 -0
  219. package/dist/modules/agents/integrations/platforms/linear-integration.js.map +1 -0
  220. package/dist/modules/agents/integrations/platforms/slack-integration.d.ts +12 -0
  221. package/dist/modules/agents/integrations/platforms/slack-integration.js +81 -0
  222. package/dist/modules/agents/integrations/platforms/slack-integration.js.map +1 -0
  223. package/dist/modules/agents/integrations/platforms/telegram-integration.d.ts +30 -0
  224. package/dist/modules/agents/integrations/platforms/telegram-integration.js +122 -0
  225. package/dist/modules/agents/integrations/platforms/telegram-integration.js.map +1 -0
  226. package/dist/modules/agents/integrations/rich-interaction-tool.d.ts +47 -0
  227. package/dist/modules/agents/integrations/rich-interaction-tool.js +109 -0
  228. package/dist/modules/agents/integrations/rich-interaction-tool.js.map +1 -0
  229. package/dist/modules/agents/integrations/types.d.ts +8 -0
  230. package/dist/modules/agents/integrations/types.js +12 -0
  231. package/dist/modules/agents/integrations/types.js.map +1 -0
  232. package/dist/modules/agents/json-config/agent-config-composition.d.ts +9 -0
  233. package/dist/modules/agents/json-config/agent-config-composition.js +27 -0
  234. package/dist/modules/agents/json-config/agent-config-composition.js.map +1 -0
  235. package/dist/modules/agents/json-config/agent-json-config.d.ts +1022 -0
  236. package/dist/modules/agents/json-config/agent-json-config.js +128 -0
  237. package/dist/modules/agents/json-config/agent-json-config.js.map +1 -0
  238. package/dist/modules/agents/json-config/credential-field-mapping.d.ts +4 -0
  239. package/dist/modules/agents/json-config/credential-field-mapping.js +41 -0
  240. package/dist/modules/agents/json-config/credential-field-mapping.js.map +1 -0
  241. package/dist/modules/agents/json-config/from-json-config.d.ts +18 -0
  242. package/dist/modules/agents/json-config/from-json-config.js +209 -0
  243. package/dist/modules/agents/json-config/from-json-config.js.map +1 -0
  244. package/dist/modules/agents/json-config/integration-config.d.ts +61 -0
  245. package/dist/modules/agents/json-config/integration-config.js +33 -0
  246. package/dist/modules/agents/json-config/integration-config.js.map +1 -0
  247. package/dist/modules/agents/json-config/provider-tool-aliases.d.ts +1 -0
  248. package/dist/modules/agents/json-config/provider-tool-aliases.js +15 -0
  249. package/dist/modules/agents/json-config/provider-tool-aliases.js.map +1 -0
  250. package/dist/modules/agents/json-config/schema-text-serializer.d.ts +2 -0
  251. package/dist/modules/agents/json-config/schema-text-serializer.js +205 -0
  252. package/dist/modules/agents/json-config/schema-text-serializer.js.map +1 -0
  253. package/dist/modules/agents/repositories/agent-checkpoint.repository.d.ts +6 -0
  254. package/dist/modules/agents/repositories/agent-checkpoint.repository.js +35 -0
  255. package/dist/modules/agents/repositories/agent-checkpoint.repository.js.map +1 -0
  256. package/dist/modules/agents/repositories/agent-execution-thread.repository.d.ts +18 -0
  257. package/dist/modules/agents/repositories/agent-execution-thread.repository.js +120 -0
  258. package/dist/modules/agents/repositories/agent-execution-thread.repository.js.map +1 -0
  259. package/dist/modules/agents/repositories/agent-execution.repository.d.ts +10 -0
  260. package/dist/modules/agents/repositories/agent-execution.repository.js +59 -0
  261. package/dist/modules/agents/repositories/agent-execution.repository.js.map +1 -0
  262. package/dist/modules/agents/repositories/agent-message.repository.d.ts +5 -0
  263. package/dist/modules/agents/repositories/agent-message.repository.js +26 -0
  264. package/dist/modules/agents/repositories/agent-message.repository.js.map +1 -0
  265. package/dist/modules/agents/repositories/agent-observation-cursor.repository.d.ts +5 -0
  266. package/dist/modules/agents/repositories/agent-observation-cursor.repository.js +26 -0
  267. package/dist/modules/agents/repositories/agent-observation-cursor.repository.js.map +1 -0
  268. package/dist/modules/agents/repositories/agent-observation-lock.repository.d.ts +5 -0
  269. package/dist/modules/agents/repositories/agent-observation-lock.repository.js +26 -0
  270. package/dist/modules/agents/repositories/agent-observation-lock.repository.js.map +1 -0
  271. package/dist/modules/agents/repositories/agent-observation.repository.d.ts +5 -0
  272. package/dist/modules/agents/repositories/agent-observation.repository.js +26 -0
  273. package/dist/modules/agents/repositories/agent-observation.repository.js.map +1 -0
  274. package/dist/modules/agents/repositories/agent-published-version.repository.d.ts +20 -0
  275. package/dist/modules/agents/repositories/agent-published-version.repository.js +35 -0
  276. package/dist/modules/agents/repositories/agent-published-version.repository.js.map +1 -0
  277. package/dist/modules/agents/repositories/agent-resource.repository.d.ts +5 -0
  278. package/dist/modules/agents/repositories/agent-resource.repository.js +26 -0
  279. package/dist/modules/agents/repositories/agent-resource.repository.js.map +1 -0
  280. package/dist/modules/agents/repositories/agent-thread.repository.d.ts +5 -0
  281. package/dist/modules/agents/repositories/agent-thread.repository.js +26 -0
  282. package/dist/modules/agents/repositories/agent-thread.repository.js.map +1 -0
  283. package/dist/modules/agents/repositories/agent.repository.d.ts +9 -0
  284. package/dist/modules/agents/repositories/agent.repository.js +50 -0
  285. package/dist/modules/agents/repositories/agent.repository.js.map +1 -0
  286. package/dist/modules/agents/runtime/agent-isolate-pool.d.ts +48 -0
  287. package/dist/modules/agents/runtime/agent-isolate-pool.js +246 -0
  288. package/dist/modules/agents/runtime/agent-isolate-pool.js.map +1 -0
  289. package/dist/modules/agents/runtime/agent-secure-runtime.d.ts +21 -0
  290. package/dist/modules/agents/runtime/agent-secure-runtime.js +281 -0
  291. package/dist/modules/agents/runtime/agent-secure-runtime.js.map +1 -0
  292. package/dist/modules/agents/runtime/sandbox-polyfills.d.ts +1 -0
  293. package/dist/modules/agents/runtime/sandbox-polyfills.js +74 -0
  294. package/dist/modules/agents/runtime/sandbox-polyfills.js.map +1 -0
  295. package/dist/modules/agents/tool-registry.d.ts +13 -0
  296. package/dist/modules/agents/tool-registry.js +42 -0
  297. package/dist/modules/agents/tool-registry.js.map +1 -0
  298. package/dist/modules/agents/tools/environment-tool.d.ts +3 -0
  299. package/dist/modules/agents/tools/environment-tool.js +26 -0
  300. package/dist/modules/agents/tools/environment-tool.js.map +1 -0
  301. package/dist/modules/agents/tools/node-tool-factory.d.ts +10 -0
  302. package/dist/modules/agents/tools/node-tool-factory.js +100 -0
  303. package/dist/modules/agents/tools/node-tool-factory.js.map +1 -0
  304. package/dist/modules/agents/tools/workflow-tool-factory.d.ts +43 -0
  305. package/dist/modules/agents/tools/workflow-tool-factory.js +404 -0
  306. package/dist/modules/agents/tools/workflow-tool-factory.js.map +1 -0
  307. package/dist/modules/agents/tracing/builder-telemetry.d.ts +12 -0
  308. package/dist/modules/agents/tracing/builder-telemetry.js +48 -0
  309. package/dist/modules/agents/tracing/builder-telemetry.js.map +1 -0
  310. package/dist/modules/agents/types/components.d.ts +71 -0
  311. package/dist/modules/agents/types/components.js +3 -0
  312. package/dist/modules/agents/types/components.js.map +1 -0
  313. package/dist/modules/agents/types/index.d.ts +1 -0
  314. package/dist/modules/agents/types/index.js +3 -0
  315. package/dist/modules/agents/types/index.js.map +1 -0
  316. package/dist/modules/agents/utils/agent-draft.utils.d.ts +2 -0
  317. package/dist/modules/agents/utils/agent-draft.utils.js +11 -0
  318. package/dist/modules/agents/utils/agent-draft.utils.js.map +1 -0
  319. package/dist/modules/agents/utils/agent-resource-id.d.ts +3 -0
  320. package/dist/modules/agents/utils/agent-resource-id.js +14 -0
  321. package/dist/modules/agents/utils/agent-resource-id.js.map +1 -0
  322. package/dist/modules/chat-hub/chat-hub.module.d.ts +2 -2
  323. package/dist/modules/chat-hub/chat-hub.settings.controller.d.ts +4 -4
  324. package/dist/modules/chat-hub/chat-hub.types.d.ts +2 -2
  325. package/dist/modules/chat-hub/dto/chat-models-request.dto.d.ts +1 -1
  326. package/dist/modules/community-packages/community-packages.config.js +2 -2
  327. package/dist/modules/community-packages/community-packages.config.js.map +1 -1
  328. package/dist/modules/community-packages/community-packages.lifecycle.service.d.ts +4 -1
  329. package/dist/modules/community-packages/community-packages.lifecycle.service.js +14 -2
  330. package/dist/modules/community-packages/community-packages.lifecycle.service.js.map +1 -1
  331. package/dist/modules/community-packages/community-packages.module.d.ts +1 -1
  332. package/dist/modules/community-packages/community-packages.module.js +10 -5
  333. package/dist/modules/community-packages/community-packages.module.js.map +1 -1
  334. package/dist/modules/data-table/data-table.service.js +6 -0
  335. package/dist/modules/data-table/data-table.service.js.map +1 -1
  336. package/dist/modules/dynamic-credentials.ee/credential-resolvers/identifiers/slack-signature-identifier.d.ts +1 -1
  337. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.config.d.ts +2 -0
  338. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.config.js +10 -0
  339. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.config.js.map +1 -1
  340. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.d.ts +1 -1
  341. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js +16 -4
  342. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js.map +1 -1
  343. package/dist/modules/dynamic-credentials.ee/workflow-status.controller.d.ts +3 -3
  344. package/dist/modules/dynamic-credentials.ee/workflow-status.controller.js +11 -3
  345. package/dist/modules/dynamic-credentials.ee/workflow-status.controller.js.map +1 -1
  346. package/dist/modules/encryption-key-manager/encryption-bootstrap.service.js +4 -2
  347. package/dist/modules/encryption-key-manager/encryption-bootstrap.service.js.map +1 -1
  348. package/dist/modules/encryption-key-manager/encryption-key-manager.module.js +5 -2
  349. package/dist/modules/encryption-key-manager/encryption-key-manager.module.js.map +1 -1
  350. package/dist/modules/encryption-key-manager/encryption-key.controller.d.ts +3 -3
  351. package/dist/modules/encryption-key-manager/encryption-key.controller.js +8 -2
  352. package/dist/modules/encryption-key-manager/encryption-key.controller.js.map +1 -1
  353. package/dist/modules/encryption-key-manager/key-manager.service.d.ts +5 -1
  354. package/dist/modules/encryption-key-manager/key-manager.service.js +11 -4
  355. package/dist/modules/encryption-key-manager/key-manager.service.js.map +1 -1
  356. package/dist/modules/insights/insights-collection.service.js +1 -0
  357. package/dist/modules/insights/insights-collection.service.js.map +1 -1
  358. package/dist/modules/instance-ai/eval/mock-handler.js +17 -49
  359. package/dist/modules/instance-ai/eval/mock-handler.js.map +1 -1
  360. package/dist/modules/instance-ai/filesystem/local-gateway-registry.d.ts +1 -0
  361. package/dist/modules/instance-ai/filesystem/local-gateway-registry.js +21 -3
  362. package/dist/modules/instance-ai/filesystem/local-gateway-registry.js.map +1 -1
  363. package/dist/modules/instance-ai/instance-ai-settings.service.d.ts +3 -2
  364. package/dist/modules/instance-ai/instance-ai-settings.service.js +10 -9
  365. package/dist/modules/instance-ai/instance-ai-settings.service.js.map +1 -1
  366. package/dist/modules/instance-ai/instance-ai-test.controller.d.ts +21 -2
  367. package/dist/modules/instance-ai/instance-ai-test.controller.js +35 -3
  368. package/dist/modules/instance-ai/instance-ai-test.controller.js.map +1 -1
  369. package/dist/modules/instance-ai/instance-ai.adapter.service.js +72 -42
  370. package/dist/modules/instance-ai/instance-ai.adapter.service.js.map +1 -1
  371. package/dist/modules/instance-ai/instance-ai.controller.d.ts +2 -0
  372. package/dist/modules/instance-ai/instance-ai.controller.js +25 -1
  373. package/dist/modules/instance-ai/instance-ai.controller.js.map +1 -1
  374. package/dist/modules/instance-ai/instance-ai.module.d.ts +0 -1
  375. package/dist/modules/instance-ai/instance-ai.module.js +0 -2
  376. package/dist/modules/instance-ai/instance-ai.module.js.map +1 -1
  377. package/dist/modules/instance-ai/instance-ai.service.d.ts +34 -5
  378. package/dist/modules/instance-ai/instance-ai.service.js +723 -76
  379. package/dist/modules/instance-ai/instance-ai.service.js.map +1 -1
  380. package/dist/modules/instance-ai/liveness/index.d.ts +1 -0
  381. package/dist/modules/instance-ai/liveness/index.js +7 -0
  382. package/dist/modules/instance-ai/liveness/index.js.map +1 -0
  383. package/dist/modules/instance-ai/liveness/instance-ai-liveness.service.d.ts +72 -0
  384. package/dist/modules/instance-ai/liveness/instance-ai-liveness.service.js +123 -0
  385. package/dist/modules/instance-ai/liveness/instance-ai-liveness.service.js.map +1 -0
  386. package/dist/modules/instance-ai/message-parser.js +85 -6
  387. package/dist/modules/instance-ai/message-parser.js.map +1 -1
  388. package/dist/modules/instance-ai/storage/db-snapshot-storage.js +4 -0
  389. package/dist/modules/instance-ai/storage/db-snapshot-storage.js.map +1 -1
  390. package/dist/modules/instance-ai/storage/typeorm-memory-storage.js +1 -0
  391. package/dist/modules/instance-ai/storage/typeorm-memory-storage.js.map +1 -1
  392. package/dist/modules/instance-ai/web-research/fetch-and-extract.js +23 -7
  393. package/dist/modules/instance-ai/web-research/fetch-and-extract.js.map +1 -1
  394. package/dist/modules/mcp/mcp.service.d.ts +3 -3
  395. package/dist/modules/mcp/mcp.service.js +12 -9
  396. package/dist/modules/mcp/mcp.service.js.map +1 -1
  397. package/dist/modules/mcp/tools/get-execution.tool.js +6 -4
  398. package/dist/modules/mcp/tools/get-execution.tool.js.map +1 -1
  399. package/dist/modules/mcp/tools/list-credentials.tool.d.ts +40 -0
  400. package/dist/modules/mcp/tools/list-credentials.tool.js +148 -0
  401. package/dist/modules/mcp/tools/list-credentials.tool.js.map +1 -0
  402. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js +5 -4
  403. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js.map +1 -1
  404. package/dist/modules/mcp/tools/workflow-builder/get-suggested-workflow-nodes.tool.d.ts +2 -2
  405. package/dist/modules/mcp/tools/workflow-builder/get-suggested-workflow-nodes.tool.js +3 -3
  406. package/dist/modules/mcp/tools/workflow-builder/get-suggested-workflow-nodes.tool.js.map +1 -1
  407. package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.d.ts +2 -2
  408. package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.js +2 -2
  409. package/dist/modules/mcp/tools/workflow-builder/get-workflow-node-types.tool.js.map +1 -1
  410. package/dist/modules/mcp/tools/workflow-builder/get-workflow-sdk-reference.tool.js +3 -2
  411. package/dist/modules/mcp/tools/workflow-builder/get-workflow-sdk-reference.tool.js.map +1 -1
  412. package/dist/modules/mcp/tools/workflow-builder/mcp-instructions.js +3 -3
  413. package/dist/modules/mcp/tools/workflow-builder/mcp-instructions.js.map +1 -1
  414. package/dist/modules/mcp/tools/workflow-builder/sdk-reference-content.d.ts +1 -1
  415. package/dist/modules/mcp/tools/workflow-builder/sdk-reference-content.js +12 -4
  416. package/dist/modules/mcp/tools/workflow-builder/sdk-reference-content.js.map +1 -1
  417. package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.d.ts +2 -2
  418. package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.js +12 -5
  419. package/dist/modules/mcp/tools/workflow-builder/search-workflow-nodes.tool.js.map +1 -1
  420. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js +1 -2
  421. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js.map +1 -1
  422. package/dist/modules/mcp/tools/workflow-builder/validate-workflow-code.tool.js +1 -1
  423. package/dist/modules/mcp/tools/workflow-builder/validate-workflow-code.tool.js.map +1 -1
  424. package/dist/modules/mcp/tools/workflow-validation.utils.d.ts +5 -1
  425. package/dist/modules/mcp/tools/workflow-validation.utils.js +4 -2
  426. package/dist/modules/mcp/tools/workflow-validation.utils.js.map +1 -1
  427. package/dist/modules/mcp-registry/mcp-registry-node-loader.d.ts +27 -0
  428. package/dist/modules/mcp-registry/mcp-registry-node-loader.js +105 -0
  429. package/dist/modules/mcp-registry/mcp-registry-node-loader.js.map +1 -0
  430. package/dist/modules/mcp-registry/mcp-registry-node-loader.test.d.ts +1 -0
  431. package/dist/modules/mcp-registry/mcp-registry-node-loader.test.js +244 -0
  432. package/dist/modules/mcp-registry/mcp-registry-node-loader.test.js.map +1 -0
  433. package/dist/modules/mcp-registry/mcp-registry.module.d.ts +4 -0
  434. package/dist/modules/mcp-registry/mcp-registry.module.js +60 -0
  435. package/dist/modules/mcp-registry/mcp-registry.module.js.map +1 -0
  436. package/dist/modules/mcp-registry/node-description-transform.d.ts +8 -0
  437. package/dist/modules/mcp-registry/node-description-transform.js +133 -0
  438. package/dist/modules/mcp-registry/node-description-transform.js.map +1 -0
  439. package/dist/modules/mcp-registry/node-description-transform.test.d.ts +1 -0
  440. package/dist/modules/mcp-registry/node-description-transform.test.js +286 -0
  441. package/dist/modules/mcp-registry/node-description-transform.test.js.map +1 -0
  442. package/dist/modules/mcp-registry/registry/mcp-registry.service.d.ts +8 -0
  443. package/dist/modules/mcp-registry/registry/mcp-registry.service.js +31 -0
  444. package/dist/modules/mcp-registry/registry/mcp-registry.service.js.map +1 -0
  445. package/dist/modules/mcp-registry/registry/mcp-registry.service.test.d.ts +1 -0
  446. package/dist/modules/mcp-registry/registry/mcp-registry.service.test.js +41 -0
  447. package/dist/modules/mcp-registry/registry/mcp-registry.service.test.js.map +1 -0
  448. package/dist/modules/mcp-registry/registry/mcp-registry.types.d.ts +36 -0
  449. package/dist/modules/mcp-registry/registry/mcp-registry.types.js +3 -0
  450. package/dist/modules/mcp-registry/registry/mcp-registry.types.js.map +1 -0
  451. package/dist/modules/mcp-registry/registry/mock-servers.d.ts +3 -0
  452. package/dist/modules/mcp-registry/registry/mock-servers.js +80 -0
  453. package/dist/modules/mcp-registry/registry/mock-servers.js.map +1 -0
  454. package/dist/modules/otel/execution-level-tracer.d.ts +1 -1
  455. package/dist/modules/otel/execution-level-tracer.js +24 -9
  456. package/dist/modules/otel/execution-level-tracer.js.map +1 -1
  457. package/dist/modules/otel/execution-level-tracer.types.d.ts +9 -7
  458. package/dist/modules/otel/execution-level-tracer.types.js +14 -0
  459. package/dist/modules/otel/execution-level-tracer.types.js.map +1 -1
  460. package/dist/modules/quick-connect/quick-connect.config.d.ts +176 -0
  461. package/dist/modules/quick-connect/quick-connect.config.js +8 -0
  462. package/dist/modules/quick-connect/quick-connect.config.js.map +1 -1
  463. package/dist/modules/quick-connect/quick-connect.module.d.ts +15 -0
  464. package/dist/modules/redaction/executions/execution-redaction.service.d.ts +1 -3
  465. package/dist/modules/redaction/executions/execution-redaction.service.js +2 -6
  466. package/dist/modules/redaction/executions/execution-redaction.service.js.map +1 -1
  467. package/dist/modules/source-control.ee/source-control.controller.ee.d.ts +2 -2
  468. package/dist/modules/source-control.ee/source-control.service.ee.d.ts +1 -1
  469. package/dist/modules/sso-oidc/oidc.controller.ee.d.ts +3 -1
  470. package/dist/modules/sso-oidc/oidc.controller.ee.js +8 -1
  471. package/dist/modules/sso-oidc/oidc.controller.ee.js.map +1 -1
  472. package/dist/node-catalog/index.d.ts +1 -0
  473. package/dist/node-catalog/index.js +6 -0
  474. package/dist/node-catalog/index.js.map +1 -0
  475. package/dist/{modules/mcp/tools/workflow-builder/workflow-builder-tools.service.d.ts → node-catalog/node-catalog.service.d.ts} +9 -15
  476. package/dist/{modules/mcp/tools/workflow-builder/workflow-builder-tools.service.js → node-catalog/node-catalog.service.js} +38 -28
  477. package/dist/node-catalog/node-catalog.service.js.map +1 -0
  478. package/dist/node-execution/ephemeral-node-executor.d.ts +47 -0
  479. package/dist/node-execution/ephemeral-node-executor.js +289 -0
  480. package/dist/node-execution/ephemeral-node-executor.js.map +1 -0
  481. package/dist/node-execution/index.d.ts +2 -0
  482. package/dist/node-execution/index.js +8 -0
  483. package/dist/node-execution/index.js.map +1 -0
  484. package/dist/public-api/v1/handlers/audit/audit.handler.d.ts +5 -4
  485. package/dist/public-api/v1/handlers/audit/audit.handler.js +5 -9
  486. package/dist/public-api/v1/handlers/audit/audit.handler.js.map +1 -1
  487. package/dist/public-api/v1/handlers/community-packages/community-packages.handler.d.ts +20 -17
  488. package/dist/public-api/v1/handlers/community-packages/community-packages.handler.js +12 -39
  489. package/dist/public-api/v1/handlers/community-packages/community-packages.handler.js.map +1 -1
  490. package/dist/public-api/v1/handlers/credentials/credentials.handler.d.ts +12 -49
  491. package/dist/public-api/v1/handlers/credentials/credentials.handler.js +6 -5
  492. package/dist/public-api/v1/handlers/credentials/credentials.handler.js.map +1 -1
  493. package/dist/public-api/v1/handlers/data-tables/data-tables.columns.handler.d.ts +8 -19
  494. package/dist/public-api/v1/handlers/data-tables/data-tables.columns.handler.js +11 -11
  495. package/dist/public-api/v1/handlers/data-tables/data-tables.columns.handler.js.map +1 -1
  496. package/dist/public-api/v1/handlers/data-tables/data-tables.handler.d.ts +9 -17
  497. package/dist/public-api/v1/handlers/data-tables/data-tables.handler.js +19 -23
  498. package/dist/public-api/v1/handlers/data-tables/data-tables.handler.js.map +1 -1
  499. package/dist/public-api/v1/handlers/data-tables/data-tables.rows.handler.d.ts +9 -23
  500. package/dist/public-api/v1/handlers/data-tables/data-tables.rows.handler.js +17 -27
  501. package/dist/public-api/v1/handlers/data-tables/data-tables.rows.handler.js.map +1 -1
  502. package/dist/public-api/v1/handlers/discover/discover.handler.d.ts +11 -9
  503. package/dist/public-api/v1/handlers/discover/discover.handler.js +5 -3
  504. package/dist/public-api/v1/handlers/discover/discover.handler.js.map +1 -1
  505. package/dist/public-api/v1/handlers/executions/executions.handler.d.ts +12 -11
  506. package/dist/public-api/v1/handlers/executions/executions.handler.js +46 -80
  507. package/dist/public-api/v1/handlers/executions/executions.handler.js.map +1 -1
  508. package/dist/public-api/v1/handlers/folders/folders.handler.d.ts +12 -17
  509. package/dist/public-api/v1/handlers/folders/folders.handler.js +17 -20
  510. package/dist/public-api/v1/handlers/folders/folders.handler.js.map +1 -1
  511. package/dist/public-api/v1/handlers/insights/insights.handler.d.ts +5 -4
  512. package/dist/public-api/v1/handlers/insights/insights.handler.js +9 -5
  513. package/dist/public-api/v1/handlers/insights/insights.handler.js.map +1 -1
  514. package/dist/public-api/v1/handlers/projects/projects.handler.d.ts +28 -11
  515. package/dist/public-api/v1/handlers/projects/projects.handler.js +44 -75
  516. package/dist/public-api/v1/handlers/projects/projects.handler.js.map +1 -1
  517. package/dist/public-api/v1/handlers/source-control/source-control.handler.d.ts +5 -6
  518. package/dist/public-api/v1/handlers/source-control/source-control.handler.js +3 -2
  519. package/dist/public-api/v1/handlers/source-control/source-control.handler.js.map +1 -1
  520. package/dist/public-api/v1/handlers/tags/tags.handler.d.ts +9 -8
  521. package/dist/public-api/v1/handlers/tags/tags.handler.js +11 -8
  522. package/dist/public-api/v1/handlers/tags/tags.handler.js.map +1 -1
  523. package/dist/public-api/v1/handlers/users/users.handler.ee.d.ts +14 -11
  524. package/dist/public-api/v1/handlers/users/users.handler.ee.js +7 -8
  525. package/dist/public-api/v1/handlers/users/users.handler.ee.js.map +1 -1
  526. package/dist/public-api/v1/handlers/variables/variables.handler.d.ts +13 -7
  527. package/dist/public-api/v1/handlers/variables/variables.handler.js +5 -3
  528. package/dist/public-api/v1/handlers/variables/variables.handler.js.map +1 -1
  529. package/dist/public-api/v1/handlers/workflows/workflows.handler.d.ts +17 -49
  530. package/dist/public-api/v1/handlers/workflows/workflows.handler.js +27 -46
  531. package/dist/public-api/v1/handlers/workflows/workflows.handler.js.map +1 -1
  532. package/dist/public-api/v1/shared/handler.types.d.ts +7 -1
  533. package/dist/public-api/v1/shared/middlewares/global.middleware.d.ts +1 -2
  534. package/dist/public-api/v1/shared/middlewares/global.middleware.js +7 -6
  535. package/dist/public-api/v1/shared/middlewares/global.middleware.js.map +1 -1
  536. package/dist/scaling/constants.d.ts +2 -2
  537. package/dist/scaling/job-processor.js +2 -0
  538. package/dist/scaling/job-processor.js.map +1 -1
  539. package/dist/scaling/pubsub/pubsub.event-map.d.ts +9 -0
  540. package/dist/scaling/pubsub/pubsub.types.d.ts +3 -1
  541. package/dist/scaling/scaling.types.d.ts +1 -0
  542. package/dist/server.d.ts +2 -0
  543. package/dist/server.js +2 -0
  544. package/dist/server.js.map +1 -1
  545. package/dist/services/frontend.service.js +7 -14
  546. package/dist/services/frontend.service.js.map +1 -1
  547. package/dist/services/import.service.d.ts +9 -3
  548. package/dist/services/import.service.js +72 -5
  549. package/dist/services/import.service.js.map +1 -1
  550. package/dist/services/proxy-token-manager.js.map +1 -0
  551. package/dist/services/workflow-statistics.service.js +1 -0
  552. package/dist/services/workflow-statistics.service.js.map +1 -1
  553. package/dist/task-runners/task-broker/task-broker.service.d.ts +2 -0
  554. package/dist/task-runners/task-broker/task-broker.service.js +13 -1
  555. package/dist/task-runners/task-broker/task-broker.service.js.map +1 -1
  556. package/dist/utils/ttl-map.d.ts +17 -0
  557. package/dist/utils/ttl-map.js +80 -0
  558. package/dist/utils/ttl-map.js.map +1 -0
  559. package/dist/webhooks/test-webhooks.d.ts +3 -1
  560. package/dist/webhooks/test-webhooks.js +11 -3
  561. package/dist/webhooks/test-webhooks.js.map +1 -1
  562. package/dist/workflow-execute-additional-data.d.ts +2 -1
  563. package/dist/workflow-execute-additional-data.js +34 -0
  564. package/dist/workflow-execute-additional-data.js.map +1 -1
  565. package/dist/workflow-helpers.d.ts +1 -0
  566. package/dist/workflow-helpers.js +15 -0
  567. package/dist/workflow-helpers.js.map +1 -1
  568. package/dist/workflow-runner.js +2 -0
  569. package/dist/workflow-runner.js.map +1 -1
  570. package/dist/workflows/workflow-creation.service.js +1 -0
  571. package/dist/workflows/workflow-creation.service.js.map +1 -1
  572. package/dist/workflows/workflow.service.js +4 -0
  573. package/dist/workflows/workflow.service.js.map +1 -1
  574. package/package.json +40 -25
  575. package/dist/instance-settings-loader/loaders/sso.instance-settings-loader.js +0 -203
  576. package/dist/instance-settings-loader/loaders/sso.instance-settings-loader.js.map +0 -1
  577. package/dist/modules/instance-ai/proxy-token-manager.js.map +0 -1
  578. package/dist/modules/mcp/tools/workflow-builder/workflow-builder-tools.service.js.map +0 -1
  579. /package/dist/{modules/instance-ai → services}/proxy-token-manager.d.ts +0 -0
  580. /package/dist/{modules/instance-ai → services}/proxy-token-manager.js +0 -0
@@ -0,0 +1,404 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.detectTriggerNode = detectTriggerNode;
4
+ exports.validateCompatibility = validateCompatibility;
5
+ exports.normalizeTriggerInput = normalizeTriggerInput;
6
+ exports.inferInputSchema = inferInputSchema;
7
+ exports.executeWorkflow = executeWorkflow;
8
+ exports.extractResult = extractResult;
9
+ exports.resolveWorkflowTool = resolveWorkflowTool;
10
+ const agents_1 = require("@n8n/agents");
11
+ const api_types_1 = require("@n8n/api-types");
12
+ const n8n_workflow_1 = require("n8n-workflow");
13
+ const zod_1 = require("zod");
14
+ const agent_config_composition_1 = require("../json-config/agent-config-composition");
15
+ const SUPPORTED_TRIGGERS = {
16
+ [n8n_workflow_1.MANUAL_TRIGGER_NODE_TYPE]: 'manual',
17
+ [n8n_workflow_1.EXECUTE_WORKFLOW_TRIGGER_NODE_TYPE]: 'executeWorkflow',
18
+ [n8n_workflow_1.CHAT_TRIGGER_NODE_TYPE]: 'chat',
19
+ [n8n_workflow_1.SCHEDULE_TRIGGER_NODE_TYPE]: 'schedule',
20
+ [n8n_workflow_1.FORM_TRIGGER_NODE_TYPE]: 'form',
21
+ };
22
+ const _assertSupportedTriggersInSync = SUPPORTED_TRIGGERS;
23
+ void _assertSupportedTriggersInSync;
24
+ const INCOMPATIBLE_NODE_TYPES = new Set(api_types_1.INCOMPATIBLE_WORKFLOW_TOOL_BODY_NODE_TYPES);
25
+ const DEFAULT_TIMEOUT_MS = 120_000;
26
+ const MAX_RESULT_CHARS = 20_000;
27
+ const MAX_NODE_OUTPUT_BYTES = 5_000;
28
+ function detectTriggerNode(workflow) {
29
+ const nodes = workflow.nodes ?? [];
30
+ for (const node of nodes) {
31
+ const triggerType = SUPPORTED_TRIGGERS[node.type];
32
+ if (triggerType) {
33
+ return { node, triggerType };
34
+ }
35
+ }
36
+ throw new Error(`Workflow "${workflow.name}" has no supported trigger node. ` +
37
+ `Supported triggers: ${Object.keys(SUPPORTED_TRIGGERS).join(', ')}`);
38
+ }
39
+ function validateCompatibility(workflow) {
40
+ const nodes = workflow.nodes ?? [];
41
+ const incompatible = nodes.filter((n) => INCOMPATIBLE_NODE_TYPES.has(n.type));
42
+ if (incompatible.length > 0) {
43
+ const names = incompatible.map((n) => `${n.name} (${n.type})`).join(', ');
44
+ throw new Error(`Workflow "${workflow.name}" contains incompatible nodes for agent execution: ${names}`);
45
+ }
46
+ }
47
+ function normalizeTriggerInput(triggerNode, triggerType, inputData) {
48
+ switch (triggerType) {
49
+ case 'chat':
50
+ return {
51
+ [triggerNode.name]: [
52
+ {
53
+ json: {
54
+ sessionId: `agent-${Date.now()}`,
55
+ action: 'sendMessage',
56
+ chatInput: typeof inputData.message === 'string'
57
+ ? inputData.message
58
+ : JSON.stringify(inputData),
59
+ },
60
+ },
61
+ ],
62
+ };
63
+ case 'schedule': {
64
+ const now = new Date();
65
+ return {
66
+ [triggerNode.name]: [
67
+ {
68
+ json: {
69
+ timestamp: now.toISOString(),
70
+ 'Readable date': now.toLocaleString(),
71
+ 'Day of week': now.toLocaleDateString('en-US', { weekday: 'long' }),
72
+ Year: String(now.getFullYear()),
73
+ Month: now.toLocaleDateString('en-US', { month: 'long' }),
74
+ 'Day of month': String(now.getDate()).padStart(2, '0'),
75
+ Hour: String(now.getHours()).padStart(2, '0'),
76
+ Minute: String(now.getMinutes()).padStart(2, '0'),
77
+ Second: String(now.getSeconds()).padStart(2, '0'),
78
+ },
79
+ },
80
+ ],
81
+ };
82
+ }
83
+ default:
84
+ return {
85
+ [triggerNode.name]: [{ json: inputData }],
86
+ };
87
+ }
88
+ }
89
+ function fieldTypeToZod(type, label) {
90
+ switch (type) {
91
+ case 'number':
92
+ return zod_1.z.number().describe(label);
93
+ case 'boolean':
94
+ return zod_1.z.boolean().describe(label);
95
+ default:
96
+ return zod_1.z.string().describe(label);
97
+ }
98
+ }
99
+ function schemaFromWorkflowInputs(triggerNode) {
100
+ const params = triggerNode.parameters ?? {};
101
+ const workflowInputs = params.workflowInputs;
102
+ if (!workflowInputs?.values?.length)
103
+ return null;
104
+ const shape = {};
105
+ for (const field of workflowInputs.values) {
106
+ if (!field.name)
107
+ continue;
108
+ shape[field.name] = fieldTypeToZod(field.type, field.name);
109
+ }
110
+ return Object.keys(shape).length > 0 ? zod_1.z.object(shape) : null;
111
+ }
112
+ function schemaFromJsonExample(triggerNode) {
113
+ const jsonExample = triggerNode.parameters?.jsonExample;
114
+ if (!jsonExample)
115
+ return null;
116
+ let parsed;
117
+ try {
118
+ parsed = JSON.parse(jsonExample);
119
+ }
120
+ catch {
121
+ return null;
122
+ }
123
+ if (typeof parsed !== 'object' || parsed === null)
124
+ return null;
125
+ const shape = {};
126
+ for (const [key, value] of Object.entries(parsed)) {
127
+ shape[key] = fieldTypeToZod(typeof value, key);
128
+ }
129
+ return Object.keys(shape).length > 0 ? zod_1.z.object(shape) : null;
130
+ }
131
+ function inferInputSchema(triggerNode, triggerType) {
132
+ switch (triggerType) {
133
+ case 'chat':
134
+ return zod_1.z.object({ message: zod_1.z.string() });
135
+ case 'manual':
136
+ return zod_1.z.object({ input: zod_1.z.string().optional() });
137
+ case 'schedule':
138
+ return zod_1.z.object({});
139
+ case 'form':
140
+ return zod_1.z.object({
141
+ reason: zod_1.z.string().optional().describe('Why the user should fill out this form'),
142
+ });
143
+ case 'executeWorkflow':
144
+ return (schemaFromWorkflowInputs(triggerNode) ??
145
+ schemaFromJsonExample(triggerNode) ??
146
+ zod_1.z.object({}).catchall(zod_1.z.unknown()));
147
+ default:
148
+ return zod_1.z.object({}).catchall(zod_1.z.unknown());
149
+ }
150
+ }
151
+ async function executeWorkflow(workflow, triggerNode, triggerType, inputData, context, allOutputs = false) {
152
+ const { workflowRunner, activeExecutions, executionRepository } = context;
153
+ const triggerPinData = normalizeTriggerInput(triggerNode, triggerType, inputData);
154
+ const workflowPinData = workflow.pinData ?? {};
155
+ const mergedPinData = { ...workflowPinData, ...triggerPinData };
156
+ const executionMode = triggerType === 'chat' ? 'chat' : triggerType === 'schedule' ? 'trigger' : 'manual';
157
+ const runData = {
158
+ executionMode,
159
+ workflowData: workflow,
160
+ userId: context.userId,
161
+ startNodes: [{ name: triggerNode.name, sourceData: null }],
162
+ pinData: mergedPinData,
163
+ executionData: (0, n8n_workflow_1.createRunExecutionData)({
164
+ startData: {},
165
+ resultData: { pinData: mergedPinData, runData: {} },
166
+ executionData: {
167
+ contextData: {},
168
+ metadata: {},
169
+ nodeExecutionStack: [
170
+ {
171
+ node: triggerNode,
172
+ data: { main: [triggerPinData[triggerNode.name]] },
173
+ source: null,
174
+ },
175
+ ],
176
+ waitingExecution: {},
177
+ waitingExecutionSource: {},
178
+ },
179
+ }),
180
+ };
181
+ const executionId = await workflowRunner.run(runData);
182
+ const timeoutMs = DEFAULT_TIMEOUT_MS;
183
+ if (activeExecutions.has(executionId)) {
184
+ let timeoutId;
185
+ const timeoutPromise = new Promise((_, reject) => {
186
+ timeoutId = setTimeout(() => {
187
+ reject(new Error(`Execution timed out after ${timeoutMs}ms`));
188
+ }, timeoutMs);
189
+ });
190
+ try {
191
+ await Promise.race([activeExecutions.getPostExecutePromise(executionId), timeoutPromise]);
192
+ clearTimeout(timeoutId);
193
+ }
194
+ catch (error) {
195
+ clearTimeout(timeoutId);
196
+ if (error instanceof Error && error.message.includes('timed out')) {
197
+ try {
198
+ activeExecutions.stopExecution(executionId, new n8n_workflow_1.TimeoutExecutionCancelledError(executionId));
199
+ }
200
+ catch {
201
+ }
202
+ return {
203
+ executionId,
204
+ status: 'error',
205
+ error: `Execution timed out after ${timeoutMs}ms and was cancelled`,
206
+ };
207
+ }
208
+ throw error;
209
+ }
210
+ }
211
+ return await extractResult(executionRepository, executionId, allOutputs);
212
+ }
213
+ function normaliseExecutionStatus(status) {
214
+ if (status === 'error' || status === 'crashed')
215
+ return 'error';
216
+ if (status === 'running' || status === 'new')
217
+ return 'running';
218
+ if (status === 'waiting')
219
+ return 'waiting';
220
+ return 'success';
221
+ }
222
+ function outputItemsFromNodeRuns(nodeRuns) {
223
+ const lastRun = nodeRuns[nodeRuns.length - 1];
224
+ if (!lastRun?.data?.main)
225
+ return [];
226
+ return lastRun.data.main
227
+ .flat()
228
+ .filter((item) => item !== null && item !== undefined)
229
+ .map((item) => item.json);
230
+ }
231
+ function collectResultData(runData, allOutputs) {
232
+ const resultData = {};
233
+ if (allOutputs) {
234
+ for (const [nodeName, nodeRuns] of Object.entries(runData)) {
235
+ const outputItems = outputItemsFromNodeRuns(nodeRuns);
236
+ if (outputItems.length > 0) {
237
+ resultData[nodeName] = truncateNodeOutput(outputItems);
238
+ }
239
+ }
240
+ return resultData;
241
+ }
242
+ const nodeNames = Object.keys(runData);
243
+ const lastNodeName = nodeNames[nodeNames.length - 1];
244
+ if (lastNodeName) {
245
+ const outputItems = outputItemsFromNodeRuns(runData[lastNodeName]);
246
+ if (outputItems.length > 0) {
247
+ resultData[lastNodeName] = truncateNodeOutput(outputItems);
248
+ }
249
+ }
250
+ return resultData;
251
+ }
252
+ async function extractResult(executionRepository, executionId, allOutputs) {
253
+ const execution = await executionRepository.findSingleExecution(executionId, {
254
+ includeData: true,
255
+ unflattenData: true,
256
+ });
257
+ if (!execution) {
258
+ return { executionId, status: 'unknown' };
259
+ }
260
+ const runData = execution.data?.resultData?.runData;
261
+ const resultData = runData
262
+ ? collectResultData(runData, allOutputs)
263
+ : {};
264
+ return {
265
+ executionId,
266
+ status: normaliseExecutionStatus(execution.status),
267
+ data: Object.keys(resultData).length > 0 ? truncateResultData(resultData) : undefined,
268
+ error: execution.data?.resultData?.error?.message,
269
+ };
270
+ }
271
+ function truncateNodeOutput(items) {
272
+ const serialized = JSON.stringify(items);
273
+ if (serialized.length <= MAX_NODE_OUTPUT_BYTES)
274
+ return items;
275
+ const truncated = [];
276
+ let size = 2;
277
+ for (const item of items) {
278
+ const itemStr = JSON.stringify(item);
279
+ if (size + itemStr.length + 2 > MAX_NODE_OUTPUT_BYTES)
280
+ break;
281
+ truncated.push(item);
282
+ size += itemStr.length + 1;
283
+ }
284
+ return {
285
+ items: truncated,
286
+ truncated: true,
287
+ totalItems: items.length,
288
+ shownItems: truncated.length,
289
+ message: `Output truncated: showing ${truncated.length} of ${items.length} items.`,
290
+ };
291
+ }
292
+ function truncateResultData(data) {
293
+ const serialized = JSON.stringify(data);
294
+ if (serialized.length <= MAX_RESULT_CHARS)
295
+ return data;
296
+ const truncated = {};
297
+ for (const [nodeName, rawItems] of Object.entries(data)) {
298
+ if (!Array.isArray(rawItems) || rawItems.length === 0) {
299
+ truncated[nodeName] = rawItems;
300
+ continue;
301
+ }
302
+ const items = rawItems;
303
+ const firstItem = items[0];
304
+ const itemStr = JSON.stringify(firstItem);
305
+ const preview = itemStr.length > 1_000 ? `${itemStr.slice(0, 1_000)}…` : firstItem;
306
+ truncated[nodeName] = {
307
+ _itemCount: items.length,
308
+ _truncated: true,
309
+ _firstItemPreview: preview,
310
+ };
311
+ }
312
+ return truncated;
313
+ }
314
+ async function resolveWorkflowTool(descriptor, context) {
315
+ return await buildWorkflowTool(descriptor, context);
316
+ }
317
+ async function buildWorkflowTool(descriptor, context) {
318
+ const { workflowRepository, workflowFinderService, userRepository } = context;
319
+ const workflowName = descriptor.workflow;
320
+ const whereClause = { name: workflowName };
321
+ if (context.projectId) {
322
+ whereClause.shared = { projectId: context.projectId };
323
+ }
324
+ const candidateWorkflow = await workflowRepository.findOne({
325
+ where: whereClause,
326
+ relations: ['shared'],
327
+ });
328
+ if (!candidateWorkflow) {
329
+ throw new Error(`Workflow "${workflowName}" not found`);
330
+ }
331
+ const user = await userRepository.findOne({ where: { id: context.userId }, relations: ['role'] });
332
+ if (!user) {
333
+ throw new Error(`User "${context.userId}" not found`);
334
+ }
335
+ const workflow = await workflowFinderService.findWorkflowForUser(candidateWorkflow.id, user, [
336
+ 'workflow:execute',
337
+ ]);
338
+ if (!workflow) {
339
+ throw new Error(`Workflow "${workflowName}" not found or user does not have execute access`);
340
+ }
341
+ validateCompatibility(workflow);
342
+ const { node: triggerNode, triggerType } = detectTriggerNode(workflow);
343
+ const toolName = toToolName(descriptor.name ?? workflowName);
344
+ const toolDescription = descriptor.description ?? `Execute the "${workflowName}" workflow`;
345
+ const inputSchema = inferInputSchema(triggerNode, triggerType);
346
+ const allOutputs = descriptor.allOutputs ?? false;
347
+ if (triggerType === 'form') {
348
+ const formPath = triggerNode.parameters?.path ??
349
+ triggerNode.parameters?.options?.path ??
350
+ triggerNode.webhookId ??
351
+ workflow.id;
352
+ const baseUrl = (context.webhookBaseUrl ?? 'http://localhost:5678/').replace(/\/$/, '');
353
+ const formUrl = `${baseUrl}/form/${formPath}`;
354
+ const builder = new agents_1.Tool(toolName)
355
+ .description(toolDescription === `Execute the "${workflowName}" workflow`
356
+ ? `Send the user a link to the "${workflowName}" form. The workflow runs automatically when they submit.`
357
+ : toolDescription)
358
+ .input(inputSchema)
359
+ .toMessage(() => ({
360
+ type: 'custom',
361
+ components: [
362
+ { type: 'section', text: `📋 *<${formUrl}|Click here to open the form>*` },
363
+ ],
364
+ }))
365
+ .handler(async (input) => {
366
+ const reason = input.reason ?? `Please fill out the ${workflowName} form`;
367
+ return { status: 'form_link_sent', formUrl, message: reason };
368
+ });
369
+ const built = builder.build();
370
+ return {
371
+ ...built,
372
+ metadata: {
373
+ kind: 'workflow',
374
+ workflowId: workflow.id,
375
+ workflowName: workflow.name,
376
+ triggerType,
377
+ },
378
+ };
379
+ }
380
+ const builder = new agents_1.Tool(toolName)
381
+ .description(toolDescription)
382
+ .input(inputSchema)
383
+ .output(zod_1.z.object({
384
+ executionId: zod_1.z.string(),
385
+ status: zod_1.z.string(),
386
+ data: zod_1.z.record(zod_1.z.unknown()).optional(),
387
+ error: zod_1.z.string().optional(),
388
+ }))
389
+ .handler(async (input) => {
390
+ return await executeWorkflow(workflow, triggerNode, triggerType, input, context, allOutputs);
391
+ });
392
+ const built = builder.build();
393
+ return {
394
+ ...built,
395
+ metadata: {
396
+ kind: 'workflow',
397
+ workflowId: workflow.id,
398
+ workflowName: workflow.name,
399
+ triggerType,
400
+ },
401
+ };
402
+ }
403
+ const toToolName = agent_config_composition_1.sanitizeToolName;
404
+ //# sourceMappingURL=workflow-tool-factory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflow-tool-factory.js","sourceRoot":"","sources":["../../../../src/modules/agents/tools/workflow-tool-factory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,12 @@
1
+ import { LangSmithTelemetry } from '@n8n/agents';
2
+ import type { ModelConfig } from '@n8n/agents';
3
+ export declare function isLangSmithEnabled(env?: NodeJS.ProcessEnv): boolean;
4
+ export declare function resolveModelIdForTelemetry(modelConfig: ModelConfig): string;
5
+ export interface BuilderTelemetryOptions {
6
+ agentId: string;
7
+ projectId: string;
8
+ userId: string;
9
+ threadId: string;
10
+ model: ModelConfig;
11
+ }
12
+ export declare function buildBuilderTelemetry(options: BuilderTelemetryOptions, env?: NodeJS.ProcessEnv): LangSmithTelemetry | undefined;
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isLangSmithEnabled = isLangSmithEnabled;
4
+ exports.resolveModelIdForTelemetry = resolveModelIdForTelemetry;
5
+ exports.buildBuilderTelemetry = buildBuilderTelemetry;
6
+ const agents_1 = require("@n8n/agents");
7
+ const DEFAULT_PROJECT_NAME = 'agent-builder';
8
+ const UNKNOWN_MODEL_ID = 'unknown';
9
+ function isLangSmithEnabled(env = process.env) {
10
+ const tracingFlag = env.LANGCHAIN_TRACING_V2 ?? env.LANGSMITH_TRACING;
11
+ if (tracingFlag?.toLowerCase() === 'false')
12
+ return false;
13
+ return Boolean(env.LANGSMITH_API_KEY ?? env.LANGCHAIN_API_KEY);
14
+ }
15
+ function resolveModelIdForTelemetry(modelConfig) {
16
+ if (typeof modelConfig === 'string')
17
+ return modelConfig;
18
+ if (typeof modelConfig === 'object' && modelConfig !== null) {
19
+ const record = modelConfig;
20
+ if (typeof record.id === 'string')
21
+ return record.id;
22
+ if (typeof record.modelId === 'string') {
23
+ return typeof record.provider === 'string'
24
+ ? `${record.provider}/${record.modelId}`
25
+ : record.modelId;
26
+ }
27
+ }
28
+ return UNKNOWN_MODEL_ID;
29
+ }
30
+ function buildBuilderTelemetry(options, env = process.env) {
31
+ if (!isLangSmithEnabled(env))
32
+ return undefined;
33
+ const project = env.LANGSMITH_PROJECT ?? env.LANGCHAIN_PROJECT ?? DEFAULT_PROJECT_NAME;
34
+ const endpoint = env.LANGSMITH_ENDPOINT ?? env.LANGCHAIN_ENDPOINT;
35
+ return new agents_1.LangSmithTelemetry({
36
+ project,
37
+ ...(endpoint ? { endpoint } : {}),
38
+ })
39
+ .functionId('agent-builder')
40
+ .metadata({
41
+ agent_id: options.agentId,
42
+ project_id: options.projectId,
43
+ user_id: options.userId,
44
+ thread_id: options.threadId,
45
+ model_id: resolveModelIdForTelemetry(options.model),
46
+ });
47
+ }
48
+ //# sourceMappingURL=builder-telemetry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builder-telemetry.js","sourceRoot":"","sources":["../../../../src/modules/agents/tracing/builder-telemetry.ts"],"names":[],"mappings":";;AAWA,gDAKC;AAOD,gEAcC;AAkBD,sDAqBC;AA5ED,wCAAiD;AAGjD,MAAM,oBAAoB,GAAG,eAAe,CAAC;AAC7C,MAAM,gBAAgB,GAAG,SAAS,CAAC;AAOnC,SAAgB,kBAAkB,CAAC,MAAyB,OAAO,CAAC,GAAG;IACtE,MAAM,WAAW,GAAG,GAAG,CAAC,oBAAoB,IAAI,GAAG,CAAC,iBAAiB,CAAC;IACtE,IAAI,WAAW,EAAE,WAAW,EAAE,KAAK,OAAO;QAAE,OAAO,KAAK,CAAC;IAEzD,OAAO,OAAO,CAAC,GAAG,CAAC,iBAAiB,IAAI,GAAG,CAAC,iBAAiB,CAAC,CAAC;AAChE,CAAC;AAOD,SAAgB,0BAA0B,CAAC,WAAwB;IAClE,IAAI,OAAO,WAAW,KAAK,QAAQ;QAAE,OAAO,WAAW,CAAC;IAExD,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;QAC7D,MAAM,MAAM,GAAG,WAAsC,CAAC;QACtD,IAAI,OAAO,MAAM,CAAC,EAAE,KAAK,QAAQ;YAAE,OAAO,MAAM,CAAC,EAAE,CAAC;QACpD,IAAI,OAAO,MAAM,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;YACxC,OAAO,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ;gBACzC,CAAC,CAAC,GAAG,MAAM,CAAC,QAAQ,IAAI,MAAM,CAAC,OAAO,EAAE;gBACxC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;QACnB,CAAC;IACF,CAAC;IAED,OAAO,gBAAgB,CAAC;AACzB,CAAC;AAkBD,SAAgB,qBAAqB,CACpC,OAAgC,EAChC,MAAyB,OAAO,CAAC,GAAG;IAEpC,IAAI,CAAC,kBAAkB,CAAC,GAAG,CAAC;QAAE,OAAO,SAAS,CAAC;IAE/C,MAAM,OAAO,GAAG,GAAG,CAAC,iBAAiB,IAAI,GAAG,CAAC,iBAAiB,IAAI,oBAAoB,CAAC;IACvF,MAAM,QAAQ,GAAG,GAAG,CAAC,kBAAkB,IAAI,GAAG,CAAC,kBAAkB,CAAC;IAElE,OAAO,IAAI,2BAAkB,CAAC;QAC7B,OAAO;QACP,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;KACjC,CAAC;SACA,UAAU,CAAC,eAAe,CAAC;SAC3B,QAAQ,CAAC;QACT,QAAQ,EAAE,OAAO,CAAC,OAAO;QACzB,UAAU,EAAE,OAAO,CAAC,SAAS;QAC7B,OAAO,EAAE,OAAO,CAAC,MAAM;QACvB,SAAS,EAAE,OAAO,CAAC,QAAQ;QAC3B,QAAQ,EAAE,0BAA0B,CAAC,OAAO,CAAC,KAAK,CAAC;KACnD,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,71 @@
1
+ export type InlineComponent = {
2
+ type: 'button';
3
+ label: string;
4
+ value: string;
5
+ style?: 'primary' | 'danger';
6
+ confirm?: {
7
+ title: string;
8
+ text: string;
9
+ confirm: string;
10
+ deny: string;
11
+ };
12
+ } | {
13
+ type: 'select';
14
+ label: string;
15
+ options: Array<{
16
+ label: string;
17
+ value: string;
18
+ }>;
19
+ } | {
20
+ type: 'section';
21
+ text: string;
22
+ button?: {
23
+ label: string;
24
+ value: string;
25
+ style?: 'primary' | 'danger';
26
+ };
27
+ image?: {
28
+ url: string;
29
+ alt: string;
30
+ };
31
+ } | {
32
+ type: 'divider';
33
+ } | {
34
+ type: 'image';
35
+ url: string;
36
+ alt: string;
37
+ } | {
38
+ type: 'context';
39
+ elements: Array<{
40
+ type: 'text';
41
+ text: string;
42
+ } | {
43
+ type: 'image';
44
+ url: string;
45
+ alt: string;
46
+ }>;
47
+ };
48
+ export type FormComponent = {
49
+ type: 'text-input';
50
+ id: string;
51
+ label: string;
52
+ placeholder?: string;
53
+ multiline?: boolean;
54
+ } | {
55
+ type: 'select-input';
56
+ id: string;
57
+ label: string;
58
+ options: Array<{
59
+ label: string;
60
+ value: string;
61
+ }>;
62
+ };
63
+ export type SuspendComponent = InlineComponent | FormComponent;
64
+ export interface RichSuspendPayload {
65
+ message?: string;
66
+ components: SuspendComponent[];
67
+ formTitle?: string;
68
+ }
69
+ export interface ComponentResumeData {
70
+ values: Record<string, string>;
71
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=components.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../../../src/modules/agents/types/components.ts"],"names":[],"mappings":""}
@@ -0,0 +1 @@
1
+ export type { InlineComponent, FormComponent, SuspendComponent, RichSuspendPayload, ComponentResumeData, } from './components';
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/modules/agents/types/index.ts"],"names":[],"mappings":""}
@@ -0,0 +1,2 @@
1
+ import type { Agent } from '../entities/agent.entity';
2
+ export declare function markAgentDraftDirty(agent: Agent): void;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.markAgentDraftDirty = markAgentDraftDirty;
4
+ const uuid_1 = require("uuid");
5
+ function markAgentDraftDirty(agent) {
6
+ if (agent.versionId !== null &&
7
+ agent.versionId === agent.publishedVersion?.publishedFromVersionId) {
8
+ agent.versionId = (0, uuid_1.v4)();
9
+ }
10
+ }
11
+ //# sourceMappingURL=agent-draft.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-draft.utils.js","sourceRoot":"","sources":["../../../../src/modules/agents/utils/agent-draft.utils.ts"],"names":[],"mappings":";;AASA,kDAOC;AAhBD,+BAAkC;AASlC,SAAgB,mBAAmB,CAAC,KAAY;IAC/C,IACC,KAAK,CAAC,SAAS,KAAK,IAAI;QACxB,KAAK,CAAC,SAAS,KAAK,KAAK,CAAC,gBAAgB,EAAE,sBAAsB,EACjE,CAAC;QACF,KAAK,CAAC,SAAS,GAAG,IAAA,SAAI,GAAE,CAAC;IAC1B,CAAC;AACF,CAAC"}
@@ -0,0 +1,3 @@
1
+ type AgentResourceIdPrefix = 'skill' | 'tool';
2
+ export declare function generateAgentResourceId(prefix: AgentResourceIdPrefix, existingIds?: Iterable<string>): string;
3
+ export {};
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateAgentResourceId = generateAgentResourceId;
4
+ const utils_1 = require("@n8n/utils");
5
+ function generateAgentResourceId(prefix, existingIds = []) {
6
+ const existing = new Set(existingIds);
7
+ for (let attempt = 0; attempt < 10; attempt++) {
8
+ const id = `${prefix}_${(0, utils_1.generateNanoId)()}`;
9
+ if (!existing.has(id))
10
+ return id;
11
+ }
12
+ throw new Error(`Could not generate unique ${prefix} id`);
13
+ }
14
+ //# sourceMappingURL=agent-resource-id.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-resource-id.js","sourceRoot":"","sources":["../../../../src/modules/agents/utils/agent-resource-id.ts"],"names":[],"mappings":";;AAIA,0DAYC;AAhBD,sCAA4C;AAI5C,SAAgB,uBAAuB,CACtC,MAA6B,EAC7B,cAAgC,EAAE;IAElC,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC;IAEtC,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC;QAC/C,MAAM,EAAE,GAAG,GAAG,MAAM,IAAI,IAAA,sBAAc,GAAE,EAAE,CAAC;QAC3C,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAAE,OAAO,EAAE,CAAC;IAClC,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,6BAA6B,MAAM,KAAK,CAAC,CAAC;AAC3D,CAAC"}
@@ -3,8 +3,8 @@ export declare class ChatHubModule implements ModuleInterface {
3
3
  init(): Promise<void>;
4
4
  settings(): Promise<{
5
5
  enabled: boolean;
6
- providers: Record<"openai" | "anthropic" | "google" | "azureOpenAi" | "azureEntraId" | "ollama" | "awsBedrock" | "vercelAiGateway" | "xAiGrok" | "groq" | "openRouter" | "deepSeek" | "cohere" | "mistralCloud", {
7
- provider: "openai" | "anthropic" | "google" | "azureOpenAi" | "azureEntraId" | "ollama" | "awsBedrock" | "vercelAiGateway" | "xAiGrok" | "groq" | "openRouter" | "deepSeek" | "cohere" | "mistralCloud";
6
+ providers: Record<"anthropic" | "openai" | "google" | "groq" | "cohere" | "azureOpenAi" | "azureEntraId" | "ollama" | "awsBedrock" | "vercelAiGateway" | "xAiGrok" | "openRouter" | "deepSeek" | "mistralCloud", {
7
+ provider: "anthropic" | "openai" | "google" | "azureOpenAi" | "azureEntraId" | "ollama" | "awsBedrock" | "vercelAiGateway" | "xAiGrok" | "groq" | "openRouter" | "deepSeek" | "cohere" | "mistralCloud";
8
8
  credentialId: string | null;
9
9
  allowedModels: {
10
10
  model: string;