@minded-ai/mindedjs 1.0.44 → 1.0.46
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/agent.d.ts +205 -0
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +228 -14
- package/dist/agent.js.map +1 -1
- package/dist/events/AgentEvents.d.ts +1 -0
- package/dist/events/AgentEvents.d.ts.map +1 -1
- package/dist/platform/mindedConnection.d.ts +0 -1
- package/dist/platform/mindedConnection.d.ts.map +1 -1
- package/dist/platform/mindedConnection.js +0 -21
- package/dist/platform/mindedConnection.js.map +1 -1
- package/dist/types/Flows.types.d.ts +2 -2
- package/dist/types/Flows.types.d.ts.map +1 -1
- package/dist/types/Flows.types.js +1 -1
- package/dist/types/Flows.types.js.map +1 -1
- package/dist/utils/wait.d.ts +2 -0
- package/dist/utils/wait.d.ts.map +1 -0
- package/dist/utils/wait.js +6 -0
- package/dist/utils/wait.js.map +1 -0
- package/package.json +1 -1
- package/src/agent.ts +229 -13
- package/src/events/AgentEvents.ts +1 -0
- package/src/platform/mindedConnection.ts +0 -23
- package/src/types/Flows.types.ts +1 -1
- package/src/utils/wait.ts +1 -0
- package/dist/platform/analytics.d.ts +0 -6
- package/dist/platform/analytics.js +0 -19
- package/dist/platform/analytics.js.map +0 -1
- package/dist/platform/mindedRequest.d.ts +0 -8
- package/dist/platform/mindedRequest.js +0 -22
- package/dist/platform/mindedRequest.js.map +0 -1
- package/dist/types/Triggers.types.d.ts +0 -1
- package/dist/types/Triggers.types.js +0 -3
- package/dist/types/Triggers.types.js.map +0 -1
package/dist/agent.d.ts
CHANGED
|
@@ -10,6 +10,24 @@ type CreateAgentParams<Memory> = {
|
|
|
10
10
|
platformToken?: string;
|
|
11
11
|
memorySaver?: BaseCheckpointSaver;
|
|
12
12
|
};
|
|
13
|
+
/**
|
|
14
|
+
* The main Agent class that orchestrates flows, tools, and integrations with the Minded platform.
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```typescript
|
|
18
|
+
* const agent = new Agent({
|
|
19
|
+
* memorySchema: z.object({
|
|
20
|
+
* userName: z.string().optional(),
|
|
21
|
+
* preferences: z.record(z.any()).optional()
|
|
22
|
+
* }),
|
|
23
|
+
* config: {
|
|
24
|
+
* flows: ['./src/flows'],
|
|
25
|
+
* llm: { provider: 'openai', model: 'gpt-4' }
|
|
26
|
+
* },
|
|
27
|
+
* tools: [myCustomTool]
|
|
28
|
+
* });
|
|
29
|
+
* ```
|
|
30
|
+
*/
|
|
13
31
|
export declare class Agent {
|
|
14
32
|
private memorySchema;
|
|
15
33
|
private flows;
|
|
@@ -22,6 +40,37 @@ export declare class Agent {
|
|
|
22
40
|
private eventHandlers;
|
|
23
41
|
private initialized;
|
|
24
42
|
private initPromise;
|
|
43
|
+
/**
|
|
44
|
+
* Create a new Agent instance.
|
|
45
|
+
*
|
|
46
|
+
* @param params - Configuration parameters for the agent
|
|
47
|
+
* @param params.memorySchema - Zod schema defining the structure of the agent's memory
|
|
48
|
+
* @param params.config - SDK configuration including flows directory and LLM settings
|
|
49
|
+
* @param params.tools - Array of custom tools to be available to the agent
|
|
50
|
+
* @param params.platformToken - Optional token for platform authentication
|
|
51
|
+
* @param params.memorySaver - Optional custom checkpoint saver for conversation memory
|
|
52
|
+
*
|
|
53
|
+
* @example
|
|
54
|
+
* ```typescript
|
|
55
|
+
* const agent = new Agent({
|
|
56
|
+
* memorySchema: z.object({
|
|
57
|
+
* userName: z.string().optional(),
|
|
58
|
+
* conversationHistory: z.array(z.string()).optional()
|
|
59
|
+
* }),
|
|
60
|
+
* config: {
|
|
61
|
+
* flows: ['./src/flows'],
|
|
62
|
+
* llm: {
|
|
63
|
+
* provider: 'openai',
|
|
64
|
+
* model: 'gpt-4-turbo'
|
|
65
|
+
* }
|
|
66
|
+
* },
|
|
67
|
+
* tools: [
|
|
68
|
+
* weatherTool,
|
|
69
|
+
* databaseTool
|
|
70
|
+
* ]
|
|
71
|
+
* });
|
|
72
|
+
* ```
|
|
73
|
+
*/
|
|
25
74
|
constructor(params: CreateAgentParams<z.infer<typeof this.memorySchema>>);
|
|
26
75
|
private init;
|
|
27
76
|
private loadFlowsFromDirectory;
|
|
@@ -29,12 +78,168 @@ export declare class Agent {
|
|
|
29
78
|
private waitForInitialization;
|
|
30
79
|
private initializeGraph;
|
|
31
80
|
private initGraphState;
|
|
81
|
+
/**
|
|
82
|
+
* Invoke a trigger to start agent execution with the specified parameters.
|
|
83
|
+
*
|
|
84
|
+
* This method processes triggers from external systems or applications, allowing the agent
|
|
85
|
+
* to respond to events and execute the appropriate flows based on the trigger type.
|
|
86
|
+
*
|
|
87
|
+
* @param params - The trigger invocation parameters
|
|
88
|
+
* @param params.triggerBody - The payload/data associated with the trigger
|
|
89
|
+
* @param params.triggerName - The name/type of the trigger being invoked
|
|
90
|
+
* @param params.sessionId - Optional session identifier for conversation continuity
|
|
91
|
+
* @param params.appName - Optional name of the application triggering the agent in case of an app trigger
|
|
92
|
+
*
|
|
93
|
+
* @returns Promise that resolves with the agent's execution result
|
|
94
|
+
*
|
|
95
|
+
* @throws {Error} When the agent is not properly initialized
|
|
96
|
+
*
|
|
97
|
+
* @example
|
|
98
|
+
* ```typescript
|
|
99
|
+
* // Manual invoke with a message trigger
|
|
100
|
+
* const result = await agent.invoke({
|
|
101
|
+
* triggerName: 'minded.message.in.conversation',
|
|
102
|
+
* triggerBody: {
|
|
103
|
+
* text: 'Hello, how can you help me?',
|
|
104
|
+
* },
|
|
105
|
+
* sessionId: 'user-123-session'
|
|
106
|
+
* });
|
|
107
|
+
* ```
|
|
108
|
+
*/
|
|
32
109
|
invoke({ triggerBody, triggerName, sessionId, appName, }: {
|
|
33
110
|
triggerBody: any;
|
|
34
111
|
triggerName: string;
|
|
35
112
|
sessionId?: string;
|
|
36
113
|
appName?: string;
|
|
37
114
|
}): Promise<import("@langchain/langgraph").StateType<import("@langchain/langgraph").StateDefinition>>;
|
|
115
|
+
/**
|
|
116
|
+
* Register an event handler for specific agent events.
|
|
117
|
+
*
|
|
118
|
+
* This method allows you to listen for and respond to various events that occur during
|
|
119
|
+
* agent execution, such as trigger events, memory updates, or custom application events.
|
|
120
|
+
* Multiple handlers can be registered for the same event type and will be executed in the order they are registered.
|
|
121
|
+
*
|
|
122
|
+
* ## Available Event Types
|
|
123
|
+
*
|
|
124
|
+
* ### AI_MESSAGE
|
|
125
|
+
* Emitted when an AI generates a message that should be sent to the user.
|
|
126
|
+
*
|
|
127
|
+
* **Input Structure:**
|
|
128
|
+
* ```typescript
|
|
129
|
+
* {
|
|
130
|
+
* message: string; // The AI-generated message content
|
|
131
|
+
* memory: Memory; // Current memory state (your defined memory schema)
|
|
132
|
+
* sessionId: string; // Session identifier for persistence and session tracking
|
|
133
|
+
* }
|
|
134
|
+
* ```
|
|
135
|
+
*
|
|
136
|
+
* **Expected Output:** `void` - Handlers are used for side effects like sending messages to UI
|
|
137
|
+
*
|
|
138
|
+
* **Common Use Cases:**
|
|
139
|
+
* - Real-time chat UI updates with session context
|
|
140
|
+
* - Logging AI responses for analytics or debugging
|
|
141
|
+
* - Message formatting and transformation
|
|
142
|
+
* - Notifications and alerts based on AI responses
|
|
143
|
+
* - Session-based message routing
|
|
144
|
+
*
|
|
145
|
+
* ### TRIGGER_EVENT
|
|
146
|
+
* Emitted when a trigger node is executed. Allows you to qualify, transform, and provide
|
|
147
|
+
* initial state for trigger inputs before they're processed by the agent.
|
|
148
|
+
*
|
|
149
|
+
* **Input Structure:**
|
|
150
|
+
* ```typescript
|
|
151
|
+
* {
|
|
152
|
+
* triggerName: string; // Name of the trigger being executed
|
|
153
|
+
* triggerBody: any; // The trigger input data (type varies by trigger)
|
|
154
|
+
* }
|
|
155
|
+
* ```
|
|
156
|
+
*
|
|
157
|
+
* **Expected Output:** One of three possible return types:
|
|
158
|
+
*
|
|
159
|
+
* 1. **Provide Initial State:**
|
|
160
|
+
* ```typescript
|
|
161
|
+
* {
|
|
162
|
+
* messages?: BaseMessage[]; // Initial messages for the conversation
|
|
163
|
+
* memory?: Memory; // Initial memory state
|
|
164
|
+
* sessionId?: string; // Session ID for persistence (resumes existing sessions)
|
|
165
|
+
* }
|
|
166
|
+
* ```
|
|
167
|
+
*
|
|
168
|
+
* 2. **Disqualify the Trigger:**
|
|
169
|
+
* ```typescript
|
|
170
|
+
* false // Rejects/disqualifies the trigger from processing
|
|
171
|
+
* ```
|
|
172
|
+
*
|
|
173
|
+
* 3. **Qualify without Initial State:**
|
|
174
|
+
* ```typescript
|
|
175
|
+
* void // Qualifies the trigger but provides no initial state
|
|
176
|
+
* ```
|
|
177
|
+
*
|
|
178
|
+
* **Common Use Cases:**
|
|
179
|
+
* - Input validation and trigger qualification
|
|
180
|
+
* - Data transformation into standardized formats
|
|
181
|
+
* - Context setting with initial memory state
|
|
182
|
+
* - Access control and business rule enforcement
|
|
183
|
+
* - Routing logic for different trigger types
|
|
184
|
+
*
|
|
185
|
+
* @template E - The event type, constrained to known agent event types
|
|
186
|
+
* @param event - The name of the event to listen for
|
|
187
|
+
* @param handler - The function to call when the event is emitted
|
|
188
|
+
*
|
|
189
|
+
* @example
|
|
190
|
+
* ```typescript
|
|
191
|
+
* // AI_MESSAGE Event Handler
|
|
192
|
+
* agent.on('AI_MESSAGE', async ({ message, memory, sessionId }) => {
|
|
193
|
+
* console.log('AI said:', message);
|
|
194
|
+
* console.log('Current memory:', memory);
|
|
195
|
+
*
|
|
196
|
+
* // Send to user interface with session context
|
|
197
|
+
* await sendMessageToUser(message, sessionId);
|
|
198
|
+
*
|
|
199
|
+
* // Send via WebSocket
|
|
200
|
+
* await websocket.send(JSON.stringify({
|
|
201
|
+
* type: 'ai_message',
|
|
202
|
+
* content: message,
|
|
203
|
+
* sessionId: sessionId
|
|
204
|
+
* }));
|
|
205
|
+
* });
|
|
206
|
+
*
|
|
207
|
+
* // TRIGGER_EVENT Event Handler - Input Validation
|
|
208
|
+
* agent.on('TRIGGER_EVENT', async ({ triggerName, triggerBody }) => {
|
|
209
|
+
* // Validate trigger input
|
|
210
|
+
* if (!isValidInput(triggerBody)) {
|
|
211
|
+
* return false; // Disqualify the trigger
|
|
212
|
+
* }
|
|
213
|
+
*
|
|
214
|
+
* // Business hours check
|
|
215
|
+
* if (triggerName === 'supportRequest' && !isBusinessHours()) {
|
|
216
|
+
* return false;
|
|
217
|
+
* }
|
|
218
|
+
*
|
|
219
|
+
* return {
|
|
220
|
+
* memory: { validatedInput: triggerBody },
|
|
221
|
+
* messages: [new HumanMessage('Support request received')],
|
|
222
|
+
* sessionId: triggerBody.userId // Resume existing session
|
|
223
|
+
* };
|
|
224
|
+
* });
|
|
225
|
+
*
|
|
226
|
+
* // TRIGGER_EVENT Event Handler - Data Transformation
|
|
227
|
+
* agent.on('TRIGGER_EVENT', async ({ triggerName, triggerBody }) => {
|
|
228
|
+
* if (triggerName === 'emailTrigger') {
|
|
229
|
+
* // Transform email data into structured format
|
|
230
|
+
* const parsedEmail = parseEmailContent(triggerBody);
|
|
231
|
+
*
|
|
232
|
+
* return {
|
|
233
|
+
* memory: {
|
|
234
|
+
* emailSubject: parsedEmail.subject,
|
|
235
|
+
* senderEmail: parsedEmail.from
|
|
236
|
+
* },
|
|
237
|
+
* messages: [new HumanMessage(parsedEmail.content)],
|
|
238
|
+
* };
|
|
239
|
+
* }
|
|
240
|
+
* });
|
|
241
|
+
* ```
|
|
242
|
+
*/
|
|
38
243
|
on<E extends keyof AgentEventRequestPayloads<z.infer<typeof this.memorySchema>>>(event: E, handler: (payload: AgentEventRequestPayloads<z.infer<typeof this.memorySchema>>[E]) => Promise<AgentEventResponsePayloads<z.infer<typeof this.memorySchema>>[E] | void>): void;
|
|
39
244
|
private emit;
|
|
40
245
|
private initAppActionsRunnerTools;
|
package/dist/agent.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAI3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAI3D,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAe,MAAM,sBAAsB,CAAC;AAC1G,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,OAAO,EAAmB,eAAe,EAA4B,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"agent.d.ts","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,IAAI,EAAE,MAAM,qBAAqB,CAAC;AAI3C,OAAO,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAI3D,OAAO,EAAE,yBAAyB,EAAE,0BAA0B,EAAe,MAAM,sBAAsB,CAAC;AAC1G,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAMxB,OAAO,EAAmB,eAAe,EAA4B,MAAM,qBAAqB,CAAC;AASjG,KAAK,iBAAiB,CAAC,MAAM,IAAI;IAC/B,YAAY,EAAE,CAAC,CAAC,SAAS,CAAC;IAC1B,MAAM,EAAE,eAAe,CAAC;IACxB,KAAK,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC;IAC3B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,mBAAmB,CAAC;CACnC,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,qBAAa,KAAK;IAChB,OAAO,CAAC,YAAY,CAAc;IAClC,OAAO,CAAC,KAAK,CAAU;IAChB,KAAK,EAAG,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE,CAAC;IAChC,OAAO,CAAC,GAAG,CAAqB;IAChC,OAAO,CAAC,gBAAgB,CAAiC;IAEzD,OAAO,CAAC,YAAY,CAAuB;IAE3C,OAAO,CAAC,aAAa,CAAiB;IAEtC,OAAO,CAAC,YAAY,CAAuC;IAG3D,OAAO,CAAC,aAAa,CAId;IAEP,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,WAAW,CAA8B;IAEjD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA8BG;gBACS,MAAM,EAAE,iBAAiB,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC;YAM1D,IAAI;IAoClB,OAAO,CAAC,sBAAsB;IAoC9B,OAAO,CAAC,QAAQ;YAMF,qBAAqB;IAkBnC,OAAO,CAAC,eAAe;IAuDvB,OAAO,CAAC,cAAc;IAUtB;;;;;;;;;;;;;;;;;;;;;;;;;;;OA2BG;IACU,MAAM,CAAC,EAClB,WAAW,EACX,WAAW,EACX,SAAS,EACT,OAAO,GACR,EAAE;QACD,WAAW,EAAE,GAAG,CAAC;QACjB,WAAW,EAAE,MAAM,CAAC;QACpB,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;KAClB;IAmDD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;OA+HG;IAEI,EAAE,CAAC,CAAC,SAAS,MAAM,yBAAyB,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,EACpF,KAAK,EAAE,CAAC,EACR,OAAO,EAAE,CACP,OAAO,EAAE,yBAAyB,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,KACrE,OAAO,CAAC,0BAA0B,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,IAAI,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,GACpF,IAAI;YASO,IAAI;IAWlB,OAAO,CAAC,yBAAyB;YAWnB,WAAW;CAiD1B"}
|
package/dist/agent.js
CHANGED
|
@@ -56,7 +56,57 @@ const config_1 = require("./platform/config");
|
|
|
56
56
|
const messages_1 = require("@langchain/core/messages");
|
|
57
57
|
const triggerTypeToDefaultMessage_1 = __importDefault(require("./triggers/triggerTypeToDefaultMessage"));
|
|
58
58
|
const appActionRunnerTool_1 = __importDefault(require("./internalTools/appActionRunnerTool"));
|
|
59
|
+
const wait_1 = require("./utils/wait");
|
|
60
|
+
/**
|
|
61
|
+
* The main Agent class that orchestrates flows, tools, and integrations with the Minded platform.
|
|
62
|
+
*
|
|
63
|
+
* @example
|
|
64
|
+
* ```typescript
|
|
65
|
+
* const agent = new Agent({
|
|
66
|
+
* memorySchema: z.object({
|
|
67
|
+
* userName: z.string().optional(),
|
|
68
|
+
* preferences: z.record(z.any()).optional()
|
|
69
|
+
* }),
|
|
70
|
+
* config: {
|
|
71
|
+
* flows: ['./src/flows'],
|
|
72
|
+
* llm: { provider: 'openai', model: 'gpt-4' }
|
|
73
|
+
* },
|
|
74
|
+
* tools: [myCustomTool]
|
|
75
|
+
* });
|
|
76
|
+
* ```
|
|
77
|
+
*/
|
|
59
78
|
class Agent {
|
|
79
|
+
/**
|
|
80
|
+
* Create a new Agent instance.
|
|
81
|
+
*
|
|
82
|
+
* @param params - Configuration parameters for the agent
|
|
83
|
+
* @param params.memorySchema - Zod schema defining the structure of the agent's memory
|
|
84
|
+
* @param params.config - SDK configuration including flows directory and LLM settings
|
|
85
|
+
* @param params.tools - Array of custom tools to be available to the agent
|
|
86
|
+
* @param params.platformToken - Optional token for platform authentication
|
|
87
|
+
* @param params.memorySaver - Optional custom checkpoint saver for conversation memory
|
|
88
|
+
*
|
|
89
|
+
* @example
|
|
90
|
+
* ```typescript
|
|
91
|
+
* const agent = new Agent({
|
|
92
|
+
* memorySchema: z.object({
|
|
93
|
+
* userName: z.string().optional(),
|
|
94
|
+
* conversationHistory: z.array(z.string()).optional()
|
|
95
|
+
* }),
|
|
96
|
+
* config: {
|
|
97
|
+
* flows: ['./src/flows'],
|
|
98
|
+
* llm: {
|
|
99
|
+
* provider: 'openai',
|
|
100
|
+
* model: 'gpt-4-turbo'
|
|
101
|
+
* }
|
|
102
|
+
* },
|
|
103
|
+
* tools: [
|
|
104
|
+
* weatherTool,
|
|
105
|
+
* databaseTool
|
|
106
|
+
* ]
|
|
107
|
+
* });
|
|
108
|
+
* ```
|
|
109
|
+
*/
|
|
60
110
|
constructor(params) {
|
|
61
111
|
this.mindedConnection = null;
|
|
62
112
|
// Cache for secrets to avoid repeated API calls
|
|
@@ -215,26 +265,57 @@ class Agent {
|
|
|
215
265
|
triggerInvocations: [],
|
|
216
266
|
};
|
|
217
267
|
}
|
|
268
|
+
/**
|
|
269
|
+
* Invoke a trigger to start agent execution with the specified parameters.
|
|
270
|
+
*
|
|
271
|
+
* This method processes triggers from external systems or applications, allowing the agent
|
|
272
|
+
* to respond to events and execute the appropriate flows based on the trigger type.
|
|
273
|
+
*
|
|
274
|
+
* @param params - The trigger invocation parameters
|
|
275
|
+
* @param params.triggerBody - The payload/data associated with the trigger
|
|
276
|
+
* @param params.triggerName - The name/type of the trigger being invoked
|
|
277
|
+
* @param params.sessionId - Optional session identifier for conversation continuity
|
|
278
|
+
* @param params.appName - Optional name of the application triggering the agent in case of an app trigger
|
|
279
|
+
*
|
|
280
|
+
* @returns Promise that resolves with the agent's execution result
|
|
281
|
+
*
|
|
282
|
+
* @throws {Error} When the agent is not properly initialized
|
|
283
|
+
*
|
|
284
|
+
* @example
|
|
285
|
+
* ```typescript
|
|
286
|
+
* // Manual invoke with a message trigger
|
|
287
|
+
* const result = await agent.invoke({
|
|
288
|
+
* triggerName: 'minded.message.in.conversation',
|
|
289
|
+
* triggerBody: {
|
|
290
|
+
* text: 'Hello, how can you help me?',
|
|
291
|
+
* },
|
|
292
|
+
* sessionId: 'user-123-session'
|
|
293
|
+
* });
|
|
294
|
+
* ```
|
|
295
|
+
*/
|
|
218
296
|
async invoke({ triggerBody, triggerName, sessionId, appName, }) {
|
|
219
297
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
220
298
|
await this.waitForInitialization();
|
|
221
|
-
const results = await this.emit(AgentEvents_1.AgentEvents.TRIGGER_EVENT, {
|
|
222
|
-
triggerName,
|
|
223
|
-
triggerBody,
|
|
224
|
-
});
|
|
225
299
|
let messages = [];
|
|
226
|
-
const handlerResult = results.find((r) => r !== undefined);
|
|
227
300
|
let memoryUpdate = {};
|
|
228
|
-
if (triggerName === Flows_types_1.KnownTriggerNames.
|
|
229
|
-
messages.push(new messages_1.HumanMessage(triggerBody));
|
|
230
|
-
}
|
|
231
|
-
else if (handlerResult) {
|
|
232
|
-
memoryUpdate = handlerResult.memory || {};
|
|
233
|
-
messages = (_a = handlerResult.messages) !== null && _a !== void 0 ? _a : [];
|
|
234
|
-
sessionId = (_b = handlerResult.sessionId) !== null && _b !== void 0 ? _b : sessionId;
|
|
301
|
+
if (triggerName === Flows_types_1.KnownTriggerNames.DASHBOARD_MESSAGE) {
|
|
302
|
+
messages.push(new messages_1.HumanMessage(triggerBody.content));
|
|
235
303
|
}
|
|
236
|
-
else
|
|
237
|
-
|
|
304
|
+
else {
|
|
305
|
+
const results = await this.emit(AgentEvents_1.AgentEvents.TRIGGER_EVENT, {
|
|
306
|
+
triggerName,
|
|
307
|
+
triggerBody,
|
|
308
|
+
sessionId
|
|
309
|
+
});
|
|
310
|
+
const handlerResult = results.find((r) => r !== undefined);
|
|
311
|
+
if (handlerResult) {
|
|
312
|
+
memoryUpdate = handlerResult.memory || {};
|
|
313
|
+
messages = (_a = handlerResult.messages) !== null && _a !== void 0 ? _a : [];
|
|
314
|
+
sessionId = (_b = handlerResult.sessionId) !== null && _b !== void 0 ? _b : sessionId;
|
|
315
|
+
}
|
|
316
|
+
else if (appName) {
|
|
317
|
+
messages = (_e = (_d = (_c = triggerTypeToDefaultMessage_1.default[appName]) === null || _c === void 0 ? void 0 : _c[triggerName]) === null || _d === void 0 ? void 0 : _d.call(_c, triggerBody)) !== null && _e !== void 0 ? _e : [];
|
|
318
|
+
}
|
|
238
319
|
}
|
|
239
320
|
const triggerInvocation = { appName, triggerName, triggerBody };
|
|
240
321
|
const history = [
|
|
@@ -248,6 +329,7 @@ class Agent {
|
|
|
248
329
|
const state = await this.compiledGraph.getState(config);
|
|
249
330
|
// Resume interruption
|
|
250
331
|
if (((_h = (_g = (_f = state.tasks) === null || _f === void 0 ? void 0 : _f[0]) === null || _g === void 0 ? void 0 : _g.interrupts) === null || _h === void 0 ? void 0 : _h.length) > 0) {
|
|
332
|
+
console.log('Resuming interruption');
|
|
251
333
|
const res = await this.compiledGraph.invoke(new langgraph_1.Command({
|
|
252
334
|
resume: { memory: memoryUpdate, messages, history, triggerInvocations: [triggerInvocation] },
|
|
253
335
|
}), config);
|
|
@@ -258,6 +340,134 @@ class Agent {
|
|
|
258
340
|
return res;
|
|
259
341
|
}
|
|
260
342
|
}
|
|
343
|
+
/**
|
|
344
|
+
* Register an event handler for specific agent events.
|
|
345
|
+
*
|
|
346
|
+
* This method allows you to listen for and respond to various events that occur during
|
|
347
|
+
* agent execution, such as trigger events, memory updates, or custom application events.
|
|
348
|
+
* Multiple handlers can be registered for the same event type and will be executed in the order they are registered.
|
|
349
|
+
*
|
|
350
|
+
* ## Available Event Types
|
|
351
|
+
*
|
|
352
|
+
* ### AI_MESSAGE
|
|
353
|
+
* Emitted when an AI generates a message that should be sent to the user.
|
|
354
|
+
*
|
|
355
|
+
* **Input Structure:**
|
|
356
|
+
* ```typescript
|
|
357
|
+
* {
|
|
358
|
+
* message: string; // The AI-generated message content
|
|
359
|
+
* memory: Memory; // Current memory state (your defined memory schema)
|
|
360
|
+
* sessionId: string; // Session identifier for persistence and session tracking
|
|
361
|
+
* }
|
|
362
|
+
* ```
|
|
363
|
+
*
|
|
364
|
+
* **Expected Output:** `void` - Handlers are used for side effects like sending messages to UI
|
|
365
|
+
*
|
|
366
|
+
* **Common Use Cases:**
|
|
367
|
+
* - Real-time chat UI updates with session context
|
|
368
|
+
* - Logging AI responses for analytics or debugging
|
|
369
|
+
* - Message formatting and transformation
|
|
370
|
+
* - Notifications and alerts based on AI responses
|
|
371
|
+
* - Session-based message routing
|
|
372
|
+
*
|
|
373
|
+
* ### TRIGGER_EVENT
|
|
374
|
+
* Emitted when a trigger node is executed. Allows you to qualify, transform, and provide
|
|
375
|
+
* initial state for trigger inputs before they're processed by the agent.
|
|
376
|
+
*
|
|
377
|
+
* **Input Structure:**
|
|
378
|
+
* ```typescript
|
|
379
|
+
* {
|
|
380
|
+
* triggerName: string; // Name of the trigger being executed
|
|
381
|
+
* triggerBody: any; // The trigger input data (type varies by trigger)
|
|
382
|
+
* }
|
|
383
|
+
* ```
|
|
384
|
+
*
|
|
385
|
+
* **Expected Output:** One of three possible return types:
|
|
386
|
+
*
|
|
387
|
+
* 1. **Provide Initial State:**
|
|
388
|
+
* ```typescript
|
|
389
|
+
* {
|
|
390
|
+
* messages?: BaseMessage[]; // Initial messages for the conversation
|
|
391
|
+
* memory?: Memory; // Initial memory state
|
|
392
|
+
* sessionId?: string; // Session ID for persistence (resumes existing sessions)
|
|
393
|
+
* }
|
|
394
|
+
* ```
|
|
395
|
+
*
|
|
396
|
+
* 2. **Disqualify the Trigger:**
|
|
397
|
+
* ```typescript
|
|
398
|
+
* false // Rejects/disqualifies the trigger from processing
|
|
399
|
+
* ```
|
|
400
|
+
*
|
|
401
|
+
* 3. **Qualify without Initial State:**
|
|
402
|
+
* ```typescript
|
|
403
|
+
* void // Qualifies the trigger but provides no initial state
|
|
404
|
+
* ```
|
|
405
|
+
*
|
|
406
|
+
* **Common Use Cases:**
|
|
407
|
+
* - Input validation and trigger qualification
|
|
408
|
+
* - Data transformation into standardized formats
|
|
409
|
+
* - Context setting with initial memory state
|
|
410
|
+
* - Access control and business rule enforcement
|
|
411
|
+
* - Routing logic for different trigger types
|
|
412
|
+
*
|
|
413
|
+
* @template E - The event type, constrained to known agent event types
|
|
414
|
+
* @param event - The name of the event to listen for
|
|
415
|
+
* @param handler - The function to call when the event is emitted
|
|
416
|
+
*
|
|
417
|
+
* @example
|
|
418
|
+
* ```typescript
|
|
419
|
+
* // AI_MESSAGE Event Handler
|
|
420
|
+
* agent.on('AI_MESSAGE', async ({ message, memory, sessionId }) => {
|
|
421
|
+
* console.log('AI said:', message);
|
|
422
|
+
* console.log('Current memory:', memory);
|
|
423
|
+
*
|
|
424
|
+
* // Send to user interface with session context
|
|
425
|
+
* await sendMessageToUser(message, sessionId);
|
|
426
|
+
*
|
|
427
|
+
* // Send via WebSocket
|
|
428
|
+
* await websocket.send(JSON.stringify({
|
|
429
|
+
* type: 'ai_message',
|
|
430
|
+
* content: message,
|
|
431
|
+
* sessionId: sessionId
|
|
432
|
+
* }));
|
|
433
|
+
* });
|
|
434
|
+
*
|
|
435
|
+
* // TRIGGER_EVENT Event Handler - Input Validation
|
|
436
|
+
* agent.on('TRIGGER_EVENT', async ({ triggerName, triggerBody }) => {
|
|
437
|
+
* // Validate trigger input
|
|
438
|
+
* if (!isValidInput(triggerBody)) {
|
|
439
|
+
* return false; // Disqualify the trigger
|
|
440
|
+
* }
|
|
441
|
+
*
|
|
442
|
+
* // Business hours check
|
|
443
|
+
* if (triggerName === 'supportRequest' && !isBusinessHours()) {
|
|
444
|
+
* return false;
|
|
445
|
+
* }
|
|
446
|
+
*
|
|
447
|
+
* return {
|
|
448
|
+
* memory: { validatedInput: triggerBody },
|
|
449
|
+
* messages: [new HumanMessage('Support request received')],
|
|
450
|
+
* sessionId: triggerBody.userId // Resume existing session
|
|
451
|
+
* };
|
|
452
|
+
* });
|
|
453
|
+
*
|
|
454
|
+
* // TRIGGER_EVENT Event Handler - Data Transformation
|
|
455
|
+
* agent.on('TRIGGER_EVENT', async ({ triggerName, triggerBody }) => {
|
|
456
|
+
* if (triggerName === 'emailTrigger') {
|
|
457
|
+
* // Transform email data into structured format
|
|
458
|
+
* const parsedEmail = parseEmailContent(triggerBody);
|
|
459
|
+
*
|
|
460
|
+
* return {
|
|
461
|
+
* memory: {
|
|
462
|
+
* emailSubject: parsedEmail.subject,
|
|
463
|
+
* senderEmail: parsedEmail.from
|
|
464
|
+
* },
|
|
465
|
+
* messages: [new HumanMessage(parsedEmail.content)],
|
|
466
|
+
* };
|
|
467
|
+
* }
|
|
468
|
+
* });
|
|
469
|
+
* ```
|
|
470
|
+
*/
|
|
261
471
|
// Public API for registering event listeners
|
|
262
472
|
on(event, handler) {
|
|
263
473
|
if (!this.eventHandlers[event]) {
|
|
@@ -305,6 +515,10 @@ class Agent {
|
|
|
305
515
|
throw new Error('Platform is not available');
|
|
306
516
|
}
|
|
307
517
|
// Make socket request to fetch secrets
|
|
518
|
+
// In local env, we need to wait an additional 1 second (idk why)
|
|
519
|
+
if ((0, config_1.getConfig)().env === 'development') {
|
|
520
|
+
await (0, wait_1.wait)(1000);
|
|
521
|
+
}
|
|
308
522
|
const response = await this.mindedConnection.awaitEmit(mindedConnectionTypes_1.MindedConnectionSocketMessageType.GET_SECRETS, {});
|
|
309
523
|
// Extract secrets from response
|
|
310
524
|
const secrets = response.secrets || {};
|
package/dist/agent.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agent.js","sourceRoot":"","sources":["../src/agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AgentEvents.d.ts","sourceRoot":"","sources":["../../src/events/AgentEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,oBAAY,WAAW;IACrB,UAAU,eAAe;IACzB,aAAa,kBAAkB;CAChC;AAED,MAAM,MAAM,yBAAyB,CAAC,MAAM,IAAI;IAC9C,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE;QACxB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE;QAC3B,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,GAAG,CAAC;
|
|
1
|
+
{"version":3,"file":"AgentEvents.d.ts","sourceRoot":"","sources":["../../src/events/AgentEvents.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEnD,oBAAY,WAAW;IACrB,UAAU,eAAe;IACzB,aAAa,kBAAkB;CAChC;AAED,MAAM,MAAM,yBAAyB,CAAC,MAAM,IAAI;IAC9C,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE;QACxB,OAAO,EAAE,MAAM,CAAC;QAChB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE;QAC3B,WAAW,EAAE,MAAM,CAAC;QACpB,WAAW,EAAE,GAAG,CAAC;QACjB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,0BAA0B,CAAC,MAAM,IAAI;IAC/C,CAAC,WAAW,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC;IAC/B,CAAC,WAAW,CAAC,aAAa,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,KAAK,CAAC;CACjI,CAAC"}
|
|
@@ -5,7 +5,6 @@ export declare class MindedConnection {
|
|
|
5
5
|
[key: string]: ((message: BaseMindedConnectionSocketMessage) => void)[];
|
|
6
6
|
};
|
|
7
7
|
get isConnected(): boolean;
|
|
8
|
-
private waitForConnection;
|
|
9
8
|
on: (event: MindedConnectionSocketMessageType, callback: (message: BaseMindedConnectionSocketMessage) => void) => void;
|
|
10
9
|
emit: (event: MindedConnectionSocketMessageType, message: BaseMindedConnectionSocketMessage) => void;
|
|
11
10
|
awaitEmit: <T, R>(event: MindedConnectionSocketMessageType, message: T, timeoutMs?: number) => Promise<R>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mindedConnection.d.ts","sourceRoot":"","sources":["../../src/platform/mindedConnection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iCAAiC,EAAE,iCAAiC,EAAE,MAAM,yBAAyB,CAAC;AAI/G,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAuB;IACrC,SAAS,EAAE;QACT,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,iCAAiC,KAAK,IAAI,CAAC,EAAE,CAAC;KACzE,CAAM;IAEP,IAAW,WAAW,IAAI,OAAO,CAEhC;
|
|
1
|
+
{"version":3,"file":"mindedConnection.d.ts","sourceRoot":"","sources":["../../src/platform/mindedConnection.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iCAAiC,EAAE,iCAAiC,EAAE,MAAM,yBAAyB,CAAC;AAI/G,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,MAAM,CAAuB;IACrC,SAAS,EAAE;QACT,CAAC,GAAG,EAAE,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,iCAAiC,KAAK,IAAI,CAAC,EAAE,CAAC;KACzE,CAAM;IAEP,IAAW,WAAW,IAAI,OAAO,CAEhC;IAEM,EAAE,GAAI,OAAO,iCAAiC,EAAE,UAAU,CAAC,OAAO,EAAE,iCAAiC,KAAK,IAAI,UAKnH;IAEK,IAAI,GAAI,OAAO,iCAAiC,EAAE,SAAS,iCAAiC,UAIjG;IAEK,SAAS,GAAU,CAAC,EAAE,CAAC,EAAE,OAAO,iCAAiC,EAAE,SAAS,CAAC,EAAE,YAAW,MAAa,KAAG,OAAO,CAAC,CAAC,CAAC,CAuBzH;YAEY,OAAO;IA8DR,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAOpC"}
|
|
@@ -20,7 +20,6 @@ class MindedConnection {
|
|
|
20
20
|
}
|
|
21
21
|
};
|
|
22
22
|
this.awaitEmit = async (event, message, timeoutMs = 5000) => {
|
|
23
|
-
await this.waitForConnection();
|
|
24
23
|
if (!this.socket) {
|
|
25
24
|
throw new Error('Socket is not connected');
|
|
26
25
|
}
|
|
@@ -47,26 +46,6 @@ class MindedConnection {
|
|
|
47
46
|
var _a, _b;
|
|
48
47
|
return (_b = (_a = this.socket) === null || _a === void 0 ? void 0 : _a.connected) !== null && _b !== void 0 ? _b : false;
|
|
49
48
|
}
|
|
50
|
-
async waitForConnection() {
|
|
51
|
-
return new Promise((resolve, reject) => {
|
|
52
|
-
let attempts = 0;
|
|
53
|
-
const maxAttempts = 50;
|
|
54
|
-
const checkInterval = 100;
|
|
55
|
-
const checkConnection = () => {
|
|
56
|
-
var _a;
|
|
57
|
-
if ((_a = this.socket) === null || _a === void 0 ? void 0 : _a.connected) {
|
|
58
|
-
resolve();
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
attempts++;
|
|
62
|
-
if (attempts >= maxAttempts) {
|
|
63
|
-
reject(new Error('Connection failed'));
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
};
|
|
67
|
-
setInterval(checkConnection, checkInterval);
|
|
68
|
-
});
|
|
69
|
-
}
|
|
70
49
|
async connect(token) {
|
|
71
50
|
return new Promise((resolve, reject) => {
|
|
72
51
|
this.socket = (0, socket_io_client_1.io)((0, config_1.getConfig)().baseUrl, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mindedConnection.js","sourceRoot":"","sources":["../../src/platform/mindedConnection.ts"],"names":[],"mappings":";;;AAAA,uDAA8C;AAE9C,qCAAoC;AACpC,qCAAqC;AAErC,MAAa,gBAAgB;IAA7B;QACU,WAAM,GAAkB,IAAI,CAAC;QACrC,cAAS,GAEL,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"mindedConnection.js","sourceRoot":"","sources":["../../src/platform/mindedConnection.ts"],"names":[],"mappings":"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"}
|
|
@@ -126,7 +126,7 @@ export interface Flow {
|
|
|
126
126
|
edges: Edge[];
|
|
127
127
|
}
|
|
128
128
|
export declare enum KnownTriggerNames {
|
|
129
|
-
|
|
130
|
-
|
|
129
|
+
WEBHOOK = "webhook",
|
|
130
|
+
DASHBOARD_MESSAGE = "dashboard_message"
|
|
131
131
|
}
|
|
132
132
|
//# sourceMappingURL=Flows.types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Flows.types.d.ts","sourceRoot":"","sources":["../../src/types/Flows.types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"Flows.types.d.ts","sourceRoot":"","sources":["../../src/types/Flows.types.ts"],"names":[],"mappings":"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"}
|
|
@@ -36,7 +36,7 @@ var ActionInputParamType;
|
|
|
36
36
|
})(ActionInputParamType || (exports.ActionInputParamType = ActionInputParamType = {}));
|
|
37
37
|
var KnownTriggerNames;
|
|
38
38
|
(function (KnownTriggerNames) {
|
|
39
|
-
KnownTriggerNames["MINDED_MESSAGE_IN_CONVERSATION"] = "minded_message_in_conversation";
|
|
40
39
|
KnownTriggerNames["WEBHOOK"] = "webhook";
|
|
40
|
+
KnownTriggerNames["DASHBOARD_MESSAGE"] = "dashboard_message";
|
|
41
41
|
})(KnownTriggerNames || (exports.KnownTriggerNames = KnownTriggerNames = {}));
|
|
42
42
|
//# sourceMappingURL=Flows.types.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Flows.types.js","sourceRoot":"","sources":["../../src/types/Flows.types.ts"],"names":[],"mappings":";;;AAMA,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,+BAAmB,CAAA;IACnB,iCAAqB,CAAA;IACrB,yBAAa,CAAA;IACb,gCAAoB,CAAA;IACpB,sCAA0B,CAAA;AAC5B,CAAC,EANW,QAAQ,wBAAR,QAAQ,QAMnB;AAED,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,kDAAsC,CAAA;IACtC,gDAAoC,CAAA;IACpC,wCAA4B,CAAA;AAC9B,CAAC,EAJW,QAAQ,wBAAR,QAAQ,QAInB;AAUD,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,0BAAW,CAAA;IACX,kCAAmB,CAAA;IACnB,gCAAiB,CAAA;AACnB,CAAC,EAJW,WAAW,2BAAX,WAAW,QAItB;AAiFD,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC7B,2CAAoB,CAAA;AACtB,CAAC,EAFW,mBAAmB,mCAAnB,mBAAmB,QAE9B;AAsBD,IAAY,oBAOX;AAPD,WAAY,oBAAoB;IAC9B,yCAAiB,CAAA;IACjB,yCAAiB,CAAA;IACjB,2CAAmB,CAAA;IACnB,uCAAe,CAAA;IACf,yCAAiB,CAAA;IACjB,mCAAW,CAAA;AACb,CAAC,EAPW,oBAAoB,oCAApB,oBAAoB,QAO/B;AAQD,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,
|
|
1
|
+
{"version":3,"file":"Flows.types.js","sourceRoot":"","sources":["../../src/types/Flows.types.ts"],"names":[],"mappings":";;;AAMA,IAAY,QAMX;AAND,WAAY,QAAQ;IAClB,+BAAmB,CAAA;IACnB,iCAAqB,CAAA;IACrB,yBAAa,CAAA;IACb,gCAAoB,CAAA;IACpB,sCAA0B,CAAA;AAC5B,CAAC,EANW,QAAQ,wBAAR,QAAQ,QAMnB;AAED,IAAY,QAIX;AAJD,WAAY,QAAQ;IAClB,kDAAsC,CAAA;IACtC,gDAAoC,CAAA;IACpC,wCAA4B,CAAA;AAC9B,CAAC,EAJW,QAAQ,wBAAR,QAAQ,QAInB;AAUD,IAAY,WAIX;AAJD,WAAY,WAAW;IACrB,0BAAW,CAAA;IACX,kCAAmB,CAAA;IACnB,gCAAiB,CAAA;AACnB,CAAC,EAJW,WAAW,2BAAX,WAAW,QAItB;AAiFD,IAAY,mBAEX;AAFD,WAAY,mBAAmB;IAC7B,2CAAoB,CAAA;AACtB,CAAC,EAFW,mBAAmB,mCAAnB,mBAAmB,QAE9B;AAsBD,IAAY,oBAOX;AAPD,WAAY,oBAAoB;IAC9B,yCAAiB,CAAA;IACjB,yCAAiB,CAAA;IACjB,2CAAmB,CAAA;IACnB,uCAAe,CAAA;IACf,yCAAiB,CAAA;IACjB,mCAAW,CAAA;AACb,CAAC,EAPW,oBAAoB,oCAApB,oBAAoB,QAO/B;AAQD,IAAY,iBAGX;AAHD,WAAY,iBAAiB;IAC3B,wCAAmB,CAAA;IACnB,4DAAuC,CAAA;AACzC,CAAC,EAHW,iBAAiB,iCAAjB,iBAAiB,QAG5B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wait.d.ts","sourceRoot":"","sources":["../../src/utils/wait.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,IAAI,GAAI,IAAI,MAAM,qBAAsD,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"wait.js","sourceRoot":"","sources":["../../src/utils/wait.ts"],"names":[],"mappings":";;;AAAO,MAAM,IAAI,GAAG,CAAC,EAAU,EAAE,EAAE,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC;AAAzE,QAAA,IAAI,QAAqE"}
|
package/package.json
CHANGED
package/src/agent.ts
CHANGED
|
@@ -22,6 +22,7 @@ import { getConfig } from './platform/config';
|
|
|
22
22
|
import { BaseMessage, HumanMessage } from '@langchain/core/messages';
|
|
23
23
|
import triggerTypeToDefaultMessage from './triggers/triggerTypeToDefaultMessage';
|
|
24
24
|
import appActionRunnerToolCreator from './internalTools/appActionRunnerTool';
|
|
25
|
+
import { wait } from './utils/wait';
|
|
25
26
|
|
|
26
27
|
type CreateAgentParams<Memory> = {
|
|
27
28
|
memorySchema: z.ZodSchema;
|
|
@@ -30,6 +31,25 @@ type CreateAgentParams<Memory> = {
|
|
|
30
31
|
platformToken?: string;
|
|
31
32
|
memorySaver?: BaseCheckpointSaver;
|
|
32
33
|
};
|
|
34
|
+
|
|
35
|
+
/**
|
|
36
|
+
* The main Agent class that orchestrates flows, tools, and integrations with the Minded platform.
|
|
37
|
+
*
|
|
38
|
+
* @example
|
|
39
|
+
* ```typescript
|
|
40
|
+
* const agent = new Agent({
|
|
41
|
+
* memorySchema: z.object({
|
|
42
|
+
* userName: z.string().optional(),
|
|
43
|
+
* preferences: z.record(z.any()).optional()
|
|
44
|
+
* }),
|
|
45
|
+
* config: {
|
|
46
|
+
* flows: ['./src/flows'],
|
|
47
|
+
* llm: { provider: 'openai', model: 'gpt-4' }
|
|
48
|
+
* },
|
|
49
|
+
* tools: [myCustomTool]
|
|
50
|
+
* });
|
|
51
|
+
* ```
|
|
52
|
+
*/
|
|
33
53
|
export class Agent {
|
|
34
54
|
private memorySchema: z.ZodSchema;
|
|
35
55
|
private flows!: Flow[];
|
|
@@ -53,6 +73,37 @@ export class Agent {
|
|
|
53
73
|
private initialized = false;
|
|
54
74
|
private initPromise: Promise<void> | null = null;
|
|
55
75
|
|
|
76
|
+
/**
|
|
77
|
+
* Create a new Agent instance.
|
|
78
|
+
*
|
|
79
|
+
* @param params - Configuration parameters for the agent
|
|
80
|
+
* @param params.memorySchema - Zod schema defining the structure of the agent's memory
|
|
81
|
+
* @param params.config - SDK configuration including flows directory and LLM settings
|
|
82
|
+
* @param params.tools - Array of custom tools to be available to the agent
|
|
83
|
+
* @param params.platformToken - Optional token for platform authentication
|
|
84
|
+
* @param params.memorySaver - Optional custom checkpoint saver for conversation memory
|
|
85
|
+
*
|
|
86
|
+
* @example
|
|
87
|
+
* ```typescript
|
|
88
|
+
* const agent = new Agent({
|
|
89
|
+
* memorySchema: z.object({
|
|
90
|
+
* userName: z.string().optional(),
|
|
91
|
+
* conversationHistory: z.array(z.string()).optional()
|
|
92
|
+
* }),
|
|
93
|
+
* config: {
|
|
94
|
+
* flows: ['./src/flows'],
|
|
95
|
+
* llm: {
|
|
96
|
+
* provider: 'openai',
|
|
97
|
+
* model: 'gpt-4-turbo'
|
|
98
|
+
* }
|
|
99
|
+
* },
|
|
100
|
+
* tools: [
|
|
101
|
+
* weatherTool,
|
|
102
|
+
* databaseTool
|
|
103
|
+
* ]
|
|
104
|
+
* });
|
|
105
|
+
* ```
|
|
106
|
+
*/
|
|
56
107
|
constructor(params: CreateAgentParams<z.infer<typeof this.memorySchema>>) {
|
|
57
108
|
const { memorySchema } = params;
|
|
58
109
|
this.memorySchema = memorySchema;
|
|
@@ -220,6 +271,34 @@ export class Agent {
|
|
|
220
271
|
};
|
|
221
272
|
}
|
|
222
273
|
|
|
274
|
+
/**
|
|
275
|
+
* Invoke a trigger to start agent execution with the specified parameters.
|
|
276
|
+
*
|
|
277
|
+
* This method processes triggers from external systems or applications, allowing the agent
|
|
278
|
+
* to respond to events and execute the appropriate flows based on the trigger type.
|
|
279
|
+
*
|
|
280
|
+
* @param params - The trigger invocation parameters
|
|
281
|
+
* @param params.triggerBody - The payload/data associated with the trigger
|
|
282
|
+
* @param params.triggerName - The name/type of the trigger being invoked
|
|
283
|
+
* @param params.sessionId - Optional session identifier for conversation continuity
|
|
284
|
+
* @param params.appName - Optional name of the application triggering the agent in case of an app trigger
|
|
285
|
+
*
|
|
286
|
+
* @returns Promise that resolves with the agent's execution result
|
|
287
|
+
*
|
|
288
|
+
* @throws {Error} When the agent is not properly initialized
|
|
289
|
+
*
|
|
290
|
+
* @example
|
|
291
|
+
* ```typescript
|
|
292
|
+
* // Manual invoke with a message trigger
|
|
293
|
+
* const result = await agent.invoke({
|
|
294
|
+
* triggerName: 'minded.message.in.conversation',
|
|
295
|
+
* triggerBody: {
|
|
296
|
+
* text: 'Hello, how can you help me?',
|
|
297
|
+
* },
|
|
298
|
+
* sessionId: 'user-123-session'
|
|
299
|
+
* });
|
|
300
|
+
* ```
|
|
301
|
+
*/
|
|
223
302
|
public async invoke({
|
|
224
303
|
triggerBody,
|
|
225
304
|
triggerName,
|
|
@@ -232,21 +311,25 @@ export class Agent {
|
|
|
232
311
|
appName?: string;
|
|
233
312
|
}) {
|
|
234
313
|
await this.waitForInitialization();
|
|
235
|
-
const results = await this.emit(AgentEvents.TRIGGER_EVENT, {
|
|
236
|
-
triggerName,
|
|
237
|
-
triggerBody,
|
|
238
|
-
});
|
|
239
314
|
let messages: Array<BaseMessage> = [];
|
|
240
|
-
const handlerResult = results.find((r) => r !== undefined);
|
|
241
315
|
let memoryUpdate = {};
|
|
242
|
-
if (triggerName === KnownTriggerNames.
|
|
243
|
-
messages.push(new HumanMessage(triggerBody));
|
|
244
|
-
}
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
|
|
249
|
-
|
|
316
|
+
if (triggerName === KnownTriggerNames.DASHBOARD_MESSAGE) {
|
|
317
|
+
messages.push(new HumanMessage(triggerBody.content));
|
|
318
|
+
}
|
|
319
|
+
else {
|
|
320
|
+
const results = await this.emit(AgentEvents.TRIGGER_EVENT, {
|
|
321
|
+
triggerName,
|
|
322
|
+
triggerBody,
|
|
323
|
+
sessionId
|
|
324
|
+
});
|
|
325
|
+
const handlerResult = results.find((r) => r !== undefined);
|
|
326
|
+
if (handlerResult) {
|
|
327
|
+
memoryUpdate = handlerResult.memory || {};
|
|
328
|
+
messages = handlerResult.messages ?? [];
|
|
329
|
+
sessionId = handlerResult.sessionId ?? sessionId;
|
|
330
|
+
} else if (appName) {
|
|
331
|
+
messages = triggerTypeToDefaultMessage[appName]?.[triggerName]?.(triggerBody) ?? [];
|
|
332
|
+
}
|
|
250
333
|
}
|
|
251
334
|
const triggerInvocation = { appName, triggerName, triggerBody };
|
|
252
335
|
const history = [
|
|
@@ -260,6 +343,7 @@ export class Agent {
|
|
|
260
343
|
const state = await this.compiledGraph.getState(config);
|
|
261
344
|
// Resume interruption
|
|
262
345
|
if (state.tasks?.[0]?.interrupts?.length > 0) {
|
|
346
|
+
console.log('Resuming interruption');
|
|
263
347
|
const res = await this.compiledGraph.invoke(
|
|
264
348
|
new Command({
|
|
265
349
|
resume: { memory: memoryUpdate, messages, history, triggerInvocations: [triggerInvocation] },
|
|
@@ -276,6 +360,134 @@ export class Agent {
|
|
|
276
360
|
}
|
|
277
361
|
}
|
|
278
362
|
|
|
363
|
+
/**
|
|
364
|
+
* Register an event handler for specific agent events.
|
|
365
|
+
*
|
|
366
|
+
* This method allows you to listen for and respond to various events that occur during
|
|
367
|
+
* agent execution, such as trigger events, memory updates, or custom application events.
|
|
368
|
+
* Multiple handlers can be registered for the same event type and will be executed in the order they are registered.
|
|
369
|
+
*
|
|
370
|
+
* ## Available Event Types
|
|
371
|
+
*
|
|
372
|
+
* ### AI_MESSAGE
|
|
373
|
+
* Emitted when an AI generates a message that should be sent to the user.
|
|
374
|
+
*
|
|
375
|
+
* **Input Structure:**
|
|
376
|
+
* ```typescript
|
|
377
|
+
* {
|
|
378
|
+
* message: string; // The AI-generated message content
|
|
379
|
+
* memory: Memory; // Current memory state (your defined memory schema)
|
|
380
|
+
* sessionId: string; // Session identifier for persistence and session tracking
|
|
381
|
+
* }
|
|
382
|
+
* ```
|
|
383
|
+
*
|
|
384
|
+
* **Expected Output:** `void` - Handlers are used for side effects like sending messages to UI
|
|
385
|
+
*
|
|
386
|
+
* **Common Use Cases:**
|
|
387
|
+
* - Real-time chat UI updates with session context
|
|
388
|
+
* - Logging AI responses for analytics or debugging
|
|
389
|
+
* - Message formatting and transformation
|
|
390
|
+
* - Notifications and alerts based on AI responses
|
|
391
|
+
* - Session-based message routing
|
|
392
|
+
*
|
|
393
|
+
* ### TRIGGER_EVENT
|
|
394
|
+
* Emitted when a trigger node is executed. Allows you to qualify, transform, and provide
|
|
395
|
+
* initial state for trigger inputs before they're processed by the agent.
|
|
396
|
+
*
|
|
397
|
+
* **Input Structure:**
|
|
398
|
+
* ```typescript
|
|
399
|
+
* {
|
|
400
|
+
* triggerName: string; // Name of the trigger being executed
|
|
401
|
+
* triggerBody: any; // The trigger input data (type varies by trigger)
|
|
402
|
+
* }
|
|
403
|
+
* ```
|
|
404
|
+
*
|
|
405
|
+
* **Expected Output:** One of three possible return types:
|
|
406
|
+
*
|
|
407
|
+
* 1. **Provide Initial State:**
|
|
408
|
+
* ```typescript
|
|
409
|
+
* {
|
|
410
|
+
* messages?: BaseMessage[]; // Initial messages for the conversation
|
|
411
|
+
* memory?: Memory; // Initial memory state
|
|
412
|
+
* sessionId?: string; // Session ID for persistence (resumes existing sessions)
|
|
413
|
+
* }
|
|
414
|
+
* ```
|
|
415
|
+
*
|
|
416
|
+
* 2. **Disqualify the Trigger:**
|
|
417
|
+
* ```typescript
|
|
418
|
+
* false // Rejects/disqualifies the trigger from processing
|
|
419
|
+
* ```
|
|
420
|
+
*
|
|
421
|
+
* 3. **Qualify without Initial State:**
|
|
422
|
+
* ```typescript
|
|
423
|
+
* void // Qualifies the trigger but provides no initial state
|
|
424
|
+
* ```
|
|
425
|
+
*
|
|
426
|
+
* **Common Use Cases:**
|
|
427
|
+
* - Input validation and trigger qualification
|
|
428
|
+
* - Data transformation into standardized formats
|
|
429
|
+
* - Context setting with initial memory state
|
|
430
|
+
* - Access control and business rule enforcement
|
|
431
|
+
* - Routing logic for different trigger types
|
|
432
|
+
*
|
|
433
|
+
* @template E - The event type, constrained to known agent event types
|
|
434
|
+
* @param event - The name of the event to listen for
|
|
435
|
+
* @param handler - The function to call when the event is emitted
|
|
436
|
+
*
|
|
437
|
+
* @example
|
|
438
|
+
* ```typescript
|
|
439
|
+
* // AI_MESSAGE Event Handler
|
|
440
|
+
* agent.on('AI_MESSAGE', async ({ message, memory, sessionId }) => {
|
|
441
|
+
* console.log('AI said:', message);
|
|
442
|
+
* console.log('Current memory:', memory);
|
|
443
|
+
*
|
|
444
|
+
* // Send to user interface with session context
|
|
445
|
+
* await sendMessageToUser(message, sessionId);
|
|
446
|
+
*
|
|
447
|
+
* // Send via WebSocket
|
|
448
|
+
* await websocket.send(JSON.stringify({
|
|
449
|
+
* type: 'ai_message',
|
|
450
|
+
* content: message,
|
|
451
|
+
* sessionId: sessionId
|
|
452
|
+
* }));
|
|
453
|
+
* });
|
|
454
|
+
*
|
|
455
|
+
* // TRIGGER_EVENT Event Handler - Input Validation
|
|
456
|
+
* agent.on('TRIGGER_EVENT', async ({ triggerName, triggerBody }) => {
|
|
457
|
+
* // Validate trigger input
|
|
458
|
+
* if (!isValidInput(triggerBody)) {
|
|
459
|
+
* return false; // Disqualify the trigger
|
|
460
|
+
* }
|
|
461
|
+
*
|
|
462
|
+
* // Business hours check
|
|
463
|
+
* if (triggerName === 'supportRequest' && !isBusinessHours()) {
|
|
464
|
+
* return false;
|
|
465
|
+
* }
|
|
466
|
+
*
|
|
467
|
+
* return {
|
|
468
|
+
* memory: { validatedInput: triggerBody },
|
|
469
|
+
* messages: [new HumanMessage('Support request received')],
|
|
470
|
+
* sessionId: triggerBody.userId // Resume existing session
|
|
471
|
+
* };
|
|
472
|
+
* });
|
|
473
|
+
*
|
|
474
|
+
* // TRIGGER_EVENT Event Handler - Data Transformation
|
|
475
|
+
* agent.on('TRIGGER_EVENT', async ({ triggerName, triggerBody }) => {
|
|
476
|
+
* if (triggerName === 'emailTrigger') {
|
|
477
|
+
* // Transform email data into structured format
|
|
478
|
+
* const parsedEmail = parseEmailContent(triggerBody);
|
|
479
|
+
*
|
|
480
|
+
* return {
|
|
481
|
+
* memory: {
|
|
482
|
+
* emailSubject: parsedEmail.subject,
|
|
483
|
+
* senderEmail: parsedEmail.from
|
|
484
|
+
* },
|
|
485
|
+
* messages: [new HumanMessage(parsedEmail.content)],
|
|
486
|
+
* };
|
|
487
|
+
* }
|
|
488
|
+
* });
|
|
489
|
+
* ```
|
|
490
|
+
*/
|
|
279
491
|
// Public API for registering event listeners
|
|
280
492
|
public on<E extends keyof AgentEventRequestPayloads<z.infer<typeof this.memorySchema>>>(
|
|
281
493
|
event: E,
|
|
@@ -336,6 +548,10 @@ export class Agent {
|
|
|
336
548
|
}
|
|
337
549
|
|
|
338
550
|
// Make socket request to fetch secrets
|
|
551
|
+
// In local env, we need to wait an additional 1 second (idk why)
|
|
552
|
+
if (getConfig().env === 'development') {
|
|
553
|
+
await wait(1000);
|
|
554
|
+
}
|
|
339
555
|
const response = await this.mindedConnection.awaitEmit<object, { secrets: Record<string, string> }>(
|
|
340
556
|
MindedConnectionSocketMessageType.GET_SECRETS,
|
|
341
557
|
{},
|
|
@@ -13,27 +13,6 @@ export class MindedConnection {
|
|
|
13
13
|
return this.socket?.connected ?? false;
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
private async waitForConnection(): Promise<void> {
|
|
17
|
-
return new Promise((resolve, reject) => {
|
|
18
|
-
let attempts = 0;
|
|
19
|
-
const maxAttempts = 50;
|
|
20
|
-
const checkInterval = 100;
|
|
21
|
-
|
|
22
|
-
const checkConnection = () => {
|
|
23
|
-
if (this.socket?.connected) {
|
|
24
|
-
resolve();
|
|
25
|
-
} else {
|
|
26
|
-
attempts++;
|
|
27
|
-
if (attempts >= maxAttempts) {
|
|
28
|
-
reject(new Error('Connection failed'));
|
|
29
|
-
}
|
|
30
|
-
}
|
|
31
|
-
};
|
|
32
|
-
|
|
33
|
-
setInterval(checkConnection, checkInterval);
|
|
34
|
-
});
|
|
35
|
-
}
|
|
36
|
-
|
|
37
16
|
public on = (event: MindedConnectionSocketMessageType, callback: (message: BaseMindedConnectionSocketMessage) => void) => {
|
|
38
17
|
if (!this.listeners[event]) {
|
|
39
18
|
this.listeners[event] = [];
|
|
@@ -48,8 +27,6 @@ export class MindedConnection {
|
|
|
48
27
|
};
|
|
49
28
|
|
|
50
29
|
public awaitEmit = async <T, R>(event: MindedConnectionSocketMessageType, message: T, timeoutMs: number = 5000): Promise<R> => {
|
|
51
|
-
await this.waitForConnection();
|
|
52
|
-
|
|
53
30
|
if (!this.socket) {
|
|
54
31
|
throw new Error('Socket is not connected');
|
|
55
32
|
}
|
package/src/types/Flows.types.ts
CHANGED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export const wait = (ms: number) => new Promise((resolve) => setTimeout(resolve, ms));
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.analyticsFactory = void 0;
|
|
4
|
-
const mindedRequest_1 = require("./mindedRequest");
|
|
5
|
-
const track = async ({ event, data, token, sessionId }) => {
|
|
6
|
-
await (0, mindedRequest_1.mindedRequest)({
|
|
7
|
-
path: '/analytics/events',
|
|
8
|
-
method: 'POST',
|
|
9
|
-
body: { event, data, sessionId },
|
|
10
|
-
token,
|
|
11
|
-
});
|
|
12
|
-
};
|
|
13
|
-
const analyticsFactory = ({ token, sessionId }) => {
|
|
14
|
-
return {
|
|
15
|
-
track: (event, data) => track({ event, data, token, sessionId }),
|
|
16
|
-
};
|
|
17
|
-
};
|
|
18
|
-
exports.analyticsFactory = analyticsFactory;
|
|
19
|
-
//# sourceMappingURL=analytics.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../src/platform/analytics.ts"],"names":[],"mappings":";;;AAAA,mDAAgD;AAEhD,MAAM,KAAK,GAAG,KAAK,EAAK,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAgE,EAAE,EAAE;IACzH,MAAM,IAAA,6BAAa,EAAC;QAClB,IAAI,EAAE,mBAAmB;QACzB,MAAM,EAAE,MAAM;QACd,IAAI,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE;QAChC,KAAK;KACN,CAAC,CAAC;AACL,CAAC,CAAC;AAEK,MAAM,gBAAgB,GAAG,CAAC,EAAE,KAAK,EAAE,SAAS,EAAwC,EAAE,EAAE;IAC7F,OAAO;QACL,KAAK,EAAE,CAAI,KAAa,EAAE,IAAO,EAAE,EAAE,CAAC,KAAK,CAAI,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;KAClF,CAAC;AACJ,CAAC,CAAC;AAJW,QAAA,gBAAgB,oBAI3B"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
type Method = 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH';
|
|
2
|
-
export declare const mindedRequest: <Response, Request = object>({ path, method, body, token, }: {
|
|
3
|
-
path: string;
|
|
4
|
-
method: Method;
|
|
5
|
-
body: Request;
|
|
6
|
-
token: string;
|
|
7
|
-
}) => Promise<Response>;
|
|
8
|
-
export {};
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
-
};
|
|
5
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.mindedRequest = void 0;
|
|
7
|
-
const axios_1 = __importDefault(require("axios"));
|
|
8
|
-
const mindedRequest = async ({ path, method, body, token, }) => {
|
|
9
|
-
const baseUrl = process.env.MINDED_SERVER || 'https://api.minded.com/sdk';
|
|
10
|
-
const response = await (0, axios_1.default)({
|
|
11
|
-
method,
|
|
12
|
-
url: `${baseUrl}${path}`,
|
|
13
|
-
data: body,
|
|
14
|
-
headers: {
|
|
15
|
-
'Content-Type': 'application/json',
|
|
16
|
-
Authorization: `Bearer ${token}`,
|
|
17
|
-
},
|
|
18
|
-
});
|
|
19
|
-
return response.data;
|
|
20
|
-
};
|
|
21
|
-
exports.mindedRequest = mindedRequest;
|
|
22
|
-
//# sourceMappingURL=mindedRequest.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mindedRequest.js","sourceRoot":"","sources":["../../src/platform/mindedRequest.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAInB,MAAM,aAAa,GAAG,KAAK,EAA8B,EAC9D,IAAI,EACJ,MAAM,EACN,IAAI,EACJ,KAAK,GAMN,EAAqB,EAAE;IACtB,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,4BAA4B,CAAC;IAE1E,MAAM,QAAQ,GAAG,MAAM,IAAA,eAAK,EAAC;QAC3B,MAAM;QACN,GAAG,EAAE,GAAG,OAAO,GAAG,IAAI,EAAE;QACxB,IAAI,EAAE,IAAI;QACV,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;YAClC,aAAa,EAAE,UAAU,KAAK,EAAE;SACjC;KACF,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC,CAAC;AAxBW,QAAA,aAAa,iBAwBxB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export type TriggerBody = any;
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Triggers.types.js","sourceRoot":"","sources":["../../src/types/Triggers.types.ts"],"names":[],"mappings":""}
|