@memberjunction/ai-agents 2.48.0 → 2.49.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 (45) hide show
  1. package/dist/AgentRunner.d.ts +5 -0
  2. package/dist/AgentRunner.d.ts.map +1 -0
  3. package/dist/AgentRunner.js +36 -0
  4. package/dist/AgentRunner.js.map +1 -0
  5. package/dist/agent-types/LoopAgentType.d.ts +9 -0
  6. package/dist/agent-types/LoopAgentType.d.ts.map +1 -0
  7. package/dist/agent-types/LoopAgentType.js +134 -0
  8. package/dist/agent-types/LoopAgentType.js.map +1 -0
  9. package/dist/agent-types/index.d.ts +2 -0
  10. package/dist/agent-types/index.d.ts.map +1 -0
  11. package/dist/agent-types/index.js +20 -0
  12. package/dist/agent-types/index.js.map +1 -0
  13. package/dist/base-agent-type.d.ts +6 -0
  14. package/dist/base-agent-type.d.ts.map +1 -0
  15. package/dist/base-agent-type.js +7 -0
  16. package/dist/base-agent-type.js.map +1 -0
  17. package/dist/base-agent.d.ts +5 -55
  18. package/dist/base-agent.d.ts.map +1 -1
  19. package/dist/base-agent.js +120 -221
  20. package/dist/base-agent.js.map +1 -1
  21. package/dist/index.d.ts +4 -3
  22. package/dist/index.d.ts.map +1 -1
  23. package/dist/index.js +4 -3
  24. package/dist/index.js.map +1 -1
  25. package/dist/types.d.ts +34 -0
  26. package/dist/types.d.ts.map +1 -0
  27. package/dist/types.js +3 -0
  28. package/dist/types.js.map +1 -0
  29. package/package.json +9 -9
  30. package/dist/agent-factory.d.ts +0 -19
  31. package/dist/agent-factory.d.ts.map +0 -1
  32. package/dist/agent-factory.js +0 -137
  33. package/dist/agent-factory.js.map +0 -1
  34. package/dist/agent-runner.d.ts +0 -36
  35. package/dist/agent-runner.d.ts.map +0 -1
  36. package/dist/agent-runner.js +0 -509
  37. package/dist/agent-runner.js.map +0 -1
  38. package/dist/base-agent-original.d.ts +0 -205
  39. package/dist/base-agent-original.d.ts.map +0 -1
  40. package/dist/base-agent-original.js +0 -1243
  41. package/dist/base-agent-original.js.map +0 -1
  42. package/dist/conductor-agent.d.ts +0 -93
  43. package/dist/conductor-agent.d.ts.map +0 -1
  44. package/dist/conductor-agent.js +0 -319
  45. package/dist/conductor-agent.js.map +0 -1
@@ -1,257 +1,156 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.LoadBaseAgent = exports.BaseAgent = void 0;
4
- const core_1 = require("@memberjunction/core");
5
- const aiengine_1 = require("@memberjunction/aiengine");
3
+ exports.BaseAgent = void 0;
6
4
  const ai_prompts_1 = require("@memberjunction/ai-prompts");
5
+ const base_agent_type_1 = require("./base-agent-type");
6
+ const global_1 = require("@memberjunction/global");
7
+ const aiengine_1 = require("@memberjunction/aiengine");
8
+ const actions_1 = require("@memberjunction/actions");
7
9
  class BaseAgent {
8
- constructor(agent, factory, contextUser, promptRunner) {
9
- this._agent = agent;
10
- this._factory = factory;
11
- this._promptRunner = promptRunner ? promptRunner : new ai_prompts_1.AIPromptRunner();
12
- this._contextUser = contextUser;
13
- this._metadata = new core_1.Metadata();
14
- }
15
- get agent() {
16
- return this._agent;
17
- }
18
- get factory() {
19
- return this._factory;
20
- }
21
- get promptRunner() {
22
- return this._promptRunner;
23
- }
24
- get contextUser() {
25
- return this._contextUser;
10
+ constructor() {
11
+ this._promptRunner = new ai_prompts_1.AIPromptRunner();
26
12
  }
27
13
  async Execute(params) {
28
- const startTime = new Date();
29
14
  try {
30
- this.sendProgress(params.onProgress, {
31
- step: 'initialization',
32
- percentage: 10,
33
- message: `Initializing agent '${this.agent.Name}'`,
34
- metadata: { agentName: this.agent.Name, agentId: this.agent.ID }
35
- });
36
- if (params.cancellationToken?.aborted) {
37
- return this.createCancelledResult(startTime);
15
+ await aiengine_1.AIEngine.Instance.Config(false, params.contextUser);
16
+ await actions_1.ActionEngineServer.Instance.Config(false, params.contextUser);
17
+ const engine = aiengine_1.AIEngine.Instance;
18
+ if (params.agent.Status !== 'Active') {
19
+ return {
20
+ nextStep: 'failed',
21
+ errorMessage: `Agent '${params.agent.Name}' is not active. Current status: ${params.agent.Status}`
22
+ };
23
+ }
24
+ const agentType = engine.AgentTypes.find(at => at.ID === params.agent.TypeID);
25
+ if (!agentType) {
26
+ return {
27
+ nextStep: 'failed',
28
+ errorMessage: `Agent type not found for ID: ${params.agent.TypeID}`
29
+ };
30
+ }
31
+ const systemPrompt = engine.Prompts.find(p => p.ID === agentType.SystemPromptID);
32
+ if (!systemPrompt) {
33
+ return {
34
+ nextStep: 'failed',
35
+ errorMessage: `System prompt not found for agent type: ${agentType.Name}`
36
+ };
37
+ }
38
+ const agentPrompt = engine.AgentPrompts
39
+ .filter(ap => ap.AgentID === params.agent.ID && ap.Status === 'Active')
40
+ .sort((a, b) => a.ExecutionOrder - b.ExecutionOrder)[0];
41
+ if (!agentPrompt) {
42
+ return {
43
+ nextStep: 'failed',
44
+ errorMessage: `No prompts configured for agent: ${params.agent.Name}`
45
+ };
38
46
  }
39
- let conversationMessages = [...(params.conversationMessages || [])];
40
- if (this.agent.EnableContextCompression &&
41
- this.agent.ContextCompressionMessageThreshold &&
42
- conversationMessages.length > this.agent.ContextCompressionMessageThreshold) {
43
- conversationMessages = await this.compressContext(conversationMessages, params);
47
+ const childPrompt = engine.Prompts.find(p => p.ID === agentPrompt.PromptID);
48
+ if (!childPrompt) {
49
+ return {
50
+ nextStep: 'failed',
51
+ errorMessage: `Child prompt not found for ID: ${agentPrompt.PromptID}`
52
+ };
44
53
  }
45
- if (params.cancellationToken?.aborted) {
46
- return this.createCancelledResult(startTime);
54
+ const contextData = await this.gatherContextData(params.agent, params.contextUser);
55
+ const promptParams = new ai_prompts_1.AIPromptParams();
56
+ promptParams.prompt = systemPrompt;
57
+ promptParams.data = contextData;
58
+ promptParams.contextUser = params.contextUser;
59
+ promptParams.conversationMessages = params.conversationMessages;
60
+ promptParams.templateMessageRole = 'system';
61
+ if (!agentType.AgentPromptPlaceholder) {
62
+ const errorMsg = `Agent type '${agentType.Name}' does not have AgentPromptPlaceholder configured. This field is required to properly inject agent prompt results into the system prompt template.`;
63
+ console.error(errorMsg);
64
+ return {
65
+ nextStep: 'failed',
66
+ errorMessage: errorMsg
67
+ };
47
68
  }
48
- this.sendProgress(params.onProgress, {
49
- step: 'prompt_execution',
50
- percentage: 30,
51
- message: 'Executing agent prompts',
52
- metadata: { promptCount: await this.getPromptCount() }
53
- });
54
- const promptResult = await this.executeAgentPrompts(params, conversationMessages);
55
- if (params.cancellationToken?.aborted) {
56
- return this.createCancelledResult(startTime);
69
+ promptParams.childPrompts = [
70
+ new ai_prompts_1.ChildPromptParam({
71
+ prompt: childPrompt,
72
+ data: contextData,
73
+ contextUser: params.contextUser,
74
+ conversationMessages: params.conversationMessages,
75
+ templateMessageRole: 'user'
76
+ }, agentType.AgentPromptPlaceholder)
77
+ ];
78
+ const result = await this._promptRunner.ExecutePrompt(promptParams);
79
+ if (!result.success) {
80
+ return {
81
+ nextStep: 'failed',
82
+ errorMessage: result.errorMessage,
83
+ rawResult: result.rawResult
84
+ };
57
85
  }
58
- const endTime = new Date();
59
- const executionTimeMS = endTime.getTime() - startTime.getTime();
60
- this.sendProgress(params.onProgress, {
61
- step: 'completion',
62
- percentage: 100,
63
- message: `Agent '${this.agent.Name}' execution completed`,
64
- metadata: {
65
- success: promptResult.success,
66
- executionTimeMS
67
- }
68
- });
86
+ let agentTypeInstance;
87
+ try {
88
+ agentTypeInstance = await this.getAgentTypeInstance(agentType);
89
+ }
90
+ catch (error) {
91
+ return {
92
+ nextStep: 'failed',
93
+ errorMessage: error.message
94
+ };
95
+ }
96
+ const nextStep = await agentTypeInstance.DetermineNextStep(result);
69
97
  return {
70
- success: promptResult.success,
71
- result: promptResult.result,
72
- errorMessage: promptResult.errorMessage,
73
- executionTimeMS,
74
- conversationMessages: promptResult.conversationMessages || conversationMessages,
75
- metadata: {
76
- agentName: this.agent.Name,
77
- agentId: this.agent.ID,
78
- promptExecutions: promptResult.promptExecutions || 1
79
- }
98
+ nextStep: nextStep.step,
99
+ returnValue: nextStep.returnValue || result.result,
100
+ rawResult: result.rawResult
80
101
  };
81
102
  }
82
103
  catch (error) {
83
- (0, core_1.LogError)(`Error executing agent '${this.agent?.Name || 'Unknown'}': ${error.message}`);
84
- const endTime = new Date();
85
104
  return {
86
- success: false,
105
+ nextStep: 'failed',
87
106
  errorMessage: error.message,
88
- executionTimeMS: endTime.getTime() - startTime.getTime(),
89
- cancelled: params.cancellationToken?.aborted || false
90
107
  };
91
108
  }
92
109
  }
93
- async executeAgentPrompts(params, conversationMessages) {
110
+ async gatherContextData(agent, contextUser) {
94
111
  try {
95
- const prompts = await this.loadAgentPrompts();
96
- if (prompts.length === 0) {
97
- throw new Error(`No active prompts found for agent '${this.agent.Name}'`);
98
- }
99
- let currentMessages = [...conversationMessages];
100
- let finalResult = null;
101
- let promptExecutions = 0;
102
- for (const prompt of prompts) {
103
- if (params.cancellationToken?.aborted) {
112
+ const engine = aiengine_1.AIEngine.Instance;
113
+ const subAgents = engine.Agents.filter(a => a.ParentID === agent.ID)
114
+ .sort((a, b) => a.ExecutionOrder - b.ExecutionOrder);
115
+ const agentActions = engine.AgentActions.filter(aa => aa.AgentID === agent.ID);
116
+ const actions = actions_1.ActionEngineServer.Instance.Actions.filter(a => agentActions.some(aa => aa.ActionID === a.ID));
117
+ const activeActions = actions.filter(a => a.Status === 'Active');
118
+ const contextData = {
119
+ agentName: agent.Name,
120
+ agentDescription: agent.Description,
121
+ subAgentCount: subAgents.length,
122
+ subAgentDetails: JSON.stringify(subAgents.map(sa => {
104
123
  return {
105
- success: false,
106
- errorMessage: 'Execution cancelled',
107
- conversationMessages: currentMessages,
108
- promptExecutions
124
+ ID: sa.ID,
125
+ Name: sa.Name,
126
+ Description: sa.Description
109
127
  };
110
- }
111
- const promptParams = new ai_prompts_1.AIPromptParams();
112
- promptParams.prompt = prompt;
113
- promptParams.data = params.data || {};
114
- promptParams.conversationMessages = currentMessages;
115
- promptParams.contextUser = params.contextUser;
116
- const promptResult = await this._promptRunner.ExecutePrompt(promptParams);
117
- promptExecutions++;
118
- if (!promptResult.success) {
128
+ }), null, 2),
129
+ actionCount: actions.length,
130
+ actionDetails: JSON.stringify(activeActions.map(action => {
119
131
  return {
120
- success: false,
121
- errorMessage: `Prompt execution failed: ${promptResult.errorMessage}`,
122
- conversationMessages: currentMessages,
123
- promptExecutions
132
+ ID: action.ID,
133
+ Name: action.Name,
134
+ Description: action.Description,
124
135
  };
125
- }
126
- if (promptResult.rawResult) {
127
- currentMessages.push({
128
- role: 'assistant',
129
- content: promptResult.rawResult
130
- });
131
- finalResult = promptResult.rawResult;
132
- }
133
- if (params.onStreaming && promptResult.rawResult) {
134
- params.onStreaming({
135
- content: promptResult.rawResult,
136
- isComplete: false,
137
- sourceId: this.agent.ID,
138
- sourceName: this.agent.Name
139
- });
140
- }
141
- }
142
- if (params.onStreaming) {
143
- params.onStreaming({
144
- content: '',
145
- isComplete: true,
146
- sourceId: this.agent.ID,
147
- sourceName: this.agent.Name
148
- });
149
- }
150
- return {
151
- success: true,
152
- result: finalResult,
153
- conversationMessages: currentMessages,
154
- promptExecutions
136
+ }), null, 2),
155
137
  };
138
+ return contextData;
156
139
  }
157
140
  catch (error) {
158
- (0, core_1.LogError)(`Error executing agent prompts for '${this.agent.Name}': ${error.message}`);
159
- return {
160
- success: false,
161
- errorMessage: error.message
162
- };
141
+ throw new Error(`Error gathering context data: ${error.message}`);
163
142
  }
164
143
  }
165
- async loadAgentPrompts() {
166
- try {
167
- await aiengine_1.AIEngine.Instance.Config(false, this.contextUser);
168
- const agentPrompts = aiengine_1.AIEngine.Instance.AgentPrompts
169
- .filter(ap => ap.AgentID === this.agent.ID && ap.Status === 'Active')
170
- .sort((a, b) => (a.ExecutionOrder || 0) - (b.ExecutionOrder || 0));
171
- const results = [];
172
- for (const agentPrompt of agentPrompts) {
173
- const prompt = aiengine_1.AIEngine.Instance.Prompts.find(p => p.ID === agentPrompt.PromptID);
174
- if (prompt && prompt.Status === 'Active') {
175
- results.push(prompt);
176
- }
177
- }
178
- if (results.length === 0) {
179
- (0, core_1.LogStatus)(`No active prompts found for agent '${this.agent.Name}'`);
180
- }
181
- return results;
182
- }
183
- catch (error) {
184
- (0, core_1.LogError)(`Error loading agent prompts for '${this.agent.Name}': ${error.message}`);
185
- return [];
186
- }
144
+ async getAgentTypeInstance(agentType) {
145
+ return this.getAgentInstanceWithDriverClass(agentType.DriverClass || agentType.Name);
187
146
  }
188
- async getPromptCount() {
189
- const prompts = await this.loadAgentPrompts();
190
- return prompts.length;
191
- }
192
- async compressContext(conversationMessages, params) {
193
- try {
194
- if (!this.agent.ContextCompressionPromptID) {
195
- (0, core_1.LogStatus)(`Context compression enabled but no compression prompt configured for agent '${this.agent.Name}'`);
196
- return conversationMessages;
197
- }
198
- const retentionCount = this.agent.ContextCompressionMessageRetentionCount || 5;
199
- const messagesToCompress = conversationMessages.slice(0, -retentionCount);
200
- const messagesToKeep = conversationMessages.slice(-retentionCount);
201
- if (messagesToCompress.length === 0) {
202
- return conversationMessages;
203
- }
204
- const compressionPrompt = aiengine_1.AIEngine.Instance.Prompts.find(p => p.ID === this.agent.ContextCompressionPromptID);
205
- if (!compressionPrompt) {
206
- (0, core_1.LogError)(`Compression prompt not found: ${this.agent.ContextCompressionPromptID}`);
207
- return conversationMessages;
208
- }
209
- const compressionParams = new ai_prompts_1.AIPromptParams();
210
- compressionParams.prompt = compressionPrompt;
211
- compressionParams.data = {
212
- messages: messagesToCompress,
213
- messageCount: messagesToCompress.length,
214
- ...(params.data || {})
215
- };
216
- compressionParams.contextUser = params.contextUser;
217
- const compressionResult = await this.promptRunner.ExecutePrompt(compressionParams);
218
- if (compressionResult.success && compressionResult.rawResult) {
219
- const summaryMessage = {
220
- role: 'system',
221
- content: `[Conversation Summary] ${compressionResult.rawResult}`
222
- };
223
- (0, core_1.LogStatus)(`Compressed ${messagesToCompress.length} messages into summary for agent '${this.agent.Name}'`);
224
- return [summaryMessage, ...messagesToKeep];
225
- }
226
- return conversationMessages;
227
- }
228
- catch (error) {
229
- (0, core_1.LogError)(`Error compressing context for agent '${this.agent.Name}': ${error.message}`);
230
- return conversationMessages;
231
- }
232
- }
233
- sendProgress(callback, progress) {
234
- if (callback) {
235
- try {
236
- callback(progress);
237
- }
238
- catch (error) {
239
- (0, core_1.LogError)(`Error in progress callback: ${error.message}`);
240
- }
147
+ async getAgentInstanceWithDriverClass(driverClass) {
148
+ const instance = global_1.MJGlobal.Instance.ClassFactory.CreateInstance(base_agent_type_1.BaseAgentType, driverClass);
149
+ if (!instance) {
150
+ throw new Error(`No implementation found for agent with DriverClass '${driverClass}'. Please ensure the class is registered with the ClassFactory.`);
241
151
  }
242
- }
243
- createCancelledResult(startTime) {
244
- const endTime = new Date();
245
- return {
246
- success: false,
247
- cancelled: true,
248
- errorMessage: 'Agent execution was cancelled',
249
- executionTimeMS: endTime.getTime() - startTime.getTime()
250
- };
152
+ return instance;
251
153
  }
252
154
  }
253
155
  exports.BaseAgent = BaseAgent;
254
- function LoadBaseAgent() {
255
- }
256
- exports.LoadBaseAgent = LoadBaseAgent;
257
156
  //# sourceMappingURL=base-agent.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base-agent.js","sourceRoot":"","sources":["../src/base-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-agent.js","sourceRoot":"","sources":["../src/base-agent.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,6 @@
1
+ export * from './types';
2
+ export * from './base-agent-type';
1
3
  export * from './base-agent';
2
- export * from './agent-factory';
3
- export * from './conductor-agent';
4
- export * from './agent-runner';
4
+ export * from './agent-types';
5
+ export * from './AgentRunner';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAWA,cAAc,SAAS,CAAC;AACxB,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC"}
package/dist/index.js CHANGED
@@ -14,8 +14,9 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./types"), exports);
18
+ __exportStar(require("./base-agent-type"), exports);
17
19
  __exportStar(require("./base-agent"), exports);
18
- __exportStar(require("./agent-factory"), exports);
19
- __exportStar(require("./conductor-agent"), exports);
20
- __exportStar(require("./agent-runner"), exports);
20
+ __exportStar(require("./agent-types"), exports);
21
+ __exportStar(require("./AgentRunner"), exports);
21
22
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,+CAA6B;AAC7B,kDAAgC;AAChC,oDAAkC;AAClC,iDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAWA,0CAAwB;AACxB,oDAAkC;AAClC,+CAA6B;AAC7B,gDAA8B;AAC9B,gDAA8B"}
@@ -0,0 +1,34 @@
1
+ import { ChatMessage } from '@memberjunction/ai';
2
+ import { AIAgentEntity } from '@memberjunction/core-entities';
3
+ import { UserInfo } from '@memberjunction/core';
4
+ export type ExecuteAgentParams = {
5
+ agent: AIAgentEntity;
6
+ conversationMessages: ChatMessage[];
7
+ contextUser?: UserInfo;
8
+ };
9
+ export type ExecuteAgentResult = {
10
+ nextStep: BaseAgentNextStep['step'];
11
+ returnValue?: any;
12
+ rawResult?: string;
13
+ errorMessage?: string;
14
+ };
15
+ export type AgentContextData = {
16
+ agentName: string | null;
17
+ agentDescription: string | null;
18
+ subAgentCount: number;
19
+ subAgentDetails: string;
20
+ actionCount: number;
21
+ actionDetails: string;
22
+ };
23
+ export type BaseAgentNextStep = {
24
+ step: 'success' | 'failed' | 'retry' | 'sub-agent' | 'action';
25
+ returnValue?: any;
26
+ errorMessage?: string;
27
+ retryReason?: string;
28
+ retryInstructions?: string;
29
+ subAgentName?: string;
30
+ subAgentInstructions?: Record<string, unknown>;
31
+ actionName?: string;
32
+ actionParameters?: Record<string, unknown>;
33
+ };
34
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAYA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAUhD,MAAM,MAAM,kBAAkB,GAAG;IAC7B,KAAK,EAAE,aAAa,CAAC;IACrB,oBAAoB,EAAE,WAAW,EAAE,CAAC;IACpC,WAAW,CAAC,EAAE,QAAQ,CAAC;CAC1B,CAAA;AAWD,MAAM,MAAM,kBAAkB,GAAG;IAC7B,QAAQ,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACpC,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB,CAAA;AAkBD,MAAM,MAAM,gBAAgB,GAAG;IAC3B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,CAAC;CACzB,CAAA;AAyBD,MAAM,MAAM,iBAAiB,GAAG;IAC5B,IAAI,EAAE,SAAS,GAAG,QAAQ,GAAG,OAAO,GAAG,WAAW,GAAG,QAAQ,CAAC;IAC9D,WAAW,CAAC,EAAE,GAAG,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,oBAAoB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC9C,CAAA"}
package/dist/types.js ADDED
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@memberjunction/ai-agents",
3
- "version": "2.48.0",
3
+ "version": "2.49.0",
4
4
  "description": "MemberJunction: AI Agent Execution and Management",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -15,14 +15,14 @@
15
15
  "author": "MemberJunction.com",
16
16
  "license": "ISC",
17
17
  "dependencies": {
18
- "@memberjunction/core": "2.48.0",
19
- "@memberjunction/global": "2.48.0",
20
- "@memberjunction/core-entities": "2.48.0",
21
- "@memberjunction/ai": "2.48.0",
22
- "@memberjunction/aiengine": "2.48.0",
23
- "@memberjunction/ai-prompts": "2.48.0",
24
- "@memberjunction/actions": "2.48.0",
25
- "@memberjunction/actions-base": "2.48.0",
18
+ "@memberjunction/core": "2.49.0",
19
+ "@memberjunction/global": "2.49.0",
20
+ "@memberjunction/core-entities": "2.49.0",
21
+ "@memberjunction/ai": "2.49.0",
22
+ "@memberjunction/aiengine": "2.49.0",
23
+ "@memberjunction/ai-prompts": "2.49.0",
24
+ "@memberjunction/actions": "2.49.0",
25
+ "@memberjunction/actions-base": "2.49.0",
26
26
  "dotenv": "^16.4.1",
27
27
  "rxjs": "^7.8.1"
28
28
  },
@@ -1,19 +0,0 @@
1
- import { UserInfo } from '@memberjunction/core';
2
- import { AIAgentEntityExtended } from '@memberjunction/core-entities';
3
- import { BaseAgent, IAgentFactory } from './base-agent';
4
- import { ConductorAgent } from './conductor-agent';
5
- import { AgentRunner } from './agent-runner';
6
- export declare class AgentFactory implements IAgentFactory {
7
- private _metadata;
8
- constructor();
9
- CreateAgent(agentName: string, key?: string, contextUser?: UserInfo, ...additionalParams: any[]): Promise<BaseAgent | null>;
10
- CreateAgentFromEntity(agentEntity: AIAgentEntityExtended, key?: string, ...additionalParams: any[]): BaseAgent;
11
- GetAvailableAgents(contextUser?: UserInfo): Promise<AIAgentEntityExtended[]>;
12
- AgentExists(agentName: string, contextUser?: UserInfo): Promise<boolean>;
13
- GetAgentEntity(agentName: string, contextUser: UserInfo): Promise<AIAgentEntityExtended | null>;
14
- GetConductorAgent(contextUser: UserInfo): Promise<ConductorAgent>;
15
- GetAgentRunner(contextUser: UserInfo, key?: string): Promise<AgentRunner>;
16
- }
17
- export declare function GetAgentFactory(): AgentFactory;
18
- export declare function LoadAgentFactory(): void;
19
- //# sourceMappingURL=agent-factory.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent-factory.d.ts","sourceRoot":"","sources":["../src/agent-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAEpE,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AAEtE,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,EAAE,cAAc,EAAwB,MAAM,mBAAmB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AA0B7C,qBAAa,YAAa,YAAW,aAAa;IAChD,OAAO,CAAC,SAAS,CAAW;;IAoBf,WAAW,CACtB,SAAS,EAAE,MAAM,EACjB,GAAG,CAAC,EAAE,MAAM,EACZ,WAAW,CAAC,EAAE,QAAQ,EACtB,GAAG,gBAAgB,EAAE,GAAG,EAAE,GACzB,OAAO,CAAC,SAAS,GAAG,IAAI,CAAC;IAiDrB,qBAAqB,CAC1B,WAAW,EAAE,qBAAqB,EAClC,GAAG,CAAC,EAAE,MAAM,EACZ,GAAG,gBAAgB,EAAE,GAAG,EAAE,GACzB,SAAS;IAgCC,kBAAkB,CAAC,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,qBAAqB,EAAE,CAAC;IAkB5E,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC,OAAO,CAAC;IAsBxE,cAAc,CACzB,SAAS,EAAE,MAAM,EACjB,WAAW,EAAE,QAAQ,GACpB,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC;IAqB3B,iBAAiB,CAC5B,WAAW,EAAE,QAAQ,GACpB,OAAO,CAAC,cAAc,CAAC;IAwCb,cAAc,CACzB,WAAW,EAAE,QAAQ,EACrB,GAAG,CAAC,EAAE,MAAM,GACX,OAAO,CAAC,WAAW,CAAC;CAqBxB;AASD,wBAAgB,eAAe,IAAI,YAAY,CAO9C;AAED,wBAAgB,gBAAgB,SAE/B"}