@n8n/ai-workflow-builder 1.4.1 → 1.5.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 (158) hide show
  1. package/dist/agents/responder.agent.d.ts +4 -2
  2. package/dist/agents/responder.agent.js +9 -2
  3. package/dist/agents/responder.agent.js.map +1 -1
  4. package/dist/agents/supervisor.agent.d.ts +2 -1
  5. package/dist/agents/supervisor.agent.js +2 -2
  6. package/dist/agents/supervisor.agent.js.map +1 -1
  7. package/dist/ai-workflow-builder-agent.service.js +11 -7
  8. package/dist/ai-workflow-builder-agent.service.js.map +1 -1
  9. package/dist/build.tsbuildinfo +1 -1
  10. package/dist/chains/conversation-compact.d.ts +2 -1
  11. package/dist/chains/conversation-compact.js +2 -2
  12. package/dist/chains/conversation-compact.js.map +1 -1
  13. package/dist/chains/workflow-name.d.ts +2 -1
  14. package/dist/chains/workflow-name.js +3 -2
  15. package/dist/chains/workflow-name.js.map +1 -1
  16. package/dist/constants.d.ts +0 -1
  17. package/dist/constants.js +1 -2
  18. package/dist/constants.js.map +1 -1
  19. package/dist/llm-config.d.ts +14 -5
  20. package/dist/llm-config.js +90 -35
  21. package/dist/llm-config.js.map +1 -1
  22. package/dist/multi-agent-workflow-subgraphs.d.ts +2 -4
  23. package/dist/multi-agent-workflow-subgraphs.js +20 -15
  24. package/dist/multi-agent-workflow-subgraphs.js.map +1 -1
  25. package/dist/prompts/agents/builder.prompt.js +211 -33
  26. package/dist/prompts/agents/builder.prompt.js.map +1 -1
  27. package/dist/prompts/agents/configurator.prompt.js +24 -2
  28. package/dist/prompts/agents/configurator.prompt.js.map +1 -1
  29. package/dist/prompts/agents/discovery.prompt.js +84 -7
  30. package/dist/prompts/agents/discovery.prompt.js.map +1 -1
  31. package/dist/prompts/chains/parameter-updater/guides/gmail.js +27 -2
  32. package/dist/prompts/chains/parameter-updater/guides/gmail.js.map +1 -1
  33. package/dist/prompts/chains/parameter-updater/guides/index.d.ts +1 -0
  34. package/dist/prompts/chains/parameter-updater/guides/index.js +3 -1
  35. package/dist/prompts/chains/parameter-updater/guides/index.js.map +1 -1
  36. package/dist/prompts/chains/parameter-updater/guides/predecessor-output.d.ts +2 -0
  37. package/dist/prompts/chains/parameter-updater/guides/predecessor-output.js +25 -0
  38. package/dist/prompts/chains/parameter-updater/guides/predecessor-output.js.map +1 -0
  39. package/dist/prompts/chains/parameter-updater/registry.js +1 -0
  40. package/dist/prompts/chains/parameter-updater/registry.js.map +1 -1
  41. package/dist/prompts/index.d.ts +0 -1
  42. package/dist/prompts/index.js +1 -4
  43. package/dist/prompts/index.js.map +1 -1
  44. package/dist/prompts/shared/node-guidance/structured-output-parser.js +1 -1
  45. package/dist/prompts/shared/node-recommendations/audio-generation.d.ts +2 -0
  46. package/dist/prompts/shared/node-recommendations/audio-generation.js +18 -0
  47. package/dist/prompts/shared/node-recommendations/audio-generation.js.map +1 -0
  48. package/dist/prompts/shared/node-recommendations/image-generation.d.ts +2 -0
  49. package/dist/prompts/shared/node-recommendations/image-generation.js +18 -0
  50. package/dist/prompts/shared/node-recommendations/image-generation.js.map +1 -0
  51. package/dist/prompts/shared/node-recommendations/index.d.ts +3 -0
  52. package/dist/prompts/shared/node-recommendations/index.js +17 -0
  53. package/dist/prompts/shared/node-recommendations/index.js.map +1 -0
  54. package/dist/prompts/shared/node-recommendations/text-manipulation.d.ts +2 -0
  55. package/dist/prompts/shared/node-recommendations/text-manipulation.js +27 -0
  56. package/dist/prompts/shared/node-recommendations/text-manipulation.js.map +1 -0
  57. package/dist/prompts/shared/node-recommendations/utils/format-recommendation.d.ts +2 -0
  58. package/dist/prompts/shared/node-recommendations/utils/format-recommendation.js +24 -0
  59. package/dist/prompts/shared/node-recommendations/utils/format-recommendation.js.map +1 -0
  60. package/dist/prompts/shared/node-recommendations/video-generation.d.ts +2 -0
  61. package/dist/prompts/shared/node-recommendations/video-generation.js +15 -0
  62. package/dist/prompts/shared/node-recommendations/video-generation.js.map +1 -0
  63. package/dist/subgraphs/builder.subgraph.d.ts +3 -1
  64. package/dist/subgraphs/builder.subgraph.js +28 -4
  65. package/dist/subgraphs/builder.subgraph.js.map +1 -1
  66. package/dist/subgraphs/configurator.subgraph.d.ts +3 -1
  67. package/dist/subgraphs/configurator.subgraph.js +5 -3
  68. package/dist/subgraphs/configurator.subgraph.js.map +1 -1
  69. package/dist/subgraphs/discovery.subgraph.d.ts +81 -1
  70. package/dist/subgraphs/discovery.subgraph.js +67 -8
  71. package/dist/subgraphs/discovery.subgraph.js.map +1 -1
  72. package/dist/tools/add-node.tool.d.ts +12 -12
  73. package/dist/tools/add-node.tool.js +25 -30
  74. package/dist/tools/add-node.tool.js.map +1 -1
  75. package/dist/tools/best-practices/data-persistence.js +5 -0
  76. package/dist/tools/best-practices/data-persistence.js.map +1 -1
  77. package/dist/tools/best-practices/index.js +2 -1
  78. package/dist/tools/best-practices/index.js.map +1 -1
  79. package/dist/tools/best-practices/scheduling.js +41 -168
  80. package/dist/tools/best-practices/scheduling.js.map +1 -1
  81. package/dist/tools/builder-tools.d.ts +1 -10
  82. package/dist/tools/builder-tools.js +6 -17
  83. package/dist/tools/builder-tools.js.map +1 -1
  84. package/dist/tools/get-documentation.tool.d.ts +79 -0
  85. package/dist/tools/get-documentation.tool.js +164 -0
  86. package/dist/tools/get-documentation.tool.js.map +1 -0
  87. package/dist/tools/helpers/state.d.ts +1 -0
  88. package/dist/tools/helpers/state.js +6 -0
  89. package/dist/tools/helpers/state.js.map +1 -1
  90. package/dist/tools/node-details.tool.js +14 -3
  91. package/dist/tools/node-details.tool.js.map +1 -1
  92. package/dist/tools/rename-node.tool.d.ts +15 -0
  93. package/dist/tools/rename-node.tool.js +141 -0
  94. package/dist/tools/rename-node.tool.js.map +1 -0
  95. package/dist/tools/update-node-parameters.tool.d.ts +1 -1
  96. package/dist/tools/update-node-parameters.tool.js +131 -2
  97. package/dist/tools/update-node-parameters.tool.js.map +1 -1
  98. package/dist/tools/utils/mermaid.utils.js +12 -10
  99. package/dist/tools/utils/mermaid.utils.js.map +1 -1
  100. package/dist/tools/validate-structure.tool.js +3 -2
  101. package/dist/tools/validate-structure.tool.js.map +1 -1
  102. package/dist/types/discovery-types.d.ts +2 -0
  103. package/dist/types/index.d.ts +1 -0
  104. package/dist/types/index.js +1 -0
  105. package/dist/types/index.js.map +1 -1
  106. package/dist/types/node-recommendations.d.ts +26 -0
  107. package/dist/types/node-recommendations.js +16 -0
  108. package/dist/types/node-recommendations.js.map +1 -0
  109. package/dist/types/tools.d.ts +5 -3
  110. package/dist/types/workflow.d.ts +5 -0
  111. package/dist/utils/context-builders.js +17 -2
  112. package/dist/utils/context-builders.js.map +1 -1
  113. package/dist/utils/operations-processor.js +37 -5
  114. package/dist/utils/operations-processor.js.map +1 -1
  115. package/dist/utils/resource-operation-extractor.d.ts +16 -0
  116. package/dist/utils/resource-operation-extractor.js +148 -0
  117. package/dist/utils/resource-operation-extractor.js.map +1 -0
  118. package/dist/utils/state-modifier.d.ts +3 -2
  119. package/dist/utils/state-modifier.js +4 -4
  120. package/dist/utils/state-modifier.js.map +1 -1
  121. package/dist/utils/stream-processor.js +1 -1
  122. package/dist/utils/stream-processor.js.map +1 -1
  123. package/dist/utils/subgraph-helpers.d.ts +1 -0
  124. package/dist/utils/subgraph-helpers.js +12 -0
  125. package/dist/utils/subgraph-helpers.js.map +1 -1
  126. package/dist/validation/auto-fix/auto-fix-connections.d.ts +21 -0
  127. package/dist/validation/auto-fix/auto-fix-connections.js +207 -0
  128. package/dist/validation/auto-fix/auto-fix-connections.js.map +1 -0
  129. package/dist/validation/auto-fix/index.d.ts +2 -0
  130. package/dist/validation/auto-fix/index.js +6 -0
  131. package/dist/validation/auto-fix/index.js.map +1 -0
  132. package/dist/validation/checks/connections.js +10 -0
  133. package/dist/validation/checks/connections.js.map +1 -1
  134. package/dist/validation/checks/credentials.js +6 -6
  135. package/dist/validation/checks/credentials.js.map +1 -1
  136. package/dist/validation/types.d.ts +1 -1
  137. package/dist/workflow-builder-agent.d.ts +14 -14
  138. package/dist/workflow-builder-agent.js +22 -239
  139. package/dist/workflow-builder-agent.js.map +1 -1
  140. package/dist/workflow-state.d.ts +0 -1
  141. package/dist/workflow-state.js +0 -17
  142. package/dist/workflow-state.js.map +1 -1
  143. package/package.json +15 -12
  144. package/dist/prompts/legacy-agent.prompt.d.ts +0 -6
  145. package/dist/prompts/legacy-agent.prompt.js +0 -587
  146. package/dist/prompts/legacy-agent.prompt.js.map +0 -1
  147. package/dist/tools/categorize-prompt.tool.d.ts +0 -5
  148. package/dist/tools/categorize-prompt.tool.js +0 -85
  149. package/dist/tools/categorize-prompt.tool.js.map +0 -1
  150. package/dist/tools/get-best-practices.tool.d.ts +0 -34
  151. package/dist/tools/get-best-practices.tool.js +0 -94
  152. package/dist/tools/get-best-practices.tool.js.map +0 -1
  153. package/dist/tools/validate-workflow.tool.d.ts +0 -5
  154. package/dist/tools/validate-workflow.tool.js +0 -73
  155. package/dist/tools/validate-workflow.tool.js.map +0 -1
  156. package/dist/utils/workflow-validation.d.ts +0 -2
  157. package/dist/utils/workflow-validation.js +0 -37
  158. package/dist/utils/workflow-validation.js.map +0 -1
@@ -2,6 +2,7 @@ import type { BaseChatModel } from '@langchain/core/language_models/chat_models'
2
2
  import type { BaseMessage, AIMessage } from '@langchain/core/messages';
3
3
  import type { Logger } from '@n8n/backend-common';
4
4
  import type { INodeTypeDescription } from 'n8n-workflow';
5
+ import { type ResourceOperationInfo } from '../utils/resource-operation-extractor';
5
6
  import type { BuilderFeatureFlags } from '../workflow-builder-agent';
6
7
  import { BaseSubgraph } from './subgraph-interface';
7
8
  import type { ParentGraphState } from '../parent-graph-state';
@@ -18,6 +19,14 @@ export declare const DiscoverySubgraphState: import("@langchain/langgraph").Anno
18
19
  name: string;
19
20
  possibleValues: Array<string | boolean | number>;
20
21
  }>;
22
+ availableResources?: Array<{
23
+ value: string;
24
+ displayName: string;
25
+ operations: Array<{
26
+ value: string;
27
+ displayName: string;
28
+ }>;
29
+ }>;
21
30
  }[], {
22
31
  nodeName: string;
23
32
  version: number;
@@ -26,10 +35,19 @@ export declare const DiscoverySubgraphState: import("@langchain/langgraph").Anno
26
35
  name: string;
27
36
  possibleValues: Array<string | boolean | number>;
28
37
  }>;
38
+ availableResources?: Array<{
39
+ value: string;
40
+ displayName: string;
41
+ operations: Array<{
42
+ value: string;
43
+ displayName: string;
44
+ }>;
45
+ }>;
29
46
  }[]>;
30
47
  bestPractices: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
31
48
  templateIds: import("@langchain/langgraph").BinaryOperatorAggregate<number[], number[]>;
32
49
  cachedTemplates: import("@langchain/langgraph").BinaryOperatorAggregate<WorkflowMetadata[], WorkflowMetadata[]>;
50
+ resourceOperationCache: import("@langchain/langgraph").BinaryOperatorAggregate<Record<string, ResourceOperationInfo | null>, Record<string, ResourceOperationInfo | null>>;
33
51
  }>;
34
52
  export interface DiscoverySubgraphConfig {
35
53
  parsedNodeTypes: INodeTypeDescription[];
@@ -43,6 +61,7 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
43
61
  private agent;
44
62
  private toolMap;
45
63
  private logger?;
64
+ private parsedNodeTypes;
46
65
  create(config: DiscoverySubgraphConfig): import("@langchain/langgraph").CompiledStateGraph<{
47
66
  userRequest: string;
48
67
  messages: BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[];
@@ -54,10 +73,19 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
54
73
  name: string;
55
74
  possibleValues: Array<string | boolean | number>;
56
75
  }>;
76
+ availableResources?: Array<{
77
+ value: string;
78
+ displayName: string;
79
+ operations: Array<{
80
+ value: string;
81
+ displayName: string;
82
+ }>;
83
+ }>;
57
84
  }[];
58
85
  bestPractices: string | undefined;
59
86
  templateIds: number[];
60
87
  cachedTemplates: WorkflowMetadata[];
88
+ resourceOperationCache: Record<string, ResourceOperationInfo | null>;
61
89
  }, {
62
90
  userRequest?: string | undefined;
63
91
  messages?: BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[] | undefined;
@@ -69,11 +97,20 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
69
97
  name: string;
70
98
  possibleValues: Array<string | boolean | number>;
71
99
  }>;
100
+ availableResources?: Array<{
101
+ value: string;
102
+ displayName: string;
103
+ operations: Array<{
104
+ value: string;
105
+ displayName: string;
106
+ }>;
107
+ }>;
72
108
  }[] | undefined;
73
109
  bestPractices?: string | undefined;
74
110
  templateIds?: number[] | undefined;
75
111
  cachedTemplates?: WorkflowMetadata[] | undefined;
76
- }, "agent" | "tools" | "__start__" | "format_output", {
112
+ resourceOperationCache?: Record<string, ResourceOperationInfo | null> | undefined;
113
+ }, "tools" | "__start__" | "agent" | "format_output", {
77
114
  userRequest: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
78
115
  messages: import("@langchain/langgraph").BinaryOperatorAggregate<BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[], BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[]>;
79
116
  nodesFound: import("@langchain/langgraph").BinaryOperatorAggregate<{
@@ -84,6 +121,14 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
84
121
  name: string;
85
122
  possibleValues: Array<string | boolean | number>;
86
123
  }>;
124
+ availableResources?: Array<{
125
+ value: string;
126
+ displayName: string;
127
+ operations: Array<{
128
+ value: string;
129
+ displayName: string;
130
+ }>;
131
+ }>;
87
132
  }[], {
88
133
  nodeName: string;
89
134
  version: number;
@@ -92,10 +137,19 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
92
137
  name: string;
93
138
  possibleValues: Array<string | boolean | number>;
94
139
  }>;
140
+ availableResources?: Array<{
141
+ value: string;
142
+ displayName: string;
143
+ operations: Array<{
144
+ value: string;
145
+ displayName: string;
146
+ }>;
147
+ }>;
95
148
  }[]>;
96
149
  bestPractices: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
97
150
  templateIds: import("@langchain/langgraph").BinaryOperatorAggregate<number[], number[]>;
98
151
  cachedTemplates: import("@langchain/langgraph").BinaryOperatorAggregate<WorkflowMetadata[], WorkflowMetadata[]>;
152
+ resourceOperationCache: import("@langchain/langgraph").BinaryOperatorAggregate<Record<string, ResourceOperationInfo | null>, Record<string, ResourceOperationInfo | null>>;
99
153
  }, {
100
154
  userRequest: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
101
155
  messages: import("@langchain/langgraph").BinaryOperatorAggregate<BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[], BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[]>;
@@ -107,6 +161,14 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
107
161
  name: string;
108
162
  possibleValues: Array<string | boolean | number>;
109
163
  }>;
164
+ availableResources?: Array<{
165
+ value: string;
166
+ displayName: string;
167
+ operations: Array<{
168
+ value: string;
169
+ displayName: string;
170
+ }>;
171
+ }>;
110
172
  }[], {
111
173
  nodeName: string;
112
174
  version: number;
@@ -115,10 +177,19 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
115
177
  name: string;
116
178
  possibleValues: Array<string | boolean | number>;
117
179
  }>;
180
+ availableResources?: Array<{
181
+ value: string;
182
+ displayName: string;
183
+ operations: Array<{
184
+ value: string;
185
+ displayName: string;
186
+ }>;
187
+ }>;
118
188
  }[]>;
119
189
  bestPractices: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
120
190
  templateIds: import("@langchain/langgraph").BinaryOperatorAggregate<number[], number[]>;
121
191
  cachedTemplates: import("@langchain/langgraph").BinaryOperatorAggregate<WorkflowMetadata[], WorkflowMetadata[]>;
192
+ resourceOperationCache: import("@langchain/langgraph").BinaryOperatorAggregate<Record<string, ResourceOperationInfo | null>, Record<string, ResourceOperationInfo | null>>;
122
193
  }, import("@langchain/langgraph").StateDefinition, {
123
194
  agent: {
124
195
  messages: AIMessage<import("@langchain/core/messages").MessageStructure>[];
@@ -128,6 +199,7 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
128
199
  workflowOperations?: import("..").WorkflowOperation[] | null;
129
200
  templateIds?: number[];
130
201
  cachedTemplates?: WorkflowMetadata[];
202
+ bestPractices?: string;
131
203
  };
132
204
  }, unknown, unknown>;
133
205
  private callAgent;
@@ -148,6 +220,14 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
148
220
  name: string;
149
221
  possibleValues: Array<string | boolean | number>;
150
222
  }>;
223
+ availableResources?: Array<{
224
+ value: string;
225
+ displayName: string;
226
+ operations: Array<{
227
+ value: string;
228
+ displayName: string;
229
+ }>;
230
+ }>;
151
231
  }[];
152
232
  bestPractices: string | undefined;
153
233
  };
@@ -8,8 +8,9 @@ const langgraph_1 = require("@langchain/langgraph");
8
8
  const zod_1 = require("zod");
9
9
  const errors_1 = require("../errors");
10
10
  const discovery_prompt_1 = require("../prompts/agents/discovery.prompt");
11
+ const resource_operation_extractor_1 = require("../utils/resource-operation-extractor");
11
12
  const subgraph_interface_1 = require("./subgraph-interface");
12
- const get_best_practices_tool_1 = require("../tools/get-best-practices.tool");
13
+ const get_documentation_tool_1 = require("../tools/get-documentation.tool");
13
14
  const get_workflow_examples_tool_1 = require("../tools/get-workflow-examples.tool");
14
15
  const node_details_tool_1 = require("../tools/node-details.tool");
15
16
  const node_search_tool_1 = require("../tools/node-search.tool");
@@ -63,6 +64,10 @@ exports.DiscoverySubgraphState = langgraph_1.Annotation.Root({
63
64
  reducer: state_reducers_1.cachedTemplatesReducer,
64
65
  default: () => [],
65
66
  }),
67
+ resourceOperationCache: (0, langgraph_1.Annotation)({
68
+ reducer: (x, y) => ({ ...x, ...y }),
69
+ default: () => ({}),
70
+ }),
66
71
  });
67
72
  class DiscoverySubgraph extends subgraph_interface_1.BaseSubgraph {
68
73
  name = 'discovery_subgraph';
@@ -70,11 +75,13 @@ class DiscoverySubgraph extends subgraph_interface_1.BaseSubgraph {
70
75
  agent;
71
76
  toolMap;
72
77
  logger;
78
+ parsedNodeTypes;
73
79
  create(config) {
74
80
  this.logger = config.logger;
81
+ this.parsedNodeTypes = config.parsedNodeTypes;
75
82
  const includeExamples = config.featureFlags?.templateExamples === true;
76
83
  const baseTools = [
77
- (0, get_best_practices_tool_1.createGetBestPracticesTool)(),
84
+ (0, get_documentation_tool_1.createGetDocumentationTool)(),
78
85
  (0, node_search_tool_1.createNodeSearchTool)(config.parsedNodeTypes),
79
86
  (0, node_details_tool_1.createNodeDetailsTool)(config.parsedNodeTypes, config.logger),
80
87
  ];
@@ -141,20 +148,72 @@ class DiscoverySubgraph extends subgraph_interface_1.BaseSubgraph {
141
148
  if (lastMessage && (0, messages_1.isAIMessage)(lastMessage) && lastMessage.tool_calls) {
142
149
  const submitCall = lastMessage.tool_calls.find((tc) => tc.name === 'submit_discovery_results');
143
150
  if (submitCall) {
144
- output = submitCall.args;
151
+ const parseResult = discoveryOutputSchema.safeParse(submitCall.args);
152
+ if (!parseResult.success) {
153
+ this.logger?.error('[Discovery] Invalid discovery output schema - returning empty results', {
154
+ errors: parseResult.error.errors,
155
+ lastMessageContent: typeof lastMessage?.content === 'string'
156
+ ? lastMessage.content.substring(0, 200)
157
+ : JSON.stringify(lastMessage?.content)?.substring(0, 200),
158
+ });
159
+ return {
160
+ nodesFound: [],
161
+ templateIds: [],
162
+ };
163
+ }
164
+ output = parseResult.data;
145
165
  }
146
166
  }
147
167
  if (!output) {
148
- this.logger?.error('[Discovery] No submit tool call found in last message');
168
+ this.logger?.error('[Discovery] No submit_discovery_results tool call found - agent may have stopped early', {
169
+ messageCount: state.messages.length,
170
+ lastMessageType: lastMessage?.getType(),
171
+ });
149
172
  return {
150
173
  nodesFound: [],
151
174
  templateIds: [],
152
175
  };
153
176
  }
154
- const bestPracticesTool = state.messages.find((m) => m.getType() === 'tool' && m?.text?.startsWith('<best_practices>'));
177
+ const nodeTypeMap = new Map();
178
+ for (const nt of this.parsedNodeTypes) {
179
+ const versions = Array.isArray(nt.version) ? nt.version : [nt.version];
180
+ for (const v of versions) {
181
+ nodeTypeMap.set(`${nt.name}:${v}`, nt);
182
+ }
183
+ }
184
+ const existingCache = state.resourceOperationCache ?? {};
185
+ const hydratedNodesFound = output.nodesFound.map((node) => {
186
+ const cacheKey = (0, resource_operation_extractor_1.createResourceCacheKey)(node.nodeName, node.version);
187
+ if (cacheKey in existingCache) {
188
+ const cached = existingCache[cacheKey];
189
+ if (cached) {
190
+ return {
191
+ ...node,
192
+ availableResources: cached.resources,
193
+ };
194
+ }
195
+ return node;
196
+ }
197
+ const nodeType = nodeTypeMap.get(cacheKey);
198
+ if (!nodeType) {
199
+ this.logger?.warn('[Discovery] Node type not found during resource hydration', {
200
+ nodeName: node.nodeName,
201
+ nodeVersion: node.version,
202
+ });
203
+ return node;
204
+ }
205
+ const resourceOpInfo = (0, resource_operation_extractor_1.extractResourceOperations)(nodeType, node.version, this.logger);
206
+ if (!resourceOpInfo) {
207
+ return node;
208
+ }
209
+ return {
210
+ ...node,
211
+ availableResources: resourceOpInfo.resources,
212
+ };
213
+ });
155
214
  return {
156
- nodesFound: output.nodesFound,
157
- bestPractices: bestPracticesTool?.text,
215
+ nodesFound: hydratedNodesFound,
216
+ bestPractices: state.bestPractices,
158
217
  templateIds: state.templateIds ?? [],
159
218
  };
160
219
  }
@@ -170,7 +229,7 @@ class DiscoverySubgraph extends subgraph_interface_1.BaseSubgraph {
170
229
  }
171
230
  return 'tools';
172
231
  }
173
- this.logger?.warn('[Discovery Subgraph] Agent stopped without submitting results');
232
+ this.logger?.warn('[Discovery] Agent stopped without calling submit_discovery_results - check if LLM is producing valid tool calls');
174
233
  return 'end';
175
234
  }
176
235
  transformInput(parentState) {
@@ -1 +1 @@
1
- {"version":3,"file":"discovery.subgraph.js","sourceRoot":"","sources":["../../src/subgraphs/discovery.subgraph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"discovery.subgraph.js","sourceRoot":"","sources":["../../src/subgraphs/discovery.subgraph.ts"],"names":[],"mappings":"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"}
@@ -5,22 +5,22 @@ export declare const nodeCreationSchema: z.ZodObject<{
5
5
  nodeType: z.ZodString;
6
6
  nodeVersion: z.ZodNumber;
7
7
  name: z.ZodString;
8
- connectionParametersReasoning: z.ZodString;
9
- connectionParameters: z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>;
8
+ initialParametersReasoning: z.ZodString;
9
+ initialParameters: z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>;
10
10
  }, "strip", z.ZodTypeAny, {
11
11
  nodeType: string;
12
12
  name: string;
13
13
  nodeVersion: number;
14
- connectionParametersReasoning: string;
15
- connectionParameters: {} & {
14
+ initialParametersReasoning: string;
15
+ initialParameters: {} & {
16
16
  [k: string]: unknown;
17
17
  };
18
18
  }, {
19
19
  nodeType: string;
20
20
  name: string;
21
21
  nodeVersion: number;
22
- connectionParametersReasoning: string;
23
- connectionParameters: {} & {
22
+ initialParametersReasoning: string;
23
+ initialParameters: {} & {
24
24
  [k: string]: unknown;
25
25
  };
26
26
  }>;
@@ -29,14 +29,14 @@ export declare const nodeCreationE2ESchema: z.ZodObject<{
29
29
  nodeType: z.ZodString;
30
30
  nodeVersion: z.ZodNumber;
31
31
  name: z.ZodString;
32
- connectionParametersReasoning: z.ZodString;
33
- connectionParameters: z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>;
32
+ initialParametersReasoning: z.ZodString;
33
+ initialParameters: z.ZodObject<{}, "passthrough", z.ZodTypeAny, z.objectOutputType<{}, z.ZodTypeAny, "passthrough">, z.objectInputType<{}, z.ZodTypeAny, "passthrough">>;
34
34
  }, "strip", z.ZodTypeAny, {
35
35
  nodeType: string;
36
36
  name: string;
37
37
  nodeVersion: number;
38
- connectionParametersReasoning: string;
39
- connectionParameters: {} & {
38
+ initialParametersReasoning: string;
39
+ initialParameters: {} & {
40
40
  [k: string]: unknown;
41
41
  };
42
42
  id?: string | undefined;
@@ -44,8 +44,8 @@ export declare const nodeCreationE2ESchema: z.ZodObject<{
44
44
  nodeType: string;
45
45
  name: string;
46
46
  nodeVersion: number;
47
- connectionParametersReasoning: string;
48
- connectionParameters: {} & {
47
+ initialParametersReasoning: string;
48
+ initialParameters: {} & {
49
49
  [k: string]: unknown;
50
50
  };
51
51
  id?: string | undefined;
@@ -19,13 +19,13 @@ const baseSchema = {
19
19
  name: zod_1.z
20
20
  .string()
21
21
  .describe('A descriptive name for the node that clearly indicates its purpose in the workflow'),
22
- connectionParametersReasoning: zod_1.z
22
+ initialParametersReasoning: zod_1.z
23
23
  .string()
24
- .describe('REQUIRED: Explain your reasoning about connection parameters. Consider: Does this node have dynamic inputs/outputs? Does it need mode/operation parameters? For example: "Vector Store has dynamic inputs based on mode, so I need to set mode:insert for document input" or "HTTP Request has static inputs, so no special parameters needed"'),
25
- connectionParameters: zod_1.z
24
+ .describe('REQUIRED: Explain your reasoning about initial parameters. Consider: Does this node have dynamic inputs/outputs? Does it need mode/operation/resource parameters? For example: "Vector Store has dynamic inputs based on mode, so I need to set mode:insert for document input" or "Gmail needs resource:message and operation:send to send emails"'),
25
+ initialParameters: zod_1.z
26
26
  .object({})
27
27
  .passthrough()
28
- .describe('Parameters that affect node connections (e.g., mode: "insert" for Vector Store). Pass an empty object {} if no connection parameters are needed. Only connection-affecting parameters like mode, operation, resource, action, etc. are allowed.'),
28
+ .describe('Initial parameters to set on the node. This includes: (1) connection-affecting parameters like mode, hasOutputParser, textSplittingMode; (2) resource/operation for nodes with multiple resources (Gmail, Notion, Google Sheets, etc.). Pass an empty object {} if no initial parameters are needed.'),
29
29
  };
30
30
  exports.nodeCreationSchema = zod_1.z.object(baseSchema);
31
31
  exports.nodeCreationE2ESchema = zod_1.z.object({
@@ -35,11 +35,11 @@ exports.nodeCreationE2ESchema = zod_1.z.object({
35
35
  .optional()
36
36
  .describe('Optional: A specific ID to use for this node. If not provided, a unique ID will be generated automatically. This is primarily used for testing purposes to ensure deterministic node IDs.'),
37
37
  });
38
- function createNode(nodeType, typeVersion, customName, existingNodes, nodeTypes, connectionParameters, id) {
38
+ function createNode(nodeType, typeVersion, customName, existingNodes, nodeTypes, initialParameters, id) {
39
39
  const baseName = customName ?? nodeType.defaults?.name ?? nodeType.displayName;
40
40
  const uniqueName = (0, node_creation_utils_1.generateUniqueName)(baseName, existingNodes);
41
41
  const position = (0, node_positioning_utils_1.calculateNodePosition)(existingNodes, (0, node_helpers_1.isSubNode)(nodeType), nodeTypes);
42
- return (0, node_creation_utils_1.createNodeInstance)(nodeType, typeVersion, uniqueName, position, connectionParameters, id);
42
+ return (0, node_creation_utils_1.createNodeInstance)(nodeType, typeVersion, uniqueName, position, initialParameters, id);
43
43
  }
44
44
  function buildResponseMessage(addedNode, nodeTypes) {
45
45
  const nodeType = nodeTypes.find((nt) => nt.name === addedNode.type);
@@ -77,11 +77,11 @@ function createAddNodeTool(nodeTypes) {
77
77
  else {
78
78
  validatedInput = exports.nodeCreationSchema.parse(input);
79
79
  }
80
- const { nodeType, nodeVersion, name, connectionParametersReasoning, connectionParameters } = validatedInput;
80
+ const { nodeType, nodeVersion, name, initialParametersReasoning, initialParameters } = validatedInput;
81
81
  reporter.start(validatedInput);
82
82
  const state = (0, state_1.getWorkflowState)();
83
83
  const workflow = (0, state_1.getCurrentWorkflow)(state);
84
- reporter.progress(`Adding ${name} (${connectionParametersReasoning})`);
84
+ reporter.progress(`Adding ${name} (${initialParametersReasoning})`);
85
85
  const nodeTypeDesc = (0, validation_1.findNodeType)(nodeType, nodeVersion, nodeTypes);
86
86
  if (!nodeTypeDesc) {
87
87
  const nodeError = new errors_1.NodeTypeNotFoundError(nodeType);
@@ -93,7 +93,7 @@ function createAddNodeTool(nodeTypes) {
93
93
  reporter.error(error);
94
94
  return (0, response_1.createErrorResponse)(config, error);
95
95
  }
96
- const newNode = createNode(nodeTypeDesc, nodeVersion, name, workflow.nodes, nodeTypes, connectionParameters, id);
96
+ const newNode = createNode(nodeTypeDesc, nodeVersion, name, workflow.nodes, nodeTypes, initialParameters, id);
97
97
  const addedNodeInfo = {
98
98
  id: newNode.id,
99
99
  name: newNode.name,
@@ -112,24 +112,17 @@ function createAddNodeTool(nodeTypes) {
112
112
  return (0, response_1.createSuccessResponse)(config, message, stateUpdates);
113
113
  }
114
114
  catch (error) {
115
- let toolError;
116
115
  if (error instanceof zod_1.z.ZodError) {
117
116
  const validationError = new errors_1.ValidationError('Invalid input parameters', {
118
- field: error.errors[0]?.path.join('.'),
119
- value: error.errors[0]?.message,
117
+ extra: { errors: error.errors },
120
118
  });
121
- toolError = {
122
- message: validationError.message,
123
- code: 'VALIDATION_ERROR',
124
- details: error.errors,
125
- };
126
- }
127
- else {
128
- toolError = {
129
- message: error instanceof Error ? error.message : 'Unknown error occurred',
130
- code: 'EXECUTION_ERROR',
131
- };
119
+ reporter.error(validationError);
120
+ return (0, response_1.createErrorResponse)(config, validationError);
132
121
  }
122
+ const toolError = new errors_1.ToolExecutionError(error instanceof Error ? error.message : 'Unknown error occurred', {
123
+ toolName: builderToolBase.toolName,
124
+ cause: error instanceof Error ? error : undefined,
125
+ });
133
126
  reporter.error(toolError);
134
127
  return (0, response_1.createErrorResponse)(config, toolError);
135
128
  }
@@ -140,19 +133,19 @@ function createAddNodeTool(nodeTypes) {
140
133
  To add multiple nodes, call this tool multiple times in parallel.
141
134
 
142
135
  CRITICAL: You MUST provide:
143
- 1. connectionParametersReasoning - Explain why you're choosing specific connection parameters or using {}
144
- 2. connectionParameters - The actual parameters (use {} for nodes without special needs)
136
+ 1. initialParametersReasoning - Explain why you're choosing specific initial parameters or using {}
137
+ 2. initialParameters - The actual parameters (use {} for nodes without special needs)
145
138
 
146
- IMPORTANT: DO NOT rely on default values! Always explicitly set connection-affecting parameters when they exist.
139
+ IMPORTANT: DO NOT rely on default values! Always explicitly set parameters that affect connections or define the node's behavior.
147
140
 
148
141
  REASONING EXAMPLES:
149
142
  - "Vector Store has dynamic inputs that change based on mode parameter, setting mode:insert to accept document inputs"
150
- - "HTTP Request has static inputs/outputs, no connection parameters needed"
151
- - "Document Loader needs textSplittingMode:custom to accept text splitter connections"
143
+ - "HTTP Request has static inputs/outputs, no initial parameters needed"
144
+ - "Gmail needs resource:message and operation:send to send emails"
152
145
  - "AI Agent has dynamic inputs, setting hasOutputParser:true to enable output parser connections"
153
146
  - "Set node has standard main connections only, using empty parameters"
154
147
 
155
- CONNECTION PARAMETERS (NEVER rely on defaults - always set explicitly):
148
+ INITIAL PARAMETERS (set explicitly when needed):
156
149
  - AI Agent (@n8n/n8n-nodes-langchain.agent):
157
150
  - For output parser support: { hasOutputParser: true }
158
151
  - Without output parser: { hasOutputParser: false }
@@ -163,9 +156,11 @@ CONNECTION PARAMETERS (NEVER rely on defaults - always set explicitly):
163
156
  - Document Loader (@n8n/n8n-nodes-langchain.documentDefaultDataLoader):
164
157
  - For text splitter input: { textSplittingMode: "custom" }
165
158
  - For built-in splitting: { textSplittingMode: "simple" }
159
+ - Nodes with resource/operation (Gmail, Notion, Google Sheets, etc.):
160
+ - Set resource AND operation based on user intent (e.g., { resource: "message", operation: "send" })
166
161
  - Regular nodes (HTTP Request, Set, Code, etc.): {}
167
162
 
168
- Think through the connectionParametersReasoning FIRST, then set connectionParameters based on your reasoning. If a parameter affects connections, SET IT EXPLICITLY.`,
163
+ Think through the initialParametersReasoning FIRST, then set initialParameters based on your reasoning.`,
169
164
  schema: exports.nodeCreationSchema,
170
165
  });
171
166
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"add-node.tool.js","sourceRoot":"","sources":["../../src/tools/add-node.tool.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add-node.tool.js","sourceRoot":"","sources":["../../src/tools/add-node.tool.ts"],"names":[],"mappings":"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"}
@@ -161,6 +161,11 @@ Best for: Enrichment, validation, conditional logic based on stored data
161
161
  - **Validate before storing:** Ensure data quality before persistence
162
162
  - **Avoid duplicates:** Use unique identifiers or upsert operations when appropriate
163
163
 
164
+ ## Referencing Documents, Sheets, or Tables
165
+
166
+ When configuring storage nodes, use ResourceLocator mode "list". This will allow users to select from existing documents, sheets, or tables rather than passing IDs dynamically.
167
+ Use modes "id", "url" or "name" only when user specifically mentions it in their prompt.
168
+
164
169
  ## Important Distinctions
165
170
 
166
171
  ### Storage vs. Transformation
@@ -1 +1 @@
1
- {"version":3,"file":"data-persistence.js","sourceRoot":"","sources":["../../../src/tools/best-practices/data-persistence.ts"],"names":[],"mappings":";;;AACA,2DAA2D;AAE3D,MAAa,4BAA4B;IAC/B,SAAS,GAAG,kCAAiB,CAAC,gBAAgB,CAAC;IAC/C,OAAO,GAAG,OAAO,CAAC;IAEV,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkLjC,CAAC;IAED,gBAAgB;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;CACD;AA3LD,oEA2LC"}
1
+ {"version":3,"file":"data-persistence.js","sourceRoot":"","sources":["../../../src/tools/best-practices/data-persistence.ts"],"names":[],"mappings":";;;AACA,2DAA2D;AAE3D,MAAa,4BAA4B;IAC/B,SAAS,GAAG,kCAAiB,CAAC,gBAAgB,CAAC;IAC/C,OAAO,GAAG,OAAO,CAAC;IAEV,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuLjC,CAAC;IAED,gBAAgB;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;CACD;AAhMD,oEAgMC"}
@@ -10,6 +10,7 @@ const data_transformation_1 = require("./data-transformation");
10
10
  const document_processing_1 = require("./document-processing");
11
11
  const form_input_1 = require("./form-input");
12
12
  const notification_1 = require("./notification");
13
+ const scheduling_1 = require("./scheduling");
13
14
  const scraping_and_research_1 = require("./scraping-and-research");
14
15
  const triage_1 = require("./triage");
15
16
  exports.documentation = {
@@ -28,6 +29,6 @@ exports.documentation = {
28
29
  [categorization_1.WorkflowTechnique.TRIAGE]: new triage_1.TriageBestPractices(),
29
30
  [categorization_1.WorkflowTechnique.HUMAN_IN_THE_LOOP]: undefined,
30
31
  [categorization_1.WorkflowTechnique.MONITORING]: undefined,
31
- [categorization_1.WorkflowTechnique.SCHEDULING]: undefined,
32
+ [categorization_1.WorkflowTechnique.SCHEDULING]: new scheduling_1.SchedulingBestPractices(),
32
33
  };
33
34
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/best-practices/index.ts"],"names":[],"mappings":";;;AACA,2DAAuF;AAEvF,uCAAiD;AACjD,6DAAsE;AAEtE,uDAAgE;AAChE,yDAAkE;AAClE,+DAAwE;AACxE,+DAAwE;AAExE,6CAAsD;AAItD,iDAA2D;AAC3D,mEAA2E;AAE3E,qCAA+C;AAElC,QAAA,aAAa,GAAqE;IAC9F,CAAC,kCAAiB,CAAC,qBAAqB,CAAC,EAAE,IAAI,wDAAgC,EAAE;IACjF,CAAC,kCAAiB,CAAC,OAAO,CAAC,EAAE,IAAI,8BAAoB,EAAE;IACvD,CAAC,kCAAiB,CAAC,kBAAkB,CAAC,EAAE,IAAI,mDAA8B,EAAE;IAC5E,CAAC,kCAAiB,CAAC,aAAa,CAAC,EAAE,SAAS;IAC5C,CAAC,kCAAiB,CAAC,eAAe,CAAC,EAAE,IAAI,6CAA2B,EAAE;IACtE,CAAC,kCAAiB,CAAC,gBAAgB,CAAC,EAAE,IAAI,+CAA4B,EAAE;IACxE,CAAC,kCAAiB,CAAC,mBAAmB,CAAC,EAAE,IAAI,qDAA+B,EAAE;IAC9E,CAAC,kCAAiB,CAAC,mBAAmB,CAAC,EAAE,IAAI,qDAA+B,EAAE;IAC9E,CAAC,kCAAiB,CAAC,UAAU,CAAC,EAAE,SAAS;IACzC,CAAC,kCAAiB,CAAC,UAAU,CAAC,EAAE,IAAI,mCAAsB,EAAE;IAC5D,CAAC,kCAAiB,CAAC,cAAc,CAAC,EAAE,SAAS;IAC7C,CAAC,kCAAiB,CAAC,YAAY,CAAC,EAAE,IAAI,wCAAyB,EAAE;IACjE,CAAC,kCAAiB,CAAC,MAAM,CAAC,EAAE,IAAI,4BAAmB,EAAE;IACrD,CAAC,kCAAiB,CAAC,iBAAiB,CAAC,EAAE,SAAS;IAChD,CAAC,kCAAiB,CAAC,UAAU,CAAC,EAAE,SAAS;IACzC,CAAC,kCAAiB,CAAC,UAAU,CAAC,EAAE,SAAS;CACzC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tools/best-practices/index.ts"],"names":[],"mappings":";;;AACA,2DAAuF;AAEvF,uCAAiD;AACjD,6DAAsE;AAEtE,uDAAgE;AAChE,yDAAkE;AAClE,+DAAwE;AACxE,+DAAwE;AAExE,6CAAsD;AAItD,iDAA2D;AAC3D,6CAAuD;AACvD,mEAA2E;AAC3E,qCAA+C;AAElC,QAAA,aAAa,GAAqE;IAC9F,CAAC,kCAAiB,CAAC,qBAAqB,CAAC,EAAE,IAAI,wDAAgC,EAAE;IACjF,CAAC,kCAAiB,CAAC,OAAO,CAAC,EAAE,IAAI,8BAAoB,EAAE;IACvD,CAAC,kCAAiB,CAAC,kBAAkB,CAAC,EAAE,IAAI,mDAA8B,EAAE;IAC5E,CAAC,kCAAiB,CAAC,aAAa,CAAC,EAAE,SAAS;IAC5C,CAAC,kCAAiB,CAAC,eAAe,CAAC,EAAE,IAAI,6CAA2B,EAAE;IACtE,CAAC,kCAAiB,CAAC,gBAAgB,CAAC,EAAE,IAAI,+CAA4B,EAAE;IACxE,CAAC,kCAAiB,CAAC,mBAAmB,CAAC,EAAE,IAAI,qDAA+B,EAAE;IAC9E,CAAC,kCAAiB,CAAC,mBAAmB,CAAC,EAAE,IAAI,qDAA+B,EAAE;IAC9E,CAAC,kCAAiB,CAAC,UAAU,CAAC,EAAE,SAAS;IACzC,CAAC,kCAAiB,CAAC,UAAU,CAAC,EAAE,IAAI,mCAAsB,EAAE;IAC5D,CAAC,kCAAiB,CAAC,cAAc,CAAC,EAAE,SAAS;IAC7C,CAAC,kCAAiB,CAAC,YAAY,CAAC,EAAE,IAAI,wCAAyB,EAAE;IACjE,CAAC,kCAAiB,CAAC,MAAM,CAAC,EAAE,IAAI,4BAAmB,EAAE;IACrD,CAAC,kCAAiB,CAAC,iBAAiB,CAAC,EAAE,SAAS;IAChD,CAAC,kCAAiB,CAAC,UAAU,CAAC,EAAE,SAAS;IACzC,CAAC,kCAAiB,CAAC,UAAU,CAAC,EAAE,IAAI,oCAAuB,EAAE;CAC7D,CAAC"}