@n8n/ai-workflow-builder 0.19.0 → 0.20.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.
- package/dist/agents/workflow-planner-agent.d.ts +58 -0
- package/dist/agents/workflow-planner-agent.js +269 -0
- package/dist/agents/workflow-planner-agent.js.map +1 -0
- package/dist/build.tsbuildinfo +1 -1
- package/dist/constants.d.ts +7 -0
- package/dist/constants.js +8 -1
- package/dist/constants.js.map +1 -1
- package/dist/errors/index.d.ts +7 -0
- package/dist/errors/index.js +16 -1
- package/dist/errors/index.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.js +0 -1
- package/dist/index.js.map +1 -1
- package/dist/llm-config.js +2 -1
- package/dist/llm-config.js.map +1 -1
- package/dist/tools/add-node.tool.d.ts +38 -34
- package/dist/tools/add-node.tool.js +17 -2
- package/dist/tools/add-node.tool.js.map +1 -1
- package/dist/tools/connect-nodes.tool.d.ts +29 -26
- package/dist/tools/connect-nodes.tool.js +7 -2
- package/dist/tools/connect-nodes.tool.js.map +1 -1
- package/dist/tools/get-node-parameter.tool.d.ts +18 -0
- package/dist/tools/get-node-parameter.tool.js +109 -0
- package/dist/tools/get-node-parameter.tool.js.map +1 -0
- package/dist/tools/helpers/progress.d.ts +1 -1
- package/dist/tools/helpers/progress.js +14 -2
- package/dist/tools/helpers/progress.js.map +1 -1
- package/dist/tools/helpers/validation.d.ts +1 -0
- package/dist/tools/helpers/validation.js +13 -0
- package/dist/tools/helpers/validation.js.map +1 -1
- package/dist/tools/node-details.tool.d.ts +20 -17
- package/dist/tools/node-details.tool.js +7 -2
- package/dist/tools/node-details.tool.js.map +1 -1
- package/dist/tools/node-search.tool.d.ts +54 -45
- package/dist/tools/node-search.tool.js +7 -2
- package/dist/tools/node-search.tool.js.map +1 -1
- package/dist/tools/prompts/main-agent.prompt.d.ts +2 -0
- package/dist/tools/prompts/main-agent.prompt.js +89 -41
- package/dist/tools/prompts/main-agent.prompt.js.map +1 -1
- package/dist/tools/remove-node.tool.d.ts +14 -11
- package/dist/tools/remove-node.tool.js +7 -2
- package/dist/tools/remove-node.tool.js.map +1 -1
- package/dist/tools/update-node-parameters.tool.d.ts +19 -16
- package/dist/tools/update-node-parameters.tool.js +21 -4
- package/dist/tools/update-node-parameters.tool.js.map +1 -1
- package/dist/types/index.d.ts +8 -8
- package/dist/types/index.js +0 -22
- package/dist/types/index.js.map +1 -1
- package/dist/types/langchain.d.ts +2 -0
- package/dist/types/langchain.js +7 -0
- package/dist/types/langchain.js.map +1 -0
- package/dist/types/messages.d.ts +1 -7
- package/dist/types/streaming.d.ts +6 -1
- package/dist/types/tools.d.ts +8 -1
- package/dist/utils/stream-processor.d.ts +7 -1
- package/dist/utils/stream-processor.js +121 -63
- package/dist/utils/stream-processor.js.map +1 -1
- package/dist/utils/token-usage.d.ts +3 -0
- package/dist/utils/token-usage.js +27 -0
- package/dist/utils/token-usage.js.map +1 -1
- package/dist/utils/trim-workflow-context.d.ts +2 -0
- package/dist/utils/trim-workflow-context.js +53 -0
- package/dist/utils/trim-workflow-context.js.map +1 -0
- package/dist/workflow-builder-agent.d.ts +1 -0
- package/dist/workflow-builder-agent.js +136 -8
- package/dist/workflow-builder-agent.js.map +1 -1
- package/dist/workflow-state.d.ts +17 -0
- package/dist/workflow-state.js +12 -0
- package/dist/workflow-state.js.map +1 -1
- package/package.json +6 -5
- package/dist/chains/planner.d.ts +0 -4
- package/dist/chains/planner.js +0 -87
- package/dist/chains/planner.js.map +0 -1
|
@@ -4,9 +4,12 @@ exports.WorkflowBuilderAgent = void 0;
|
|
|
4
4
|
const messages_1 = require("@langchain/core/messages");
|
|
5
5
|
const langgraph_1 = require("@langchain/langgraph");
|
|
6
6
|
const n8n_workflow_1 = require("n8n-workflow");
|
|
7
|
-
const workflow_name_1 = require("./chains/workflow-name");
|
|
8
7
|
const constants_1 = require("./constants");
|
|
8
|
+
const get_node_parameter_tool_1 = require("./tools/get-node-parameter.tool");
|
|
9
|
+
const trim_workflow_context_1 = require("./utils/trim-workflow-context");
|
|
10
|
+
const workflow_planner_agent_1 = require("./agents/workflow-planner-agent");
|
|
9
11
|
const conversation_compact_1 = require("./chains/conversation-compact");
|
|
12
|
+
const workflow_name_1 = require("./chains/workflow-name");
|
|
10
13
|
const errors_1 = require("./errors");
|
|
11
14
|
const add_node_tool_1 = require("./tools/add-node.tool");
|
|
12
15
|
const connect_nodes_tool_1 = require("./tools/connect-nodes.tool");
|
|
@@ -40,15 +43,20 @@ class WorkflowBuilderAgent {
|
|
|
40
43
|
config.autoCompactThresholdTokens ?? constants_1.DEFAULT_AUTO_COMPACT_THRESHOLD_TOKENS;
|
|
41
44
|
this.instanceUrl = config.instanceUrl;
|
|
42
45
|
}
|
|
43
|
-
|
|
44
|
-
|
|
46
|
+
getBuilderTools() {
|
|
47
|
+
return [
|
|
45
48
|
(0, node_search_tool_1.createNodeSearchTool)(this.parsedNodeTypes),
|
|
46
49
|
(0, node_details_tool_1.createNodeDetailsTool)(this.parsedNodeTypes),
|
|
47
50
|
(0, add_node_tool_1.createAddNodeTool)(this.parsedNodeTypes),
|
|
48
51
|
(0, connect_nodes_tool_1.createConnectNodesTool)(this.parsedNodeTypes, this.logger),
|
|
49
52
|
(0, remove_node_tool_1.createRemoveNodeTool)(this.logger),
|
|
50
53
|
(0, update_node_parameters_tool_1.createUpdateNodeParametersTool)(this.parsedNodeTypes, this.llmComplexTask, this.logger, this.instanceUrl),
|
|
54
|
+
(0, get_node_parameter_tool_1.createGetNodeParameterTool)(),
|
|
51
55
|
];
|
|
56
|
+
}
|
|
57
|
+
createWorkflow() {
|
|
58
|
+
const builderTools = this.getBuilderTools();
|
|
59
|
+
const tools = builderTools.map((bt) => bt.tool);
|
|
52
60
|
const toolMap = new Map(tools.map((tool) => [tool.name, tool]));
|
|
53
61
|
const callModel = async (state) => {
|
|
54
62
|
if (!this.llmSimpleTask) {
|
|
@@ -61,10 +69,16 @@ class WorkflowBuilderAgent {
|
|
|
61
69
|
}
|
|
62
70
|
const prompt = await main_agent_prompt_1.mainAgentPrompt.invoke({
|
|
63
71
|
...state,
|
|
72
|
+
workflowJSON: (0, trim_workflow_context_1.trimWorkflowJSON)(state.workflowJSON),
|
|
64
73
|
executionData: state.workflowContext?.executionData ?? {},
|
|
65
74
|
executionSchema: state.workflowContext?.executionSchema ?? [],
|
|
75
|
+
workflowPlan: (0, main_agent_prompt_1.planFormatter)(state.workflowPlan),
|
|
66
76
|
instanceUrl: this.instanceUrl,
|
|
67
77
|
});
|
|
78
|
+
const estimatedTokens = (0, token_usage_1.estimateTokenCountFromMessages)(prompt.messages);
|
|
79
|
+
if (estimatedTokens > constants_1.MAX_INPUT_TOKENS) {
|
|
80
|
+
throw new errors_1.WorkflowStateError('The current conversation and workflow state is too large to process. Try to simplify your workflow by breaking it into smaller parts.');
|
|
81
|
+
}
|
|
68
82
|
const response = await this.llmSimpleTask.bindTools(tools).invoke(prompt);
|
|
69
83
|
return { messages: [response] };
|
|
70
84
|
};
|
|
@@ -82,8 +96,94 @@ class WorkflowBuilderAgent {
|
|
|
82
96
|
});
|
|
83
97
|
return tokensUsed > this.autoCompactThresholdTokens;
|
|
84
98
|
};
|
|
99
|
+
const createPlan = async (state) => {
|
|
100
|
+
const { messages } = state;
|
|
101
|
+
const lastHumanMessage = messages.findLast((m) => m instanceof messages_1.HumanMessage);
|
|
102
|
+
if (typeof lastHumanMessage.content !== 'string') {
|
|
103
|
+
throw new errors_1.ValidationError('Invalid message content for planning');
|
|
104
|
+
}
|
|
105
|
+
const plannerAgent = (0, workflow_planner_agent_1.createWorkflowPlannerAgent)(this.llmSimpleTask, this.parsedNodeTypes);
|
|
106
|
+
const plannerResult = await plannerAgent.plan(lastHumanMessage.content);
|
|
107
|
+
if ('plan' in plannerResult) {
|
|
108
|
+
const { plan, toolMessages } = plannerResult;
|
|
109
|
+
this.logger?.debug('Generated workflow plan: ' + JSON.stringify(plan, null, 2));
|
|
110
|
+
return {
|
|
111
|
+
workflowPlan: plan,
|
|
112
|
+
planStatus: 'pending',
|
|
113
|
+
messages: toolMessages,
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
this.logger?.debug('Planner returned text response: ' + plannerResult.text);
|
|
117
|
+
return {
|
|
118
|
+
messages: [
|
|
119
|
+
new messages_1.AIMessage({
|
|
120
|
+
content: plannerResult.text,
|
|
121
|
+
}),
|
|
122
|
+
],
|
|
123
|
+
};
|
|
124
|
+
};
|
|
125
|
+
const reviewPlan = async (state) => {
|
|
126
|
+
const { workflowPlan } = state;
|
|
127
|
+
if (!workflowPlan) {
|
|
128
|
+
throw new errors_1.ValidationError('No workflow plan to review');
|
|
129
|
+
}
|
|
130
|
+
const userResponse = (0, langgraph_1.interrupt)({
|
|
131
|
+
plan: workflowPlan.plan,
|
|
132
|
+
message: workflowPlan.intro,
|
|
133
|
+
});
|
|
134
|
+
if (userResponse.action === 'approve') {
|
|
135
|
+
return {
|
|
136
|
+
planStatus: 'approved',
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
else if (userResponse.action === 'adjust') {
|
|
140
|
+
return {
|
|
141
|
+
planStatus: 'rejected',
|
|
142
|
+
planFeedback: userResponse.feedback ?? 'Please adjust the plan',
|
|
143
|
+
};
|
|
144
|
+
}
|
|
145
|
+
return {};
|
|
146
|
+
};
|
|
147
|
+
const adjustPlan = async (state) => {
|
|
148
|
+
const { messages, planFeedback, workflowPlan } = state;
|
|
149
|
+
const lastHumanMessage = messages.findLast((m) => m instanceof messages_1.HumanMessage);
|
|
150
|
+
if (typeof lastHumanMessage.content !== 'string') {
|
|
151
|
+
throw new errors_1.ValidationError('Invalid message content for plan adjustment');
|
|
152
|
+
}
|
|
153
|
+
const plannerAgent = (0, workflow_planner_agent_1.createWorkflowPlannerAgent)(this.llmSimpleTask, this.parsedNodeTypes);
|
|
154
|
+
const adjustedPlan = await plannerAgent.plan(lastHumanMessage.content, workflowPlan ?? undefined, planFeedback ?? undefined);
|
|
155
|
+
if ('text' in adjustedPlan) {
|
|
156
|
+
return {
|
|
157
|
+
messages: [
|
|
158
|
+
new messages_1.AIMessage({
|
|
159
|
+
content: adjustedPlan.text,
|
|
160
|
+
}),
|
|
161
|
+
],
|
|
162
|
+
};
|
|
163
|
+
}
|
|
164
|
+
const filteredMessages = messages.map((m) => {
|
|
165
|
+
if (m instanceof messages_1.ToolMessage && m.name === 'generate_workflow_plan') {
|
|
166
|
+
return new messages_1.RemoveMessage({ id: m.id });
|
|
167
|
+
}
|
|
168
|
+
if (m instanceof messages_1.AIMessage && m.tool_calls && m.tool_calls.length > 0) {
|
|
169
|
+
const hasPlanCall = m.tool_calls.find((tc) => tc.name === 'generate_workflow_plan');
|
|
170
|
+
if (hasPlanCall) {
|
|
171
|
+
return new messages_1.RemoveMessage({ id: m.id });
|
|
172
|
+
}
|
|
173
|
+
}
|
|
174
|
+
return m;
|
|
175
|
+
});
|
|
176
|
+
const planAdjustmentMessage = new messages_1.HumanMessage({ content: planFeedback ?? '' });
|
|
177
|
+
this.logger?.debug('Adjusted workflow plan: ' + JSON.stringify(adjustedPlan, null, 2));
|
|
178
|
+
return {
|
|
179
|
+
workflowPlan: adjustedPlan.plan,
|
|
180
|
+
messages: [...filteredMessages, planAdjustmentMessage, ...adjustedPlan.toolMessages],
|
|
181
|
+
planStatus: 'pending',
|
|
182
|
+
planFeedback: null,
|
|
183
|
+
};
|
|
184
|
+
};
|
|
85
185
|
const shouldModifyState = (state) => {
|
|
86
|
-
const { messages, workflowContext } = state;
|
|
186
|
+
const { messages, workflowContext, planStatus } = state;
|
|
87
187
|
const lastHumanMessage = messages.findLast((m) => m instanceof messages_1.HumanMessage);
|
|
88
188
|
if (lastHumanMessage.content === '/compact') {
|
|
89
189
|
return 'compact_messages';
|
|
@@ -97,6 +197,9 @@ class WorkflowBuilderAgent {
|
|
|
97
197
|
if (shouldAutoCompact(state)) {
|
|
98
198
|
return 'auto_compact_messages';
|
|
99
199
|
}
|
|
200
|
+
if (!planStatus && workflowContext?.currentWorkflow?.nodes?.length === 0) {
|
|
201
|
+
return 'create_plan';
|
|
202
|
+
}
|
|
100
203
|
return 'agent';
|
|
101
204
|
};
|
|
102
205
|
const shouldContinue = ({ messages }) => {
|
|
@@ -120,6 +223,9 @@ class WorkflowBuilderAgent {
|
|
|
120
223
|
connections: {},
|
|
121
224
|
name: '',
|
|
122
225
|
},
|
|
226
|
+
workflowPlan: null,
|
|
227
|
+
planStatus: null,
|
|
228
|
+
planFeedback: null,
|
|
123
229
|
};
|
|
124
230
|
return stateUpdate;
|
|
125
231
|
}
|
|
@@ -174,11 +280,21 @@ class WorkflowBuilderAgent {
|
|
|
174
280
|
.addNode('compact_messages', compactSession)
|
|
175
281
|
.addNode('auto_compact_messages', compactSession)
|
|
176
282
|
.addNode('create_workflow_name', createWorkflowName)
|
|
283
|
+
.addNode('create_plan', createPlan)
|
|
284
|
+
.addNode('review_plan', reviewPlan)
|
|
285
|
+
.addNode('adjust_plan', adjustPlan)
|
|
177
286
|
.addConditionalEdges('__start__', shouldModifyState)
|
|
287
|
+
.addConditionalEdges('create_plan', (state) => {
|
|
288
|
+
return state.workflowPlan ? 'review_plan' : langgraph_1.END;
|
|
289
|
+
})
|
|
290
|
+
.addConditionalEdges('review_plan', (state) => {
|
|
291
|
+
return state.planStatus === 'approved' ? 'agent' : 'adjust_plan';
|
|
292
|
+
})
|
|
293
|
+
.addEdge('adjust_plan', 'review_plan')
|
|
178
294
|
.addEdge('tools', 'process_operations')
|
|
179
295
|
.addEdge('process_operations', 'agent')
|
|
180
296
|
.addEdge('auto_compact_messages', 'agent')
|
|
181
|
-
.addEdge('create_workflow_name', '
|
|
297
|
+
.addEdge('create_workflow_name', 'create_plan')
|
|
182
298
|
.addEdge('delete_messages', langgraph_1.END)
|
|
183
299
|
.addEdge('compact_messages', langgraph_1.END)
|
|
184
300
|
.addConditionalEdges('agent', shouldContinue);
|
|
@@ -206,7 +322,7 @@ class WorkflowBuilderAgent {
|
|
|
206
322
|
this.validateMessageLength(payload.message);
|
|
207
323
|
const { agent, threadConfig, streamConfig } = this.setupAgentAndConfigs(payload, userId, abortSignal);
|
|
208
324
|
try {
|
|
209
|
-
const stream = await this.createAgentStream(payload, streamConfig, agent);
|
|
325
|
+
const stream = await this.createAgentStream(payload, streamConfig, agent, threadConfig);
|
|
210
326
|
yield* this.processAgentStream(stream, agent, threadConfig);
|
|
211
327
|
}
|
|
212
328
|
catch (error) {
|
|
@@ -240,7 +356,19 @@ class WorkflowBuilderAgent {
|
|
|
240
356
|
};
|
|
241
357
|
return { agent, threadConfig, streamConfig };
|
|
242
358
|
}
|
|
243
|
-
async createAgentStream(payload, streamConfig, agent) {
|
|
359
|
+
async createAgentStream(payload, streamConfig, agent, threadConfig) {
|
|
360
|
+
const currentState = await agent.getState(threadConfig);
|
|
361
|
+
const interruptedTask = currentState.tasks.find((task) => task.interrupts && task.interrupts.length > 0);
|
|
362
|
+
if (interruptedTask) {
|
|
363
|
+
const action = payload.message.trim() === constants_1.PLAN_APPROVAL_MESSAGE ? 'approve' : 'adjust';
|
|
364
|
+
const resumeCommand = new langgraph_1.Command({
|
|
365
|
+
resume: {
|
|
366
|
+
action,
|
|
367
|
+
feedback: action === 'adjust' ? payload.message : undefined,
|
|
368
|
+
},
|
|
369
|
+
});
|
|
370
|
+
return await agent.stream(resumeCommand, streamConfig);
|
|
371
|
+
}
|
|
244
372
|
return await agent.stream({
|
|
245
373
|
messages: [new messages_1.HumanMessage({ content: payload.message })],
|
|
246
374
|
workflowJSON: this.getDefaultWorkflowJSON(payload),
|
|
@@ -318,7 +446,7 @@ class WorkflowBuilderAgent {
|
|
|
318
446
|
const messages = checkpoint.checkpoint.channel_values?.messages ?? [];
|
|
319
447
|
sessions.push({
|
|
320
448
|
sessionId: threadId,
|
|
321
|
-
messages: (0, stream_processor_1.formatMessages)(messages),
|
|
449
|
+
messages: (0, stream_processor_1.formatMessages)(messages, this.getBuilderTools()),
|
|
322
450
|
lastUpdated: checkpoint.checkpoint.ts,
|
|
323
451
|
});
|
|
324
452
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-builder-agent.js","sourceRoot":"","sources":["../src/workflow-builder-agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workflow-builder-agent.js","sourceRoot":"","sources":["../src/workflow-builder-agent.ts"],"names":[],"mappings":"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"}
|
package/dist/workflow-state.d.ts
CHANGED
|
@@ -5,6 +5,23 @@ export declare const WorkflowState: import("@langchain/langgraph").AnnotationRoo
|
|
|
5
5
|
messages: import("@langchain/langgraph").BinaryOperatorAggregate<BaseMessage[], BaseMessage[]>;
|
|
6
6
|
workflowJSON: import("@langchain/langgraph").BinaryOperatorAggregate<SimpleWorkflow, SimpleWorkflow>;
|
|
7
7
|
workflowOperations: import("@langchain/langgraph").BinaryOperatorAggregate<WorkflowOperation[] | null, WorkflowOperation[] | null>;
|
|
8
|
+
workflowPlan: import("@langchain/langgraph").BinaryOperatorAggregate<{
|
|
9
|
+
intro: string;
|
|
10
|
+
plan: {
|
|
11
|
+
nodeType: string;
|
|
12
|
+
reasoning: string;
|
|
13
|
+
nodeName: string;
|
|
14
|
+
}[];
|
|
15
|
+
} | null, {
|
|
16
|
+
intro: string;
|
|
17
|
+
plan: {
|
|
18
|
+
nodeType: string;
|
|
19
|
+
reasoning: string;
|
|
20
|
+
nodeName: string;
|
|
21
|
+
}[];
|
|
22
|
+
} | null>;
|
|
23
|
+
planStatus: import("@langchain/langgraph").BinaryOperatorAggregate<"pending" | "approved" | "rejected" | null, "pending" | "approved" | "rejected" | null>;
|
|
24
|
+
planFeedback: import("@langchain/langgraph").BinaryOperatorAggregate<string | null, string | null>;
|
|
8
25
|
workflowContext: import("@langchain/langgraph").BinaryOperatorAggregate<{
|
|
9
26
|
executionSchema?: import("n8n-workflow").NodeExecutionSchema[];
|
|
10
27
|
currentWorkflow?: Partial<import("n8n-workflow").IWorkflowBase>;
|
package/dist/workflow-state.js
CHANGED
|
@@ -47,6 +47,18 @@ exports.WorkflowState = langgraph_1.Annotation.Root({
|
|
|
47
47
|
reducer: operationsReducer,
|
|
48
48
|
default: () => [],
|
|
49
49
|
}),
|
|
50
|
+
workflowPlan: (0, langgraph_1.Annotation)({
|
|
51
|
+
reducer: (x, y) => y ?? x,
|
|
52
|
+
default: () => null,
|
|
53
|
+
}),
|
|
54
|
+
planStatus: (0, langgraph_1.Annotation)({
|
|
55
|
+
reducer: (x, y) => y ?? x,
|
|
56
|
+
default: () => null,
|
|
57
|
+
}),
|
|
58
|
+
planFeedback: (0, langgraph_1.Annotation)({
|
|
59
|
+
reducer: (x, y) => y ?? x,
|
|
60
|
+
default: () => null,
|
|
61
|
+
}),
|
|
50
62
|
workflowContext: (0, langgraph_1.Annotation)({
|
|
51
63
|
reducer: (x, y) => y ?? x,
|
|
52
64
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workflow-state.js","sourceRoot":"","sources":["../src/workflow-state.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"workflow-state.js","sourceRoot":"","sources":["../src/workflow-state.ts"],"names":[],"mappings":";;;AAqCA,8DAsBC;AA1DD,uDAAwD;AACxD,oDAAwE;AAUxE,SAAS,iBAAiB,CACzB,OAAmC,EACnC,MAA8C;IAE9C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACrB,OAAO,EAAE,CAAC;IACX,CAAC;IAED,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,OAAO,IAAI,EAAE,CAAC;IACtB,CAAC;IAGD,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,CAAC;QAC9C,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7D,CAAC;IAED,IAAI,CAAC,OAAO,IAAI,CAAC,MAAM,EAAE,CAAC;QACzB,OAAO,EAAE,CAAC;IACX,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE,GAAG,MAAM,CAAC,CAAC;AACxC,CAAC;AAGD,SAAgB,yBAAyB,CAAC,eAAuB;IAChE,OAAO,CAAC,OAAsB,EAAiB,EAAE;QAEhD,MAAM,mBAAmB,GAAa,EAAE,CAAC;QACzC,OAAO,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE;YAC9B,IAAI,GAAG,YAAY,uBAAY,EAAE,CAAC;gBACjC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACjC,CAAC;QACF,CAAC,CAAC,CAAC;QAGH,IAAI,mBAAmB,CAAC,MAAM,IAAI,eAAe,EAAE,CAAC;YACnD,OAAO,OAAO,CAAC;QAChB,CAAC;QAGD,MAAM,sBAAsB,GAC3B,mBAAmB,CAAC,mBAAmB,CAAC,MAAM,GAAG,eAAe,CAAC,CAAC;QAGnE,OAAO,OAAO,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC9C,CAAC,CAAC;AACH,CAAC;AAEY,QAAA,aAAa,GAAG,sBAAU,CAAC,IAAI,CAAC;IAC5C,QAAQ,EAAE,IAAA,sBAAU,EAAgB;QACnC,OAAO,EAAE,gCAAoB;QAC7B,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;KACjB,CAAC;IAIF,YAAY,EAAE,IAAA,sBAAU,EAAiB;QACxC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,WAAW,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;KACzD,CAAC;IAEF,kBAAkB,EAAE,IAAA,sBAAU,EAA6B;QAC1D,OAAO,EAAE,iBAAiB;QAC1B,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE;KACjB,CAAC;IAEF,YAAY,EAAE,IAAA,sBAAU,EAAsB;QAC7C,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI;KACnB,CAAC;IAEF,UAAU,EAAE,IAAA,sBAAU,EAA6C;QAClE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI;KACnB,CAAC;IAEF,YAAY,EAAE,IAAA,sBAAU,EAAgB;QACvC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI;KACnB,CAAC;IAEF,eAAe,EAAE,IAAA,sBAAU,EAA6C;QACvE,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;KACzB,CAAC;IAGF,eAAe,EAAE,IAAA,sBAAU,EAAS;QACnC,OAAO,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC;QACzB,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO;KACtB,CAAC;CACF,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@n8n/ai-workflow-builder",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.20.0",
|
|
4
4
|
"main": "dist/index.js",
|
|
5
5
|
"module": "src/index.ts",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -23,20 +23,21 @@
|
|
|
23
23
|
"@langchain/openai": "0.6.7",
|
|
24
24
|
"@n8n_io/ai-assistant-sdk": "1.15.0",
|
|
25
25
|
"langsmith": "^0.3.45",
|
|
26
|
+
"lodash": "4.17.21",
|
|
26
27
|
"picocolors": "1.0.1",
|
|
27
28
|
"zod": "3.25.67",
|
|
28
|
-
"@n8n/backend-common": "^0.
|
|
29
|
+
"@n8n/backend-common": "^0.20.0",
|
|
29
30
|
"@n8n/di": "0.9.0",
|
|
30
|
-
"
|
|
31
|
-
"n8n
|
|
31
|
+
"n8n-workflow": "1.107.0",
|
|
32
|
+
"@n8n/config": "1.53.0"
|
|
32
33
|
},
|
|
33
34
|
"devDependencies": {
|
|
34
35
|
"@types/cli-progress": "^3.11.5",
|
|
35
|
-
"p-limit": "^3.1.0",
|
|
36
36
|
"cli-progress": "^3.12.0",
|
|
37
37
|
"cli-table3": "^0.6.3",
|
|
38
38
|
"jest-mock-extended": "^3.0.4",
|
|
39
39
|
"madge": "^8.0.0",
|
|
40
|
+
"p-limit": "^3.1.0",
|
|
40
41
|
"@n8n/typescript-config": "1.3.0"
|
|
41
42
|
},
|
|
42
43
|
"license": "SEE LICENSE IN LICENSE.md",
|
package/dist/chains/planner.d.ts
DELETED
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { BaseChatModel } from '@langchain/core/language_models/chat_models';
|
|
2
|
-
import { SystemMessage } from '@langchain/core/messages';
|
|
3
|
-
export declare const plannerPrompt: SystemMessage;
|
|
4
|
-
export declare const plannerChain: (llm: BaseChatModel) => import("@langchain/core/runnables").Runnable<any, string[], import("@langchain/core/runnables").RunnableConfig<Record<string, any>>>;
|
package/dist/chains/planner.js
DELETED
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.plannerChain = exports.plannerPrompt = void 0;
|
|
4
|
-
const messages_1 = require("@langchain/core/messages");
|
|
5
|
-
const prompts_1 = require("@langchain/core/prompts");
|
|
6
|
-
const tools_1 = require("@langchain/core/tools");
|
|
7
|
-
const zod_1 = require("zod");
|
|
8
|
-
const errors_1 = require("../errors");
|
|
9
|
-
exports.plannerPrompt = new messages_1.SystemMessage(`You are a Workflow Planner for n8n, a platform that helps users automate processes across different services and APIs.
|
|
10
|
-
|
|
11
|
-
## Your Task
|
|
12
|
-
Convert user requests into clear, sequential workflow steps that can be implemented with n8n nodes. ONLY include steps that are explicitly stated or directly implied in the user request.
|
|
13
|
-
|
|
14
|
-
## Guidelines
|
|
15
|
-
1. Analyze the user request to understand their end goal and required process
|
|
16
|
-
2. Break down the automation into logical steps based on complexity - simpler workflows need fewer steps, complex ones may need more
|
|
17
|
-
3. Focus ONLY on actions mentioned directly in the user prompt
|
|
18
|
-
4. Create steps that can be mapped to n8n nodes later
|
|
19
|
-
5. Order steps sequentially from trigger to final action
|
|
20
|
-
6. Be specific about data transformations needed ONLY if mentioned in the request
|
|
21
|
-
7. NEVER add extra steps like storing data or sending notifications unless explicitly requested
|
|
22
|
-
8. Only recommend raw HTTP requests if you think there isn't a suitable n8n node
|
|
23
|
-
|
|
24
|
-
## CRITICAL REQUIREMENTS
|
|
25
|
-
- DO NOT add any steps not directly mentioned or implied in the user request
|
|
26
|
-
- DO NOT assume the user wants to store data in a database unless explicitly stated
|
|
27
|
-
- DO NOT assume the user wants to send notifications or emails unless explicitly stated
|
|
28
|
-
- DO NOT add any "nice to have" steps that aren't clearly part of the user's request
|
|
29
|
-
- Keep the workflow EXACTLY focused on what was requested, nothing more
|
|
30
|
-
|
|
31
|
-
## Output Format
|
|
32
|
-
Return ONLY a JSON object with this structure:
|
|
33
|
-
\`\`\`json
|
|
34
|
-
{
|
|
35
|
-
"steps": [
|
|
36
|
-
"[Brief action-oriented description]",
|
|
37
|
-
"[Brief action-oriented description]",
|
|
38
|
-
...
|
|
39
|
-
]
|
|
40
|
-
}
|
|
41
|
-
\`\`\`
|
|
42
|
-
|
|
43
|
-
## Examples of Good Step Descriptions
|
|
44
|
-
- "Trigger when a new email arrives in Gmail inbox"
|
|
45
|
-
- "Filter emails to only include those with attachments"
|
|
46
|
-
- "Extract data from CSV attachments"
|
|
47
|
-
- "Transform data to required format for the API"
|
|
48
|
-
- "Send HTTP request to external API with extracted data"
|
|
49
|
-
- "Post success message to Slack channel"
|
|
50
|
-
|
|
51
|
-
IMPORTANT: Do not include HTML tags, markdown formatting, or explanations outside the JSON.`);
|
|
52
|
-
const planSchema = zod_1.z.object({
|
|
53
|
-
steps: zod_1.z
|
|
54
|
-
.array(zod_1.z
|
|
55
|
-
.string()
|
|
56
|
-
.describe('A clear, action-oriented description of a single workflow step. Do not include "Step N" or similar, just the action'))
|
|
57
|
-
.min(1)
|
|
58
|
-
.describe('An ordered list of workflow steps that, when implemented, will fulfill the user request. Each step should be concise, action-oriented, and implementable with n8n nodes.'),
|
|
59
|
-
});
|
|
60
|
-
const generatePlanTool = new tools_1.DynamicStructuredTool({
|
|
61
|
-
name: 'generate_plan',
|
|
62
|
-
description: 'Convert a user workflow request into a logical sequence of clear, achievable steps that can be implemented with n8n nodes.',
|
|
63
|
-
schema: planSchema,
|
|
64
|
-
func: async (input) => {
|
|
65
|
-
return { steps: input.steps };
|
|
66
|
-
},
|
|
67
|
-
});
|
|
68
|
-
const humanTemplate = '{prompt}';
|
|
69
|
-
const chatPrompt = prompts_1.ChatPromptTemplate.fromMessages([
|
|
70
|
-
exports.plannerPrompt,
|
|
71
|
-
prompts_1.HumanMessagePromptTemplate.fromTemplate(humanTemplate),
|
|
72
|
-
]);
|
|
73
|
-
const plannerChain = (llm) => {
|
|
74
|
-
if (!llm.bindTools) {
|
|
75
|
-
throw new errors_1.LLMServiceError("LLM doesn't support binding tools", { llmModel: llm._llmType() });
|
|
76
|
-
}
|
|
77
|
-
return chatPrompt
|
|
78
|
-
.pipe(llm.bindTools([generatePlanTool], {
|
|
79
|
-
tool_choice: generatePlanTool.name,
|
|
80
|
-
}))
|
|
81
|
-
.pipe((x) => {
|
|
82
|
-
const toolCall = x.tool_calls?.[0];
|
|
83
|
-
return (toolCall?.args).steps;
|
|
84
|
-
});
|
|
85
|
-
};
|
|
86
|
-
exports.plannerChain = plannerChain;
|
|
87
|
-
//# sourceMappingURL=planner.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"planner.js","sourceRoot":"","sources":["../../src/chains/planner.ts"],"names":[],"mappings":";;;AAEA,uDAAyD;AACzD,qDAAyF;AACzF,iDAA8D;AAC9D,6BAAwB;AAExB,sCAA4C;AAE/B,QAAA,aAAa,GAAG,IAAI,wBAAa,CAC7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;4FA0C2F,CAC3F,CAAC;AAEF,MAAM,UAAU,GAAG,OAAC,CAAC,MAAM,CAAC;IAC3B,KAAK,EAAE,OAAC;SACN,KAAK,CACL,OAAC;SACC,MAAM,EAAE;SACR,QAAQ,CACR,qHAAqH,CACrH,CACF;SACA,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CACR,0KAA0K,CAC1K;CACF,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,IAAI,6BAAqB,CAAC;IAClD,IAAI,EAAE,eAAe;IACrB,WAAW,EACV,4HAA4H;IAC7H,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE;QACrB,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC;IAC/B,CAAC;CACD,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,UAAU,CAAC;AACjC,MAAM,UAAU,GAAG,4BAAkB,CAAC,YAAY,CAAC;IAClD,qBAAa;IACb,oCAA0B,CAAC,YAAY,CAAC,aAAa,CAAC;CACtD,CAAC,CAAC;AAEI,MAAM,YAAY,GAAG,CAAC,GAAkB,EAAE,EAAE;IAClD,IAAI,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACpB,MAAM,IAAI,wBAAe,CAAC,mCAAmC,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;IAC9F,CAAC;IAED,OAAO,UAAU;SACf,IAAI,CACJ,GAAG,CAAC,SAAS,CAAC,CAAC,gBAAgB,CAAC,EAAE;QACjC,WAAW,EAAE,gBAAgB,CAAC,IAAI;KAClC,CAAC,CACF;SACA,IAAI,CAAC,CAAC,CAAiB,EAAE,EAAE;QAC3B,MAAM,QAAQ,GAAG,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC,CAAC;QACnC,OAAO,CAAC,QAAQ,EAAE,IAAmC,CAAA,CAAC,KAAK,CAAC;IAC7D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAfW,QAAA,YAAY,gBAevB"}
|