@n8n/ai-workflow-builder 1.0.0 → 1.0.2-exp.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 (73) hide show
  1. package/dist/agents/responder.agent.d.ts +1 -0
  2. package/dist/agents/responder.agent.js +7 -0
  3. package/dist/agents/responder.agent.js.map +1 -1
  4. package/dist/agents/supervisor.agent.d.ts +1 -0
  5. package/dist/agents/supervisor.agent.js +5 -0
  6. package/dist/agents/supervisor.agent.js.map +1 -1
  7. package/dist/ai-workflow-builder-agent.service.d.ts +2 -1
  8. package/dist/ai-workflow-builder-agent.service.js +10 -5
  9. package/dist/ai-workflow-builder-agent.service.js.map +1 -1
  10. package/dist/build.tsbuildinfo +1 -1
  11. package/dist/chains/prompts/examples/basic/switch-node-examples.d.ts +1 -0
  12. package/dist/chains/prompts/examples/basic/switch-node-examples.js +128 -0
  13. package/dist/chains/prompts/examples/basic/switch-node-examples.js.map +1 -0
  14. package/dist/chains/prompts/node-types/switch-node.d.ts +1 -0
  15. package/dist/chains/prompts/node-types/switch-node.js +72 -0
  16. package/dist/chains/prompts/node-types/switch-node.js.map +1 -0
  17. package/dist/chains/prompts/prompt-builder.d.ts +1 -0
  18. package/dist/chains/prompts/prompt-builder.js +12 -0
  19. package/dist/chains/prompts/prompt-builder.js.map +1 -1
  20. package/dist/chains/prompts/prompt-config.js +1 -0
  21. package/dist/chains/prompts/prompt-config.js.map +1 -1
  22. package/dist/constants.d.ts +2 -0
  23. package/dist/constants.js +3 -1
  24. package/dist/constants.js.map +1 -1
  25. package/dist/multi-agent-workflow-subgraphs.d.ts +38 -1
  26. package/dist/multi-agent-workflow-subgraphs.js +34 -2
  27. package/dist/multi-agent-workflow-subgraphs.js.map +1 -1
  28. package/dist/parent-graph-state.d.ts +4 -0
  29. package/dist/parent-graph-state.js +14 -1
  30. package/dist/parent-graph-state.js.map +1 -1
  31. package/dist/subgraphs/builder.subgraph.d.ts +2 -0
  32. package/dist/subgraphs/builder.subgraph.js +63 -1
  33. package/dist/subgraphs/builder.subgraph.js.map +1 -1
  34. package/dist/subgraphs/configurator.subgraph.d.ts +2 -0
  35. package/dist/subgraphs/configurator.subgraph.js +30 -0
  36. package/dist/subgraphs/configurator.subgraph.js.map +1 -1
  37. package/dist/subgraphs/discovery.subgraph.d.ts +18 -0
  38. package/dist/subgraphs/discovery.subgraph.js +88 -16
  39. package/dist/subgraphs/discovery.subgraph.js.map +1 -1
  40. package/dist/tools/best-practices/content-generation.js +38 -2
  41. package/dist/tools/best-practices/content-generation.js.map +1 -1
  42. package/dist/types/config.d.ts +1 -0
  43. package/dist/types/coordination.d.ts +8 -2
  44. package/dist/types/coordination.js +4 -0
  45. package/dist/types/coordination.js.map +1 -1
  46. package/dist/types/discovery-types.d.ts +2 -0
  47. package/dist/utils/coordination-log.d.ts +2 -1
  48. package/dist/utils/coordination-log.js.map +1 -1
  49. package/dist/utils/state-modifier.d.ts +32 -0
  50. package/dist/utils/state-modifier.js +112 -0
  51. package/dist/utils/state-modifier.js.map +1 -0
  52. package/dist/utils/state-reducers.d.ts +4 -0
  53. package/dist/utils/state-reducers.js +25 -0
  54. package/dist/utils/state-reducers.js.map +1 -0
  55. package/dist/utils/stream-processor.js +2 -30
  56. package/dist/utils/stream-processor.js.map +1 -1
  57. package/dist/utils/subgraph-helpers.d.ts +3 -0
  58. package/dist/utils/subgraph-helpers.js +23 -0
  59. package/dist/utils/subgraph-helpers.js.map +1 -1
  60. package/dist/validation/checks/connections.js +9 -16
  61. package/dist/validation/checks/connections.js.map +1 -1
  62. package/dist/validation/checks/tools.js +0 -10
  63. package/dist/validation/checks/tools.js.map +1 -1
  64. package/dist/validation/types.js.map +1 -1
  65. package/dist/validation/utils/node-type-map.d.ts +8 -0
  66. package/dist/validation/utils/node-type-map.js +50 -0
  67. package/dist/validation/utils/node-type-map.js.map +1 -0
  68. package/dist/workflow-builder-agent.d.ts +3 -2
  69. package/dist/workflow-builder-agent.js +12 -7
  70. package/dist/workflow-builder-agent.js.map +1 -1
  71. package/dist/workflow-state.js +3 -14
  72. package/dist/workflow-state.js.map +1 -1
  73. package/package.json +5 -5
@@ -33,6 +33,7 @@ STEP 3: VALIDATE (REQUIRED)
33
33
  - After ALL nodes and connections are created, call validate_structure
34
34
  - This step is MANDATORY - you cannot finish without it
35
35
  - If validation finds issues (missing trigger, invalid connections), fix them and validate again
36
+ - MAXIMUM 3 VALIDATION ATTEMPTS: After 3 calls to validate_structure, proceed to respond regardless of remaining issues
36
37
 
37
38
  STEP 4: RESPOND TO USER
38
39
  - Only after validation passes, provide your brief summary
@@ -61,6 +62,12 @@ Placement rules:
61
62
  For AI-generated structured data, prefer Structured Output Parser nodes over Code nodes.
62
63
  For binary file data, use Extract From File node to extract content from files before processing.
63
64
  Use Code nodes only for custom business logic beyond parsing.
65
+
66
+ STRUCTURED OUTPUT PARSER RULE:
67
+ When Discovery results include Structured Output Parser:
68
+ 1. Create the Structured Output Parser node
69
+ 2. Set AI Agent's hasOutputParser: true in connectionParameters
70
+ 3. Connect: Structured Output Parser → AI Agent (ai_outputParser connection)
64
71
  </data_parsing_strategy>
65
72
 
66
73
  <proactive_design>
@@ -86,9 +93,19 @@ ALWAYS check node details and set connectionParameters explicitly.
86
93
 
87
94
  CONNECTION PARAMETERS EXAMPLES:
88
95
  - Static nodes (HTTP Request, Set, Code): reasoning="Static inputs/outputs", parameters={{}}
89
- - AI Agent with parser: reasoning="hasOutputParser creates additional input", parameters={{ hasOutputParser: true }}
96
+ - AI Agent with structured output: reasoning="hasOutputParser enables ai_outputParser input for Structured Output Parser", parameters={{ hasOutputParser: true }}
90
97
  - Vector Store insert: reasoning="Insert mode requires document input", parameters={{ mode: "insert" }}
91
98
  - Document Loader custom: reasoning="Custom mode enables text splitter input", parameters={{ textSplittingMode: "custom" }}
99
+ - Switch with routing rules: reasoning="Switch needs N outputs, creating N rules.values entries with outputKeys", parameters={{ mode: "rules", rules: {{ values: [...] }} }} - see <switch_node_pattern> for full structure
100
+
101
+ <structured_output_parser_guidance>
102
+ WHEN TO SET hasOutputParser: true on AI Agent:
103
+ - Discovery found Structured Output Parser node → MUST set hasOutputParser: true
104
+ - AI output will be used in conditions (IF/Switch nodes checking $json.field)
105
+ - AI output will be formatted/displayed (HTML emails, reports with specific sections)
106
+ - AI output will be stored in database/data tables with specific fields
107
+ - AI is classifying, scoring, or extracting specific data fields
108
+ </structured_output_parser_guidance>
92
109
 
93
110
  <node_connections_understanding>
94
111
  n8n connections flow from SOURCE (output) to TARGET (input).
@@ -136,6 +153,51 @@ Common mistake to avoid:
136
153
  - Document Loader is an AI sub-node that gives Vector Store document processing capability
137
154
  </rag_workflow_pattern>
138
155
 
156
+ <switch_node_pattern>
157
+ For Switch nodes with multiple routing paths:
158
+ - The number of outputs is determined by the number of entries in rules.values[]
159
+ - You MUST create the rules.values[] array with placeholder entries for each output branch
160
+ - Each entry needs: conditions structure (with empty leftValue/rightValue) + renameOutput: true + descriptive outputKey
161
+ - Configurator will fill in the actual condition values later
162
+ - Use descriptive node names like "Route by Amount" or "Route by Status"
163
+
164
+ Example connectionParameters for 3-way routing:
165
+ {{
166
+ "mode": "rules",
167
+ "rules": {{
168
+ "values": [
169
+ {{
170
+ "conditions": {{
171
+ "options": {{ "caseSensitive": true, "leftValue": "", "typeValidation": "strict" }},
172
+ "conditions": [{{ "leftValue": "", "rightValue": "", "operator": {{ "type": "string", "operation": "equals" }} }}],
173
+ "combinator": "and"
174
+ }},
175
+ "renameOutput": true,
176
+ "outputKey": "Output 1 Name"
177
+ }},
178
+ {{
179
+ "conditions": {{
180
+ "options": {{ "caseSensitive": true, "leftValue": "", "typeValidation": "strict" }},
181
+ "conditions": [{{ "leftValue": "", "rightValue": "", "operator": {{ "type": "string", "operation": "equals" }} }}],
182
+ "combinator": "and"
183
+ }},
184
+ "renameOutput": true,
185
+ "outputKey": "Output 2 Name"
186
+ }},
187
+ {{
188
+ "conditions": {{
189
+ "options": {{ "caseSensitive": true, "leftValue": "", "typeValidation": "strict" }},
190
+ "conditions": [{{ "leftValue": "", "rightValue": "", "operator": {{ "type": "string", "operation": "equals" }} }}],
191
+ "combinator": "and"
192
+ }},
193
+ "renameOutput": true,
194
+ "outputKey": "Output 3 Name"
195
+ }}
196
+ ]
197
+ }}
198
+ }}
199
+ </switch_node_pattern>
200
+
139
201
  <connection_type_examples>
140
202
  **Main Connections** (regular data flow):
141
203
  - Trigger → HTTP Request → Set → Email
@@ -1 +1 @@
1
- {"version":3,"file":"builder.subgraph.js","sourceRoot":"","sources":["../../src/subgraphs/builder.subgraph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"builder.subgraph.js","sourceRoot":"","sources":["../../src/subgraphs/builder.subgraph.ts"],"names":[],"mappings":"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"}
@@ -107,6 +107,8 @@ export declare class ConfiguratorSubgraph extends BaseSubgraph<ConfiguratorSubgr
107
107
  tools: {
108
108
  messages?: BaseMessage[];
109
109
  workflowOperations?: WorkflowOperation[] | null;
110
+ templateIds?: number[];
111
+ nodeConfigurations?: import("..").NodeConfigurationsMap;
110
112
  };
111
113
  }, unknown, unknown>;
112
114
  transformInput(parentState: typeof ParentGraphState.State): {
@@ -28,6 +28,7 @@ STEP 2: VALIDATE (REQUIRED)
28
28
  - After ALL configurations complete, call validate_configuration
29
29
  - This step is MANDATORY - you cannot finish without it
30
30
  - If validation finds issues, fix them and validate again
31
+ - MAXIMUM 3 VALIDATION ATTEMPTS: After 3 calls to validate_configuration, proceed to respond regardless of remaining issues
31
32
 
32
33
  STEP 3: RESPOND TO USER
33
34
  - Only after validation passes, provide your response
@@ -63,6 +64,7 @@ CRITICAL PARAMETERS TO ALWAYS SET:
63
64
  - Set node: Fields to set with values
64
65
  - Code node: The actual code to execute
65
66
  - IF node: Conditions to check
67
+ - Switch node: Configure rules.values[] with conditions for each output branch (uses same filter structure as IF node)
66
68
  - Document Loader: dataType parameter ('binary' for files like PDF, 'json' for JSON data)
67
69
  - AI nodes: Prompts, models, configurations
68
70
  - Tool nodes: Use $fromAI for dynamic recipient/subject/message fields
@@ -73,6 +75,34 @@ Defaults are traps that cause runtime failures. Examples:
73
75
  - HTTP Request defaults to GET but APIs often need POST
74
76
  - Vector Store mode affects available connections - set explicitly (retrieve-as-tool when using with AI Agent)
75
77
 
78
+ <switch_node_configuration>
79
+ Switch nodes require configuring rules.values[] array - each entry creates one output:
80
+
81
+ Structure per rule:
82
+ {{
83
+ "conditions": {{
84
+ "options": {{ "caseSensitive": true, "leftValue": "", "typeValidation": "strict" }},
85
+ "conditions": [
86
+ {{
87
+ "leftValue": "={{{{ $json.fieldName }}}}",
88
+ "rightValue": <value>,
89
+ "operator": {{ "type": "number|string", "operation": "lt|gt|equals|etc" }}
90
+ }}
91
+ ],
92
+ "combinator": "and"
93
+ }},
94
+ "renameOutput": true,
95
+ "outputKey": "Descriptive Label"
96
+ }}
97
+
98
+ For numeric ranges (e.g., $100-$1000):
99
+ - Use TWO conditions with combinator: "and"
100
+ - First: gte (greater than or equal)
101
+ - Second: lte (less than or equal)
102
+
103
+ Always set renameOutput: true and provide descriptive outputKey labels.
104
+ </switch_node_configuration>
105
+
76
106
  <response_format>
77
107
  After validation passes, provide a concise summary:
78
108
  - List any placeholders requiring user configuration (e.g., "URL placeholder needs actual endpoint")
@@ -1 +1 @@
1
- {"version":3,"file":"configurator.subgraph.js","sourceRoot":"","sources":["../../src/subgraphs/configurator.subgraph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"configurator.subgraph.js","sourceRoot":"","sources":["../../src/subgraphs/configurator.subgraph.ts"],"names":[],"mappings":"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"}
@@ -2,9 +2,11 @@ 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 { BuilderFeatureFlags } from '../workflow-builder-agent';
5
6
  import { BaseSubgraph } from './subgraph-interface';
6
7
  import type { ParentGraphState } from '../parent-graph-state';
7
8
  import type { CoordinationLogEntry } from '../types/coordination';
9
+ import type { NodeConfigurationsMap } from '../types/tools';
8
10
  export declare const DiscoverySubgraphState: import("@langchain/langgraph").AnnotationRoot<{
9
11
  userRequest: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
10
12
  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>[]>;
@@ -26,11 +28,14 @@ export declare const DiscoverySubgraphState: import("@langchain/langgraph").Anno
26
28
  }>;
27
29
  }[]>;
28
30
  bestPractices: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
31
+ templateIds: import("@langchain/langgraph").BinaryOperatorAggregate<number[], number[]>;
32
+ nodeConfigurations: import("@langchain/langgraph").BinaryOperatorAggregate<NodeConfigurationsMap, NodeConfigurationsMap>;
29
33
  }>;
30
34
  export interface DiscoverySubgraphConfig {
31
35
  parsedNodeTypes: INodeTypeDescription[];
32
36
  llm: BaseChatModel;
33
37
  logger?: Logger;
38
+ featureFlags?: BuilderFeatureFlags;
34
39
  }
35
40
  export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphConfig, typeof DiscoverySubgraphState.State, typeof ParentGraphState.State> {
36
41
  name: string;
@@ -51,6 +56,8 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
51
56
  }>;
52
57
  }[];
53
58
  bestPractices: string | undefined;
59
+ templateIds: number[];
60
+ nodeConfigurations: NodeConfigurationsMap;
54
61
  }, {
55
62
  userRequest?: string | undefined;
56
63
  messages?: BaseMessage<import("@langchain/core/messages").MessageStructure, import("@langchain/core/messages").MessageType>[] | undefined;
@@ -64,6 +71,8 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
64
71
  }>;
65
72
  }[] | undefined;
66
73
  bestPractices?: string | undefined;
74
+ templateIds?: number[] | undefined;
75
+ nodeConfigurations?: NodeConfigurationsMap | undefined;
67
76
  }, "agent" | "tools" | "__start__" | "format_output", {
68
77
  userRequest: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
69
78
  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>[]>;
@@ -85,6 +94,8 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
85
94
  }>;
86
95
  }[]>;
87
96
  bestPractices: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
97
+ templateIds: import("@langchain/langgraph").BinaryOperatorAggregate<number[], number[]>;
98
+ nodeConfigurations: import("@langchain/langgraph").BinaryOperatorAggregate<NodeConfigurationsMap, NodeConfigurationsMap>;
88
99
  }, {
89
100
  userRequest: import("@langchain/langgraph").BinaryOperatorAggregate<string, string>;
90
101
  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>[]>;
@@ -106,6 +117,8 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
106
117
  }>;
107
118
  }[]>;
108
119
  bestPractices: import("@langchain/langgraph").BinaryOperatorAggregate<string | undefined, string | undefined>;
120
+ templateIds: import("@langchain/langgraph").BinaryOperatorAggregate<number[], number[]>;
121
+ nodeConfigurations: import("@langchain/langgraph").BinaryOperatorAggregate<NodeConfigurationsMap, NodeConfigurationsMap>;
109
122
  }, import("@langchain/langgraph").StateDefinition, {
110
123
  agent: {
111
124
  messages: AIMessage<import("@langchain/core/messages").MessageStructure>[];
@@ -113,6 +126,8 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
113
126
  tools: {
114
127
  messages?: BaseMessage[];
115
128
  workflowOperations?: import("..").WorkflowOperation[] | null;
129
+ templateIds?: number[];
130
+ nodeConfigurations?: NodeConfigurationsMap;
116
131
  };
117
132
  }, unknown, unknown>;
118
133
  private callAgent;
@@ -134,7 +149,10 @@ export declare class DiscoverySubgraph extends BaseSubgraph<DiscoverySubgraphCon
134
149
  }>;
135
150
  }[];
136
151
  bestPractices: string | undefined;
152
+ nodeConfigurations: NodeConfigurationsMap;
137
153
  };
138
154
  coordinationLog: CoordinationLogEntry[];
155
+ templateIds: number[];
156
+ nodeConfigurations: NodeConfigurationsMap;
139
157
  };
140
158
  }
@@ -10,11 +10,13 @@ const errors_1 = require("../errors");
10
10
  const categorization_1 = require("../types/categorization");
11
11
  const subgraph_interface_1 = require("./subgraph-interface");
12
12
  const get_best_practices_tool_1 = require("../tools/get-best-practices.tool");
13
+ const get_workflow_examples_tool_1 = require("../tools/get-workflow-examples.tool");
13
14
  const node_details_tool_1 = require("../tools/node-details.tool");
14
15
  const node_search_tool_1 = require("../tools/node-search.tool");
15
16
  const coordination_1 = require("../types/coordination");
16
17
  const cache_control_1 = require("../utils/cache-control");
17
18
  const context_builders_1 = require("../utils/context-builders");
19
+ const state_reducers_1 = require("../utils/state-reducers");
18
20
  const subgraph_helpers_1 = require("../utils/subgraph-helpers");
19
21
  const exampleCategorizations = [
20
22
  {
@@ -147,26 +149,47 @@ const discoveryOutputSchema = zod_1.z.object({
147
149
  }))
148
150
  .describe('List of n8n nodes identified as necessary for the workflow'),
149
151
  });
150
- const DISCOVERY_PROMPT = `You are a Discovery Agent for n8n AI Workflow Builder.
152
+ function generateProcessSteps(options) {
153
+ const { includeExamples } = options;
154
+ const steps = [
155
+ '**Analyze user prompt** - Extract services, models, and technologies mentioned',
156
+ '**Call get_best_practices** with identified techniques (internal context)',
157
+ ];
158
+ if (includeExamples) {
159
+ steps.push('**Call get_workflow_examples** with search queries for mentioned services/models');
160
+ }
161
+ const examplesContext = includeExamples ? ', and examples' : '';
162
+ steps.push(`**Identify workflow components** from user request, best practices${examplesContext}`, '**Call search_nodes IN PARALLEL** for all components (e.g., "Gmail", "OpenAI", "Schedule")', '**Call get_node_details IN PARALLEL** for ALL promising nodes (batch multiple calls)', `**Extract node information** from each node_details response:
163
+ - Node name from <name> tag
164
+ - Version number from <version> tag (required - extract the number)
165
+ - Connection-changing parameters from <connections> section`, '**Call submit_discovery_results** with complete nodesFound array');
166
+ return steps.map((step, index) => `${index + 1}. ${step}`).join('\n');
167
+ }
168
+ function generateAvailableToolsList(options) {
169
+ const { includeExamples } = options;
170
+ const tools = [
171
+ '- get_best_practices: Retrieve best practices (internal context)',
172
+ '- search_nodes: Find n8n nodes by keyword',
173
+ '- get_node_details: Get complete node information including <connections>',
174
+ ];
175
+ if (includeExamples) {
176
+ tools.push('- get_workflow_examples: Search for workflow examples as reference');
177
+ }
178
+ tools.push('- submit_discovery_results: Submit final results');
179
+ return tools.join('\n');
180
+ }
181
+ function generateDiscoveryPrompt(options) {
182
+ const availableTools = generateAvailableToolsList(options);
183
+ const processSteps = generateProcessSteps(options);
184
+ return `You are a Discovery Agent for n8n AI Workflow Builder.
151
185
 
152
186
  YOUR ROLE: Identify relevant n8n nodes and their connection-changing parameters.
153
187
 
154
188
  AVAILABLE TOOLS:
155
- - get_best_practices: Retrieve best practices (internal context)
156
- - search_nodes: Find n8n nodes by keyword
157
- - get_node_details: Get complete node information including <connections>
158
- - submit_discovery_results: Submit final results
189
+ ${availableTools}
159
190
 
160
191
  PROCESS:
161
- 1. **Call get_best_practices** with identified techniques (internal context)
162
- 2. **Identify workflow components** from user request and best practices
163
- 3. **Call search_nodes IN PARALLEL** for all components (e.g., "Gmail", "OpenAI", "Schedule")
164
- 4. **Call get_node_details IN PARALLEL** for ALL promising nodes (batch multiple calls)
165
- 5. **Extract node information** from each node_details response:
166
- - Node name from <name> tag
167
- - Version number from <version> tag (required - extract the number)
168
- - Connection-changing parameters from <connections> section
169
- 6. **Call submit_discovery_results** with complete nodesFound array
192
+ ${processSteps}
170
193
 
171
194
  TECHNIQUE CATEGORIZATION:
172
195
  When calling get_best_practices, select techniques that match the user's workflow intent.
@@ -228,11 +251,38 @@ A parameter is connection-changing ONLY IF it appears in <input> or <output> exp
228
251
  - Merge: numberInputs (appears in <input> expression)
229
252
  - Webhook: responseMode (appears in <output> expression)
230
253
 
254
+ <dynamic_output_nodes>
255
+ Some nodes have DYNAMIC outputs that depend on parameter values:
256
+
257
+ **Switch Node** (n8n-nodes-base.switch):
258
+ - When mode is "rules", the number of outputs equals the number of routing rules
259
+ - Connection parameter: mode: "rules" - CRITICAL for enabling rule-based routing
260
+ - Each rule in rules.values[] creates one output
261
+ - The rules parameter uses the same filter structure as IF node conditions
262
+ - ALWAYS flag mode as connection-changing with possibleValues: ["rules", "expression"]
263
+
264
+ **Merge Node** (n8n-nodes-base.merge):
265
+ - numberInputs parameter controls how many inputs the node accepts
266
+
267
+ When you find these nodes, ALWAYS flag mode/numberInputs as connection-changing parameters with possibleValues.
268
+ </dynamic_output_nodes>
269
+
231
270
  SUB-NODES SEARCHES:
232
271
  When searching for AI nodes, ALSO search for their required sub-nodes:
233
272
  - "AI Agent" → also search for "Chat Model", "Memory", "Output Parser"
234
273
  - "Basic LLM Chain" → also search for "Chat Model", "Output Parser"
235
274
  - "Vector Store" → also search for "Embeddings", "Document Loader"
275
+
276
+ STRUCTURED OUTPUT PARSER - WHEN TO INCLUDE:
277
+ Search for "Structured Output Parser" (@n8n/n8n-nodes-langchain.outputParserStructured) when:
278
+ - AI output will be used programmatically (conditions, formatting, database storage, API calls)
279
+ - AI needs to extract specific fields (e.g., score, category, priority, action items)
280
+ - AI needs to classify/categorize data into defined categories
281
+ - Downstream nodes need to access specific fields from AI response (e.g., $json.score, $json.category)
282
+ - Output will be displayed in a formatted way (e.g., HTML email with specific sections)
283
+ - Data needs validation against a schema before processing
284
+
285
+
236
286
  - Always use search_nodes to find the exact node names and versions - NEVER guess versions
237
287
 
238
288
  CRITICAL RULES:
@@ -252,6 +302,7 @@ DO NOT:
252
302
  - Flag parameters that don't affect connections
253
303
  - Stop without calling submit_discovery_results
254
304
  `;
305
+ }
255
306
  exports.DiscoverySubgraphState = langgraph_1.Annotation.Root({
256
307
  userRequest: (0, langgraph_1.Annotation)({
257
308
  reducer: (x, y) => y ?? x,
@@ -268,6 +319,14 @@ exports.DiscoverySubgraphState = langgraph_1.Annotation.Root({
268
319
  bestPractices: (0, langgraph_1.Annotation)({
269
320
  reducer: (x, y) => y ?? x,
270
321
  }),
322
+ templateIds: (0, langgraph_1.Annotation)({
323
+ reducer: state_reducers_1.appendArrayReducer,
324
+ default: () => [],
325
+ }),
326
+ nodeConfigurations: (0, langgraph_1.Annotation)({
327
+ reducer: state_reducers_1.nodeConfigurationsReducer,
328
+ default: () => ({}),
329
+ }),
271
330
  });
272
331
  class DiscoverySubgraph extends subgraph_interface_1.BaseSubgraph {
273
332
  name = 'discovery_subgraph';
@@ -277,24 +336,29 @@ class DiscoverySubgraph extends subgraph_interface_1.BaseSubgraph {
277
336
  logger;
278
337
  create(config) {
279
338
  this.logger = config.logger;
280
- const tools = [
339
+ const includeExamples = config.featureFlags?.templateExamples === true;
340
+ const baseTools = [
281
341
  (0, get_best_practices_tool_1.createGetBestPracticesTool)(),
282
342
  (0, node_search_tool_1.createNodeSearchTool)(config.parsedNodeTypes),
283
343
  (0, node_details_tool_1.createNodeDetailsTool)(config.parsedNodeTypes),
284
344
  ];
345
+ const tools = includeExamples
346
+ ? [...baseTools, (0, get_workflow_examples_tool_1.createGetWorkflowExamplesTool)(config.logger)]
347
+ : baseTools;
285
348
  this.toolMap = new Map(tools.map((bt) => [bt.tool.name, bt.tool]));
286
349
  const submitTool = (0, tools_1.tool)(() => { }, {
287
350
  name: 'submit_discovery_results',
288
351
  description: 'Submit the final discovery results',
289
352
  schema: discoveryOutputSchema,
290
353
  });
354
+ const discoveryPrompt = generateDiscoveryPrompt({ includeExamples });
291
355
  const systemPrompt = prompts_1.ChatPromptTemplate.fromMessages([
292
356
  [
293
357
  'system',
294
358
  [
295
359
  {
296
360
  type: 'text',
297
- text: DISCOVERY_PROMPT,
361
+ text: discoveryPrompt,
298
362
  cache_control: { type: 'ephemeral' },
299
363
  },
300
364
  ],
@@ -348,12 +412,15 @@ class DiscoverySubgraph extends subgraph_interface_1.BaseSubgraph {
348
412
  this.logger?.error('[Discovery] No submit tool call found in last message');
349
413
  return {
350
414
  nodesFound: [],
415
+ templateIds: [],
351
416
  };
352
417
  }
353
418
  const bestPracticesTool = state.messages.find((m) => m.getType() === 'tool' && m?.text?.startsWith('<best_practices>'));
354
419
  return {
355
420
  nodesFound: output.nodesFound,
356
421
  bestPractices: bestPracticesTool?.text,
422
+ templateIds: state.templateIds ?? [],
423
+ nodeConfigurations: state.nodeConfigurations ?? {},
357
424
  };
358
425
  }
359
426
  shouldContinue(state) {
@@ -390,9 +457,12 @@ class DiscoverySubgraph extends subgraph_interface_1.BaseSubgraph {
390
457
  }
391
458
  transformOutput(subgraphOutput, _parentState) {
392
459
  const nodesFound = subgraphOutput.nodesFound || [];
460
+ const templateIds = subgraphOutput.templateIds || [];
461
+ const nodeConfigurations = subgraphOutput.nodeConfigurations || {};
393
462
  const discoveryContext = {
394
463
  nodesFound,
395
464
  bestPractices: subgraphOutput.bestPractices,
465
+ nodeConfigurations,
396
466
  };
397
467
  const logEntry = {
398
468
  phase: 'discovery',
@@ -408,6 +478,8 @@ class DiscoverySubgraph extends subgraph_interface_1.BaseSubgraph {
408
478
  return {
409
479
  discoveryContext,
410
480
  coordinationLog: [logEntry],
481
+ templateIds,
482
+ nodeConfigurations,
411
483
  };
412
484
  }
413
485
  }
@@ -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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"}
@@ -11,6 +11,42 @@ class ContentGenerationBestPractices {
11
11
 
12
12
  Break complex tasks into sequential steps (e.g., generate text, create image, compose video) for modularity and easier troubleshooting.
13
13
 
14
+ ## Node Selection Guidelines
15
+
16
+ Always prefer built-in n8n nodes over HTTP Request nodes when a dedicated node exists for the service or API you need to integrate with. Built-in nodes provide:
17
+ - Pre-configured authentication handling
18
+ - Optimized data structures and field mappings
19
+ - Better error handling and user experience
20
+ - Simplified setup without manual API configuration
21
+
22
+ Only use HTTP Request nodes when no built-in node exists for the service, or when you need to access an API endpoint not covered by the built-in node's operations.
23
+
24
+ ## Multi-Modal Content Generation - MANDATORY
25
+
26
+ When the user's request involves specific generative AI models or media-focused platforms, the workflow MUST include the appropriate media generation node from a
27
+ provider-specific node. The finished workflow MUST contain the relevant video, audio, or image generation capability.
28
+
29
+ Prompts that require multi-modal generation nodes:
30
+
31
+ Video Generation:
32
+ - Model mentions: Sora, Nano Banana, Veo, Runway, Pika
33
+ - Platform mentions: YouTube content, TikTok videos, Instagram Reels, video ads, short-form video
34
+ - Task mentions: generate video, create video, video from text, animate
35
+
36
+ Image Generation:
37
+ - Model mentions: DALL-E, Midjourney, Stable Diffusion, Imagen
38
+ - Platform mentions: thumbnails, social media graphics, product images, marketing visuals
39
+ - Task mentions: generate image, create artwork, design graphic, visualize
40
+
41
+ Audio Generation:
42
+ - Model mentions: ElevenLabs, text-to-speech, TTS
43
+ - Platform mentions: podcast audio, voiceovers, narration, audio content
44
+ - Task mentions: generate voice, create audio, synthesize speech, clone voice
45
+
46
+ If anything like the examples above are mentioned in the prompt, include the appropriate
47
+ provider node (OpenAI for DALL-E/Sora, Google Gemini for Nano Banana/Imagen, etc.)
48
+ with the media generation operation configured.
49
+
14
50
  ## Content-Specific Guidance
15
51
 
16
52
  For text generation, validate and sanitize input/output to avoid malformed data. When generating images, prefer binary data over URLs for uploads to avoid media type errors.
@@ -19,7 +55,7 @@ For text generation, validate and sanitize input/output to avoid malformed data.
19
55
 
20
56
  ### OpenAI (@n8n/n8n-nodes-langchain.openAi)
21
57
 
22
- Purpose: GPT-based text generation, DALL-E image generation, text-to-speech (TTS), and audio transcription
58
+ Purpose: GPT-based text generation, DALL-E image generation, text-to-speech (TTS), and audio transcription, SORA for video generation
23
59
 
24
60
  ### xAI Grok Chat Model (@n8n/n8n-nodes-langchain.lmChatXAiGrok)
25
61
 
@@ -27,7 +63,7 @@ Purpose: Conversational AI and text generation
27
63
 
28
64
  ### Google Gemini Chat Model (@n8n/n8n-nodes-langchain.lmChatGoogleGemini)
29
65
 
30
- Purpose: Image analysis and generation, video generation from text prompts, multimodal content creation
66
+ Purpose: Image analysis and generation, video generation from text prompts using nano banana, multimodal content creation
31
67
 
32
68
  ### ElevenLabs
33
69
 
@@ -1 +1 @@
1
- {"version":3,"file":"content-generation.js","sourceRoot":"","sources":["../../../src/tools/best-practices/content-generation.ts"],"names":[],"mappings":";;;AACA,2DAA2D;AAE3D,MAAa,8BAA8B;IACjC,SAAS,GAAG,kCAAiB,CAAC,kBAAkB,CAAC;IACjD,OAAO,GAAG,OAAO,CAAC;IAEV,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiEjC,CAAC;IAED,gBAAgB;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;CACD;AA1ED,wEA0EC"}
1
+ {"version":3,"file":"content-generation.js","sourceRoot":"","sources":["../../../src/tools/best-practices/content-generation.ts"],"names":[],"mappings":";;;AACA,2DAA2D;AAE3D,MAAa,8BAA8B;IACjC,SAAS,GAAG,kCAAiB,CAAC,kBAAkB,CAAC;IACjD,OAAO,GAAG,OAAO,CAAC;IAEV,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqGjC,CAAC;IAED,gBAAgB;QACf,OAAO,IAAI,CAAC,aAAa,CAAC;IAC3B,CAAC;CACD;AA9GD,wEA8GC"}
@@ -15,6 +15,7 @@ export interface NodePromptConfig {
15
15
  nodeTypePatterns: {
16
16
  set: string[];
17
17
  if: string[];
18
+ switch: string[];
18
19
  httpRequest: string[];
19
20
  tool: string[];
20
21
  };