@mastra/inngest 1.4.0 → 1.4.1
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/CHANGELOG.md +80 -0
- package/dist/index.cjs +15 -8
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +20 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -8
- package/dist/index.js.map +1 -1
- package/package.json +8 -8
package/dist/index.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { ReadableStream } from 'node:stream/web';
|
|
1
2
|
import { Agent } from '@mastra/core/agent';
|
|
2
3
|
import type { MastraScorers } from '@mastra/core/evals';
|
|
3
4
|
import type { Processor, ProcessorStepInputSchema } from '@mastra/core/processors';
|
|
@@ -18,6 +19,23 @@ export * from './run.js';
|
|
|
18
19
|
export * from './serve.js';
|
|
19
20
|
export * from './types.js';
|
|
20
21
|
export * from './durable-agent/index.js';
|
|
22
|
+
type InngestSubAgent<TId extends string = string> = {
|
|
23
|
+
id: TId;
|
|
24
|
+
name?: string;
|
|
25
|
+
getDescription: () => string;
|
|
26
|
+
getModel: () => Promise<{
|
|
27
|
+
specificationVersion: string;
|
|
28
|
+
}> | {
|
|
29
|
+
specificationVersion: string;
|
|
30
|
+
};
|
|
31
|
+
generate: (...args: any[]) => Promise<any>;
|
|
32
|
+
stream: (...args: any[]) => Promise<{
|
|
33
|
+
fullStream: ReadableStream<any>;
|
|
34
|
+
}>;
|
|
35
|
+
streamLegacy?: (...args: any[]) => Promise<{
|
|
36
|
+
fullStream: ReadableStream<any>;
|
|
37
|
+
}>;
|
|
38
|
+
};
|
|
21
39
|
/**
|
|
22
40
|
* Creates a step from explicit params (IMPORTANT: FIRST overload for best error messages when using .then in workflows)
|
|
23
41
|
* @param params Configuration parameters for the step
|
|
@@ -32,7 +50,7 @@ export declare function createStep<TStepId extends string, TStateSchema extends
|
|
|
32
50
|
/**
|
|
33
51
|
* Creates a step from an agent with structured output
|
|
34
52
|
*/
|
|
35
|
-
export declare function createStep<TStepId extends string, TStepOutput>(agent: Agent<TStepId, any>, agentOptions: AgentStepOptions<TStepOutput> & {
|
|
53
|
+
export declare function createStep<TStepId extends string, TStepOutput>(agent: InngestSubAgent<TStepId> | Agent<TStepId, any>, agentOptions: AgentStepOptions<TStepOutput> & {
|
|
36
54
|
structuredOutput: {
|
|
37
55
|
schema: StandardSchemaWithJSON<TStepOutput>;
|
|
38
56
|
};
|
|
@@ -49,7 +67,7 @@ export declare function createStep<TStepId extends string, TStepInput extends {
|
|
|
49
67
|
prompt: string;
|
|
50
68
|
}, TStepOutput extends {
|
|
51
69
|
text: string;
|
|
52
|
-
}, TResume, TSuspend>(agent: Agent<TStepId, any>, agentOptions?: AgentStepOptions<TStepOutput> & {
|
|
70
|
+
}, TResume, TSuspend>(agent: InngestSubAgent<TStepId> | Agent<TStepId, any>, agentOptions?: AgentStepOptions<TStepOutput> & {
|
|
53
71
|
retries?: number;
|
|
54
72
|
scorers?: DynamicArgument<MastraScorers>;
|
|
55
73
|
}): Step<TStepId, unknown, TStepInput, TStepOutput, TResume, TSuspend, InngestEngineType>;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -2379,8 +2379,8 @@ function isInngestAgent(obj) {
|
|
|
2379
2379
|
function isInngestWorkflow(input) {
|
|
2380
2380
|
return input instanceof InngestWorkflow;
|
|
2381
2381
|
}
|
|
2382
|
-
function
|
|
2383
|
-
return input
|
|
2382
|
+
function isAgentCompatible(input) {
|
|
2383
|
+
return typeof input === "object" && input !== null && "generate" in input && typeof input.generate === "function" && "stream" in input && typeof input.stream === "function" && "getDescription" in input && typeof input.getDescription === "function" && "getModel" in input && typeof input.getModel === "function";
|
|
2384
2384
|
}
|
|
2385
2385
|
function isToolStep(input) {
|
|
2386
2386
|
return input instanceof Tool;
|
|
@@ -2395,7 +2395,7 @@ function createStep(params, agentOrToolOptions) {
|
|
|
2395
2395
|
if (isInngestWorkflow(params)) {
|
|
2396
2396
|
return params;
|
|
2397
2397
|
}
|
|
2398
|
-
if (
|
|
2398
|
+
if (isAgentCompatible(params)) {
|
|
2399
2399
|
return createStepFromAgent(params, agentOrToolOptions);
|
|
2400
2400
|
}
|
|
2401
2401
|
if (isToolStep(params)) {
|
|
@@ -2429,7 +2429,7 @@ function createStepFromAgent(params, agentOrToolOptions) {
|
|
|
2429
2429
|
const outputSchema = options?.structuredOutput?.schema ?? z.object({ text: z.string() });
|
|
2430
2430
|
const { retries, scorers, metadata, ...agentOptions } = options ?? {};
|
|
2431
2431
|
return {
|
|
2432
|
-
id: params.
|
|
2432
|
+
id: params.id,
|
|
2433
2433
|
description: params.getDescription(),
|
|
2434
2434
|
inputSchema: toStandardSchema(
|
|
2435
2435
|
z.object({
|
|
@@ -2458,12 +2458,15 @@ function createStepFromAgent(params, agentOrToolOptions) {
|
|
|
2458
2458
|
});
|
|
2459
2459
|
let structuredResult = null;
|
|
2460
2460
|
const toolData = {
|
|
2461
|
-
name: params.name,
|
|
2461
|
+
name: params.name ?? params.id,
|
|
2462
2462
|
args: inputData
|
|
2463
2463
|
};
|
|
2464
2464
|
let stream;
|
|
2465
2465
|
if ((await params.getModel()).specificationVersion === "v1") {
|
|
2466
|
-
|
|
2466
|
+
if (typeof params.streamLegacy !== "function") {
|
|
2467
|
+
throw new Error(`Agent step ${params.id} returned a v1 model but does not implement streamLegacy`);
|
|
2468
|
+
}
|
|
2469
|
+
const modelOutput = await params.streamLegacy(inputData.prompt, {
|
|
2467
2470
|
...agentOptions ?? {},
|
|
2468
2471
|
requestContext,
|
|
2469
2472
|
tracingContext,
|
|
@@ -2477,7 +2480,10 @@ function createStepFromAgent(params, agentOrToolOptions) {
|
|
|
2477
2480
|
},
|
|
2478
2481
|
abortSignal
|
|
2479
2482
|
});
|
|
2480
|
-
|
|
2483
|
+
if ("text" in modelOutput) {
|
|
2484
|
+
void modelOutput.text.then(streamPromise.resolve, streamPromise.reject);
|
|
2485
|
+
}
|
|
2486
|
+
stream = modelOutput.fullStream;
|
|
2481
2487
|
} else {
|
|
2482
2488
|
const { structuredOutput, ...restAgentOptions } = agentOptions ?? {};
|
|
2483
2489
|
const baseOptions = {
|
|
@@ -2499,6 +2505,7 @@ function createStepFromAgent(params, agentOrToolOptions) {
|
|
|
2499
2505
|
structuredOutput
|
|
2500
2506
|
}) : await params.stream(inputData.prompt, baseOptions);
|
|
2501
2507
|
stream = modelOutput.fullStream;
|
|
2508
|
+
void modelOutput.text.then(streamPromise.resolve, streamPromise.reject);
|
|
2502
2509
|
}
|
|
2503
2510
|
if (streamFormat === "legacy") {
|
|
2504
2511
|
await pubsub.publish(`workflow.events.v2.${runId}`, {
|
|
@@ -2535,7 +2542,7 @@ function createStepFromAgent(params, agentOrToolOptions) {
|
|
|
2535
2542
|
text: await streamPromise.promise
|
|
2536
2543
|
};
|
|
2537
2544
|
},
|
|
2538
|
-
component:
|
|
2545
|
+
component: "AGENT"
|
|
2539
2546
|
};
|
|
2540
2547
|
}
|
|
2541
2548
|
function createStepFromTool(params, agentOrToolOptions) {
|