@memberjunction/ai-agents 2.75.0 → 2.77.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/README.md +146 -0
- package/dist/agent-types/base-agent-type.d.ts +19 -3
- package/dist/agent-types/base-agent-type.d.ts.map +1 -1
- package/dist/agent-types/base-agent-type.js +55 -0
- package/dist/agent-types/base-agent-type.js.map +1 -1
- package/dist/agent-types/flow-agent-type.d.ts +38 -0
- package/dist/agent-types/flow-agent-type.d.ts.map +1 -0
- package/dist/agent-types/flow-agent-type.js +462 -0
- package/dist/agent-types/flow-agent-type.js.map +1 -0
- package/dist/agent-types/index.d.ts +1 -0
- package/dist/agent-types/index.d.ts.map +1 -1
- package/dist/agent-types/index.js +3 -0
- package/dist/agent-types/index.js.map +1 -1
- package/dist/agent-types/loop-agent-type.d.ts +8 -5
- package/dist/agent-types/loop-agent-type.d.ts.map +1 -1
- package/dist/agent-types/loop-agent-type.js +22 -54
- package/dist/agent-types/loop-agent-type.js.map +1 -1
- package/dist/base-agent.d.ts.map +1 -1
- package/dist/base-agent.js +115 -36
- package/dist/base-agent.js.map +1 -1
- package/package.json +10 -10
|
@@ -5,74 +5,41 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
|
5
5
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
|
6
6
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
|
7
7
|
};
|
|
8
|
-
var LoopAgentType_1;
|
|
9
8
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
10
9
|
exports.LoadLoopAgentType = exports.LoopAgentType = void 0;
|
|
11
10
|
const global_1 = require("@memberjunction/global");
|
|
12
11
|
const base_agent_type_1 = require("./base-agent-type");
|
|
13
12
|
const core_1 = require("@memberjunction/core");
|
|
14
|
-
let LoopAgentType =
|
|
15
|
-
|
|
16
|
-
super(...arguments);
|
|
17
|
-
this._jsonValidator = new global_1.JSONValidator();
|
|
18
|
-
}
|
|
19
|
-
async DetermineNextStep(promptResult) {
|
|
13
|
+
let LoopAgentType = class LoopAgentType extends base_agent_type_1.BaseAgentType {
|
|
14
|
+
async DetermineNextStep(promptResult, params) {
|
|
20
15
|
try {
|
|
21
16
|
if (!promptResult.success || !promptResult.result) {
|
|
22
|
-
return {
|
|
23
|
-
terminate: false,
|
|
24
|
-
step: 'Failed',
|
|
17
|
+
return this.createNextStep('Failed', {
|
|
25
18
|
errorMessage: promptResult.errorMessage || 'Prompt execution failed'
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
let response;
|
|
29
|
-
try {
|
|
30
|
-
if (typeof promptResult.result === 'string') {
|
|
31
|
-
response = JSON.parse(promptResult.result);
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
response = promptResult.result;
|
|
35
|
-
}
|
|
36
|
-
response = this._jsonValidator.cleanValidationSyntax(response);
|
|
37
|
-
if ((0, core_1.IsVerboseLoggingEnabled)()) {
|
|
38
|
-
console.log('LoopAgentType: Cleaned response from validation syntax', response);
|
|
39
|
-
}
|
|
19
|
+
});
|
|
40
20
|
}
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
step: 'Retry',
|
|
45
|
-
errorMessage: `Failed to parse JSON response: ${parseError.message}`
|
|
46
|
-
};
|
|
21
|
+
const response = this.parseJSONResponse(promptResult);
|
|
22
|
+
if (!response) {
|
|
23
|
+
return this.createRetryStep('Failed to parse JSON response');
|
|
47
24
|
}
|
|
48
25
|
const validationResult = this.isValidLoopResponse(response);
|
|
49
26
|
if (!validationResult.success) {
|
|
50
|
-
return
|
|
51
|
-
terminate: false,
|
|
52
|
-
step: 'Retry',
|
|
53
|
-
errorMessage: validationResult.message
|
|
54
|
-
};
|
|
27
|
+
return this.createRetryStep(validationResult.message);
|
|
55
28
|
}
|
|
56
29
|
if (response.taskComplete) {
|
|
57
30
|
(0, core_1.LogStatusEx)({
|
|
58
31
|
message: '✅ Loop Agent: Task completed successfully. Message: ' + response.message,
|
|
59
32
|
verboseOnly: true
|
|
60
33
|
});
|
|
61
|
-
return {
|
|
62
|
-
terminate: response.taskComplete,
|
|
34
|
+
return this.createSuccessStep({
|
|
63
35
|
message: response.message,
|
|
64
36
|
reasoning: response.reasoning,
|
|
65
37
|
confidence: response.confidence,
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
};
|
|
38
|
+
payloadChangeRequest: response.payloadChangeRequest
|
|
39
|
+
});
|
|
69
40
|
}
|
|
70
41
|
if (!response.nextStep) {
|
|
71
|
-
return
|
|
72
|
-
terminate: false,
|
|
73
|
-
step: 'Retry',
|
|
74
|
-
errorMessage: 'Task not complete but no next step provided'
|
|
75
|
-
};
|
|
42
|
+
return this.createRetryStep('Task not complete but no next step provided');
|
|
76
43
|
}
|
|
77
44
|
const retVal = {
|
|
78
45
|
payloadChangeRequest: response.payloadChangeRequest,
|
|
@@ -129,11 +96,7 @@ let LoopAgentType = LoopAgentType_1 = class LoopAgentType extends base_agent_typ
|
|
|
129
96
|
}
|
|
130
97
|
catch (error) {
|
|
131
98
|
(0, core_1.LogError)(`Error in LoopAgentType.DetermineNextStep: ${error.message}`);
|
|
132
|
-
return {
|
|
133
|
-
terminate: false,
|
|
134
|
-
step: 'Retry',
|
|
135
|
-
errorMessage: `Failed to parse loop agent response: ${error.message}`
|
|
136
|
-
};
|
|
99
|
+
return this.createRetryStep(`Failed to parse loop agent response: ${error.message}`);
|
|
137
100
|
}
|
|
138
101
|
}
|
|
139
102
|
isValidLoopResponse(simpleResponse) {
|
|
@@ -218,17 +181,22 @@ let LoopAgentType = LoopAgentType_1 = class LoopAgentType extends base_agent_typ
|
|
|
218
181
|
}
|
|
219
182
|
return { success: true };
|
|
220
183
|
}
|
|
221
|
-
async InjectPayload(payload, prompt) {
|
|
184
|
+
async InjectPayload(payload, prompt, agentInfo) {
|
|
222
185
|
if (!prompt)
|
|
223
186
|
throw new Error('Prompt parameters are required for payload injection');
|
|
224
187
|
if (!prompt.data)
|
|
225
188
|
prompt.data = {};
|
|
226
|
-
prompt.data[
|
|
189
|
+
prompt.data[base_agent_type_1.BaseAgentType.CURRENT_PAYLOAD_PLACEHOLDER] = payload || {};
|
|
190
|
+
}
|
|
191
|
+
async DetermineInitialStep(params) {
|
|
192
|
+
return null;
|
|
193
|
+
}
|
|
194
|
+
async PreProcessRetryStep(params, retryStep) {
|
|
195
|
+
return null;
|
|
227
196
|
}
|
|
228
197
|
};
|
|
229
198
|
exports.LoopAgentType = LoopAgentType;
|
|
230
|
-
LoopAgentType
|
|
231
|
-
exports.LoopAgentType = LoopAgentType = LoopAgentType_1 = __decorate([
|
|
199
|
+
exports.LoopAgentType = LoopAgentType = __decorate([
|
|
232
200
|
(0, global_1.RegisterClass)(base_agent_type_1.BaseAgentType, "LoopAgentType")
|
|
233
201
|
], LoopAgentType);
|
|
234
202
|
function LoadLoopAgentType() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"loop-agent-type.js","sourceRoot":"","sources":["../../src/agent-types/loop-agent-type.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"loop-agent-type.js","sourceRoot":"","sources":["../../src/agent-types/loop-agent-type.ts"],"names":[],"mappings":"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"}
|
package/dist/base-agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"base-agent.d.ts","sourceRoot":"","sources":["../src/base-agent.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,aAAa,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,4BAA4B,EAAE,mBAAmB,EAAqC,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACxN,OAAO,EAAE,QAAQ,EAA4F,MAAM,sBAAsB,CAAC;AAE1I,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAKjD,OAAO,EACH,cAAc,EACd,iBAAiB,EAEjB,kBAAkB,EAElB,kBAAkB,EAElB,kBAAkB,EAClB,WAAW,EACX,oBAAoB,EACpB,iBAAiB,EACpB,MAAM,8BAA8B,CAAC;AACtC,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,8BAA8B,CAAC;AA6DlF,qBAAa,SAAS;IAKlB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAAM;IAMpD,OAAO,CAAC,aAAa,CAAwC;IAM7D,OAAO,CAAC,SAAS,CAA4B;IAO7C,OAAO,CAAC,gBAAgB,CAAkC;IAO1D,OAAO,CAAC,4BAA4B,CAAa;IAMjD,OAAO,CAAC,SAAS,CAAyC;IAK1D,IAAW,QAAQ,IAAI,wBAAwB,GAAG,IAAI,CAErD;IAOD,OAAO,CAAC,eAAe,CAAgB;IAMvC,OAAO,CAAC,MAAM,CAAa;IAO3B,OAAO,CAAC,iBAAiB,CAA8B;IAMvD,OAAO,CAAC,aAAa,CAA4B;IAMjD,OAAO,CAAC,eAAe,CAAwC;IAO/D,OAAO,CAAC,qBAAqB,CAAa;IAQ1C,IAAW,oBAAoB,IAAI,MAAM,CAExC;IAQD,SAAS,CAAC,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,GAAE,OAAe,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,IAAI;IAerG,SAAS,CAAC,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM,EAAE,OAAO,CAAC,EAAE;QAChD,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC/B,KAAK,CAAC,EAAE,aAAa,CAAC;QACtB,SAAS,CAAC,EAAE,iBAAiB,CAAC;QAC9B,QAAQ,CAAC,EAAE,SAAS,GAAG,OAAO,GAAG,UAAU,CAAC;KAC/C,GAAG,IAAI;IAiCR,OAAO,CAAC,oBAAoB;IAoEf,OAAO,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,kBAAkB,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;cAwGrF,yBAAyB,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;cAuBrF,oBAAoB,CAAC,CAAC,GAAG,GAAG,EACxC,MAAM,EAAE,kBAAkB,EAC1B,MAAM,EAAE,kBAAkB,GAC3B,OAAO,CAAC;QAAC,SAAS,EAAE,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAC,CAAC;cAoDhD,iBAAiB,CAAC,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;YAa1D,gBAAgB;cA8Cd,aAAa,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;cA2BvE,+BAA+B,CAAC,CAAC,GAAG,GAAG,EAAE,MAAM,EAAE,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,kBAAkB,GAAG,IAAI,CAAC;IAiEhI,OAAO,CAAC,+BAA+B;cA8CvB,sBAAsB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"base-agent.d.ts","sourceRoot":"","sources":["../src/base-agent.ts"],"names":[],"mappings":"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"}
|
package/dist/base-agent.js
CHANGED
|
@@ -349,12 +349,8 @@ class BaseAgent {
|
|
|
349
349
|
};
|
|
350
350
|
}
|
|
351
351
|
const systemPrompt = engine.Prompts.find(p => p.ID === agentType.SystemPromptID);
|
|
352
|
-
if (!systemPrompt
|
|
353
|
-
|
|
354
|
-
success: false,
|
|
355
|
-
errorMessage: `System prompt not found for agent type: ${agentType.Name}`
|
|
356
|
-
};
|
|
357
|
-
}
|
|
352
|
+
if (!systemPrompt)
|
|
353
|
+
metadataOptional = true;
|
|
358
354
|
const agentPrompt = engine.AgentPrompts
|
|
359
355
|
.filter(ap => ap.AgentID === agent.ID && ap.Status === 'Active')
|
|
360
356
|
.sort((a, b) => a.ExecutionOrder - b.ExecutionOrder)[0];
|
|
@@ -390,32 +386,51 @@ class BaseAgent {
|
|
|
390
386
|
const childPrompt = config.childPrompt;
|
|
391
387
|
const promptTemplateData = await this.gatherPromptTemplateData(params.agent, params.contextUser, params.data);
|
|
392
388
|
const promptParams = new ai_core_plus_1.AIPromptParams();
|
|
393
|
-
|
|
389
|
+
if (systemPrompt) {
|
|
390
|
+
promptParams.prompt = systemPrompt;
|
|
391
|
+
promptParams.templateMessageRole = 'system';
|
|
392
|
+
}
|
|
393
|
+
else {
|
|
394
|
+
promptParams.prompt = childPrompt;
|
|
395
|
+
promptParams.templateMessageRole = 'user';
|
|
396
|
+
}
|
|
394
397
|
promptParams.data = promptTemplateData;
|
|
395
398
|
promptParams.contextUser = params.contextUser;
|
|
396
399
|
promptParams.conversationMessages = params.conversationMessages;
|
|
397
|
-
promptParams.templateMessageRole = 'system';
|
|
398
400
|
promptParams.verbose = params.verbose;
|
|
399
401
|
const atInstance = await base_agent_type_1.BaseAgentType.GetAgentTypeInstance(config.agentType);
|
|
400
|
-
await atInstance.InjectPayload(payload, promptParams
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
|
|
409
|
-
|
|
410
|
-
|
|
402
|
+
await atInstance.InjectPayload(payload, promptParams, {
|
|
403
|
+
agentId: params.agent.ID,
|
|
404
|
+
agentRunId: this._agentRun?.ID
|
|
405
|
+
});
|
|
406
|
+
if (systemPrompt) {
|
|
407
|
+
const childPromptParams = {
|
|
408
|
+
prompt: childPrompt,
|
|
409
|
+
data: promptTemplateData,
|
|
410
|
+
contextUser: params.contextUser,
|
|
411
|
+
conversationMessages: params.conversationMessages,
|
|
412
|
+
templateMessageRole: 'user',
|
|
413
|
+
verbose: params.verbose
|
|
414
|
+
};
|
|
415
|
+
if (params.apiKeys && params.apiKeys.length > 0) {
|
|
416
|
+
childPromptParams.apiKeys = params.apiKeys;
|
|
417
|
+
}
|
|
418
|
+
if (params.configurationId) {
|
|
419
|
+
promptParams.configurationId = params.configurationId;
|
|
420
|
+
childPromptParams.configurationId = params.configurationId;
|
|
421
|
+
}
|
|
422
|
+
promptParams.childPrompts = [
|
|
423
|
+
new ai_core_plus_1.ChildPromptParam(childPromptParams, agentType.AgentPromptPlaceholder)
|
|
424
|
+
];
|
|
411
425
|
}
|
|
412
|
-
|
|
413
|
-
|
|
414
|
-
|
|
426
|
+
else {
|
|
427
|
+
if (params.apiKeys && params.apiKeys.length > 0) {
|
|
428
|
+
promptParams.apiKeys = params.apiKeys;
|
|
429
|
+
}
|
|
430
|
+
if (params.configurationId) {
|
|
431
|
+
promptParams.configurationId = params.configurationId;
|
|
432
|
+
}
|
|
415
433
|
}
|
|
416
|
-
promptParams.childPrompts = [
|
|
417
|
-
new ai_core_plus_1.ChildPromptParam(childPromptParams, agentType.AgentPromptPlaceholder)
|
|
418
|
-
];
|
|
419
434
|
if (params.agent.ModelSelectionMode === 'Agent') {
|
|
420
435
|
promptParams.modelSelectionPrompt = childPrompt;
|
|
421
436
|
this.logStatus(`🎯 Agent '${params.agent.Name}' configured to use its own prompt for model selection`, true, params);
|
|
@@ -441,7 +456,7 @@ class BaseAgent {
|
|
|
441
456
|
this.logStatus(`🤔 Processing next step for agent '${params.agent.Name}' with agent type '${agentType.Name}'`, true, params);
|
|
442
457
|
const agentTypeInstance = await base_agent_type_1.BaseAgentType.GetAgentTypeInstance(agentType);
|
|
443
458
|
this.logStatus(`🎯 Agent type '${agentType.Name}' determining next step`, true, params);
|
|
444
|
-
const nextStep = await agentTypeInstance.DetermineNextStep(promptResult,
|
|
459
|
+
const nextStep = await agentTypeInstance.DetermineNextStep(promptResult, params);
|
|
445
460
|
return nextStep;
|
|
446
461
|
}
|
|
447
462
|
async validateNextStep(params, nextStep, currentPayload, agentRun, currentStep) {
|
|
@@ -1133,7 +1148,7 @@ class BaseAgent {
|
|
|
1133
1148
|
return await this.createFailureResult(`Validation error: ${error.message}`, contextUser);
|
|
1134
1149
|
}
|
|
1135
1150
|
}
|
|
1136
|
-
async createStepEntity(stepType, stepName, contextUser, targetId, inputData, targetLogId) {
|
|
1151
|
+
async createStepEntity(stepType, stepName, contextUser, targetId, inputData, targetLogId, payloadAtStart, payloadAtEnd) {
|
|
1137
1152
|
const stepEntity = await this._metadata.GetEntityObject('MJ: AI Agent Run Steps', contextUser);
|
|
1138
1153
|
stepEntity.AgentRunID = this._agentRun.ID;
|
|
1139
1154
|
stepEntity.StepNumber = (this._agentRun.Steps?.length || 0) + 1;
|
|
@@ -1148,6 +1163,8 @@ class BaseAgent {
|
|
|
1148
1163
|
stepEntity.TargetLogID = targetLogId || null;
|
|
1149
1164
|
stepEntity.Status = 'Running';
|
|
1150
1165
|
stepEntity.StartedAt = new Date();
|
|
1166
|
+
stepEntity.PayloadAtStart = payloadAtStart ? JSON.stringify(payloadAtStart) : null;
|
|
1167
|
+
stepEntity.PayloadAtEnd = payloadAtEnd ? JSON.stringify(payloadAtEnd) : null;
|
|
1151
1168
|
if (inputData) {
|
|
1152
1169
|
stepEntity.InputData = JSON.stringify({
|
|
1153
1170
|
...inputData,
|
|
@@ -1237,15 +1254,25 @@ class BaseAgent {
|
|
|
1237
1254
|
}
|
|
1238
1255
|
async executeNextStep(params, config, previousDecision) {
|
|
1239
1256
|
if (!previousDecision) {
|
|
1257
|
+
const agentTypeInstance = await base_agent_type_1.BaseAgentType.GetAgentTypeInstance(config.agentType);
|
|
1258
|
+
const initialStep = await agentTypeInstance.DetermineInitialStep(params);
|
|
1259
|
+
if (initialStep) {
|
|
1260
|
+
return initialStep;
|
|
1261
|
+
}
|
|
1240
1262
|
return await this.executePromptStep(params, config);
|
|
1241
1263
|
}
|
|
1242
1264
|
switch (previousDecision.step) {
|
|
1243
1265
|
case 'Retry':
|
|
1266
|
+
const agentTypeInstance = await base_agent_type_1.BaseAgentType.GetAgentTypeInstance(config.agentType);
|
|
1267
|
+
const customRetryStep = await agentTypeInstance.PreProcessRetryStep(params, previousDecision);
|
|
1268
|
+
if (customRetryStep) {
|
|
1269
|
+
return customRetryStep;
|
|
1270
|
+
}
|
|
1244
1271
|
return await this.executePromptStep(params, config, previousDecision);
|
|
1245
1272
|
case 'Sub-Agent':
|
|
1246
1273
|
return await this.executeSubAgentStep(params, previousDecision);
|
|
1247
1274
|
case 'Actions':
|
|
1248
|
-
return await this.executeActionsStep(params, previousDecision);
|
|
1275
|
+
return await this.executeActionsStep(params, config, previousDecision);
|
|
1249
1276
|
case 'Chat':
|
|
1250
1277
|
return await this.executeChatStep(params, previousDecision);
|
|
1251
1278
|
case 'Success':
|
|
@@ -1288,7 +1315,8 @@ class BaseAgent {
|
|
|
1288
1315
|
} : undefined,
|
|
1289
1316
|
conversationMessages: params.conversationMessages,
|
|
1290
1317
|
};
|
|
1291
|
-
const
|
|
1318
|
+
const payload = previousDecision?.newPayload || params.payload;
|
|
1319
|
+
const stepEntity = await this.createStepEntity('Prompt', 'Execute Agent Prompt', params.contextUser, config.childPrompt?.ID, inputData, undefined, payload);
|
|
1292
1320
|
try {
|
|
1293
1321
|
const isRetry = !!previousDecision;
|
|
1294
1322
|
const promptMessage = isRetry
|
|
@@ -1305,7 +1333,6 @@ class BaseAgent {
|
|
|
1305
1333
|
},
|
|
1306
1334
|
displayMode: 'live'
|
|
1307
1335
|
});
|
|
1308
|
-
const payload = previousDecision?.newPayload || params.payload;
|
|
1309
1336
|
if (stepEntity && payload) {
|
|
1310
1337
|
stepEntity.PayloadAtStart = JSON.stringify(payload);
|
|
1311
1338
|
}
|
|
@@ -1404,12 +1431,16 @@ class BaseAgent {
|
|
|
1404
1431
|
}
|
|
1405
1432
|
}
|
|
1406
1433
|
catch (error) {
|
|
1434
|
+
const payload = stepEntity.PayloadAtEnd ? JSON.parse(stepEntity.PayloadAtEnd) : previousDecision?.newPayload || params.payload;
|
|
1435
|
+
stepEntity.PayloadAtEnd = payload ? JSON.stringify(payload) : null;
|
|
1407
1436
|
await this.finalizeStepEntity(stepEntity, false, error.message);
|
|
1408
1437
|
const errString = error?.message || error || 'Unknown error';
|
|
1409
1438
|
return {
|
|
1410
1439
|
errorMessage: `Prompt execution failed: ${errString}`,
|
|
1411
1440
|
step: 'Failed',
|
|
1412
1441
|
terminate: false,
|
|
1442
|
+
previousPayload: payload,
|
|
1443
|
+
newPayload: payload
|
|
1413
1444
|
};
|
|
1414
1445
|
}
|
|
1415
1446
|
}
|
|
@@ -1445,7 +1476,7 @@ class BaseAgent {
|
|
|
1445
1476
|
if (!subAgentEntity) {
|
|
1446
1477
|
throw new Error(`Sub-agent '${subAgentRequest.name}' not found`);
|
|
1447
1478
|
}
|
|
1448
|
-
const stepEntity = await this.createStepEntity('Sub-Agent', `Execute Sub-Agent: ${subAgentRequest.name}`, params.contextUser, subAgentEntity.ID, inputData);
|
|
1479
|
+
const stepEntity = await this.createStepEntity('Sub-Agent', `Execute Sub-Agent: ${subAgentRequest.name}`, params.contextUser, subAgentEntity.ID, inputData, undefined, previousDecision.newPayload);
|
|
1449
1480
|
this.incrementExecutionCount(subAgentEntity.ID);
|
|
1450
1481
|
try {
|
|
1451
1482
|
let downstreamPaths = ['*'];
|
|
@@ -1608,16 +1639,21 @@ class BaseAgent {
|
|
|
1608
1639
|
};
|
|
1609
1640
|
}
|
|
1610
1641
|
catch (error) {
|
|
1642
|
+
const payload = stepEntity.PayloadAtEnd ? JSON.parse(stepEntity.PayloadAtEnd) : previousDecision?.newPayload || params.payload;
|
|
1643
|
+
stepEntity.PayloadAtEnd = payload ? JSON.stringify(payload) : null;
|
|
1611
1644
|
await this.finalizeStepEntity(stepEntity, false, error.message);
|
|
1612
1645
|
return {
|
|
1613
1646
|
errorMessage: `Sub-agent execution failed: ${error.message}`,
|
|
1614
1647
|
step: 'Failed',
|
|
1615
1648
|
terminate: false,
|
|
1649
|
+
previousPayload: payload,
|
|
1650
|
+
newPayload: payload
|
|
1616
1651
|
};
|
|
1617
1652
|
}
|
|
1618
1653
|
}
|
|
1619
|
-
async executeActionsStep(params, previousDecision) {
|
|
1654
|
+
async executeActionsStep(params, config, previousDecision) {
|
|
1620
1655
|
try {
|
|
1656
|
+
const currentPayload = previousDecision?.newPayload || previousDecision?.previousPayload || params.payload;
|
|
1621
1657
|
const actions = previousDecision.actions || [];
|
|
1622
1658
|
if (params.cancellationToken?.aborted) {
|
|
1623
1659
|
throw new Error('Cancelled before action execution');
|
|
@@ -1674,14 +1710,24 @@ class BaseAgent {
|
|
|
1674
1710
|
});
|
|
1675
1711
|
const actionEngine = actions_1.ActionEngineServer.Instance;
|
|
1676
1712
|
const agentActions = aiengine_1.AIEngine.Instance.AgentActions.filter(aa => aa.AgentID === params.agent.ID);
|
|
1713
|
+
try {
|
|
1714
|
+
const agentTypeInstance = await base_agent_type_1.BaseAgentType.GetAgentTypeInstance(config.agentType);
|
|
1715
|
+
const currentPayload = previousDecision?.newPayload || previousDecision?.previousPayload || params.payload;
|
|
1716
|
+
await agentTypeInstance.PreProcessActionStep(actions, currentPayload, previousDecision);
|
|
1717
|
+
}
|
|
1718
|
+
catch (error) {
|
|
1719
|
+
(0, core_1.LogError)(`Error in PreProcessActionStep: ${error.message}`);
|
|
1720
|
+
}
|
|
1677
1721
|
let numActionsProcessed = 0;
|
|
1678
1722
|
const baseStepNumber = (this._agentRun.Steps?.length || 0) + 1;
|
|
1723
|
+
let lastStep = undefined;
|
|
1679
1724
|
const actionPromises = actions.map(async (aa) => {
|
|
1680
1725
|
const actionEntity = actionEngine.Actions.find(a => a.Name === aa.name && agentActions.some(aa => aa.ActionID === a.ID));
|
|
1681
1726
|
if (!actionEntity) {
|
|
1682
1727
|
throw new Error(`Action "${aa.name}" Not Found for Agent "${params.agent.Name}"`);
|
|
1683
1728
|
}
|
|
1684
|
-
const stepEntity = await this.createStepEntity('Actions', `Execute Action: ${aa.name}`, params.contextUser, actionEntity.ID);
|
|
1729
|
+
const stepEntity = await this.createStepEntity('Actions', `Execute Action: ${aa.name}`, params.contextUser, actionEntity.ID, undefined, undefined, currentPayload, currentPayload);
|
|
1730
|
+
lastStep = stepEntity;
|
|
1685
1731
|
stepEntity.StepNumber = baseStepNumber + numActionsProcessed++;
|
|
1686
1732
|
this.incrementExecutionCount(actionEntity.ID);
|
|
1687
1733
|
let actionResult;
|
|
@@ -1727,11 +1773,42 @@ class BaseAgent {
|
|
|
1727
1773
|
role: 'user',
|
|
1728
1774
|
content: resultsMessage
|
|
1729
1775
|
});
|
|
1776
|
+
let finalPayload = currentPayload;
|
|
1777
|
+
try {
|
|
1778
|
+
const agentTypeInstance = await base_agent_type_1.BaseAgentType.GetAgentTypeInstance(config.agentType);
|
|
1779
|
+
const actionResultsOnly = actionResults.map(r => r.result).filter(r => r !== undefined);
|
|
1780
|
+
const payloadChangeRequest = await agentTypeInstance.PostProcessActionStep(actionResultsOnly, actions, currentPayload, previousDecision);
|
|
1781
|
+
if (payloadChangeRequest) {
|
|
1782
|
+
const allowedPaths = params.agent.PayloadSelfWritePaths
|
|
1783
|
+
? JSON.parse(params.agent.PayloadSelfWritePaths)
|
|
1784
|
+
: undefined;
|
|
1785
|
+
const changeResult = this._payloadManager.applyAgentChangeRequest(currentPayload, payloadChangeRequest, {
|
|
1786
|
+
validateChanges: true,
|
|
1787
|
+
logChanges: true,
|
|
1788
|
+
agentName: params.agent.Name,
|
|
1789
|
+
analyzeChanges: true,
|
|
1790
|
+
generateDiff: true,
|
|
1791
|
+
allowedPaths: allowedPaths,
|
|
1792
|
+
verbose: params.verbose === true || (0, core_1.IsVerboseLoggingEnabled)()
|
|
1793
|
+
});
|
|
1794
|
+
finalPayload = changeResult.result;
|
|
1795
|
+
if (lastStep) {
|
|
1796
|
+
lastStep.PayloadAtEnd = JSON.stringify(finalPayload);
|
|
1797
|
+
await lastStep.Save();
|
|
1798
|
+
}
|
|
1799
|
+
if (changeResult.warnings.length > 0 && (params.verbose === true || (0, core_1.IsVerboseLoggingEnabled)())) {
|
|
1800
|
+
(0, core_1.LogStatus)(`Action post-processing payload warnings: ${changeResult.warnings.join('; ')}`);
|
|
1801
|
+
}
|
|
1802
|
+
}
|
|
1803
|
+
}
|
|
1804
|
+
catch (error) {
|
|
1805
|
+
(0, core_1.LogError)(`Error in PostProcessActionStep: ${error.message}`);
|
|
1806
|
+
}
|
|
1730
1807
|
return {
|
|
1731
1808
|
terminate: false,
|
|
1732
1809
|
step: 'Retry',
|
|
1733
1810
|
previousPayload: previousDecision?.previousPayload || null,
|
|
1734
|
-
newPayload:
|
|
1811
|
+
newPayload: finalPayload,
|
|
1735
1812
|
priorStepResult: actionSummaries,
|
|
1736
1813
|
retryReason: failedActions.length > 0
|
|
1737
1814
|
? `Processing results with ${failedActions.length} failed action(s): ${failedActions.map(a => a.actionName).join(', ')}`
|
|
@@ -1743,7 +1820,9 @@ class BaseAgent {
|
|
|
1743
1820
|
terminate: false,
|
|
1744
1821
|
step: 'Retry',
|
|
1745
1822
|
errorMessage: e && e.message ? e.message : e ? e : 'Unknown error executing actions',
|
|
1746
|
-
retryReason: 'Error while processing actions, retry'
|
|
1823
|
+
retryReason: 'Error while processing actions, retry',
|
|
1824
|
+
newPayload: previousDecision?.newPayload || null,
|
|
1825
|
+
previousPayload: previousDecision?.previousPayload || null,
|
|
1747
1826
|
};
|
|
1748
1827
|
}
|
|
1749
1828
|
}
|
|
@@ -1757,7 +1836,7 @@ class BaseAgent {
|
|
|
1757
1836
|
reasoning: previousDecision.reasoning,
|
|
1758
1837
|
confidence: previousDecision.confidence,
|
|
1759
1838
|
previousPayload: previousDecision.previousPayload,
|
|
1760
|
-
newPayload: previousDecision.previousPayload,
|
|
1839
|
+
newPayload: previousDecision.newPayload || previousDecision.previousPayload,
|
|
1761
1840
|
};
|
|
1762
1841
|
}
|
|
1763
1842
|
async createFailureResult(errorMessage, contextUser) {
|