@n8n/instance-ai 1.23.2 → 1.24.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 (143) hide show
  1. package/dist/agent/instance-agent.js +5 -2
  2. package/dist/agent/instance-agent.js.map +1 -1
  3. package/dist/agent/system-prompt.d.ts +1 -0
  4. package/dist/agent/system-prompt.js +15 -1
  5. package/dist/agent/system-prompt.js.map +1 -1
  6. package/dist/build.tsbuildinfo +1 -1
  7. package/dist/error-formatting.js +3 -7
  8. package/dist/error-formatting.js.map +1 -1
  9. package/dist/errors/folder-resolution.error.d.ts +6 -0
  10. package/dist/errors/folder-resolution.error.js +13 -0
  11. package/dist/errors/folder-resolution.error.js.map +1 -0
  12. package/dist/errors/workflow-snapshot-changed.error.d.ts +4 -0
  13. package/dist/errors/workflow-snapshot-changed.error.js +11 -0
  14. package/dist/errors/workflow-snapshot-changed.error.js.map +1 -0
  15. package/dist/index.d.ts +9 -2
  16. package/dist/index.js +19 -3
  17. package/dist/index.js.map +1 -1
  18. package/dist/knowledge-base/extract-builder-templates-archive.js +2 -4
  19. package/dist/knowledge-base/extract-builder-templates-archive.js.map +1 -1
  20. package/dist/runtime/background-task-manager.d.ts +3 -1
  21. package/dist/runtime/background-task-manager.js +15 -1
  22. package/dist/runtime/background-task-manager.js.map +1 -1
  23. package/dist/runtime/liveness-policy.js.map +1 -1
  24. package/dist/runtime/resumable-stream-executor.d.ts +1 -2
  25. package/dist/runtime/resumable-stream-executor.js +4 -17
  26. package/dist/runtime/resumable-stream-executor.js.map +1 -1
  27. package/dist/runtime/run-state-registry.d.ts +4 -0
  28. package/dist/runtime/run-state-registry.js +18 -0
  29. package/dist/runtime/run-state-registry.js.map +1 -1
  30. package/dist/runtime/stream-runner.d.ts +0 -2
  31. package/dist/runtime/stream-runner.js +0 -1
  32. package/dist/runtime/stream-runner.js.map +1 -1
  33. package/dist/storage/agent-tree-snapshot.d.ts +0 -4
  34. package/dist/stream/consume-with-hitl.d.ts +0 -3
  35. package/dist/stream/consume-with-hitl.js +0 -2
  36. package/dist/stream/consume-with-hitl.js.map +1 -1
  37. package/dist/tools/conversation-history.schema.d.ts +231 -0
  38. package/dist/tools/conversation-history.schema.js +36 -0
  39. package/dist/tools/conversation-history.schema.js.map +1 -0
  40. package/dist/tools/conversation-history.tool.d.ts +2 -0
  41. package/dist/tools/conversation-history.tool.js +135 -0
  42. package/dist/tools/conversation-history.tool.js.map +1 -0
  43. package/dist/tools/credentials.tool.d.ts +3 -0
  44. package/dist/tools/credentials.tool.js +65 -0
  45. package/dist/tools/credentials.tool.js.map +1 -1
  46. package/dist/tools/data-tables.tool.js +59 -14
  47. package/dist/tools/data-tables.tool.js.map +1 -1
  48. package/dist/tools/evals/eval-config.tool.js +3 -5
  49. package/dist/tools/evals/eval-config.tool.js.map +1 -1
  50. package/dist/tools/index.js +12 -0
  51. package/dist/tools/index.js.map +1 -1
  52. package/dist/tools/mcp-servers.tool.js +1 -1
  53. package/dist/tools/mcp-servers.tool.js.map +1 -1
  54. package/dist/tools/n8n-docs/registry.d.ts +0 -1
  55. package/dist/tools/n8n-docs/registry.js +2 -5
  56. package/dist/tools/n8n-docs/registry.js.map +1 -1
  57. package/dist/tools/n8n-docs.tool.js +2 -1
  58. package/dist/tools/n8n-docs.tool.js.map +1 -1
  59. package/dist/tools/nodes/credential-setupability.json +1792 -0
  60. package/dist/tools/nodes/setup-preference.d.ts +9 -0
  61. package/dist/tools/nodes/setup-preference.js +23 -0
  62. package/dist/tools/nodes/setup-preference.js.map +1 -0
  63. package/dist/tools/nodes.tool.js +22 -9
  64. package/dist/tools/nodes.tool.js.map +1 -1
  65. package/dist/tools/orchestration/agent-target-binding.d.ts +6 -0
  66. package/dist/tools/orchestration/agent-target-binding.js +56 -32
  67. package/dist/tools/orchestration/agent-target-binding.js.map +1 -1
  68. package/dist/tools/orchestration/build-agent.tool.js +20 -3
  69. package/dist/tools/orchestration/build-agent.tool.js.map +1 -1
  70. package/dist/tools/orchestration/eval-setup-agent.tool.js +0 -1
  71. package/dist/tools/orchestration/eval-setup-agent.tool.js.map +1 -1
  72. package/dist/tools/orchestration/list-agent-capabilities.tool.d.ts +2 -0
  73. package/dist/tools/orchestration/list-agent-capabilities.tool.js +45 -0
  74. package/dist/tools/orchestration/list-agent-capabilities.tool.js.map +1 -0
  75. package/dist/tools/orchestration/verification/prepare-run.d.ts +1 -1
  76. package/dist/tools/orchestration/verification/prepare-run.js +32 -37
  77. package/dist/tools/orchestration/verification/prepare-run.js.map +1 -1
  78. package/dist/tools/orchestration/verification/types.d.ts +1 -0
  79. package/dist/tools/orchestration/verify-built-workflow.tool.d.ts +3 -0
  80. package/dist/tools/orchestration/verify-built-workflow.tool.js +8 -2
  81. package/dist/tools/orchestration/verify-built-workflow.tool.js.map +1 -1
  82. package/dist/tools/tool-ids.d.ts +2 -0
  83. package/dist/tools/tool-ids.js +4 -0
  84. package/dist/tools/tool-ids.js.map +1 -1
  85. package/dist/tools/workflows/build-workflow.tool.d.ts +32 -0
  86. package/dist/tools/workflows/build-workflow.tool.js +140 -29
  87. package/dist/tools/workflows/build-workflow.tool.js.map +1 -1
  88. package/dist/tools/workflows/generate-simulation-fixtures.service.d.ts +6 -0
  89. package/dist/tools/workflows/generate-simulation-fixtures.service.js +119 -14
  90. package/dist/tools/workflows/generate-simulation-fixtures.service.js.map +1 -1
  91. package/dist/tools/workflows/plan-verification-simulation.js +21 -2
  92. package/dist/tools/workflows/plan-verification-simulation.js.map +1 -1
  93. package/dist/tools/workflows/preserve-node-positions.js +33 -9
  94. package/dist/tools/workflows/preserve-node-positions.js.map +1 -1
  95. package/dist/tools/workflows/setup-items.d.ts +23 -0
  96. package/dist/tools/workflows/setup-items.js +154 -0
  97. package/dist/tools/workflows/setup-items.js.map +1 -0
  98. package/dist/tools/workflows/summarize-workflow.d.ts +4 -1
  99. package/dist/tools/workflows/summarize-workflow.js +8 -2
  100. package/dist/tools/workflows/summarize-workflow.js.map +1 -1
  101. package/dist/tools/workflows/workflow-build-remediation.js +3 -2
  102. package/dist/tools/workflows/workflow-build-remediation.js.map +1 -1
  103. package/dist/tools/workflows/workflow-build-telemetry.d.ts +1 -1
  104. package/dist/tools/workflows/workflow-build-telemetry.js.map +1 -1
  105. package/dist/tools/workflows/workflow-file-bindings.d.ts +1 -0
  106. package/dist/tools/workflows/workflow-file-bindings.js +13 -1
  107. package/dist/tools/workflows/workflow-file-bindings.js.map +1 -1
  108. package/dist/tools/workflows/workflow-source-compiler.d.ts +1 -0
  109. package/dist/tools/workflows/workflow-source-compiler.js +1 -0
  110. package/dist/tools/workflows/workflow-source-compiler.js.map +1 -1
  111. package/dist/tools/workflows/workflow-source-materializer.d.ts +28 -0
  112. package/dist/tools/workflows/workflow-source-materializer.js +98 -0
  113. package/dist/tools/workflows/workflow-source-materializer.js.map +1 -0
  114. package/dist/tools/workflows.tool.d.ts +1 -1
  115. package/dist/tools/workflows.tool.js +195 -23
  116. package/dist/tools/workflows.tool.js.map +1 -1
  117. package/dist/tools/workspace.tool.js +8 -3
  118. package/dist/tools/workspace.tool.js.map +1 -1
  119. package/dist/tracing/langsmith-tracing.js +3 -5
  120. package/dist/tracing/langsmith-tracing.js.map +1 -1
  121. package/dist/tracing/trace-payloads.js +4 -5
  122. package/dist/tracing/trace-payloads.js.map +1 -1
  123. package/dist/types.d.ts +92 -7
  124. package/dist/types.js +3 -1
  125. package/dist/types.js.map +1 -1
  126. package/dist/utils/model-config-id.d.ts +1 -0
  127. package/dist/utils/model-config-id.js +24 -0
  128. package/dist/utils/model-config-id.js.map +1 -0
  129. package/dist/utils/node-keyed-items.d.ts +1 -0
  130. package/dist/utils/node-keyed-items.js +10 -0
  131. package/dist/utils/node-keyed-items.js.map +1 -0
  132. package/dist/workflow-loop/guidance.js +1 -1
  133. package/dist/workflow-loop/guidance.js.map +1 -1
  134. package/dist/workspace/sandbox-setup.js +4 -6
  135. package/dist/workspace/sandbox-setup.js.map +1 -1
  136. package/package.json +12 -12
  137. package/skills/agent-builder/SKILL.md +23 -0
  138. package/skills/data-table-manager/SKILL.md +34 -3
  139. package/skills/intent-recognition/SKILL.md +55 -0
  140. package/skills/workflow-builder/SKILL.md +111 -27
  141. package/dist/stream/output-redaction.d.ts +0 -31
  142. package/dist/stream/output-redaction.js +0 -191
  143. package/dist/stream/output-redaction.js.map +0 -1
@@ -11,6 +11,7 @@ const nanoid_1 = require("nanoid");
11
11
  const zod_1 = require("zod");
12
12
  const sanitize_mcp_schemas_1 = require("../agent/sanitize-mcp-schemas");
13
13
  const workflow_save_conflict_error_1 = require("../errors/workflow-save-conflict.error");
14
+ const workflow_snapshot_changed_error_1 = require("../errors/workflow-snapshot-changed.error");
14
15
  const credentials_tool_1 = require("./credentials.tool");
15
16
  const format_timestamp_1 = require("../utils/format-timestamp");
16
17
  const observed_workflow_checksums_1 = require("./workflows/observed-workflow-checksums");
@@ -22,27 +23,68 @@ const validate_workflow_service_1 = require("./workflows/validate-workflow.servi
22
23
  const workflow_build_context_1 = require("./workflows/workflow-build-context");
23
24
  const workflow_file_bindings_1 = require("./workflows/workflow-file-bindings");
24
25
  const workflow_json_utils_1 = require("./workflows/workflow-json-utils");
26
+ const workflow_source_materializer_1 = require("./workflows/workflow-source-materializer");
25
27
  const workflow_validation_warnings_1 = require("./workflows/workflow-validation-warnings");
26
- const PROJECT_ID_FIELD_DESCRIPTION = 'Project ID, obtainable from `workspace(action="list-projects")`. For `list`: read that one project instead of the default scope — use it for "what is in project X" rather than listing the whole instance and guessing which results belong to X. Read-only, so it narrows what you can already see rather than widening it, and it does not move where you can write. For `setup`: scope credential creation to that project.';
27
- const listAction = zod_1.z.object({
28
+ const PROJECT_ID_FIELD_DESCRIPTION = 'Project ID, obtainable from `workspace(action="list-projects")`. For `list` and `node-usage`: read that one project instead of the default scope — use it for "what is in project X" rather than reading the whole instance and guessing which results belong to X. Read-only, so it narrows what you can already see rather than widening it, and it does not move where you can write. For `setup`: scope credential creation to that project.';
29
+ const SCOPE_FIELD_DESCRIPTION = "Which project(s) to read. Defaults to this conversation's project. Use 'instance' only when you have a clear reason to look across all projects you can access.";
30
+ const LIMIT_FIELD_DESCRIPTION = 'Max results to return';
31
+ const NODE_TYPES_FIELD_DESCRIPTION = 'Full node types, e.g. ["n8n-nodes-base.slack"]. Matched against the nodes a workflow actually contains, from an index — so it finds users of a node however the workflow is named, and costs one call however many workflows exist. Keeps only workflows containing at least one of these.';
32
+ const QUERY_FIELD_DESCRIPTION = 'Substring filter on the workflow NAME only — it does not match node types, descriptions, or what a workflow does. Omit it whenever you need the actual inventory (what exists here, project status, what to do next): a name-filtered list is not the set of workflows in scope. Use it only when the user named a workflow, or to locate one you already know exists.';
33
+ const FOLDER_PATH_FIELD_DESCRIPTION = 'Restrict to one folder, named the way the user named it — "logsearch", "personal/logsearch", "Clients/Acme". This is the ONLY correct way to address a folder: folder membership is stored, not encoded in workflow names, so a `query` prefix both misses members named differently and picks up non-members that share the prefix. Matched case-insensitively on the full path, then on the folder name. If it does not resolve, the result says so and lists the real folders — never assume the returned set is the folder.';
34
+ const FOLDER_ID_FIELD_DESCRIPTION = 'Folder ID, when a previous listing already gave you one (each workflow row carries its `folder`). Prefer `folderPath` when working from what the user said. When both are given, `folderId` wins.';
35
+ const RECURSIVE_FIELD_DESCRIPTION = 'Whether a folder is read together with its nested subfolders. Defaults to true, which is what a user naming a folder means. Set false only to inspect one level.';
36
+ const listActionBase = zod_1.z.object({
28
37
  action: zod_1.z
29
38
  .literal('list')
30
39
  .describe('List workflows accessible to the current user. Use for workflow inspection. Call it without `query` to get the complete inventory in scope — the result reports how many workflows a filter or the limit left out.'),
31
- query: zod_1.z
32
- .string()
33
- .optional()
34
- .describe('Substring filter on the workflow NAME only — it does not match node types, descriptions, or what a workflow does. Omit it whenever you need the actual inventory (what exists here, project status, what to do next): a name-filtered list is not the set of workflows in scope. Use it only when the user named a workflow, or to locate one you already know exists.'),
35
- limit: zod_1.z.number().int().positive().max(100).optional().describe('Max results to return'),
40
+ query: zod_1.z.string().optional().describe(QUERY_FIELD_DESCRIPTION),
41
+ limit: zod_1.z.number().int().positive().max(100).optional().describe(LIMIT_FIELD_DESCRIPTION),
36
42
  status: zod_1.z
37
43
  .enum(['active', 'archived', 'all'])
38
44
  .optional()
39
45
  .describe('Which workflows to list. Defaults to active; use archived to find workflows that can be restored.'),
40
- scope: zod_1.z
41
- .enum(['project', 'instance'])
46
+ scope: zod_1.z.enum(['project', 'instance']).optional().describe(SCOPE_FIELD_DESCRIPTION),
47
+ projectId: zod_1.z.string().optional().describe(PROJECT_ID_FIELD_DESCRIPTION),
48
+ });
49
+ const listActionWithoutFolderScope = listActionBase.extend({
50
+ nodeTypes: zod_1.z.array(zod_1.z.string()).optional().describe(NODE_TYPES_FIELD_DESCRIPTION),
51
+ });
52
+ const folderScopeFields = {
53
+ query: zod_1.z
54
+ .string()
42
55
  .optional()
43
- .describe("Which project(s) to search. Defaults to this conversation's project. Use 'instance' only when you have a clear reason to look across all projects you can access."),
56
+ .describe(QUERY_FIELD_DESCRIPTION +
57
+ ' If the user named a FOLDER, use `folderPath` — folder membership is not a name prefix, and guessing it here silently returns the wrong set.'),
58
+ folderPath: zod_1.z.string().optional().describe(FOLDER_PATH_FIELD_DESCRIPTION),
59
+ folderId: zod_1.z.string().optional().describe(FOLDER_ID_FIELD_DESCRIPTION),
60
+ recursive: zod_1.z.boolean().optional().describe(RECURSIVE_FIELD_DESCRIPTION),
61
+ };
62
+ const listActionWithFolderScope = listActionBase.extend(folderScopeFields);
63
+ const nodeUsageAction = zod_1.z.object({
64
+ action: zod_1.z
65
+ .literal('node-usage')
66
+ .describe('Which node types the workflows in scope actually use, and how many use each, most-used ' +
67
+ 'first. Read this BEFORE opening workflows when the question is what a project is built ' +
68
+ 'out of — its conventions, which integrations are in play, whether something already ' +
69
+ 'exists. Call it with no `nodeType` for the overview; call it with one to get the ' +
70
+ 'workflows using that type, most recently updated first, when you want to read a ' +
71
+ 'current example.'),
72
+ nodeType: zod_1.z
73
+ .string()
74
+ .optional()
75
+ .describe('A single full node type, e.g. "@n8n/n8n-nodes-langchain.lmChatAnthropic". Omit it for the ' +
76
+ 'overview of every type in use.'),
77
+ limit: zod_1.z.number().int().positive().max(200).optional().describe(LIMIT_FIELD_DESCRIPTION),
78
+ scope: zod_1.z.enum(['project', 'instance']).optional().describe(SCOPE_FIELD_DESCRIPTION),
44
79
  projectId: zod_1.z.string().optional().describe(PROJECT_ID_FIELD_DESCRIPTION),
45
80
  });
81
+ const listAction = listActionWithoutFolderScope.extend(folderScopeFields);
82
+ function pickListAction(context, hasNodeUsage) {
83
+ if (hasNodeUsage) {
84
+ return context.folderExplorationEnabled === true ? listAction : listActionWithoutFolderScope;
85
+ }
86
+ return context.folderExplorationEnabled === true ? listActionWithFolderScope : listActionBase;
87
+ }
46
88
  const getAction = zod_1.z.object({
47
89
  action: zod_1.z
48
90
  .literal('get')
@@ -64,7 +106,7 @@ const getJsonAction = zod_1.z.object({
64
106
  const getAsCodeAction = zod_1.z.object({
65
107
  action: zod_1.z
66
108
  .literal('get-as-code')
67
- .describe('Convert an existing workflow to TypeScript SDK code. Call before precise patches when you need the current code. Pass versionId for a past version instead of the current draft.'),
109
+ .describe('Write an existing workflow as TypeScript SDK source into the workspace (src/workflows/<name>.workflow.ts), bind the file to the workflow, and return the file path plus a node index with line numbers. Edit the file with scoped replacements and save with build-workflow. Source is inlined only when small. Pass versionId for a past version instead of the current draft.'),
68
110
  workflowId: zod_1.z.string().describe('ID of the workflow'),
69
111
  versionId: zod_1.z.string().optional().describe('Version ID'),
70
112
  });
@@ -194,6 +236,7 @@ exports.workflowsResumeSchema = setup_workflow_schema_1.setupResumeSchema.extend
194
236
  });
195
237
  const WORKFLOW_ACTION_ORDER = [
196
238
  'list',
239
+ 'node-usage',
197
240
  'get',
198
241
  'get-json',
199
242
  'get-as-code',
@@ -210,6 +253,7 @@ const WORKFLOW_ACTION_ORDER = [
210
253
  ];
211
254
  const WORKFLOW_ACTION_LABELS = {
212
255
  list: 'list',
256
+ 'node-usage': 'summarize which node types are in use',
213
257
  get: 'inspect',
214
258
  'get-json': 'inspect full WorkflowJSON',
215
259
  'get-as-code': 'convert existing workflows to TypeScript SDK code',
@@ -230,8 +274,10 @@ function normalizeOptions(options = {}) {
230
274
  function getSupportedWorkflowActionSchemas(context, surface = 'full') {
231
275
  const hasNamedVersions = !!context.workflowService.updateVersion;
232
276
  const hasVersions = !!context.workflowService.listVersions;
277
+ const hasNodeUsage = !!context.workflowService.nodeUsage;
233
278
  return {
234
- list: listAction,
279
+ list: pickListAction(context, hasNodeUsage),
280
+ ...(hasNodeUsage ? { 'node-usage': nodeUsageAction } : {}),
235
281
  get: getAction,
236
282
  ...(surface !== 'orchestrator' ? { 'get-json': getJsonAction } : {}),
237
283
  'get-as-code': getAsCodeAction,
@@ -277,15 +323,72 @@ async function resolveWorkflowName(context, workflowId) {
277
323
  .then((wf) => wf.name)
278
324
  .catch(() => workflowId);
279
325
  }
326
+ async function handleNodeUsage(context, input) {
327
+ if (!context.workflowService.nodeUsage) {
328
+ return {
329
+ note: 'Node usage is not available on this instance. Read the workflows you need directly.',
330
+ };
331
+ }
332
+ const result = await context.workflowService.nodeUsage({
333
+ ...(input.nodeType ? { nodeType: input.nodeType } : {}),
334
+ ...(input.limit !== undefined ? { limit: input.limit } : {}),
335
+ ...(input.scope ? { scope: input.scope } : {}),
336
+ ...(input.projectId ? { projectId: input.projectId } : {}),
337
+ });
338
+ if (input.nodeType) {
339
+ return {
340
+ nodeType: input.nodeType,
341
+ workflowsInScope: result.workflowsInScope,
342
+ workflows: result.workflows ?? [],
343
+ ...(result.truncated ? { truncated: true } : {}),
344
+ };
345
+ }
346
+ const absence = result.truncated
347
+ ? 'This list is CUT at the top ' +
348
+ `${result.nodeTypes?.length ?? 0} most-used types — a type missing from it may still be ` +
349
+ 'in use, so do not read an absence as evidence. Raise `limit`, or narrow with `projectId`.'
350
+ : 'A type absent from this list is used by no workflow in scope.';
351
+ return {
352
+ workflowsInScope: result.workflowsInScope,
353
+ nodeTypes: result.nodeTypes ?? [],
354
+ ...(result.truncated ? { truncated: true } : {}),
355
+ note: `Counts are how many workflows use each type, out of workflowsInScope. ${absence} ` +
356
+ 'Node types only — for parameter-level convention (retry settings, naming, model ' +
357
+ 'options), read one workflow with `get`.',
358
+ };
359
+ }
360
+ function formatFolderResolutionNote(failure) {
361
+ const candidates = failure.candidates.length > 0
362
+ ? ` Folders in scope: ${failure.candidates.map((path) => `"${path}"`).join(', ')}.`
363
+ : '';
364
+ const guidance = ' Do NOT substitute a `query` name filter — folder membership is not a name prefix. Retry with one of the listed paths or its `folderId`, or ask the user which folder they mean.';
365
+ switch (failure.reason) {
366
+ case 'ambiguous':
367
+ return `Folder "${failure.requested}" matches more than one folder, so no rows were returned.${candidates}${guidance} Identical paths mean the same folder path exists in more than one project; pass \`projectId\` to pick one.`;
368
+ case 'unsupported':
369
+ return `Folder "${failure.requested}" could not be used: Folders are not available on this instance (unlicensed), so no rows were returned. Do NOT substitute a \`query\` name filter — folder membership is not a name prefix. Tell the user and ask the user how to proceed.`;
370
+ case 'scope-too-wide':
371
+ return `Folder "${failure.requested}" could not be resolved: this listing spans too many projects to scan folders across the whole instance, so no rows were returned. Do NOT substitute a \`query\` name filter — folder membership is not a name prefix. Pass \`projectId\` (from \`workspace(action="list-projects")\`) to narrow to one project, then retry.`;
372
+ default:
373
+ return `Folder "${failure.requested}" was not found, so no rows were returned.${candidates}${guidance}`;
374
+ }
375
+ }
280
376
  async function handleList(context, input) {
281
- const { workflows, total, totalInScope } = await context.workflowService.list({
377
+ const { workflows, total, totalInScope, folderResolution } = await context.workflowService.list({
282
378
  limit: input.limit,
283
379
  query: input.query,
284
380
  ...(input.status ? { status: input.status } : {}),
285
381
  ...(input.scope ? { scope: input.scope } : {}),
286
382
  ...(input.projectId ? { projectId: input.projectId } : {}),
383
+ ...(input.nodeTypes?.length ? { nodeTypes: input.nodeTypes } : {}),
384
+ ...(input.folderPath !== undefined ? { folderPath: input.folderPath } : {}),
385
+ ...(input.folderId !== undefined ? { folderId: input.folderId } : {}),
386
+ ...(input.recursive !== undefined ? { recursive: input.recursive } : {}),
287
387
  });
288
388
  const notes = [];
389
+ if (folderResolution) {
390
+ notes.push(formatFolderResolutionNote(folderResolution));
391
+ }
289
392
  if (input.query !== undefined && totalInScope > total) {
290
393
  notes.push(`Name filter "${input.query}" matched ${total} of ${totalInScope} workflows in scope — ${totalInScope - total} are hidden. This is NOT the full set: re-run without \`query\` before answering anything about what exists here.`);
291
394
  }
@@ -300,6 +403,7 @@ async function handleList(context, input) {
300
403
  workflows,
301
404
  total,
302
405
  totalInScope,
406
+ ...(folderResolution ? { folderResolution } : {}),
303
407
  ...(notes.length > 0 ? { note: notes.join(' ') } : {}),
304
408
  };
305
409
  }
@@ -314,7 +418,7 @@ async function handleGet(context, input) {
314
418
  };
315
419
  }
316
420
  const version = await context.workflowService.getVersion(input.workflowId, input.versionId);
317
- if (input.full || (0, summarize_workflow_1.isSmallPayload)(version)) {
421
+ if ((0, summarize_workflow_1.isSmallPayload)(version) || (input.full && !(0, summarize_workflow_1.exceedsFullPayloadLimit)(version))) {
318
422
  return { workflowId: input.workflowId, ...version };
319
423
  }
320
424
  const { nodes, connections, ...meta } = version;
@@ -323,19 +427,21 @@ async function handleGet(context, input) {
323
427
  ...meta,
324
428
  nodeCount: nodes.length,
325
429
  structure: await (0, summarize_workflow_1.summarizeWorkflowStructure)(meta.name ?? '', nodes, connections),
326
- note: summarize_workflow_1.STRUCTURE_ONLY_NOTE,
430
+ note: input.full ? summarize_workflow_1.FULL_PAYLOAD_TOO_LARGE_NOTE : summarize_workflow_1.STRUCTURE_ONLY_NOTE,
327
431
  };
328
432
  }
329
433
  const detail = await context.workflowService.get(input.workflowId);
330
434
  await (0, observed_workflow_checksums_1.rememberObservedWorkflowChecksum)(context, input.workflowId, detail.checksum);
331
- if (input.full || (0, summarize_workflow_1.isSmallPayload)(detail))
435
+ if ((0, summarize_workflow_1.isSmallPayload)(detail))
436
+ return detail;
437
+ if (input.full && !(0, summarize_workflow_1.exceedsFullPayloadLimit)(detail))
332
438
  return detail;
333
439
  const { nodes, connections, ...meta } = detail;
334
440
  return {
335
441
  ...meta,
336
442
  nodeCount: nodes.length,
337
443
  structure: await (0, summarize_workflow_1.summarizeWorkflowStructure)(meta.name, nodes, connections),
338
- note: summarize_workflow_1.STRUCTURE_ONLY_NOTE,
444
+ note: input.full ? summarize_workflow_1.FULL_PAYLOAD_TOO_LARGE_NOTE : summarize_workflow_1.STRUCTURE_ONLY_NOTE,
339
445
  };
340
446
  }
341
447
  catch (error) {
@@ -389,15 +495,79 @@ async function handleGetJson(context, input) {
389
495
  };
390
496
  }
391
497
  }
498
+ const SOURCE_FILE_NOTES = {
499
+ written: 'Source written to filePath and bound to this workflow. Locate nodes with the `nodes` index (line numbers) and read only those lines — for a large file use a ranged shell read such as `sed -n START,ENDp filePath` via workspace_execute_command, since workspace_read_file returns the whole file. Apply edits with workspace_str_replace_file, then call build-workflow with this filePath. Do not rewrite the whole file.',
500
+ refreshed: 'The saved workflow changed since the file was written, so the file was regenerated from the saved workflow. Re-apply any edit you still need with workspace_str_replace_file, then build-workflow.',
501
+ current: 'The file already matches the saved workflow; nothing was written. Edit it with workspace_str_replace_file and call build-workflow with this filePath.',
502
+ conflict: 'The file has edits that were never built, so it was left untouched. Build it with build-workflow to save them, or delete the file and call get-as-code again to start from the saved workflow.',
503
+ };
504
+ async function readConsistentWorkflowSnapshot(context, workflowId) {
505
+ for (let attempt = 0; attempt < 2; attempt++) {
506
+ const before = await context.workflowService.get(workflowId);
507
+ const json = await context.workflowService.getAsWorkflowJSON(workflowId);
508
+ const after = await context.workflowService.get(workflowId);
509
+ if (before.checksum === after.checksum && before.versionId === after.versionId) {
510
+ return { json, saved: { versionId: after.versionId, checksum: after.checksum } };
511
+ }
512
+ }
513
+ throw new workflow_snapshot_changed_error_1.WorkflowSnapshotChangedError(workflowId);
514
+ }
392
515
  async function handleGetAsCode(context, input) {
393
- const { generateWorkflowCode } = await import('@n8n/workflow-sdk');
516
+ const { generateWorkflowCode, buildImports } = await import('@n8n/workflow-sdk');
517
+ const toCode = (json) => {
518
+ const body = generateWorkflowCode({
519
+ workflow: json,
520
+ includeNodeIds: true,
521
+ includePositions: false,
522
+ });
523
+ const importLine = buildImports(body);
524
+ return importLine ? `${importLine}\n\n${body}` : body;
525
+ };
394
526
  try {
395
- const json = await context.workflowService.getAsWorkflowJSON(input.workflowId, input.versionId);
396
- const code = generateWorkflowCode({ workflow: json, includeNodeIds: true });
397
- if (!input.versionId) {
398
- await (0, workflow_file_bindings_1.refreshWorkflowSourceFileBindingFromWorkflow)(context, input.workflowId);
527
+ if (input.versionId) {
528
+ const json = await context.workflowService.getAsWorkflowJSON(input.workflowId, input.versionId);
529
+ const code = toCode(json);
530
+ return {
531
+ workflowId: input.workflowId,
532
+ name: json.name,
533
+ nodeCount: json.nodes?.length ?? 0,
534
+ nodes: await (0, workflow_source_materializer_1.indexSourceNodes)(json, code),
535
+ code,
536
+ };
399
537
  }
400
- return { workflowId: input.workflowId, name: json.name, code };
538
+ const { json, saved } = await readConsistentWorkflowSnapshot(context, input.workflowId);
539
+ const code = toCode(json);
540
+ const nodeCount = json.nodes?.length ?? 0;
541
+ const base = { workflowId: input.workflowId, name: json.name, nodeCount };
542
+ if (!context.workspace) {
543
+ await (0, workflow_file_bindings_1.refreshWorkflowSourceFileBindingFromSave)(context, input.workflowId, {
544
+ versionId: saved.versionId,
545
+ checksum: saved.checksum,
546
+ });
547
+ return { ...base, nodes: await (0, workflow_source_materializer_1.indexSourceNodes)(json, code), code };
548
+ }
549
+ const materialized = await (0, workflow_source_materializer_1.materializeWorkflowSource)(context, {
550
+ workflowId: input.workflowId,
551
+ name: json.name,
552
+ code,
553
+ saved: { versionId: saved.versionId, checksum: saved.checksum },
554
+ });
555
+ if (materialized.status !== 'conflict') {
556
+ await (0, workflow_file_bindings_1.refreshWorkflowSourceFileBindingFromSave)(context, input.workflowId, {
557
+ versionId: saved.versionId,
558
+ checksum: saved.checksum,
559
+ });
560
+ }
561
+ return {
562
+ ...base,
563
+ filePath: materialized.filePath,
564
+ status: materialized.status,
565
+ nodes: await (0, workflow_source_materializer_1.indexSourceNodes)(json, materialized.content),
566
+ note: SOURCE_FILE_NOTES[materialized.status],
567
+ ...(materialized.status !== 'conflict' && code.length <= workflow_source_materializer_1.INLINE_SOURCE_LIMIT_CHARS
568
+ ? { code }
569
+ : {}),
570
+ };
401
571
  }
402
572
  catch (error) {
403
573
  return {
@@ -1208,6 +1378,8 @@ function createWorkflowsTool(context, optionsInput = {}) {
1208
1378
  switch (workflowInput.action) {
1209
1379
  case 'list':
1210
1380
  return await handleList(context, workflowInput);
1381
+ case 'node-usage':
1382
+ return await handleNodeUsage(context, workflowInput);
1211
1383
  case 'get':
1212
1384
  return await handleGet(context, workflowInput);
1213
1385
  case 'get-json':
@@ -1 +1 @@
1
- {"version":3,"file":"workflows.tool.js","sourceRoot":"","sources":["../../src/tools/workflows.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"workflows.tool.js","sourceRoot":"","sources":["../../src/tools/workflows.tool.ts"],"names":[],"mappings":"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"}
@@ -45,7 +45,7 @@ const listFoldersAction = zod_1.z.object({
45
45
  });
46
46
  const createFolderAction = zod_1.z.object({
47
47
  action: zod_1.z.literal('create-folder').describe('Create a new folder in a project'),
48
- name: zod_1.z.string().describe('Name for the new folder'),
48
+ name: api_types_1.folderNameSchema.describe('Name for the new folder'),
49
49
  projectId: projectIdField,
50
50
  parentFolderId: zod_1.z
51
51
  .string()
@@ -160,6 +160,11 @@ async function handleListFolders(context, input) {
160
160
  }
161
161
  async function handleCreateFolder(context, input, ctx) {
162
162
  const { resumeData } = ctx;
163
+ const nameCheck = api_types_1.folderNameSchema.safeParse(input.name);
164
+ if (!nameCheck.success) {
165
+ return { error: nameCheck.error.issues[0]?.message ?? 'Invalid folder name' };
166
+ }
167
+ const name = nameCheck.data;
163
168
  if (context.permissions?.createFolder === 'blocked') {
164
169
  return {
165
170
  id: '',
@@ -173,7 +178,7 @@ async function handleCreateFolder(context, input, ctx) {
173
178
  if (needsApproval && (resumeData === undefined || resumeData === null)) {
174
179
  return await ctx.suspend({
175
180
  requestId: (0, nanoid_1.nanoid)(),
176
- message: `Create ${input.name} in project ${input.projectId}`,
181
+ message: `Create ${name} in project ${input.projectId}`,
177
182
  severity: 'info',
178
183
  });
179
184
  }
@@ -186,7 +191,7 @@ async function handleCreateFolder(context, input, ctx) {
186
191
  reason: 'User denied the action',
187
192
  };
188
193
  }
189
- const folder = await context.workspaceService.createFolder(input.name, input.projectId, input.parentFolderId);
194
+ const folder = await context.workspaceService.createFolder(name, input.projectId, input.parentFolderId);
190
195
  return { ...folder };
191
196
  }
192
197
  async function handleDeleteFolder(context, input, ctx) {