n8n 2.30.3 → 2.31.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 (532) hide show
  1. package/dist/agent-library-bundle.js +9 -0
  2. package/dist/blob-storage/azure-byte-store.ee.d.ts +1 -1
  3. package/dist/blob-storage/azure-byte-store.ee.js +3 -18
  4. package/dist/blob-storage/azure-byte-store.ee.js.map +1 -1
  5. package/dist/blob-storage/json-store.js +3 -0
  6. package/dist/blob-storage/json-store.js.map +1 -1
  7. package/dist/blob-storage/s3-byte-store.ee.d.ts +1 -1
  8. package/dist/blob-storage/s3-byte-store.ee.js +2 -17
  9. package/dist/blob-storage/s3-byte-store.ee.js.map +1 -1
  10. package/dist/build.tsbuildinfo +1 -1
  11. package/dist/commands/base-command.d.ts +2 -2
  12. package/dist/commands/base-command.js +5 -5
  13. package/dist/commands/base-command.js.map +1 -1
  14. package/dist/commands/start.js +2 -0
  15. package/dist/commands/start.js.map +1 -1
  16. package/dist/constants/workflow-reviews.d.ts +4 -0
  17. package/dist/constants/workflow-reviews.js +14 -0
  18. package/dist/constants/workflow-reviews.js.map +1 -0
  19. package/dist/constants.js +2 -0
  20. package/dist/constants.js.map +1 -1
  21. package/dist/controllers/e2e.controller.js +1 -0
  22. package/dist/controllers/e2e.controller.js.map +1 -1
  23. package/dist/controllers/security-settings.controller.d.ts +15 -10
  24. package/dist/controllers/security-settings.controller.js +41 -65
  25. package/dist/controllers/security-settings.controller.js.map +1 -1
  26. package/dist/controllers/users.controller.d.ts +2 -2
  27. package/dist/credentials/credential-connection-status-provider.interface.d.ts +2 -1
  28. package/dist/credentials/credential-connection-status-proxy.d.ts +2 -1
  29. package/dist/credentials/credential-connection-status-proxy.js +7 -2
  30. package/dist/credentials/credential-connection-status-proxy.js.map +1 -1
  31. package/dist/credentials/credentials.controller.js +5 -5
  32. package/dist/credentials/credentials.controller.js.map +1 -1
  33. package/dist/credentials/credentials.service.d.ts +1 -0
  34. package/dist/credentials/credentials.service.ee.d.ts +3 -1
  35. package/dist/credentials/credentials.service.ee.js +10 -2
  36. package/dist/credentials/credentials.service.ee.js.map +1 -1
  37. package/dist/credentials/credentials.service.js +14 -0
  38. package/dist/credentials/credentials.service.js.map +1 -1
  39. package/dist/eventbus/event-message-classes/index.d.ts +2 -2
  40. package/dist/eventbus/event-message-classes/index.js +4 -2
  41. package/dist/eventbus/event-message-classes/index.js.map +1 -1
  42. package/dist/events/maps/relay.event-map.d.ts +19 -2
  43. package/dist/events/relays/log-streaming.event-relay.d.ts +2 -0
  44. package/dist/events/relays/log-streaming.event-relay.js +30 -2
  45. package/dist/events/relays/log-streaming.event-relay.js.map +1 -1
  46. package/dist/events/relays/telemetry.event-relay.d.ts +3 -0
  47. package/dist/events/relays/telemetry.event-relay.js +88 -10
  48. package/dist/events/relays/telemetry.event-relay.js.map +1 -1
  49. package/dist/execution-lifecycle/execution-lifecycle-hooks.js +21 -4
  50. package/dist/execution-lifecycle/execution-lifecycle-hooks.js.map +1 -1
  51. package/dist/executions/execution-data/db-store.d.ts +8 -15
  52. package/dist/executions/execution-data/db-store.js +12 -25
  53. package/dist/executions/execution-data/db-store.js.map +1 -1
  54. package/dist/executions/execution-data/execution-data-json-store.d.ts +7 -0
  55. package/dist/executions/execution-data/execution-data-json-store.js +45 -0
  56. package/dist/executions/execution-data/execution-data-json-store.js.map +1 -0
  57. package/dist/executions/execution-data/types.d.ts +3 -14
  58. package/dist/executions/execution-data/types.js.map +1 -1
  59. package/dist/executions/execution-persistence.d.ts +7 -14
  60. package/dist/executions/execution-persistence.js +40 -88
  61. package/dist/executions/execution-persistence.js.map +1 -1
  62. package/dist/executions/execution.service.d.ts +3 -4
  63. package/dist/executions/execution.service.js +4 -13
  64. package/dist/executions/execution.service.js.map +1 -1
  65. package/dist/executions/executions.controller.js +1 -10
  66. package/dist/executions/executions.controller.js.map +1 -1
  67. package/dist/interfaces.d.ts +4 -1
  68. package/dist/load-nodes-and-credentials.js +1 -1
  69. package/dist/load-nodes-and-credentials.js.map +1 -1
  70. package/dist/metrics/prometheus/prometheus.service.d.ts +2 -1
  71. package/dist/metrics/prometheus/prometheus.service.js +5 -2
  72. package/dist/metrics/prometheus/prometheus.service.js.map +1 -1
  73. package/dist/metrics/prometheus/scheduler-metrics.service.d.ts +35 -0
  74. package/dist/metrics/prometheus/scheduler-metrics.service.js +187 -0
  75. package/dist/metrics/prometheus/scheduler-metrics.service.js.map +1 -0
  76. package/dist/modules/agents/adapters/agents-credential-provider.d.ts +1 -0
  77. package/dist/modules/agents/adapters/agents-credential-provider.js +13 -3
  78. package/dist/modules/agents/adapters/agents-credential-provider.js.map +1 -1
  79. package/dist/modules/agents/agent-config.service.js +11 -1
  80. package/dist/modules/agents/agent-config.service.js.map +1 -1
  81. package/dist/modules/agents/agent-knowledge.controller.js +1 -1
  82. package/dist/modules/agents/agent-knowledge.controller.js.map +1 -1
  83. package/dist/modules/agents/agent-upload.middleware.d.ts +2 -0
  84. package/dist/modules/agents/agent-upload.middleware.js +11 -0
  85. package/dist/modules/agents/agent-upload.middleware.js.map +1 -1
  86. package/dist/modules/agents/agent-validation.service.js +19 -2
  87. package/dist/modules/agents/agent-validation.service.js.map +1 -1
  88. package/dist/modules/agents/agent-vector-stores.controller.d.ts +11 -0
  89. package/dist/modules/agents/agent-vector-stores.controller.js +41 -0
  90. package/dist/modules/agents/agent-vector-stores.controller.js.map +1 -0
  91. package/dist/modules/agents/agent-vector-stores.service.d.ts +9 -0
  92. package/dist/modules/agents/agent-vector-stores.service.js +195 -0
  93. package/dist/modules/agents/agent-vector-stores.service.js.map +1 -0
  94. package/dist/modules/agents/agents-config.controller.d.ts +112 -69
  95. package/dist/modules/agents/agents.controller.d.ts +5 -1
  96. package/dist/modules/agents/agents.controller.js +11 -0
  97. package/dist/modules/agents/agents.controller.js.map +1 -1
  98. package/dist/modules/agents/agents.module.js +1 -0
  99. package/dist/modules/agents/agents.module.js.map +1 -1
  100. package/dist/modules/agents/agents.service.d.ts +7 -2
  101. package/dist/modules/agents/agents.service.js +65 -2
  102. package/dist/modules/agents/agents.service.js.map +1 -1
  103. package/dist/modules/agents/attachable-workflows.service.d.ts +12 -0
  104. package/dist/modules/agents/attachable-workflows.service.js +58 -0
  105. package/dist/modules/agents/attachable-workflows.service.js.map +1 -0
  106. package/dist/modules/agents/builder/agents-builder-model-recommendations.js +3 -2
  107. package/dist/modules/agents/builder/agents-builder-model-recommendations.js.map +1 -1
  108. package/dist/modules/agents/builder/agents-builder-prompts.d.ts +4 -4
  109. package/dist/modules/agents/builder/agents-builder-prompts.js +40 -27
  110. package/dist/modules/agents/builder/agents-builder-prompts.js.map +1 -1
  111. package/dist/modules/agents/builder/agents-builder-tools.service.d.ts +3 -5
  112. package/dist/modules/agents/builder/agents-builder-tools.service.js +48 -194
  113. package/dist/modules/agents/builder/agents-builder-tools.service.js.map +1 -1
  114. package/dist/modules/agents/builder/agents-builder.service.d.ts +10 -3
  115. package/dist/modules/agents/builder/agents-builder.service.js +22 -12
  116. package/dist/modules/agents/builder/agents-builder.service.js.map +1 -1
  117. package/dist/modules/agents/builder/builder-tool-names.js.map +1 -1
  118. package/dist/modules/agents/builder/errors.d.ts +3 -2
  119. package/dist/modules/agents/builder/errors.js +3 -2
  120. package/dist/modules/agents/builder/errors.js.map +1 -1
  121. package/dist/modules/agents/builder/get-resource-locator-options.tool.d.ts +99 -2
  122. package/dist/modules/agents/builder/get-resource-locator-options.tool.js +103 -101
  123. package/dist/modules/agents/builder/get-resource-locator-options.tool.js.map +1 -1
  124. package/dist/modules/agents/builder/interactive/ask-credential.tool.js +48 -32
  125. package/dist/modules/agents/builder/interactive/ask-credential.tool.js.map +1 -1
  126. package/dist/modules/agents/builder/interactive/ask-questions.tool.d.ts +2 -0
  127. package/dist/modules/agents/builder/interactive/ask-questions.tool.js +108 -0
  128. package/dist/modules/agents/builder/interactive/ask-questions.tool.js.map +1 -0
  129. package/dist/modules/agents/builder/interactive/configure-channel.tool.d.ts +7 -0
  130. package/dist/modules/agents/builder/interactive/configure-channel.tool.js +52 -0
  131. package/dist/modules/agents/builder/interactive/configure-channel.tool.js.map +1 -0
  132. package/dist/modules/agents/builder/interactive/index.d.ts +2 -2
  133. package/dist/modules/agents/builder/interactive/index.js +5 -5
  134. package/dist/modules/agents/builder/interactive/index.js.map +1 -1
  135. package/dist/modules/agents/builder/interactive/resolve-llm.tool.js +2 -2
  136. package/dist/modules/agents/builder/interactive/resolve-llm.tool.js.map +1 -1
  137. package/dist/modules/agents/builder/prompts/config-mutation.prompt.js +1 -1
  138. package/dist/modules/agents/builder/prompts/config-rules.prompt.js +2 -2
  139. package/dist/modules/agents/builder/prompts/llm-selection.prompt.js +10 -10
  140. package/dist/modules/agents/builder/prompts/llm-selection.prompt.js.map +1 -1
  141. package/dist/modules/agents/builder/prompts/memory.prompt.d.ts +1 -1
  142. package/dist/modules/agents/builder/prompts/memory.prompt.js +1 -1
  143. package/dist/modules/agents/builder/search-mcp-servers.tool.js +1 -63
  144. package/dist/modules/agents/builder/search-mcp-servers.tool.js.map +1 -1
  145. package/dist/modules/agents/builder/skills/index.d.ts +1 -1
  146. package/dist/modules/agents/builder/skills/index.js +5 -1
  147. package/dist/modules/agents/builder/skills/index.js.map +1 -1
  148. package/dist/modules/agents/builder/skills/integrations.skill.js +15 -6
  149. package/dist/modules/agents/builder/skills/integrations.skill.js.map +1 -1
  150. package/dist/modules/agents/builder/skills/mcp.skill.js +2 -2
  151. package/dist/modules/agents/builder/skills/mcp.skill.js.map +1 -1
  152. package/dist/modules/agents/builder/skills/resource-locators.skill.js +2 -2
  153. package/dist/modules/agents/builder/skills/resource-locators.skill.js.map +1 -1
  154. package/dist/modules/agents/builder/skills/sub-agents.skill.js +7 -5
  155. package/dist/modules/agents/builder/skills/sub-agents.skill.js.map +1 -1
  156. package/dist/modules/agents/builder/skills/target-skills.skill.js +5 -4
  157. package/dist/modules/agents/builder/skills/target-skills.skill.js.map +1 -1
  158. package/dist/modules/agents/builder/skills/target-tasks.skill.js +5 -5
  159. package/dist/modules/agents/builder/skills/target-tasks.skill.js.map +1 -1
  160. package/dist/modules/agents/instance-ai-builder-delegate.adapter.d.ts +14 -0
  161. package/dist/modules/agents/instance-ai-builder-delegate.adapter.js +96 -0
  162. package/dist/modules/agents/instance-ai-builder-delegate.adapter.js.map +1 -0
  163. package/dist/modules/agents/integrations/integration-action-executor.d.ts +72 -72
  164. package/dist/modules/agents/integrations/integration-tool-definitions.d.ts +574 -574
  165. package/dist/modules/agents/json-config/embedding-credential.d.ts +4 -0
  166. package/dist/modules/agents/json-config/embedding-credential.js +25 -0
  167. package/dist/modules/agents/json-config/embedding-credential.js.map +1 -0
  168. package/dist/modules/agents/json-config/from-json-config.d.ts +2 -6
  169. package/dist/modules/agents/json-config/from-json-config.js +16 -16
  170. package/dist/modules/agents/json-config/from-json-config.js.map +1 -1
  171. package/dist/modules/agents/json-config/model-config.js +2 -2
  172. package/dist/modules/agents/json-config/model-config.js.map +1 -1
  173. package/dist/modules/agents/json-config/vector-store-factory.d.ts +5 -0
  174. package/dist/modules/agents/json-config/vector-store-factory.js +138 -0
  175. package/dist/modules/agents/json-config/vector-store-factory.js.map +1 -0
  176. package/dist/modules/breaking-changes/rules/index.d.ts +8 -0
  177. package/dist/modules/breaking-changes/rules/index.js +8 -0
  178. package/dist/modules/breaking-changes/rules/index.js.map +1 -1
  179. package/dist/modules/breaking-changes/rules/v3/compression-node-limits.rule.d.ts +6 -0
  180. package/dist/modules/breaking-changes/rules/v3/compression-node-limits.rule.js +59 -0
  181. package/dist/modules/breaking-changes/rules/v3/compression-node-limits.rule.js.map +1 -0
  182. package/dist/modules/breaking-changes/rules/v3/docker-only-deployment.rule.d.ts +9 -0
  183. package/dist/modules/breaking-changes/rules/v3/docker-only-deployment.rule.js +57 -0
  184. package/dist/modules/breaking-changes/rules/v3/docker-only-deployment.rule.js.map +1 -0
  185. package/dist/modules/breaking-changes/rules/v3/get-paired-item.rule.d.ts +10 -0
  186. package/dist/modules/breaking-changes/rules/v3/get-paired-item.rule.js +53 -0
  187. package/dist/modules/breaking-changes/rules/v3/get-paired-item.rule.js.map +1 -0
  188. package/dist/modules/breaking-changes/rules/v3/in-memory-binary-data.rule.d.ts +9 -0
  189. package/dist/modules/breaking-changes/rules/v3/in-memory-binary-data.rule.js +56 -0
  190. package/dist/modules/breaking-changes/rules/v3/in-memory-binary-data.rule.js.map +1 -0
  191. package/dist/modules/breaking-changes/rules/v3/offload-manual-executions.rule.d.ts +9 -0
  192. package/dist/modules/breaking-changes/rules/v3/offload-manual-executions.rule.js +57 -0
  193. package/dist/modules/breaking-changes/rules/v3/offload-manual-executions.rule.js.map +1 -0
  194. package/dist/modules/breaking-changes/rules/v3/task-runner-task-timeout.rule.d.ts +6 -0
  195. package/dist/modules/breaking-changes/rules/v3/task-runner-task-timeout.rule.js +50 -0
  196. package/dist/modules/breaking-changes/rules/v3/task-runner-task-timeout.rule.js.map +1 -0
  197. package/dist/modules/breaking-changes/rules/v3/unverified-packages.rule.d.ts +9 -0
  198. package/dist/modules/breaking-changes/rules/v3/unverified-packages.rule.js +57 -0
  199. package/dist/modules/breaking-changes/rules/v3/unverified-packages.rule.js.map +1 -0
  200. package/dist/modules/breaking-changes/rules/v3/workflow-import-url-removed.rule.d.ts +6 -0
  201. package/dist/modules/breaking-changes/rules/v3/workflow-import-url-removed.rule.js +47 -0
  202. package/dist/modules/breaking-changes/rules/v3/workflow-import-url-removed.rule.js.map +1 -0
  203. package/dist/modules/chat-hub/chat-hub.module.d.ts +1 -1
  204. package/dist/modules/chat-hub/chat-hub.settings.controller.d.ts +3 -3
  205. package/dist/modules/data-table/data-table-ddl.service.d.ts +2 -0
  206. package/dist/modules/data-table/data-table-ddl.service.js +16 -0
  207. package/dist/modules/data-table/data-table-ddl.service.js.map +1 -1
  208. package/dist/modules/data-table/data-table.service.d.ts +6 -3
  209. package/dist/modules/data-table/data-table.service.js +19 -0
  210. package/dist/modules/data-table/data-table.service.js.map +1 -1
  211. package/dist/modules/data-table/utils/sql-utils.d.ts +1 -0
  212. package/dist/modules/data-table/utils/sql-utils.js +4 -0
  213. package/dist/modules/data-table/utils/sql-utils.js.map +1 -1
  214. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.d.ts +0 -2
  215. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js +0 -13
  216. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.module.js.map +1 -1
  217. package/dist/modules/dynamic-credentials.ee/services/credential-connection-status.service.d.ts +5 -3
  218. package/dist/modules/dynamic-credentials.ee/services/credential-connection-status.service.js +19 -7
  219. package/dist/modules/dynamic-credentials.ee/services/credential-connection-status.service.js.map +1 -1
  220. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential-storage.service.js +1 -1
  221. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js +1 -1
  222. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js.map +1 -1
  223. package/dist/modules/favorites/dto/add-favorite.dto.d.ts +2 -2
  224. package/dist/modules/favorites/favorites.event-relay.js +2 -3
  225. package/dist/modules/favorites/favorites.event-relay.js.map +1 -1
  226. package/dist/modules/favorites/favorites.service.d.ts +4 -1
  227. package/dist/modules/favorites/favorites.service.js +28 -3
  228. package/dist/modules/favorites/favorites.service.js.map +1 -1
  229. package/dist/modules/instance-ai/eval/execution.service.d.ts +4 -1
  230. package/dist/modules/instance-ai/eval/execution.service.js +26 -3
  231. package/dist/modules/instance-ai/eval/execution.service.js.map +1 -1
  232. package/dist/modules/instance-ai/eval/mock-handler.js +1 -1
  233. package/dist/modules/instance-ai/eval/mock-handler.js.map +1 -1
  234. package/dist/modules/instance-ai/eval/mock-quirks.js +7 -0
  235. package/dist/modules/instance-ai/eval/mock-quirks.js.map +1 -1
  236. package/dist/modules/instance-ai/eval/pin-data-generator.js +17 -17
  237. package/dist/modules/instance-ai/eval/pin-data-generator.js.map +1 -1
  238. package/dist/modules/instance-ai/event-bus/in-process-event-bus.d.ts +17 -6
  239. package/dist/modules/instance-ai/event-bus/in-process-event-bus.js +153 -30
  240. package/dist/modules/instance-ai/event-bus/in-process-event-bus.js.map +1 -1
  241. package/dist/modules/instance-ai/instance-ai-memory.service.d.ts +7 -2
  242. package/dist/modules/instance-ai/instance-ai-memory.service.js +12 -1
  243. package/dist/modules/instance-ai/instance-ai-memory.service.js.map +1 -1
  244. package/dist/modules/instance-ai/instance-ai-settings.service.js +0 -7
  245. package/dist/modules/instance-ai/instance-ai-settings.service.js.map +1 -1
  246. package/dist/modules/instance-ai/instance-ai.adapter.service.d.ts +89 -3
  247. package/dist/modules/instance-ai/instance-ai.adapter.service.js +272 -42
  248. package/dist/modules/instance-ai/instance-ai.adapter.service.js.map +1 -1
  249. package/dist/modules/instance-ai/instance-ai.controller.js +9 -2
  250. package/dist/modules/instance-ai/instance-ai.controller.js.map +1 -1
  251. package/dist/modules/instance-ai/instance-ai.service.d.ts +0 -1
  252. package/dist/modules/instance-ai/instance-ai.service.js +45 -107
  253. package/dist/modules/instance-ai/instance-ai.service.js.map +1 -1
  254. package/dist/modules/instance-ai/workflow-templates.service.d.ts +17 -0
  255. package/dist/modules/instance-ai/workflow-templates.service.js +63 -0
  256. package/dist/modules/instance-ai/workflow-templates.service.js.map +1 -0
  257. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.d.ts +1 -0
  258. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.js +2 -0
  259. package/dist/modules/log-streaming.ee/destinations/message-event-bus-destination.ee.js.map +1 -1
  260. package/dist/modules/mcp/dto/update-workflows-availability.dto.d.ts +2 -0
  261. package/dist/modules/mcp/dto/update-workflows-availability.dto.js +1 -0
  262. package/dist/modules/mcp/dto/update-workflows-availability.dto.js.map +1 -1
  263. package/dist/modules/mcp/mcp-protected-resource.d.ts +4 -1
  264. package/dist/modules/mcp/mcp-protected-resource.js +13 -3
  265. package/dist/modules/mcp/mcp-protected-resource.js.map +1 -1
  266. package/dist/modules/mcp/mcp.config.d.ts +1 -0
  267. package/dist/modules/mcp/mcp.config.js +20 -0
  268. package/dist/modules/mcp/mcp.config.js.map +1 -1
  269. package/dist/modules/mcp/mcp.module.d.ts +1 -0
  270. package/dist/modules/mcp/mcp.module.js +3 -1
  271. package/dist/modules/mcp/mcp.module.js.map +1 -1
  272. package/dist/modules/mcp/mcp.settings.service.d.ts +1 -1
  273. package/dist/modules/mcp/mcp.settings.service.js +33 -18
  274. package/dist/modules/mcp/mcp.settings.service.js.map +1 -1
  275. package/dist/modules/mcp/tools/search-workflows.tool.js +4 -2
  276. package/dist/modules/mcp/tools/search-workflows.tool.js.map +1 -1
  277. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.d.ts +2 -0
  278. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js +10 -5
  279. package/dist/modules/mcp/tools/workflow-builder/create-workflow-from-code.tool.js.map +1 -1
  280. package/dist/modules/mcp/tools/workflow-builder/restore-workflow-version.tool.js +4 -0
  281. package/dist/modules/mcp/tools/workflow-builder/restore-workflow-version.tool.js.map +1 -1
  282. package/dist/modules/mcp/tools/workflow-builder/skills-used.d.ts +1 -0
  283. package/dist/modules/mcp/tools/workflow-builder/skills-used.js +5 -1
  284. package/dist/modules/mcp/tools/workflow-builder/skills-used.js.map +1 -1
  285. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js +10 -5
  286. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.js.map +1 -1
  287. package/dist/modules/mcp/tools/workflow-builder/version-metadata.d.ts +27 -0
  288. package/dist/modules/mcp/tools/workflow-builder/version-metadata.js +109 -0
  289. package/dist/modules/mcp/tools/workflow-builder/version-metadata.js.map +1 -0
  290. package/dist/modules/mcp-registry/registry/mcp-registry-search.d.ts +18 -0
  291. package/dist/modules/mcp-registry/registry/mcp-registry-search.js +64 -0
  292. package/dist/modules/mcp-registry/registry/mcp-registry-search.js.map +1 -0
  293. package/dist/modules/mcp-registry/registry/mcp-registry.service.d.ts +2 -0
  294. package/dist/modules/mcp-registry/registry/mcp-registry.service.js +4 -0
  295. package/dist/modules/mcp-registry/registry/mcp-registry.service.js.map +1 -1
  296. package/dist/modules/n8n-packages/engine/import-blocked.error.js +2 -1
  297. package/dist/modules/n8n-packages/engine/import-blocked.error.js.map +1 -1
  298. package/dist/modules/n8n-packages/engine/import-orchestrator.d.ts +30 -0
  299. package/dist/modules/n8n-packages/engine/import-orchestrator.js +86 -0
  300. package/dist/modules/n8n-packages/engine/import-orchestrator.js.map +1 -0
  301. package/dist/modules/n8n-packages/engine/import-result.d.ts +14 -0
  302. package/dist/modules/n8n-packages/engine/import-result.js +43 -0
  303. package/dist/modules/n8n-packages/engine/import-result.js.map +1 -0
  304. package/dist/modules/n8n-packages/engine/n8n-package-parser.d.ts +7 -0
  305. package/dist/modules/n8n-packages/engine/n8n-package-parser.js +72 -13
  306. package/dist/modules/n8n-packages/engine/n8n-package-parser.js.map +1 -1
  307. package/dist/modules/n8n-packages/engine/package-layout.d.ts +11 -0
  308. package/dist/modules/n8n-packages/engine/package-layout.js +21 -0
  309. package/dist/modules/n8n-packages/engine/package-layout.js.map +1 -0
  310. package/dist/modules/n8n-packages/engine/project-package-importer.d.ts +11 -0
  311. package/dist/modules/n8n-packages/engine/project-package-importer.js +44 -0
  312. package/dist/modules/n8n-packages/engine/project-package-importer.js.map +1 -0
  313. package/dist/modules/n8n-packages/engine/workflow-package-importer.d.ts +24 -0
  314. package/dist/modules/n8n-packages/engine/workflow-package-importer.js +168 -0
  315. package/dist/modules/n8n-packages/engine/workflow-package-importer.js.map +1 -0
  316. package/dist/modules/n8n-packages/entities/credential/credential-matcher-factory.d.ts +3 -1
  317. package/dist/modules/n8n-packages/entities/credential/credential-matcher-factory.js +8 -2
  318. package/dist/modules/n8n-packages/entities/credential/credential-matcher-factory.js.map +1 -1
  319. package/dist/modules/n8n-packages/entities/credential/credential-matcher.d.ts +6 -6
  320. package/dist/modules/n8n-packages/entities/credential/credential-matcher.js +34 -4
  321. package/dist/modules/n8n-packages/entities/credential/credential-matcher.js.map +1 -1
  322. package/dist/modules/n8n-packages/entities/credential/credential-tier-selection.d.ts +3 -0
  323. package/dist/modules/n8n-packages/entities/credential/credential-tier-selection.js +27 -0
  324. package/dist/modules/n8n-packages/entities/credential/credential-tier-selection.js.map +1 -0
  325. package/dist/modules/n8n-packages/entities/credential/credential.exporter.d.ts +2 -0
  326. package/dist/modules/n8n-packages/entities/credential/credential.exporter.js +18 -2
  327. package/dist/modules/n8n-packages/entities/credential/credential.exporter.js.map +1 -1
  328. package/dist/modules/n8n-packages/entities/credential/id-based-credential-matcher.d.ts +3 -7
  329. package/dist/modules/n8n-packages/entities/credential/id-based-credential-matcher.js +8 -23
  330. package/dist/modules/n8n-packages/entities/credential/id-based-credential-matcher.js.map +1 -1
  331. package/dist/modules/n8n-packages/entities/credential/name-and-type-credential-matcher.d.ts +8 -0
  332. package/dist/modules/n8n-packages/entities/credential/name-and-type-credential-matcher.js +31 -0
  333. package/dist/modules/n8n-packages/entities/credential/name-and-type-credential-matcher.js.map +1 -0
  334. package/dist/modules/n8n-packages/entities/credential/type-only-credential-matcher.d.ts +8 -0
  335. package/dist/modules/n8n-packages/entities/credential/type-only-credential-matcher.js +31 -0
  336. package/dist/modules/n8n-packages/entities/credential/type-only-credential-matcher.js.map +1 -0
  337. package/dist/modules/n8n-packages/entities/data-table/data-table-requirements.extractor.d.ts +6 -0
  338. package/dist/modules/n8n-packages/entities/data-table/data-table-requirements.extractor.js +38 -0
  339. package/dist/modules/n8n-packages/entities/data-table/data-table-requirements.extractor.js.map +1 -0
  340. package/dist/modules/n8n-packages/entities/data-table/data-table.exporter.d.ts +26 -0
  341. package/dist/modules/n8n-packages/entities/data-table/data-table.exporter.js +97 -0
  342. package/dist/modules/n8n-packages/entities/data-table/data-table.exporter.js.map +1 -0
  343. package/dist/modules/n8n-packages/entities/data-table/data-table.serializer.d.ts +5 -0
  344. package/dist/modules/n8n-packages/entities/data-table/data-table.serializer.js +31 -0
  345. package/dist/modules/n8n-packages/entities/data-table/data-table.serializer.js.map +1 -0
  346. package/dist/modules/n8n-packages/entities/data-table/data-table.types.d.ts +4 -0
  347. package/dist/modules/n8n-packages/entities/data-table/data-table.types.js +3 -0
  348. package/dist/modules/n8n-packages/entities/data-table/data-table.types.js.map +1 -0
  349. package/dist/modules/n8n-packages/entities/folder/folder-conflict-policy.d.ts +5 -0
  350. package/dist/modules/n8n-packages/entities/folder/folder-conflict-policy.js +11 -0
  351. package/dist/modules/n8n-packages/entities/folder/folder-conflict-policy.js.map +1 -0
  352. package/dist/modules/n8n-packages/entities/folder/folder-import.types.d.ts +20 -0
  353. package/dist/modules/n8n-packages/entities/folder/folder-import.types.js +3 -0
  354. package/dist/modules/n8n-packages/entities/folder/folder-import.types.js.map +1 -0
  355. package/dist/modules/n8n-packages/entities/folder/folder-importer.d.ts +10 -0
  356. package/dist/modules/n8n-packages/entities/folder/folder-importer.js +140 -0
  357. package/dist/modules/n8n-packages/entities/folder/folder-importer.js.map +1 -0
  358. package/dist/modules/n8n-packages/entities/folder/folder.exporter.d.ts +5 -2
  359. package/dist/modules/n8n-packages/entities/folder/folder.exporter.js +48 -44
  360. package/dist/modules/n8n-packages/entities/folder/folder.exporter.js.map +1 -1
  361. package/dist/modules/n8n-packages/entities/folder/folder.serializer.js.map +1 -1
  362. package/dist/modules/n8n-packages/entities/package-export.errors.d.ts +8 -0
  363. package/dist/modules/n8n-packages/entities/package-export.errors.js +27 -0
  364. package/dist/modules/n8n-packages/entities/package-export.errors.js.map +1 -0
  365. package/dist/modules/n8n-packages/entities/project/project-import.types.d.ts +15 -0
  366. package/dist/modules/n8n-packages/entities/project/project-import.types.js +3 -0
  367. package/dist/modules/n8n-packages/entities/project/project-import.types.js.map +1 -0
  368. package/dist/modules/n8n-packages/entities/project/project-importer.d.ts +13 -0
  369. package/dist/modules/n8n-packages/entities/project/project-importer.js +97 -0
  370. package/dist/modules/n8n-packages/entities/project/project-importer.js.map +1 -0
  371. package/dist/modules/n8n-packages/entities/project/project.exporter.d.ts +22 -4
  372. package/dist/modules/n8n-packages/entities/project/project.exporter.js +71 -26
  373. package/dist/modules/n8n-packages/entities/project/project.exporter.js.map +1 -1
  374. package/dist/modules/n8n-packages/entities/requirements.types.d.ts +2 -0
  375. package/dist/modules/n8n-packages/entities/requirements.types.js +1 -0
  376. package/dist/modules/n8n-packages/entities/requirements.types.js.map +1 -1
  377. package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.d.ts +4 -3
  378. package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.js +11 -17
  379. package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.js.map +1 -1
  380. package/dist/modules/n8n-packages/n8n-packages.service.d.ts +12 -3
  381. package/dist/modules/n8n-packages/n8n-packages.service.js +51 -11
  382. package/dist/modules/n8n-packages/n8n-packages.service.js.map +1 -1
  383. package/dist/modules/n8n-packages/n8n-packages.types.d.ts +47 -22
  384. package/dist/modules/n8n-packages/n8n-packages.types.js +5 -1
  385. package/dist/modules/n8n-packages/n8n-packages.types.js.map +1 -1
  386. package/dist/modules/n8n-packages/package-failure-classifier.d.ts +2 -0
  387. package/dist/modules/n8n-packages/package-failure-classifier.js +29 -0
  388. package/dist/modules/n8n-packages/package-failure-classifier.js.map +1 -0
  389. package/dist/modules/n8n-packages/spec/manifest.schema.d.ts +62 -0
  390. package/dist/modules/n8n-packages/spec/requirements.schema.d.ts +55 -0
  391. package/dist/modules/n8n-packages/spec/requirements.schema.js +26 -15
  392. package/dist/modules/n8n-packages/spec/requirements.schema.js.map +1 -1
  393. package/dist/modules/n8n-packages/spec/serialized/data-table.schema.d.ts +49 -0
  394. package/dist/modules/n8n-packages/spec/serialized/data-table.schema.js +20 -0
  395. package/dist/modules/n8n-packages/spec/serialized/data-table.schema.js.map +1 -0
  396. package/dist/modules/redaction/executions/execution-redaction.service.js +1 -1
  397. package/dist/modules/redaction/executions/execution-redaction.service.js.map +1 -1
  398. package/dist/modules/source-control.ee/constants.d.ts +1 -0
  399. package/dist/modules/source-control.ee/constants.js +2 -1
  400. package/dist/modules/source-control.ee/constants.js.map +1 -1
  401. package/dist/modules/source-control.ee/source-control-git.service.ee.d.ts +0 -1
  402. package/dist/modules/source-control.ee/source-control-git.service.ee.js +0 -22
  403. package/dist/modules/source-control.ee/source-control-git.service.ee.js.map +1 -1
  404. package/dist/modules/source-control.ee/source-control-helper.ee.d.ts +3 -1
  405. package/dist/modules/source-control.ee/source-control-helper.ee.js +13 -0
  406. package/dist/modules/source-control.ee/source-control-helper.ee.js.map +1 -1
  407. package/dist/modules/source-control.ee/source-control-import.service.ee.d.ts +10 -2
  408. package/dist/modules/source-control.ee/source-control-import.service.ee.js +94 -59
  409. package/dist/modules/source-control.ee/source-control-import.service.ee.js.map +1 -1
  410. package/dist/modules/source-control.ee/source-control-status.service.ee.d.ts +0 -1
  411. package/dist/modules/source-control.ee/source-control-status.service.ee.js +30 -30
  412. package/dist/modules/source-control.ee/source-control-status.service.ee.js.map +1 -1
  413. package/dist/modules/source-control.ee/source-control.controller.ee.d.ts +6 -6
  414. package/dist/modules/source-control.ee/source-control.service.ee.d.ts +3 -3
  415. package/dist/modules/source-control.ee/source-control.service.ee.js +8 -1
  416. package/dist/modules/source-control.ee/source-control.service.ee.js.map +1 -1
  417. package/dist/public-api/types.d.ts +5 -1
  418. package/dist/public-api/v1/handlers/credentials/credentials.handler.js +9 -0
  419. package/dist/public-api/v1/handlers/credentials/credentials.handler.js.map +1 -1
  420. package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.js +87 -38
  421. package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.js.map +1 -1
  422. package/dist/public-api/v1/handlers/security-policy/security-policy.handler.d.ts +8 -0
  423. package/dist/public-api/v1/handlers/security-policy/security-policy.handler.js +39 -0
  424. package/dist/public-api/v1/handlers/security-policy/security-policy.handler.js.map +1 -0
  425. package/dist/public-api/v1/openapi.yml +243 -12
  426. package/dist/scaling/job-processor.js +44 -6
  427. package/dist/scaling/job-processor.js.map +1 -1
  428. package/dist/scaling/pubsub/pubsub.event-map.d.ts +4 -1
  429. package/dist/scheduling/durable-job-provisioner.d.ts +16 -0
  430. package/dist/scheduling/durable-job-provisioner.js +135 -0
  431. package/dist/scheduling/durable-job-provisioner.js.map +1 -0
  432. package/dist/scheduling/durable-scheduler.d.ts +16 -0
  433. package/dist/scheduling/durable-scheduler.js +117 -0
  434. package/dist/scheduling/durable-scheduler.js.map +1 -0
  435. package/dist/scheduling/schedule-trigger-node/schedule-trigger-task-handler.d.ts +23 -0
  436. package/dist/scheduling/schedule-trigger-node/schedule-trigger-task-handler.js +149 -0
  437. package/dist/scheduling/schedule-trigger-node/schedule-trigger-task-handler.js.map +1 -0
  438. package/dist/scheduling/schedule-trigger-node/schedule-trigger-task.d.ts +10 -0
  439. package/dist/scheduling/schedule-trigger-node/schedule-trigger-task.js +33 -0
  440. package/dist/scheduling/schedule-trigger-node/schedule-trigger-task.js.map +1 -0
  441. package/dist/scheduling/scheduler-tracer.d.ts +3 -0
  442. package/dist/scheduling/scheduler-tracer.js +11 -0
  443. package/dist/scheduling/scheduler-tracer.js.map +1 -0
  444. package/dist/server.js +6 -1
  445. package/dist/server.js.map +1 -1
  446. package/dist/services/folder-finder.service.d.ts +2 -0
  447. package/dist/services/folder-finder.service.js +16 -0
  448. package/dist/services/folder-finder.service.js.map +1 -1
  449. package/dist/services/folder.service.d.ts +3 -2
  450. package/dist/services/folder.service.js +11 -1
  451. package/dist/services/folder.service.js.map +1 -1
  452. package/dist/services/frontend.service.d.ts +3 -1
  453. package/dist/services/frontend.service.js +14 -2
  454. package/dist/services/frontend.service.js.map +1 -1
  455. package/dist/services/project.service.ee.d.ts +7 -1
  456. package/dist/services/project.service.ee.js +21 -4
  457. package/dist/services/project.service.ee.js.map +1 -1
  458. package/dist/services/protected-resource.registry.d.ts +1 -0
  459. package/dist/services/protected-resource.registry.js +11 -7
  460. package/dist/services/protected-resource.registry.js.map +1 -1
  461. package/dist/services/security-settings.service.d.ts +31 -1
  462. package/dist/services/security-settings.service.js +75 -2
  463. package/dist/services/security-settings.service.js.map +1 -1
  464. package/dist/services/workflow-review-policy.service.d.ts +11 -0
  465. package/dist/services/workflow-review-policy.service.js +52 -0
  466. package/dist/services/workflow-review-policy.service.js.map +1 -0
  467. package/dist/telemetry/index.d.ts +2 -0
  468. package/dist/telemetry/index.js +6 -3
  469. package/dist/telemetry/index.js.map +1 -1
  470. package/dist/webhooks/live-webhooks.js +2 -2
  471. package/dist/webhooks/live-webhooks.js.map +1 -1
  472. package/dist/webhooks/test-webhooks.js +4 -1
  473. package/dist/webhooks/test-webhooks.js.map +1 -1
  474. package/dist/webhooks/waiting-webhooks.js +2 -2
  475. package/dist/webhooks/waiting-webhooks.js.map +1 -1
  476. package/dist/workflow-execute-additional-data.js +5 -4
  477. package/dist/workflow-execute-additional-data.js.map +1 -1
  478. package/dist/workflow-helpers.js +26 -0
  479. package/dist/workflow-helpers.js.map +1 -1
  480. package/dist/workflows/triggers/webhook-trigger-registrar.js +22 -15
  481. package/dist/workflows/triggers/webhook-trigger-registrar.js.map +1 -1
  482. package/dist/workflows/triggers/workflow-trigger-activator.js +1 -7
  483. package/dist/workflows/triggers/workflow-trigger-activator.js.map +1 -1
  484. package/dist/workflows/workflow-creation.service.d.ts +2 -0
  485. package/dist/workflows/workflow-creation.service.js +4 -2
  486. package/dist/workflows/workflow-creation.service.js.map +1 -1
  487. package/dist/workflows/workflow-execution.service.js +8 -5
  488. package/dist/workflows/workflow-execution.service.js.map +1 -1
  489. package/dist/workflows/workflow-finder.service.d.ts +5 -2
  490. package/dist/workflows/workflow-finder.service.js +25 -2
  491. package/dist/workflows/workflow-finder.service.js.map +1 -1
  492. package/dist/workflows/workflow-history/workflow-history.service.d.ts +4 -1
  493. package/dist/workflows/workflow-history/workflow-history.service.js +3 -1
  494. package/dist/workflows/workflow-history/workflow-history.service.js.map +1 -1
  495. package/dist/workflows/workflow-validation.service.js +3 -3
  496. package/dist/workflows/workflow-validation.service.js.map +1 -1
  497. package/dist/workflows/workflow.request.d.ts +7 -22
  498. package/dist/workflows/workflow.service.d.ts +2 -0
  499. package/dist/workflows/workflow.service.js +4 -2
  500. package/dist/workflows/workflow.service.js.map +1 -1
  501. package/dist/workflows/workflows.controller.d.ts +1 -1
  502. package/dist/workflows/workflows.controller.js +8 -3
  503. package/dist/workflows/workflows.controller.js.map +1 -1
  504. package/package.json +45 -40
  505. package/templates/form-trigger-completion.handlebars +6 -6
  506. package/dist/executions/execution-data/azure-store.ee.d.ts +0 -15
  507. package/dist/executions/execution-data/azure-store.ee.js +0 -117
  508. package/dist/executions/execution-data/azure-store.ee.js.map +0 -1
  509. package/dist/executions/execution-data/fs-store.d.ts +0 -16
  510. package/dist/executions/execution-data/fs-store.js +0 -118
  511. package/dist/executions/execution-data/fs-store.js.map +0 -1
  512. package/dist/executions/execution-data/s3-store.ee.d.ts +0 -15
  513. package/dist/executions/execution-data/s3-store.ee.js +0 -116
  514. package/dist/executions/execution-data/s3-store.ee.js.map +0 -1
  515. package/dist/modules/agents/builder/from-ai-node-parameters.d.ts +0 -7
  516. package/dist/modules/agents/builder/from-ai-node-parameters.js +0 -43
  517. package/dist/modules/agents/builder/from-ai-node-parameters.js.map +0 -1
  518. package/dist/modules/agents/builder/interactive/ask-llm.tool.d.ts +0 -2
  519. package/dist/modules/agents/builder/interactive/ask-llm.tool.js +0 -25
  520. package/dist/modules/agents/builder/interactive/ask-llm.tool.js.map +0 -1
  521. package/dist/modules/agents/builder/interactive/ask-question.tool.d.ts +0 -2
  522. package/dist/modules/agents/builder/interactive/ask-question.tool.js +0 -27
  523. package/dist/modules/agents/builder/interactive/ask-question.tool.js.map +0 -1
  524. package/dist/modules/agents/json-config/model-id.d.ts +0 -1
  525. package/dist/modules/agents/json-config/model-id.js +0 -8
  526. package/dist/modules/agents/json-config/model-id.js.map +0 -1
  527. package/dist/modules/agents/json-config/native-web-search-provider-tools.d.ts +0 -7
  528. package/dist/modules/agents/json-config/native-web-search-provider-tools.js +0 -55
  529. package/dist/modules/agents/json-config/native-web-search-provider-tools.js.map +0 -1
  530. package/dist/modules/n8n-packages/engine/import-pipeline.d.ts +0 -28
  531. package/dist/modules/n8n-packages/engine/import-pipeline.js +0 -204
  532. package/dist/modules/n8n-packages/engine/import-pipeline.js.map +0 -1
@@ -1,5 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.resolveResourceLocatorOptions = resolveResourceLocatorOptions;
3
4
  exports.buildGetResourceLocatorOptionsTool = buildGetResourceLocatorOptionsTool;
4
5
  const tool_1 = require("@n8n/agents/tool");
5
6
  const node_catalog_1 = require("@n8n/ai-utilities/node-catalog");
@@ -30,119 +31,120 @@ const getResourceLocatorOptionsInputSchema = zod_1.z.object({
30
31
  .optional()
31
32
  .describe('Optional pagination token from a previous lookup'),
32
33
  });
33
- function buildGetResourceLocatorOptionsTool(deps) {
34
- return new tool_1.Tool(builder_tool_names_1.BUILDER_TOOLS.GET_RESOURCE_LOCATOR_OPTIONS)
35
- .description('Fetch live options for a node parameter that is configured through a resourceLocator, loadOptionsMethod, or loadOptions routing. ' +
36
- 'Use this for stable IDs such as Linear teamId, Slack channel, calendar, project, board, model, database, or table selectors before writing nodeParameters. ' +
37
- 'Call ask_credential first when the node needs credentials, then pass the returned credentials map. ' +
38
- 'The response includes parameterValue for each result; write that exact value into nodeParameters instead of using $fromAI for stable resource IDs.')
39
- .input(getResourceLocatorOptionsInputSchema)
40
- .handler(async ({ nodeType, nodeTypeVersion, parameterPath, nodeParameters, credentials, filter, paginationToken, }) => {
41
- let nodeTypeDescription;
42
- try {
43
- nodeTypeDescription = deps.nodeTypes.getByNameAndVersion(nodeType, nodeTypeVersion);
44
- }
45
- catch (error) {
46
- return {
47
- ok: false,
48
- code: 'node_type_not_found',
49
- message: error instanceof Error ? error.message : `Node type "${nodeType}" not found`,
50
- };
51
- }
52
- const property = (0, node_catalog_1.findNodeParameterProperty)(nodeTypeDescription.description.properties, parameterPath);
53
- if (!property) {
54
- return {
55
- ok: false,
56
- code: 'parameter_not_found',
57
- message: `Parameter "${parameterPath}" was not found on ${nodeType}.`,
58
- dynamicParameters: (0, node_catalog_1.collectDynamicNodeParameterPaths)(nodeTypeDescription.description.properties),
59
- };
60
- }
61
- const lookup = (0, node_catalog_1.getDynamicNodeParameterLookup)(property);
62
- if (!lookup) {
63
- return {
64
- ok: false,
65
- code: 'not_dynamic_selector',
66
- message: `Parameter "${parameterPath}" does not expose a resource locator or load-options lookup.`,
67
- dynamicParameters: (0, node_catalog_1.collectDynamicNodeParameterPaths)(nodeTypeDescription.description.properties),
68
- };
69
- }
70
- const credentialSlots = (0, node_catalog_1.getRequiredNodeCredentialSlots)(nodeTypeDescription.description);
71
- if (credentialSlots.length > 0 &&
72
- !lookup.skipCredentialsCheck &&
73
- !(0, node_catalog_1.hasNodeCredentials)(credentials)) {
74
- return {
75
- ok: false,
76
- code: 'missing_credentials',
77
- message: 'This parameter needs node credentials before live options can be fetched. Call ask_credential for one of the returned credential slots, then retry with the returned credentials map.',
78
- credentialSlots,
79
- };
80
- }
81
- const currentNodeParameters = (nodeParameters ?? {});
82
- const resourceIds = { projectId: deps.projectId, credentials };
83
- await deps.dynamicNodeParametersService.refineResourceIds(deps.user, resourceIds);
84
- if (!currentNodeParameters.authentication && resourceIds.credentials) {
85
- for (const credentialType of Object.keys(resourceIds.credentials)) {
86
- const authValue = (0, node_catalog_1.detectAuthenticationParameterValue)(nodeTypeDescription.description, credentialType);
87
- if (authValue !== undefined) {
88
- currentNodeParameters.authentication = authValue;
89
- break;
90
- }
34
+ async function resolveResourceLocatorOptions({ nodeType, nodeTypeVersion, parameterPath, nodeParameters, credentials, filter, paginationToken, }, deps) {
35
+ let nodeTypeDescription;
36
+ try {
37
+ nodeTypeDescription = deps.nodeTypes.getByNameAndVersion(nodeType, nodeTypeVersion);
38
+ }
39
+ catch (error) {
40
+ return {
41
+ ok: false,
42
+ code: 'node_type_not_found',
43
+ message: error instanceof Error ? error.message : `Node type "${nodeType}" not found`,
44
+ };
45
+ }
46
+ const property = (0, node_catalog_1.findNodeParameterProperty)(nodeTypeDescription.description.properties, parameterPath);
47
+ if (!property) {
48
+ return {
49
+ ok: false,
50
+ code: 'parameter_not_found',
51
+ message: `Parameter "${parameterPath}" was not found on ${nodeType}.`,
52
+ dynamicParameters: (0, node_catalog_1.collectDynamicNodeParameterPaths)(nodeTypeDescription.description.properties),
53
+ };
54
+ }
55
+ const lookup = (0, node_catalog_1.getDynamicNodeParameterLookup)(property);
56
+ if (!lookup) {
57
+ return {
58
+ ok: false,
59
+ code: 'not_dynamic_selector',
60
+ message: `Parameter "${parameterPath}" does not expose a resource locator or load-options lookup.`,
61
+ dynamicParameters: (0, node_catalog_1.collectDynamicNodeParameterPaths)(nodeTypeDescription.description.properties),
62
+ };
63
+ }
64
+ const credentialSlots = (0, node_catalog_1.getRequiredNodeCredentialSlots)(nodeTypeDescription.description);
65
+ if (credentialSlots.length > 0 &&
66
+ !lookup.skipCredentialsCheck &&
67
+ !(0, node_catalog_1.hasNodeCredentials)(credentials)) {
68
+ return {
69
+ ok: false,
70
+ code: 'missing_credentials',
71
+ message: 'This parameter needs node credentials before live options can be fetched. Call ask_credential for one of the returned credential slots, then retry with the returned credentials map.',
72
+ credentialSlots,
73
+ };
74
+ }
75
+ const currentNodeParameters = (nodeParameters ?? {});
76
+ const resourceIds = { projectId: deps.projectId, credentials };
77
+ await deps.dynamicNodeParametersService.refineResourceIds(deps.user, resourceIds);
78
+ if (!currentNodeParameters.authentication && resourceIds.credentials) {
79
+ for (const credentialType of Object.keys(resourceIds.credentials)) {
80
+ const authValue = (0, node_catalog_1.detectAuthenticationParameterValue)(nodeTypeDescription.description, credentialType);
81
+ if (authValue !== undefined) {
82
+ currentNodeParameters.authentication = authValue;
83
+ break;
91
84
  }
92
85
  }
93
- const builderHint = property.builderHint?.propertyHint;
94
- const additionalData = await (0, workflow_execute_additional_data_1.getBase)({
95
- userId: deps.user.id,
96
- projectId: resourceIds.projectId,
97
- currentNodeParameters,
98
- });
99
- additionalData.dataTableProjectId = resourceIds.projectId;
100
- const nodeTypeAndVersion = { name: nodeType, version: nodeTypeVersion };
101
- const dynamicPath = (0, node_catalog_1.toDynamicParameterPath)(parameterPath);
102
- try {
103
- if (lookup.kind === 'resourceLocator') {
104
- const result = await deps.dynamicNodeParametersService.getResourceLocatorResults(lookup.methodName, dynamicPath, additionalData, nodeTypeAndVersion, currentNodeParameters, resourceIds.credentials, filter, paginationToken);
105
- return {
106
- ok: true,
107
- kind: lookup.kind,
108
- parameterPath: (0, node_catalog_1.normalizeParameterPath)(parameterPath),
109
- methodName: lookup.methodName,
110
- mode: lookup.mode,
111
- results: (result.results ?? []).map((option) => ({
112
- name: option.name,
113
- value: option.value,
114
- ...(option.url ? { url: option.url } : {}),
115
- parameterValue: (0, node_catalog_1.toResourceLocatorParameterValue)(option, lookup.mode),
116
- })),
117
- paginationToken: result.paginationToken,
118
- ...(builderHint ? { builderHint } : {}),
119
- };
120
- }
121
- const options = lookup.kind === 'loadOptionsMethod'
122
- ? await deps.dynamicNodeParametersService.getOptionsViaMethodName(lookup.methodName, dynamicPath, additionalData, nodeTypeAndVersion, currentNodeParameters, resourceIds.credentials)
123
- : await deps.dynamicNodeParametersService.getOptionsViaLoadOptions(lookup.loadOptions, additionalData, nodeTypeAndVersion, currentNodeParameters, resourceIds.credentials);
86
+ }
87
+ const builderHint = property.builderHint?.propertyHint;
88
+ const additionalData = await (0, workflow_execute_additional_data_1.getBase)({
89
+ userId: deps.user.id,
90
+ projectId: resourceIds.projectId,
91
+ currentNodeParameters,
92
+ });
93
+ additionalData.dataTableProjectId = resourceIds.projectId;
94
+ const nodeTypeAndVersion = { name: nodeType, version: nodeTypeVersion };
95
+ const dynamicPath = (0, node_catalog_1.toDynamicParameterPath)(parameterPath);
96
+ try {
97
+ if (lookup.kind === 'resourceLocator') {
98
+ const result = await deps.dynamicNodeParametersService.getResourceLocatorResults(lookup.methodName, dynamicPath, additionalData, nodeTypeAndVersion, currentNodeParameters, resourceIds.credentials, filter, paginationToken);
124
99
  return {
125
100
  ok: true,
126
101
  kind: lookup.kind,
127
102
  parameterPath: (0, node_catalog_1.normalizeParameterPath)(parameterPath),
128
- ...(lookup.kind === 'loadOptionsMethod' ? { methodName: lookup.methodName } : {}),
129
- results: options.map((option) => ({
103
+ methodName: lookup.methodName,
104
+ mode: lookup.mode,
105
+ results: (result.results ?? []).map((option) => ({
130
106
  name: option.name,
131
107
  value: option.value,
132
- ...(option.description ? { description: option.description } : {}),
133
- parameterValue: (0, node_catalog_1.toLoadedOptionParameterValue)(option),
108
+ ...(option.url ? { url: option.url } : {}),
109
+ parameterValue: (0, node_catalog_1.toResourceLocatorParameterValue)(option, lookup.mode),
134
110
  })),
111
+ paginationToken: result.paginationToken,
135
112
  ...(builderHint ? { builderHint } : {}),
136
113
  };
137
114
  }
138
- catch (error) {
139
- return {
140
- ok: false,
141
- code: 'lookup_failed',
142
- message: error instanceof Error ? error.message : 'Failed to fetch parameter options',
143
- };
144
- }
145
- })
115
+ const options = lookup.kind === 'loadOptionsMethod'
116
+ ? await deps.dynamicNodeParametersService.getOptionsViaMethodName(lookup.methodName, dynamicPath, additionalData, nodeTypeAndVersion, currentNodeParameters, resourceIds.credentials)
117
+ : await deps.dynamicNodeParametersService.getOptionsViaLoadOptions(lookup.loadOptions, additionalData, nodeTypeAndVersion, currentNodeParameters, resourceIds.credentials);
118
+ return {
119
+ ok: true,
120
+ kind: lookup.kind,
121
+ parameterPath: (0, node_catalog_1.normalizeParameterPath)(parameterPath),
122
+ ...(lookup.kind === 'loadOptionsMethod' ? { methodName: lookup.methodName } : {}),
123
+ results: options.map((option) => ({
124
+ name: option.name,
125
+ value: option.value,
126
+ ...(option.description ? { description: option.description } : {}),
127
+ parameterValue: (0, node_catalog_1.toLoadedOptionParameterValue)(option),
128
+ })),
129
+ ...(builderHint ? { builderHint } : {}),
130
+ };
131
+ }
132
+ catch (error) {
133
+ return {
134
+ ok: false,
135
+ code: 'lookup_failed',
136
+ message: error instanceof Error ? error.message : 'Failed to fetch parameter options',
137
+ };
138
+ }
139
+ }
140
+ function buildGetResourceLocatorOptionsTool(deps) {
141
+ return new tool_1.Tool(builder_tool_names_1.BUILDER_TOOLS.GET_RESOURCE_LOCATOR_OPTIONS)
142
+ .description('Fetch live options for a node parameter that is configured through a resourceLocator, loadOptionsMethod, or loadOptions routing. ' +
143
+ 'Use this for stable IDs such as Linear teamId, Slack channel, calendar, project, board, model, database, or table selectors before writing nodeParameters. ' +
144
+ 'Call ask_credential first when the node needs credentials, then pass the returned credentials map. ' +
145
+ 'The response includes parameterValue for each result; write that exact value into nodeParameters instead of using $fromAI for stable resource IDs.')
146
+ .input(getResourceLocatorOptionsInputSchema)
147
+ .handler(async (input) => await resolveResourceLocatorOptions(input, deps))
146
148
  .build();
147
149
  }
148
150
  //# sourceMappingURL=get-resource-locator-options.tool.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"get-resource-locator-options.tool.js","sourceRoot":"","sources":["../../../../src/modules/agents/builder/get-resource-locator-options.tool.ts"],"names":[],"mappings":";;AAwDA,gFAqLC;AA7OD,2CAAwC;AAExC,iEAWwC;AAGxC,6BAAwB;AAIxB,yFAA6D;AAE7D,6DAAqD;AAErD,MAAM,oBAAoB,GAAG,OAAC,CAAC,MAAM,CAAC;IACrC,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE;IACd,IAAI,EAAE,OAAC,CAAC,MAAM,EAAE;CAChB,CAAC,CAAC;AAEH,MAAM,oCAAoC,GAAG,OAAC,CAAC,MAAM,CAAC;IACrD,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,6CAA6C,CAAC;IAC5E,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;IAChF,aAAa,EAAE,OAAC;SACd,MAAM,EAAE;SACR,QAAQ,CACR,sFAAsF,CACtF;IACF,cAAc,EAAE,OAAC;SACf,MAAM,CAAC,OAAC,CAAC,OAAO,EAAE,CAAC;SACnB,QAAQ,EAAE;SACV,QAAQ,CACR,sIAAsI,CACtI;IACF,WAAW,EAAE,OAAC;SACZ,MAAM,CAAC,oBAAoB,CAAC;SAC5B,QAAQ,EAAE;SACV,QAAQ,CACR,qFAAqF,CACrF;IACF,MAAM,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,uDAAuD,CAAC;IAC/F,eAAe,EAAE,OAAC;SAChB,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CAAC,kDAAkD,CAAC;CAC9D,CAAC,CAAC;AAEH,SAAgB,kCAAkC,CAAC,IAKlD;IACA,OAAO,IAAI,WAAI,CAAC,kCAAa,CAAC,4BAA4B,CAAC;SACzD,WAAW,CACX,mIAAmI;QAClI,6JAA6J;QAC7J,qGAAqG;QACrG,oJAAoJ,CACrJ;SACA,KAAK,CAAC,oCAAoC,CAAC;SAC3C,OAAO,CACP,KAAK,EAAE,EACN,QAAQ,EACR,eAAe,EACf,aAAa,EACb,cAAc,EACd,WAAW,EACX,MAAM,EACN,eAAe,GACf,EAAE,EAAE;QACJ,IAAI,mBAAmB,CAAC;QACxB,IAAI,CAAC;YACJ,mBAAmB,GAAG,IAAI,CAAC,SAAS,CAAC,mBAAmB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QACrF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO;gBACN,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,QAAQ,aAAa;aACrF,CAAC;QACH,CAAC;QAED,MAAM,QAAQ,GAAG,IAAA,wCAAyB,EACzC,mBAAmB,CAAC,WAAW,CAAC,UAAU,EAC1C,aAAa,CACb,CAAC;QACF,IAAI,CAAC,QAAQ,EAAE,CAAC;YACf,OAAO;gBACN,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EAAE,cAAc,aAAa,sBAAsB,QAAQ,GAAG;gBACrE,iBAAiB,EAAE,IAAA,+CAAgC,EAClD,mBAAmB,CAAC,WAAW,CAAC,UAAU,CAC1C;aACD,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,IAAA,4CAA6B,EAAC,QAAQ,CAAC,CAAC;QACvD,IAAI,CAAC,MAAM,EAAE,CAAC;YACb,OAAO;gBACN,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,sBAAsB;gBAC5B,OAAO,EAAE,cAAc,aAAa,8DAA8D;gBAClG,iBAAiB,EAAE,IAAA,+CAAgC,EAClD,mBAAmB,CAAC,WAAW,CAAC,UAAU,CAC1C;aACD,CAAC;QACH,CAAC;QAED,MAAM,eAAe,GAAG,IAAA,6CAA8B,EAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;QACxF,IACC,eAAe,CAAC,MAAM,GAAG,CAAC;YAC1B,CAAC,MAAM,CAAC,oBAAoB;YAC5B,CAAC,IAAA,iCAAkB,EAAC,WAAW,CAAC,EAC/B,CAAC;YACF,OAAO;gBACN,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,qBAAqB;gBAC3B,OAAO,EACN,uLAAuL;gBACxL,eAAe;aACf,CAAC;QACH,CAAC;QAED,MAAM,qBAAqB,GAAG,CAAC,cAAc,IAAI,EAAE,CAAoB,CAAC;QACxE,MAAM,WAAW,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,WAAW,EAAE,CAAC;QAC/D,MAAM,IAAI,CAAC,4BAA4B,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;QAMlF,IAAI,CAAC,qBAAqB,CAAC,cAAc,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC;YACtE,KAAK,MAAM,cAAc,IAAI,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC;gBACnE,MAAM,SAAS,GAAG,IAAA,iDAAkC,EACnD,mBAAmB,CAAC,WAAW,EAC/B,cAAc,CACd,CAAC;gBACF,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;oBAC7B,qBAAqB,CAAC,cAAc,GAAG,SAAS,CAAC;oBACjD,MAAM;gBACP,CAAC;YACF,CAAC;QACF,CAAC;QAED,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC;QAEvD,MAAM,cAAc,GAAG,MAAM,IAAA,0CAAO,EAAC;YACpC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;YACpB,SAAS,EAAE,WAAW,CAAC,SAAS;YAChC,qBAAqB;SACrB,CAAC,CAAC;QACH,cAAc,CAAC,kBAAkB,GAAG,WAAW,CAAC,SAAS,CAAC;QAE1D,MAAM,kBAAkB,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;QACxE,MAAM,WAAW,GAAG,IAAA,qCAAsB,EAAC,aAAa,CAAC,CAAC;QAE1D,IAAI,CAAC;YACJ,IAAI,MAAM,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,4BAA4B,CAAC,yBAAyB,CAC/E,MAAM,CAAC,UAAU,EACjB,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,CAAC,WAAW,EACvB,MAAM,EACN,eAAe,CACf,CAAC;gBAEF,OAAO;oBACN,EAAE,EAAE,IAAI;oBACR,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,aAAa,EAAE,IAAA,qCAAsB,EAAC,aAAa,CAAC;oBACpD,UAAU,EAAE,MAAM,CAAC,UAAU;oBAC7B,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,OAAO,EAAE,CAAC,MAAM,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;wBAChD,IAAI,EAAE,MAAM,CAAC,IAAI;wBACjB,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBAC1C,cAAc,EAAE,IAAA,8CAA+B,EAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC;qBACpE,CAAC,CAAC;oBACH,eAAe,EAAE,MAAM,CAAC,eAAe;oBACvC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACvC,CAAC;YACH,CAAC;YAED,MAAM,OAAO,GACZ,MAAM,CAAC,IAAI,KAAK,mBAAmB;gBAClC,CAAC,CAAC,MAAM,IAAI,CAAC,4BAA4B,CAAC,uBAAuB,CAC/D,MAAM,CAAC,UAAU,EACjB,WAAW,EACX,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,CAAC,WAAW,CACvB;gBACF,CAAC,CAAC,MAAM,IAAI,CAAC,4BAA4B,CAAC,wBAAwB,CAChE,MAAM,CAAC,WAAW,EAClB,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,WAAW,CAAC,WAAW,CACvB,CAAC;YAEL,OAAO;gBACN,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE,MAAM,CAAC,IAAI;gBACjB,aAAa,EAAE,IAAA,qCAAsB,EAAC,aAAa,CAAC;gBACpD,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,mBAAmB,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjF,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;oBACjC,IAAI,EAAE,MAAM,CAAC,IAAI;oBACjB,KAAK,EAAE,MAAM,CAAC,KAAK;oBACnB,GAAG,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClE,cAAc,EAAE,IAAA,2CAA4B,EAAC,MAAM,CAAC;iBACpD,CAAC,CAAC;gBACH,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvC,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO;gBACN,EAAE,EAAE,KAAK;gBACT,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,mCAAmC;aACrF,CAAC;QACH,CAAC;IACF,CAAC,CACD;SACA,KAAK,EAAE,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"get-resource-locator-options.tool.js","sourceRoot":"","sources":["../../../../src/modules/agents/builder/get-resource-locator-options.tool.ts"],"names":[],"mappings":"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"}
@@ -4,39 +4,58 @@ exports.buildAskCredentialTool = buildAskCredentialTool;
4
4
  exports.buildAskEmbeddingCredentialTool = buildAskEmbeddingCredentialTool;
5
5
  const tool_1 = require("@n8n/agents/tool");
6
6
  const api_types_1 = require("@n8n/api-types");
7
- function withNodeCredentialMap(input, resume) {
8
- if ('skipped' in resume)
9
- return resume;
7
+ const nanoid_1 = require("nanoid");
8
+ function withNodeCredentialMap(input, credentialId, credentialName) {
10
9
  const credentialSlot = input.credentialSlot ?? input.credentialType;
11
10
  return {
12
- credentialId: resume.credentialId,
13
- credentialName: resume.credentialName,
11
+ credentialId,
12
+ credentialName,
14
13
  credentials: {
15
- [credentialSlot]: {
16
- id: resume.credentialId,
17
- name: resume.credentialName,
18
- },
14
+ [credentialSlot]: { id: credentialId, name: credentialName },
19
15
  },
20
16
  };
21
17
  }
22
- async function resolveCredentialSelection(input, ctx, deps, mapResume) {
23
- if (ctx.resumeData !== undefined)
24
- return mapResume(ctx.resumeData);
18
+ async function listExistingCredentials(credentialProvider, credentialType) {
19
+ const all = await credentialProvider.list();
20
+ return all.filter((c) => c.type === credentialType).map((c) => ({ id: c.id, name: c.name }));
21
+ }
22
+ async function resolveResume(input, resumeData, credentialProvider) {
23
+ if (!('credentials' in resumeData))
24
+ return { skipped: true };
25
+ const credentialId = resumeData.credentials[input.credentialType];
26
+ if (!credentialId)
27
+ return { skipped: true };
28
+ const existingCredentials = await listExistingCredentials(credentialProvider, input.credentialType);
29
+ const match = existingCredentials.find((c) => c.id === credentialId);
30
+ return withNodeCredentialMap(input, credentialId, match?.name ?? credentialId);
31
+ }
32
+ async function resolveCredentialSelection(input, ctx, deps) {
33
+ if (ctx.resumeData !== undefined && ctx.resumeData !== null) {
34
+ return await resolveResume(input, ctx.resumeData, deps.credentialProvider);
35
+ }
25
36
  if (deps.isCredentialTypeKnown && !deps.isCredentialTypeKnown(input.credentialType)) {
26
37
  throw new Error(`Unknown credential type "${input.credentialType}". Use an exact n8n credential type name.`);
27
38
  }
28
- const all = await deps.credentialProvider.list();
29
- const matching = all.filter((c) => c.type === input.credentialType);
30
- if (matching.length === 1) {
31
- return mapResume({
32
- credentialId: matching[0].id,
33
- credentialName: matching[0].name,
34
- });
39
+ const existingCredentials = await listExistingCredentials(deps.credentialProvider, input.credentialType);
40
+ if (existingCredentials.length === 1) {
41
+ return withNodeCredentialMap(input, existingCredentials[0].id, existingCredentials[0].name);
35
42
  }
36
- return await ctx.suspend(input);
43
+ return await ctx.suspend({
44
+ requestId: (0, nanoid_1.nanoid)(),
45
+ message: input.purpose,
46
+ severity: 'info',
47
+ credentialRequests: [
48
+ {
49
+ credentialType: input.credentialType,
50
+ reason: input.purpose,
51
+ existingCredentials,
52
+ },
53
+ ],
54
+ credentialFlow: { stage: 'generic' },
55
+ });
37
56
  }
38
57
  function buildAskCredentialTool(deps) {
39
- return (new tool_1.Tool(api_types_1.ASK_CREDENTIAL_TOOL_NAME)
58
+ return new tool_1.Tool(api_types_1.ASK_CREDENTIAL_TOOL_NAME)
40
59
  .description('Show a credential picker card in the chat UI and suspend until the user selects ' +
41
60
  'a credential. Call ONCE per credential slot, BEFORE the write_config / patch_config ' +
42
61
  'that introduces the node tool. Returns { credentialId, credentialName, credentials } on success ' +
@@ -44,12 +63,12 @@ function buildAskCredentialTool(deps) {
44
63
  'without credentials. For node tools, copy the returned `credentials` object into `node.credentials`. Auto-resolves without ' +
45
64
  'rendering a card when the user has exactly one credential of the requested type.')
46
65
  .input(api_types_1.askCredentialInputSchema)
47
- .suspend(api_types_1.askCredentialInputSchema)
48
- .resume(api_types_1.askCredentialResumeSchema)
66
+ .suspend(api_types_1.credentialSuspendPayloadSchema)
67
+ .resume(api_types_1.credentialResumeSchema)
49
68
  .handler(async (input, ctx) => {
50
- return await resolveCredentialSelection(input, ctx, deps, (resume) => withNodeCredentialMap(input, resume));
69
+ return await resolveCredentialSelection(input, ctx, deps);
51
70
  })
52
- .build());
71
+ .build();
53
72
  }
54
73
  function buildAskEmbeddingCredentialTool(deps) {
55
74
  return new tool_1.Tool(api_types_1.ASK_EMBEDDING_CREDENTIAL_TOOL_NAME)
@@ -58,16 +77,13 @@ function buildAskEmbeddingCredentialTool(deps) {
58
77
  'the user selects a credential. Returns { credentialId, credentialName, credentials } ' +
59
78
  'on success or { skipped: true } if the user skips credential setup.')
60
79
  .input(api_types_1.askCredentialInputSchema)
61
- .suspend(api_types_1.askCredentialInputSchema)
62
- .resume(api_types_1.askCredentialResumeSchema)
80
+ .suspend(api_types_1.credentialSuspendPayloadSchema)
81
+ .resume(api_types_1.credentialResumeSchema)
63
82
  .handler(async (input, ctx) => {
64
83
  if (deps.isAssistantProxyEnabled()) {
65
- return withNodeCredentialMap(input, {
66
- credentialId: api_types_1.MANAGED_CREDENTIAL_TOKEN,
67
- credentialName: 'Managed by n8n',
68
- });
84
+ return withNodeCredentialMap(input, api_types_1.MANAGED_CREDENTIAL_TOKEN, 'Managed by n8n');
69
85
  }
70
- return await resolveCredentialSelection(input, ctx, deps, (resume) => withNodeCredentialMap(input, resume));
86
+ return await resolveCredentialSelection(input, ctx, deps);
71
87
  })
72
88
  .build();
73
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"ask-credential.tool.js","sourceRoot":"","sources":["../../../../../src/modules/agents/builder/interactive/ask-credential.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ask-credential.tool.js","sourceRoot":"","sources":["../../../../../src/modules/agents/builder/interactive/ask-credential.tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { BuiltTool } from '@n8n/agents';
2
+ export declare function buildAskQuestionsTool(): BuiltTool;
@@ -0,0 +1,108 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildAskQuestionsTool = buildAskQuestionsTool;
4
+ const tool_1 = require("@n8n/agents/tool");
5
+ const api_types_1 = require("@n8n/api-types");
6
+ const nanoid_1 = require("nanoid");
7
+ const n8n_workflow_1 = require("n8n-workflow");
8
+ const zod_1 = require("zod");
9
+ const askQuestionsQuestionSchema = zod_1.z.object({
10
+ id: zod_1.z.string().optional().describe('Unique question identifier; defaults to q1, q2, ...'),
11
+ question: zod_1.z.string().describe('The question text to display to the user'),
12
+ type: zod_1.z
13
+ .enum(['single', 'multi', 'text'])
14
+ .describe('single = pick one option, multi = pick many, text = free-form input'),
15
+ options: zod_1.z
16
+ .array(zod_1.z.string())
17
+ .optional()
18
+ .describe('Suggested answers (required for single/multi, ignored for text)'),
19
+ });
20
+ const askQuestionsInputSchema = zod_1.z.object({
21
+ questions: zod_1.z
22
+ .array(askQuestionsQuestionSchema)
23
+ .min(1)
24
+ .describe('All questions to ask the user, batched into a single card'),
25
+ introMessage: zod_1.z.string().optional().describe('Brief intro text shown above the questions'),
26
+ });
27
+ function withDefaultIds(questions) {
28
+ const explicitIds = questions.map((q) => q.id).filter((id) => id !== undefined);
29
+ if (new Set(explicitIds).size !== explicitIds.length) {
30
+ throw new n8n_workflow_1.UserError('ask_questions: question ids must be unique');
31
+ }
32
+ const usedIds = new Set(explicitIds);
33
+ return questions.map((question, index) => {
34
+ if (question.id)
35
+ return { ...question, id: question.id };
36
+ let candidate = index + 1;
37
+ let id = `q${candidate}`;
38
+ while (usedIds.has(id)) {
39
+ candidate++;
40
+ id = `q${candidate}`;
41
+ }
42
+ usedIds.add(id);
43
+ return { ...question, id };
44
+ });
45
+ }
46
+ function isAutoResolvable(questions) {
47
+ return (questions.length === 1 &&
48
+ questions[0].type === 'single' &&
49
+ (questions[0].options?.length ?? 0) === 1);
50
+ }
51
+ function autoResolvedAnswer(question) {
52
+ return {
53
+ questionId: question.id,
54
+ selectedOptions: [question.options[0]],
55
+ };
56
+ }
57
+ function enrichAnswers(answers, questions) {
58
+ return answers.map((answer) => {
59
+ const question = questions.find((q) => q.id === answer.questionId);
60
+ return { ...answer, question: question?.question ?? answer.questionId };
61
+ });
62
+ }
63
+ function usableAnswers(resumeData) {
64
+ if (resumeData.approved === false)
65
+ return undefined;
66
+ if (!resumeData.answers || resumeData.answers.length === 0)
67
+ return undefined;
68
+ if (resumeData.answers.every((answer) => answer.skipped === true))
69
+ return undefined;
70
+ return resumeData.answers;
71
+ }
72
+ function buildAskQuestionsTool() {
73
+ return new tool_1.Tool(api_types_1.ASK_QUESTIONS_TOOL_NAME)
74
+ .description('Ask the user one or more questions in a single batched card; the run suspends until ' +
75
+ 'they respond. ALWAYS use this instead of calling it multiple times when you have more ' +
76
+ 'than one question — batch them into one call. Questions are single-select, ' +
77
+ 'multi-select, or free-text. A question is asked at most once — a dismissal or empty ' +
78
+ 'answer means "proceed without this": assume a sensible default and never re-present ' +
79
+ 'it. Returns { answered: false } on dismissal, or { answered: true, answers } otherwise. ' +
80
+ 'A single single-select question with exactly one option auto-resolves to that option ' +
81
+ 'without showing a card.')
82
+ .input(askQuestionsInputSchema)
83
+ .suspend(api_types_1.questionsSuspendPayloadSchema)
84
+ .resume(api_types_1.questionsResumeSchema)
85
+ .handler(async (input, ctx) => {
86
+ const questions = withDefaultIds(input.questions);
87
+ if (ctx.resumeData === undefined || ctx.resumeData === null) {
88
+ if (isAutoResolvable(questions)) {
89
+ const answers = enrichAnswers([autoResolvedAnswer(questions[0])], questions);
90
+ return { answered: true, answers };
91
+ }
92
+ return await ctx.suspend({
93
+ requestId: (0, nanoid_1.nanoid)(),
94
+ message: input.introMessage ?? 'The agent builder has questions',
95
+ severity: 'info',
96
+ inputType: 'questions',
97
+ questions,
98
+ ...(input.introMessage ? { introMessage: input.introMessage } : {}),
99
+ });
100
+ }
101
+ const answers = usableAnswers(ctx.resumeData);
102
+ if (!answers)
103
+ return { answered: false };
104
+ return { answered: true, answers: enrichAnswers(answers, questions) };
105
+ })
106
+ .build();
107
+ }
108
+ //# sourceMappingURL=ask-questions.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ask-questions.tool.js","sourceRoot":"","sources":["../../../../../src/modules/agents/builder/interactive/ask-questions.tool.ts"],"names":[],"mappings":";;AAyGA,sDA6CC;AArJD,2CAAwC;AACxC,8CAQwB;AACxB,mCAAgC;AAChC,+CAAyC;AACzC,6BAAwB;AAExB,MAAM,0BAA0B,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,EAAE,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,qDAAqD,CAAC;IACzF,QAAQ,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0CAA0C,CAAC;IACzE,IAAI,EAAE,OAAC;SACL,IAAI,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;SACjC,QAAQ,CAAC,qEAAqE,CAAC;IACjF,OAAO,EAAE,OAAC;SACR,KAAK,CAAC,OAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,EAAE;SACV,QAAQ,CAAC,iEAAiE,CAAC;CAC7E,CAAC,CAAC;AAEH,MAAM,uBAAuB,GAAG,OAAC,CAAC,MAAM,CAAC;IACxC,SAAS,EAAE,OAAC;SACV,KAAK,CAAC,0BAA0B,CAAC;SACjC,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,2DAA2D,CAAC;IACvE,YAAY,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;CAC1F,CAAC,CAAC;AAUH,SAAS,cAAc,CACtB,SAA4D;IAE5D,MAAM,WAAW,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,EAAE,EAAgB,EAAE,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;IAC9F,IAAI,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC,IAAI,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;QACtD,MAAM,IAAI,wBAAS,CAAC,4CAA4C,CAAC,CAAC;IACnE,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,WAAW,CAAC,CAAC;IACrC,OAAO,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;QACxC,IAAI,QAAQ,CAAC,EAAE;YAAE,OAAO,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC;QAEzD,IAAI,SAAS,GAAG,KAAK,GAAG,CAAC,CAAC;QAC1B,IAAI,EAAE,GAAG,IAAI,SAAS,EAAE,CAAC;QACzB,OAAO,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACxB,SAAS,EAAE,CAAC;YACZ,EAAE,GAAG,IAAI,SAAS,EAAE,CAAC;QACtB,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,OAAO,EAAE,GAAG,QAAQ,EAAE,EAAE,EAAE,CAAC;IAC5B,CAAC,CAAC,CAAC;AACJ,CAAC;AAGD,SAAS,gBAAgB,CAAC,SAAgC;IACzD,OAAO,CACN,SAAS,CAAC,MAAM,KAAK,CAAC;QACtB,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ;QAC9B,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,MAAM,IAAI,CAAC,CAAC,KAAK,CAAC,CACzC,CAAC;AACH,CAAC;AAED,SAAS,kBAAkB,CAAC,QAA6B;IACxD,OAAO;QACN,UAAU,EAAE,QAAQ,CAAC,EAAE;QACvB,eAAe,EAAE,CAAC,QAAQ,CAAC,OAAQ,CAAC,CAAC,CAAC,CAAC;KACvC,CAAC;AACH,CAAC;AAGD,SAAS,aAAa,CACrB,OAAyB,EACzB,SAAgC;IAEhC,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;QAC7B,MAAM,QAAQ,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,UAAU,CAAC,CAAC;QACnE,OAAO,EAAE,GAAG,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,MAAM,CAAC,UAAU,EAAE,CAAC;IACzE,CAAC,CAAC,CAAC;AACJ,CAAC;AAOD,SAAS,aAAa,CAAC,UAA+B;IACrD,IAAI,UAAU,CAAC,QAAQ,KAAK,KAAK;QAAE,OAAO,SAAS,CAAC;IACpD,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAC7E,IAAI,UAAU,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,CAAC;QAAE,OAAO,SAAS,CAAC;IACpF,OAAO,UAAU,CAAC,OAAO,CAAC;AAC3B,CAAC;AAED,SAAgB,qBAAqB;IACpC,OAAO,IAAI,WAAI,CAAC,mCAAuB,CAAC;SACtC,WAAW,CACX,sFAAsF;QACrF,wFAAwF;QACxF,6EAA6E;QAC7E,sFAAsF;QACtF,sFAAsF;QACtF,0FAA0F;QAC1F,uFAAuF;QACvF,yBAAyB,CAC1B;SACA,KAAK,CAAC,uBAAuB,CAAC;SAC9B,OAAO,CAAC,yCAA6B,CAAC;SACtC,MAAM,CAAC,iCAAqB,CAAC;SAC7B,OAAO,CACP,KAAK,EACJ,KAAwB,EACxB,GAA2E,EAC1E,EAAE;QACH,MAAM,SAAS,GAAG,cAAc,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;QAElD,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,GAAG,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAC7D,IAAI,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC;gBACjC,MAAM,OAAO,GAAG,aAAa,CAAC,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC;gBAC7E,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;YACpC,CAAC;YAED,OAAO,MAAM,GAAG,CAAC,OAAO,CAAC;gBACxB,SAAS,EAAE,IAAA,eAAM,GAAE;gBACnB,OAAO,EAAE,KAAK,CAAC,YAAY,IAAI,iCAAiC;gBAChE,QAAQ,EAAE,MAAe;gBACzB,SAAS,EAAE,WAAoB;gBAC/B,SAAS;gBACT,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACnE,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,OAAO,GAAG,aAAa,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QAC9C,IAAI,CAAC,OAAO;YAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;QAEzC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC;IACvE,CAAC,CACD;SACA,KAAK,EAAE,CAAC;AACX,CAAC"}
@@ -0,0 +1,7 @@
1
+ import type { BuiltTool } from '@n8n/agents';
2
+ export interface ConfigureChannelToolDeps {
3
+ agentId: string;
4
+ projectId: string;
5
+ listChatIntegrationTypes: () => string[];
6
+ }
7
+ export declare function buildConfigureChannelTool(deps: ConfigureChannelToolDeps): BuiltTool;
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildConfigureChannelTool = buildConfigureChannelTool;
4
+ const tool_1 = require("@n8n/agents/tool");
5
+ const api_types_1 = require("@n8n/api-types");
6
+ const nanoid_1 = require("nanoid");
7
+ const zod_1 = require("zod");
8
+ const configureChannelInputSchema = zod_1.z.object({
9
+ integrationType: zod_1.z.string().describe('Chat platform type from list_integration_types'),
10
+ });
11
+ function buildConfigureChannelTool(deps) {
12
+ return new tool_1.Tool(api_types_1.CONFIGURE_CHANNEL_TOOL_NAME)
13
+ .description('Connect one available chat channel to the target agent. First call ' +
14
+ 'list_integration_types and pass a returned `type` as `integrationType`; do not infer ' +
15
+ 'channel names. Shows setup UI in chat where the user creates a new channel credential ' +
16
+ 'or skips. The setup UI persists the connection, so use this for channel credentials ' +
17
+ 'instead of the credentials tool or config writes. Returns { connected: boolean }; if ' +
18
+ 'false, continue without the channel and do not re-prompt.')
19
+ .input(configureChannelInputSchema)
20
+ .suspend(api_types_1.channelSuspendPayloadSchema)
21
+ .resume(api_types_1.channelResumeSchema)
22
+ .handler(async ({ integrationType }, ctx) => {
23
+ if (ctx.resumeData !== undefined && ctx.resumeData !== null) {
24
+ return { connected: ctx.resumeData.approved };
25
+ }
26
+ const availableTypes = deps.listChatIntegrationTypes();
27
+ if (!availableTypes.includes(integrationType)) {
28
+ const availableMessage = availableTypes.length
29
+ ? ` Available: ${availableTypes.join(', ')}.`
30
+ : ' No chat channels are currently available.';
31
+ return {
32
+ ok: false,
33
+ errors: [
34
+ {
35
+ message: `Unsupported chat channel "${integrationType}". Call list_integration_types ` +
36
+ 'and choose a returned type.' +
37
+ availableMessage,
38
+ },
39
+ ],
40
+ };
41
+ }
42
+ return await ctx.suspend({
43
+ requestId: (0, nanoid_1.nanoid)(),
44
+ message: `Set up the ${integrationType} channel`,
45
+ severity: 'info',
46
+ channelConfig: { integrationType, agentId: deps.agentId },
47
+ projectId: deps.projectId,
48
+ });
49
+ })
50
+ .build();
51
+ }
52
+ //# sourceMappingURL=configure-channel.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"configure-channel.tool.js","sourceRoot":"","sources":["../../../../../src/modules/agents/builder/interactive/configure-channel.tool.ts"],"names":[],"mappings":";;AAyBA,8DAuDC;AA/ED,2CAAwC;AACxC,8CAMwB;AACxB,mCAAgC;AAChC,6BAAwB;AAExB,MAAM,2BAA2B,GAAG,OAAC,CAAC,MAAM,CAAC;IAC5C,eAAe,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;CACtF,CAAC,CAAC;AAWH,SAAgB,yBAAyB,CAAC,IAA8B;IACvE,OAAO,IAAI,WAAI,CAAC,uCAA2B,CAAC;SAC1C,WAAW,CACX,qEAAqE;QACpE,uFAAuF;QACvF,wFAAwF;QACxF,sFAAsF;QACtF,uFAAuF;QACvF,2DAA2D,CAC5D;SACA,KAAK,CAAC,2BAA2B,CAAC;SAClC,OAAO,CAAC,uCAA2B,CAAC;SACpC,MAAM,CAAC,+BAAmB,CAAC;SAC3B,OAAO,CACP,KAAK,EACJ,EAAE,eAAe,EAAyB,EAC1C,GAAuE,EACtE,EAAE;QAMH,IAAI,GAAG,CAAC,UAAU,KAAK,SAAS,IAAI,GAAG,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YAC7D,OAAO,EAAE,SAAS,EAAE,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QAC/C,CAAC;QAED,MAAM,cAAc,GAAG,IAAI,CAAC,wBAAwB,EAAE,CAAC;QACvD,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YAC/C,MAAM,gBAAgB,GAAG,cAAc,CAAC,MAAM;gBAC7C,CAAC,CAAC,eAAe,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG;gBAC7C,CAAC,CAAC,4CAA4C,CAAC;YAChD,OAAO;gBACN,EAAE,EAAE,KAAc;gBAClB,MAAM,EAAE;oBACP;wBACC,OAAO,EACN,6BAA6B,eAAe,iCAAiC;4BAC7E,6BAA6B;4BAC7B,gBAAgB;qBACjB;iBACD;aACD,CAAC;QACH,CAAC;QAED,OAAO,MAAM,GAAG,CAAC,OAAO,CAAC;YACxB,SAAS,EAAE,IAAA,eAAM,GAAE;YACnB,OAAO,EAAE,cAAc,eAAe,UAAU;YAChD,QAAQ,EAAE,MAAe;YACzB,aAAa,EAAE,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE;YACzD,SAAS,EAAE,IAAI,CAAC,SAAS;SACzB,CAAC,CAAC;IACJ,CAAC,CACD;SACA,KAAK,EAAE,CAAC;AACX,CAAC"}
@@ -1,4 +1,4 @@
1
1
  export { buildAskCredentialTool, buildAskEmbeddingCredentialTool } from './ask-credential.tool';
2
- export { buildAskLlmTool } from './ask-llm.tool';
3
- export { buildAskQuestionTool } from './ask-question.tool';
2
+ export { buildAskQuestionsTool } from './ask-questions.tool';
3
+ export { buildConfigureChannelTool } from './configure-channel.tool';
4
4
  export { buildResolveLlmTool } from './resolve-llm.tool';
@@ -1,13 +1,13 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.buildResolveLlmTool = exports.buildAskQuestionTool = exports.buildAskLlmTool = exports.buildAskEmbeddingCredentialTool = exports.buildAskCredentialTool = void 0;
3
+ exports.buildResolveLlmTool = exports.buildConfigureChannelTool = exports.buildAskQuestionsTool = exports.buildAskEmbeddingCredentialTool = exports.buildAskCredentialTool = void 0;
4
4
  var ask_credential_tool_1 = require("./ask-credential.tool");
5
5
  Object.defineProperty(exports, "buildAskCredentialTool", { enumerable: true, get: function () { return ask_credential_tool_1.buildAskCredentialTool; } });
6
6
  Object.defineProperty(exports, "buildAskEmbeddingCredentialTool", { enumerable: true, get: function () { return ask_credential_tool_1.buildAskEmbeddingCredentialTool; } });
7
- var ask_llm_tool_1 = require("./ask-llm.tool");
8
- Object.defineProperty(exports, "buildAskLlmTool", { enumerable: true, get: function () { return ask_llm_tool_1.buildAskLlmTool; } });
9
- var ask_question_tool_1 = require("./ask-question.tool");
10
- Object.defineProperty(exports, "buildAskQuestionTool", { enumerable: true, get: function () { return ask_question_tool_1.buildAskQuestionTool; } });
7
+ var ask_questions_tool_1 = require("./ask-questions.tool");
8
+ Object.defineProperty(exports, "buildAskQuestionsTool", { enumerable: true, get: function () { return ask_questions_tool_1.buildAskQuestionsTool; } });
9
+ var configure_channel_tool_1 = require("./configure-channel.tool");
10
+ Object.defineProperty(exports, "buildConfigureChannelTool", { enumerable: true, get: function () { return configure_channel_tool_1.buildConfigureChannelTool; } });
11
11
  var resolve_llm_tool_1 = require("./resolve-llm.tool");
12
12
  Object.defineProperty(exports, "buildResolveLlmTool", { enumerable: true, get: function () { return resolve_llm_tool_1.buildResolveLlmTool; } });
13
13
  //# sourceMappingURL=index.js.map