@n8n/n8n-nodes-langchain 1.73.0 → 1.74.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 (96) hide show
  1. package/LICENSE.md +5 -3
  2. package/dist/build.tsbuildinfo +1 -1
  3. package/dist/nodes/chains/ChainLLM/ChainLlm.node.js +1 -0
  4. package/dist/nodes/chains/ChainLLM/ChainLlm.node.js.map +1 -1
  5. package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.js +1 -0
  6. package/dist/nodes/chains/ChainRetrievalQA/ChainRetrievalQa.node.js.map +1 -1
  7. package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.js +1 -0
  8. package/dist/nodes/chains/ChainSummarization/ChainSummarization.node.js.map +1 -1
  9. package/dist/nodes/document_loaders/DocumentDefaultDataLoader/DocumentDefaultDataLoader.node.js +1 -1
  10. package/dist/nodes/document_loaders/DocumentDefaultDataLoader/DocumentDefaultDataLoader.node.js.map +1 -1
  11. package/dist/nodes/llms/LmChatGoogleVertex/LmChatGoogleVertex.node.js +2 -0
  12. package/dist/nodes/llms/LmChatGoogleVertex/LmChatGoogleVertex.node.js.map +1 -1
  13. package/dist/nodes/memory/MemoryBufferWindow/MemoryBufferWindow.node.js +1 -0
  14. package/dist/nodes/memory/MemoryBufferWindow/MemoryBufferWindow.node.js.map +1 -1
  15. package/dist/nodes/memory/MemoryChatRetriever/MemoryChatRetriever.node.js +1 -0
  16. package/dist/nodes/memory/MemoryChatRetriever/MemoryChatRetriever.node.js.map +1 -1
  17. package/dist/nodes/memory/MemoryMotorhead/MemoryMotorhead.node.js +1 -0
  18. package/dist/nodes/memory/MemoryMotorhead/MemoryMotorhead.node.js.map +1 -1
  19. package/dist/nodes/output_parser/OutputParserAutofixing/OutputParserAutofixing.node.js +1 -0
  20. package/dist/nodes/output_parser/OutputParserAutofixing/OutputParserAutofixing.node.js.map +1 -1
  21. package/dist/nodes/output_parser/OutputParserItemList/OutputParserItemList.node.js +1 -0
  22. package/dist/nodes/output_parser/OutputParserItemList/OutputParserItemList.node.js.map +1 -1
  23. package/dist/nodes/output_parser/OutputParserStructured/OutputParserStructured.node.js +1 -0
  24. package/dist/nodes/output_parser/OutputParserStructured/OutputParserStructured.node.js.map +1 -1
  25. package/dist/nodes/retrievers/RetrieverContextualCompression/RetrieverContextualCompression.node.js +1 -0
  26. package/dist/nodes/retrievers/RetrieverContextualCompression/RetrieverContextualCompression.node.js.map +1 -1
  27. package/dist/nodes/retrievers/RetrieverMultiQuery/RetrieverMultiQuery.node.js +1 -0
  28. package/dist/nodes/retrievers/RetrieverMultiQuery/RetrieverMultiQuery.node.js.map +1 -1
  29. package/dist/nodes/retrievers/RetrieverVectorStore/RetrieverVectorStore.node.js +1 -0
  30. package/dist/nodes/retrievers/RetrieverVectorStore/RetrieverVectorStore.node.js.map +1 -1
  31. package/dist/nodes/retrievers/RetrieverWorkflow/RetrieverWorkflow.node.js +1 -0
  32. package/dist/nodes/retrievers/RetrieverWorkflow/RetrieverWorkflow.node.js.map +1 -1
  33. package/dist/nodes/text_splitters/TextSplitterCharacterTextSplitter/TextSplitterCharacterTextSplitter.node.js +1 -0
  34. package/dist/nodes/text_splitters/TextSplitterCharacterTextSplitter/TextSplitterCharacterTextSplitter.node.js.map +1 -1
  35. package/dist/nodes/text_splitters/TextSplitterRecursiveCharacterTextSplitter/TextSplitterRecursiveCharacterTextSplitter.node.js +1 -0
  36. package/dist/nodes/text_splitters/TextSplitterRecursiveCharacterTextSplitter/TextSplitterRecursiveCharacterTextSplitter.node.js.map +1 -1
  37. package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TextSplitterTokenSplitter.node.js +1 -0
  38. package/dist/nodes/text_splitters/TextSplitterTokenSplitter/TextSplitterTokenSplitter.node.js.map +1 -1
  39. package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.js +1 -0
  40. package/dist/nodes/tools/ToolCalculator/ToolCalculator.node.js.map +1 -1
  41. package/dist/nodes/tools/ToolCode/ToolCode.node.js +1 -0
  42. package/dist/nodes/tools/ToolCode/ToolCode.node.js.map +1 -1
  43. package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.js +10 -8
  44. package/dist/nodes/tools/ToolVectorStore/ToolVectorStore.node.js.map +1 -1
  45. package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.d.ts +3 -4
  46. package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.js +13 -466
  47. package/dist/nodes/tools/ToolWorkflow/ToolWorkflow.node.js.map +1 -1
  48. package/dist/nodes/tools/ToolWorkflow/v1/ToolWorkflowV1.node.d.ts +6 -0
  49. package/dist/nodes/tools/ToolWorkflow/v1/ToolWorkflowV1.node.js +194 -0
  50. package/dist/nodes/tools/ToolWorkflow/v1/ToolWorkflowV1.node.js.map +1 -0
  51. package/dist/nodes/tools/ToolWorkflow/v1/versionDescription.d.ts +2 -0
  52. package/dist/nodes/tools/ToolWorkflow/v1/versionDescription.js +311 -0
  53. package/dist/nodes/tools/ToolWorkflow/v1/versionDescription.js.map +1 -0
  54. package/dist/nodes/tools/ToolWorkflow/v2/ToolWorkflowV2.node.d.ts +12 -0
  55. package/dist/nodes/tools/ToolWorkflow/v2/ToolWorkflowV2.node.js +32 -0
  56. package/dist/nodes/tools/ToolWorkflow/v2/ToolWorkflowV2.node.js.map +1 -0
  57. package/dist/nodes/tools/ToolWorkflow/v2/utils/FromAIParser.d.ts +19 -0
  58. package/dist/nodes/tools/ToolWorkflow/v2/utils/FromAIParser.js +192 -0
  59. package/dist/nodes/tools/ToolWorkflow/v2/utils/FromAIParser.js.map +1 -0
  60. package/dist/nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.d.ts +23 -0
  61. package/dist/nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.js +202 -0
  62. package/dist/nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.js.map +1 -0
  63. package/dist/nodes/tools/ToolWorkflow/v2/versionDescription.d.ts +2 -0
  64. package/dist/nodes/tools/ToolWorkflow/v2/versionDescription.js +134 -0
  65. package/dist/nodes/tools/ToolWorkflow/v2/versionDescription.js.map +1 -0
  66. package/dist/nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.js +1 -0
  67. package/dist/nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.js.map +1 -1
  68. package/dist/nodes/vector_store/VectorStorePGVector/VectorStorePGVector.node.js +1 -1
  69. package/dist/nodes/vector_store/VectorStorePGVector/VectorStorePGVector.node.js.map +1 -1
  70. package/dist/nodes/vector_store/VectorStorePinecone/VectorStorePinecone.node.js +2 -2
  71. package/dist/nodes/vector_store/VectorStorePinecone/VectorStorePinecone.node.js.map +1 -1
  72. package/dist/nodes/vector_store/VectorStorePinecone/pinecone.dark.svg +21 -0
  73. package/dist/nodes/vector_store/VectorStorePinecone/pinecone.svg +21 -1
  74. package/dist/nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.js +1 -1
  75. package/dist/nodes/vector_store/VectorStoreSupabase/VectorStoreSupabase.node.js.map +1 -1
  76. package/dist/nodes/vector_store/VectorStoreZep/VectorStoreZep.node.js +16 -4
  77. package/dist/nodes/vector_store/VectorStoreZep/VectorStoreZep.node.js.map +1 -1
  78. package/dist/nodes/vector_store/shared/MemoryVectorStoreManager.js.map +1 -1
  79. package/dist/nodes/vector_store/shared/createVectorStoreNode.d.ts +4 -3
  80. package/dist/nodes/vector_store/shared/createVectorStoreNode.js +111 -11
  81. package/dist/nodes/vector_store/shared/createVectorStoreNode.js.map +1 -1
  82. package/dist/nodes/vendors/OpenAi/transport/index.js +7 -2
  83. package/dist/nodes/vendors/OpenAi/transport/index.js.map +1 -1
  84. package/dist/types/credentials.json +2 -2
  85. package/dist/types/nodes.json +30 -29
  86. package/dist/utils/N8nBinaryLoader.d.ts +2 -2
  87. package/dist/utils/N8nBinaryLoader.js +5 -5
  88. package/dist/utils/N8nBinaryLoader.js.map +1 -1
  89. package/dist/utils/N8nJsonLoader.d.ts +2 -2
  90. package/dist/utils/N8nJsonLoader.js +1 -1
  91. package/dist/utils/N8nJsonLoader.js.map +1 -1
  92. package/dist/utils/N8nTool.js +1 -1
  93. package/dist/utils/N8nTool.js.map +1 -1
  94. package/dist/utils/descriptions.js +2 -2
  95. package/dist/utils/descriptions.js.map +1 -1
  96. package/package.json +7 -7
@@ -0,0 +1,192 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AIParametersParser = void 0;
4
+ const n8n_workflow_1 = require("n8n-workflow");
5
+ const zod_1 = require("zod");
6
+ class AIParametersParser {
7
+ constructor(ctx) {
8
+ this.ctx = ctx;
9
+ }
10
+ generateZodSchema(placeholder) {
11
+ let schema;
12
+ switch (placeholder.type?.toLowerCase()) {
13
+ case 'string':
14
+ schema = zod_1.z.string();
15
+ break;
16
+ case 'number':
17
+ schema = zod_1.z.number();
18
+ break;
19
+ case 'boolean':
20
+ schema = zod_1.z.boolean();
21
+ break;
22
+ case 'json':
23
+ schema = zod_1.z.record(zod_1.z.any());
24
+ break;
25
+ default:
26
+ schema = zod_1.z.string();
27
+ }
28
+ if (placeholder.description) {
29
+ schema = schema.describe(`${schema.description ?? ''} ${placeholder.description}`.trim());
30
+ }
31
+ if (placeholder.defaultValue !== undefined) {
32
+ schema = schema.default(placeholder.defaultValue);
33
+ }
34
+ return schema;
35
+ }
36
+ traverseNodeParameters(payload, collectedArgs) {
37
+ if (typeof payload === 'string') {
38
+ const fromAICalls = this.extractFromAICalls(payload);
39
+ fromAICalls.forEach((call) => collectedArgs.push(call));
40
+ }
41
+ else if (Array.isArray(payload)) {
42
+ payload.forEach((item) => this.traverseNodeParameters(item, collectedArgs));
43
+ }
44
+ else if (typeof payload === 'object' && payload !== null) {
45
+ Object.values(payload).forEach((value) => this.traverseNodeParameters(value, collectedArgs));
46
+ }
47
+ }
48
+ extractFromAICalls(str) {
49
+ const args = [];
50
+ const pattern = /\$fromAI\s*\(\s*/gi;
51
+ let match;
52
+ while ((match = pattern.exec(str)) !== null) {
53
+ const startIndex = match.index + match[0].length;
54
+ let current = startIndex;
55
+ let inQuotes = false;
56
+ let quoteChar = '';
57
+ let parenthesesCount = 1;
58
+ let argsString = '';
59
+ while (current < str.length && parenthesesCount > 0) {
60
+ const char = str[current];
61
+ if (inQuotes) {
62
+ if (char === '\\' && current + 1 < str.length) {
63
+ argsString += char + str[current + 1];
64
+ current += 2;
65
+ continue;
66
+ }
67
+ if (char === quoteChar) {
68
+ inQuotes = false;
69
+ quoteChar = '';
70
+ }
71
+ argsString += char;
72
+ }
73
+ else {
74
+ if (['"', "'", '`'].includes(char)) {
75
+ inQuotes = true;
76
+ quoteChar = char;
77
+ }
78
+ else if (char === '(') {
79
+ parenthesesCount++;
80
+ }
81
+ else if (char === ')') {
82
+ parenthesesCount--;
83
+ }
84
+ if (parenthesesCount > 0 || char !== ')') {
85
+ argsString += char;
86
+ }
87
+ }
88
+ current++;
89
+ }
90
+ if (parenthesesCount === 0) {
91
+ try {
92
+ const parsedArgs = this.parseArguments(argsString);
93
+ args.push(parsedArgs);
94
+ }
95
+ catch (error) {
96
+ throw new n8n_workflow_1.NodeOperationError(this.ctx.getNode(), `Failed to parse $fromAI arguments: ${argsString}: ${error}`);
97
+ }
98
+ }
99
+ else {
100
+ throw new n8n_workflow_1.NodeOperationError(this.ctx.getNode(), `Unbalanced parentheses while parsing $fromAI call: ${str.slice(startIndex)}`);
101
+ }
102
+ }
103
+ return args;
104
+ }
105
+ parseArguments(argsString) {
106
+ const args = [];
107
+ let currentArg = '';
108
+ let inQuotes = false;
109
+ let quoteChar = '';
110
+ let escapeNext = false;
111
+ for (let i = 0; i < argsString.length; i++) {
112
+ const char = argsString[i];
113
+ if (escapeNext) {
114
+ currentArg += char;
115
+ escapeNext = false;
116
+ continue;
117
+ }
118
+ if (char === '\\') {
119
+ escapeNext = true;
120
+ continue;
121
+ }
122
+ if (['"', "'", '`'].includes(char)) {
123
+ if (!inQuotes) {
124
+ inQuotes = true;
125
+ quoteChar = char;
126
+ currentArg += char;
127
+ }
128
+ else if (char === quoteChar) {
129
+ inQuotes = false;
130
+ quoteChar = '';
131
+ currentArg += char;
132
+ }
133
+ else {
134
+ currentArg += char;
135
+ }
136
+ continue;
137
+ }
138
+ if (char === ',' && !inQuotes) {
139
+ args.push(currentArg.trim());
140
+ currentArg = '';
141
+ continue;
142
+ }
143
+ currentArg += char;
144
+ }
145
+ if (currentArg) {
146
+ args.push(currentArg.trim());
147
+ }
148
+ const cleanArgs = args.map((arg) => {
149
+ const trimmed = arg.trim();
150
+ if ((trimmed.startsWith("'") && trimmed.endsWith("'")) ||
151
+ (trimmed.startsWith('`') && trimmed.endsWith('`')) ||
152
+ (trimmed.startsWith('"') && trimmed.endsWith('"'))) {
153
+ return trimmed
154
+ .slice(1, -1)
155
+ .replace(/\\'/g, "'")
156
+ .replace(/\\`/g, '`')
157
+ .replace(/\\"/g, '"')
158
+ .replace(/\\\\/g, '\\');
159
+ }
160
+ return trimmed;
161
+ });
162
+ const type = cleanArgs?.[2] || 'string';
163
+ if (!['string', 'number', 'boolean', 'json'].includes(type.toLowerCase())) {
164
+ throw new n8n_workflow_1.NodeOperationError(this.ctx.getNode(), `Invalid type: ${type}`);
165
+ }
166
+ return {
167
+ key: cleanArgs[0] || '',
168
+ description: cleanArgs[1],
169
+ type: (cleanArgs?.[2] ?? 'string'),
170
+ defaultValue: this.parseDefaultValue(cleanArgs[3]),
171
+ };
172
+ }
173
+ parseDefaultValue(value) {
174
+ if (value === undefined || value === '')
175
+ return undefined;
176
+ const lowerValue = value.toLowerCase();
177
+ if (lowerValue === 'true')
178
+ return true;
179
+ if (lowerValue === 'false')
180
+ return false;
181
+ if (!isNaN(Number(value)))
182
+ return Number(value);
183
+ try {
184
+ return (0, n8n_workflow_1.jsonParse)(value);
185
+ }
186
+ catch {
187
+ return value;
188
+ }
189
+ }
190
+ }
191
+ exports.AIParametersParser = AIParametersParser;
192
+ //# sourceMappingURL=FromAIParser.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FromAIParser.js","sourceRoot":"","sources":["../../../../../../nodes/tools/ToolWorkflow/v2/utils/FromAIParser.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ import { DynamicStructuredTool, DynamicTool } from '@langchain/core/tools';
2
+ import type { ISupplyDataFunctions } from 'n8n-workflow';
3
+ export declare class WorkflowToolService {
4
+ private context;
5
+ private useSchema;
6
+ private subWorkflowId;
7
+ private subExecutionId;
8
+ constructor(context: ISupplyDataFunctions);
9
+ createTool({ name, description, itemIndex, }: {
10
+ name: string;
11
+ description: string;
12
+ itemIndex: number;
13
+ }): Promise<DynamicTool | DynamicStructuredTool>;
14
+ private handleToolResponse;
15
+ private executeSubWorkflow;
16
+ private runFunction;
17
+ private getSubWorkflowInfo;
18
+ private prepareRawData;
19
+ private prepareWorkflowItems;
20
+ private createStructuredTool;
21
+ private extractFromAIParameters;
22
+ private createZodSchema;
23
+ }
@@ -0,0 +1,202 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
15
+ }) : function(o, v) {
16
+ o["default"] = v;
17
+ });
18
+ var __importStar = (this && this.__importStar) || (function () {
19
+ var ownKeys = function(o) {
20
+ ownKeys = Object.getOwnPropertyNames || function (o) {
21
+ var ar = [];
22
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
+ return ar;
24
+ };
25
+ return ownKeys(o);
26
+ };
27
+ return function (mod) {
28
+ if (mod && mod.__esModule) return mod;
29
+ var result = {};
30
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
+ __setModuleDefault(result, mod);
32
+ return result;
33
+ };
34
+ })();
35
+ var __importDefault = (this && this.__importDefault) || function (mod) {
36
+ return (mod && mod.__esModule) ? mod : { "default": mod };
37
+ };
38
+ Object.defineProperty(exports, "__esModule", { value: true });
39
+ exports.WorkflowToolService = void 0;
40
+ const tools_1 = require("@langchain/core/tools");
41
+ const get_1 = __importDefault(require("lodash/get"));
42
+ const isObject_1 = __importDefault(require("lodash/isObject"));
43
+ const manual = __importStar(require("n8n-nodes-base/dist/nodes/Set/v2/manual.mode"));
44
+ const GenericFunctions_1 = require("n8n-nodes-base/dist/utils/workflowInputsResourceMapping/GenericFunctions");
45
+ const n8n_workflow_1 = require("n8n-workflow");
46
+ const zod_1 = require("zod");
47
+ const FromAIParser_1 = require("./FromAIParser");
48
+ class WorkflowToolService {
49
+ constructor(context) {
50
+ this.context = context;
51
+ const subWorkflowInputs = this.context.getNode().parameters
52
+ .workflowInputs;
53
+ this.useSchema = (subWorkflowInputs?.schema ?? []).length > 0;
54
+ }
55
+ async createTool({ name, description, itemIndex, }) {
56
+ const toolHandler = async (query, runManager) => {
57
+ const { index } = this.context.addInputData("ai_tool", [
58
+ [{ json: { query } }],
59
+ ]);
60
+ try {
61
+ const response = await this.runFunction(query, itemIndex, runManager);
62
+ const processedResponse = this.handleToolResponse(response);
63
+ let metadata;
64
+ if (this.subExecutionId && this.subWorkflowId) {
65
+ metadata = {
66
+ subExecution: {
67
+ executionId: this.subExecutionId,
68
+ workflowId: this.subWorkflowId,
69
+ },
70
+ };
71
+ }
72
+ const json = (0, n8n_workflow_1.jsonParse)(processedResponse, {
73
+ fallbackValue: { response: processedResponse },
74
+ });
75
+ void this.context.addOutputData("ai_tool", index, [[{ json }]], metadata);
76
+ return processedResponse;
77
+ }
78
+ catch (error) {
79
+ const executionError = error;
80
+ const errorResponse = `There was an error: "${executionError.message}"`;
81
+ void this.context.addOutputData("ai_tool", index, executionError);
82
+ return errorResponse;
83
+ }
84
+ };
85
+ return this.useSchema
86
+ ? await this.createStructuredTool(name, description, toolHandler)
87
+ : new tools_1.DynamicTool({ name, description, func: toolHandler });
88
+ }
89
+ handleToolResponse(response) {
90
+ if (typeof response === 'number') {
91
+ return response.toString();
92
+ }
93
+ if ((0, isObject_1.default)(response)) {
94
+ return JSON.stringify(response, null, 2);
95
+ }
96
+ if (typeof response !== 'string') {
97
+ throw new n8n_workflow_1.NodeOperationError(this.context.getNode(), 'Wrong output type returned', {
98
+ description: `The response property should be a string, but it is an ${typeof response}`,
99
+ });
100
+ }
101
+ return response;
102
+ }
103
+ async executeSubWorkflow(workflowInfo, items, workflowProxy, runManager) {
104
+ let receivedData;
105
+ try {
106
+ receivedData = await this.context.executeWorkflow(workflowInfo, items, runManager?.getChild(), {
107
+ parentExecution: {
108
+ executionId: workflowProxy.$execution.id,
109
+ workflowId: workflowProxy.$workflow.id,
110
+ },
111
+ });
112
+ this.subExecutionId = receivedData.executionId;
113
+ }
114
+ catch (error) {
115
+ throw new n8n_workflow_1.NodeOperationError(this.context.getNode(), error);
116
+ }
117
+ const response = (0, get_1.default)(receivedData, 'data[0][0].json');
118
+ if (response === undefined) {
119
+ throw new n8n_workflow_1.NodeOperationError(this.context.getNode(), 'There was an error: "The workflow did not return a response"');
120
+ }
121
+ return { response, subExecutionId: receivedData.executionId };
122
+ }
123
+ async runFunction(query, itemIndex, runManager) {
124
+ const source = this.context.getNodeParameter('source', itemIndex);
125
+ const workflowProxy = this.context.getWorkflowDataProxy(0);
126
+ const { workflowInfo } = await this.getSubWorkflowInfo(source, itemIndex, workflowProxy);
127
+ const rawData = this.prepareRawData(query, itemIndex);
128
+ const items = await this.prepareWorkflowItems(query, itemIndex, rawData);
129
+ this.subWorkflowId = workflowInfo.id;
130
+ const { response } = await this.executeSubWorkflow(workflowInfo, items, workflowProxy, runManager);
131
+ return response;
132
+ }
133
+ async getSubWorkflowInfo(source, itemIndex, workflowProxy) {
134
+ const workflowInfo = {};
135
+ let subWorkflowId;
136
+ if (source === 'database') {
137
+ const { value } = this.context.getNodeParameter('workflowId', itemIndex, {});
138
+ workflowInfo.id = value;
139
+ subWorkflowId = workflowInfo.id;
140
+ }
141
+ else if (source === 'parameter') {
142
+ const workflowJson = this.context.getNodeParameter('workflowJson', itemIndex);
143
+ try {
144
+ workflowInfo.code = JSON.parse(workflowJson);
145
+ subWorkflowId = workflowProxy.$workflow.id;
146
+ }
147
+ catch (error) {
148
+ throw new n8n_workflow_1.NodeOperationError(this.context.getNode(), `The provided workflow is not valid JSON: "${error.message}"`, { itemIndex });
149
+ }
150
+ }
151
+ return { workflowInfo, subWorkflowId: subWorkflowId };
152
+ }
153
+ prepareRawData(query, itemIndex) {
154
+ const rawData = { query };
155
+ const workflowFieldsJson = this.context.getNodeParameter('fields.values', itemIndex, [], {
156
+ rawExpressions: true,
157
+ });
158
+ for (const entry of workflowFieldsJson) {
159
+ if (entry.type === 'objectValue' && entry.objectValue.startsWith('=')) {
160
+ rawData[entry.name] = entry.objectValue.replace(/^=+/, '');
161
+ }
162
+ }
163
+ return rawData;
164
+ }
165
+ async prepareWorkflowItems(query, itemIndex, rawData) {
166
+ const options = { include: 'all' };
167
+ let jsonData = typeof query === 'object' ? query : { query };
168
+ if (this.useSchema) {
169
+ const currentWorkflowInputs = GenericFunctions_1.getCurrentWorkflowInputData.call(this.context);
170
+ jsonData = currentWorkflowInputs[itemIndex].json;
171
+ }
172
+ const newItem = await manual.execute.call(this.context, { json: jsonData }, itemIndex, options, rawData, this.context.getNode());
173
+ return [newItem];
174
+ }
175
+ async createStructuredTool(name, description, func) {
176
+ const fromAIParser = new FromAIParser_1.AIParametersParser(this.context);
177
+ const collectedArguments = await this.extractFromAIParameters(fromAIParser);
178
+ if (collectedArguments.length === 0) {
179
+ return new tools_1.DynamicTool({ name, description, func });
180
+ }
181
+ const schema = this.createZodSchema(collectedArguments, fromAIParser);
182
+ return new tools_1.DynamicStructuredTool({ schema, name, description, func });
183
+ }
184
+ async extractFromAIParameters(fromAIParser) {
185
+ const collectedArguments = [];
186
+ fromAIParser.traverseNodeParameters(this.context.getNode().parameters, collectedArguments);
187
+ const uniqueArgsMap = new Map();
188
+ for (const arg of collectedArguments) {
189
+ uniqueArgsMap.set(arg.key, arg);
190
+ }
191
+ return Array.from(uniqueArgsMap.values());
192
+ }
193
+ createZodSchema(args, parser) {
194
+ const schemaObj = args.reduce((acc, placeholder) => {
195
+ acc[placeholder.key] = parser.generateZodSchema(placeholder);
196
+ return acc;
197
+ }, {});
198
+ return zod_1.z.object(schemaObj).required();
199
+ }
200
+ }
201
+ exports.WorkflowToolService = WorkflowToolService;
202
+ //# sourceMappingURL=WorkflowToolService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"WorkflowToolService.js","sourceRoot":"","sources":["../../../../../../nodes/tools/ToolWorkflow/v2/utils/WorkflowToolService.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ import { type INodeTypeDescription } from 'n8n-workflow';
2
+ export declare const versionDescription: INodeTypeDescription;
@@ -0,0 +1,134 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.versionDescription = void 0;
4
+ const sharedFields_1 = require("../../../../utils/sharedFields");
5
+ exports.versionDescription = {
6
+ displayName: 'Call n8n Workflow Tool',
7
+ name: 'toolWorkflow',
8
+ icon: 'fa:network-wired',
9
+ group: ['transform'],
10
+ description: 'Uses another n8n workflow as a tool. Allows packaging any n8n node(s) as a tool.',
11
+ defaults: {
12
+ name: 'Call n8n Workflow Tool',
13
+ },
14
+ version: [2],
15
+ inputs: [],
16
+ outputs: ["ai_tool"],
17
+ outputNames: ['Tool'],
18
+ properties: [
19
+ (0, sharedFields_1.getConnectionHintNoticeField)(["ai_agent"]),
20
+ {
21
+ displayName: 'See an example of a workflow to suggest meeting slots using AI <a href="/templates/1953" target="_blank">here</a>.',
22
+ name: 'noticeTemplateExample',
23
+ type: 'notice',
24
+ default: '',
25
+ },
26
+ {
27
+ displayName: 'Name',
28
+ name: 'name',
29
+ type: 'string',
30
+ default: '',
31
+ placeholder: 'e.g. My_Color_Tool',
32
+ validateType: 'string-alphanumeric',
33
+ description: 'The name of the function to be called, could contain letters, numbers, and underscores only',
34
+ },
35
+ {
36
+ displayName: 'Description',
37
+ name: 'description',
38
+ type: 'string',
39
+ default: '',
40
+ placeholder: 'Call this tool to get a random color. The input should be a string with comma separated names of colors to exclude.',
41
+ typeOptions: {
42
+ rows: 3,
43
+ },
44
+ },
45
+ {
46
+ displayName: 'This tool will call the workflow you define below, and look in the last node for the response. The workflow needs to start with an Execute Workflow trigger',
47
+ name: 'executeNotice',
48
+ type: 'notice',
49
+ default: '',
50
+ },
51
+ {
52
+ displayName: 'Source',
53
+ name: 'source',
54
+ type: 'options',
55
+ options: [
56
+ {
57
+ name: 'Database',
58
+ value: 'database',
59
+ description: 'Load the workflow from the database by ID',
60
+ },
61
+ {
62
+ name: 'Define Below',
63
+ value: 'parameter',
64
+ description: 'Pass the JSON code of a workflow',
65
+ },
66
+ ],
67
+ default: 'database',
68
+ description: 'Where to get the workflow to execute from',
69
+ },
70
+ {
71
+ displayName: 'Workflow',
72
+ name: 'workflowId',
73
+ type: 'workflowSelector',
74
+ displayOptions: {
75
+ show: {
76
+ source: ['database'],
77
+ },
78
+ },
79
+ default: '',
80
+ required: true,
81
+ },
82
+ {
83
+ displayName: 'Workflow Inputs',
84
+ name: 'workflowInputs',
85
+ type: 'resourceMapper',
86
+ noDataExpression: true,
87
+ default: {
88
+ mappingMode: 'defineBelow',
89
+ value: null,
90
+ },
91
+ required: true,
92
+ typeOptions: {
93
+ loadOptionsDependsOn: ['workflowId.value'],
94
+ resourceMapper: {
95
+ localResourceMapperMethod: 'loadWorkflowInputMappings',
96
+ valuesLabel: 'Workflow Inputs',
97
+ mode: 'map',
98
+ fieldWords: {
99
+ singular: 'workflow input',
100
+ plural: 'workflow inputs',
101
+ },
102
+ addAllFields: true,
103
+ multiKeyMatch: false,
104
+ supportAutoMap: false,
105
+ },
106
+ },
107
+ displayOptions: {
108
+ show: {
109
+ source: ['database'],
110
+ },
111
+ hide: {
112
+ workflowId: [''],
113
+ },
114
+ },
115
+ },
116
+ {
117
+ displayName: 'Workflow JSON',
118
+ name: 'workflowJson',
119
+ type: 'json',
120
+ typeOptions: {
121
+ rows: 10,
122
+ },
123
+ displayOptions: {
124
+ show: {
125
+ source: ['parameter'],
126
+ },
127
+ },
128
+ default: '\n\n\n\n\n\n\n\n\n',
129
+ required: true,
130
+ description: 'The workflow JSON code to execute',
131
+ },
132
+ ],
133
+ };
134
+ //# sourceMappingURL=versionDescription.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"versionDescription.js","sourceRoot":"","sources":["../../../../../nodes/tools/ToolWorkflow/v2/versionDescription.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,7 @@ class VectorStoreInMemory extends (0, createVectorStoreNode_1.createVectorStoreN
24
24
  name: 'vectorStoreInMemory',
25
25
  description: 'Work with your data in In-Memory Vector Store',
26
26
  icon: 'fa:database',
27
+ iconColor: 'black',
27
28
  docsUrl: 'https://docs.n8n.io/integrations/builtin/cluster-nodes/root-nodes/n8n-nodes-langchain.vectorstoreinmemory/',
28
29
  },
29
30
  sharedFields: [
@@ -1 +1 @@
1
- {"version":3,"file":"VectorStoreInMemory.node.js","sourceRoot":"","sources":["../../../../nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.ts"],"names":[],"mappings":";;;AAEA,2EAAwE;AACxE,iFAA8E;AAE9E,MAAM,YAAY,GAAsB;IACvC;QACC,WAAW,EACV,qNAAqN;QACtN,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;KACX;IACD;QACC,WAAW,EAAE,aAAa;QAC1B,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,WAAW,EAAE,sDAAsD;KACnE;CACD,CAAC;AAEF,MAAa,mBAAoB,SAAQ,IAAA,6CAAqB,EAAC;IAC9D,IAAI,EAAE;QACL,WAAW,EAAE,wBAAwB;QACrC,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,+CAA+C;QAC5D,IAAI,EAAE,aAAa;QACnB,OAAO,EACN,4GAA4G;KAC7G;IACD,YAAY,EAAE;QACb;YACC,WAAW,EAAE,YAAY;YACzB,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,kBAAkB;YAC3B,WAAW,EACV,oIAAoI;SACrI;KACD;IACD,YAAY;IACZ,UAAU,EAAE,EAAE;IACd,cAAc,EAAE,EAAE;IAClB,KAAK,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS;QACjE,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QAC5C,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,SAAS,CAAW,CAAC;QAC7E,MAAM,oBAAoB,GAAG,mDAAwB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAE9E,OAAO,MAAM,oBAAoB,CAAC,cAAc,CAAC,GAAG,UAAU,KAAK,SAAS,EAAE,CAAC,CAAC;IACjF,CAAC;IACD,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS;QAClE,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,SAAS,CAAW,CAAC;QAC7E,MAAM,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,SAAS,CAAY,CAAC;QAChF,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QAC5C,MAAM,mBAAmB,GAAG,mDAAwB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAE7E,MAAM,mBAAmB,CAAC,YAAY,CAAC,GAAG,UAAU,KAAK,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAC9F,CAAC;CACD,CAAC;CAAG;AArCL,kDAqCK"}
1
+ {"version":3,"file":"VectorStoreInMemory.node.js","sourceRoot":"","sources":["../../../../nodes/vector_store/VectorStoreInMemory/VectorStoreInMemory.node.ts"],"names":[],"mappings":";;;AAEA,2EAAwE;AACxE,iFAA8E;AAE9E,MAAM,YAAY,GAAsB;IACvC;QACC,WAAW,EACV,qNAAqN;QACtN,IAAI,EAAE,QAAQ;QACd,IAAI,EAAE,QAAQ;QACd,OAAO,EAAE,EAAE;KACX;IACD;QACC,WAAW,EAAE,aAAa;QAC1B,IAAI,EAAE,YAAY;QAClB,IAAI,EAAE,SAAS;QACf,OAAO,EAAE,KAAK;QACd,WAAW,EAAE,sDAAsD;KACnE;CACD,CAAC;AAEF,MAAa,mBAAoB,SAAQ,IAAA,6CAAqB,EAAC;IAC9D,IAAI,EAAE;QACL,WAAW,EAAE,wBAAwB;QACrC,IAAI,EAAE,qBAAqB;QAC3B,WAAW,EAAE,+CAA+C;QAC5D,IAAI,EAAE,aAAa;QACnB,SAAS,EAAE,OAAO;QAClB,OAAO,EACN,4GAA4G;KAC7G;IACD,YAAY,EAAE;QACb;YACC,WAAW,EAAE,YAAY;YACzB,IAAI,EAAE,WAAW;YACjB,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,kBAAkB;YAC3B,WAAW,EACV,oIAAoI;SACrI;KACD;IACD,YAAY;IACZ,UAAU,EAAE,EAAE;IACd,cAAc,EAAE,EAAE;IAClB,KAAK,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS;QACjE,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QAC5C,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,SAAS,CAAW,CAAC;QAC7E,MAAM,oBAAoB,GAAG,mDAAwB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAE9E,OAAO,MAAM,oBAAoB,CAAC,cAAc,CAAC,GAAG,UAAU,KAAK,SAAS,EAAE,CAAC,CAAC;IACjF,CAAC;IACD,KAAK,CAAC,mBAAmB,CAAC,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS;QAClE,MAAM,SAAS,GAAG,OAAO,CAAC,gBAAgB,CAAC,WAAW,EAAE,SAAS,CAAW,CAAC;QAC7E,MAAM,UAAU,GAAG,OAAO,CAAC,gBAAgB,CAAC,YAAY,EAAE,SAAS,CAAY,CAAC;QAChF,MAAM,UAAU,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QAC5C,MAAM,mBAAmB,GAAG,mDAAwB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAE7E,MAAM,mBAAmB,CAAC,YAAY,CAAC,GAAG,UAAU,KAAK,SAAS,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;IAC9F,CAAC;CACD,CAAC;CAAG;AAtCL,kDAsCK"}
@@ -182,7 +182,7 @@ class VectorStorePGVector extends (0, createVectorStoreNode_1.createVectorStoreN
182
182
  testedBy: 'postgresConnectionTest',
183
183
  },
184
184
  ],
185
- operationModes: ['load', 'insert', 'retrieve'],
185
+ operationModes: ['load', 'insert', 'retrieve', 'retrieve-as-tool'],
186
186
  },
187
187
  sharedFields,
188
188
  insertFields,
@@ -1 +1 @@
1
- {"version":3,"file":"VectorStorePGVector.node.js","sourceRoot":"","sources":["../../../../nodes/vector_store/VectorStorePGVector/VectorStorePGVector.node.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"VectorStorePGVector.node.js","sourceRoot":"","sources":["../../../../nodes/vector_store/VectorStorePGVector/VectorStorePGVector.node.ts"],"names":[],"mappings":"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"}