@mastra/react 0.4.1-alpha.6 → 0.4.1-alpha.8
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 +22 -0
- package/dist/agent/hooks.d.ts +7 -1
- package/dist/agent/hooks.d.ts.map +1 -1
- package/dist/index.cjs +86 -16
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +86 -16
- package/dist/index.js.map +1 -1
- package/dist/lib/ai-sdk/utils/toUIMessage.d.ts.map +1 -1
- package/package.json +6 -4
package/dist/index.js
CHANGED
|
@@ -478,6 +478,39 @@ var toUIMessage = ({ chunk, conversation, metadata }) => {
|
|
|
478
478
|
}
|
|
479
479
|
];
|
|
480
480
|
}
|
|
481
|
+
case "reasoning-start": {
|
|
482
|
+
const lastMessage = result[result.length - 1];
|
|
483
|
+
if (!lastMessage || lastMessage.role !== "assistant") {
|
|
484
|
+
const newMessage = {
|
|
485
|
+
id: `reasoning-${chunk.runId + Date.now()}`,
|
|
486
|
+
role: "assistant",
|
|
487
|
+
parts: [
|
|
488
|
+
{
|
|
489
|
+
type: "reasoning",
|
|
490
|
+
text: "",
|
|
491
|
+
state: "streaming",
|
|
492
|
+
providerMetadata: chunk.payload.providerMetadata
|
|
493
|
+
}
|
|
494
|
+
],
|
|
495
|
+
metadata
|
|
496
|
+
};
|
|
497
|
+
return [...result, newMessage];
|
|
498
|
+
}
|
|
499
|
+
const parts = [...lastMessage.parts];
|
|
500
|
+
parts.push({
|
|
501
|
+
type: "reasoning",
|
|
502
|
+
text: "",
|
|
503
|
+
state: "streaming",
|
|
504
|
+
providerMetadata: chunk.payload.providerMetadata
|
|
505
|
+
});
|
|
506
|
+
return [
|
|
507
|
+
...result.slice(0, -1),
|
|
508
|
+
{
|
|
509
|
+
...lastMessage,
|
|
510
|
+
parts
|
|
511
|
+
}
|
|
512
|
+
];
|
|
513
|
+
}
|
|
481
514
|
case "reasoning-delta": {
|
|
482
515
|
const lastMessage = result[result.length - 1];
|
|
483
516
|
if (!lastMessage || lastMessage.role !== "assistant") {
|
|
@@ -521,6 +554,36 @@ var toUIMessage = ({ chunk, conversation, metadata }) => {
|
|
|
521
554
|
}
|
|
522
555
|
];
|
|
523
556
|
}
|
|
557
|
+
case "reasoning-end": {
|
|
558
|
+
const lastMessage = result[result.length - 1];
|
|
559
|
+
if (!lastMessage || lastMessage.role !== "assistant") return result;
|
|
560
|
+
const parts = [...lastMessage.parts];
|
|
561
|
+
const reasoningPartIndex = parts.findLastIndex(
|
|
562
|
+
(part) => part.type === "reasoning" && part.state === "streaming"
|
|
563
|
+
);
|
|
564
|
+
if (reasoningPartIndex === -1) return result;
|
|
565
|
+
const reasoningPart = parts[reasoningPartIndex];
|
|
566
|
+
if (reasoningPart.type !== "reasoning") return result;
|
|
567
|
+
const existingMetadata = reasoningPart.providerMetadata;
|
|
568
|
+
const endMetadata = chunk.payload.providerMetadata;
|
|
569
|
+
parts[reasoningPartIndex] = {
|
|
570
|
+
...reasoningPart,
|
|
571
|
+
state: "done",
|
|
572
|
+
...existingMetadata || endMetadata ? {
|
|
573
|
+
providerMetadata: {
|
|
574
|
+
...existingMetadata ?? {},
|
|
575
|
+
...endMetadata ?? {}
|
|
576
|
+
}
|
|
577
|
+
} : {}
|
|
578
|
+
};
|
|
579
|
+
return [
|
|
580
|
+
...result.slice(0, -1),
|
|
581
|
+
{
|
|
582
|
+
...lastMessage,
|
|
583
|
+
parts
|
|
584
|
+
}
|
|
585
|
+
];
|
|
586
|
+
}
|
|
524
587
|
case "tool-call": {
|
|
525
588
|
const lastMessage = result[result.length - 1];
|
|
526
589
|
if (!lastMessage || lastMessage.role !== "assistant") {
|
|
@@ -1971,6 +2034,7 @@ var useChat = ({
|
|
|
1971
2034
|
threadId,
|
|
1972
2035
|
initialMessages,
|
|
1973
2036
|
requestContext: propsRequestContext,
|
|
2037
|
+
clientTools: hookClientTools,
|
|
1974
2038
|
onSignalSent,
|
|
1975
2039
|
onSignalEcho,
|
|
1976
2040
|
onThreadSignalsUnsupported,
|
|
@@ -2164,6 +2228,7 @@ var useChat = ({
|
|
|
2164
2228
|
requireToolApproval
|
|
2165
2229
|
} = modelSettings || {};
|
|
2166
2230
|
const resolvedRequestContext = requestContext ?? propsRequestContext;
|
|
2231
|
+
const resolvedClientTools = clientTools ?? hookClientTools;
|
|
2167
2232
|
_requestContext.current = resolvedRequestContext;
|
|
2168
2233
|
setIsRunning(true);
|
|
2169
2234
|
const clientWithAbort = new MastraClient({
|
|
@@ -2191,7 +2256,7 @@ var useChat = ({
|
|
|
2191
2256
|
providerOptions,
|
|
2192
2257
|
tracingOptions,
|
|
2193
2258
|
requireToolApproval,
|
|
2194
|
-
clientTools
|
|
2259
|
+
clientTools: resolvedClientTools
|
|
2195
2260
|
});
|
|
2196
2261
|
if (response.finishReason === "suspended" && response.suspendPayload) {
|
|
2197
2262
|
const { toolCallId, toolName, args } = response.suspendPayload;
|
|
@@ -2251,6 +2316,23 @@ var useChat = ({
|
|
|
2251
2316
|
requireToolApproval
|
|
2252
2317
|
} = modelSettings || {};
|
|
2253
2318
|
const resolvedRequestContext = requestContext ?? propsRequestContext;
|
|
2319
|
+
const resolvedClientTools = clientTools ?? hookClientTools;
|
|
2320
|
+
const signalContinuationOptions = {
|
|
2321
|
+
maxSteps,
|
|
2322
|
+
modelSettings: {
|
|
2323
|
+
frequencyPenalty,
|
|
2324
|
+
presencePenalty,
|
|
2325
|
+
maxRetries,
|
|
2326
|
+
maxOutputTokens: maxTokens,
|
|
2327
|
+
temperature,
|
|
2328
|
+
topK,
|
|
2329
|
+
topP
|
|
2330
|
+
},
|
|
2331
|
+
instructions,
|
|
2332
|
+
providerOptions,
|
|
2333
|
+
requireToolApproval,
|
|
2334
|
+
tracingOptions
|
|
2335
|
+
};
|
|
2254
2336
|
_requestContext.current = resolvedRequestContext;
|
|
2255
2337
|
setIsRunning(true);
|
|
2256
2338
|
_streamAbortRef.current?.abort();
|
|
@@ -2285,7 +2367,7 @@ var useChat = ({
|
|
|
2285
2367
|
providerOptions,
|
|
2286
2368
|
requireToolApproval,
|
|
2287
2369
|
tracingOptions,
|
|
2288
|
-
clientTools
|
|
2370
|
+
clientTools: resolvedClientTools
|
|
2289
2371
|
});
|
|
2290
2372
|
_onChunk.current = onChunk;
|
|
2291
2373
|
_currentRunId.current = runId;
|
|
@@ -2320,21 +2402,9 @@ var useChat = ({
|
|
|
2320
2402
|
threadId: threadId2,
|
|
2321
2403
|
ifIdle: {
|
|
2322
2404
|
streamOptions: {
|
|
2323
|
-
|
|
2324
|
-
modelSettings: {
|
|
2325
|
-
frequencyPenalty,
|
|
2326
|
-
presencePenalty,
|
|
2327
|
-
maxRetries,
|
|
2328
|
-
maxOutputTokens: maxTokens,
|
|
2329
|
-
temperature,
|
|
2330
|
-
topK,
|
|
2331
|
-
topP
|
|
2332
|
-
},
|
|
2333
|
-
instructions,
|
|
2405
|
+
...signalContinuationOptions,
|
|
2334
2406
|
requestContext: resolvedRequestContext,
|
|
2335
|
-
|
|
2336
|
-
requireToolApproval,
|
|
2337
|
-
tracingOptions
|
|
2407
|
+
clientTools: resolvedClientTools
|
|
2338
2408
|
}
|
|
2339
2409
|
}
|
|
2340
2410
|
});
|