@n8n/instance-ai 1.2.0 → 1.3.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 (269) hide show
  1. package/dist/agent/instance-agent.js +4 -12
  2. package/dist/agent/instance-agent.js.map +1 -1
  3. package/dist/agent/sanitize-mcp-schemas.d.ts +4 -0
  4. package/dist/agent/sanitize-mcp-schemas.js +88 -18
  5. package/dist/agent/sanitize-mcp-schemas.js.map +1 -1
  6. package/dist/agent/sub-agent-debriefing.d.ts +4 -4
  7. package/dist/agent/system-prompt.js +18 -18
  8. package/dist/agent/system-prompt.js.map +1 -1
  9. package/dist/build.tsbuildinfo +1 -1
  10. package/dist/constants/max-steps.d.ts +9 -0
  11. package/dist/constants/max-steps.js +13 -0
  12. package/dist/constants/max-steps.js.map +1 -0
  13. package/dist/index.d.ts +5 -2
  14. package/dist/index.js +12 -3
  15. package/dist/index.js.map +1 -1
  16. package/dist/memory/title-utils.d.ts +1 -1
  17. package/dist/memory/title-utils.js +5 -23
  18. package/dist/memory/title-utils.js.map +1 -1
  19. package/dist/planned-tasks/planned-task-service.js +42 -6
  20. package/dist/planned-tasks/planned-task-service.js.map +1 -1
  21. package/dist/storage/workflow-loop-storage.d.ts +10 -0
  22. package/dist/stream/work-summary-accumulator.d.ts +6 -6
  23. package/dist/tools/credentials.tool.d.ts +2 -0
  24. package/dist/tools/credentials.tool.js +253 -0
  25. package/dist/tools/credentials.tool.js.map +1 -0
  26. package/dist/tools/data-tables.tool.d.ts +2 -0
  27. package/dist/tools/data-tables.tool.js +410 -0
  28. package/dist/tools/data-tables.tool.js.map +1 -0
  29. package/dist/tools/executions.tool.d.ts +2 -0
  30. package/dist/tools/executions.tool.js +174 -0
  31. package/dist/tools/executions.tool.js.map +1 -0
  32. package/dist/tools/index.d.ts +21 -57
  33. package/dist/tools/index.js +35 -132
  34. package/dist/tools/index.js.map +1 -1
  35. package/dist/tools/nodes.tool.d.ts +2 -0
  36. package/dist/tools/nodes.tool.js +298 -0
  37. package/dist/tools/nodes.tool.js.map +1 -0
  38. package/dist/tools/orchestration/blueprint.schema.d.ts +15 -15
  39. package/dist/tools/orchestration/browser-credential-setup.tool.js +13 -17
  40. package/dist/tools/orchestration/browser-credential-setup.tool.js.map +1 -1
  41. package/dist/tools/orchestration/build-workflow-agent.prompt.js +32 -28
  42. package/dist/tools/orchestration/build-workflow-agent.prompt.js.map +1 -1
  43. package/dist/tools/orchestration/build-workflow-agent.tool.d.ts +9 -1
  44. package/dist/tools/orchestration/build-workflow-agent.tool.js +73 -58
  45. package/dist/tools/orchestration/build-workflow-agent.tool.js.map +1 -1
  46. package/dist/tools/orchestration/data-table-agent.prompt.d.ts +1 -1
  47. package/dist/tools/orchestration/data-table-agent.prompt.js +7 -7
  48. package/dist/tools/orchestration/data-table-agent.tool.js +10 -22
  49. package/dist/tools/orchestration/data-table-agent.tool.js.map +1 -1
  50. package/dist/tools/orchestration/delegate.tool.js +3 -3
  51. package/dist/tools/orchestration/delegate.tool.js.map +1 -1
  52. package/dist/tools/orchestration/plan-agent-prompt.d.ts +1 -1
  53. package/dist/tools/orchestration/plan-agent-prompt.js +5 -5
  54. package/dist/tools/orchestration/plan-with-agent.tool.js +9 -11
  55. package/dist/tools/orchestration/plan-with-agent.tool.js.map +1 -1
  56. package/dist/tools/orchestration/research-with-agent.tool.js +6 -9
  57. package/dist/tools/orchestration/research-with-agent.tool.js.map +1 -1
  58. package/dist/tools/research.tool.d.ts +2 -0
  59. package/dist/tools/research.tool.js +159 -0
  60. package/dist/tools/research.tool.js.map +1 -0
  61. package/dist/tools/{orchestration/update-tasks.tool.d.ts → task-control.tool.d.ts} +2 -2
  62. package/dist/tools/task-control.tool.js +81 -0
  63. package/dist/tools/task-control.tool.js.map +1 -0
  64. package/dist/tools/templates.tool.d.ts +1 -0
  65. package/dist/tools/templates.tool.js +144 -0
  66. package/dist/tools/templates.tool.js.map +1 -0
  67. package/dist/tools/workflows/build-workflow.tool.js +2 -0
  68. package/dist/tools/workflows/build-workflow.tool.js.map +1 -1
  69. package/dist/tools/workflows/materialize-node-type.tool.d.ts +4 -4
  70. package/dist/tools/workflows/setup-workflow.service.d.ts +4 -1
  71. package/dist/tools/workflows/setup-workflow.service.js +91 -15
  72. package/dist/tools/workflows/setup-workflow.service.js.map +1 -1
  73. package/dist/tools/workflows/submit-workflow.tool.d.ts +1 -0
  74. package/dist/tools/workflows/submit-workflow.tool.js +5 -0
  75. package/dist/tools/workflows/submit-workflow.tool.js.map +1 -1
  76. package/dist/tools/workflows.tool.d.ts +2 -0
  77. package/dist/tools/workflows.tool.js +493 -0
  78. package/dist/tools/workflows.tool.js.map +1 -0
  79. package/dist/tools/workspace.tool.d.ts +2 -0
  80. package/dist/tools/workspace.tool.js +278 -0
  81. package/dist/tools/workspace.tool.js.map +1 -0
  82. package/dist/tracing/langsmith-tracing.d.ts +1 -0
  83. package/dist/tracing/langsmith-tracing.js +170 -2
  84. package/dist/tracing/langsmith-tracing.js.map +1 -1
  85. package/dist/tracing/trace-replay.d.ts +61 -0
  86. package/dist/tracing/trace-replay.js +208 -0
  87. package/dist/tracing/trace-replay.js.map +1 -0
  88. package/dist/types.d.ts +7 -0
  89. package/dist/workflow-loop/guidance.js +5 -5
  90. package/dist/workflow-loop/guidance.js.map +1 -1
  91. package/dist/workflow-loop/workflow-loop-controller.js +5 -0
  92. package/dist/workflow-loop/workflow-loop-controller.js.map +1 -1
  93. package/dist/workflow-loop/workflow-loop-state.d.ts +7 -0
  94. package/dist/workflow-loop/workflow-loop-state.js +2 -0
  95. package/dist/workflow-loop/workflow-loop-state.js.map +1 -1
  96. package/package.json +10 -8
  97. package/dist/agent/tool-access.d.ts +0 -2
  98. package/dist/agent/tool-access.js +0 -28
  99. package/dist/agent/tool-access.js.map +0 -1
  100. package/dist/tools/best-practices/get-best-practices.tool.d.ts +0 -9
  101. package/dist/tools/best-practices/get-best-practices.tool.js +0 -66
  102. package/dist/tools/best-practices/get-best-practices.tool.js.map +0 -1
  103. package/dist/tools/credentials/delete-credential.tool.d.ts +0 -20
  104. package/dist/tools/credentials/delete-credential.tool.js +0 -58
  105. package/dist/tools/credentials/delete-credential.tool.js.map +0 -1
  106. package/dist/tools/credentials/get-credential.tool.d.ts +0 -10
  107. package/dist/tools/credentials/get-credential.tool.js +0 -32
  108. package/dist/tools/credentials/get-credential.tool.js.map +0 -1
  109. package/dist/tools/credentials/list-credentials.tool.d.ts +0 -16
  110. package/dist/tools/credentials/list-credentials.tool.js +0 -72
  111. package/dist/tools/credentials/list-credentials.tool.js.map +0 -1
  112. package/dist/tools/credentials/search-credential-types.tool.d.ts +0 -10
  113. package/dist/tools/credentials/search-credential-types.tool.js +0 -46
  114. package/dist/tools/credentials/search-credential-types.tool.js.map +0 -1
  115. package/dist/tools/credentials/setup-credentials.tool.d.ts +0 -69
  116. package/dist/tools/credentials/setup-credentials.tool.js +0 -140
  117. package/dist/tools/credentials/setup-credentials.tool.js.map +0 -1
  118. package/dist/tools/credentials/test-credential.tool.d.ts +0 -10
  119. package/dist/tools/credentials/test-credential.tool.js +0 -32
  120. package/dist/tools/credentials/test-credential.tool.js.map +0 -1
  121. package/dist/tools/data-tables/add-data-table-column.tool.d.ts +0 -23
  122. package/dist/tools/data-tables/add-data-table-column.tool.js +0 -67
  123. package/dist/tools/data-tables/add-data-table-column.tool.js.map +0 -1
  124. package/dist/tools/data-tables/create-data-table.tool.d.ts +0 -38
  125. package/dist/tools/data-tables/create-data-table.tool.js +0 -106
  126. package/dist/tools/data-tables/create-data-table.tool.js.map +0 -1
  127. package/dist/tools/data-tables/delete-data-table-column.tool.d.ts +0 -20
  128. package/dist/tools/data-tables/delete-data-table-column.tool.js +0 -55
  129. package/dist/tools/data-tables/delete-data-table-column.tool.js.map +0 -1
  130. package/dist/tools/data-tables/delete-data-table-rows.tool.d.ts +0 -63
  131. package/dist/tools/data-tables/delete-data-table-rows.tool.js +0 -79
  132. package/dist/tools/data-tables/delete-data-table-rows.tool.js.map +0 -1
  133. package/dist/tools/data-tables/delete-data-table.tool.d.ts +0 -17
  134. package/dist/tools/data-tables/delete-data-table.tool.js +0 -54
  135. package/dist/tools/data-tables/delete-data-table.tool.js.map +0 -1
  136. package/dist/tools/data-tables/get-data-table-schema.tool.d.ts +0 -10
  137. package/dist/tools/data-tables/get-data-table-schema.tool.js +0 -29
  138. package/dist/tools/data-tables/get-data-table-schema.tool.js.map +0 -1
  139. package/dist/tools/data-tables/insert-data-table-rows.tool.d.ts +0 -20
  140. package/dist/tools/data-tables/insert-data-table-rows.tool.js +0 -62
  141. package/dist/tools/data-tables/insert-data-table-rows.tool.js.map +0 -1
  142. package/dist/tools/data-tables/list-data-tables.tool.d.ts +0 -10
  143. package/dist/tools/data-tables/list-data-tables.tool.js +0 -34
  144. package/dist/tools/data-tables/list-data-tables.tool.js.map +0 -1
  145. package/dist/tools/data-tables/query-data-table-rows.tool.d.ts +0 -62
  146. package/dist/tools/data-tables/query-data-table-rows.tool.js +0 -56
  147. package/dist/tools/data-tables/query-data-table-rows.tool.js.map +0 -1
  148. package/dist/tools/data-tables/rename-data-table-column.tool.d.ts +0 -23
  149. package/dist/tools/data-tables/rename-data-table-column.tool.js +0 -56
  150. package/dist/tools/data-tables/rename-data-table-column.tool.js.map +0 -1
  151. package/dist/tools/data-tables/update-data-table-rows.tool.d.ts +0 -66
  152. package/dist/tools/data-tables/update-data-table-rows.tool.js +0 -67
  153. package/dist/tools/data-tables/update-data-table-rows.tool.js.map +0 -1
  154. package/dist/tools/executions/debug-execution.tool.d.ts +0 -10
  155. package/dist/tools/executions/debug-execution.tool.js +0 -43
  156. package/dist/tools/executions/debug-execution.tool.js.map +0 -1
  157. package/dist/tools/executions/get-execution.tool.d.ts +0 -10
  158. package/dist/tools/executions/get-execution.tool.js +0 -28
  159. package/dist/tools/executions/get-execution.tool.js.map +0 -1
  160. package/dist/tools/executions/get-node-output.tool.d.ts +0 -19
  161. package/dist/tools/executions/get-node-output.tool.js +0 -41
  162. package/dist/tools/executions/get-node-output.tool.js.map +0 -1
  163. package/dist/tools/executions/list-executions.tool.d.ts +0 -16
  164. package/dist/tools/executions/list-executions.tool.js +0 -47
  165. package/dist/tools/executions/list-executions.tool.js.map +0 -1
  166. package/dist/tools/executions/run-workflow.tool.d.ts +0 -26
  167. package/dist/tools/executions/run-workflow.tool.js +0 -92
  168. package/dist/tools/executions/run-workflow.tool.js.map +0 -1
  169. package/dist/tools/executions/stop-execution.tool.d.ts +0 -10
  170. package/dist/tools/executions/stop-execution.tool.js +0 -27
  171. package/dist/tools/executions/stop-execution.tool.js.map +0 -1
  172. package/dist/tools/nodes/explore-node-resources.tool.d.ts +0 -34
  173. package/dist/tools/nodes/explore-node-resources.tool.js +0 -73
  174. package/dist/tools/nodes/explore-node-resources.tool.js.map +0 -1
  175. package/dist/tools/nodes/get-node-description.tool.d.ts +0 -10
  176. package/dist/tools/nodes/get-node-description.tool.js +0 -54
  177. package/dist/tools/nodes/get-node-description.tool.js.map +0 -1
  178. package/dist/tools/nodes/get-node-type-definition.tool.d.ts +0 -40
  179. package/dist/tools/nodes/get-node-type-definition.tool.js +0 -75
  180. package/dist/tools/nodes/get-node-type-definition.tool.js.map +0 -1
  181. package/dist/tools/nodes/get-suggested-nodes.tool.d.ts +0 -9
  182. package/dist/tools/nodes/get-suggested-nodes.tool.js +0 -56
  183. package/dist/tools/nodes/get-suggested-nodes.tool.js.map +0 -1
  184. package/dist/tools/nodes/list-nodes.tool.d.ts +0 -10
  185. package/dist/tools/nodes/list-nodes.tool.js +0 -35
  186. package/dist/tools/nodes/list-nodes.tool.js.map +0 -1
  187. package/dist/tools/nodes/search-nodes.tool.d.ts +0 -16
  188. package/dist/tools/nodes/search-nodes.tool.js +0 -91
  189. package/dist/tools/nodes/search-nodes.tool.js.map +0 -1
  190. package/dist/tools/orchestration/cancel-background-task.tool.d.ts +0 -10
  191. package/dist/tools/orchestration/cancel-background-task.tool.js +0 -26
  192. package/dist/tools/orchestration/cancel-background-task.tool.js.map +0 -1
  193. package/dist/tools/orchestration/correct-background-task.tool.d.ts +0 -13
  194. package/dist/tools/orchestration/correct-background-task.tool.js +0 -43
  195. package/dist/tools/orchestration/correct-background-task.tool.js.map +0 -1
  196. package/dist/tools/orchestration/update-tasks.tool.js +0 -26
  197. package/dist/tools/orchestration/update-tasks.tool.js.map +0 -1
  198. package/dist/tools/templates/search-template-parameters.tool.d.ts +0 -18
  199. package/dist/tools/templates/search-template-parameters.tool.js +0 -57
  200. package/dist/tools/templates/search-template-parameters.tool.js.map +0 -1
  201. package/dist/tools/templates/search-template-structures.tool.d.ts +0 -15
  202. package/dist/tools/templates/search-template-structures.tool.js +0 -47
  203. package/dist/tools/templates/search-template-structures.tool.js.map +0 -1
  204. package/dist/tools/web-research/fetch-url.tool.d.ts +0 -13
  205. package/dist/tools/web-research/fetch-url.tool.js +0 -132
  206. package/dist/tools/web-research/fetch-url.tool.js.map +0 -1
  207. package/dist/tools/web-research/index.d.ts +0 -1
  208. package/dist/tools/web-research/index.js +0 -6
  209. package/dist/tools/web-research/index.js.map +0 -1
  210. package/dist/tools/web-research/web-search.tool.d.ts +0 -16
  211. package/dist/tools/web-research/web-search.tool.js +0 -59
  212. package/dist/tools/web-research/web-search.tool.js.map +0 -1
  213. package/dist/tools/workflows/delete-workflow.tool.d.ts +0 -20
  214. package/dist/tools/workflows/delete-workflow.tool.js +0 -55
  215. package/dist/tools/workflows/delete-workflow.tool.js.map +0 -1
  216. package/dist/tools/workflows/get-workflow-as-code.tool.d.ts +0 -10
  217. package/dist/tools/workflows/get-workflow-as-code.tool.js +0 -39
  218. package/dist/tools/workflows/get-workflow-as-code.tool.js.map +0 -1
  219. package/dist/tools/workflows/get-workflow-version.tool.d.ts +0 -13
  220. package/dist/tools/workflows/get-workflow-version.tool.js +0 -40
  221. package/dist/tools/workflows/get-workflow-version.tool.js.map +0 -1
  222. package/dist/tools/workflows/get-workflow.tool.d.ts +0 -10
  223. package/dist/tools/workflows/get-workflow.tool.js +0 -38
  224. package/dist/tools/workflows/get-workflow.tool.js.map +0 -1
  225. package/dist/tools/workflows/list-workflow-versions.tool.d.ts +0 -16
  226. package/dist/tools/workflows/list-workflow-versions.tool.js +0 -49
  227. package/dist/tools/workflows/list-workflow-versions.tool.js.map +0 -1
  228. package/dist/tools/workflows/list-workflows.tool.d.ts +0 -13
  229. package/dist/tools/workflows/list-workflows.tool.js +0 -44
  230. package/dist/tools/workflows/list-workflows.tool.js.map +0 -1
  231. package/dist/tools/workflows/publish-workflow.tool.d.ts +0 -10
  232. package/dist/tools/workflows/publish-workflow.tool.js +0 -97
  233. package/dist/tools/workflows/publish-workflow.tool.js.map +0 -1
  234. package/dist/tools/workflows/restore-workflow-version.tool.d.ts +0 -20
  235. package/dist/tools/workflows/restore-workflow-version.tool.js +0 -72
  236. package/dist/tools/workflows/restore-workflow-version.tool.js.map +0 -1
  237. package/dist/tools/workflows/setup-workflow.tool.d.ts +0 -13
  238. package/dist/tools/workflows/setup-workflow.tool.js +0 -215
  239. package/dist/tools/workflows/setup-workflow.tool.js.map +0 -1
  240. package/dist/tools/workflows/unpublish-workflow.tool.d.ts +0 -20
  241. package/dist/tools/workflows/unpublish-workflow.tool.js +0 -65
  242. package/dist/tools/workflows/unpublish-workflow.tool.js.map +0 -1
  243. package/dist/tools/workflows/update-workflow-version.tool.d.ts +0 -19
  244. package/dist/tools/workflows/update-workflow-version.tool.js +0 -37
  245. package/dist/tools/workflows/update-workflow-version.tool.js.map +0 -1
  246. package/dist/tools/workspace/cleanup-test-executions.tool.d.ts +0 -23
  247. package/dist/tools/workspace/cleanup-test-executions.tool.js +0 -62
  248. package/dist/tools/workspace/cleanup-test-executions.tool.js.map +0 -1
  249. package/dist/tools/workspace/create-folder.tool.d.ts +0 -23
  250. package/dist/tools/workspace/create-folder.tool.js +0 -72
  251. package/dist/tools/workspace/create-folder.tool.js.map +0 -1
  252. package/dist/tools/workspace/delete-folder.tool.d.ts +0 -29
  253. package/dist/tools/workspace/delete-folder.tool.js +0 -67
  254. package/dist/tools/workspace/delete-folder.tool.js.map +0 -1
  255. package/dist/tools/workspace/list-folders.tool.d.ts +0 -10
  256. package/dist/tools/workspace/list-folders.tool.js +0 -28
  257. package/dist/tools/workspace/list-folders.tool.js.map +0 -1
  258. package/dist/tools/workspace/list-projects.tool.d.ts +0 -4
  259. package/dist/tools/workspace/list-projects.tool.js +0 -26
  260. package/dist/tools/workspace/list-projects.tool.js.map +0 -1
  261. package/dist/tools/workspace/list-tags.tool.d.ts +0 -4
  262. package/dist/tools/workspace/list-tags.tool.js +0 -25
  263. package/dist/tools/workspace/list-tags.tool.js.map +0 -1
  264. package/dist/tools/workspace/move-workflow-to-folder.tool.d.ts +0 -26
  265. package/dist/tools/workspace/move-workflow-to-folder.tool.js +0 -60
  266. package/dist/tools/workspace/move-workflow-to-folder.tool.js.map +0 -1
  267. package/dist/tools/workspace/tag-workflow.tool.d.ts +0 -23
  268. package/dist/tools/workspace/tag-workflow.tool.js +0 -56
  269. package/dist/tools/workspace/tag-workflow.tool.js.map +0 -1
@@ -0,0 +1,493 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ Object.defineProperty(exports, "__esModule", { value: true });
36
+ exports.createWorkflowsTool = createWorkflowsTool;
37
+ const tools_1 = require("@mastra/core/tools");
38
+ const nanoid_1 = require("nanoid");
39
+ const zod_1 = require("zod");
40
+ const sanitize_mcp_schemas_1 = require("../agent/sanitize-mcp-schemas");
41
+ const format_timestamp_1 = require("../utils/format-timestamp");
42
+ const setup_workflow_schema_1 = require("./workflows/setup-workflow.schema");
43
+ const setup_workflow_service_1 = require("./workflows/setup-workflow.service");
44
+ const listAction = zod_1.z.object({
45
+ action: zod_1.z.literal('list').describe('List workflows accessible to the current user'),
46
+ query: zod_1.z.string().optional().describe('Filter workflows by name'),
47
+ limit: zod_1.z.number().int().positive().max(100).optional().describe('Max results to return'),
48
+ });
49
+ const getAction = zod_1.z.object({
50
+ action: zod_1.z.literal('get').describe('Get full details of a specific workflow'),
51
+ workflowId: zod_1.z.string().describe('ID of the workflow'),
52
+ });
53
+ const getAsCodeAction = zod_1.z.object({
54
+ action: zod_1.z.literal('get-as-code').describe('Convert an existing workflow to TypeScript SDK code'),
55
+ workflowId: zod_1.z.string().describe('ID of the workflow'),
56
+ });
57
+ const deleteAction = zod_1.z.object({
58
+ action: zod_1.z.literal('delete').describe('Archive a workflow by ID (soft delete)'),
59
+ workflowId: zod_1.z.string().describe('ID of the workflow'),
60
+ workflowName: zod_1.z.string().optional().describe('Name of the workflow (for confirmation message)'),
61
+ });
62
+ const setupAction = zod_1.z.object({
63
+ action: zod_1.z
64
+ .literal('setup')
65
+ .describe('Open the workflow setup UI for credential and parameter configuration'),
66
+ workflowId: zod_1.z.string().describe('ID of the workflow'),
67
+ projectId: zod_1.z.string().optional().describe('Project ID to scope credential creation to'),
68
+ });
69
+ const publishBaseAction = zod_1.z.object({
70
+ action: zod_1.z
71
+ .literal('publish')
72
+ .describe('Publish a workflow version to production (omit versionId for latest draft)'),
73
+ workflowId: zod_1.z.string().describe('ID of the workflow'),
74
+ workflowName: zod_1.z.string().optional().describe('Name of the workflow (for confirmation message)'),
75
+ versionId: zod_1.z.string().optional().describe('Version ID'),
76
+ });
77
+ const publishExtendedAction = publishBaseAction.extend({
78
+ name: zod_1.z.string().optional().describe('Name for the version'),
79
+ description: zod_1.z.string().optional().describe('Description for the version'),
80
+ });
81
+ const unpublishAction = zod_1.z.object({
82
+ action: zod_1.z.literal('unpublish').describe('Unpublish a workflow — stop it from running'),
83
+ workflowId: zod_1.z.string().describe('ID of the workflow'),
84
+ workflowName: zod_1.z.string().optional().describe('Name of the workflow (for confirmation message)'),
85
+ });
86
+ const listVersionsAction = zod_1.z.object({
87
+ action: zod_1.z.literal('list-versions').describe('List version history for a workflow'),
88
+ workflowId: zod_1.z.string().describe('ID of the workflow'),
89
+ limit: zod_1.z.number().int().positive().max(100).optional().describe('Max results to return'),
90
+ skip: zod_1.z.number().int().min(0).optional().describe('Number of results to skip (default 0)'),
91
+ });
92
+ const getVersionAction = zod_1.z.object({
93
+ action: zod_1.z.literal('get-version').describe('Get full details of a specific workflow version'),
94
+ workflowId: zod_1.z.string().describe('ID of the workflow'),
95
+ versionId: zod_1.z.string().describe('Version ID'),
96
+ });
97
+ const restoreVersionAction = zod_1.z.object({
98
+ action: zod_1.z.literal('restore-version').describe('Restore a workflow to a previous version'),
99
+ workflowId: zod_1.z.string().describe('ID of the workflow'),
100
+ versionId: zod_1.z.string().describe('Version ID'),
101
+ });
102
+ const updateVersionAction = zod_1.z.object({
103
+ action: zod_1.z
104
+ .literal('update-version')
105
+ .describe('Update the name or description of a workflow version (null to clear a field)'),
106
+ workflowId: zod_1.z.string().describe('ID of the workflow'),
107
+ versionId: zod_1.z.string().describe('Version ID'),
108
+ name: zod_1.z.string().nullable().optional().describe('Name for the version'),
109
+ description: zod_1.z.string().nullable().optional().describe('Description for the version'),
110
+ });
111
+ const suspendSchema = setup_workflow_schema_1.setupSuspendSchema;
112
+ const resumeSchema = setup_workflow_schema_1.setupResumeSchema;
113
+ function buildInputSchema(context, surface) {
114
+ const hasNamedVersions = !!context.workflowService.updateVersion;
115
+ const hasVersions = !!context.workflowService.listVersions;
116
+ const actions = [
117
+ listAction,
118
+ getAction,
119
+ deleteAction,
120
+ setupAction,
121
+ hasNamedVersions ? publishExtendedAction : publishBaseAction,
122
+ unpublishAction,
123
+ ];
124
+ if (surface !== 'orchestrator') {
125
+ actions.push(getAsCodeAction);
126
+ }
127
+ if (hasVersions) {
128
+ actions.push(listVersionsAction);
129
+ actions.push(getVersionAction);
130
+ actions.push(restoreVersionAction);
131
+ }
132
+ if (hasNamedVersions) {
133
+ actions.push(updateVersionAction);
134
+ }
135
+ return (0, sanitize_mcp_schemas_1.sanitizeInputSchema)(zod_1.z.discriminatedUnion('action', actions));
136
+ }
137
+ async function handleList(context, input) {
138
+ const workflows = await context.workflowService.list({
139
+ limit: input.limit,
140
+ query: input.query,
141
+ });
142
+ return { workflows };
143
+ }
144
+ async function handleGet(context, input) {
145
+ return await context.workflowService.get(input.workflowId);
146
+ }
147
+ async function handleGetAsCode(context, input) {
148
+ const { generateWorkflowCode } = await Promise.resolve().then(() => __importStar(require('@n8n/workflow-sdk')));
149
+ try {
150
+ const json = await context.workflowService.getAsWorkflowJSON(input.workflowId);
151
+ const code = generateWorkflowCode(json);
152
+ return { workflowId: input.workflowId, name: json.name, code };
153
+ }
154
+ catch (error) {
155
+ return {
156
+ workflowId: input.workflowId,
157
+ name: '',
158
+ code: '',
159
+ error: error instanceof Error ? error.message : 'Failed to convert workflow to code',
160
+ };
161
+ }
162
+ }
163
+ async function handleDelete(context, input, ctx) {
164
+ const resumeData = ctx?.agent?.resumeData;
165
+ const suspend = ctx?.agent?.suspend;
166
+ if (context.permissions?.deleteWorkflow === 'blocked') {
167
+ return { success: false, denied: true, reason: 'Action blocked by admin' };
168
+ }
169
+ const needsApproval = context.permissions?.deleteWorkflow !== 'always_allow';
170
+ if (needsApproval && (resumeData === undefined || resumeData === null)) {
171
+ await suspend?.({
172
+ requestId: (0, nanoid_1.nanoid)(),
173
+ message: `Archive workflow "${input.workflowName ?? input.workflowId}"? This will deactivate it if needed and can be undone later.`,
174
+ severity: 'warning',
175
+ });
176
+ return { success: false };
177
+ }
178
+ if (resumeData !== undefined && resumeData !== null && !resumeData.approved) {
179
+ return { success: false, denied: true, reason: 'User denied the action' };
180
+ }
181
+ await context.workflowService.archive(input.workflowId);
182
+ return { success: true };
183
+ }
184
+ async function handleSetup(context, input, ctx, state) {
185
+ const resumeData = ctx?.agent?.resumeData;
186
+ const suspend = ctx?.agent?.suspend;
187
+ if (resumeData === undefined || resumeData === null) {
188
+ const setupRequests = await (0, setup_workflow_service_1.analyzeWorkflow)(context, input.workflowId);
189
+ if (setupRequests.length === 0) {
190
+ return { success: true, reason: 'No nodes require setup.' };
191
+ }
192
+ state.currentRequestId = (0, nanoid_1.nanoid)();
193
+ await suspend?.({
194
+ requestId: state.currentRequestId,
195
+ message: 'Configure credentials for your workflow',
196
+ severity: 'info',
197
+ setupRequests,
198
+ workflowId: input.workflowId,
199
+ ...(input.projectId ? { projectId: input.projectId } : {}),
200
+ });
201
+ return { success: false };
202
+ }
203
+ if (!resumeData.approved) {
204
+ if (state.preTestSnapshot) {
205
+ await context.workflowService.updateFromWorkflowJSON(input.workflowId, state.preTestSnapshot);
206
+ state.preTestSnapshot = null;
207
+ }
208
+ return {
209
+ success: true,
210
+ deferred: true,
211
+ reason: 'User skipped workflow setup for now.',
212
+ };
213
+ }
214
+ if (resumeData.action === 'test-trigger' && resumeData.testTriggerNode) {
215
+ state.preTestSnapshot ??= await context.workflowService.getAsWorkflowJSON(input.workflowId);
216
+ const preTestApply = await (0, setup_workflow_service_1.applyNodeChanges)(context, input.workflowId, resumeData.credentials, resumeData.nodeParameters);
217
+ const applyFailures = preTestApply.failed;
218
+ if (applyFailures.length > 0) {
219
+ return {
220
+ success: false,
221
+ error: `Failed to apply setup before trigger test: ${applyFailures.map((f) => `${f.nodeName}: ${f.error}`).join('; ')}`,
222
+ failedNodes: applyFailures,
223
+ };
224
+ }
225
+ let triggerTestResult;
226
+ try {
227
+ const result = await context.executionService.run(input.workflowId, undefined, {
228
+ timeout: 30_000,
229
+ triggerNodeName: resumeData.testTriggerNode,
230
+ });
231
+ if (result.status === 'success') {
232
+ triggerTestResult = { status: 'success' };
233
+ }
234
+ else if (result.status === 'waiting') {
235
+ triggerTestResult = { status: 'listening' };
236
+ }
237
+ else {
238
+ triggerTestResult = {
239
+ status: 'error',
240
+ error: result.error ?? 'Trigger test failed',
241
+ };
242
+ }
243
+ }
244
+ catch (error) {
245
+ triggerTestResult = {
246
+ status: 'error',
247
+ error: error instanceof Error ? error.message : 'Trigger test failed',
248
+ };
249
+ }
250
+ const refreshedRequests = await (0, setup_workflow_service_1.analyzeWorkflow)(context, input.workflowId, {
251
+ [resumeData.testTriggerNode]: triggerTestResult,
252
+ });
253
+ state.currentRequestId = (0, nanoid_1.nanoid)();
254
+ await suspend?.({
255
+ requestId: state.currentRequestId,
256
+ message: 'Configure credentials for your workflow',
257
+ severity: 'info',
258
+ setupRequests: refreshedRequests,
259
+ workflowId: input.workflowId,
260
+ ...(input.projectId ? { projectId: input.projectId } : {}),
261
+ });
262
+ return { success: false };
263
+ }
264
+ try {
265
+ state.preTestSnapshot = null;
266
+ const applyResult = await (0, setup_workflow_service_1.applyNodeChanges)(context, input.workflowId, resumeData.credentials, resumeData.nodeParameters);
267
+ const failedNodes = applyResult.failed.length > 0 ? applyResult.failed : undefined;
268
+ const updatedWorkflow = await context.workflowService.getAsWorkflowJSON(input.workflowId);
269
+ const updatedNodes = updatedWorkflow.nodes.map((node) => ({
270
+ id: node.id,
271
+ name: node.name,
272
+ type: node.type,
273
+ typeVersion: node.typeVersion,
274
+ position: node.position,
275
+ parameters: node.parameters,
276
+ credentials: node.credentials,
277
+ disabled: node.disabled,
278
+ }));
279
+ const updatedConnections = updatedWorkflow.connections;
280
+ const remainingRequests = await (0, setup_workflow_service_1.analyzeWorkflow)(context, input.workflowId);
281
+ const pendingRequests = remainingRequests.filter((r) => r.needsAction);
282
+ const completedNodes = (0, setup_workflow_service_1.buildCompletedReport)(resumeData.credentials, resumeData.nodeParameters);
283
+ const credTestFailures = [];
284
+ for (const req of remainingRequests) {
285
+ if (req.credentialTestResult &&
286
+ !req.credentialTestResult.success &&
287
+ req.credentialType &&
288
+ resumeData.credentials?.[req.node.name]?.[req.credentialType]) {
289
+ credTestFailures.push({
290
+ nodeName: req.node.name,
291
+ error: `Credential test failed for ${req.credentialType}: ${req.credentialTestResult.message ?? 'Invalid credentials'}`,
292
+ });
293
+ }
294
+ }
295
+ const credFailedNodeNames = new Set(credTestFailures.map((f) => f.nodeName));
296
+ const validCompletedNodes = completedNodes.filter((n) => !credFailedNodeNames.has(n.nodeName));
297
+ const allFailedNodes = [...(failedNodes ?? []), ...credTestFailures];
298
+ const mergedFailedNodes = allFailedNodes.length > 0 ? allFailedNodes : undefined;
299
+ if (pendingRequests.length > 0) {
300
+ const skippedNodes = pendingRequests.map((r) => ({
301
+ nodeName: r.node.name,
302
+ credentialType: r.credentialType,
303
+ }));
304
+ return {
305
+ success: true,
306
+ partial: true,
307
+ reason: `Applied setup for ${String(validCompletedNodes.length)} node(s), ${String(pendingRequests.length)} node(s) still need configuration.`,
308
+ completedNodes: validCompletedNodes,
309
+ skippedNodes,
310
+ failedNodes: mergedFailedNodes,
311
+ updatedNodes,
312
+ updatedConnections,
313
+ };
314
+ }
315
+ return {
316
+ success: true,
317
+ completedNodes: validCompletedNodes,
318
+ failedNodes: mergedFailedNodes,
319
+ updatedNodes,
320
+ updatedConnections,
321
+ };
322
+ }
323
+ catch (error) {
324
+ return {
325
+ success: false,
326
+ error: `Workflow apply failed: ${error instanceof Error ? error.message : 'Unknown error'}`,
327
+ };
328
+ }
329
+ }
330
+ async function handlePublish(context, input, ctx) {
331
+ const resumeData = ctx?.agent?.resumeData;
332
+ const suspend = ctx?.agent?.suspend;
333
+ const hasNamedVersions = !!context.workflowService.updateVersion;
334
+ if (context.permissions?.publishWorkflow === 'blocked') {
335
+ return { success: false, denied: true, reason: 'Action blocked by admin' };
336
+ }
337
+ const needsApproval = context.permissions?.publishWorkflow !== 'always_allow';
338
+ if (needsApproval && (resumeData === undefined || resumeData === null)) {
339
+ const label = input.workflowName ?? input.workflowId;
340
+ await suspend?.({
341
+ requestId: (0, nanoid_1.nanoid)(),
342
+ message: input.versionId
343
+ ? `Publish version "${input.versionId}" of workflow "${label}"?`
344
+ : `Publish workflow "${label}"?`,
345
+ severity: 'warning',
346
+ });
347
+ return { success: false };
348
+ }
349
+ if (resumeData !== undefined && resumeData !== null && !resumeData.approved) {
350
+ return { success: false, denied: true, reason: 'User denied the action' };
351
+ }
352
+ try {
353
+ const result = await context.workflowService.publish(input.workflowId, {
354
+ versionId: input.versionId,
355
+ ...(hasNamedVersions
356
+ ? {
357
+ name: input.name,
358
+ description: input.description,
359
+ }
360
+ : {}),
361
+ });
362
+ return { success: true, activeVersionId: result.activeVersionId };
363
+ }
364
+ catch (error) {
365
+ return {
366
+ success: false,
367
+ error: error instanceof Error ? error.message : 'Publish failed',
368
+ };
369
+ }
370
+ }
371
+ async function handleUnpublish(context, input, ctx) {
372
+ const resumeData = ctx?.agent?.resumeData;
373
+ const suspend = ctx?.agent?.suspend;
374
+ if (context.permissions?.publishWorkflow === 'blocked') {
375
+ return { success: false, denied: true, reason: 'Action blocked by admin' };
376
+ }
377
+ const needsApproval = context.permissions?.publishWorkflow !== 'always_allow';
378
+ if (needsApproval && (resumeData === undefined || resumeData === null)) {
379
+ await suspend?.({
380
+ requestId: (0, nanoid_1.nanoid)(),
381
+ message: `Unpublish workflow "${input.workflowName ?? input.workflowId}"?`,
382
+ severity: 'warning',
383
+ });
384
+ return { success: false };
385
+ }
386
+ if (resumeData !== undefined && resumeData !== null && !resumeData.approved) {
387
+ return { success: false, denied: true, reason: 'User denied the action' };
388
+ }
389
+ try {
390
+ await context.workflowService.unpublish(input.workflowId);
391
+ return { success: true };
392
+ }
393
+ catch (error) {
394
+ return {
395
+ success: false,
396
+ error: error instanceof Error ? error.message : 'Unpublish failed',
397
+ };
398
+ }
399
+ }
400
+ async function handleListVersions(context, input) {
401
+ const versions = await context.workflowService.listVersions(input.workflowId, {
402
+ limit: input.limit,
403
+ skip: input.skip,
404
+ });
405
+ return { versions };
406
+ }
407
+ async function handleGetVersion(context, input) {
408
+ return await context.workflowService.getVersion(input.workflowId, input.versionId);
409
+ }
410
+ async function handleRestoreVersion(context, input, ctx) {
411
+ const resumeData = ctx?.agent?.resumeData;
412
+ const suspend = ctx?.agent?.suspend;
413
+ if (context.permissions?.restoreWorkflowVersion === 'blocked') {
414
+ return { success: false, denied: true, reason: 'Action blocked by admin' };
415
+ }
416
+ const needsApproval = context.permissions?.restoreWorkflowVersion !== 'always_allow';
417
+ if (needsApproval && (resumeData === undefined || resumeData === null)) {
418
+ const version = await context.workflowService.getVersion(input.workflowId, input.versionId).catch(() => undefined);
419
+ const timestamp = version?.createdAt ? (0, format_timestamp_1.formatTimestamp)(version.createdAt) : undefined;
420
+ const versionLabel = version?.name
421
+ ? `"${version.name}" (${timestamp})`
422
+ : `"${input.versionId}" (${timestamp ?? 'unknown date'})`;
423
+ await suspend?.({
424
+ requestId: (0, nanoid_1.nanoid)(),
425
+ message: `Restore workflow to version ${versionLabel}? This will overwrite the current draft.`,
426
+ severity: 'warning',
427
+ });
428
+ return { success: false };
429
+ }
430
+ if (resumeData !== undefined && resumeData !== null && !resumeData.approved) {
431
+ return { success: false, denied: true, reason: 'User denied the action' };
432
+ }
433
+ try {
434
+ await context.workflowService.restoreVersion(input.workflowId, input.versionId);
435
+ return { success: true };
436
+ }
437
+ catch (error) {
438
+ return {
439
+ success: false,
440
+ error: error instanceof Error ? error.message : 'Restore failed',
441
+ };
442
+ }
443
+ }
444
+ async function handleUpdateVersion(context, input) {
445
+ await context.workflowService.updateVersion(input.workflowId, input.versionId, {
446
+ name: input.name,
447
+ description: input.description,
448
+ });
449
+ return { success: true };
450
+ }
451
+ function createWorkflowsTool(context, surface = 'full') {
452
+ const setupState = {
453
+ currentRequestId: null,
454
+ preTestSnapshot: null,
455
+ };
456
+ const inputSchema = buildInputSchema(context, surface);
457
+ return (0, tools_1.createTool)({
458
+ id: 'workflows',
459
+ description: 'Manage workflows — list, inspect, delete, set up, publish, unpublish, and manage versions.',
460
+ inputSchema,
461
+ suspendSchema,
462
+ resumeSchema,
463
+ execute: async (input, ctx) => {
464
+ switch (input.action) {
465
+ case 'list':
466
+ return await handleList(context, input);
467
+ case 'get':
468
+ return await handleGet(context, input);
469
+ case 'get-as-code':
470
+ return await handleGetAsCode(context, input);
471
+ case 'delete':
472
+ return await handleDelete(context, input, ctx);
473
+ case 'setup':
474
+ return await handleSetup(context, input, ctx, setupState);
475
+ case 'publish':
476
+ return await handlePublish(context, input, ctx);
477
+ case 'unpublish':
478
+ return await handleUnpublish(context, input, ctx);
479
+ case 'list-versions':
480
+ return await handleListVersions(context, input);
481
+ case 'get-version':
482
+ return await handleGetVersion(context, input);
483
+ case 'restore-version':
484
+ return await handleRestoreVersion(context, input, ctx);
485
+ case 'update-version':
486
+ return await handleUpdateVersion(context, input);
487
+ default:
488
+ return { error: `Unknown action: ${input.action}` };
489
+ }
490
+ },
491
+ });
492
+ }
493
+ //# sourceMappingURL=workflows.tool.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"workflows.tool.js","sourceRoot":"","sources":["../../src/tools/workflows.tool.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import type { InstanceAiContext } from '../types';
2
+ export declare function createWorkspaceTool(context: InstanceAiContext): import("@mastra/core/tools").Tool<InferPublicSchema<T>, InferPublicSchema<T>, InferPublicSchema<T>, InferPublicSchema<T>, import("@mastra/core/tools").ToolExecutionContext<InferPublicSchema<T>, InferPublicSchema<T>, unknown>, "workspace", unknown>;