n8n 2.23.2 → 2.25.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (559) hide show
  1. package/dist/active-workflow-manager.d.ts +8 -4
  2. package/dist/active-workflow-manager.js +26 -9
  3. package/dist/active-workflow-manager.js.map +1 -1
  4. package/dist/auth/auth.service.d.ts +1 -1
  5. package/dist/auth/auth.service.js +2 -1
  6. package/dist/auth/auth.service.js.map +1 -1
  7. package/dist/build.tsbuildinfo +1 -1
  8. package/dist/controllers/ai.controller.js +1 -1
  9. package/dist/controllers/ai.controller.js.map +1 -1
  10. package/dist/controllers/api-keys.controller.d.ts +20 -15
  11. package/dist/controllers/api-keys.controller.js +7 -4
  12. package/dist/controllers/api-keys.controller.js.map +1 -1
  13. package/dist/controllers/oauth/oauth1-credential.controller.d.ts +4 -2
  14. package/dist/controllers/oauth/oauth1-credential.controller.js +15 -5
  15. package/dist/controllers/oauth/oauth1-credential.controller.js.map +1 -1
  16. package/dist/controllers/oauth/oauth2-credential.controller.d.ts +4 -2
  17. package/dist/controllers/oauth/oauth2-credential.controller.js +15 -6
  18. package/dist/controllers/oauth/oauth2-credential.controller.js.map +1 -1
  19. package/dist/controllers/project.controller.d.ts +8 -0
  20. package/dist/controllers/project.controller.js +2 -1
  21. package/dist/controllers/project.controller.js.map +1 -1
  22. package/dist/controllers/security-settings.controller.js +18 -1
  23. package/dist/controllers/security-settings.controller.js.map +1 -1
  24. package/dist/controllers/telemetry.controller.js +4 -1
  25. package/dist/controllers/telemetry.controller.js.map +1 -1
  26. package/dist/credentials/credential-connection-status-provider.interface.d.ts +3 -0
  27. package/dist/credentials/credential-connection-status-proxy.d.ts +3 -0
  28. package/dist/credentials/credential-connection-status-proxy.js +10 -0
  29. package/dist/credentials/credential-connection-status-proxy.js.map +1 -1
  30. package/dist/credentials/credentials.controller.d.ts +6 -0
  31. package/dist/credentials/credentials.controller.js +39 -2
  32. package/dist/credentials/credentials.controller.js.map +1 -1
  33. package/dist/credentials/credentials.service.d.ts +29 -13
  34. package/dist/credentials/credentials.service.ee.d.ts +2 -0
  35. package/dist/credentials/credentials.service.ee.js +3 -0
  36. package/dist/credentials/credentials.service.ee.js.map +1 -1
  37. package/dist/credentials/credentials.service.js +27 -6
  38. package/dist/credentials/credentials.service.js.map +1 -1
  39. package/dist/credentials-helper.d.ts +1 -0
  40. package/dist/credentials-helper.js +14 -4
  41. package/dist/credentials-helper.js.map +1 -1
  42. package/dist/errors/credential-missing-id.error.d.ts +4 -0
  43. package/dist/errors/credential-missing-id.error.js +14 -0
  44. package/dist/errors/credential-missing-id.error.js.map +1 -0
  45. package/dist/eventbus/event-message-classes/index.d.ts +2 -2
  46. package/dist/eventbus/event-message-classes/index.js +3 -0
  47. package/dist/eventbus/event-message-classes/index.js.map +1 -1
  48. package/dist/events/maps/relay.event-map.d.ts +54 -2
  49. package/dist/events/relays/log-streaming.event-relay.d.ts +3 -0
  50. package/dist/events/relays/log-streaming.event-relay.js +39 -1
  51. package/dist/events/relays/log-streaming.event-relay.js.map +1 -1
  52. package/dist/events/relays/telemetry.event-relay.d.ts +6 -0
  53. package/dist/events/relays/telemetry.event-relay.js +74 -3
  54. package/dist/events/relays/telemetry.event-relay.js.map +1 -1
  55. package/dist/execution-lifecycle/execution-lifecycle-hooks.js +6 -5
  56. package/dist/execution-lifecycle/execution-lifecycle-hooks.js.map +1 -1
  57. package/dist/executions/execution-data/db-store.d.ts +1 -0
  58. package/dist/executions/execution-data/db-store.js +26 -0
  59. package/dist/executions/execution-data/db-store.js.map +1 -1
  60. package/dist/executions/execution-data/fs-store.d.ts +2 -0
  61. package/dist/executions/execution-data/fs-store.js +27 -0
  62. package/dist/executions/execution-data/fs-store.js.map +1 -1
  63. package/dist/executions/execution-data/types.d.ts +1 -0
  64. package/dist/executions/execution-persistence.d.ts +38 -4
  65. package/dist/executions/execution-persistence.js +127 -2
  66. package/dist/executions/execution-persistence.js.map +1 -1
  67. package/dist/expression-observability/expression-observability.provider.d.ts +3 -1
  68. package/dist/expression-observability/expression-observability.provider.js +48 -46
  69. package/dist/expression-observability/expression-observability.provider.js.map +1 -1
  70. package/dist/interfaces.d.ts +3 -1
  71. package/dist/modules/agents/agent-execution.service.d.ts +4 -2
  72. package/dist/modules/agents/agent-execution.service.js +3 -3
  73. package/dist/modules/agents/agent-execution.service.js.map +1 -1
  74. package/dist/modules/agents/agent-knowledge-command.service.d.ts +40 -0
  75. package/dist/modules/agents/agent-knowledge-command.service.js +221 -0
  76. package/dist/modules/agents/agent-knowledge-command.service.js.map +1 -0
  77. package/dist/modules/agents/agent-knowledge.service.d.ts +42 -0
  78. package/dist/modules/agents/agent-knowledge.service.js +300 -0
  79. package/dist/modules/agents/agent-knowledge.service.js.map +1 -0
  80. package/dist/modules/agents/agent-task.service.d.ts +52 -0
  81. package/dist/modules/agents/agent-task.service.js +487 -0
  82. package/dist/modules/agents/agent-task.service.js.map +1 -0
  83. package/dist/modules/agents/agent-upload.middleware.d.ts +7 -0
  84. package/dist/modules/agents/agent-upload.middleware.js +62 -0
  85. package/dist/modules/agents/agent-upload.middleware.js.map +1 -0
  86. package/dist/modules/agents/agents-tools.service.d.ts +1 -1
  87. package/dist/modules/agents/agents-tools.service.js +12 -3
  88. package/dist/modules/agents/agents-tools.service.js.map +1 -1
  89. package/dist/modules/agents/agents.controller.d.ts +138 -45
  90. package/dist/modules/agents/agents.controller.js +176 -48
  91. package/dist/modules/agents/agents.controller.js.map +1 -1
  92. package/dist/modules/agents/agents.module.d.ts +2 -2
  93. package/dist/modules/agents/agents.module.js +13 -5
  94. package/dist/modules/agents/agents.module.js.map +1 -1
  95. package/dist/modules/agents/agents.service.d.ts +43 -7
  96. package/dist/modules/agents/agents.service.js +341 -57
  97. package/dist/modules/agents/agents.service.js.map +1 -1
  98. package/dist/modules/agents/builder/agents-builder-prompts.d.ts +6 -5
  99. package/dist/modules/agents/builder/agents-builder-prompts.js +92 -18
  100. package/dist/modules/agents/builder/agents-builder-prompts.js.map +1 -1
  101. package/dist/modules/agents/builder/agents-builder-tools.service.d.ts +11 -1
  102. package/dist/modules/agents/builder/agents-builder-tools.service.js +164 -26
  103. package/dist/modules/agents/builder/agents-builder-tools.service.js.map +1 -1
  104. package/dist/modules/agents/builder/agents-builder.service.d.ts +3 -1
  105. package/dist/modules/agents/builder/agents-builder.service.js +8 -3
  106. package/dist/modules/agents/builder/agents-builder.service.js.map +1 -1
  107. package/dist/modules/agents/builder/builder-tool-names.d.ts +3 -0
  108. package/dist/modules/agents/builder/builder-tool-names.js +3 -0
  109. package/dist/modules/agents/builder/builder-tool-names.js.map +1 -1
  110. package/dist/modules/agents/builder/interactive/ask-credential.tool.d.ts +1 -0
  111. package/dist/modules/agents/builder/interactive/ask-credential.tool.js +25 -4
  112. package/dist/modules/agents/builder/interactive/ask-credential.tool.js.map +1 -1
  113. package/dist/modules/agents/builder/interactive/ask-question.tool.js +6 -5
  114. package/dist/modules/agents/builder/interactive/ask-question.tool.js.map +1 -1
  115. package/dist/modules/agents/builder/prompts/config-mutation.prompt.js +20 -5
  116. package/dist/modules/agents/builder/prompts/config-mutation.prompt.js.map +1 -1
  117. package/dist/modules/agents/builder/prompts/config-rules.prompt.js +23 -4
  118. package/dist/modules/agents/builder/prompts/config-rules.prompt.js.map +1 -1
  119. package/dist/modules/agents/builder/prompts/llm-selection.prompt.js +18 -1
  120. package/dist/modules/agents/builder/prompts/llm-selection.prompt.js.map +1 -1
  121. package/dist/modules/agents/builder/prompts/memory.prompt.d.ts +1 -1
  122. package/dist/modules/agents/builder/prompts/memory.prompt.js +5 -3
  123. package/dist/modules/agents/builder/prompts/memory.prompt.js.map +1 -1
  124. package/dist/modules/agents/builder/prompts/tools.prompt.d.ts +1 -1
  125. package/dist/modules/agents/builder/prompts/tools.prompt.js +11 -2
  126. package/dist/modules/agents/builder/prompts/tools.prompt.js.map +1 -1
  127. package/dist/modules/agents/builder/search-mcp-servers.tool.d.ts +6 -0
  128. package/dist/modules/agents/builder/search-mcp-servers.tool.js +85 -0
  129. package/dist/modules/agents/builder/search-mcp-servers.tool.js.map +1 -0
  130. package/dist/modules/agents/builder/skill-body-template.d.ts +4 -0
  131. package/dist/modules/agents/builder/skill-body-template.js +31 -0
  132. package/dist/modules/agents/builder/skill-body-template.js.map +1 -0
  133. package/dist/modules/agents/builder/skills/index.js +6 -1
  134. package/dist/modules/agents/builder/skills/index.js.map +1 -1
  135. package/dist/modules/agents/builder/skills/integrations.skill.js +39 -18
  136. package/dist/modules/agents/builder/skills/integrations.skill.js.map +1 -1
  137. package/dist/modules/agents/builder/skills/mcp.skill.d.ts +2 -0
  138. package/dist/modules/agents/builder/skills/mcp.skill.js +110 -0
  139. package/dist/modules/agents/builder/skills/mcp.skill.js.map +1 -0
  140. package/dist/modules/agents/builder/skills/research.skill.js +8 -5
  141. package/dist/modules/agents/builder/skills/research.skill.js.map +1 -1
  142. package/dist/modules/agents/builder/skills/target-skills.skill.js +41 -13
  143. package/dist/modules/agents/builder/skills/target-skills.skill.js.map +1 -1
  144. package/dist/modules/agents/builder/skills/target-tasks.skill.d.ts +2 -0
  145. package/dist/modules/agents/builder/skills/target-tasks.skill.js +82 -0
  146. package/dist/modules/agents/builder/skills/target-tasks.skill.js.map +1 -0
  147. package/dist/modules/agents/builder/task-objective-template.d.ts +3 -0
  148. package/dist/modules/agents/builder/task-objective-template.js +27 -0
  149. package/dist/modules/agents/builder/task-objective-template.js.map +1 -0
  150. package/dist/modules/agents/builder/verify-mcp-server.tool.d.ts +8 -0
  151. package/dist/modules/agents/builder/verify-mcp-server.tool.js +79 -0
  152. package/dist/modules/agents/builder/verify-mcp-server.tool.js.map +1 -0
  153. package/dist/modules/agents/entities/agent-execution-thread.entity.d.ts +4 -0
  154. package/dist/modules/agents/entities/agent-execution-thread.entity.js +26 -0
  155. package/dist/modules/agents/entities/agent-execution-thread.entity.js.map +1 -1
  156. package/dist/modules/agents/entities/agent-file.entity.d.ts +11 -0
  157. package/dist/modules/agents/entities/agent-file.entity.js +48 -0
  158. package/dist/modules/agents/entities/agent-file.entity.js.map +1 -0
  159. package/dist/modules/agents/entities/agent-task-run-lock.entity.d.ts +10 -0
  160. package/dist/modules/agents/entities/agent-task-run-lock.entity.js +54 -0
  161. package/dist/modules/agents/entities/agent-task-run-lock.entity.js.map +1 -0
  162. package/dist/modules/agents/entities/agent-task-snapshot.entity.d.ts +12 -0
  163. package/dist/modules/agents/entities/agent-task-snapshot.entity.js +70 -0
  164. package/dist/modules/agents/entities/agent-task-snapshot.entity.js.map +1 -0
  165. package/dist/modules/agents/entities/agent-task.entity.d.ts +11 -0
  166. package/dist/modules/agents/entities/agent-task.entity.js +64 -0
  167. package/dist/modules/agents/entities/agent-task.entity.js.map +1 -0
  168. package/dist/modules/agents/execution-recorder.d.ts +1 -0
  169. package/dist/modules/agents/execution-recorder.js +9 -5
  170. package/dist/modules/agents/execution-recorder.js.map +1 -1
  171. package/dist/modules/agents/integrations/agent-chat-bridge.d.ts +16 -4
  172. package/dist/modules/agents/integrations/agent-chat-bridge.js +372 -116
  173. package/dist/modules/agents/integrations/agent-chat-bridge.js.map +1 -1
  174. package/dist/modules/agents/integrations/agent-chat-integration.d.ts +27 -2
  175. package/dist/modules/agents/integrations/agent-chat-integration.js +5 -0
  176. package/dist/modules/agents/integrations/agent-chat-integration.js.map +1 -1
  177. package/dist/modules/agents/integrations/chat-integration.service.d.ts +15 -6
  178. package/dist/modules/agents/integrations/chat-integration.service.js +9 -10
  179. package/dist/modules/agents/integrations/chat-integration.service.js.map +1 -1
  180. package/dist/modules/agents/integrations/component-mapper.d.ts +14 -0
  181. package/dist/modules/agents/integrations/component-mapper.js +9 -1
  182. package/dist/modules/agents/integrations/component-mapper.js.map +1 -1
  183. package/dist/modules/agents/integrations/integration-action-executor.d.ts +22 -0
  184. package/dist/modules/agents/integrations/integration-action-executor.js +171 -0
  185. package/dist/modules/agents/integrations/integration-action-executor.js.map +1 -0
  186. package/dist/modules/agents/integrations/integration-context-query-executor.d.ts +18 -0
  187. package/dist/modules/agents/integrations/integration-context-query-executor.js +58 -0
  188. package/dist/modules/agents/integrations/integration-context-query-executor.js.map +1 -0
  189. package/dist/modules/agents/integrations/integration-error-codes.d.ts +13 -0
  190. package/dist/modules/agents/integrations/integration-error-codes.js +16 -0
  191. package/dist/modules/agents/integrations/integration-error-codes.js.map +1 -0
  192. package/dist/modules/agents/integrations/integration-helpers.d.ts +21 -0
  193. package/dist/modules/agents/integrations/integration-helpers.js +72 -0
  194. package/dist/modules/agents/integrations/integration-helpers.js.map +1 -0
  195. package/dist/modules/agents/integrations/integration-message-context.service.d.ts +13 -0
  196. package/dist/modules/agents/integrations/integration-message-context.service.js +129 -0
  197. package/dist/modules/agents/integrations/integration-message-context.service.js.map +1 -0
  198. package/dist/modules/agents/integrations/integration-tools.d.ts +205 -0
  199. package/dist/modules/agents/integrations/integration-tools.js +955 -0
  200. package/dist/modules/agents/integrations/integration-tools.js.map +1 -0
  201. package/dist/modules/agents/integrations/integrations-sync.d.ts +1 -1
  202. package/dist/modules/agents/integrations/integrations-sync.js +1 -29
  203. package/dist/modules/agents/integrations/integrations-sync.js.map +1 -1
  204. package/dist/modules/agents/integrations/n8n-memory.d.ts +2 -0
  205. package/dist/modules/agents/integrations/n8n-memory.js +18 -11
  206. package/dist/modules/agents/integrations/n8n-memory.js.map +1 -1
  207. package/dist/modules/agents/integrations/platforms/linear-integration.d.ts +13 -2
  208. package/dist/modules/agents/integrations/platforms/linear-integration.js +70 -15
  209. package/dist/modules/agents/integrations/platforms/linear-integration.js.map +1 -1
  210. package/dist/modules/agents/integrations/platforms/linear-operations.d.ts +18 -0
  211. package/dist/modules/agents/integrations/platforms/linear-operations.js +679 -0
  212. package/dist/modules/agents/integrations/platforms/linear-operations.js.map +1 -0
  213. package/dist/modules/agents/integrations/platforms/slack-integration.d.ts +11 -1
  214. package/dist/modules/agents/integrations/platforms/slack-integration.js +53 -1
  215. package/dist/modules/agents/integrations/platforms/slack-integration.js.map +1 -1
  216. package/dist/modules/agents/integrations/platforms/slack-operations.d.ts +17 -0
  217. package/dist/modules/agents/integrations/platforms/slack-operations.js +288 -0
  218. package/dist/modules/agents/integrations/platforms/slack-operations.js.map +1 -0
  219. package/dist/modules/agents/integrations/platforms/telegram-integration.d.ts +9 -2
  220. package/dist/modules/agents/integrations/platforms/telegram-integration.js +17 -0
  221. package/dist/modules/agents/integrations/platforms/telegram-integration.js.map +1 -1
  222. package/dist/modules/agents/integrations/slack-app-setup.service.js +7 -1
  223. package/dist/modules/agents/integrations/slack-app-setup.service.js.map +1 -1
  224. package/dist/modules/agents/json-config/from-json-config.d.ts +4 -2
  225. package/dist/modules/agents/json-config/from-json-config.js +88 -11
  226. package/dist/modules/agents/json-config/from-json-config.js.map +1 -1
  227. package/dist/modules/agents/json-config/mcp-client-factory.d.ts +16 -0
  228. package/dist/modules/agents/json-config/mcp-client-factory.js +155 -0
  229. package/dist/modules/agents/json-config/mcp-client-factory.js.map +1 -0
  230. package/dist/modules/agents/json-config/native-web-search-provider-tools.d.ts +8 -0
  231. package/dist/modules/agents/json-config/native-web-search-provider-tools.js +59 -0
  232. package/dist/modules/agents/json-config/native-web-search-provider-tools.js.map +1 -0
  233. package/dist/modules/agents/json-config/schema-text-serializer.js +12 -2
  234. package/dist/modules/agents/json-config/schema-text-serializer.js.map +1 -1
  235. package/dist/modules/agents/repositories/agent-execution-thread.repository.d.ts +1 -1
  236. package/dist/modules/agents/repositories/agent-execution-thread.repository.js +5 -3
  237. package/dist/modules/agents/repositories/agent-execution-thread.repository.js.map +1 -1
  238. package/dist/modules/agents/repositories/agent-file.repository.d.ts +7 -0
  239. package/dist/modules/agents/repositories/agent-file.repository.js +35 -0
  240. package/dist/modules/agents/repositories/agent-file.repository.js.map +1 -0
  241. package/dist/modules/agents/repositories/agent-history.repository.d.ts +2 -0
  242. package/dist/modules/agents/repositories/agent-history.repository.js +18 -0
  243. package/dist/modules/agents/repositories/agent-history.repository.js.map +1 -1
  244. package/dist/modules/agents/repositories/agent-task-run-lock.repository.d.ts +12 -0
  245. package/dist/modules/agents/repositories/agent-task-run-lock.repository.js +72 -0
  246. package/dist/modules/agents/repositories/agent-task-run-lock.repository.js.map +1 -0
  247. package/dist/modules/agents/repositories/agent-task-snapshot.repository.d.ts +11 -0
  248. package/dist/modules/agents/repositories/agent-task-snapshot.repository.js +45 -0
  249. package/dist/modules/agents/repositories/agent-task-snapshot.repository.js.map +1 -0
  250. package/dist/modules/agents/repositories/agent-task.repository.d.ts +7 -0
  251. package/dist/modules/agents/repositories/agent-task.repository.js +32 -0
  252. package/dist/modules/agents/repositories/agent-task.repository.js.map +1 -0
  253. package/dist/modules/agents/repositories/agent.repository.js +1 -2
  254. package/dist/modules/agents/repositories/agent.repository.js.map +1 -1
  255. package/dist/modules/agents/tools/knowledge/csv-helpers.d.ts +73 -0
  256. package/dist/modules/agents/tools/knowledge/csv-helpers.js +341 -0
  257. package/dist/modules/agents/tools/knowledge/csv-helpers.js.map +1 -0
  258. package/dist/modules/agents/tools/knowledge/csv.operation.d.ts +61 -0
  259. package/dist/modules/agents/tools/knowledge/csv.operation.js +207 -0
  260. package/dist/modules/agents/tools/knowledge/csv.operation.js.map +1 -0
  261. package/dist/modules/agents/tools/knowledge/file-references.d.ts +16 -0
  262. package/dist/modules/agents/tools/knowledge/file-references.js +35 -0
  263. package/dist/modules/agents/tools/knowledge/file-references.js.map +1 -0
  264. package/dist/modules/agents/tools/knowledge/read.operation.d.ts +8 -0
  265. package/dist/modules/agents/tools/knowledge/read.operation.js +38 -0
  266. package/dist/modules/agents/tools/knowledge/read.operation.js.map +1 -0
  267. package/dist/modules/agents/tools/knowledge/schemas.d.ts +1505 -0
  268. package/dist/modules/agents/tools/knowledge/schemas.js +441 -0
  269. package/dist/modules/agents/tools/knowledge/schemas.js.map +1 -0
  270. package/dist/modules/agents/tools/knowledge/search.operation.d.ts +9 -0
  271. package/dist/modules/agents/tools/knowledge/search.operation.js +332 -0
  272. package/dist/modules/agents/tools/knowledge/search.operation.js.map +1 -0
  273. package/dist/modules/agents/tools/knowledge/tool.d.ts +8 -0
  274. package/dist/modules/agents/tools/knowledge/tool.js +121 -0
  275. package/dist/modules/agents/tools/knowledge/tool.js.map +1 -0
  276. package/dist/modules/agents/utils/agent-memory-scope.d.ts +1 -1
  277. package/dist/modules/agents/utils/agent-memory-scope.js +4 -4
  278. package/dist/modules/agents/utils/agent-memory-scope.js.map +1 -1
  279. package/dist/modules/agents/utils/agent-resource-id.d.ts +1 -1
  280. package/dist/modules/chat-hub/chat-hub.module.d.ts +2 -2
  281. package/dist/modules/chat-hub/chat-hub.settings.controller.d.ts +4 -4
  282. package/dist/modules/chat-hub/chat-hub.types.d.ts +5 -5
  283. package/dist/modules/chat-hub/dto/chat-models-request.dto.d.ts +1 -1
  284. package/dist/modules/dynamic-credentials.ee/constants.d.ts +1 -1
  285. package/dist/modules/dynamic-credentials.ee/constants.js +2 -1
  286. package/dist/modules/dynamic-credentials.ee/constants.js.map +1 -1
  287. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.d.ts +9 -2
  288. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js +45 -14
  289. package/dist/modules/dynamic-credentials.ee/dynamic-credentials.controller.js.map +1 -1
  290. package/dist/modules/dynamic-credentials.ee/services/credential-connection-status.service.d.ts +4 -0
  291. package/dist/modules/dynamic-credentials.ee/services/credential-connection-status.service.js +16 -0
  292. package/dist/modules/dynamic-credentials.ee/services/credential-connection-status.service.js.map +1 -1
  293. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js +6 -2
  294. package/dist/modules/dynamic-credentials.ee/services/dynamic-credential.service.js.map +1 -1
  295. package/dist/modules/instance-ai/eval/eval-mocked-credentials-helper.d.ts +1 -0
  296. package/dist/modules/instance-ai/eval/eval-mocked-credentials-helper.js +21 -2
  297. package/dist/modules/instance-ai/eval/eval-mocked-credentials-helper.js.map +1 -1
  298. package/dist/modules/instance-ai/eval/execution.service.d.ts +4 -1
  299. package/dist/modules/instance-ai/eval/execution.service.js +118 -24
  300. package/dist/modules/instance-ai/eval/execution.service.js.map +1 -1
  301. package/dist/modules/instance-ai/eval/llm-wire-server.d.ts +8 -3
  302. package/dist/modules/instance-ai/eval/llm-wire-server.js +147 -50
  303. package/dist/modules/instance-ai/eval/llm-wire-server.js.map +1 -1
  304. package/dist/modules/instance-ai/eval/mock-handler.js +45 -8
  305. package/dist/modules/instance-ai/eval/mock-handler.js.map +1 -1
  306. package/dist/modules/instance-ai/eval/mock-quirks.d.ts +4 -2
  307. package/dist/modules/instance-ai/eval/mock-quirks.js +83 -4
  308. package/dist/modules/instance-ai/eval/mock-quirks.js.map +1 -1
  309. package/dist/modules/instance-ai/eval/openai-envelope.d.ts +8 -0
  310. package/dist/modules/instance-ai/eval/openai-envelope.js +121 -8
  311. package/dist/modules/instance-ai/eval/openai-envelope.js.map +1 -1
  312. package/dist/modules/instance-ai/eval/openai-responses-envelope.d.ts +11 -0
  313. package/dist/modules/instance-ai/eval/openai-responses-envelope.js +238 -0
  314. package/dist/modules/instance-ai/eval/openai-responses-envelope.js.map +1 -0
  315. package/dist/modules/instance-ai/eval/request-binary-redactor.d.ts +1 -0
  316. package/dist/modules/instance-ai/eval/request-binary-redactor.js +74 -0
  317. package/dist/modules/instance-ai/eval/request-binary-redactor.js.map +1 -0
  318. package/dist/modules/instance-ai/eval/workflow-analysis.d.ts +19 -1
  319. package/dist/modules/instance-ai/eval/workflow-analysis.js +159 -76
  320. package/dist/modules/instance-ai/eval/workflow-analysis.js.map +1 -1
  321. package/dist/modules/instance-ai/extract-resolved-node-parameters.d.ts +7 -0
  322. package/dist/modules/instance-ai/extract-resolved-node-parameters.js +221 -0
  323. package/dist/modules/instance-ai/extract-resolved-node-parameters.js.map +1 -0
  324. package/dist/modules/instance-ai/instance-ai-memory.service.d.ts +7 -1
  325. package/dist/modules/instance-ai/instance-ai-memory.service.js +80 -3
  326. package/dist/modules/instance-ai/instance-ai-memory.service.js.map +1 -1
  327. package/dist/modules/instance-ai/instance-ai-settings.service.js +1 -16
  328. package/dist/modules/instance-ai/instance-ai-settings.service.js.map +1 -1
  329. package/dist/modules/instance-ai/instance-ai.adapter.service.d.ts +1 -1
  330. package/dist/modules/instance-ai/instance-ai.adapter.service.js +67 -7
  331. package/dist/modules/instance-ai/instance-ai.adapter.service.js.map +1 -1
  332. package/dist/modules/instance-ai/instance-ai.module.d.ts +1 -1
  333. package/dist/modules/instance-ai/instance-ai.service.d.ts +24 -1
  334. package/dist/modules/instance-ai/instance-ai.service.js +400 -26
  335. package/dist/modules/instance-ai/instance-ai.service.js.map +1 -1
  336. package/dist/modules/instance-ai/liveness/instance-ai-liveness.service.d.ts +1 -0
  337. package/dist/modules/instance-ai/liveness/instance-ai-liveness.service.js +1 -0
  338. package/dist/modules/instance-ai/liveness/instance-ai-liveness.service.js.map +1 -1
  339. package/dist/modules/instance-ai/message-parser.d.ts +2 -0
  340. package/dist/modules/instance-ai/message-parser.js +165 -36
  341. package/dist/modules/instance-ai/message-parser.js.map +1 -1
  342. package/dist/modules/instance-ai/repositories/instance-ai-checkpoint.repository.d.ts +2 -0
  343. package/dist/modules/instance-ai/repositories/instance-ai-checkpoint.repository.js +13 -0
  344. package/dist/modules/instance-ai/repositories/instance-ai-checkpoint.repository.js.map +1 -1
  345. package/dist/modules/instance-ai/repositories/instance-ai-pending-confirmation.repository.d.ts +12 -0
  346. package/dist/modules/instance-ai/repositories/instance-ai-pending-confirmation.repository.js +80 -0
  347. package/dist/modules/instance-ai/repositories/instance-ai-pending-confirmation.repository.js.map +1 -0
  348. package/dist/modules/instance-ai/storage/db-snapshot-storage.d.ts +1 -0
  349. package/dist/modules/instance-ai/storage/db-snapshot-storage.js +23 -0
  350. package/dist/modules/instance-ai/storage/db-snapshot-storage.js.map +1 -1
  351. package/dist/modules/instance-ai/storage/typeorm-agent-checkpoint-store.d.ts +10 -4
  352. package/dist/modules/instance-ai/storage/typeorm-agent-checkpoint-store.js +49 -37
  353. package/dist/modules/instance-ai/storage/typeorm-agent-checkpoint-store.js.map +1 -1
  354. package/dist/modules/instance-ai/web-research/index.d.ts +0 -2
  355. package/dist/modules/instance-ai/web-research/index.js +1 -5
  356. package/dist/modules/instance-ai/web-research/index.js.map +1 -1
  357. package/dist/modules/ldap.ee/helpers.ee.js +6 -2
  358. package/dist/modules/ldap.ee/helpers.ee.js.map +1 -1
  359. package/dist/modules/mcp/mcp.controller.js +13 -6
  360. package/dist/modules/mcp/mcp.controller.js.map +1 -1
  361. package/dist/modules/mcp/mcp.service.d.ts +10 -2
  362. package/dist/modules/mcp/mcp.service.js +39 -6
  363. package/dist/modules/mcp/mcp.service.js.map +1 -1
  364. package/dist/modules/mcp/mcp.settings.controller.d.ts +2 -0
  365. package/dist/modules/mcp/mcp.settings.service.d.ts +2 -0
  366. package/dist/modules/mcp/mcp.settings.service.js +6 -5
  367. package/dist/modules/mcp/mcp.settings.service.js.map +1 -1
  368. package/dist/modules/mcp/mcp.types.d.ts +6 -0
  369. package/dist/modules/mcp/mcp.types.js +9 -0
  370. package/dist/modules/mcp/mcp.types.js.map +1 -1
  371. package/dist/modules/mcp/tools/execute-workflow.tool.d.ts +6 -6
  372. package/dist/modules/mcp/tools/search-workflows.tool.d.ts +2 -1
  373. package/dist/modules/mcp/tools/search-workflows.tool.js +12 -4
  374. package/dist/modules/mcp/tools/search-workflows.tool.js.map +1 -1
  375. package/dist/modules/mcp/tools/workflow-builder/constants.d.ts +1 -1
  376. package/dist/modules/mcp/tools/workflow-builder/constants.js +2 -1
  377. package/dist/modules/mcp/tools/workflow-builder/constants.js.map +1 -1
  378. package/dist/modules/mcp/tools/workflow-builder/mcp-instructions.js +6 -4
  379. package/dist/modules/mcp/tools/workflow-builder/mcp-instructions.js.map +1 -1
  380. package/dist/modules/mcp/tools/workflow-builder/update-workflow.tool.d.ts +67 -6
  381. package/dist/modules/mcp/tools/workflow-builder/validate-node.tool.d.ts +30 -0
  382. package/dist/modules/mcp/tools/workflow-builder/validate-node.tool.js +161 -0
  383. package/dist/modules/mcp/tools/workflow-builder/validate-node.tool.js.map +1 -0
  384. package/dist/modules/mcp/tools/workflow-builder/workflow-operations.d.ts +67 -6
  385. package/dist/modules/mcp/tools/workflow-builder/workflow-operations.js +51 -0
  386. package/dist/modules/mcp/tools/workflow-builder/workflow-operations.js.map +1 -1
  387. package/dist/modules/mcp-registry/registry/mcp-registry.types.js.map +1 -1
  388. package/dist/modules/mcp-registry/synthesize-type-def.d.ts +2 -0
  389. package/dist/modules/mcp-registry/synthesize-type-def.js +35 -0
  390. package/dist/modules/mcp-registry/synthesize-type-def.js.map +1 -0
  391. package/dist/modules/n8n-packages/engine/import-pipeline.d.ts +24 -0
  392. package/dist/modules/n8n-packages/engine/import-pipeline.js +206 -0
  393. package/dist/modules/n8n-packages/engine/import-pipeline.js.map +1 -0
  394. package/dist/modules/n8n-packages/entities/credential/credential-requirements.extractor.d.ts +6 -0
  395. package/dist/modules/n8n-packages/entities/credential/credential-requirements.extractor.js +33 -0
  396. package/dist/modules/n8n-packages/entities/credential/credential-requirements.extractor.js.map +1 -0
  397. package/dist/modules/n8n-packages/entities/credential/credential.exporter.d.ts +23 -0
  398. package/dist/modules/n8n-packages/entities/credential/credential.exporter.js +68 -0
  399. package/dist/modules/n8n-packages/entities/credential/credential.exporter.js.map +1 -0
  400. package/dist/modules/n8n-packages/entities/credential/credential.serializer.d.ts +5 -0
  401. package/dist/modules/n8n-packages/entities/credential/credential.serializer.js +25 -0
  402. package/dist/modules/n8n-packages/entities/credential/credential.serializer.js.map +1 -0
  403. package/dist/modules/n8n-packages/entities/credential/credential.types.d.ts +6 -0
  404. package/dist/modules/n8n-packages/entities/credential/credential.types.js +3 -0
  405. package/dist/modules/n8n-packages/entities/credential/credential.types.js.map +1 -0
  406. package/dist/modules/n8n-packages/entities/requirements-extractor.d.ts +4 -0
  407. package/dist/modules/n8n-packages/entities/requirements-extractor.js +3 -0
  408. package/dist/modules/n8n-packages/entities/requirements-extractor.js.map +1 -0
  409. package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.d.ts +12 -3
  410. package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.js +11 -20
  411. package/dist/modules/n8n-packages/entities/workflow/workflow.exporter.js.map +1 -1
  412. package/dist/modules/n8n-packages/entities/workflow/workflow.serializer.d.ts +3 -0
  413. package/dist/modules/n8n-packages/entities/workflow/workflow.serializer.js +10 -0
  414. package/dist/modules/n8n-packages/entities/workflow/workflow.serializer.js.map +1 -1
  415. package/dist/modules/n8n-packages/io/package-reader.d.ts +6 -0
  416. package/dist/modules/n8n-packages/io/package-reader.js +3 -0
  417. package/dist/modules/n8n-packages/io/package-reader.js.map +1 -0
  418. package/dist/modules/n8n-packages/io/slug.utils.d.ts +1 -1
  419. package/dist/modules/n8n-packages/io/slug.utils.js +3 -3
  420. package/dist/modules/n8n-packages/io/slug.utils.js.map +1 -1
  421. package/dist/modules/n8n-packages/io/tar/tar-package-reader.d.ts +13 -0
  422. package/dist/modules/n8n-packages/io/tar/tar-package-reader.js +84 -0
  423. package/dist/modules/n8n-packages/io/tar/tar-package-reader.js.map +1 -0
  424. package/dist/modules/n8n-packages/io/unique-filename-allocator.d.ts +7 -0
  425. package/dist/modules/n8n-packages/io/unique-filename-allocator.js +27 -0
  426. package/dist/modules/n8n-packages/io/unique-filename-allocator.js.map +1 -0
  427. package/dist/modules/n8n-packages/n8n-packages.service.d.ts +7 -2
  428. package/dist/modules/n8n-packages/n8n-packages.service.js +21 -3
  429. package/dist/modules/n8n-packages/n8n-packages.service.js.map +1 -1
  430. package/dist/modules/n8n-packages/n8n-packages.types.d.ts +22 -0
  431. package/dist/modules/n8n-packages/spec/manifest.schema.d.ts +121 -4
  432. package/dist/modules/n8n-packages/spec/manifest.schema.js +22 -3
  433. package/dist/modules/n8n-packages/spec/manifest.schema.js.map +1 -1
  434. package/dist/modules/n8n-packages/spec/requirements.schema.d.ts +51 -0
  435. package/dist/modules/n8n-packages/spec/requirements.schema.js +14 -0
  436. package/dist/modules/n8n-packages/spec/requirements.schema.js.map +1 -0
  437. package/dist/modules/n8n-packages/spec/serialized/credential.schema.d.ts +15 -0
  438. package/dist/modules/n8n-packages/spec/serialized/credential.schema.js +12 -0
  439. package/dist/modules/n8n-packages/spec/serialized/credential.schema.js.map +1 -0
  440. package/dist/modules/n8n-packages/spec/serialized/workflow.schema.d.ts +4 -4
  441. package/dist/modules/n8n-packages/utils/import-package-upload.d.ts +13 -0
  442. package/dist/modules/n8n-packages/utils/import-package-upload.js +59 -0
  443. package/dist/modules/n8n-packages/utils/import-package-upload.js.map +1 -0
  444. package/dist/modules/otel/execution-level-tracer.js +15 -6
  445. package/dist/modules/otel/execution-level-tracer.js.map +1 -1
  446. package/dist/modules/otel/execution-level-tracer.types.d.ts +3 -0
  447. package/dist/modules/otel/execution-level-tracer.types.js.map +1 -1
  448. package/dist/modules/otel/otel-lifecycle-handler.d.ts +4 -2
  449. package/dist/modules/otel/otel-lifecycle-handler.js +69 -4
  450. package/dist/modules/otel/otel-lifecycle-handler.js.map +1 -1
  451. package/dist/modules/otel/otel.config.d.ts +1 -0
  452. package/dist/modules/otel/otel.config.js +5 -0
  453. package/dist/modules/otel/otel.config.js.map +1 -1
  454. package/dist/modules/otel/otel.constants.d.ts +2 -0
  455. package/dist/modules/otel/otel.constants.js +2 -0
  456. package/dist/modules/otel/otel.constants.js.map +1 -1
  457. package/dist/modules/redaction/instance-redaction-enforcement.service.d.ts +4 -0
  458. package/dist/modules/redaction/instance-redaction-enforcement.service.js +8 -0
  459. package/dist/modules/redaction/instance-redaction-enforcement.service.js.map +1 -1
  460. package/dist/modules/redaction/redaction-context-hook.d.ts +9 -0
  461. package/dist/modules/redaction/redaction-context-hook.js +57 -0
  462. package/dist/modules/redaction/redaction-context-hook.js.map +1 -0
  463. package/dist/modules/redaction/redaction.module.js +1 -0
  464. package/dist/modules/redaction/redaction.module.js.map +1 -1
  465. package/dist/modules/source-control.ee/constants.d.ts +1 -0
  466. package/dist/modules/source-control.ee/constants.js +2 -1
  467. package/dist/modules/source-control.ee/constants.js.map +1 -1
  468. package/dist/modules/source-control.ee/source-control-status.service.ee.js +5 -0
  469. package/dist/modules/source-control.ee/source-control-status.service.ee.js.map +1 -1
  470. package/dist/modules/source-control.ee/source-control.controller.ee.d.ts +4 -2
  471. package/dist/modules/source-control.ee/source-control.controller.ee.js +32 -5
  472. package/dist/modules/source-control.ee/source-control.controller.ee.js.map +1 -1
  473. package/dist/modules/source-control.ee/source-control.service.ee.js +2 -0
  474. package/dist/modules/source-control.ee/source-control.service.ee.js.map +1 -1
  475. package/dist/modules/workflow-builder/workflow-builder-session.repository.js +2 -1
  476. package/dist/modules/workflow-builder/workflow-builder-session.repository.js.map +1 -1
  477. package/dist/node-catalog/node-catalog.service.d.ts +2 -0
  478. package/dist/node-catalog/node-catalog.service.js +38 -2
  479. package/dist/node-catalog/node-catalog.service.js.map +1 -1
  480. package/dist/oauth/oauth-browser-binding.service.d.ts +18 -0
  481. package/dist/oauth/oauth-browser-binding.service.js +68 -0
  482. package/dist/oauth/oauth-browser-binding.service.js.map +1 -0
  483. package/dist/oauth/oauth.service.d.ts +10 -4
  484. package/dist/oauth/oauth.service.js +87 -4
  485. package/dist/oauth/oauth.service.js.map +1 -1
  486. package/dist/oauth/types.d.ts +1 -0
  487. package/dist/oauth/types.js.map +1 -1
  488. package/dist/public-api/index.js +5 -1
  489. package/dist/public-api/index.js.map +1 -1
  490. package/dist/public-api/types.d.ts +6 -0
  491. package/dist/public-api/v1/handlers/credentials/credentials.service.js +1 -0
  492. package/dist/public-api/v1/handlers/credentials/credentials.service.js.map +1 -1
  493. package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.d.ts +5 -0
  494. package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.js +22 -0
  495. package/dist/public-api/v1/handlers/n8n-packages/n8n-packages.handler.js.map +1 -1
  496. package/dist/public-api/v1/openapi.yml +207 -59
  497. package/dist/requests.d.ts +4 -0
  498. package/dist/scaling/constants.d.ts +2 -2
  499. package/dist/scaling/pubsub/pubsub.event-map.d.ts +5 -2
  500. package/dist/scaling/pubsub/pubsub.types.d.ts +2 -1
  501. package/dist/services/ai-workflow-builder.service.d.ts +6 -3
  502. package/dist/services/ai-workflow-builder.service.js +13 -5
  503. package/dist/services/ai-workflow-builder.service.js.map +1 -1
  504. package/dist/services/api-key-auth.strategy.d.ts +4 -1
  505. package/dist/services/api-key-auth.strategy.js +18 -2
  506. package/dist/services/api-key-auth.strategy.js.map +1 -1
  507. package/dist/services/ownership.service.d.ts +1 -0
  508. package/dist/services/ownership.service.js +7 -0
  509. package/dist/services/ownership.service.js.map +1 -1
  510. package/dist/services/project.service.ee.d.ts +6 -2
  511. package/dist/services/project.service.ee.js +30 -8
  512. package/dist/services/project.service.ee.js.map +1 -1
  513. package/dist/services/public-api-key.service.d.ts +21 -14
  514. package/dist/services/public-api-key.service.js +14 -9
  515. package/dist/services/public-api-key.service.js.map +1 -1
  516. package/dist/telemetry/index.d.ts +6 -9
  517. package/dist/telemetry/index.js +23 -9
  518. package/dist/telemetry/index.js.map +1 -1
  519. package/dist/webhooks/constants.js +5 -1
  520. package/dist/webhooks/constants.js.map +1 -1
  521. package/dist/webhooks/live-webhooks.d.ts +8 -1
  522. package/dist/webhooks/live-webhooks.js +37 -22
  523. package/dist/webhooks/live-webhooks.js.map +1 -1
  524. package/dist/webhooks/waiting-forms.js +8 -1
  525. package/dist/webhooks/waiting-forms.js.map +1 -1
  526. package/dist/webhooks/webhook-helpers.d.ts +1 -1
  527. package/dist/webhooks/webhook-helpers.js +20 -10
  528. package/dist/webhooks/webhook-helpers.js.map +1 -1
  529. package/dist/webhooks/webhook-request-handler.js +1 -1
  530. package/dist/webhooks/webhook-request-handler.js.map +1 -1
  531. package/dist/workflow-helpers.d.ts +6 -1
  532. package/dist/workflow-helpers.js +9 -1
  533. package/dist/workflow-helpers.js.map +1 -1
  534. package/dist/workflows/workflow-creation.service.d.ts +4 -1
  535. package/dist/workflows/workflow-creation.service.js +12 -3
  536. package/dist/workflows/workflow-creation.service.js.map +1 -1
  537. package/dist/workflows/workflow-execution.service.js +2 -0
  538. package/dist/workflows/workflow-execution.service.js.map +1 -1
  539. package/dist/workflows/workflow-finder.service.d.ts +1 -0
  540. package/dist/workflows/workflow-published-data.service.d.ts +11 -0
  541. package/dist/workflows/workflow-published-data.service.js +39 -0
  542. package/dist/workflows/workflow-published-data.service.js.map +1 -0
  543. package/dist/workflows/workflow-validation.service.d.ts +5 -1
  544. package/dist/workflows/workflow-validation.service.js +55 -2
  545. package/dist/workflows/workflow-validation.service.js.map +1 -1
  546. package/dist/workflows/workflow.service.js +4 -0
  547. package/dist/workflows/workflow.service.js.map +1 -1
  548. package/dist/workflows/workflows.controller.d.ts +8 -0
  549. package/package.json +45 -37
  550. package/templates/form-trigger-completion.handlebars +12 -1
  551. package/dist/modules/agents/integrations/agent-schedule.service.d.ts +0 -30
  552. package/dist/modules/agents/integrations/agent-schedule.service.js +0 -331
  553. package/dist/modules/agents/integrations/agent-schedule.service.js.map +0 -1
  554. package/dist/modules/instance-ai/web-research/brave-search.d.ts +0 -10
  555. package/dist/modules/instance-ai/web-research/brave-search.js +0 -44
  556. package/dist/modules/instance-ai/web-research/brave-search.js.map +0 -1
  557. package/dist/modules/instance-ai/web-research/searxng-search.d.ts +0 -6
  558. package/dist/modules/instance-ai/web-research/searxng-search.js +0 -39
  559. package/dist/modules/instance-ai/web-research/searxng-search.js.map +0 -1
@@ -0,0 +1,110 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.mcpSkill = mcpSkill;
4
+ const api_types_1 = require("@n8n/api-types");
5
+ const zod_to_json_schema_1 = require("zod-to-json-schema");
6
+ const schema_text_serializer_1 = require("../../json-config/schema-text-serializer");
7
+ const mcpServerSchemaText = (0, schema_text_serializer_1.jsonSchemaToCompactText)((0, zod_to_json_schema_1.zodToJsonSchema)(api_types_1.McpServerConfigSchema));
8
+ function mcpSkill() {
9
+ return {
10
+ id: 'agent-builder-mcp',
11
+ name: 'Agent builder MCP servers',
12
+ description: 'Use when adding, removing, or updating MCP (Model Context Protocol) servers on the target agent.',
13
+ instructions: `\
14
+ ## Purpose
15
+
16
+ Use this to manage external MCP server connections in the target agent config.
17
+ MCP servers expose external tool catalogs to the target agent over HTTP. They
18
+ live on the top-level \`mcpServers\` array, and each entry maps 1:1 to a
19
+ connected MCP server.
20
+
21
+ ## Use when:
22
+
23
+ - The user asks for an external integration and you need to discover/connect an MCP server for it.
24
+ - The user asks to edit the target agent's MCP servers.
25
+ - The users wants to add a custom MCP server.
26
+
27
+ ## Workflow
28
+
29
+ ### Discovery and setup
30
+
31
+ Follow these steps in order when adding an MCP server:
32
+
33
+ 1. Search: call \`search_mcp_servers\` with queries matching the requested
34
+ integration (for example \`["github"]\`, \`["slack"]\`).
35
+ The result includes \`name\`, \`url\`, \`transport\`, \`authentication\`,
36
+ \`credentialType\`, \`tools\`, and optional \`metadata\`.
37
+ 2. Credential: for registry results, call \`ask_credential\` with the returned
38
+ \`credentialType\`. Never invent credential IDs.
39
+ 3. Verify: call \`verify_mcp_server\` with \`name\`, \`url\`, \`transport\`,
40
+ \`authentication\`, and (if applicable) \`credential\`.
41
+ 4. Write config: call \`read_config\`, then \`patch_config\` to add the entry
42
+ to \`mcpServers[]\` using the patch pattern below.
43
+
44
+ If \`search_mcp_servers\` returns no matches and the user provides a custom
45
+ server URL, skip the search result mapping and continue with manual
46
+ transport/authentication plus credential selection.
47
+
48
+ Full schema reference:
49
+
50
+ ${mcpServerSchemaText}
51
+
52
+ ### Credential flow
53
+
54
+ - For \`bearerAuth\`, call \`ask_credential\` with
55
+ \`credentialType: "httpBearerAuth"\`.
56
+ - For \`headerAuth\`, call \`ask_credential\` with
57
+ \`credentialType: "httpHeaderAuth"\`.
58
+ - For \`multipleHeadersAuth\`, call \`ask_credential\` with
59
+ \`credentialType: "httpMultipleHeadersAuth"\`.
60
+ - For \`mcpOAuth2Api\`, call \`ask_credential\` with
61
+ \`credentialType: "mcpOAuth2Api"\`.
62
+ - Never invent credential IDs. If the user declines, omit the server entirely
63
+ rather than persisting a stub.
64
+
65
+ ### Testing the connection
66
+
67
+ Before writing to config, call \`verify_mcp_server\` with server \`name\`,
68
+ \`url\`, \`transport\`, and (if applicable) the credential id from
69
+ \`ask_credential\`.
70
+
71
+ - Success returns \`{ ok: true, tools: [{ name, description }] }\`.
72
+ - Use the returned tool list to populate \`toolFilter.tools\` or
73
+ \`approval.tools\` so the user does not need to type tool names manually.
74
+ - Failure returns \`{ ok: false, error: "..." }\`.
75
+ - If verification fails, explain the error and ask the user to check the URL
76
+ or credentials before proceeding.
77
+
78
+ ### Selecting credentials
79
+
80
+ When using a registry-backed server, always use the \`credentialType\` returned
81
+ by \`search_mcp_servers\`.
82
+
83
+ For custom MCP servers, if credential type is unknown, ask the user which
84
+ credential type to use (OAuth2, Bearer Token, Header Auth, Multiple Headers
85
+ Auth, or None) via \`${api_types_1.ASK_QUESTION_TOOL_NAME}\`. Then map to:
86
+
87
+ - \`bearerAuth\` -> \`ask_credential\` with \`credentialType: "httpBearerAuth"\`
88
+ - \`headerAuth\` -> \`ask_credential\` with \`credentialType: "httpHeaderAuth"\`
89
+ - \`multipleHeadersAuth\` -> \`ask_credential\` with
90
+ \`credentialType: "httpMultipleHeadersAuth"\`
91
+ - \`mcpOAuth2Api\` -> \`ask_credential\` with \`credentialType: "mcpOAuth2Api"\`
92
+
93
+ ### Patch pattern
94
+
95
+ 1. Initialize the array if missing:
96
+ \`{ "op": "add", "path": "/mcpServers", "value": [] }\`
97
+ 2. Append each server:
98
+ \`{ "op": "add", "path": "/mcpServers/-", "value": { ... } }\`
99
+
100
+ ## Gotchas
101
+
102
+ - Server \`name\` must be unique across \`mcpServers\` within an agent.
103
+ - Never invent credential IDs. If the user declines, omit the server entirely.
104
+ - Never fabricate \`metadata.nodeTypeName\`.
105
+ - When \`search_mcp_servers\` returns \`metadata.nodeTypeName\`, include
106
+ \`metadata: { nodeTypeName: <result.nodeTypeName> }\` in the entry so the UI
107
+ can render the correct server form.`,
108
+ };
109
+ }
110
+ //# sourceMappingURL=mcp.skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp.skill.js","sourceRoot":"","sources":["../../../../../src/modules/agents/builder/skills/mcp.skill.ts"],"names":[],"mappings":";;AAWA,4BAsGC;AAhHD,8CAA+E;AAE/E,2DAAqD;AAErD,qFAAmF;AAEnF,MAAM,mBAAmB,GAAG,IAAA,gDAAuB,EAClD,IAAA,oCAAe,EAAC,iCAAqB,CAAgB,CACrD,CAAC;AAEF,SAAgB,QAAQ;IACvB,OAAO;QACN,EAAE,EAAE,mBAAmB;QACvB,IAAI,EAAE,2BAA2B;QACjC,WAAW,EACV,kGAAkG;QACnG,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqCd,mBAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBAmCE,kCAAsB;;;;;;;;;;;;;;;;;;;;;;sCAsBP;KACpC,CAAC;AACH,CAAC"}
@@ -11,11 +11,14 @@ function researchSkill() {
11
11
 
12
12
  Use this when external facts can change the target-agent build.
13
13
 
14
- ## Boundaries
15
-
16
- - You need n8n internals, local schema, or builder-tool guidance.
17
- - The API or service is well known enough to configure confidently from current context.
18
- - The user is asking for a general explanation that does not affect the target agent build.
14
+ ## Use when
15
+
16
+ - Current external API, product, standard, or spec facts can change target-agent
17
+ config, tool, credential, or instruction choices.
18
+ - You need to verify up-to-date endpoint, auth, or behavior details before
19
+ making build decisions.
20
+ - The user explicitly asks for research that should affect the target-agent
21
+ build.
19
22
 
20
23
  ## Workflow
21
24
 
@@ -1 +1 @@
1
- {"version":3,"file":"research.skill.js","sourceRoot":"","sources":["../../../../../src/modules/agents/builder/skills/research.skill.ts"],"names":[],"mappings":";;AAEA,sCAsCC;AAtCD,SAAgB,aAAa;IAC5B,OAAO;QACN,EAAE,EAAE,wBAAwB;QAC5B,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EACV,yNAAyN;QAC1N,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+EA8B+D;KAC7E,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"research.skill.js","sourceRoot":"","sources":["../../../../../src/modules/agents/builder/skills/research.skill.ts"],"names":[],"mappings":";;AAEA,sCAyCC;AAzCD,SAAgB,aAAa;IAC5B,OAAO;QACN,EAAE,EAAE,wBAAwB;QAC5B,IAAI,EAAE,wBAAwB;QAC9B,WAAW,EACV,yNAAyN;QAC1N,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;+EAiC+D;KAC7E,CAAC;AACH,CAAC"}
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.targetSkillsSkill = targetSkillsSkill;
4
+ const skill_body_template_1 = require("../skill-body-template");
4
5
  function targetSkillsSkill() {
5
6
  return {
6
7
  id: 'agent-builder-target-skills',
@@ -11,23 +12,48 @@ function targetSkillsSkill() {
11
12
 
12
13
  Use this to create reusable load-on-demand instructions for the target agent.
13
14
 
14
- ## Boundaries
15
+ ## Use when
15
16
 
16
- - The instruction is one-off and belongs directly in the target agent instructions.
17
- - You need guidance for your own builder behavior.
18
- - The user is asking to edit config, tools, integrations, memory, or model settings without a reusable target-agent skill.
17
+ - The user wants reusable target-agent guidance (for example playbooks,
18
+ policies, or domain instructions) that should load only for relevant future
19
+ requests.
20
+ - The same behavior is likely to be reused across multiple future tasks and
21
+ should be captured as a target-agent skill.
22
+ - You want conditional, load-on-demand behavior instead of always-on target
23
+ agent instructions.
24
+
25
+ ## Don't use when:
26
+
27
+ - The user asks for one-off target-agent instructions or config/tool/integration/model/memory edits.
28
+
29
+ ## Description (routing contract)
30
+
31
+ ${skill_body_template_1.SKILL_DESCRIPTION_RULE}
32
+
33
+ ## Skill body format (required)
34
+
35
+ ${skill_body_template_1.SKILL_BODY_FORMAT_RULE}
36
+
37
+ ${skill_body_template_1.SKILL_BODY_TEMPLATE}
38
+
39
+ ## Ask first (required)
40
+
41
+ Do NOT call \`create_skill\` until you have enough concrete domain detail to write
42
+ a genuinely useful skill: a specific routing description and a body whose
43
+ applicable sections are filled with real content (the actual steps, rules,
44
+ examples, and edge cases). If any of that is missing, ask the user clarifying
45
+ questions (use \`ask_question\` — discrete options for choices, or empty options
46
+ for open-ended) until you can write it. Never create a placeholder or vague skill.
19
47
 
20
48
  ## Workflow
21
49
 
50
+ - Gather the domain detail you need, asking clarifying questions until the
51
+ description and every applicable body section can be written with concrete
52
+ content.
53
+ - Write the \`description\` as the routing contract and the \`body\` using the
54
+ template above. Put all "when to use" / "when not to use" guidance in the
55
+ description, never in the body (the body is invisible until the skill loads).
22
56
  - Call \`create_skill\` with \`name\`, \`description\`, and \`body\`.
23
- - Treat the description as the routing contract: it is what the runtime sees
24
- before deciding whether to load the skill.
25
- - Put all "when to use" and "when not to use" guidance in the description.
26
- - The body is loaded only after the skill triggers, so it should be a compact
27
- operating manual: purpose, workflow, rules, gotchas, and verification where
28
- useful.
29
- - Do not rely on a body "Use when" section for activation; include routing
30
- guidance in \`description\`.
31
57
  - \`create_skill\` stores the body only; it does not attach the skill.
32
58
  - After it returns an id, call \`read_config\`.
33
59
  - Use \`patch_config\` or \`write_config\` to add \`{ "type": "skill", "id": "<returned id>" }\` to \`skills\`.
@@ -53,7 +79,9 @@ Use this to create reusable load-on-demand instructions for the target agent.
53
79
 
54
80
  - The returned skill id is attached in config as \`{ "type": "skill", "id": "<returned id>" }\`.
55
81
  - The skill description clearly states when it should load.
56
- - The body tells the target agent what to do differently when the skill is loaded.`,
82
+ - The body follows the template, with each applicable section filled with
83
+ concrete content (no placeholders), and tells the target agent what to do when
84
+ the skill is loaded.`,
57
85
  };
58
86
  }
59
87
  //# sourceMappingURL=target-skills.skill.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"target-skills.skill.js","sourceRoot":"","sources":["../../../../../src/modules/agents/builder/skills/target-skills.skill.ts"],"names":[],"mappings":";;AAEA,8CAuDC;AAvDD,SAAgB,iBAAiB;IAChC,OAAO;QACN,EAAE,EAAE,6BAA6B;QACjC,IAAI,EAAE,6BAA6B;QACnC,WAAW,EACV,mOAAmO;QACpO,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mFA+CmE;KACjF,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"target-skills.skill.js","sourceRoot":"","sources":["../../../../../src/modules/agents/builder/skills/target-skills.skill.ts"],"names":[],"mappings":";;AAQA,8CAkFC;AAxFD,gEAIgC;AAEhC,SAAgB,iBAAiB;IAChC,OAAO;QACN,EAAE,EAAE,6BAA6B;QACjC,IAAI,EAAE,6BAA6B;QACnC,WAAW,EACV,mOAAmO;QACpO,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;EAqBd,4CAAsB;;;;EAItB,4CAAsB;;EAEtB,yCAAmB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uBA+CE;KACrB,CAAC;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ import type { RuntimeSkill } from '@n8n/agents';
2
+ export declare function targetTasksSkill(): RuntimeSkill;
@@ -0,0 +1,82 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.targetTasksSkill = targetTasksSkill;
4
+ const task_objective_template_1 = require("../task-objective-template");
5
+ function targetTasksSkill() {
6
+ return {
7
+ id: 'agent-builder-target-tasks',
8
+ name: 'Agent Builder Target Tasks',
9
+ description: 'Use when the user wants the target agent to run something on a recurring schedule (a "task"): a daily/weekly/hourly objective the agent carries out on its own with create_task. Not for one-off requests, chat/event triggers, or config/tool/skill/model edits.',
10
+ instructions: `\
11
+ ## Purpose
12
+
13
+ Use this to create a recurring scheduled task for the target agent with
14
+ \`create_task\`. A task = a name + an objective (what the agent does each run) + a
15
+ cron schedule, stored as a \`{ type: "task", id, enabled }\` ref in the agent
16
+ config (\`config.tasks\`) plus a saved body. The config is the source of truth.
17
+
18
+ ## Use when
19
+
20
+ - The user wants the agent to do something automatically on a schedule
21
+ ("every morning", "each Monday", "hourly", etc.).
22
+ - There is a clear, repeatable objective the agent can carry out unattended.
23
+
24
+ ## Don't use when
25
+
26
+ - The request is a one-off action, a chat/event trigger, or a
27
+ config/tool/skill/model edit.
28
+
29
+ ## Objective format (required)
30
+
31
+ ${task_objective_template_1.TASK_OBJECTIVE_FORMAT_RULE}
32
+
33
+ ${task_objective_template_1.TASK_OBJECTIVE_TEMPLATE}
34
+
35
+ ## Ask first (required)
36
+
37
+ Do NOT call \`create_task\` until BOTH of these are true:
38
+
39
+ 1. You can fill EVERY section of the objective template above with concrete,
40
+ specific content — no placeholders, no guesses, nothing left to "refine
41
+ later". The objective is the ONLY message the agent receives when the task
42
+ fires, so it must stand on its own and must not rely on the current chat.
43
+ 2. The schedule is concrete — how often and at what time it should run.
44
+
45
+ If any section would be empty or a guess, ask the user clarifying questions (use
46
+ \`ask_question\` — discrete options for choices, or empty options for open-ended)
47
+ until you can complete the whole template and pin down the cadence. Never create a placeholder
48
+ or "refine-it-later" task.
49
+
50
+ ## Workflow
51
+
52
+ - Gather everything the template needs (every objective section + the cadence),
53
+ asking clarifying questions until no section is a guess.
54
+ - Write the objective using the exact template above, filling each section.
55
+ - Make sure the agent already has every tool the steps need (an integration,
56
+ node/workflow tool, or web search). If something is missing, add it to the agent
57
+ config first — a task can only use tools the agent already has.
58
+ - Translate the cadence into a valid 5-field cron expression (e.g. daily 09:00
59
+ -> "0 9 * * *"; weekdays 08:30 -> "30 8 * * 1-5"; hourly -> "0 * * * *").
60
+ - Call \`create_task\` with \`name\`, \`objective\`, and \`cronExpression\`.
61
+ - On \`{ ok: false, errors }\` (for example an invalid cron), fix the input and
62
+ retry.
63
+
64
+ ## Rules
65
+
66
+ - The objective must be self-contained and unambiguous.
67
+ - Use a short, descriptive task name.
68
+ - One task = one objective + one schedule. Create multiple tasks for multiple
69
+ recurring jobs.
70
+
71
+ ## Gotchas
72
+
73
+ - \`create_task\` adds a \`{ type: "task", id, enabled }\` ref to \`config.tasks\` and
74
+ creates the task body. The task is enabled by default and only starts running
75
+ once the agent is (re)published; tell the user this when relevant.
76
+ - To disable or remove a task, edit \`config.tasks\` with \`patch_config\` (set
77
+ \`enabled: false\`, or drop the ref). Changes take effect on the next publish.
78
+ - \`create_task\` does NOT add tools — if the task needs a tool the agent lacks,
79
+ add it to the config yourself first.`,
80
+ };
81
+ }
82
+ //# sourceMappingURL=target-tasks.skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"target-tasks.skill.js","sourceRoot":"","sources":["../../../../../src/modules/agents/builder/skills/target-tasks.skill.ts"],"names":[],"mappings":";;AAIA,4CA6EC;AA/ED,wEAAiG;AAEjG,SAAgB,gBAAgB;IAC/B,OAAO;QACN,EAAE,EAAE,4BAA4B;QAChC,IAAI,EAAE,4BAA4B;QAClC,WAAW,EACV,mQAAmQ;QACpQ,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;EAqBd,oDAA0B;;EAE1B,iDAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uCA8Cc;KACrC,CAAC;AACH,CAAC"}
@@ -0,0 +1,3 @@
1
+ export declare const TASK_OBJECTIVE_TEMPLATE = "## Objective\n<One sentence: the outcome to achieve on each run and why it matters.>\n\n## Context\n<Background the agent needs, the inputs and data sources to use, and the time window to consider (e.g. \"items created since the previous run\").>\n\n## Steps\n1. <First action.>\n2. <Next action.>\n\n## Output\n<The exact format of the result AND where to deliver it (e.g. \"email a summary to ops@example.com\", \"post to Slack #alerts\", \"append a row to the tracking sheet\"). The run is unattended, so the agent must actively deliver the result somewhere.>\n\n## Constraints\n<Scope limits, what to avoid, and what to do when there is nothing to act on (e.g. \"if there are no new items, do nothing\").>\n\n## Success criteria\n<A verifiable definition of done for a single run.>";
2
+ export declare const TASK_OBJECTIVE_FORMAT_RULE: string;
3
+ export declare const TASK_OBJECTIVE_GUIDANCE = "The objective is the only message the agent receives on each unattended run, so it must be fully self-contained (never rely on the current chat) and must follow this exact Markdown structure, with every section filled in with concrete, specific content \u2014 no placeholders or angle-bracket text:\n\n## Objective\n<One sentence: the outcome to achieve on each run and why it matters.>\n\n## Context\n<Background the agent needs, the inputs and data sources to use, and the time window to consider (e.g. \"items created since the previous run\").>\n\n## Steps\n1. <First action.>\n2. <Next action.>\n\n## Output\n<The exact format of the result AND where to deliver it (e.g. \"email a summary to ops@example.com\", \"post to Slack #alerts\", \"append a row to the tracking sheet\"). The run is unattended, so the agent must actively deliver the result somewhere.>\n\n## Constraints\n<Scope limits, what to avoid, and what to do when there is nothing to act on (e.g. \"if there are no new items, do nothing\").>\n\n## Success criteria\n<A verifiable definition of done for a single run.>";
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TASK_OBJECTIVE_GUIDANCE = exports.TASK_OBJECTIVE_FORMAT_RULE = exports.TASK_OBJECTIVE_TEMPLATE = void 0;
4
+ exports.TASK_OBJECTIVE_TEMPLATE = `## Objective
5
+ <One sentence: the outcome to achieve on each run and why it matters.>
6
+
7
+ ## Context
8
+ <Background the agent needs, the inputs and data sources to use, and the time window to consider (e.g. "items created since the previous run").>
9
+
10
+ ## Steps
11
+ 1. <First action.>
12
+ 2. <Next action.>
13
+
14
+ ## Output
15
+ <The exact format of the result AND where to deliver it (e.g. "email a summary to ops@example.com", "post to Slack #alerts", "append a row to the tracking sheet"). The run is unattended, so the agent must actively deliver the result somewhere.>
16
+
17
+ ## Constraints
18
+ <Scope limits, what to avoid, and what to do when there is nothing to act on (e.g. "if there are no new items, do nothing").>
19
+
20
+ ## Success criteria
21
+ <A verifiable definition of done for a single run.>`;
22
+ exports.TASK_OBJECTIVE_FORMAT_RULE = 'The objective is the only message the agent receives on each unattended run, so it must be ' +
23
+ 'fully self-contained (never rely on the current chat) and must follow this exact Markdown ' +
24
+ 'structure, with every section filled in with concrete, specific content — no placeholders or ' +
25
+ 'angle-bracket text:';
26
+ exports.TASK_OBJECTIVE_GUIDANCE = `${exports.TASK_OBJECTIVE_FORMAT_RULE}\n\n${exports.TASK_OBJECTIVE_TEMPLATE}`;
27
+ //# sourceMappingURL=task-objective-template.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"task-objective-template.js","sourceRoot":"","sources":["../../../../src/modules/agents/builder/task-objective-template.ts"],"names":[],"mappings":";;;AAca,QAAA,uBAAuB,GAAG;;;;;;;;;;;;;;;;;oDAiBa,CAAC;AAGxC,QAAA,0BAA0B,GACtC,6FAA6F;IAC7F,4FAA4F;IAC5F,+FAA+F;IAC/F,qBAAqB,CAAC;AAGV,QAAA,uBAAuB,GAAG,GAAG,kCAA0B,OAAO,+BAAuB,EAAE,CAAC"}
@@ -0,0 +1,8 @@
1
+ import type { BuiltTool, CredentialProvider } from '@n8n/agents';
2
+ import type { OauthService } from '../../../oauth/oauth.service';
3
+ export interface VerifyMcpServerDeps {
4
+ credentialProvider: CredentialProvider;
5
+ oauthService: OauthService;
6
+ projectId: string;
7
+ }
8
+ export declare function buildVerifyMcpServerTool(deps: VerifyMcpServerDeps): BuiltTool;
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.buildVerifyMcpServerTool = buildVerifyMcpServerTool;
4
+ const tool_1 = require("@n8n/agents/tool");
5
+ const api_types_1 = require("@n8n/api-types");
6
+ const zod_1 = require("zod");
7
+ const mcp_client_factory_1 = require("../json-config/mcp-client-factory");
8
+ const builder_tool_names_1 = require("./builder-tool-names");
9
+ const verifyMcpServerInputSchema = zod_1.z.object({
10
+ name: zod_1.z
11
+ .string()
12
+ .min(1)
13
+ .max(64)
14
+ .regex(/^[a-zA-Z0-9_-]+$/)
15
+ .describe('The server name (used as the tool-name prefix)'),
16
+ url: zod_1.z.string().min(1).describe('The MCP server endpoint URL'),
17
+ transport: zod_1.z
18
+ .enum(['sse', 'streamableHttp'])
19
+ .default('streamableHttp')
20
+ .describe('Transport type. Defaults to streamableHttp'),
21
+ authentication: zod_1.z
22
+ .union([api_types_1.McpAuthenticationSchemaTypes, zod_1.z.string().endsWith('McpOAuth2Api')])
23
+ .default('none')
24
+ .describe('Authentication scheme'),
25
+ credential: zod_1.z
26
+ .string()
27
+ .optional()
28
+ .describe('Credential id returned by ask_credential. Required when authentication is not "none"'),
29
+ connectionTimeoutMs: zod_1.z
30
+ .number()
31
+ .int()
32
+ .min(1)
33
+ .max(120_000)
34
+ .optional()
35
+ .describe('Connection timeout in milliseconds'),
36
+ });
37
+ function buildVerifyMcpServerTool(deps) {
38
+ return new tool_1.Tool(builder_tool_names_1.BUILDER_TOOLS.VERIFY_MCP_SERVER)
39
+ .description('Test connectivity to an MCP server before adding it to the agent config. ' +
40
+ 'Establishes a temporary connection, lists the available tools, then closes the connection. ' +
41
+ 'Returns { ok: true, tools: [{ name, description }] } on success, or ' +
42
+ '{ ok: false, error: string } on failure. ' +
43
+ 'Call this after ask_credential (when authentication is not "none") and before patch_config.')
44
+ .input(verifyMcpServerInputSchema)
45
+ .handler(async (input) => {
46
+ let client;
47
+ try {
48
+ client = await (0, mcp_client_factory_1.buildMcpClientForServer)({
49
+ name: input.name,
50
+ url: input.url,
51
+ transport: input.transport,
52
+ authentication: input.authentication,
53
+ credential: input.credential,
54
+ ...(input.connectionTimeoutMs !== undefined && {
55
+ connectionTimeoutMs: input.connectionTimeoutMs,
56
+ }),
57
+ }, deps);
58
+ const tools = await client.listTools();
59
+ return {
60
+ ok: true,
61
+ tools: tools.map((t) => ({
62
+ name: t.name,
63
+ description: t.description ?? '',
64
+ })),
65
+ };
66
+ }
67
+ catch (error) {
68
+ return {
69
+ ok: false,
70
+ error: error instanceof Error ? error.message : String(error),
71
+ };
72
+ }
73
+ finally {
74
+ await client?.close().catch(() => { });
75
+ }
76
+ })
77
+ .build();
78
+ }
79
+ //# sourceMappingURL=verify-mcp-server.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"verify-mcp-server.tool.js","sourceRoot":"","sources":["../../../../src/modules/agents/builder/verify-mcp-server.tool.ts"],"names":[],"mappings":";;AA0DA,4DA4CC;AArGD,2CAAwC;AACxC,8CAA8D;AAC9D,6BAAwB;AAIxB,0EAA4E;AAC5E,6DAAqD;AAiBrD,MAAM,0BAA0B,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,OAAC;SACL,MAAM,EAAE;SACR,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,EAAE,CAAC;SACP,KAAK,CAAC,kBAAkB,CAAC;SACzB,QAAQ,CAAC,gDAAgD,CAAC;IAC5D,GAAG,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,6BAA6B,CAAC;IAC9D,SAAS,EAAE,OAAC;SACV,IAAI,CAAC,CAAC,KAAK,EAAE,gBAAgB,CAAC,CAAC;SAC/B,OAAO,CAAC,gBAAgB,CAAC;SACzB,QAAQ,CAAC,4CAA4C,CAAC;IACxD,cAAc,EAAE,OAAC;SACf,KAAK,CAAC,CAAC,wCAA4B,EAAE,OAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAC,CAAC;SAC1E,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,uBAAuB,CAAC;IACnC,UAAU,EAAE,OAAC;SACX,MAAM,EAAE;SACR,QAAQ,EAAE;SACV,QAAQ,CACR,sFAAsF,CACtF;IACF,mBAAmB,EAAE,OAAC;SACpB,MAAM,EAAE;SACR,GAAG,EAAE;SACL,GAAG,CAAC,CAAC,CAAC;SACN,GAAG,CAAC,OAAO,CAAC;SACZ,QAAQ,EAAE;SACV,QAAQ,CAAC,oCAAoC,CAAC;CAChD,CAAC,CAAC;AAIH,SAAgB,wBAAwB,CAAC,IAAyB;IACjE,OAAO,IAAI,WAAI,CAAC,kCAAa,CAAC,iBAAiB,CAAC;SAC9C,WAAW,CACX,2EAA2E;QAC1E,6FAA6F;QAC7F,sEAAsE;QACtE,2CAA2C;QAC3C,6FAA6F,CAC9F;SACA,KAAK,CAAC,0BAA0B,CAAC;SACjC,OAAO,CAAC,KAAK,EAAE,KAA2B,EAAE,EAAE;QAC9C,IAAI,MAA6B,CAAC;QAClC,IAAI,CAAC;YACJ,MAAM,GAAG,MAAM,IAAA,4CAAuB,EACrC;gBACC,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,GAAG,EAAE,KAAK,CAAC,GAAG;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,cAAc,EAAE,KAAK,CAAC,cAAc;gBACpC,UAAU,EAAE,KAAK,CAAC,UAAU;gBAC5B,GAAG,CAAC,KAAK,CAAC,mBAAmB,KAAK,SAAS,IAAI;oBAC9C,mBAAmB,EAAE,KAAK,CAAC,mBAAmB;iBAC9C,CAAC;aACF,EACD,IAAI,CACJ,CAAC;YACF,MAAM,KAAK,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;YACvC,OAAO;gBACN,EAAE,EAAE,IAAI;gBACR,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;oBACxB,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,EAAE;iBAChC,CAAC,CAAC;aACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,OAAO;gBACN,EAAE,EAAE,KAAK;gBACT,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;aAC7D,CAAC;QACH,CAAC;gBAAS,CAAC;YACV,MAAM,MAAM,EAAE,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QACvC,CAAC;IACF,CAAC,CAAC;SACD,KAAK,EAAE,CAAC;AACX,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import { Project, WithTimestampsAndStringId } from '@n8n/db';
2
+ import { AgentHistory } from './agent-history.entity';
2
3
  import { Agent } from './agent.entity';
3
4
  export declare class AgentExecutionThread extends WithTimestampsAndStringId {
4
5
  agent: Agent;
@@ -8,6 +9,9 @@ export declare class AgentExecutionThread extends WithTimestampsAndStringId {
8
9
  emoji: string | null;
9
10
  project: Project;
10
11
  projectId: string;
12
+ taskId: string | null;
13
+ taskVersion: AgentHistory | null;
14
+ taskVersionId: string | null;
11
15
  sessionNumber: number;
12
16
  totalPromptTokens: number;
13
17
  totalCompletionTokens: number;
@@ -10,8 +10,10 @@ var __metadata = (this && this.__metadata) || function (k, v) {
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
12
  exports.AgentExecutionThread = void 0;
13
+ const api_types_1 = require("@n8n/api-types");
13
14
  const db_1 = require("@n8n/db");
14
15
  const typeorm_1 = require("@n8n/typeorm");
16
+ const agent_history_entity_1 = require("./agent-history.entity");
15
17
  const agent_entity_1 = require("./agent.entity");
16
18
  let AgentExecutionThread = class AgentExecutionThread extends db_1.WithTimestampsAndStringId {
17
19
  };
@@ -48,6 +50,30 @@ __decorate([
48
50
  (0, typeorm_1.Column)({ type: 'varchar', length: 255 }),
49
51
  __metadata("design:type", String)
50
52
  ], AgentExecutionThread.prototype, "projectId", void 0);
53
+ __decorate([
54
+ (0, typeorm_1.Column)({
55
+ type: 'varchar',
56
+ length: api_types_1.AGENT_TASK_ID_MAX_LENGTH,
57
+ nullable: true,
58
+ comment: 'Published task ID that triggered this session; not an FK because published runs can outlive draft task definition rows',
59
+ }),
60
+ __metadata("design:type", Object)
61
+ ], AgentExecutionThread.prototype, "taskId", void 0);
62
+ __decorate([
63
+ (0, typeorm_1.ManyToOne)(() => agent_history_entity_1.AgentHistory, { onDelete: 'SET NULL' }),
64
+ (0, typeorm_1.JoinColumn)({ name: 'taskVersionId' }),
65
+ __metadata("design:type", Object)
66
+ ], AgentExecutionThread.prototype, "taskVersion", void 0);
67
+ __decorate([
68
+ (0, typeorm_1.Index)(),
69
+ (0, typeorm_1.Column)({
70
+ type: 'varchar',
71
+ length: 36,
72
+ nullable: true,
73
+ comment: 'Published agent_history version that supplied the task snapshot',
74
+ }),
75
+ __metadata("design:type", Object)
76
+ ], AgentExecutionThread.prototype, "taskVersionId", void 0);
51
77
  __decorate([
52
78
  (0, typeorm_1.Column)({ type: 'int', default: 0 }),
53
79
  __metadata("design:type", Number)
@@ -1 +1 @@
1
- {"version":3,"file":"agent-execution-thread.entity.js","sourceRoot":"","sources":["../../../../src/modules/agents/entities/agent-execution-thread.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gCAA6D;AAC7D,0CAA4E;AAE5E,iDAAuC;AAgBhC,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,8BAAyB;CA6ClE,CAAA;AA7CY,oDAAoB;AAGhC;IAFC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,oBAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC/C,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;8BACzB,oBAAK;mDAAC;AAIb;IAFC,IAAA,eAAK,GAAE;IACP,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;;qDACxB;AAIhB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;;uDACvB;AAIlB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACpC;AAIrB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDAClC;AAIrB;IAFC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,YAAO,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IACjD,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;8BACzB,YAAO;qDAAC;AAIjB;IAFC,IAAA,eAAK,GAAE;IACP,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;;uDACvB;AAIlB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;2DACd;AAGtB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;+DACV;AAG1B;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;mEACN;AAG9B;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;uDAC/B;AAIlB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;2DACd;+BA5CV,oBAAoB;IADhC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC;GAC/B,oBAAoB,CA6ChC"}
1
+ {"version":3,"file":"agent-execution-thread.entity.js","sourceRoot":"","sources":["../../../../src/modules/agents/entities/agent-execution-thread.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,8CAA0D;AAC1D,gCAA6D;AAC7D,0CAA4E;AAE5E,iEAAsD;AACtD,iDAAuC;AAgBhC,IAAM,oBAAoB,GAA1B,MAAM,oBAAqB,SAAQ,8BAAyB;CA2ElE,CAAA;AA3EY,oDAAoB;AAGhC;IAFC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,oBAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC/C,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;8BACzB,oBAAK;mDAAC;AAIb;IAFC,IAAA,eAAK,GAAE;IACP,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;;qDACxB;AAIhB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;;uDACvB;AAIlB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDACpC;AAIrB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;;mDAClC;AAIrB;IAFC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,YAAO,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IACjD,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;8BACzB,YAAO;qDAAC;AAIjB;IAFC,IAAA,eAAK,GAAE;IACP,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;;uDACvB;AAalB;IAPC,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,oCAAwB;QAChC,QAAQ,EAAE,IAAI;QACd,OAAO,EACN,wHAAwH;KACzH,CAAC;;oDACoB;AAQtB;IAFC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,mCAAY,EAAE,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvD,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,eAAe,EAAE,CAAC;;yDACL;AASjC;IAPC,IAAA,eAAK,GAAE;IACP,IAAA,gBAAM,EAAC;QACP,IAAI,EAAE,SAAS;QACf,MAAM,EAAE,EAAE;QACV,QAAQ,EAAE,IAAI;QACd,OAAO,EAAE,iEAAiE;KAC1E,CAAC;;2DAC2B;AAI7B;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;2DACd;AAGtB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;+DACV;AAG1B;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;mEACN;AAG9B;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,kBAAkB,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;uDAC/B;AAIlB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;;2DACd;+BA1EV,oBAAoB;IADhC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAAC;GAC/B,oBAAoB,CA2EhC"}
@@ -0,0 +1,11 @@
1
+ import { WithTimestampsAndStringId } from '@n8n/db';
2
+ import { type Relation } from '@n8n/typeorm';
3
+ import { Agent } from './agent.entity';
4
+ export declare class AgentFile extends WithTimestampsAndStringId {
5
+ agent: Relation<Agent>;
6
+ agentId: string;
7
+ binaryDataId: string;
8
+ fileName: string;
9
+ mimeType: string;
10
+ fileSizeBytes: number;
11
+ }
@@ -0,0 +1,48 @@
1
+ "use strict";
2
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
7
+ };
8
+ var __metadata = (this && this.__metadata) || function (k, v) {
9
+ if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
+ };
11
+ Object.defineProperty(exports, "__esModule", { value: true });
12
+ exports.AgentFile = void 0;
13
+ const db_1 = require("@n8n/db");
14
+ const typeorm_1 = require("@n8n/typeorm");
15
+ const agent_entity_1 = require("./agent.entity");
16
+ let AgentFile = class AgentFile extends db_1.WithTimestampsAndStringId {
17
+ };
18
+ exports.AgentFile = AgentFile;
19
+ __decorate([
20
+ (0, typeorm_1.ManyToOne)(() => agent_entity_1.Agent, { onDelete: 'CASCADE' }),
21
+ (0, typeorm_1.JoinColumn)({ name: 'agentId' }),
22
+ __metadata("design:type", Object)
23
+ ], AgentFile.prototype, "agent", void 0);
24
+ __decorate([
25
+ (0, typeorm_1.Column)({ type: 'varchar', length: 36 }),
26
+ __metadata("design:type", String)
27
+ ], AgentFile.prototype, "agentId", void 0);
28
+ __decorate([
29
+ (0, typeorm_1.Column)({ type: 'text' }),
30
+ __metadata("design:type", String)
31
+ ], AgentFile.prototype, "binaryDataId", void 0);
32
+ __decorate([
33
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255 }),
34
+ __metadata("design:type", String)
35
+ ], AgentFile.prototype, "fileName", void 0);
36
+ __decorate([
37
+ (0, typeorm_1.Column)({ type: 'varchar', length: 255 }),
38
+ __metadata("design:type", String)
39
+ ], AgentFile.prototype, "mimeType", void 0);
40
+ __decorate([
41
+ (0, typeorm_1.Column)({ type: 'int' }),
42
+ __metadata("design:type", Number)
43
+ ], AgentFile.prototype, "fileSizeBytes", void 0);
44
+ exports.AgentFile = AgentFile = __decorate([
45
+ (0, typeorm_1.Entity)({ name: 'agent_files' }),
46
+ (0, typeorm_1.Index)(['agentId', 'createdAt'])
47
+ ], AgentFile);
48
+ //# sourceMappingURL=agent-file.entity.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agent-file.entity.js","sourceRoot":"","sources":["../../../../src/modules/agents/entities/agent-file.entity.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,gCAAoD;AACpD,0CAA2F;AAE3F,iDAAuC;AAIhC,IAAM,SAAS,GAAf,MAAM,SAAU,SAAQ,8BAAyB;CA8BvD,CAAA;AA9BY,8BAAS;AAGrB;IAFC,IAAA,mBAAS,EAAC,GAAG,EAAE,CAAC,oBAAK,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC;IAC/C,IAAA,oBAAU,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC;;wCACT;AAGvB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC;;0CACxB;AAQhB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;;+CACJ;AASrB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;;2CACxB;AAGjB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;;2CACxB;AAGjB;IADC,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;;gDACF;oBA7BV,SAAS;IAFrB,IAAA,gBAAM,EAAC,EAAE,IAAI,EAAE,aAAa,EAAE,CAAC;IAC/B,IAAA,eAAK,EAAC,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;GACnB,SAAS,CA8BrB"}
@@ -0,0 +1,10 @@
1
+ import { WithTimestamps } from '@n8n/db';
2
+ import { type Relation } from '@n8n/typeorm';
3
+ import { Agent } from './agent.entity';
4
+ export declare class AgentTaskRunLock extends WithTimestamps {
5
+ agentId: string;
6
+ agent: Relation<Agent>;
7
+ taskId: string;
8
+ holderId: string;
9
+ heldUntil: Date;
10
+ }