@workglow/ai 0.2.7 → 0.2.9

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 (36) hide show
  1. package/dist/browser.js +887 -929
  2. package/dist/browser.js.map +15 -16
  3. package/dist/bun.js +887 -929
  4. package/dist/bun.js.map +15 -16
  5. package/dist/execution/QueuedExecutionStrategy.d.ts +14 -5
  6. package/dist/execution/QueuedExecutionStrategy.d.ts.map +1 -1
  7. package/dist/job/AiJob.d.ts +2 -0
  8. package/dist/job/AiJob.d.ts.map +1 -1
  9. package/dist/node.js +887 -929
  10. package/dist/node.js.map +15 -16
  11. package/dist/provider/AiProvider.d.ts +15 -0
  12. package/dist/provider/AiProvider.d.ts.map +1 -1
  13. package/dist/provider/AiProviderRegistry.d.ts +16 -2
  14. package/dist/provider/AiProviderRegistry.d.ts.map +1 -1
  15. package/dist/task/AiChatTask.d.ts +666 -0
  16. package/dist/task/AiChatTask.d.ts.map +1 -0
  17. package/dist/task/ChatMessage.d.ts +356 -0
  18. package/dist/task/ChatMessage.d.ts.map +1 -0
  19. package/dist/task/MessageConversion.d.ts +1 -9
  20. package/dist/task/MessageConversion.d.ts.map +1 -1
  21. package/dist/task/StructuredGenerationTask.d.ts +50 -3
  22. package/dist/task/StructuredGenerationTask.d.ts.map +1 -1
  23. package/dist/task/ToolCallingTask.d.ts +177 -10
  24. package/dist/task/ToolCallingTask.d.ts.map +1 -1
  25. package/dist/task/base/AiTask.d.ts.map +1 -1
  26. package/dist/task/index.d.ts +6 -7
  27. package/dist/task/index.d.ts.map +1 -1
  28. package/dist/worker.js +65 -97
  29. package/dist/worker.js.map +6 -6
  30. package/package.json +11 -11
  31. package/dist/task/AgentTask.d.ts +0 -541
  32. package/dist/task/AgentTask.d.ts.map +0 -1
  33. package/dist/task/AgentTypes.d.ts +0 -183
  34. package/dist/task/AgentTypes.d.ts.map +0 -1
  35. package/dist/task/AgentUtils.d.ts +0 -55
  36. package/dist/task/AgentUtils.d.ts.map +0 -1
@@ -4,9 +4,11 @@
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
6
  import { CreateWorkflow } from "@workglow/task-graph";
7
- import type { TaskConfig } from "@workglow/task-graph";
8
- import { DataPortSchema, FromSchema } from "@workglow/util/schema";
7
+ import type { IExecuteContext, StreamEvent, TaskConfig } from "@workglow/task-graph";
8
+ import type { ChatMessage } from "./ChatMessage";
9
9
  import { ServiceRegistry } from "@workglow/util";
10
+ import { DataPortSchema, FromSchema } from "@workglow/util/schema";
11
+ import type { AiJobInput } from "../job/AiJob";
10
12
  import { StreamingAiTask } from "./base/StreamingAiTask";
11
13
  import type { ToolDefinition } from "./ToolCallingUtils";
12
14
  export interface ToolDefinitionWithTaskType extends ToolDefinition {
@@ -178,12 +180,168 @@ export declare const ToolCallingInputSchema: {
178
180
  readonly properties: {
179
181
  readonly role: {
180
182
  readonly type: "string";
181
- readonly enum: readonly ["user", "assistant", "tool"];
183
+ readonly enum: readonly ["user", "assistant", "tool", "system"];
184
+ };
185
+ readonly content: {
186
+ readonly type: "array";
187
+ readonly items: {
188
+ readonly oneOf: readonly [{
189
+ readonly type: "object";
190
+ readonly properties: {
191
+ readonly type: {
192
+ readonly type: "string";
193
+ readonly enum: readonly ["text"];
194
+ };
195
+ readonly text: {
196
+ readonly type: "string";
197
+ };
198
+ };
199
+ readonly required: readonly ["type", "text"];
200
+ readonly additionalProperties: false;
201
+ }, {
202
+ readonly type: "object";
203
+ readonly properties: {
204
+ readonly type: {
205
+ readonly type: "string";
206
+ readonly enum: readonly ["image"];
207
+ };
208
+ readonly mimeType: {
209
+ readonly type: "string";
210
+ };
211
+ readonly data: {
212
+ readonly type: "string";
213
+ };
214
+ };
215
+ readonly required: readonly ["type", "mimeType", "data"];
216
+ readonly additionalProperties: false;
217
+ }, {
218
+ readonly type: "object";
219
+ readonly properties: {
220
+ readonly type: {
221
+ readonly type: "string";
222
+ readonly enum: readonly ["tool_use"];
223
+ };
224
+ readonly id: {
225
+ readonly type: "string";
226
+ };
227
+ readonly name: {
228
+ readonly type: "string";
229
+ };
230
+ readonly input: {
231
+ readonly type: "object";
232
+ readonly additionalProperties: true;
233
+ };
234
+ };
235
+ readonly required: readonly ["type", "id", "name", "input"];
236
+ readonly additionalProperties: false;
237
+ }, {
238
+ readonly type: "object";
239
+ readonly properties: {
240
+ readonly type: {
241
+ readonly type: "string";
242
+ readonly enum: readonly ["tool_result"];
243
+ };
244
+ readonly tool_use_id: {
245
+ readonly type: "string";
246
+ };
247
+ readonly content: {
248
+ readonly type: "array";
249
+ readonly items: {
250
+ readonly $ref: "#/definitions/ContentBlock";
251
+ };
252
+ };
253
+ readonly is_error: {
254
+ readonly type: "boolean";
255
+ };
256
+ };
257
+ readonly required: readonly ["type", "tool_use_id", "content"];
258
+ readonly additionalProperties: false;
259
+ }];
260
+ readonly definitions: {
261
+ readonly ContentBlock: {
262
+ readonly oneOf: readonly [{
263
+ readonly type: "object";
264
+ readonly properties: {
265
+ readonly type: {
266
+ readonly type: "string";
267
+ readonly enum: readonly ["text"];
268
+ };
269
+ readonly text: {
270
+ readonly type: "string";
271
+ };
272
+ };
273
+ readonly required: readonly ["type", "text"];
274
+ readonly additionalProperties: false;
275
+ }, {
276
+ readonly type: "object";
277
+ readonly properties: {
278
+ readonly type: {
279
+ readonly type: "string";
280
+ readonly enum: readonly ["image"];
281
+ };
282
+ readonly mimeType: {
283
+ readonly type: "string";
284
+ };
285
+ readonly data: {
286
+ readonly type: "string";
287
+ };
288
+ };
289
+ readonly required: readonly ["type", "mimeType", "data"];
290
+ readonly additionalProperties: false;
291
+ }, {
292
+ readonly type: "object";
293
+ readonly properties: {
294
+ readonly type: {
295
+ readonly type: "string";
296
+ readonly enum: readonly ["tool_use"];
297
+ };
298
+ readonly id: {
299
+ readonly type: "string";
300
+ };
301
+ readonly name: {
302
+ readonly type: "string";
303
+ };
304
+ readonly input: {
305
+ readonly type: "object";
306
+ readonly additionalProperties: true;
307
+ };
308
+ };
309
+ readonly required: readonly ["type", "id", "name", "input"];
310
+ readonly additionalProperties: false;
311
+ }, {
312
+ readonly type: "object";
313
+ readonly properties: {
314
+ readonly type: {
315
+ readonly type: "string";
316
+ readonly enum: readonly ["tool_result"];
317
+ };
318
+ readonly tool_use_id: {
319
+ readonly type: "string";
320
+ };
321
+ readonly content: {
322
+ readonly type: "array";
323
+ readonly items: {
324
+ readonly $ref: "#/definitions/ContentBlock";
325
+ };
326
+ };
327
+ readonly is_error: {
328
+ readonly type: "boolean";
329
+ };
330
+ };
331
+ readonly required: readonly ["type", "tool_use_id", "content"];
332
+ readonly additionalProperties: false;
333
+ }];
334
+ };
335
+ };
336
+ readonly title: "ContentBlock";
337
+ readonly description: "A single content block within a chat message";
338
+ };
182
339
  };
183
- readonly content: {};
184
340
  };
185
341
  readonly required: readonly ["role", "content"];
186
- readonly additionalProperties: true;
342
+ readonly additionalProperties: false;
343
+ readonly title: "ChatMessage";
344
+ readonly description: "A single chat message with role and structured content blocks";
187
345
  };
188
346
  };
189
347
  readonly tools: {
@@ -318,12 +476,10 @@ export declare const ToolCallingOutputSchema: {
318
476
  * `messages` field typed explicitly (the loose `content: {}` in the
319
477
  * schema prevents `FromSchema` from producing a useful type).
320
478
  */
321
- export type ToolCallingTaskInput = Omit<FromSchema<typeof ToolCallingInputSchema>, "tools"> & {
479
+ export type ToolCallingTaskInput = Omit<FromSchema<typeof ToolCallingInputSchema>, "tools" | "messages"> & {
322
480
  readonly tools: ToolDefinition[];
323
- readonly messages?: ReadonlyArray<{
324
- readonly role: "user" | "assistant" | "tool";
325
- readonly content: unknown;
326
- }>;
481
+ readonly messages?: ReadonlyArray<ChatMessage>;
482
+ readonly sessionId?: string;
327
483
  };
328
484
  export type ToolCallingTaskOutput = FromSchema<typeof ToolCallingOutputSchema>;
329
485
  export type ToolCallingTaskConfig = TaskConfig<ToolCallingTaskInput>;
@@ -334,6 +490,17 @@ export declare class ToolCallingTask extends StreamingAiTask<ToolCallingTaskInpu
334
490
  static description: string;
335
491
  static inputSchema(): DataPortSchema;
336
492
  static outputSchema(): DataPortSchema;
493
+ /** Session ID computed during getJobInput, used to register cleanup. */
494
+ private _computedSessionId;
495
+ /**
496
+ * Override to auto-compute a prefix-rewind session ID from tools + systemPrompt
497
+ * + runnerId when no explicit sessionId is provided. The runnerId scopes the
498
+ * cache to the current graph run so it's cleaned up via ResourceScope.
499
+ */
500
+ protected getJobInput(input: ToolCallingTaskInput): Promise<AiJobInput<ToolCallingTaskInput>>;
501
+ private registerSessionDispose;
502
+ execute(input: ToolCallingTaskInput, executeContext: IExecuteContext): Promise<ToolCallingTaskOutput | undefined>;
503
+ executeStream(input: ToolCallingTaskInput, context: IExecuteContext): AsyncIterable<StreamEvent<ToolCallingTaskOutput>>;
337
504
  }
338
505
  /**
339
506
  * Convenience function to run a tool calling task.
@@ -1 +1 @@
1
- {"version":3,"file":"ToolCallingTask.d.ts","sourceRoot":"","sources":["../../src/task/ToolCallingTask.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ToolCallingTask.d.ts","sourceRoot":"","sources":["../../src/task/ToolCallingTask.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"AiTask.d.ts","sourceRoot":"","sources":["../../../src/task/base/AiTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;GAGG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,UAAU,EAEV,gBAAgB,EAChB,UAAU,EACX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,IAAI,EAGJ,SAAS,EAEV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,uBAAuB,CAAC;AAExE,OAAO,EAAS,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAiB3D,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,qBAAa,MAAM,CACjB,KAAK,SAAS,WAAW,GAAG,WAAW,EACvC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,UAAU,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,CACpD,SAAQ,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IACnC,OAAuB,IAAI,EAAE,MAAM,CAAY;IAC/C,OAAuB,sBAAsB,EAAE,OAAO,CAAQ;IAE9D,OAAuB,YAAY,IAAI,gBAAgB,CAItD;IAEe,YAAY,IAAI,gBAAgB,CAoB/C;IAED,OAAuB,YAAY,IAAI,cAAc,CAEpD;IAMc,OAAO,CACpB,KAAK,EAAE,KAAK,EACZ,cAAc,EAAE,eAAe,GAC9B,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA4B7B;IAMD;;;OAGG;IACH,UAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAiCpE;IAED;;OAEG;IACG,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAYzF;IAED;;OAEG;IACH,UAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAG7E;IAMD;;;OAGG;IACY,eAAe,CAC5B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAa7B;IAMD;;OAEG;IACmB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CA+ClE;IAEqB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,CAqCzF;CACF"}
1
+ {"version":3,"file":"AiTask.d.ts","sourceRoot":"","sources":["../../../src/task/base/AiTask.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;GAGG;AAEH,OAAO,EAAE,GAAG,EAAE,MAAM,qBAAqB,CAAC;AAC1C,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,UAAU,EAEV,gBAAgB,EAChB,UAAU,EACX,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAEL,IAAI,EAGJ,SAAS,EAEV,MAAM,sBAAsB,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,KAAK,EAAE,cAAc,EAAc,MAAM,uBAAuB,CAAC;AAExE,OAAO,EAAS,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAGpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAiB3D,MAAM,WAAW,WAAY,SAAQ,SAAS;IAC5C,KAAK,EAAE,MAAM,GAAG,WAAW,CAAC;CAC7B;AAED;;;;;;GAMG;AACH,qBAAa,MAAM,CACjB,KAAK,SAAS,WAAW,GAAG,WAAW,EACvC,MAAM,SAAS,UAAU,GAAG,UAAU,EACtC,MAAM,SAAS,UAAU,CAAC,KAAK,CAAC,GAAG,UAAU,CAAC,KAAK,CAAC,CACpD,SAAQ,IAAI,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,CAAC;IACnC,OAAuB,IAAI,EAAE,MAAM,CAAY;IAC/C,OAAuB,sBAAsB,EAAE,OAAO,CAAQ;IAE9D,OAAuB,YAAY,IAAI,gBAAgB,CAItD;IAEe,YAAY,IAAI,gBAAgB,CAoB/C;IAED,OAAuB,YAAY,IAAI,cAAc,CAEpD;IAMc,OAAO,CACpB,KAAK,EAAE,KAAK,EACZ,cAAc,EAAE,eAAe,GAC9B,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA4B7B;IAMD;;;OAGG;IACH,UAAgB,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAsCpE;IAED;;OAEG;IACG,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC,CAAC,CAYzF;IAED;;OAEG;IACH,UAAgB,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAG7E;IAMD;;;OAGG;IACY,eAAe,CAC5B,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,uBAAuB,GAC/B,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAa7B;IAMD;;OAEG;IACmB,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,CA+ClE;IAEqB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,CAqCzF;CACF"}
@@ -3,7 +3,7 @@
3
3
  * Copyright 2025 Steven Roussey <sroussey@gmail.com>
4
4
  * SPDX-License-Identifier: Apache-2.0
5
5
  */
6
- import { AgentTask } from "./AgentTask";
6
+ import { AiChatTask } from "./AiChatTask";
7
7
  import { BackgroundRemovalTask } from "./BackgroundRemovalTask";
8
8
  import { ChunkRetrievalTask } from "./ChunkRetrievalTask";
9
9
  import { ChunkToVectorTask } from "./ChunkToVectorTask";
@@ -45,12 +45,9 @@ import { TopicSegmenterTask } from "./TopicSegmenterTask";
45
45
  import { UnloadModelTask } from "./UnloadModelTask";
46
46
  import { VectorQuantizeTask } from "./VectorQuantizeTask";
47
47
  import { VectorSimilarityTask } from "./VectorSimilarityTask";
48
- export declare const registerAiTasks: () => (typeof ToolCallingTask | typeof AgentTask | typeof BackgroundRemovalTask | typeof TextEmbeddingTask | typeof ChunkRetrievalTask | typeof ChunkToVectorTask | typeof ChunkVectorHybridSearchTask | typeof ChunkVectorSearchTask | typeof ChunkVectorUpsertTask | typeof CountTokensTask | typeof ContextBuilderTask | typeof TextNamedEntityRecognitionTask | typeof TextSummaryTask | typeof DocumentEnricherTask | typeof DocumentUpsertTask | typeof FaceDetectorTask | typeof FaceLandmarkerTask | typeof HandLandmarkerTask | typeof HierarchicalChunkerTask | typeof HierarchyJoinTask | typeof KbToDocumentsTask | typeof ImageClassificationTask | typeof ImageEmbeddingTask | typeof ImageSegmentationTask | typeof ImageToTextTask | typeof ModelSearchTask | typeof ObjectDetectionTask | typeof PoseLandmarkerTask | typeof QueryExpanderTask | typeof TextClassificationTask | typeof RerankerTask | typeof StructuralParserTask | typeof StructuredGenerationTask | typeof TextChunkerTask | typeof TextFillMaskTask | typeof TextGenerationTask | typeof TextLanguageDetectionTask | typeof TextQuestionAnswerTask | typeof TopicSegmenterTask | typeof UnloadModelTask | typeof VectorQuantizeTask | typeof VectorSimilarityTask)[];
49
- export * from "./AgentTask";
50
- export * from "./AgentTypes";
51
- export * from "./AgentUtils";
52
- export * from "./MessageConversion";
53
- export * from "./ToolCallingUtils";
48
+ export declare const registerAiTasks: () => (typeof ToolCallingTask | typeof AiChatTask | typeof BackgroundRemovalTask | typeof TextEmbeddingTask | typeof ChunkRetrievalTask | typeof ChunkToVectorTask | typeof ChunkVectorHybridSearchTask | typeof ChunkVectorSearchTask | typeof ChunkVectorUpsertTask | typeof CountTokensTask | typeof ContextBuilderTask | typeof TextNamedEntityRecognitionTask | typeof TextSummaryTask | typeof DocumentEnricherTask | typeof DocumentUpsertTask | typeof FaceDetectorTask | typeof FaceLandmarkerTask | typeof HandLandmarkerTask | typeof HierarchicalChunkerTask | typeof HierarchyJoinTask | typeof KbToDocumentsTask | typeof ImageClassificationTask | typeof ImageEmbeddingTask | typeof ImageSegmentationTask | typeof ImageToTextTask | typeof ModelSearchTask | typeof ObjectDetectionTask | typeof PoseLandmarkerTask | typeof QueryExpanderTask | typeof TextClassificationTask | typeof RerankerTask | typeof StructuralParserTask | typeof StructuredGenerationTask | typeof TextChunkerTask | typeof TextFillMaskTask | typeof TextGenerationTask | typeof TextLanguageDetectionTask | typeof TextQuestionAnswerTask | typeof TopicSegmenterTask | typeof UnloadModelTask | typeof VectorQuantizeTask | typeof VectorSimilarityTask)[];
49
+ export * from "./AiChatTask";
50
+ export * from "./ChatMessage";
54
51
  export * from "./BackgroundRemovalTask";
55
52
  export * from "./base/AiTask";
56
53
  export * from "./base/AiTaskSchemas";
@@ -76,6 +73,7 @@ export * from "./ImageClassificationTask";
76
73
  export * from "./ImageEmbeddingTask";
77
74
  export * from "./ImageSegmentationTask";
78
75
  export * from "./ImageToTextTask";
76
+ export * from "./MessageConversion";
79
77
  export * from "./ModelInfoTask";
80
78
  export * from "./ModelSearchTask";
81
79
  export * from "./ObjectDetectionTask";
@@ -96,6 +94,7 @@ export * from "./TextRewriterTask";
96
94
  export * from "./TextSummaryTask";
97
95
  export * from "./TextTranslationTask";
98
96
  export * from "./ToolCallingTask";
97
+ export * from "./ToolCallingUtils";
99
98
  export * from "./TopicSegmenterTask";
100
99
  export * from "./UnloadModelTask";
101
100
  export * from "./VectorQuantizeTask";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/task/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/task/index.ts"],"names":[],"mappings":"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"}
package/dist/worker.js CHANGED
@@ -92,7 +92,7 @@ class AiJob extends Job {
92
92
  const timeoutMs = resolveAiJobTimeoutMs(input.aiProvider, input.timeoutMs);
93
93
  const timeoutSignal = AbortSignal.timeout(timeoutMs);
94
94
  const combinedSignal = AbortSignal.any([context.signal, timeoutSignal]);
95
- return await fn(input.taskInput, model, context.updateProgress, combinedSignal, input.outputSchema);
95
+ return await fn(input.taskInput, model, context.updateProgress, combinedSignal, input.outputSchema, input.sessionId);
96
96
  };
97
97
  const runFnPromise = runFn();
98
98
  return await Promise.race([runFnPromise, abortPromise]);
@@ -120,7 +120,7 @@ class AiJob extends Job {
120
120
  const timeoutSignal = AbortSignal.timeout(timeoutMs);
121
121
  const combinedSignal = AbortSignal.any([context.signal, timeoutSignal]);
122
122
  try {
123
- for await (const event of streamFn(input.taskInput, model, combinedSignal, input.outputSchema)) {
123
+ for await (const event of streamFn(input.taskInput, model, combinedSignal, input.outputSchema, input.sessionId)) {
124
124
  if (event.type === "finish") {
125
125
  lastFinishData = event.data;
126
126
  }
@@ -216,6 +216,19 @@ class AiProviderRegistry {
216
216
  }
217
217
  return this.defaultStrategy;
218
218
  }
219
+ createSession(providerName, model) {
220
+ const provider = this.providers.get(providerName);
221
+ if (!provider) {
222
+ throw new Error(`No provider found for "${providerName}". Register the provider before creating sessions.`);
223
+ }
224
+ return provider.createSession(model);
225
+ }
226
+ async disposeSession(providerName, sessionId) {
227
+ const provider = this.providers.get(providerName);
228
+ if (provider) {
229
+ await provider.disposeSession(sessionId);
230
+ }
231
+ }
219
232
  getProviderIdsForTask(taskType) {
220
233
  const taskMap = this.runFnRegistry.get(taskType);
221
234
  if (!taskMap)
@@ -229,9 +242,9 @@ class AiProviderRegistry {
229
242
  this.runFnRegistry.get(taskType).set(modelProvider, runFn);
230
243
  }
231
244
  registerAsWorkerRunFn(modelProvider, taskType) {
232
- const workerFn = async (input, model, update_progress, signal, outputSchema) => {
245
+ const workerFn = async (input, model, update_progress, signal, outputSchema, sessionId) => {
233
246
  const workerManager = globalServiceRegistry.get(WORKER_MANAGER);
234
- const result = await workerManager.callWorkerFunction(modelProvider, taskType, [input, model, outputSchema], {
247
+ const result = await workerManager.callWorkerFunction(modelProvider, taskType, [input, model, outputSchema, sessionId], {
235
248
  signal,
236
249
  onProgress: update_progress
237
250
  });
@@ -246,9 +259,9 @@ class AiProviderRegistry {
246
259
  this.streamFnRegistry.get(taskType).set(modelProvider, streamFn);
247
260
  }
248
261
  registerAsWorkerStreamFn(modelProvider, taskType) {
249
- const streamFn = async function* (input, model, signal, outputSchema) {
262
+ const streamFn = async function* (input, model, signal, outputSchema, sessionId) {
250
263
  const workerManager = globalServiceRegistry.get(WORKER_MANAGER);
251
- yield* workerManager.callWorkerStreamFunction(modelProvider, taskType, [input, model, outputSchema], { signal });
264
+ yield* workerManager.callWorkerStreamFunction(modelProvider, taskType, [input, model, outputSchema, sessionId], { signal });
252
265
  };
253
266
  this.registerStreamFn(modelProvider, taskType, streamFn);
254
267
  }
@@ -401,6 +414,10 @@ class AiProvider {
401
414
  }
402
415
  async onInitialize(_options) {}
403
416
  async dispose() {}
417
+ createSession(_model) {
418
+ return crypto.randomUUID();
419
+ }
420
+ async disposeSession(_sessionId) {}
404
421
  async afterRegister(_options) {}
405
422
  }
406
423
  // src/task/ToolCallingUtils.ts
@@ -477,66 +494,46 @@ function toOpenAIMessages(input) {
477
494
  }
478
495
  for (const msg of inputMessages) {
479
496
  if (msg.role === "user") {
480
- if (typeof msg.content === "string") {
481
- messages.push({ role: "user", content: msg.content });
482
- } else if (Array.isArray(msg.content) && msg.content.length > 0 && typeof msg.content[0]?.type === "string") {
483
- const parts = [];
484
- for (const block of msg.content) {
485
- const b = block;
486
- if (b.type === "text") {
487
- parts.push({ type: "text", text: b.text });
488
- } else if (b.type === "image") {
489
- parts.push({
490
- type: "image_url",
491
- image_url: { url: `data:${b.mimeType};base64,${b.data}` }
492
- });
493
- } else if (b.type === "audio") {
494
- const format = b.mimeType.replace(/^audio\//, "");
495
- parts.push({
496
- type: "input_audio",
497
- input_audio: { data: b.data, format }
498
- });
499
- }
500
- }
501
- messages.push({ role: "user", content: parts });
502
- } else {
503
- try {
504
- messages.push({ role: "user", content: JSON.stringify(msg.content) });
505
- } catch {
506
- messages.push({ role: "user", content: String(msg.content) });
497
+ const parts = [];
498
+ for (const block of msg.content) {
499
+ if (block.type === "text") {
500
+ parts.push({ type: "text", text: block.text });
501
+ } else if (block.type === "image") {
502
+ parts.push({
503
+ type: "image_url",
504
+ image_url: { url: `data:${block.mimeType};base64,${block.data}` }
505
+ });
507
506
  }
508
507
  }
508
+ messages.push({ role: "user", content: parts });
509
509
  } else if (msg.role === "assistant") {
510
- if (typeof msg.content === "string") {
511
- messages.push({ role: "assistant", content: msg.content.length > 0 ? msg.content : null });
512
- } else if (Array.isArray(msg.content)) {
513
- const textParts = msg.content.filter((b) => b.type === "text").map((b) => b.text).join("");
514
- const toolCalls = msg.content.filter((b) => b.type === "tool_use").map((b) => ({
515
- id: b.id,
516
- type: "function",
517
- function: {
518
- name: b.name,
519
- arguments: JSON.stringify(b.input)
520
- }
521
- }));
522
- const entry = {
523
- role: "assistant",
524
- content: textParts.length > 0 ? textParts : null
525
- };
526
- if (toolCalls.length > 0) {
527
- entry.tool_calls = toolCalls;
510
+ const textParts = msg.content.filter((b) => b.type === "text").map((b) => b.text).join("");
511
+ const toolCalls = msg.content.filter((b) => b.type === "tool_use").map((b) => ({
512
+ id: b.id,
513
+ type: "function",
514
+ function: {
515
+ name: b.name,
516
+ arguments: JSON.stringify(b.input)
528
517
  }
529
- messages.push(entry);
518
+ }));
519
+ const entry = {
520
+ role: "assistant",
521
+ content: textParts.length > 0 ? textParts : null
522
+ };
523
+ if (toolCalls.length > 0) {
524
+ entry.tool_calls = toolCalls;
530
525
  }
531
- } else if (msg.role === "tool" && Array.isArray(msg.content)) {
526
+ messages.push(entry);
527
+ } else if (msg.role === "tool") {
532
528
  for (const block of msg.content) {
533
- const b = block;
529
+ if (block.type !== "tool_result")
530
+ continue;
534
531
  let content;
535
- if (typeof b.content === "string") {
536
- content = b.content;
537
- } else if (Array.isArray(b.content)) {
532
+ if (block.content.length === 1 && block.content[0].type === "text") {
533
+ content = block.content[0].text;
534
+ } else {
538
535
  const parts = [];
539
- for (const inner of b.content) {
536
+ for (const inner of block.content) {
540
537
  if (inner.type === "text") {
541
538
  parts.push({ type: "text", text: inner.text });
542
539
  } else if (inner.type === "image") {
@@ -547,14 +544,8 @@ function toOpenAIMessages(input) {
547
544
  }
548
545
  }
549
546
  content = parts;
550
- } else {
551
- content = "";
552
547
  }
553
- messages.push({
554
- role: "tool",
555
- content,
556
- tool_call_id: b.tool_use_id
557
- });
548
+ messages.push({ role: "tool", content, tool_call_id: block.tool_use_id });
558
549
  }
559
550
  }
560
551
  }
@@ -584,41 +575,18 @@ function toTextFlatMessages(input) {
584
575
  }
585
576
  for (const msg of inputMessages) {
586
577
  if (msg.role === "user") {
587
- let content = "";
588
- if (typeof msg.content === "string") {
589
- content = msg.content;
590
- } else if (Array.isArray(msg.content) && msg.content.length > 0 && typeof msg.content[0]?.type === "string") {
591
- content = msg.content.filter((b) => b.type === "text").map((b) => b.text).join("");
592
- } else if (msg.content != null) {
593
- try {
594
- content = JSON.stringify(msg.content);
595
- } catch {
596
- content = String(msg.content);
597
- }
598
- }
578
+ const content = msg.content.filter((b) => b.type === "text").map((b) => b.text).join("");
599
579
  messages.push({ role: "user", content });
600
580
  } else if (msg.role === "assistant") {
601
- if (typeof msg.content === "string") {
602
- if (msg.content) {
603
- messages.push({ role: "assistant", content: msg.content });
604
- }
605
- } else if (Array.isArray(msg.content)) {
606
- const text = msg.content.filter((b) => b.type === "text").map((b) => b.text).join("");
607
- if (text) {
608
- messages.push({ role: "assistant", content: text });
609
- }
581
+ const text = msg.content.filter((b) => b.type === "text").map((b) => b.text).join("");
582
+ if (text) {
583
+ messages.push({ role: "assistant", content: text });
610
584
  }
611
- } else if (msg.role === "tool" && Array.isArray(msg.content)) {
585
+ } else if (msg.role === "tool") {
612
586
  for (const block of msg.content) {
613
- const b = block;
614
- let content;
615
- if (typeof b.content === "string") {
616
- content = b.content;
617
- } else if (Array.isArray(b.content)) {
618
- content = b.content.filter((inner) => inner.type === "text").map((inner) => inner.text).join("");
619
- } else {
620
- content = "";
621
- }
587
+ if (block.type !== "tool_result")
588
+ continue;
589
+ const content = block.content.filter((inner) => inner.type === "text").map((inner) => inner.text).join("");
622
590
  messages.push({ role: "tool", content });
623
591
  }
624
592
  }
@@ -691,4 +659,4 @@ export {
691
659
  AiProvider
692
660
  };
693
661
 
694
- //# debugId=1F07DA7EF7FB24E864756E2164756E21
662
+ //# debugId=447D7588D545BC8C64756E2164756E21