@mallocbaal/agent-framework 1.0.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 (50) hide show
  1. package/README.md +137 -0
  2. package/dist/app/app.d.ts +33 -0
  3. package/dist/app/app.d.ts.map +1 -0
  4. package/dist/app/app.js +143 -0
  5. package/dist/app/app.js.map +1 -0
  6. package/dist/communicator/client.d.ts +36 -0
  7. package/dist/communicator/client.d.ts.map +1 -0
  8. package/dist/communicator/client.js +129 -0
  9. package/dist/communicator/client.js.map +1 -0
  10. package/dist/communicator/models.d.ts +323 -0
  11. package/dist/communicator/models.d.ts.map +1 -0
  12. package/dist/communicator/models.js +6 -0
  13. package/dist/communicator/models.js.map +1 -0
  14. package/dist/config/config.d.ts +37 -0
  15. package/dist/config/config.d.ts.map +1 -0
  16. package/dist/config/config.js +81 -0
  17. package/dist/config/config.js.map +1 -0
  18. package/dist/dispatcher/dispatcher.d.ts +14 -0
  19. package/dist/dispatcher/dispatcher.d.ts.map +1 -0
  20. package/dist/dispatcher/dispatcher.js +28 -0
  21. package/dist/dispatcher/dispatcher.js.map +1 -0
  22. package/dist/events/types.d.ts +25 -0
  23. package/dist/events/types.d.ts.map +1 -0
  24. package/dist/events/types.js +4 -0
  25. package/dist/events/types.js.map +1 -0
  26. package/dist/index.d.ts +13 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +17 -0
  29. package/dist/index.js.map +1 -0
  30. package/dist/pipeline/pipeline.d.ts +36 -0
  31. package/dist/pipeline/pipeline.d.ts.map +1 -0
  32. package/dist/pipeline/pipeline.js +74 -0
  33. package/dist/pipeline/pipeline.js.map +1 -0
  34. package/dist/rabbitmq/consumer.d.ts +23 -0
  35. package/dist/rabbitmq/consumer.d.ts.map +1 -0
  36. package/dist/rabbitmq/consumer.js +184 -0
  37. package/dist/rabbitmq/consumer.js.map +1 -0
  38. package/dist/saga/events.d.ts +68 -0
  39. package/dist/saga/events.d.ts.map +1 -0
  40. package/dist/saga/events.js +7 -0
  41. package/dist/saga/events.js.map +1 -0
  42. package/dist/saga/logger.d.ts +9 -0
  43. package/dist/saga/logger.d.ts.map +1 -0
  44. package/dist/saga/logger.js +2 -0
  45. package/dist/saga/logger.js.map +1 -0
  46. package/dist/saga/minio.d.ts +19 -0
  47. package/dist/saga/minio.d.ts.map +1 -0
  48. package/dist/saga/minio.js +140 -0
  49. package/dist/saga/minio.js.map +1 -0
  50. package/package.json +43 -0
@@ -0,0 +1,323 @@
1
+ /**
2
+ * Types and enums aligned with communicator GraphQL schema (graph/schema.graphqls).
3
+ * Scalars: UUID = string, JSON = Record<string, unknown>.
4
+ */
5
+ export type ContentType = 'ACTIVITY' | 'TEXT' | 'IMAGE' | 'FILE' | 'SELECTOR' | 'TICKET' | 'CARDS' | 'IMAGE_INPUT' | 'POLICY';
6
+ export type MessageVisibility = 'BROADCASTED' | 'ONLY_VIEWER';
7
+ export type MessageLoad = 'CACHE' | 'ALL';
8
+ export type ChatType = 'ACTIVE' | 'ARCHIVED' | 'PENDING';
9
+ export type AiRespondingStatus = 'PROCESSING' | 'DONE';
10
+ export type MessageType = 'AGENT' | 'PARTICIPANT';
11
+ export type NameSource = 'SUMMARIZER' | 'MANUAL' | 'SYSTEM';
12
+ export type ChatOrderBy = 'CREATED_AT_ASC' | 'CREATED_AT_DESC' | 'UPDATED_AT_ASC' | 'UPDATED_AT_DESC' | 'LAST_MESSAGE_AT_ASC' | 'LAST_MESSAGE_AT_DESC';
13
+ /** Schema: MessageContentItemInput */
14
+ export interface MessageContentItemInput {
15
+ type: ContentType;
16
+ order: number;
17
+ data: Record<string, unknown>;
18
+ }
19
+ /** Schema: AgentMessageInput */
20
+ export interface AgentMessageInput {
21
+ chatId: string;
22
+ botId?: string | null;
23
+ metadata?: Record<string, unknown> | null;
24
+ contents: MessageContentItemInput[];
25
+ messageId?: string | null;
26
+ visibleForUser?: string | null;
27
+ broadcastedForAllExcept?: string | null;
28
+ }
29
+ /** Schema: SendChatActionInput */
30
+ export interface SendChatActionInput {
31
+ chatId: string;
32
+ participantId: string;
33
+ action: string;
34
+ data?: Record<string, unknown> | null;
35
+ }
36
+ /** Schema: SetAiRespondingStatusInput */
37
+ export interface SetAiRespondingStatusInput {
38
+ chatId: string;
39
+ participantId: string;
40
+ status: AiRespondingStatus;
41
+ }
42
+ /** Schema: CliFlowActionInput */
43
+ export interface CliFlowActionInput {
44
+ chatId: string;
45
+ participantId: string;
46
+ accountId: string;
47
+ actionType: string;
48
+ actionData: Record<string, unknown>;
49
+ }
50
+ /** Schema: RegisterBotInput */
51
+ export interface RegisterBotInput {
52
+ id?: string | null;
53
+ key: string;
54
+ address?: string | null;
55
+ name: string;
56
+ settings?: Record<string, unknown> | null;
57
+ ignoreSummaryEvents?: boolean | null;
58
+ eventStream?: string | null;
59
+ streamingEnabled?: boolean | null;
60
+ }
61
+ /** Schema: UpdateBotInput */
62
+ export interface UpdateBotInput {
63
+ id: string;
64
+ address?: string | null;
65
+ name?: string | null;
66
+ settings?: Record<string, unknown> | null;
67
+ ignoreSummaryEvents?: boolean | null;
68
+ eventStream?: string | null;
69
+ streamingEnabled?: boolean | null;
70
+ }
71
+ /** Schema: ChatMessageInput */
72
+ export interface ChatMessageInput {
73
+ chatId: string;
74
+ participantId: string;
75
+ accountId: string;
76
+ metadata?: Record<string, unknown> | null;
77
+ contents: MessageContentItemInput[];
78
+ messageId?: string | null;
79
+ }
80
+ /** Schema: ChatMessageUpdateInput */
81
+ export interface ChatMessageUpdateInput {
82
+ messageId: string;
83
+ participantId: string;
84
+ metadata?: Record<string, unknown> | null;
85
+ contents?: MessageContentItemInput[] | null;
86
+ }
87
+ /** Schema: CreateChatInput */
88
+ export interface CreateChatInput {
89
+ participantId: string;
90
+ chatId?: string | null;
91
+ source: string;
92
+ metadata?: Record<string, unknown> | null;
93
+ title?: string | null;
94
+ avatar?: string | null;
95
+ participantNames?: ParticipantNameInput[] | null;
96
+ participantChatSettings?: ChatParticipantSettingsInput[] | null;
97
+ botIds?: string[] | null;
98
+ ignoreSummaryEvents?: boolean | null;
99
+ chatType?: ChatType | null;
100
+ }
101
+ /** Schema: ParticipantNameInput */
102
+ export interface ParticipantNameInput {
103
+ participantId: string;
104
+ name: string;
105
+ source?: NameSource | null;
106
+ avatar?: string | null;
107
+ }
108
+ /** Schema: ChatParticipantSettingsInput */
109
+ export interface ChatParticipantSettingsInput {
110
+ participantId: string;
111
+ title?: string | null;
112
+ avatar?: string | null;
113
+ summary?: string | null;
114
+ }
115
+ /** Schema: UpdateChatSummaryInput */
116
+ export interface UpdateChatSummaryInput {
117
+ chatId: string;
118
+ participantId: string;
119
+ title?: string | null;
120
+ avatar?: string | null;
121
+ summary?: string | null;
122
+ participantNames?: ParticipantNameInput[] | null;
123
+ ignoreSummaryEvents?: boolean | null;
124
+ }
125
+ /** Schema: UpdateChatTypeInput */
126
+ export interface UpdateChatTypeInput {
127
+ chatId: string;
128
+ participantId: string;
129
+ chatType: ChatType;
130
+ }
131
+ /** Schema: PatchChatMetadataInput */
132
+ export interface PatchChatMetadataInput {
133
+ chatId: string;
134
+ metadata: Record<string, unknown>;
135
+ }
136
+ /** Schema: TimeSpanFilter */
137
+ export interface TimeSpanFilter {
138
+ from?: number | null;
139
+ to?: number | null;
140
+ }
141
+ /** Schema: ChatGroupConfig */
142
+ export interface ChatGroupConfig {
143
+ name: string;
144
+ participantIds?: string[] | null;
145
+ createdTimeSpan?: TimeSpanFilter | null;
146
+ lastMessageTimeSpan?: TimeSpanFilter | null;
147
+ botIds?: string[] | null;
148
+ chatTypes?: ChatType[] | null;
149
+ limit?: number | null;
150
+ orderBy?: ChatOrderBy | null;
151
+ }
152
+ /** Schema: ChatFilters */
153
+ export interface ChatFilters {
154
+ participantIds?: string[] | null;
155
+ createdTimeSpan?: TimeSpanFilter | null;
156
+ lastMessageTimeSpan?: TimeSpanFilter | null;
157
+ botIds?: string[] | null;
158
+ chatTypes?: ChatType[] | null;
159
+ groups?: ChatGroupConfig[] | null;
160
+ limit?: number | null;
161
+ offset?: number | null;
162
+ orderBy?: ChatOrderBy | null;
163
+ }
164
+ /** Schema: PredefineChatInput */
165
+ export interface PredefineChatInput {
166
+ parentId?: string | null;
167
+ participantId: string;
168
+ chatId?: string | null;
169
+ source: string;
170
+ metadata?: Record<string, unknown> | null;
171
+ participantNames?: ParticipantNameInput[] | null;
172
+ participantChatSettings?: ChatParticipantSettingsInput[] | null;
173
+ botIds?: string[] | null;
174
+ messages: PredefinedMessageInput[];
175
+ }
176
+ /** Schema: PredefinedMessageInput */
177
+ export interface PredefinedMessageInput {
178
+ type: MessageType;
179
+ messageId?: string | null;
180
+ contents: MessageContentItemInput[];
181
+ metadata?: Record<string, unknown> | null;
182
+ timestamp?: number | null;
183
+ visibleForUser?: string | null;
184
+ broadcastedForAllExcept?: string | null;
185
+ }
186
+ /** Schema: InitAgentPredefinedChatInput */
187
+ export interface InitAgentPredefinedChatInput {
188
+ chatId: string;
189
+ participantId: string;
190
+ accountId: string;
191
+ agent: string;
192
+ flowId?: string | null;
193
+ metadata?: Record<string, unknown> | null;
194
+ data?: Record<string, unknown> | null;
195
+ }
196
+ /** Schema: SuccessResponse */
197
+ export interface SuccessResponse {
198
+ success: boolean;
199
+ error?: string | null;
200
+ }
201
+ /** Schema: MessageContentItem (type) */
202
+ export interface MessageContentItem {
203
+ type: ContentType;
204
+ order: number;
205
+ data: Record<string, unknown>;
206
+ }
207
+ /** Schema: ChatMessage */
208
+ export interface ChatMessage {
209
+ id: string;
210
+ timestamp: number;
211
+ chatId: string;
212
+ participantId: string;
213
+ botId?: string | null;
214
+ metadata?: Record<string, unknown> | null;
215
+ contents: MessageContentItem[];
216
+ agent: boolean;
217
+ visibility?: MessageVisibility | null;
218
+ }
219
+ /** Schema: MessageResponse */
220
+ export interface MessageResponse {
221
+ success: boolean;
222
+ message?: ChatMessage | null;
223
+ error?: string | null;
224
+ }
225
+ /** Schema: ChatMessagesResponse */
226
+ export interface ChatMessagesResponse {
227
+ success: boolean;
228
+ messages: ChatMessage[];
229
+ totalCount: number;
230
+ hasMore: boolean;
231
+ error?: string | null;
232
+ }
233
+ /** Schema: Bot */
234
+ export interface Bot {
235
+ id: string;
236
+ key: string;
237
+ address?: string | null;
238
+ name: string;
239
+ settings?: Record<string, unknown> | null;
240
+ ignoreSummaryEvents: boolean;
241
+ eventStream?: string | null;
242
+ streamingEnabled: boolean;
243
+ }
244
+ /** Schema: BotCheckResponse */
245
+ export interface BotCheckResponse {
246
+ success: boolean;
247
+ exists: boolean;
248
+ id?: string | null;
249
+ error?: string | null;
250
+ }
251
+ /** Schema: BotResponse */
252
+ export interface BotResponse {
253
+ success: boolean;
254
+ bot?: Bot | null;
255
+ error?: string | null;
256
+ }
257
+ /** Schema: BotsResponse */
258
+ export interface BotsResponse {
259
+ success: boolean;
260
+ bots: Bot[];
261
+ error?: string | null;
262
+ }
263
+ /** Schema: HealthStatus */
264
+ export interface HealthStatus {
265
+ status: string;
266
+ timestamp: number;
267
+ }
268
+ /** Schema: ParticipantName */
269
+ export interface ParticipantName {
270
+ participantId: string;
271
+ name: string;
272
+ source: NameSource;
273
+ updatedAt: number;
274
+ avatar?: string | null;
275
+ }
276
+ /** Schema: Chat */
277
+ export interface Chat {
278
+ id: string;
279
+ participants: ParticipantName[];
280
+ lastMessageAt?: number | null;
281
+ messageCount: number;
282
+ createdAt: number;
283
+ updatedAt: number;
284
+ metadata?: Record<string, unknown> | null;
285
+ title?: string | null;
286
+ avatar?: string | null;
287
+ summary?: string | null;
288
+ isRead: boolean;
289
+ bots: string[];
290
+ chatType: ChatType;
291
+ ignoreSummaryEvents: boolean;
292
+ }
293
+ /** Schema: ChatResponse */
294
+ export interface ChatResponse {
295
+ success: boolean;
296
+ chat?: Chat | null;
297
+ error?: string | null;
298
+ }
299
+ /** Schema: ChatParticipantsResponse */
300
+ export interface ChatParticipantsResponse {
301
+ success: boolean;
302
+ participantIds: string[];
303
+ error?: string | null;
304
+ }
305
+ /** Schema: ChatGroup */
306
+ export interface ChatGroup {
307
+ id: string;
308
+ name: string;
309
+ chats: Chat[];
310
+ }
311
+ /** Schema: ChatEventResponse */
312
+ export interface ChatEventResponse {
313
+ success: boolean;
314
+ eventType: string;
315
+ chatId: string;
316
+ messageId?: string | null;
317
+ participantId: string;
318
+ timestamp: number;
319
+ data?: Record<string, unknown> | null;
320
+ action?: string | null;
321
+ error?: string | null;
322
+ }
323
+ //# sourceMappingURL=models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../src/communicator/models.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Types and enums aligned with communicator GraphQL schema (graph/schema.graphqls).
3
+ * Scalars: UUID = string, JSON = Record<string, unknown>.
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=models.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.js","sourceRoot":"","sources":["../../src/communicator/models.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,37 @@
1
+ export interface CommunicatorConfig {
2
+ baseURL: string;
3
+ timeoutMs: number;
4
+ }
5
+ export interface RabbitMQConfig {
6
+ url: string;
7
+ exchange: string;
8
+ queue: string;
9
+ bindings: string[];
10
+ prefetch: number;
11
+ maxRetries: number;
12
+ }
13
+ export interface BotConfig {
14
+ key: string;
15
+ name: string;
16
+ eventStream: string;
17
+ streamingEnabled: boolean;
18
+ }
19
+ export interface MinIOConfig {
20
+ endpoint: string;
21
+ accessKey: string;
22
+ secretKey: string;
23
+ bucket: string;
24
+ useSSL: boolean;
25
+ }
26
+ export interface Config {
27
+ port: string;
28
+ communicator: CommunicatorConfig;
29
+ rabbitMQ: RabbitMQConfig;
30
+ bot: BotConfig;
31
+ minIO: MinIOConfig;
32
+ }
33
+ /**
34
+ * Load configuration from environment variables.
35
+ */
36
+ export declare function loadConfig(): Config;
37
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,kBAAkB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,cAAc;IAC7B,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAED,MAAM,WAAW,WAAW;IAC1B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,MAAM,WAAW,MAAM;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,kBAAkB,CAAC;IACjC,QAAQ,EAAE,cAAc,CAAC;IACzB,GAAG,EAAE,SAAS,CAAC;IACf,KAAK,EAAE,WAAW,CAAC;CACpB;AAmCD;;GAEG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAyCnC"}
@@ -0,0 +1,81 @@
1
+ function getEnv(key, defaultValue) {
2
+ const val = process.env[key];
3
+ return val !== undefined && val !== '' ? val : defaultValue;
4
+ }
5
+ function getEnvInt(key, defaultValue) {
6
+ const val = process.env[key];
7
+ if (val === undefined || val === '')
8
+ return defaultValue;
9
+ const n = parseInt(val, 10);
10
+ return Number.isNaN(n) ? defaultValue : n;
11
+ }
12
+ function getEnvBool(key, defaultValue) {
13
+ const val = process.env[key];
14
+ if (val === undefined || val === '')
15
+ return defaultValue;
16
+ return val === '1' || val.toLowerCase() === 'true' || val.toLowerCase() === 'yes';
17
+ }
18
+ function parseMinIOEndpoint(endpoint) {
19
+ if (!endpoint)
20
+ return '';
21
+ let e = endpoint.replace(/^https?:\/\//, '');
22
+ if (e.includes('${{') && e.includes('}}'))
23
+ return '';
24
+ if (e.includes('/'))
25
+ e = e.split('/')[0] ?? e;
26
+ return e;
27
+ }
28
+ function splitBindings(s) {
29
+ return s
30
+ .split(',')
31
+ .map((p) => p.trim())
32
+ .filter((p) => p.length > 0);
33
+ }
34
+ /**
35
+ * Load configuration from environment variables.
36
+ */
37
+ export function loadConfig() {
38
+ const bindings = splitBindings(getEnv('RABBITMQ_BINDINGS', 'cli.flow.profile-builder'));
39
+ const rabbitUrl = getEnv('RABBITMQ_COMMUNICATOR_URL', process.env['RABBITMQ_URL'] ?? '');
40
+ const minioEndpoint = parseMinIOEndpoint(process.env['MINIO_ENDPOINT'] ?? '');
41
+ const cfg = {
42
+ port: getEnv('PORT', '8091'),
43
+ communicator: {
44
+ baseURL: process.env['COMMUNICATOR_URL'] ?? '',
45
+ timeoutMs: 10000,
46
+ },
47
+ rabbitMQ: {
48
+ url: rabbitUrl,
49
+ exchange: getEnv('RABBITMQ_EXCHANGE', 'cli.flow'),
50
+ queue: getEnv('RABBITMQ_QUEUE', 'profile-builder'),
51
+ bindings,
52
+ prefetch: getEnvInt('RABBITMQ_PREFETCH', 1),
53
+ maxRetries: getEnvInt('RABBITMQ_MAX_RETRIES', 3),
54
+ },
55
+ bot: {
56
+ key: getEnv('BOT_KEY', 'profile-builder'),
57
+ name: getEnv('BOT_NAME', 'Agent Bot'),
58
+ eventStream: getEnv('BOT_EVENT_STREAM', 'profile-builder-events'),
59
+ streamingEnabled: getEnvBool('BOT_STREAMING_ENABLED', true),
60
+ },
61
+ minIO: {
62
+ endpoint: minioEndpoint,
63
+ accessKey: process.env['MINIO_ACCESS_KEY'] ?? '',
64
+ secretKey: process.env['MINIO_SECRET_KEY'] ?? '',
65
+ bucket: getEnv('MINIO_BUCKET', 'profile-builder-sagas'),
66
+ useSSL: getEnvBool('MINIO_USE_SSL', false),
67
+ },
68
+ };
69
+ if (!cfg.communicator.baseURL)
70
+ throw new Error('COMMUNICATOR_URL is required');
71
+ if (!cfg.rabbitMQ.url)
72
+ throw new Error('RABBITMQ_URL is required');
73
+ if (!cfg.minIO.endpoint)
74
+ throw new Error('MINIO_ENDPOINT is required');
75
+ if (!cfg.minIO.accessKey)
76
+ throw new Error('MINIO_ACCESS_KEY is required');
77
+ if (!cfg.minIO.secretKey)
78
+ throw new Error('MINIO_SECRET_KEY is required');
79
+ return cfg;
80
+ }
81
+ //# sourceMappingURL=config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/config/config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import type { Event } from '../events/types.js';
2
+ export interface EventProcessor {
3
+ handleInit(ctx: AbortSignal | undefined, event: Event): Promise<void>;
4
+ handleContinue(ctx: AbortSignal | undefined, event: Event): Promise<void>;
5
+ }
6
+ /**
7
+ * Dispatcher routes events to HandleInit / HandleContinue.
8
+ */
9
+ export declare class Dispatcher {
10
+ private readonly processor;
11
+ constructor(processor: EventProcessor);
12
+ handle(ctx: AbortSignal | undefined, ev: Event): Promise<void>;
13
+ }
14
+ //# sourceMappingURL=dispatcher.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dispatcher.d.ts","sourceRoot":"","sources":["../../src/dispatcher/dispatcher.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,MAAM,WAAW,cAAc;IAC7B,UAAU,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACtE,cAAc,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,EAAE,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3E;AAED;;GAEG;AACH,qBAAa,UAAU;IACT,OAAO,CAAC,QAAQ,CAAC,SAAS;gBAAT,SAAS,EAAE,cAAc;IAEhD,MAAM,CAAC,GAAG,EAAE,WAAW,GAAG,SAAS,EAAE,EAAE,EAAE,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC;CAqBrE"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Dispatcher routes events to HandleInit / HandleContinue.
3
+ */
4
+ export class Dispatcher {
5
+ processor;
6
+ constructor(processor) {
7
+ this.processor = processor;
8
+ }
9
+ async handle(ctx, ev) {
10
+ console.log(`[DISPATCHER] Starting event processing: eventId=${ev.eventId}, type=${ev.eventType}, chatID=${ev.chatId}`);
11
+ switch (ev.eventType) {
12
+ case 'CLI_FLOW_INIT':
13
+ console.log(`[DISPATCHER] Routing to HandleInit: chatID=${ev.chatId}`);
14
+ await this.processor.handleInit(ctx, ev);
15
+ break;
16
+ case 'CLI_FLOW_CONTINUE':
17
+ console.log(`[DISPATCHER] Routing to HandleContinue: chatID=${ev.chatId}`);
18
+ await this.processor.handleContinue(ctx, ev);
19
+ break;
20
+ case 'CLI_FLOW_END':
21
+ console.log(`[DISPATCHER] Event type CLI_FLOW_END - no processing needed: chatID=${ev.chatId}`);
22
+ break;
23
+ default:
24
+ console.log(`[DISPATCHER] Skipping unknown eventType=${ev.eventType} chatId=${ev.chatId}`);
25
+ }
26
+ }
27
+ }
28
+ //# sourceMappingURL=dispatcher.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dispatcher.js","sourceRoot":"","sources":["../../src/dispatcher/dispatcher.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,OAAO,UAAU;IACQ;IAA7B,YAA6B,SAAyB;QAAzB,cAAS,GAAT,SAAS,CAAgB;IAAG,CAAC;IAE1D,KAAK,CAAC,MAAM,CAAC,GAA4B,EAAE,EAAS;QAClD,OAAO,CAAC,GAAG,CACT,mDAAmD,EAAE,CAAC,OAAO,UAAU,EAAE,CAAC,SAAS,YAAY,EAAE,CAAC,MAAM,EAAE,CAC3G,CAAC;QAEF,QAAQ,EAAE,CAAC,SAAS,EAAE,CAAC;YACrB,KAAK,eAAe;gBAClB,OAAO,CAAC,GAAG,CAAC,8CAA8C,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;gBACvE,MAAM,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBACzC,MAAM;YACR,KAAK,mBAAmB;gBACtB,OAAO,CAAC,GAAG,CAAC,kDAAkD,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;gBAC3E,MAAM,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;gBAC7C,MAAM;YACR,KAAK,cAAc;gBACjB,OAAO,CAAC,GAAG,CAAC,uEAAuE,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;gBAChG,MAAM;YACR;gBACE,OAAO,CAAC,GAAG,CAAC,2CAA2C,EAAE,CAAC,SAAS,WAAW,EAAE,CAAC,MAAM,EAAE,CAAC,CAAC;QAC/F,CAAC;IACH,CAAC;CACF"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * CLI flow event types (mirrors cli-flow-service contract).
3
+ */
4
+ export type EventType = 'CLI_FLOW_INIT' | 'CLI_FLOW_CONTINUE' | 'CLI_FLOW_END';
5
+ export declare const CliFlowInit: EventType;
6
+ export declare const CliFlowContinue: EventType;
7
+ export declare const CliFlowEnd: EventType;
8
+ /**
9
+ * Event envelope for compatibility across agents.
10
+ */
11
+ export interface Event {
12
+ eventType: EventType;
13
+ eventId: string;
14
+ timestamp?: number | null;
15
+ flowId: string;
16
+ chatId: string;
17
+ participantId: string;
18
+ accountId: string;
19
+ message?: string | null;
20
+ actionType?: string;
21
+ actionData?: Record<string, unknown>;
22
+ data?: Record<string, unknown>;
23
+ metadata?: Record<string, unknown>;
24
+ }
25
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/events/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,MAAM,MAAM,SAAS,GAAG,eAAe,GAAG,mBAAmB,GAAG,cAAc,CAAC;AAE/E,eAAO,MAAM,WAAW,EAAE,SAA2B,CAAC;AACtD,eAAO,MAAM,eAAe,EAAE,SAA+B,CAAC;AAC9D,eAAO,MAAM,UAAU,EAAE,SAA0B,CAAC;AAEpD;;GAEG;AACH,MAAM,WAAW,KAAK;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACpC"}
@@ -0,0 +1,4 @@
1
+ export const CliFlowInit = 'CLI_FLOW_INIT';
2
+ export const CliFlowContinue = 'CLI_FLOW_CONTINUE';
3
+ export const CliFlowEnd = 'CLI_FLOW_END';
4
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/events/types.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,MAAM,WAAW,GAAc,eAAe,CAAC;AACtD,MAAM,CAAC,MAAM,eAAe,GAAc,mBAAmB,CAAC;AAC9D,MAAM,CAAC,MAAM,UAAU,GAAc,cAAc,CAAC"}
@@ -0,0 +1,13 @@
1
+ export { type Event, type EventType, CliFlowInit, CliFlowContinue, CliFlowEnd, } from './events/types.js';
2
+ export { loadConfig, type Config, type RabbitMQConfig, type MinIOConfig } from './config/config.js';
3
+ export { Dispatcher, type EventProcessor } from './dispatcher/dispatcher.js';
4
+ export { createConsumer, Consumer, type Handler } from './rabbitmq/consumer.js';
5
+ export type { SagaLogger } from './saga/logger.js';
6
+ export type { SagaEventUnion } from './saga/events.js';
7
+ export { createMinIOSagaLogger, createNoopSagaLogger, } from './saga/minio.js';
8
+ export * from './saga/events.js';
9
+ export { createCommunicatorClient, CommunicatorClient, type AgentMessageInput, type MessageContentItemInput, type SendChatActionInput, type RegisterBotInput, type BotCheckResponse, } from './communicator/client.js';
10
+ export type { ContentType, AiRespondingStatus, ChatType, MessageVisibility, MessageLoad, MessageType, NameSource, ChatOrderBy, MessageContentItemInput as SchemaMessageContentItemInput, AgentMessageInput as SchemaAgentMessageInput, SetAiRespondingStatusInput, CliFlowActionInput, UpdateBotInput, ChatMessageInput, ChatMessageUpdateInput, CreateChatInput, ParticipantNameInput, ChatParticipantSettingsInput, UpdateChatSummaryInput, UpdateChatTypeInput, PatchChatMetadataInput, TimeSpanFilter, ChatGroupConfig, ChatFilters, PredefineChatInput, PredefinedMessageInput, InitAgentPredefinedChatInput, SuccessResponse, MessageContentItem, ChatMessage, MessageResponse, ChatMessagesResponse, Bot, BotResponse, BotsResponse, HealthStatus, ParticipantName, Chat, ChatResponse, ChatParticipantsResponse, ChatGroup, ChatEventResponse, } from './communicator/models.js';
11
+ export { Pipeline, createProcessingFunc, createPostProcessingFunc, type ProcessingResult, type ProcessingStage, type PostProcessingStage, type ProcessingFunc, type PostProcessingFunc, type PipelineStep, } from './pipeline/pipeline.js';
12
+ export { App, type EventHandler, type AppOptions } from './app/app.js';
13
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EACL,KAAK,KAAK,EACV,KAAK,SAAS,EACd,WAAW,EACX,eAAe,EACf,UAAU,GACX,MAAM,mBAAmB,CAAC;AAG3B,OAAO,EAAE,UAAU,EAAE,KAAK,MAAM,EAAE,KAAK,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAGpG,OAAO,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAG7E,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,KAAK,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAGhF,YAAY,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACnD,YAAY,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACvD,OAAO,EACL,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,cAAc,kBAAkB,CAAC;AAGjC,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,GACtB,MAAM,0BAA0B,CAAC;AAElC,YAAY,EACV,WAAW,EACX,kBAAkB,EAClB,QAAQ,EACR,iBAAiB,EACjB,WAAW,EACX,WAAW,EACX,UAAU,EACV,WAAW,EACX,uBAAuB,IAAI,6BAA6B,EACxD,iBAAiB,IAAI,uBAAuB,EAC5C,0BAA0B,EAC1B,kBAAkB,EAClB,cAAc,EACd,gBAAgB,EAChB,sBAAsB,EACtB,eAAe,EACf,oBAAoB,EACpB,4BAA4B,EAC5B,sBAAsB,EACtB,mBAAmB,EACnB,sBAAsB,EACtB,cAAc,EACd,eAAe,EACf,WAAW,EACX,kBAAkB,EAClB,sBAAsB,EACtB,4BAA4B,EAC5B,eAAe,EACf,kBAAkB,EAClB,WAAW,EACX,eAAe,EACf,oBAAoB,EACpB,GAAG,EACH,WAAW,EACX,YAAY,EACZ,YAAY,EACZ,eAAe,EACf,IAAI,EACJ,YAAY,EACZ,wBAAwB,EACxB,SAAS,EACT,iBAAiB,GAClB,MAAM,0BAA0B,CAAC;AAGlC,OAAO,EACL,QAAQ,EACR,oBAAoB,EACpB,wBAAwB,EACxB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,mBAAmB,EACxB,KAAK,cAAc,EACnB,KAAK,kBAAkB,EACvB,KAAK,YAAY,GAClB,MAAM,wBAAwB,CAAC;AAGhC,OAAO,EAAE,GAAG,EAAE,KAAK,YAAY,EAAE,KAAK,UAAU,EAAE,MAAM,cAAc,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,17 @@
1
+ // Events
2
+ export { CliFlowInit, CliFlowContinue, CliFlowEnd, } from './events/types.js';
3
+ // Config
4
+ export { loadConfig } from './config/config.js';
5
+ // Dispatcher
6
+ export { Dispatcher } from './dispatcher/dispatcher.js';
7
+ // RabbitMQ
8
+ export { createConsumer, Consumer } from './rabbitmq/consumer.js';
9
+ export { createMinIOSagaLogger, createNoopSagaLogger, } from './saga/minio.js';
10
+ export * from './saga/events.js';
11
+ // Communicator
12
+ export { createCommunicatorClient, CommunicatorClient, } from './communicator/client.js';
13
+ // Pipeline
14
+ export { Pipeline, createProcessingFunc, createPostProcessingFunc, } from './pipeline/pipeline.js';
15
+ // App
16
+ export { App } from './app/app.js';
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,SAAS;AACT,OAAO,EAGL,WAAW,EACX,eAAe,EACf,UAAU,GACX,MAAM,mBAAmB,CAAC;AAE3B,SAAS;AACT,OAAO,EAAE,UAAU,EAAsD,MAAM,oBAAoB,CAAC;AAEpG,aAAa;AACb,OAAO,EAAE,UAAU,EAAuB,MAAM,4BAA4B,CAAC;AAE7E,WAAW;AACX,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAgB,MAAM,wBAAwB,CAAC;AAKhF,OAAO,EACL,qBAAqB,EACrB,oBAAoB,GACrB,MAAM,iBAAiB,CAAC;AACzB,cAAc,kBAAkB,CAAC;AAEjC,eAAe;AACf,OAAO,EACL,wBAAwB,EACxB,kBAAkB,GAMnB,MAAM,0BAA0B,CAAC;AA+ClC,WAAW;AACX,OAAO,EACL,QAAQ,EACR,oBAAoB,EACpB,wBAAwB,GAOzB,MAAM,wBAAwB,CAAC;AAEhC,MAAM;AACN,OAAO,EAAE,GAAG,EAAsC,MAAM,cAAc,CAAC"}
@@ -0,0 +1,36 @@
1
+ import type { Event } from '../events/types.js';
2
+ import type { CommunicatorClient, MessageContentItemInput } from '../communicator/client.js';
3
+ export interface ProcessingResult {
4
+ contents: MessageContentItemInput[];
5
+ data?: Record<string, unknown>;
6
+ metadata?: Record<string, unknown>;
7
+ postProcessData?: Record<string, unknown>;
8
+ }
9
+ export interface ProcessingStage {
10
+ processInit(ctx: AbortSignal | undefined, event: Event): Promise<ProcessingResult>;
11
+ processContinue(ctx: AbortSignal | undefined, event: Event): Promise<ProcessingResult>;
12
+ }
13
+ export interface PostProcessingStage {
14
+ postProcessInit(ctx: AbortSignal | undefined, event: Event, result: ProcessingResult): Promise<void>;
15
+ postProcessContinue(ctx: AbortSignal | undefined, event: Event, result: ProcessingResult): Promise<void>;
16
+ }
17
+ export type ProcessingFunc = (ctx: AbortSignal | undefined, event: Event) => Promise<ProcessingResult>;
18
+ export type PostProcessingFunc = (ctx: AbortSignal | undefined, event: Event, result: ProcessingResult) => Promise<void>;
19
+ export interface PipelineStep {
20
+ processing: ProcessingFunc;
21
+ postProcessing?: PostProcessingFunc | null;
22
+ }
23
+ export declare class Pipeline {
24
+ private readonly communicator;
25
+ private readonly step;
26
+ private readonly sourceLabel;
27
+ constructor(communicator: CommunicatorClient, step: PipelineStep, sourceLabel?: string);
28
+ private sendToCommunicator;
29
+ executeInit(ctx: AbortSignal | undefined, event: Event): Promise<void>;
30
+ executeContinue(ctx: AbortSignal | undefined, event: Event): Promise<void>;
31
+ /** Implement EventHandler so Pipeline can be passed to App.create({ handler: pipeline }). */
32
+ handle(ctx: AbortSignal | undefined, event: Event): Promise<void>;
33
+ }
34
+ export declare function createProcessingFunc(stage: ProcessingStage): ProcessingFunc;
35
+ export declare function createPostProcessingFunc(stage: PostProcessingStage): PostProcessingFunc;
36
+ //# sourceMappingURL=pipeline.d.ts.map