@n8n/n8n-nodes-langchain 1.92.2 → 1.94.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/credentials/AzureEntraCognitiveServicesOAuth2Api.credentials.js +5 -22
- package/dist/credentials/AzureEntraCognitiveServicesOAuth2Api.credentials.js.map +1 -1
- package/dist/credentials/AzureOpenAiApi.credentials.js +1 -1
- package/dist/credentials/AzureOpenAiApi.credentials.js.map +1 -1
- package/dist/credentials/XAiApi.credentials.js +1 -1
- package/dist/credentials/XAiApi.credentials.js.map +1 -1
- package/dist/known/nodes.json +4 -0
- package/dist/nodes/ToolExecutor/ToolExecutor.node.js +105 -0
- package/dist/nodes/ToolExecutor/ToolExecutor.node.js.map +1 -0
- package/dist/nodes/ToolExecutor/ToolExecutor.node.json +17 -0
- package/dist/nodes/ToolExecutor/utils/convertToSchema.js +64 -0
- package/dist/nodes/ToolExecutor/utils/convertToSchema.js.map +1 -0
- package/dist/nodes/ToolExecutor/utils/executeTool.js +39 -0
- package/dist/nodes/ToolExecutor/utils/executeTool.js.map +1 -0
- package/dist/nodes/agents/Agent/Agent.node.js +19 -394
- package/dist/nodes/agents/Agent/Agent.node.js.map +1 -1
- package/dist/nodes/agents/Agent/V1/AgentV1.node.js +427 -0
- package/dist/nodes/agents/Agent/V1/AgentV1.node.js.map +1 -0
- package/dist/nodes/agents/Agent/V2/AgentV2.node.js +162 -0
- package/dist/nodes/agents/Agent/V2/AgentV2.node.js.map +1 -0
- package/dist/nodes/agents/Agent/agents/ToolsAgent/{description.js → V1/description.js} +2 -34
- package/dist/nodes/agents/Agent/agents/ToolsAgent/V1/description.js.map +1 -0
- package/dist/nodes/agents/Agent/agents/ToolsAgent/V1/execute.js +119 -0
- package/dist/nodes/agents/Agent/agents/ToolsAgent/V1/execute.js.map +1 -0
- package/dist/nodes/agents/Agent/agents/ToolsAgent/V2/description.js +40 -0
- package/dist/nodes/agents/Agent/agents/ToolsAgent/V2/description.js.map +1 -0
- package/dist/nodes/agents/Agent/agents/ToolsAgent/V2/execute.js +139 -0
- package/dist/nodes/agents/Agent/agents/ToolsAgent/V2/execute.js.map +1 -0
- package/dist/nodes/agents/Agent/agents/ToolsAgent/{execute.js → common.js} +7 -97
- package/dist/nodes/agents/Agent/agents/ToolsAgent/common.js.map +1 -0
- package/dist/nodes/agents/Agent/agents/ToolsAgent/options.js +62 -0
- package/dist/nodes/agents/Agent/agents/ToolsAgent/options.js.map +1 -0
- package/dist/nodes/chains/ChainLLM/ChainLlm.node.js +69 -51
- package/dist/nodes/chains/ChainLLM/ChainLlm.node.js.map +1 -1
- package/dist/nodes/chains/ChainLLM/methods/chainExecutor.js +8 -0
- package/dist/nodes/chains/ChainLLM/methods/chainExecutor.js.map +1 -1
- package/dist/nodes/chains/ChainLLM/methods/config.js +5 -0
- package/dist/nodes/chains/ChainLLM/methods/config.js.map +1 -1
- package/dist/nodes/chains/ChainLLM/methods/processItem.js +66 -0
- package/dist/nodes/chains/ChainLLM/methods/processItem.js.map +1 -0
- package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.js +71 -95
- package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.js.map +1 -1
- package/dist/nodes/chains/ChainRetrievalQA/constants.js +49 -0
- package/dist/nodes/chains/ChainRetrievalQA/constants.js.map +1 -0
- package/dist/nodes/chains/ChainRetrievalQA/processItem.js +91 -0
- package/dist/nodes/chains/ChainRetrievalQA/processItem.js.map +1 -0
- package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.js +3 -2
- package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.js.map +1 -1
- package/dist/nodes/chains/ChainSummarization/V2/ChainSummarizationV2.node.js +55 -78
- package/dist/nodes/chains/ChainSummarization/V2/ChainSummarizationV2.node.js.map +1 -1
- package/dist/nodes/chains/ChainSummarization/V2/processItem.js +95 -0
- package/dist/nodes/chains/ChainSummarization/V2/processItem.js.map +1 -0
- package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.js +56 -33
- package/dist/nodes/chains/InformationExtractor/InformationExtractor.node.js.map +1 -1
- package/dist/nodes/chains/InformationExtractor/constants.js +31 -0
- package/dist/nodes/chains/InformationExtractor/constants.js.map +1 -0
- package/dist/nodes/chains/InformationExtractor/processItem.js +50 -0
- package/dist/nodes/chains/InformationExtractor/processItem.js.map +1 -0
- package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.js +198 -71
- package/dist/nodes/chains/SentimentAnalysis/SentimentAnalysis.node.js.map +1 -1
- package/dist/nodes/chains/TextClassifier/TextClassifier.node.js +83 -54
- package/dist/nodes/chains/TextClassifier/TextClassifier.node.js.map +1 -1
- package/dist/nodes/chains/TextClassifier/constants.js +29 -0
- package/dist/nodes/chains/TextClassifier/constants.js.map +1 -0
- package/dist/nodes/chains/TextClassifier/processItem.js +65 -0
- package/dist/nodes/chains/TextClassifier/processItem.js.map +1 -0
- package/dist/nodes/llms/LMChatAnthropic/LmChatAnthropic.node.js +5 -1
- package/dist/nodes/llms/LMChatAnthropic/LmChatAnthropic.node.js.map +1 -1
- package/dist/nodes/llms/LMChatOpenAi/LmChatOpenAi.node.js +4 -1
- package/dist/nodes/llms/LMChatOpenAi/LmChatOpenAi.node.js.map +1 -1
- package/dist/nodes/llms/LMChatOpenAi/methods/loadModels.js +6 -1
- package/dist/nodes/llms/LMChatOpenAi/methods/loadModels.js.map +1 -1
- package/dist/nodes/llms/LMOpenAi/LmOpenAi.node.js +4 -1
- package/dist/nodes/llms/LMOpenAi/LmOpenAi.node.js.map +1 -1
- package/dist/nodes/llms/LmChatAwsBedrock/LmChatAwsBedrock.node.js +4 -0
- package/dist/nodes/llms/LmChatAwsBedrock/LmChatAwsBedrock.node.js.map +1 -1
- package/dist/nodes/llms/LmChatAzureOpenAi/LmChatAzureOpenAi.node.js +4 -0
- package/dist/nodes/llms/LmChatAzureOpenAi/LmChatAzureOpenAi.node.js.map +1 -1
- package/dist/nodes/llms/LmChatAzureOpenAi/credentials/N8nOAuth2TokenCredential.js +16 -2
- package/dist/nodes/llms/LmChatAzureOpenAi/credentials/N8nOAuth2TokenCredential.js.map +1 -1
- package/dist/nodes/llms/LmChatDeepSeek/LmChatDeepSeek.node.js +3 -1
- package/dist/nodes/llms/LmChatDeepSeek/LmChatDeepSeek.node.js.map +1 -1
- package/dist/nodes/llms/LmChatGroq/LmChatGroq.node.js +2 -0
- package/dist/nodes/llms/LmChatGroq/LmChatGroq.node.js.map +1 -1
- package/dist/nodes/llms/LmChatOpenRouter/LmChatOpenRouter.node.js +3 -1
- package/dist/nodes/llms/LmChatOpenRouter/LmChatOpenRouter.node.js.map +1 -1
- package/dist/nodes/llms/LmChatXAiGrok/LmChatXAiGrok.node.js +3 -1
- package/dist/nodes/llms/LmChatXAiGrok/LmChatXAiGrok.node.js.map +1 -1
- package/dist/nodes/mcp/McpClientTool/loadOptions.js +2 -1
- package/dist/nodes/mcp/McpClientTool/loadOptions.js.map +1 -1
- package/dist/nodes/mcp/McpTrigger/McpServer.js +72 -48
- package/dist/nodes/mcp/McpTrigger/McpServer.js.map +1 -1
- package/dist/nodes/mcp/McpTrigger/McpTrigger.node.js +2 -2
- package/dist/nodes/mcp/McpTrigger/McpTrigger.node.js.map +1 -1
- package/dist/nodes/tools/ToolWorkflow/v2/ToolWorkflowV2.node.js +1 -0
- package/dist/nodes/tools/ToolWorkflow/v2/ToolWorkflowV2.node.js.map +1 -1
- package/dist/nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.js +2 -1
- package/dist/nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.js.map +1 -1
- package/dist/nodes/vector_store/VectorStoreMilvus/milvus-icon-white.svg +1 -1
- package/dist/nodes/vendors/OpenAi/actions/image/generate.operation.js +6 -1
- package/dist/nodes/vendors/OpenAi/actions/image/generate.operation.js.map +1 -1
- package/dist/types/credentials.json +3 -3
- package/dist/types/nodes.json +13 -11
- package/dist/utils/helpers.js +1 -1
- package/dist/utils/helpers.js.map +1 -1
- package/dist/utils/httpProxyAgent.js +33 -0
- package/dist/utils/httpProxyAgent.js.map +1 -0
- package/dist/utils/sharedFields.js +29 -0
- package/dist/utils/sharedFields.js.map +1 -1
- package/package.json +13 -11
- package/dist/nodes/agents/Agent/agents/ToolsAgent/description.js.map +0 -1
- package/dist/nodes/agents/Agent/agents/ToolsAgent/execute.js.map +0 -1
|
@@ -22,227 +22,17 @@ __export(Agent_node_exports, {
|
|
|
22
22
|
});
|
|
23
23
|
module.exports = __toCommonJS(Agent_node_exports);
|
|
24
24
|
var import_n8n_workflow = require("n8n-workflow");
|
|
25
|
-
var
|
|
26
|
-
var
|
|
27
|
-
|
|
28
|
-
var import_description2 = require("./agents/OpenAiFunctionsAgent/description");
|
|
29
|
-
var import_execute2 = require("./agents/OpenAiFunctionsAgent/execute");
|
|
30
|
-
var import_description3 = require("./agents/PlanAndExecuteAgent/description");
|
|
31
|
-
var import_execute3 = require("./agents/PlanAndExecuteAgent/execute");
|
|
32
|
-
var import_description4 = require("./agents/ReActAgent/description");
|
|
33
|
-
var import_execute4 = require("./agents/ReActAgent/execute");
|
|
34
|
-
var import_description5 = require("./agents/SqlAgent/description");
|
|
35
|
-
var import_execute5 = require("./agents/SqlAgent/execute");
|
|
36
|
-
var import_description6 = require("./agents/ToolsAgent/description");
|
|
37
|
-
var import_execute6 = require("./agents/ToolsAgent/execute");
|
|
38
|
-
function getInputs(agent, hasOutputParser) {
|
|
39
|
-
const getInputData = (inputs) => {
|
|
40
|
-
const displayNames = {
|
|
41
|
-
ai_languageModel: "Model",
|
|
42
|
-
ai_memory: "Memory",
|
|
43
|
-
ai_tool: "Tool",
|
|
44
|
-
ai_outputParser: "Output Parser"
|
|
45
|
-
};
|
|
46
|
-
return inputs.map(({ type, filter }) => {
|
|
47
|
-
const isModelType = type === "ai_languageModel";
|
|
48
|
-
let displayName = type in displayNames ? displayNames[type] : void 0;
|
|
49
|
-
if (isModelType && ["openAiFunctionsAgent", "toolsAgent", "conversationalAgent"].includes(agent)) {
|
|
50
|
-
displayName = "Chat Model";
|
|
51
|
-
}
|
|
52
|
-
const input = {
|
|
53
|
-
type,
|
|
54
|
-
displayName,
|
|
55
|
-
required: isModelType,
|
|
56
|
-
maxConnections: ["ai_languageModel", "ai_memory", "ai_outputParser"].includes(
|
|
57
|
-
type
|
|
58
|
-
) ? 1 : void 0
|
|
59
|
-
};
|
|
60
|
-
if (filter) {
|
|
61
|
-
input.filter = filter;
|
|
62
|
-
}
|
|
63
|
-
return input;
|
|
64
|
-
});
|
|
65
|
-
};
|
|
66
|
-
let specialInputs = [];
|
|
67
|
-
if (agent === "conversationalAgent") {
|
|
68
|
-
specialInputs = [
|
|
69
|
-
{
|
|
70
|
-
type: "ai_languageModel",
|
|
71
|
-
filter: {
|
|
72
|
-
nodes: [
|
|
73
|
-
"@n8n/n8n-nodes-langchain.lmChatAnthropic",
|
|
74
|
-
"@n8n/n8n-nodes-langchain.lmChatAwsBedrock",
|
|
75
|
-
"@n8n/n8n-nodes-langchain.lmChatGroq",
|
|
76
|
-
"@n8n/n8n-nodes-langchain.lmChatOllama",
|
|
77
|
-
"@n8n/n8n-nodes-langchain.lmChatOpenAi",
|
|
78
|
-
"@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
|
|
79
|
-
"@n8n/n8n-nodes-langchain.lmChatGoogleVertex",
|
|
80
|
-
"@n8n/n8n-nodes-langchain.lmChatMistralCloud",
|
|
81
|
-
"@n8n/n8n-nodes-langchain.lmChatAzureOpenAi",
|
|
82
|
-
"@n8n/n8n-nodes-langchain.lmChatDeepSeek",
|
|
83
|
-
"@n8n/n8n-nodes-langchain.lmChatOpenRouter",
|
|
84
|
-
"@n8n/n8n-nodes-langchain.lmChatXAiGrok"
|
|
85
|
-
]
|
|
86
|
-
}
|
|
87
|
-
},
|
|
88
|
-
{
|
|
89
|
-
type: "ai_memory"
|
|
90
|
-
},
|
|
91
|
-
{
|
|
92
|
-
type: "ai_tool"
|
|
93
|
-
},
|
|
94
|
-
{
|
|
95
|
-
type: "ai_outputParser"
|
|
96
|
-
}
|
|
97
|
-
];
|
|
98
|
-
} else if (agent === "toolsAgent") {
|
|
99
|
-
specialInputs = [
|
|
100
|
-
{
|
|
101
|
-
type: "ai_languageModel",
|
|
102
|
-
filter: {
|
|
103
|
-
nodes: [
|
|
104
|
-
"@n8n/n8n-nodes-langchain.lmChatAnthropic",
|
|
105
|
-
"@n8n/n8n-nodes-langchain.lmChatAzureOpenAi",
|
|
106
|
-
"@n8n/n8n-nodes-langchain.lmChatAwsBedrock",
|
|
107
|
-
"@n8n/n8n-nodes-langchain.lmChatMistralCloud",
|
|
108
|
-
"@n8n/n8n-nodes-langchain.lmChatOllama",
|
|
109
|
-
"@n8n/n8n-nodes-langchain.lmChatOpenAi",
|
|
110
|
-
"@n8n/n8n-nodes-langchain.lmChatGroq",
|
|
111
|
-
"@n8n/n8n-nodes-langchain.lmChatGoogleVertex",
|
|
112
|
-
"@n8n/n8n-nodes-langchain.lmChatGoogleGemini",
|
|
113
|
-
"@n8n/n8n-nodes-langchain.lmChatDeepSeek",
|
|
114
|
-
"@n8n/n8n-nodes-langchain.lmChatOpenRouter",
|
|
115
|
-
"@n8n/n8n-nodes-langchain.lmChatXAiGrok"
|
|
116
|
-
]
|
|
117
|
-
}
|
|
118
|
-
},
|
|
119
|
-
{
|
|
120
|
-
type: "ai_memory"
|
|
121
|
-
},
|
|
122
|
-
{
|
|
123
|
-
type: "ai_tool",
|
|
124
|
-
required: true
|
|
125
|
-
},
|
|
126
|
-
{
|
|
127
|
-
type: "ai_outputParser"
|
|
128
|
-
}
|
|
129
|
-
];
|
|
130
|
-
} else if (agent === "openAiFunctionsAgent") {
|
|
131
|
-
specialInputs = [
|
|
132
|
-
{
|
|
133
|
-
type: "ai_languageModel",
|
|
134
|
-
filter: {
|
|
135
|
-
nodes: [
|
|
136
|
-
"@n8n/n8n-nodes-langchain.lmChatOpenAi",
|
|
137
|
-
"@n8n/n8n-nodes-langchain.lmChatAzureOpenAi"
|
|
138
|
-
]
|
|
139
|
-
}
|
|
140
|
-
},
|
|
141
|
-
{
|
|
142
|
-
type: "ai_memory"
|
|
143
|
-
},
|
|
144
|
-
{
|
|
145
|
-
type: "ai_tool",
|
|
146
|
-
required: true
|
|
147
|
-
},
|
|
148
|
-
{
|
|
149
|
-
type: "ai_outputParser"
|
|
150
|
-
}
|
|
151
|
-
];
|
|
152
|
-
} else if (agent === "reActAgent") {
|
|
153
|
-
specialInputs = [
|
|
154
|
-
{
|
|
155
|
-
type: "ai_languageModel"
|
|
156
|
-
},
|
|
157
|
-
{
|
|
158
|
-
type: "ai_tool"
|
|
159
|
-
},
|
|
160
|
-
{
|
|
161
|
-
type: "ai_outputParser"
|
|
162
|
-
}
|
|
163
|
-
];
|
|
164
|
-
} else if (agent === "sqlAgent") {
|
|
165
|
-
specialInputs = [
|
|
166
|
-
{
|
|
167
|
-
type: "ai_languageModel"
|
|
168
|
-
},
|
|
169
|
-
{
|
|
170
|
-
type: "ai_memory"
|
|
171
|
-
}
|
|
172
|
-
];
|
|
173
|
-
} else if (agent === "planAndExecuteAgent") {
|
|
174
|
-
specialInputs = [
|
|
175
|
-
{
|
|
176
|
-
type: "ai_languageModel"
|
|
177
|
-
},
|
|
178
|
-
{
|
|
179
|
-
type: "ai_tool"
|
|
180
|
-
},
|
|
181
|
-
{
|
|
182
|
-
type: "ai_outputParser"
|
|
183
|
-
}
|
|
184
|
-
];
|
|
185
|
-
}
|
|
186
|
-
if (hasOutputParser === false) {
|
|
187
|
-
specialInputs = specialInputs.filter((input) => input.type !== "ai_outputParser");
|
|
188
|
-
}
|
|
189
|
-
return ["main", ...getInputData(specialInputs)];
|
|
190
|
-
}
|
|
191
|
-
const agentTypeProperty = {
|
|
192
|
-
displayName: "Agent",
|
|
193
|
-
name: "agent",
|
|
194
|
-
type: "options",
|
|
195
|
-
noDataExpression: true,
|
|
196
|
-
// eslint-disable-next-line n8n-nodes-base/node-param-options-type-unsorted-items
|
|
197
|
-
options: [
|
|
198
|
-
{
|
|
199
|
-
name: "Tools Agent",
|
|
200
|
-
value: "toolsAgent",
|
|
201
|
-
description: "Utilizes structured tool schemas for precise and reliable tool selection and execution. Recommended for complex tasks requiring accurate and consistent tool usage, but only usable with models that support tool calling."
|
|
202
|
-
},
|
|
203
|
-
{
|
|
204
|
-
name: "Conversational Agent",
|
|
205
|
-
value: "conversationalAgent",
|
|
206
|
-
description: "Describes tools in the system prompt and parses JSON responses for tool calls. More flexible but potentially less reliable than the Tools Agent. Suitable for simpler interactions or with models not supporting structured schemas."
|
|
207
|
-
},
|
|
208
|
-
{
|
|
209
|
-
name: "OpenAI Functions Agent",
|
|
210
|
-
value: "openAiFunctionsAgent",
|
|
211
|
-
description: "Leverages OpenAI's function calling capabilities to precisely select and execute tools. Excellent for tasks requiring structured outputs when working with OpenAI models."
|
|
212
|
-
},
|
|
213
|
-
{
|
|
214
|
-
name: "Plan and Execute Agent",
|
|
215
|
-
value: "planAndExecuteAgent",
|
|
216
|
-
description: "Creates a high-level plan for complex tasks and then executes each step. Suitable for multi-stage problems or when a strategic approach is needed."
|
|
217
|
-
},
|
|
218
|
-
{
|
|
219
|
-
name: "ReAct Agent",
|
|
220
|
-
value: "reActAgent",
|
|
221
|
-
description: "Combines reasoning and action in an iterative process. Effective for tasks that require careful analysis and step-by-step problem-solving."
|
|
222
|
-
},
|
|
223
|
-
{
|
|
224
|
-
name: "SQL Agent",
|
|
225
|
-
value: "sqlAgent",
|
|
226
|
-
description: "Specializes in interacting with SQL databases. Ideal for data analysis tasks, generating queries, or extracting insights from structured data."
|
|
227
|
-
}
|
|
228
|
-
],
|
|
229
|
-
default: ""
|
|
230
|
-
};
|
|
231
|
-
class Agent {
|
|
25
|
+
var import_AgentV1 = require("./V1/AgentV1.node");
|
|
26
|
+
var import_AgentV2 = require("./V2/AgentV2.node");
|
|
27
|
+
class Agent extends import_n8n_workflow.VersionedNodeType {
|
|
232
28
|
constructor() {
|
|
233
|
-
|
|
29
|
+
const baseDescription = {
|
|
234
30
|
displayName: "AI Agent",
|
|
235
31
|
name: "agent",
|
|
236
32
|
icon: "fa:robot",
|
|
237
33
|
iconColor: "black",
|
|
238
34
|
group: ["transform"],
|
|
239
|
-
version: [1, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9],
|
|
240
35
|
description: "Generates an action plan and executes it. Can use external tools.",
|
|
241
|
-
subtitle: "={{ { toolsAgent: 'Tools Agent', conversationalAgent: 'Conversational Agent', openAiFunctionsAgent: 'OpenAI Functions Agent', reActAgent: 'ReAct Agent', sqlAgent: 'SQL Agent', planAndExecuteAgent: 'Plan and Execute Agent' }[$parameter.agent] }}",
|
|
242
|
-
defaults: {
|
|
243
|
-
name: "AI Agent",
|
|
244
|
-
color: "#404040"
|
|
245
|
-
},
|
|
246
36
|
codex: {
|
|
247
37
|
alias: ["LangChain", "Chat", "Conversational", "Plan and Execute", "ReAct", "Tools"],
|
|
248
38
|
categories: ["AI"],
|
|
@@ -257,187 +47,22 @@ class Agent {
|
|
|
257
47
|
]
|
|
258
48
|
}
|
|
259
49
|
},
|
|
260
|
-
|
|
261
|
-
((agent, hasOutputParser) => {
|
|
262
|
-
${getInputs.toString()};
|
|
263
|
-
return getInputs(agent, hasOutputParser)
|
|
264
|
-
})($parameter.agent, $parameter.hasOutputParser === undefined || $parameter.hasOutputParser === true)
|
|
265
|
-
}}`,
|
|
266
|
-
outputs: [import_n8n_workflow.NodeConnectionTypes.Main],
|
|
267
|
-
credentials: [
|
|
268
|
-
{
|
|
269
|
-
// eslint-disable-next-line n8n-nodes-base/node-class-description-credentials-name-unsuffixed
|
|
270
|
-
name: "mySql",
|
|
271
|
-
required: true,
|
|
272
|
-
testedBy: "mysqlConnectionTest",
|
|
273
|
-
displayOptions: {
|
|
274
|
-
show: {
|
|
275
|
-
agent: ["sqlAgent"],
|
|
276
|
-
"/dataSource": ["mysql"]
|
|
277
|
-
}
|
|
278
|
-
}
|
|
279
|
-
},
|
|
280
|
-
{
|
|
281
|
-
name: "postgres",
|
|
282
|
-
required: true,
|
|
283
|
-
displayOptions: {
|
|
284
|
-
show: {
|
|
285
|
-
agent: ["sqlAgent"],
|
|
286
|
-
"/dataSource": ["postgres"]
|
|
287
|
-
}
|
|
288
|
-
}
|
|
289
|
-
}
|
|
290
|
-
],
|
|
291
|
-
properties: [
|
|
292
|
-
{
|
|
293
|
-
displayName: 'Tip: Get a feel for agents with our quick <a href="https://docs.n8n.io/advanced-ai/intro-tutorial/" target="_blank">tutorial</a> or see an <a href="/templates/1954" target="_blank">example</a> of how this node works',
|
|
294
|
-
name: "notice_tip",
|
|
295
|
-
type: "notice",
|
|
296
|
-
default: "",
|
|
297
|
-
displayOptions: {
|
|
298
|
-
show: {
|
|
299
|
-
agent: ["conversationalAgent", "toolsAgent"]
|
|
300
|
-
}
|
|
301
|
-
}
|
|
302
|
-
},
|
|
303
|
-
{
|
|
304
|
-
displayName: "This node is using Agent that has been deprecated. Please switch to using 'Tools Agent' instead.",
|
|
305
|
-
name: "deprecated",
|
|
306
|
-
type: "notice",
|
|
307
|
-
default: "",
|
|
308
|
-
displayOptions: {
|
|
309
|
-
show: {
|
|
310
|
-
agent: [
|
|
311
|
-
"conversationalAgent",
|
|
312
|
-
"openAiFunctionsAgent",
|
|
313
|
-
"planAndExecuteAgent",
|
|
314
|
-
"reActAgent",
|
|
315
|
-
"sqlAgent"
|
|
316
|
-
]
|
|
317
|
-
}
|
|
318
|
-
}
|
|
319
|
-
},
|
|
320
|
-
// Make Conversational Agent the default agent for versions 1.5 and below
|
|
321
|
-
{
|
|
322
|
-
...agentTypeProperty,
|
|
323
|
-
options: agentTypeProperty?.options?.filter(
|
|
324
|
-
(o) => "value" in o && o.value !== "toolsAgent"
|
|
325
|
-
),
|
|
326
|
-
displayOptions: { show: { "@version": [{ _cnd: { lte: 1.5 } }] } },
|
|
327
|
-
default: "conversationalAgent"
|
|
328
|
-
},
|
|
329
|
-
// Make Tools Agent the default agent for versions 1.6 and 1.7
|
|
330
|
-
{
|
|
331
|
-
...agentTypeProperty,
|
|
332
|
-
displayOptions: { show: { "@version": [{ _cnd: { between: { from: 1.6, to: 1.7 } } }] } },
|
|
333
|
-
default: "toolsAgent"
|
|
334
|
-
},
|
|
335
|
-
// Make Tools Agent the only agent option for versions 1.8 and above
|
|
336
|
-
{
|
|
337
|
-
...agentTypeProperty,
|
|
338
|
-
type: "hidden",
|
|
339
|
-
displayOptions: { show: { "@version": [{ _cnd: { gte: 1.8 } }] } },
|
|
340
|
-
default: "toolsAgent"
|
|
341
|
-
},
|
|
342
|
-
{
|
|
343
|
-
...import_descriptions.promptTypeOptions,
|
|
344
|
-
displayOptions: {
|
|
345
|
-
hide: {
|
|
346
|
-
"@version": [{ _cnd: { lte: 1.2 } }],
|
|
347
|
-
agent: ["sqlAgent"]
|
|
348
|
-
}
|
|
349
|
-
}
|
|
350
|
-
},
|
|
351
|
-
{
|
|
352
|
-
...import_descriptions.textFromPreviousNode,
|
|
353
|
-
displayOptions: {
|
|
354
|
-
show: { promptType: ["auto"], "@version": [{ _cnd: { gte: 1.7 } }] },
|
|
355
|
-
// SQL Agent has data source and credentials parameters so we need to include this input there manually
|
|
356
|
-
// to preserve the order
|
|
357
|
-
hide: {
|
|
358
|
-
agent: ["sqlAgent"]
|
|
359
|
-
}
|
|
360
|
-
}
|
|
361
|
-
},
|
|
362
|
-
{
|
|
363
|
-
...import_descriptions.textInput,
|
|
364
|
-
displayOptions: {
|
|
365
|
-
show: {
|
|
366
|
-
promptType: ["define"]
|
|
367
|
-
},
|
|
368
|
-
hide: {
|
|
369
|
-
agent: ["sqlAgent"]
|
|
370
|
-
}
|
|
371
|
-
}
|
|
372
|
-
},
|
|
373
|
-
{
|
|
374
|
-
displayName: "For more reliable structured output parsing, consider using the Tools agent",
|
|
375
|
-
name: "notice",
|
|
376
|
-
type: "notice",
|
|
377
|
-
default: "",
|
|
378
|
-
displayOptions: {
|
|
379
|
-
show: {
|
|
380
|
-
hasOutputParser: [true],
|
|
381
|
-
agent: [
|
|
382
|
-
"conversationalAgent",
|
|
383
|
-
"reActAgent",
|
|
384
|
-
"planAndExecuteAgent",
|
|
385
|
-
"openAiFunctionsAgent"
|
|
386
|
-
]
|
|
387
|
-
}
|
|
388
|
-
}
|
|
389
|
-
},
|
|
390
|
-
{
|
|
391
|
-
displayName: "Require Specific Output Format",
|
|
392
|
-
name: "hasOutputParser",
|
|
393
|
-
type: "boolean",
|
|
394
|
-
default: false,
|
|
395
|
-
noDataExpression: true,
|
|
396
|
-
displayOptions: {
|
|
397
|
-
hide: {
|
|
398
|
-
"@version": [{ _cnd: { lte: 1.2 } }],
|
|
399
|
-
agent: ["sqlAgent"]
|
|
400
|
-
}
|
|
401
|
-
}
|
|
402
|
-
},
|
|
403
|
-
{
|
|
404
|
-
displayName: `Connect an <a data-action='openSelectiveNodeCreator' data-action-parameter-connectiontype='${import_n8n_workflow.NodeConnectionTypes.AiOutputParser}'>output parser</a> on the canvas to specify the output format you require`,
|
|
405
|
-
name: "notice",
|
|
406
|
-
type: "notice",
|
|
407
|
-
default: "",
|
|
408
|
-
displayOptions: {
|
|
409
|
-
show: {
|
|
410
|
-
hasOutputParser: [true],
|
|
411
|
-
agent: ["toolsAgent"]
|
|
412
|
-
}
|
|
413
|
-
}
|
|
414
|
-
},
|
|
415
|
-
...import_description6.toolsAgentProperties,
|
|
416
|
-
...import_description.conversationalAgentProperties,
|
|
417
|
-
...import_description2.openAiFunctionsAgentProperties,
|
|
418
|
-
...import_description4.reActAgentAgentProperties,
|
|
419
|
-
...import_description5.sqlAgentAgentProperties,
|
|
420
|
-
...import_description3.planAndExecuteAgentProperties
|
|
421
|
-
]
|
|
50
|
+
defaultVersion: 2
|
|
422
51
|
};
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
|
|
433
|
-
|
|
434
|
-
|
|
435
|
-
}
|
|
436
|
-
|
|
437
|
-
} else if (agentType === "planAndExecuteAgent") {
|
|
438
|
-
return await import_execute3.planAndExecuteAgentExecute.call(this, nodeVersion);
|
|
439
|
-
}
|
|
440
|
-
throw new import_n8n_workflow.NodeOperationError(this.getNode(), `The agent type "${agentType}" is not supported`);
|
|
52
|
+
const nodeVersions = {
|
|
53
|
+
1: new import_AgentV1.AgentV1(baseDescription),
|
|
54
|
+
1.1: new import_AgentV1.AgentV1(baseDescription),
|
|
55
|
+
1.2: new import_AgentV1.AgentV1(baseDescription),
|
|
56
|
+
1.3: new import_AgentV1.AgentV1(baseDescription),
|
|
57
|
+
1.4: new import_AgentV1.AgentV1(baseDescription),
|
|
58
|
+
1.5: new import_AgentV1.AgentV1(baseDescription),
|
|
59
|
+
1.6: new import_AgentV1.AgentV1(baseDescription),
|
|
60
|
+
1.7: new import_AgentV1.AgentV1(baseDescription),
|
|
61
|
+
1.8: new import_AgentV1.AgentV1(baseDescription),
|
|
62
|
+
1.9: new import_AgentV1.AgentV1(baseDescription),
|
|
63
|
+
2: new import_AgentV2.AgentV2(baseDescription)
|
|
64
|
+
};
|
|
65
|
+
super(nodeVersions, baseDescription);
|
|
441
66
|
}
|
|
442
67
|
}
|
|
443
68
|
// Annotate the CommonJS export names for ESM import in node:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../nodes/agents/Agent/Agent.node.ts"],"sourcesContent":["import { NodeConnectionTypes, NodeOperationError } from 'n8n-workflow';\nimport type {\n\tINodeInputConfiguration,\n\tINodeInputFilter,\n\tIExecuteFunctions,\n\tINodeExecutionData,\n\tINodeType,\n\tINodeTypeDescription,\n\tINodeProperties,\n\tNodeConnectionType,\n} from 'n8n-workflow';\n\nimport { promptTypeOptions, textFromPreviousNode, textInput } from '@utils/descriptions';\n\nimport { conversationalAgentProperties } from './agents/ConversationalAgent/description';\nimport { conversationalAgentExecute } from './agents/ConversationalAgent/execute';\nimport { openAiFunctionsAgentProperties } from './agents/OpenAiFunctionsAgent/description';\nimport { openAiFunctionsAgentExecute } from './agents/OpenAiFunctionsAgent/execute';\nimport { planAndExecuteAgentProperties } from './agents/PlanAndExecuteAgent/description';\nimport { planAndExecuteAgentExecute } from './agents/PlanAndExecuteAgent/execute';\nimport { reActAgentAgentProperties } from './agents/ReActAgent/description';\nimport { reActAgentAgentExecute } from './agents/ReActAgent/execute';\nimport { sqlAgentAgentProperties } from './agents/SqlAgent/description';\nimport { sqlAgentAgentExecute } from './agents/SqlAgent/execute';\nimport { toolsAgentProperties } from './agents/ToolsAgent/description';\nimport { toolsAgentExecute } from './agents/ToolsAgent/execute';\n\n// Function used in the inputs expression to figure out which inputs to\n// display based on the agent type\nfunction getInputs(\n\tagent:\n\t\t| 'toolsAgent'\n\t\t| 'conversationalAgent'\n\t\t| 'openAiFunctionsAgent'\n\t\t| 'planAndExecuteAgent'\n\t\t| 'reActAgent'\n\t\t| 'sqlAgent',\n\thasOutputParser?: boolean,\n): Array<NodeConnectionType | INodeInputConfiguration> {\n\tinterface SpecialInput {\n\t\ttype: NodeConnectionType;\n\t\tfilter?: INodeInputFilter;\n\t\trequired?: boolean;\n\t}\n\n\tconst getInputData = (\n\t\tinputs: SpecialInput[],\n\t): Array<NodeConnectionType | INodeInputConfiguration> => {\n\t\tconst displayNames: { [key: string]: string } = {\n\t\t\tai_languageModel: 'Model',\n\t\t\tai_memory: 'Memory',\n\t\t\tai_tool: 'Tool',\n\t\t\tai_outputParser: 'Output Parser',\n\t\t};\n\n\t\treturn inputs.map(({ type, filter }) => {\n\t\t\tconst isModelType = type === ('ai_languageModel' as NodeConnectionType);\n\t\t\tlet displayName = type in displayNames ? displayNames[type] : undefined;\n\t\t\tif (\n\t\t\t\tisModelType &&\n\t\t\t\t['openAiFunctionsAgent', 'toolsAgent', 'conversationalAgent'].includes(agent)\n\t\t\t) {\n\t\t\t\tdisplayName = 'Chat Model';\n\t\t\t}\n\t\t\tconst input: INodeInputConfiguration = {\n\t\t\t\ttype,\n\t\t\t\tdisplayName,\n\t\t\t\trequired: isModelType,\n\t\t\t\tmaxConnections: ['ai_languageModel', 'ai_memory', 'ai_outputParser'].includes(\n\t\t\t\t\ttype as NodeConnectionType,\n\t\t\t\t)\n\t\t\t\t\t? 1\n\t\t\t\t\t: undefined,\n\t\t\t};\n\n\t\t\tif (filter) {\n\t\t\t\tinput.filter = filter;\n\t\t\t}\n\n\t\t\treturn input;\n\t\t});\n\t};\n\n\tlet specialInputs: SpecialInput[] = [];\n\n\tif (agent === 'conversationalAgent') {\n\t\tspecialInputs = [\n\t\t\t{\n\t\t\t\ttype: 'ai_languageModel',\n\t\t\t\tfilter: {\n\t\t\t\t\tnodes: [\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatAnthropic',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatAwsBedrock',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatGroq',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatOllama',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatOpenAi',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatGoogleGemini',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatGoogleVertex',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatMistralCloud',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatAzureOpenAi',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatDeepSeek',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatOpenRouter',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatXAiGrok',\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_memory',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_tool',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_outputParser',\n\t\t\t},\n\t\t];\n\t} else if (agent === 'toolsAgent') {\n\t\tspecialInputs = [\n\t\t\t{\n\t\t\t\ttype: 'ai_languageModel',\n\t\t\t\tfilter: {\n\t\t\t\t\tnodes: [\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatAnthropic',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatAzureOpenAi',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatAwsBedrock',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatMistralCloud',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatOllama',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatOpenAi',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatGroq',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatGoogleVertex',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatGoogleGemini',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatDeepSeek',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatOpenRouter',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatXAiGrok',\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_memory',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_tool',\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_outputParser',\n\t\t\t},\n\t\t];\n\t} else if (agent === 'openAiFunctionsAgent') {\n\t\tspecialInputs = [\n\t\t\t{\n\t\t\t\ttype: 'ai_languageModel',\n\t\t\t\tfilter: {\n\t\t\t\t\tnodes: [\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatOpenAi',\n\t\t\t\t\t\t'@n8n/n8n-nodes-langchain.lmChatAzureOpenAi',\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_memory',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_tool',\n\t\t\t\trequired: true,\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_outputParser',\n\t\t\t},\n\t\t];\n\t} else if (agent === 'reActAgent') {\n\t\tspecialInputs = [\n\t\t\t{\n\t\t\t\ttype: 'ai_languageModel',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_tool',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_outputParser',\n\t\t\t},\n\t\t];\n\t} else if (agent === 'sqlAgent') {\n\t\tspecialInputs = [\n\t\t\t{\n\t\t\t\ttype: 'ai_languageModel',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_memory',\n\t\t\t},\n\t\t];\n\t} else if (agent === 'planAndExecuteAgent') {\n\t\tspecialInputs = [\n\t\t\t{\n\t\t\t\ttype: 'ai_languageModel',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_tool',\n\t\t\t},\n\t\t\t{\n\t\t\t\ttype: 'ai_outputParser',\n\t\t\t},\n\t\t];\n\t}\n\n\tif (hasOutputParser === false) {\n\t\tspecialInputs = specialInputs.filter((input) => input.type !== 'ai_outputParser');\n\t}\n\treturn ['main', ...getInputData(specialInputs)];\n}\n\nconst agentTypeProperty: INodeProperties = {\n\tdisplayName: 'Agent',\n\tname: 'agent',\n\ttype: 'options',\n\tnoDataExpression: true,\n\t// eslint-disable-next-line n8n-nodes-base/node-param-options-type-unsorted-items\n\toptions: [\n\t\t{\n\t\t\tname: 'Tools Agent',\n\t\t\tvalue: 'toolsAgent',\n\t\t\tdescription:\n\t\t\t\t'Utilizes structured tool schemas for precise and reliable tool selection and execution. Recommended for complex tasks requiring accurate and consistent tool usage, but only usable with models that support tool calling.',\n\t\t},\n\t\t{\n\t\t\tname: 'Conversational Agent',\n\t\t\tvalue: 'conversationalAgent',\n\t\t\tdescription:\n\t\t\t\t'Describes tools in the system prompt and parses JSON responses for tool calls. More flexible but potentially less reliable than the Tools Agent. Suitable for simpler interactions or with models not supporting structured schemas.',\n\t\t},\n\t\t{\n\t\t\tname: 'OpenAI Functions Agent',\n\t\t\tvalue: 'openAiFunctionsAgent',\n\t\t\tdescription:\n\t\t\t\t\"Leverages OpenAI's function calling capabilities to precisely select and execute tools. Excellent for tasks requiring structured outputs when working with OpenAI models.\",\n\t\t},\n\t\t{\n\t\t\tname: 'Plan and Execute Agent',\n\t\t\tvalue: 'planAndExecuteAgent',\n\t\t\tdescription:\n\t\t\t\t'Creates a high-level plan for complex tasks and then executes each step. Suitable for multi-stage problems or when a strategic approach is needed.',\n\t\t},\n\t\t{\n\t\t\tname: 'ReAct Agent',\n\t\t\tvalue: 'reActAgent',\n\t\t\tdescription:\n\t\t\t\t'Combines reasoning and action in an iterative process. Effective for tasks that require careful analysis and step-by-step problem-solving.',\n\t\t},\n\t\t{\n\t\t\tname: 'SQL Agent',\n\t\t\tvalue: 'sqlAgent',\n\t\t\tdescription:\n\t\t\t\t'Specializes in interacting with SQL databases. Ideal for data analysis tasks, generating queries, or extracting insights from structured data.',\n\t\t},\n\t],\n\tdefault: '',\n};\n\nexport class Agent implements INodeType {\n\tdescription: INodeTypeDescription = {\n\t\tdisplayName: 'AI Agent',\n\t\tname: 'agent',\n\t\ticon: 'fa:robot',\n\t\ticonColor: 'black',\n\t\tgroup: ['transform'],\n\t\tversion: [1, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.7, 1.8, 1.9],\n\t\tdescription: 'Generates an action plan and executes it. Can use external tools.',\n\t\tsubtitle:\n\t\t\t\"={{ {\ttoolsAgent: 'Tools Agent', conversationalAgent: 'Conversational Agent', openAiFunctionsAgent: 'OpenAI Functions Agent', reActAgent: 'ReAct Agent', sqlAgent: 'SQL Agent', planAndExecuteAgent: 'Plan and Execute Agent' }[$parameter.agent] }}\",\n\t\tdefaults: {\n\t\t\tname: 'AI Agent',\n\t\t\tcolor: '#404040',\n\t\t},\n\t\tcodex: {\n\t\t\talias: ['LangChain', 'Chat', 'Conversational', 'Plan and Execute', 'ReAct', 'Tools'],\n\t\t\tcategories: ['AI'],\n\t\t\tsubcategories: {\n\t\t\t\tAI: ['Agents', 'Root Nodes'],\n\t\t\t},\n\t\t\tresources: {\n\t\t\t\tprimaryDocumentation: [\n\t\t\t\t\t{\n\t\t\t\t\t\turl: 'https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/',\n\t\t\t\t\t},\n\t\t\t\t],\n\t\t\t},\n\t\t},\n\t\tinputs: `={{\n\t\t\t((agent, hasOutputParser) => {\n\t\t\t\t${getInputs.toString()};\n\t\t\t\treturn getInputs(agent, hasOutputParser)\n\t\t\t})($parameter.agent, $parameter.hasOutputParser === undefined || $parameter.hasOutputParser === true)\n\t\t}}`,\n\t\toutputs: [NodeConnectionTypes.Main],\n\t\tcredentials: [\n\t\t\t{\n\t\t\t\t// eslint-disable-next-line n8n-nodes-base/node-class-description-credentials-name-unsuffixed\n\t\t\t\tname: 'mySql',\n\t\t\t\trequired: true,\n\t\t\t\ttestedBy: 'mysqlConnectionTest',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tagent: ['sqlAgent'],\n\t\t\t\t\t\t'/dataSource': ['mysql'],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tname: 'postgres',\n\t\t\t\trequired: true,\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tagent: ['sqlAgent'],\n\t\t\t\t\t\t'/dataSource': ['postgres'],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t],\n\t\tproperties: [\n\t\t\t{\n\t\t\t\tdisplayName:\n\t\t\t\t\t'Tip: Get a feel for agents with our quick <a href=\"https://docs.n8n.io/advanced-ai/intro-tutorial/\" target=\"_blank\">tutorial</a> or see an <a href=\"/templates/1954\" target=\"_blank\">example</a> of how this node works',\n\t\t\t\tname: 'notice_tip',\n\t\t\t\ttype: 'notice',\n\t\t\t\tdefault: '',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tagent: ['conversationalAgent', 'toolsAgent'],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName:\n\t\t\t\t\t\"This node is using Agent that has been deprecated. Please switch to using 'Tools Agent' instead.\",\n\t\t\t\tname: 'deprecated',\n\t\t\t\ttype: 'notice',\n\t\t\t\tdefault: '',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tagent: [\n\t\t\t\t\t\t\t'conversationalAgent',\n\t\t\t\t\t\t\t'openAiFunctionsAgent',\n\t\t\t\t\t\t\t'planAndExecuteAgent',\n\t\t\t\t\t\t\t'reActAgent',\n\t\t\t\t\t\t\t'sqlAgent',\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t// Make Conversational Agent the default agent for versions 1.5 and below\n\t\t\t{\n\t\t\t\t...agentTypeProperty,\n\t\t\t\toptions: agentTypeProperty?.options?.filter(\n\t\t\t\t\t(o) => 'value' in o && o.value !== 'toolsAgent',\n\t\t\t\t),\n\t\t\t\tdisplayOptions: { show: { '@version': [{ _cnd: { lte: 1.5 } }] } },\n\t\t\t\tdefault: 'conversationalAgent',\n\t\t\t},\n\t\t\t// Make Tools Agent the default agent for versions 1.6 and 1.7\n\t\t\t{\n\t\t\t\t...agentTypeProperty,\n\t\t\t\tdisplayOptions: { show: { '@version': [{ _cnd: { between: { from: 1.6, to: 1.7 } } }] } },\n\t\t\t\tdefault: 'toolsAgent',\n\t\t\t},\n\t\t\t// Make Tools Agent the only agent option for versions 1.8 and above\n\t\t\t{\n\t\t\t\t...agentTypeProperty,\n\t\t\t\ttype: 'hidden',\n\t\t\t\tdisplayOptions: { show: { '@version': [{ _cnd: { gte: 1.8 } }] } },\n\t\t\t\tdefault: 'toolsAgent',\n\t\t\t},\n\t\t\t{\n\t\t\t\t...promptTypeOptions,\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\thide: {\n\t\t\t\t\t\t'@version': [{ _cnd: { lte: 1.2 } }],\n\t\t\t\t\t\tagent: ['sqlAgent'],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\t...textFromPreviousNode,\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: { promptType: ['auto'], '@version': [{ _cnd: { gte: 1.7 } }] },\n\t\t\t\t\t// SQL Agent has data source and credentials parameters so we need to include this input there manually\n\t\t\t\t\t// to preserve the order\n\t\t\t\t\thide: {\n\t\t\t\t\t\tagent: ['sqlAgent'],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\t...textInput,\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\tpromptType: ['define'],\n\t\t\t\t\t},\n\t\t\t\t\thide: {\n\t\t\t\t\t\tagent: ['sqlAgent'],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName: 'For more reliable structured output parsing, consider using the Tools agent',\n\t\t\t\tname: 'notice',\n\t\t\t\ttype: 'notice',\n\t\t\t\tdefault: '',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\thasOutputParser: [true],\n\t\t\t\t\t\tagent: [\n\t\t\t\t\t\t\t'conversationalAgent',\n\t\t\t\t\t\t\t'reActAgent',\n\t\t\t\t\t\t\t'planAndExecuteAgent',\n\t\t\t\t\t\t\t'openAiFunctionsAgent',\n\t\t\t\t\t\t],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName: 'Require Specific Output Format',\n\t\t\t\tname: 'hasOutputParser',\n\t\t\t\ttype: 'boolean',\n\t\t\t\tdefault: false,\n\t\t\t\tnoDataExpression: true,\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\thide: {\n\t\t\t\t\t\t'@version': [{ _cnd: { lte: 1.2 } }],\n\t\t\t\t\t\tagent: ['sqlAgent'],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\t\t\t{\n\t\t\t\tdisplayName: `Connect an <a data-action='openSelectiveNodeCreator' data-action-parameter-connectiontype='${NodeConnectionTypes.AiOutputParser}'>output parser</a> on the canvas to specify the output format you require`,\n\t\t\t\tname: 'notice',\n\t\t\t\ttype: 'notice',\n\t\t\t\tdefault: '',\n\t\t\t\tdisplayOptions: {\n\t\t\t\t\tshow: {\n\t\t\t\t\t\thasOutputParser: [true],\n\t\t\t\t\t\tagent: ['toolsAgent'],\n\t\t\t\t\t},\n\t\t\t\t},\n\t\t\t},\n\n\t\t\t...toolsAgentProperties,\n\t\t\t...conversationalAgentProperties,\n\t\t\t...openAiFunctionsAgentProperties,\n\t\t\t...reActAgentAgentProperties,\n\t\t\t...sqlAgentAgentProperties,\n\t\t\t...planAndExecuteAgentProperties,\n\t\t],\n\t};\n\n\tasync execute(this: IExecuteFunctions): Promise<INodeExecutionData[][]> {\n\t\tconst agentType = this.getNodeParameter('agent', 0, '') as string;\n\t\tconst nodeVersion = this.getNode().typeVersion;\n\n\t\tif (agentType === 'conversationalAgent') {\n\t\t\treturn await conversationalAgentExecute.call(this, nodeVersion);\n\t\t} else if (agentType === 'toolsAgent') {\n\t\t\treturn await toolsAgentExecute.call(this);\n\t\t} else if (agentType === 'openAiFunctionsAgent') {\n\t\t\treturn await openAiFunctionsAgentExecute.call(this, nodeVersion);\n\t\t} else if (agentType === 'reActAgent') {\n\t\t\treturn await reActAgentAgentExecute.call(this, nodeVersion);\n\t\t} else if (agentType === 'sqlAgent') {\n\t\t\treturn await sqlAgentAgentExecute.call(this);\n\t\t} else if (agentType === 'planAndExecuteAgent') {\n\t\t\treturn await planAndExecuteAgentExecute.call(this, nodeVersion);\n\t\t}\n\n\t\tthrow new NodeOperationError(this.getNode(), `The agent type \"${agentType}\" is not supported`);\n\t}\n}\n"],"mappings":"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","names":["import_description","import_execute"]}
|
|
1
|
+
{"version":3,"sources":["../../../../nodes/agents/Agent/Agent.node.ts"],"sourcesContent":["import type { INodeTypeBaseDescription, IVersionedNodeType } from 'n8n-workflow';\nimport { VersionedNodeType } from 'n8n-workflow';\n\nimport { AgentV1 } from './V1/AgentV1.node';\nimport { AgentV2 } from './V2/AgentV2.node';\n\nexport class Agent extends VersionedNodeType {\n\tconstructor() {\n\t\tconst baseDescription: INodeTypeBaseDescription = {\n\t\t\tdisplayName: 'AI Agent',\n\t\t\tname: 'agent',\n\t\t\ticon: 'fa:robot',\n\t\t\ticonColor: 'black',\n\t\t\tgroup: ['transform'],\n\t\t\tdescription: 'Generates an action plan and executes it. Can use external tools.',\n\t\t\tcodex: {\n\t\t\t\talias: ['LangChain', 'Chat', 'Conversational', 'Plan and Execute', 'ReAct', 'Tools'],\n\t\t\t\tcategories: ['AI'],\n\t\t\t\tsubcategories: {\n\t\t\t\t\tAI: ['Agents', 'Root Nodes'],\n\t\t\t\t},\n\t\t\t\tresources: {\n\t\t\t\t\tprimaryDocumentation: [\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\turl: 'https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.agent/',\n\t\t\t\t\t\t},\n\t\t\t\t\t],\n\t\t\t\t},\n\t\t\t},\n\t\t\tdefaultVersion: 2,\n\t\t};\n\n\t\tconst nodeVersions: IVersionedNodeType['nodeVersions'] = {\n\t\t\t1: new AgentV1(baseDescription),\n\t\t\t1.1: new AgentV1(baseDescription),\n\t\t\t1.2: new AgentV1(baseDescription),\n\t\t\t1.3: new AgentV1(baseDescription),\n\t\t\t1.4: new AgentV1(baseDescription),\n\t\t\t1.5: new AgentV1(baseDescription),\n\t\t\t1.6: new AgentV1(baseDescription),\n\t\t\t1.7: new AgentV1(baseDescription),\n\t\t\t1.8: new AgentV1(baseDescription),\n\t\t\t1.9: new AgentV1(baseDescription),\n\t\t\t2: new AgentV2(baseDescription),\n\t\t};\n\n\t\tsuper(nodeVersions, baseDescription);\n\t}\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,0BAAkC;AAElC,qBAAwB;AACxB,qBAAwB;AAEjB,MAAM,cAAc,sCAAkB;AAAA,EAC5C,cAAc;AACb,UAAM,kBAA4C;AAAA,MACjD,aAAa;AAAA,MACb,MAAM;AAAA,MACN,MAAM;AAAA,MACN,WAAW;AAAA,MACX,OAAO,CAAC,WAAW;AAAA,MACnB,aAAa;AAAA,MACb,OAAO;AAAA,QACN,OAAO,CAAC,aAAa,QAAQ,kBAAkB,oBAAoB,SAAS,OAAO;AAAA,QACnF,YAAY,CAAC,IAAI;AAAA,QACjB,eAAe;AAAA,UACd,IAAI,CAAC,UAAU,YAAY;AAAA,QAC5B;AAAA,QACA,WAAW;AAAA,UACV,sBAAsB;AAAA,YACrB;AAAA,cACC,KAAK;AAAA,YACN;AAAA,UACD;AAAA,QACD;AAAA,MACD;AAAA,MACA,gBAAgB;AAAA,IACjB;AAEA,UAAM,eAAmD;AAAA,MACxD,GAAG,IAAI,uBAAQ,eAAe;AAAA,MAC9B,KAAK,IAAI,uBAAQ,eAAe;AAAA,MAChC,KAAK,IAAI,uBAAQ,eAAe;AAAA,MAChC,KAAK,IAAI,uBAAQ,eAAe;AAAA,MAChC,KAAK,IAAI,uBAAQ,eAAe;AAAA,MAChC,KAAK,IAAI,uBAAQ,eAAe;AAAA,MAChC,KAAK,IAAI,uBAAQ,eAAe;AAAA,MAChC,KAAK,IAAI,uBAAQ,eAAe;AAAA,MAChC,KAAK,IAAI,uBAAQ,eAAe;AAAA,MAChC,KAAK,IAAI,uBAAQ,eAAe;AAAA,MAChC,GAAG,IAAI,uBAAQ,eAAe;AAAA,IAC/B;AAEA,UAAM,cAAc,eAAe;AAAA,EACpC;AACD;","names":[]}
|