n8n-nodes-simple 2.3.0 → 2.4.1
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/nodes/CoreAgent/description.js +0 -1
- package/dist/nodes/CoreAgent/description.js.map +1 -1
- package/dist/nodes/ModelOverview/ModelOverview.node.d.ts +10 -0
- package/dist/nodes/ModelOverview/ModelOverview.node.js +220 -0
- package/dist/nodes/ModelOverview/ModelOverview.node.js.map +1 -0
- package/dist/nodes/shared/config/descriptionGenerator.js +3 -3
- package/dist/nodes/shared/config/descriptionGenerator.js.map +1 -1
- package/dist/nodes/shared/config/properties/model.js.map +1 -1
- package/dist/nodes/shared/config/properties/output.js +14 -7
- package/dist/nodes/shared/config/properties/output.js.map +1 -1
- package/dist/nodes/shared/core/execution/executor.d.ts +2 -4
- package/dist/nodes/shared/core/execution/executor.js +10 -27
- package/dist/nodes/shared/core/execution/executor.js.map +1 -1
- package/dist/nodes/shared/core/execution/messageOperation.d.ts +1 -1
- package/dist/nodes/shared/core/execution/messageOperation.js +4 -4
- package/dist/nodes/shared/core/execution/messageOperation.js.map +1 -1
- package/dist/nodes/shared/core/execution/outputData.d.ts +1 -2
- package/dist/nodes/shared/core/execution/outputData.js +13 -34
- package/dist/nodes/shared/core/execution/outputData.js.map +1 -1
- package/dist/nodes/shared/core/execution/router.d.ts +1 -1
- package/dist/nodes/shared/core/execution/router.js +6 -6
- package/dist/nodes/shared/core/execution/router.js.map +1 -1
- package/dist/nodes/shared/core/messages/processor.d.ts +1 -1
- package/dist/nodes/shared/core/messages/processor.js +1 -6
- package/dist/nodes/shared/core/messages/processor.js.map +1 -1
- package/dist/nodes/shared/core/tools/connector.js +16 -25
- package/dist/nodes/shared/core/tools/connector.js.map +1 -1
- package/dist/nodes/shared/core/tools/executor.js +7 -1
- package/dist/nodes/shared/core/tools/executor.js.map +1 -1
- package/dist/nodes/shared/core/tools/manager.d.ts +0 -2
- package/dist/nodes/shared/core/tools/manager.js +0 -49
- package/dist/nodes/shared/core/tools/manager.js.map +1 -1
- package/dist/nodes/shared/core/tools/n8nTool.js +1 -2
- package/dist/nodes/shared/core/tools/n8nTool.js.map +1 -1
- package/dist/nodes/shared/core/tools/subagentTool.d.ts +0 -11
- package/dist/nodes/shared/core/tools/subagentTool.js +0 -58
- package/dist/nodes/shared/core/tools/subagentTool.js.map +1 -1
- package/dist/package.json +3 -2
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -2
- package/dist/nodes/Subagent/Subagent.node.d.ts +0 -11
- package/dist/nodes/Subagent/Subagent.node.js +0 -23
- package/dist/nodes/Subagent/Subagent.node.js.map +0 -1
- package/dist/nodes/Subagent/description.d.ts +0 -2
- package/dist/nodes/Subagent/description.js +0 -35
- package/dist/nodes/Subagent/description.js.map +0 -1
- package/dist/nodes/shared/actions/executor.d.ts +0 -7
- package/dist/nodes/shared/actions/executor.js +0 -61
- package/dist/nodes/shared/actions/executor.js.map +0 -1
- package/dist/nodes/shared/actions/memory.d.ts +0 -5
- package/dist/nodes/shared/actions/memory.js +0 -93
- package/dist/nodes/shared/actions/memory.js.map +0 -1
- package/dist/nodes/shared/actions/message.operation.d.ts +0 -2
- package/dist/nodes/shared/actions/message.operation.js +0 -14
- package/dist/nodes/shared/actions/message.operation.js.map +0 -1
- package/dist/nodes/shared/actions/messageProcessor.d.ts +0 -4
- package/dist/nodes/shared/actions/messageProcessor.js +0 -23
- package/dist/nodes/shared/actions/messageProcessor.js.map +0 -1
- package/dist/nodes/shared/actions/outputProcessor.d.ts +0 -5
- package/dist/nodes/shared/actions/outputProcessor.js +0 -112
- package/dist/nodes/shared/actions/outputProcessor.js.map +0 -1
- package/dist/nodes/shared/actions/parameterParser.d.ts +0 -9
- package/dist/nodes/shared/actions/parameterParser.js +0 -96
- package/dist/nodes/shared/actions/parameterParser.js.map +0 -1
- package/dist/nodes/shared/actions/parameters.d.ts +0 -26
- package/dist/nodes/shared/actions/parameters.js +0 -35
- package/dist/nodes/shared/actions/parameters.js.map +0 -1
- package/dist/nodes/shared/actions/requestBuilder.d.ts +0 -2
- package/dist/nodes/shared/actions/requestBuilder.js +0 -38
- package/dist/nodes/shared/actions/requestBuilder.js.map +0 -1
- package/dist/nodes/shared/actions/responseConfig.d.ts +0 -3
- package/dist/nodes/shared/actions/responseConfig.js +0 -26
- package/dist/nodes/shared/actions/responseConfig.js.map +0 -1
- package/dist/nodes/shared/actions/router.d.ts +0 -2
- package/dist/nodes/shared/actions/router.js +0 -117
- package/dist/nodes/shared/actions/router.js.map +0 -1
- package/dist/nodes/shared/actions/tool.d.ts +0 -2
- package/dist/nodes/shared/actions/tool.js +0 -51
- package/dist/nodes/shared/actions/tool.js.map +0 -1
- package/dist/nodes/shared/actions/toolExecutor.d.ts +0 -6
- package/dist/nodes/shared/actions/toolExecutor.js +0 -124
- package/dist/nodes/shared/actions/toolExecutor.js.map +0 -1
- package/dist/nodes/shared/actions/toolSetup.d.ts +0 -8
- package/dist/nodes/shared/actions/toolSetup.js +0 -59
- package/dist/nodes/shared/actions/toolSetup.js.map +0 -1
- package/dist/nodes/shared/config/properties/memory.d.ts +0 -2
- package/dist/nodes/shared/config/properties/memory.js +0 -5
- package/dist/nodes/shared/config/properties/memory.js.map +0 -1
- package/dist/nodes/shared/config/properties/toolParameters.d.ts +0 -2
- package/dist/nodes/shared/config/properties/toolParameters.js +0 -101
- package/dist/nodes/shared/config/properties/toolParameters.js.map +0 -1
- package/dist/nodes/shared/config/properties/tools.d.ts +0 -2
- package/dist/nodes/shared/config/properties/tools.js +0 -5
- package/dist/nodes/shared/config/properties/tools.js.map +0 -1
- package/dist/nodes/shared/config/responseConfig.d.ts +0 -3
- package/dist/nodes/shared/config/responseConfig.js +0 -26
- package/dist/nodes/shared/config/responseConfig.js.map +0 -1
- package/dist/nodes/shared/core/memory/optimizer.d.ts +0 -3
- package/dist/nodes/shared/core/memory/optimizer.js +0 -30
- package/dist/nodes/shared/core/memory/optimizer.js.map +0 -1
- package/dist/nodes/shared/core/memory/properties.d.ts +0 -2
- package/dist/nodes/shared/core/memory/properties.js +0 -5
- package/dist/nodes/shared/core/memory/properties.js.map +0 -1
- package/dist/nodes/shared/core/memory/supplier.d.ts +0 -2
- package/dist/nodes/shared/core/memory/supplier.js +0 -53
- package/dist/nodes/shared/core/memory/supplier.js.map +0 -1
- package/dist/nodes/shared/core/messages/memoryOptimizer.d.ts +0 -3
- package/dist/nodes/shared/core/messages/memoryOptimizer.js +0 -30
- package/dist/nodes/shared/core/messages/memoryOptimizer.js.map +0 -1
- package/dist/nodes/shared/core/messages/toolExtractor.d.ts +0 -6
- package/dist/nodes/shared/core/messages/toolExtractor.js +0 -28
- package/dist/nodes/shared/core/messages/toolExtractor.js.map +0 -1
- package/dist/nodes/shared/core/output/processor.d.ts +0 -5
- package/dist/nodes/shared/core/output/processor.js +0 -108
- package/dist/nodes/shared/core/output/processor.js.map +0 -1
- package/dist/nodes/shared/core/request/builder.d.ts +0 -2
- package/dist/nodes/shared/core/request/builder.js +0 -43
- package/dist/nodes/shared/core/request/builder.js.map +0 -1
- package/dist/nodes/shared/core/response/config.d.ts +0 -3
- package/dist/nodes/shared/core/response/config.js +0 -26
- package/dist/nodes/shared/core/response/config.js.map +0 -1
- package/dist/nodes/shared/core/schema/visualEditor.d.ts +0 -32
- package/dist/nodes/shared/core/schema/visualEditor.js +0 -70
- package/dist/nodes/shared/core/schema/visualEditor.js.map +0 -1
- package/dist/nodes/shared/descriptionGenerator.d.ts +0 -2
- package/dist/nodes/shared/descriptionGenerator.js +0 -36
- package/dist/nodes/shared/descriptionGenerator.js.map +0 -1
- package/dist/nodes/shared/gradientRobot.svg +0 -11
- package/dist/nodes/shared/gradientRobotRed.svg +0 -11
- package/dist/nodes/shared/message/chatHistoryProcessor.d.ts +0 -2
- package/dist/nodes/shared/message/chatHistoryProcessor.js +0 -63
- package/dist/nodes/shared/message/chatHistoryProcessor.js.map +0 -1
- package/dist/nodes/shared/message/memoryOptimizer.d.ts +0 -3
- package/dist/nodes/shared/message/memoryOptimizer.js +0 -30
- package/dist/nodes/shared/message/memoryOptimizer.js.map +0 -1
- package/dist/nodes/shared/message/messageConverter.d.ts +0 -4
- package/dist/nodes/shared/message/messageConverter.js +0 -76
- package/dist/nodes/shared/message/messageConverter.js.map +0 -1
- package/dist/nodes/shared/message/processor.d.ts +0 -3
- package/dist/nodes/shared/message/processor.js +0 -11
- package/dist/nodes/shared/message/processor.js.map +0 -1
- package/dist/nodes/shared/message/toolMessageExtractor.d.ts +0 -6
- package/dist/nodes/shared/message/toolMessageExtractor.js +0 -28
- package/dist/nodes/shared/message/toolMessageExtractor.js.map +0 -1
- package/dist/nodes/shared/message/types.d.ts +0 -48
- package/dist/nodes/shared/message/types.js +0 -12
- package/dist/nodes/shared/message/types.js.map +0 -1
- package/dist/nodes/shared/methods/index.d.ts +0 -1
- package/dist/nodes/shared/methods/index.js +0 -38
- package/dist/nodes/shared/methods/index.js.map +0 -1
- package/dist/nodes/shared/processing/memory.d.ts +0 -5
- package/dist/nodes/shared/processing/memory.js +0 -93
- package/dist/nodes/shared/processing/memory.js.map +0 -1
- package/dist/nodes/shared/processing/outputProcessor.d.ts +0 -5
- package/dist/nodes/shared/processing/outputProcessor.js +0 -108
- package/dist/nodes/shared/processing/outputProcessor.js.map +0 -1
- package/dist/nodes/shared/processing/requestBuilder.d.ts +0 -2
- package/dist/nodes/shared/processing/requestBuilder.js +0 -43
- package/dist/nodes/shared/processing/requestBuilder.js.map +0 -1
- package/dist/nodes/shared/processing/visualEditor.d.ts +0 -32
- package/dist/nodes/shared/processing/visualEditor.js +0 -70
- package/dist/nodes/shared/processing/visualEditor.js.map +0 -1
- package/dist/nodes/shared/properties.d.ts +0 -2
- package/dist/nodes/shared/properties.js +0 -550
- package/dist/nodes/shared/properties.js.map +0 -1
- package/dist/nodes/shared/tool/schemaGenerator.d.ts +0 -6
- package/dist/nodes/shared/tool/schemaGenerator.js +0 -23
- package/dist/nodes/shared/tool/schemaGenerator.js.map +0 -1
- package/dist/nodes/shared/tool/subagentTool.d.ts +0 -11
- package/dist/nodes/shared/tool/subagentTool.js +0 -60
- package/dist/nodes/shared/tool/subagentTool.js.map +0 -1
- package/dist/nodes/shared/tool/visualEditor.d.ts +0 -32
- package/dist/nodes/shared/tool/visualEditor.js +0 -70
- package/dist/nodes/shared/tool/visualEditor.js.map +0 -1
- package/dist/nodes/shared/toolManager/getConnectedTools.d.ts +0 -3
- package/dist/nodes/shared/toolManager/getConnectedTools.js +0 -37
- package/dist/nodes/shared/toolManager/getConnectedTools.js.map +0 -1
- package/dist/nodes/shared/toolManager/n8nTool.d.ts +0 -9
- package/dist/nodes/shared/toolManager/n8nTool.js +0 -91
- package/dist/nodes/shared/toolManager/n8nTool.js.map +0 -1
- package/dist/nodes/shared/utils/descriptionGenerator.d.ts +0 -2
- package/dist/nodes/shared/utils/descriptionGenerator.js +0 -36
- package/dist/nodes/shared/utils/descriptionGenerator.js.map +0 -1
- package/dist/nodes/shared/utils/index.d.ts +0 -1
- package/dist/nodes/shared/utils/index.js +0 -18
- package/dist/nodes/shared/utils/index.js.map +0 -1
- package/dist/nodes/shared/utils/listSearch.d.ts +0 -2
- package/dist/nodes/shared/utils/listSearch.js +0 -34
- package/dist/nodes/shared/utils/listSearch.js.map +0 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "n8n-nodes-simple",
|
|
3
|
-
"version": "2.
|
|
3
|
+
"version": "2.4.1",
|
|
4
4
|
"description": "Simple",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"n8n-community-node-package"
|
|
@@ -36,7 +36,8 @@
|
|
|
36
36
|
"dist/credentials/SimpleOpenAiApi.credentials.js"
|
|
37
37
|
],
|
|
38
38
|
"nodes": [
|
|
39
|
-
"dist/nodes/CoreAgent/CoreAgent.node.js"
|
|
39
|
+
"dist/nodes/CoreAgent/CoreAgent.node.js",
|
|
40
|
+
"dist/nodes/ModelOverview/ModelOverview.node.js"
|
|
40
41
|
]
|
|
41
42
|
},
|
|
42
43
|
"devDependencies": {
|
|
@@ -1,11 +0,0 @@
|
|
|
1
|
-
import { type IExecuteFunctions, type ISupplyDataFunctions, type INodeType, type SupplyData } from 'n8n-workflow';
|
|
2
|
-
export declare class Subagent implements INodeType {
|
|
3
|
-
description: import("n8n-workflow").INodeTypeDescription;
|
|
4
|
-
methods: {
|
|
5
|
-
listSearch: {
|
|
6
|
-
modelSearch: typeof import("../shared/methods/listSearch").modelSearch;
|
|
7
|
-
};
|
|
8
|
-
};
|
|
9
|
-
execute(this: IExecuteFunctions): Promise<import("n8n-workflow").INodeExecutionData[][]>;
|
|
10
|
-
supplyData(this: ISupplyDataFunctions, itemIndex: number): Promise<SupplyData>;
|
|
11
|
-
}
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.Subagent = void 0;
|
|
4
|
-
const description_1 = require("./description");
|
|
5
|
-
const router_1 = require("../shared/core/execution/router");
|
|
6
|
-
const manager_1 = require("../shared/core/tools/manager");
|
|
7
|
-
const listSearch_1 = require("../shared/methods/listSearch");
|
|
8
|
-
class Subagent {
|
|
9
|
-
constructor() {
|
|
10
|
-
this.description = description_1.description;
|
|
11
|
-
this.methods = {
|
|
12
|
-
listSearch: listSearch_1.listSearch,
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
async execute() {
|
|
16
|
-
return await router_1.router.call(this);
|
|
17
|
-
}
|
|
18
|
-
async supplyData(itemIndex) {
|
|
19
|
-
return await manager_1.executeAsTool.call(this, itemIndex);
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
exports.Subagent = Subagent;
|
|
23
|
-
//# sourceMappingURL=Subagent.node.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Subagent.node.js","sourceRoot":"","sources":["../../../nodes/Subagent/Subagent.node.ts"],"names":[],"mappings":";;;AAOA,+CAA4C;AAC5C,4DAAyD;AACzD,0DAA6D;AAC7D,6DAA0D;AAE1D,MAAa,QAAQ;IAArB;QACC,gBAAW,GAAG,yBAAW,CAAC;QAE1B,YAAO,GAAG;YACT,UAAU,EAAV,uBAAU;SACV,CAAC;IAWH,CAAC;IARA,KAAK,CAAC,OAAO;QACZ,OAAO,MAAM,eAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;IAGD,KAAK,CAAC,UAAU,CAA6B,SAAiB;QAC7D,OAAO,MAAM,uBAAa,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAClD,CAAC;CACD;AAhBD,4BAgBC"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.description = void 0;
|
|
4
|
-
const descriptionGenerator_1 = require("../shared/config/descriptionGenerator");
|
|
5
|
-
exports.description = (0, descriptionGenerator_1.generateDescription)('subAgent', {
|
|
6
|
-
displayName: 'AI Subagent',
|
|
7
|
-
defaults: { name: 'AI Subagent' },
|
|
8
|
-
description: 'Subagent capable of using tools and subagents.',
|
|
9
|
-
group: ['output'],
|
|
10
|
-
codex: {
|
|
11
|
-
alias: [
|
|
12
|
-
'Special',
|
|
13
|
-
'General',
|
|
14
|
-
'AI',
|
|
15
|
-
'Agent',
|
|
16
|
-
'Subagent',
|
|
17
|
-
'OpenAI',
|
|
18
|
-
'LiteLLM',
|
|
19
|
-
'LangChain',
|
|
20
|
-
'ChatGPT',
|
|
21
|
-
'assistant',
|
|
22
|
-
'Chat',
|
|
23
|
-
'Conversational',
|
|
24
|
-
'Plan and Execute',
|
|
25
|
-
'ReAct',
|
|
26
|
-
'Tools',
|
|
27
|
-
],
|
|
28
|
-
categories: ['AI'],
|
|
29
|
-
subcategories: {
|
|
30
|
-
AI: ['Miscellaneous', 'Tools'],
|
|
31
|
-
Tools: ['Recommended Tools', 'Other Tools'],
|
|
32
|
-
},
|
|
33
|
-
},
|
|
34
|
-
});
|
|
35
|
-
//# sourceMappingURL=description.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"description.js","sourceRoot":"","sources":["../../../nodes/Subagent/description.ts"],"names":[],"mappings":";;;AAAA,gFAA4E;AAG/D,QAAA,WAAW,GAAyB,IAAA,0CAAmB,EACnE,UAAU,EACV;IACC,WAAW,EAAE,aAAa;IAC1B,QAAQ,EAAE,EAAE,IAAI,EAAE,aAAa,EAAE;IACjC,WAAW,EAAE,gDAAgD;IAC7D,KAAK,EAAE,CAAC,QAAQ,CAAC;IACjB,KAAK,EAAE;QACN,KAAK,EAAE;YACN,SAAS;YACT,SAAS;YACT,IAAI;YACJ,OAAO;YACP,UAAU;YACV,QAAQ;YACR,SAAS;YACT,WAAW;YACX,SAAS;YACT,WAAW;YACX,MAAM;YACN,gBAAgB;YAChB,kBAAkB;YAClB,OAAO;YACP,OAAO;SACP;QACD,UAAU,EAAE,CAAC,IAAI,CAAC;QAClB,aAAa,EAAE;YACd,EAAE,EAAE,CAAC,eAAe,EAAE,OAAO,CAAC;YAC9B,KAAK,EAAE,CAAC,mBAAmB,EAAE,aAAa,CAAC;SAC3C;KACD;CACD,CACD,CAAC"}
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import type { IExecuteFunctions, INodeExecutionData, IDataObject } from 'n8n-workflow';
|
|
2
|
-
import type { BaseChatMemory } from 'langchain/memory';
|
|
3
|
-
import type { ChatCompletion } from '../api/types';
|
|
4
|
-
import { ExtractedParameters } from './parameters';
|
|
5
|
-
export declare function hasEmptyContent(response: ChatCompletion): boolean;
|
|
6
|
-
export declare function executeWithFallback(executeFunctions: IExecuteFunctions, params: ExtractedParameters, memory: BaseChatMemory | undefined, messages: IDataObject[], index: number, parentMessageContentStr: string, parentMessageContentObj: object): Promise<INodeExecutionData[]>;
|
|
7
|
-
export declare function executeSingleModel(executeFunctions: IExecuteFunctions, params: ExtractedParameters, memory: BaseChatMemory | undefined, messages: IDataObject[], index: number, parentMessageContentStr: string, parentMessageContentObj: object, modelToUse: string): Promise<INodeExecutionData[]>;
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.hasEmptyContent = hasEmptyContent;
|
|
4
|
-
exports.executeWithFallback = executeWithFallback;
|
|
5
|
-
exports.executeSingleModel = executeSingleModel;
|
|
6
|
-
const responseConfig_1 = require("./responseConfig");
|
|
7
|
-
const toolSetup_1 = require("./toolSetup");
|
|
8
|
-
const requestBuilder_1 = require("./requestBuilder");
|
|
9
|
-
const toolExecutor_1 = require("./toolExecutor");
|
|
10
|
-
const outputProcessor_1 = require("./outputProcessor");
|
|
11
|
-
const memory_1 = require("./memory");
|
|
12
|
-
function hasEmptyContent(response) {
|
|
13
|
-
var _a, _b, _c;
|
|
14
|
-
const content = (_c = (_b = (_a = response === null || response === void 0 ? void 0 : response.choices) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.message) === null || _c === void 0 ? void 0 : _c.content;
|
|
15
|
-
return !content || content.trim() === '' || content === 'null' || content === 'undefined';
|
|
16
|
-
}
|
|
17
|
-
async function executeWithFallback(executeFunctions, params, memory, messages, index, parentMessageContentStr, parentMessageContentObj) {
|
|
18
|
-
const shouldUseFallback = params.fallbackModel &&
|
|
19
|
-
params.fallbackModel.trim() !== '' &&
|
|
20
|
-
params.fallbackModel !== params.model;
|
|
21
|
-
try {
|
|
22
|
-
const result = await executeSingleModel(executeFunctions, params, memory, messages, index, parentMessageContentStr, parentMessageContentObj, params.model);
|
|
23
|
-
if (shouldUseFallback && result.length > 0 && result[0].json.response) {
|
|
24
|
-
const response = result[0].json.response;
|
|
25
|
-
if (hasEmptyContent(response)) {
|
|
26
|
-
console.log(`Primary model ${params.model} returned empty content, trying fallback model ${params.fallbackModel}`);
|
|
27
|
-
return await executeSingleModel(executeFunctions, params, memory, messages, index, parentMessageContentStr, parentMessageContentObj, params.fallbackModel);
|
|
28
|
-
}
|
|
29
|
-
}
|
|
30
|
-
return result;
|
|
31
|
-
}
|
|
32
|
-
catch (error) {
|
|
33
|
-
if (shouldUseFallback) {
|
|
34
|
-
console.log(`Primary model ${params.model} failed with error, trying fallback model ${params.fallbackModel}:`, error);
|
|
35
|
-
try {
|
|
36
|
-
return await executeSingleModel(executeFunctions, params, memory, messages, index, parentMessageContentStr, parentMessageContentObj, params.fallbackModel);
|
|
37
|
-
}
|
|
38
|
-
catch (fallbackError) {
|
|
39
|
-
console.error(`Fallback model ${params.fallbackModel} also failed:`, fallbackError);
|
|
40
|
-
throw fallbackError;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
throw error;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
async function executeSingleModel(executeFunctions, params, memory, messages, index, parentMessageContentStr, parentMessageContentObj, modelToUse) {
|
|
47
|
-
var _a, _b;
|
|
48
|
-
let response_format = (0, responseConfig_1.configureResponseFormat)(params.responseFormat, params.outputJsonSchemaDefinition, params.structuredOutputName, params.structuredOutputDescription, params.structuredOutputProperties, params.structuredOutputIsArray, params.structuredOutputArrayName, params.structuredOutputArrayDescription);
|
|
49
|
-
const { tools, invokableTools, tool_choice, structuredOutputTool, updatedResponseFormat } = await (0, toolSetup_1.setupTools)(executeFunctions, params.structuredOutputToolsMode, response_format);
|
|
50
|
-
response_format = updatedResponseFormat;
|
|
51
|
-
const body = (0, requestBuilder_1.prepareRequestBody)(modelToUse, messages, tools, tool_choice, response_format, params.options, params.customParameters);
|
|
52
|
-
const originalMessagesLength = messages.length;
|
|
53
|
-
const { response, output } = await (0, toolExecutor_1.processToolCalls)(executeFunctions, body, messages, invokableTools, structuredOutputTool, params.maxToolsIterations, params.abortSignal);
|
|
54
|
-
const outputData = await (0, outputProcessor_1.prepareOutputData)(response, output, messages, originalMessagesLength, params.addToOutput, params.agentType, executeFunctions, index, body, modelToUse, parentMessageContentStr);
|
|
55
|
-
if (memory && ((_b = (_a = response === null || response === void 0 ? void 0 : response.choices) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.message)) {
|
|
56
|
-
const outputStringified = typeof output === 'string' ? output : JSON.stringify(output);
|
|
57
|
-
await (0, memory_1.saveToMemory)(memory, messages, response, outputStringified, params.saveToolCallsInChatMemory, originalMessagesLength);
|
|
58
|
-
}
|
|
59
|
-
return outputData;
|
|
60
|
-
}
|
|
61
|
-
//# sourceMappingURL=executor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"executor.js","sourceRoot":"","sources":["../../../../nodes/shared/actions/executor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { IExecuteFunctions, IDataObject } from 'n8n-workflow';
|
|
2
|
-
import type { BaseChatMemory } from 'langchain/memory';
|
|
3
|
-
import type { ChatCompletion } from '../api/types';
|
|
4
|
-
export declare function getMemoryFromInput(executeFunctions: IExecuteFunctions): Promise<BaseChatMemory | undefined>;
|
|
5
|
-
export declare function saveToMemory(memory: BaseChatMemory | undefined, messages: IDataObject[], response: ChatCompletion, outputStringified: string, saveToolCallsInChatMemory: boolean, originalMessagesLength?: number): Promise<void>;
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.getMemoryFromInput = getMemoryFromInput;
|
|
4
|
-
exports.saveToMemory = saveToMemory;
|
|
5
|
-
const messages_1 = require("@langchain/core/messages");
|
|
6
|
-
async function getMemoryFromInput(executeFunctions) {
|
|
7
|
-
let memoryInput;
|
|
8
|
-
try {
|
|
9
|
-
memoryInput = (await executeFunctions.getInputConnectionData('ai_memory', 0, undefined));
|
|
10
|
-
}
|
|
11
|
-
catch (error) {
|
|
12
|
-
memoryInput = undefined;
|
|
13
|
-
}
|
|
14
|
-
return Array.isArray(memoryInput) ? memoryInput[0] : memoryInput;
|
|
15
|
-
}
|
|
16
|
-
async function saveToMemory(memory, messages, response, outputStringified, saveToolCallsInChatMemory, originalMessagesLength = 0) {
|
|
17
|
-
var _a, _b, _c, _d, _e;
|
|
18
|
-
if (!memory || !((_b = (_a = response === null || response === void 0 ? void 0 : response.choices) === null || _a === void 0 ? void 0 : _a[0]) === null || _b === void 0 ? void 0 : _b.message)) {
|
|
19
|
-
return;
|
|
20
|
-
}
|
|
21
|
-
if (!saveToolCallsInChatMemory) {
|
|
22
|
-
const lastUserMessageContent = ((_c = [...messages].reverse().find((msg) => msg.role === 'user')) === null || _c === void 0 ? void 0 : _c.content) || '';
|
|
23
|
-
let assistantContent = outputStringified;
|
|
24
|
-
if (!assistantContent || assistantContent === 'null' || assistantContent === 'undefined') {
|
|
25
|
-
assistantContent = response.choices[0].message.content || '';
|
|
26
|
-
if (!assistantContent && ((_d = response.choices[0].message.tool_calls) === null || _d === void 0 ? void 0 : _d.length)) {
|
|
27
|
-
assistantContent =
|
|
28
|
-
'Used tools: ' +
|
|
29
|
-
response.choices[0].message.tool_calls.map((tc) => tc.function.name).join(', ');
|
|
30
|
-
}
|
|
31
|
-
else if (!assistantContent) {
|
|
32
|
-
assistantContent = '[No response content available]';
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
if (typeof assistantContent !== 'string') {
|
|
36
|
-
assistantContent = JSON.stringify(assistantContent);
|
|
37
|
-
}
|
|
38
|
-
try {
|
|
39
|
-
await memory.saveContext({ input: lastUserMessageContent }, { output: assistantContent });
|
|
40
|
-
}
|
|
41
|
-
catch (error) {
|
|
42
|
-
console.error('Error saving messages to memory:', error);
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
else {
|
|
46
|
-
try {
|
|
47
|
-
const lastUserMessage = [...messages].reverse().find((msg) => msg.role === 'user');
|
|
48
|
-
if (lastUserMessage === null || lastUserMessage === void 0 ? void 0 : lastUserMessage.content) {
|
|
49
|
-
const humanMessage = new messages_1.HumanMessage(lastUserMessage.content);
|
|
50
|
-
await memory.chatHistory.addMessage(humanMessage);
|
|
51
|
-
}
|
|
52
|
-
const conversationMessages = [];
|
|
53
|
-
for (let i = originalMessagesLength; i < messages.length; i++) {
|
|
54
|
-
const msg = messages[i];
|
|
55
|
-
if (msg.role === 'assistant' || msg.role === 'tool') {
|
|
56
|
-
conversationMessages.push({
|
|
57
|
-
role: msg.role,
|
|
58
|
-
content: msg.content || '',
|
|
59
|
-
...(msg.tool_calls && { tool_calls: msg.tool_calls }),
|
|
60
|
-
...(msg.tool_call_id && { tool_call_id: msg.tool_call_id }),
|
|
61
|
-
...(msg.refusal && { refusal: msg.refusal }),
|
|
62
|
-
});
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
let finalContent = outputStringified;
|
|
66
|
-
if (!finalContent || finalContent === 'null' || finalContent === 'undefined') {
|
|
67
|
-
finalContent = response.choices[0].message.content || '';
|
|
68
|
-
if (!finalContent && ((_e = response.choices[0].message.tool_calls) === null || _e === void 0 ? void 0 : _e.length)) {
|
|
69
|
-
finalContent =
|
|
70
|
-
'Used tools: ' +
|
|
71
|
-
response.choices[0].message.tool_calls.map((tc) => tc.function.name).join(', ');
|
|
72
|
-
}
|
|
73
|
-
else if (!finalContent) {
|
|
74
|
-
finalContent = '[No response content available]';
|
|
75
|
-
}
|
|
76
|
-
}
|
|
77
|
-
if (typeof finalContent !== 'string') {
|
|
78
|
-
finalContent = JSON.stringify(finalContent);
|
|
79
|
-
}
|
|
80
|
-
const aiMessage = new messages_1.AIMessage({
|
|
81
|
-
content: finalContent,
|
|
82
|
-
tool_calls: conversationMessages,
|
|
83
|
-
additional_kwargs: {},
|
|
84
|
-
response_metadata: {},
|
|
85
|
-
});
|
|
86
|
-
await memory.chatHistory.addMessage(aiMessage);
|
|
87
|
-
}
|
|
88
|
-
catch (error) {
|
|
89
|
-
console.error('Error saving messages with tool calls to memory:', error);
|
|
90
|
-
}
|
|
91
|
-
}
|
|
92
|
-
}
|
|
93
|
-
//# sourceMappingURL=memory.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"memory.js","sourceRoot":"","sources":["../../../../nodes/shared/actions/memory.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.execute = execute;
|
|
4
|
-
const parameters_1 = require("./parameters");
|
|
5
|
-
const memory_1 = require("./memory");
|
|
6
|
-
const messageProcessor_1 = require("./messageProcessor");
|
|
7
|
-
const executor_1 = require("./executor");
|
|
8
|
-
async function execute(i, parentMessageContentStr = '', parentMessageContentObj = {}) {
|
|
9
|
-
const params = (0, parameters_1.extractParameters)(this, i);
|
|
10
|
-
const memory = await (0, memory_1.getMemoryFromInput)(this);
|
|
11
|
-
const messages = await (0, messageProcessor_1.processMessages)(params.rawMessagesToSend, memory, parentMessageContentStr, parentMessageContentObj, params.loadToolCallsFromChatMemory);
|
|
12
|
-
return await (0, executor_1.executeWithFallback)(this, params, memory, messages, i, parentMessageContentStr, parentMessageContentObj);
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=message.operation.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"message.operation.js","sourceRoot":"","sources":["../../../../nodes/shared/actions/message.operation.ts"],"names":[],"mappings":";;AAUA,0BA+BC;AAvCD,6CAAiD;AACjD,qCAA8C;AAC9C,yDAAqD;AACrD,yCAAiD;AAK1C,KAAK,UAAU,OAAO,CAE5B,CAAS,EACT,0BAAkC,EAAE,EACpC,0BAAkC,EAAE;IAGpC,MAAM,MAAM,GAAG,IAAA,8BAAiB,EAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAG1C,MAAM,MAAM,GAAG,MAAM,IAAA,2BAAkB,EAAC,IAAI,CAAC,CAAC;IAG9C,MAAM,QAAQ,GAAG,MAAM,IAAA,kCAAe,EACrC,MAAM,CAAC,iBAAiB,EACxB,MAAM,EACN,uBAAuB,EACvB,uBAAuB,EACvB,MAAM,CAAC,2BAA2B,CAClC,CAAC;IAGF,OAAO,MAAM,IAAA,8BAAmB,EAC/B,IAAI,EACJ,MAAM,EACN,MAAM,EACN,QAAQ,EACR,CAAC,EACD,uBAAuB,EACvB,uBAAuB,CACvB,CAAC;AACH,CAAC"}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
import type { IDataObject } from 'n8n-workflow';
|
|
2
|
-
import type { BaseChatMemory } from 'langchain/memory';
|
|
3
|
-
import { Message } from '../message/types';
|
|
4
|
-
export declare function processMessages(rawMessagesToSend: Message[], memory: BaseChatMemory | undefined, parentMessageContentStr: string, parentMessageContentObj: object, loadToolCallsFromChatMemory?: boolean): Promise<IDataObject[]>;
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.processMessages = processMessages;
|
|
4
|
-
const processor_1 = require("../message/processor");
|
|
5
|
-
async function processMessages(rawMessagesToSend, memory, parentMessageContentStr, parentMessageContentObj, loadToolCallsFromChatMemory = true) {
|
|
6
|
-
let messages = (await (0, processor_1.unpackChatHistoryAndMemory)(rawMessagesToSend, memory, loadToolCallsFromChatMemory));
|
|
7
|
-
messages = messages
|
|
8
|
-
.map((item) => ({
|
|
9
|
-
...item,
|
|
10
|
-
content: typeof item.content === 'string' ? item.content.trim() : item.content,
|
|
11
|
-
}))
|
|
12
|
-
.filter((item) => item.content !== '' ||
|
|
13
|
-
(item.role === 'assistant' && item.tool_calls) ||
|
|
14
|
-
item.role === 'tool');
|
|
15
|
-
if (parentMessageContentStr !== '') {
|
|
16
|
-
messages.push({ role: 'user', content: parentMessageContentStr });
|
|
17
|
-
}
|
|
18
|
-
else if (Object.keys(parentMessageContentObj).length !== 0) {
|
|
19
|
-
messages.push({ role: 'user', content: JSON.stringify(parentMessageContentObj) });
|
|
20
|
-
}
|
|
21
|
-
return messages;
|
|
22
|
-
}
|
|
23
|
-
//# sourceMappingURL=messageProcessor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"messageProcessor.js","sourceRoot":"","sources":["../../../../nodes/shared/actions/messageProcessor.ts"],"names":[],"mappings":";;AAQA,0CAsCC;AA3CD,oDAAkE;AAK3D,KAAK,UAAU,eAAe,CACpC,iBAA4B,EAC5B,MAAkC,EAClC,uBAA+B,EAC/B,uBAA+B,EAC/B,8BAAuC,IAAI;IAG3C,IAAI,QAAQ,GAAG,CAAC,MAAM,IAAA,sCAA0B,EAC/C,iBAAiB,EACjB,MAAM,EACN,2BAA2B,CAC3B,CAAkB,CAAC;IAGpB,QAAQ,GAAG,QAAQ;SACjB,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACf,GAAG,IAAI;QACP,OAAO,EAAE,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO;KAC9E,CAAC,CAAC;SACF,MAAM,CACN,CAAC,IAAI,EAAE,EAAE,CACR,IAAI,CAAC,OAAO,KAAK,EAAE;QACnB,CAAE,IAAY,CAAC,IAAI,KAAK,WAAW,IAAK,IAAY,CAAC,UAAU,CAAC;QAC/D,IAAY,CAAC,IAAI,KAAK,MAAM,CAC9B,CAAC;IAGH,IAAI,uBAAuB,KAAK,EAAE,EAAE,CAAC;QAEpC,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,uBAAuB,EAAE,CAAC,CAAC;IACnE,CAAC;SAAM,IAAI,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAG9D,QAAQ,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,SAAS,CAAC,uBAAuB,CAAC,EAAE,CAAC,CAAC;IACnF,CAAC;IAED,OAAO,QAAQ,CAAC;AACjB,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import type { IExecuteFunctions, INodeExecutionData, IDataObject } from 'n8n-workflow';
|
|
2
|
-
import type { ChatCompletion } from '../api/types';
|
|
3
|
-
export declare function prepareOutputData(response: ChatCompletion, output: any, messages: IDataObject[], originalMessagesLength: number, addToOutput: string[], agentType: string, executeFunctions: IExecuteFunctions, index: number, body: IDataObject, model: string, parentMessageContentStr: string): Promise<INodeExecutionData[]>;
|
|
4
|
-
export declare function addModelOverview(executeFunctions: IExecuteFunctions, model: string, outputData: INodeExecutionData[]): Promise<void>;
|
|
5
|
-
export declare function reorderOutputFields(outputData: INodeExecutionData[]): void;
|
|
@@ -1,112 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.prepareOutputData = prepareOutputData;
|
|
4
|
-
exports.addModelOverview = addModelOverview;
|
|
5
|
-
exports.reorderOutputFields = reorderOutputFields;
|
|
6
|
-
const processor_1 = require("../message/processor");
|
|
7
|
-
async function prepareOutputData(response, output, messages, originalMessagesLength, addToOutput, agentType, executeFunctions, index, body, model, parentMessageContentStr) {
|
|
8
|
-
const outputData = [];
|
|
9
|
-
if (agentType == 'subAgent' && parentMessageContentStr !== '') {
|
|
10
|
-
outputData.push({
|
|
11
|
-
json: { response: response },
|
|
12
|
-
pairedItem: { item: 0 },
|
|
13
|
-
});
|
|
14
|
-
return outputData;
|
|
15
|
-
}
|
|
16
|
-
if (body.response_format) {
|
|
17
|
-
response.choices = response.choices.map((choice) => {
|
|
18
|
-
try {
|
|
19
|
-
choice.message.content = JSON.parse(choice.message.content);
|
|
20
|
-
}
|
|
21
|
-
catch (error) { }
|
|
22
|
-
return choice;
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
output = output ? output : response.choices[0].message.content;
|
|
26
|
-
var outputStringified = typeof output === 'string' ? output : JSON.stringify(output);
|
|
27
|
-
outputData.push({ json: { output: output }, pairedItem: { item: index } });
|
|
28
|
-
if (addToOutput.includes('fullResponse') || agentType === 'subAgent') {
|
|
29
|
-
outputData.forEach((item) => {
|
|
30
|
-
item.json.response = response;
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
|
-
const newMessages = messages.slice(originalMessagesLength);
|
|
34
|
-
if (addToOutput.includes('tool_calls')) {
|
|
35
|
-
outputData.forEach((item) => {
|
|
36
|
-
item.json.tool_calls = (0, processor_1.extractToolMessages)(newMessages);
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
if (addToOutput.includes('chatHistory')) {
|
|
40
|
-
const includeToolCallsInChatHistory = executeFunctions.getNodeParameter('includeToolCallsInChatHistory', index, true);
|
|
41
|
-
const includeSystemMessagesInChatHistory = executeFunctions.getNodeParameter('includeSystemMessagesInChatHistory', index, true);
|
|
42
|
-
const includeReasoningInChatHistory = executeFunctions.getNodeParameter('includeReasoningInChatHistory', index, false);
|
|
43
|
-
let chatHistoryMessages = structuredClone(messages);
|
|
44
|
-
if (!includeToolCallsInChatHistory) {
|
|
45
|
-
chatHistoryMessages = chatHistoryMessages
|
|
46
|
-
.filter((msg) => msg.content !== null && msg.role !== 'tool')
|
|
47
|
-
.map(({ role, content }) => ({ role, content }));
|
|
48
|
-
}
|
|
49
|
-
if (!includeSystemMessagesInChatHistory) {
|
|
50
|
-
chatHistoryMessages = chatHistoryMessages.filter((msg) => msg.role !== 'system');
|
|
51
|
-
}
|
|
52
|
-
const finalMessage = response === null || response === void 0 ? void 0 : response.choices[0].message;
|
|
53
|
-
if (finalMessage) {
|
|
54
|
-
let rootMessage = {
|
|
55
|
-
role: finalMessage.role,
|
|
56
|
-
content: outputStringified,
|
|
57
|
-
};
|
|
58
|
-
chatHistoryMessages.push(rootMessage);
|
|
59
|
-
}
|
|
60
|
-
for (let i = 0; i < chatHistoryMessages.length; i++) {
|
|
61
|
-
const msg = chatHistoryMessages[i];
|
|
62
|
-
if (msg.role === 'assistant') {
|
|
63
|
-
delete msg.reasoning_details;
|
|
64
|
-
if (!includeReasoningInChatHistory) {
|
|
65
|
-
delete msg.reasoning;
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
outputData.forEach((item) => {
|
|
70
|
-
item.json.chat_history = chatHistoryMessages;
|
|
71
|
-
});
|
|
72
|
-
}
|
|
73
|
-
if (addToOutput.includes('request')) {
|
|
74
|
-
outputData.forEach((item) => {
|
|
75
|
-
item.json.request = body;
|
|
76
|
-
});
|
|
77
|
-
}
|
|
78
|
-
if (addToOutput.includes('modelOverview') && model.includes('/')) {
|
|
79
|
-
await addModelOverview(executeFunctions, model, outputData);
|
|
80
|
-
}
|
|
81
|
-
reorderOutputFields(outputData);
|
|
82
|
-
return outputData;
|
|
83
|
-
}
|
|
84
|
-
async function addModelOverview(executeFunctions, model, outputData) {
|
|
85
|
-
const requestOptions = {
|
|
86
|
-
method: 'GET',
|
|
87
|
-
url: `https://openrouter.ai/api/v1/models/${model}/endpoints`,
|
|
88
|
-
};
|
|
89
|
-
for (const item of outputData) {
|
|
90
|
-
try {
|
|
91
|
-
const modelOverviewResponse = await executeFunctions.helpers.httpRequest(requestOptions);
|
|
92
|
-
item.json.model_overview = modelOverviewResponse;
|
|
93
|
-
}
|
|
94
|
-
catch (error) {
|
|
95
|
-
console.error('Error fetching model endpoints:', error);
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
}
|
|
99
|
-
function reorderOutputFields(outputData) {
|
|
100
|
-
outputData.forEach((item) => {
|
|
101
|
-
const reordered = {
|
|
102
|
-
output: item.json.output,
|
|
103
|
-
request: item.json.request,
|
|
104
|
-
tool_calls: item.json.tool_calls,
|
|
105
|
-
response: item.json.response,
|
|
106
|
-
chat_history: item.json.chat_history,
|
|
107
|
-
model_overview: item.json.model_overview,
|
|
108
|
-
};
|
|
109
|
-
item.json = Object.fromEntries(Object.entries(reordered).filter(([_, value]) => value !== undefined));
|
|
110
|
-
});
|
|
111
|
-
}
|
|
112
|
-
//# sourceMappingURL=outputProcessor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"outputProcessor.js","sourceRoot":"","sources":["../../../../nodes/shared/actions/outputProcessor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ISupplyDataFunctions } from 'n8n-workflow';
|
|
2
|
-
export interface FromAIParameter {
|
|
3
|
-
key: string;
|
|
4
|
-
description?: string;
|
|
5
|
-
type?: string;
|
|
6
|
-
defaultValue?: any;
|
|
7
|
-
}
|
|
8
|
-
export declare function parseFromAIParameters(executeFunctions: ISupplyDataFunctions, itemIndex: number): FromAIParameter[];
|
|
9
|
-
export declare function createSchemaFromParameters(parameters: FromAIParameter[]): any;
|
|
@@ -1,96 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.parseFromAIParameters = parseFromAIParameters;
|
|
4
|
-
exports.createSchemaFromParameters = createSchemaFromParameters;
|
|
5
|
-
function parseFromAIParameters(executeFunctions, itemIndex) {
|
|
6
|
-
try {
|
|
7
|
-
const rawMessages = executeFunctions.getNodeParameter('messagesToSend.values', itemIndex, []);
|
|
8
|
-
const parameters = [];
|
|
9
|
-
const seen = new Set();
|
|
10
|
-
const fromAIRegex = /\$fromAI\s*\(\s*["']([^"']+)["']\s*(?:,\s*["']([^"']*?)["']\s*)?(?:,\s*["']([^"']*?)["']\s*)?(?:,\s*([^)]*?))?\s*\)/g;
|
|
11
|
-
for (const message of rawMessages) {
|
|
12
|
-
if (message.content && typeof message.content === 'string') {
|
|
13
|
-
let match;
|
|
14
|
-
while ((match = fromAIRegex.exec(message.content)) !== null) {
|
|
15
|
-
const [, key, description, type, defaultValue] = match;
|
|
16
|
-
if (seen.has(key)) {
|
|
17
|
-
continue;
|
|
18
|
-
}
|
|
19
|
-
seen.add(key);
|
|
20
|
-
const param = {
|
|
21
|
-
key: key.trim(),
|
|
22
|
-
description: (description === null || description === void 0 ? void 0 : description.trim()) || `Parameter: ${key}`,
|
|
23
|
-
type: (type === null || type === void 0 ? void 0 : type.trim()) || 'string'
|
|
24
|
-
};
|
|
25
|
-
if (defaultValue !== undefined) {
|
|
26
|
-
const trimmedDefault = defaultValue.trim();
|
|
27
|
-
if (trimmedDefault.startsWith('"') && trimmedDefault.endsWith('"')) {
|
|
28
|
-
param.defaultValue = trimmedDefault.slice(1, -1);
|
|
29
|
-
}
|
|
30
|
-
else if (trimmedDefault.startsWith("'") && trimmedDefault.endsWith("'")) {
|
|
31
|
-
param.defaultValue = trimmedDefault.slice(1, -1);
|
|
32
|
-
}
|
|
33
|
-
else if (trimmedDefault === 'true' || trimmedDefault === 'false') {
|
|
34
|
-
param.defaultValue = trimmedDefault === 'true';
|
|
35
|
-
}
|
|
36
|
-
else if (!isNaN(Number(trimmedDefault))) {
|
|
37
|
-
param.defaultValue = Number(trimmedDefault);
|
|
38
|
-
}
|
|
39
|
-
else {
|
|
40
|
-
param.defaultValue = trimmedDefault;
|
|
41
|
-
}
|
|
42
|
-
}
|
|
43
|
-
parameters.push(param);
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
}
|
|
47
|
-
return parameters;
|
|
48
|
-
}
|
|
49
|
-
catch (error) {
|
|
50
|
-
console.error('Error parsing $fromAI parameters:', error);
|
|
51
|
-
return [];
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
function createSchemaFromParameters(parameters) {
|
|
55
|
-
var _a;
|
|
56
|
-
if (parameters.length === 0) {
|
|
57
|
-
return null;
|
|
58
|
-
}
|
|
59
|
-
const properties = {};
|
|
60
|
-
const required = [];
|
|
61
|
-
for (const param of parameters) {
|
|
62
|
-
let propertyType = 'string';
|
|
63
|
-
switch ((_a = param.type) === null || _a === void 0 ? void 0 : _a.toLowerCase()) {
|
|
64
|
-
case 'string':
|
|
65
|
-
propertyType = 'string';
|
|
66
|
-
break;
|
|
67
|
-
case 'number':
|
|
68
|
-
case 'integer':
|
|
69
|
-
propertyType = 'number';
|
|
70
|
-
break;
|
|
71
|
-
case 'boolean':
|
|
72
|
-
propertyType = 'boolean';
|
|
73
|
-
break;
|
|
74
|
-
default:
|
|
75
|
-
propertyType = 'string';
|
|
76
|
-
}
|
|
77
|
-
const property = {
|
|
78
|
-
type: propertyType,
|
|
79
|
-
description: param.description
|
|
80
|
-
};
|
|
81
|
-
if (param.defaultValue !== undefined) {
|
|
82
|
-
property.default = param.defaultValue;
|
|
83
|
-
}
|
|
84
|
-
properties[param.key] = property;
|
|
85
|
-
if (param.defaultValue === undefined) {
|
|
86
|
-
required.push(param.key);
|
|
87
|
-
}
|
|
88
|
-
}
|
|
89
|
-
return {
|
|
90
|
-
type: 'object',
|
|
91
|
-
properties,
|
|
92
|
-
required,
|
|
93
|
-
additionalProperties: false
|
|
94
|
-
};
|
|
95
|
-
}
|
|
96
|
-
//# sourceMappingURL=parameterParser.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"parameterParser.js","sourceRoot":"","sources":["../../../../nodes/shared/actions/parameterParser.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
import type { IExecuteFunctions, IDataObject } from 'n8n-workflow';
|
|
2
|
-
import { VisualEditorProperties } from '../tool/visualEditor';
|
|
3
|
-
import { Message } from '../message/types';
|
|
4
|
-
export type ExtractedParameters = {
|
|
5
|
-
model: string;
|
|
6
|
-
fallbackModel: string;
|
|
7
|
-
agentType: string;
|
|
8
|
-
rawMessagesToSend: Message[];
|
|
9
|
-
responseFormat: string;
|
|
10
|
-
addToOutput: string[];
|
|
11
|
-
outputJsonSchemaDefinition: string;
|
|
12
|
-
structuredOutputToolsMode: boolean;
|
|
13
|
-
structuredOutputProperties: VisualEditorProperties[];
|
|
14
|
-
structuredOutputName: string;
|
|
15
|
-
structuredOutputDescription: string;
|
|
16
|
-
structuredOutputIsArray: boolean;
|
|
17
|
-
structuredOutputArrayName: string;
|
|
18
|
-
structuredOutputArrayDescription: string;
|
|
19
|
-
options: IDataObject;
|
|
20
|
-
maxToolsIterations: number;
|
|
21
|
-
customParameters: string;
|
|
22
|
-
saveToolCallsInChatMemory: boolean;
|
|
23
|
-
loadToolCallsFromChatMemory: boolean;
|
|
24
|
-
abortSignal: AbortSignal | undefined;
|
|
25
|
-
};
|
|
26
|
-
export declare function extractParameters(executeFunctions: IExecuteFunctions, index: number): ExtractedParameters;
|