@mastra/deployer 0.20.1-alpha.0 → 0.20.1-alpha.3

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 (48) hide show
  1. package/CHANGELOG.md +40 -0
  2. package/dist/build/analyze/analyzeEntry.d.ts.map +1 -1
  3. package/dist/build/analyze/bundleExternals.d.ts.map +1 -1
  4. package/dist/build/analyze.cjs +2 -2
  5. package/dist/build/analyze.js +1 -1
  6. package/dist/build/bundler.cjs +3 -3
  7. package/dist/build/bundler.d.ts.map +1 -1
  8. package/dist/build/bundler.js +1 -1
  9. package/dist/build/index.cjs +12 -12
  10. package/dist/build/index.js +4 -4
  11. package/dist/build/shared/extract-mastra-option.d.ts.map +1 -1
  12. package/dist/bundler/index.cjs +2 -2
  13. package/dist/bundler/index.js +1 -1
  14. package/dist/{chunk-YA2QB5O6.js → chunk-36JTHYM2.js} +12 -6
  15. package/dist/chunk-36JTHYM2.js.map +1 -0
  16. package/dist/{chunk-QT4EHSOA.cjs → chunk-4JSGBXG4.cjs} +14 -14
  17. package/dist/{chunk-QT4EHSOA.cjs.map → chunk-4JSGBXG4.cjs.map} +1 -1
  18. package/dist/{chunk-H7R3PAM4.cjs → chunk-75YMBRRS.cjs} +17 -17
  19. package/dist/{chunk-H7R3PAM4.cjs.map → chunk-75YMBRRS.cjs.map} +1 -1
  20. package/dist/{chunk-OWF6JR2D.cjs → chunk-B3MAF4HY.cjs} +12 -10
  21. package/dist/chunk-B3MAF4HY.cjs.map +1 -0
  22. package/dist/{chunk-YY75MSEU.js → chunk-IJ5XDUJI.js} +4 -4
  23. package/dist/{chunk-YY75MSEU.js.map → chunk-IJ5XDUJI.js.map} +1 -1
  24. package/dist/{chunk-SLXO6AYI.js → chunk-J6ARA5AG.js} +3 -3
  25. package/dist/{chunk-SLXO6AYI.js.map → chunk-J6ARA5AG.js.map} +1 -1
  26. package/dist/{chunk-7YSO4XUX.js → chunk-LV3YJXBH.js} +6 -4
  27. package/dist/chunk-LV3YJXBH.js.map +1 -0
  28. package/dist/{chunk-4I4DWMYP.cjs → chunk-QZSRLR5Y.cjs} +13 -7
  29. package/dist/chunk-QZSRLR5Y.cjs.map +1 -0
  30. package/dist/{chunk-D5U2TTNK.cjs → chunk-XJH6DNVG.cjs} +5 -5
  31. package/dist/{chunk-D5U2TTNK.cjs.map → chunk-XJH6DNVG.cjs.map} +1 -1
  32. package/dist/{chunk-V6M3WK2G.js → chunk-ZGEIJUOE.js} +5 -5
  33. package/dist/{chunk-V6M3WK2G.js.map → chunk-ZGEIJUOE.js.map} +1 -1
  34. package/dist/index.cjs +5 -5
  35. package/dist/index.js +2 -2
  36. package/dist/server/handlers/auth/helpers.d.ts +1 -1
  37. package/dist/server/handlers/auth/helpers.d.ts.map +1 -1
  38. package/dist/server/handlers/auth/index.d.ts.map +1 -1
  39. package/dist/server/handlers/routes/agents/handlers.d.ts.map +1 -1
  40. package/dist/server/index.cjs +230 -166
  41. package/dist/server/index.cjs.map +1 -1
  42. package/dist/server/index.js +230 -166
  43. package/dist/server/index.js.map +1 -1
  44. package/package.json +5 -5
  45. package/dist/chunk-4I4DWMYP.cjs.map +0 -1
  46. package/dist/chunk-7YSO4XUX.js.map +0 -1
  47. package/dist/chunk-OWF6JR2D.cjs.map +0 -1
  48. package/dist/chunk-YA2QB5O6.js.map +0 -1
@@ -24,6 +24,7 @@ import { bodyLimit } from 'hono/body-limit';
24
24
  import { getAgentBuilderActionsHandler as getAgentBuilderActionsHandler$1, getAgentBuilderActionByIdHandler as getAgentBuilderActionByIdHandler$1, getAgentBuilderActionRunsHandler as getAgentBuilderActionRunsHandler$1, getAgentBuilderActionRunExecutionResultHandler as getAgentBuilderActionRunExecutionResultHandler$1, getAgentBuilderActionRunByIdHandler as getAgentBuilderActionRunByIdHandler$1, resumeAgentBuilderActionHandler as resumeAgentBuilderActionHandler$1, resumeAsyncAgentBuilderActionHandler as resumeAsyncAgentBuilderActionHandler$1, streamAgentBuilderActionHandler as streamAgentBuilderActionHandler$1, streamVNextAgentBuilderActionHandler as streamVNextAgentBuilderActionHandler$1, createAgentBuilderActionRunHandler as createAgentBuilderActionRunHandler$1, startAsyncAgentBuilderActionHandler as startAsyncAgentBuilderActionHandler$1, startAgentBuilderActionRunHandler as startAgentBuilderActionRunHandler$1, watchAgentBuilderActionHandler as watchAgentBuilderActionHandler$1, cancelAgentBuilderActionRunHandler as cancelAgentBuilderActionRunHandler$1, sendAgentBuilderActionRunEventHandler as sendAgentBuilderActionRunEventHandler$1 } from '@mastra/server/handlers/agent-builder';
25
25
  import { MastraError, ErrorCategory, ErrorDomain } from '@mastra/core/error';
26
26
  import { getProviderConfig, PROVIDER_REGISTRY } from '@mastra/core/llm';
27
+ import { ChunkFrom } from '@mastra/core/stream';
27
28
  import { getAgentsHandler as getAgentsHandler$1, getAgentByIdHandler as getAgentByIdHandler$1, getEvalsByAgentIdHandler as getEvalsByAgentIdHandler$1, getLiveEvalsByAgentIdHandler as getLiveEvalsByAgentIdHandler$1, generateLegacyHandler as generateLegacyHandler$1, generateHandler as generateHandler$1, streamNetworkHandler as streamNetworkHandler$1, streamGenerateHandler as streamGenerateHandler$1, streamGenerateLegacyHandler as streamGenerateLegacyHandler$1, streamUIMessageHandler as streamUIMessageHandler$1, updateAgentModelHandler as updateAgentModelHandler$1, reorderAgentModelListHandler as reorderAgentModelListHandler$1, updateAgentModelInModelListHandler as updateAgentModelInModelListHandler$1, approveToolCallHandler as approveToolCallHandler$1, declineToolCallHandler as declineToolCallHandler$1 } from '@mastra/server/handlers/agents';
28
29
  import { Agent } from '@mastra/core/agent';
29
30
  import { z } from 'zod';
@@ -1067,9 +1068,9 @@ var isCustomRoutePublic = (path, method, customRouteAuthConfig) => {
1067
1068
  }
1068
1069
  return false;
1069
1070
  };
1070
- var isProtectedPath = (path, method, authConfig) => {
1071
+ var isProtectedPath = (path, method, authConfig, customRouteAuthConfig) => {
1071
1072
  const protectedAccess = [...defaultAuthConfig.protected || [], ...authConfig.protected || []];
1072
- return isAnyMatch(path, method, protectedAccess);
1073
+ return isAnyMatch(path, method, protectedAccess) || !isCustomRoutePublic(path, method, customRouteAuthConfig);
1073
1074
  };
1074
1075
  var canAccessPublicly = (path, method, authConfig) => {
1075
1076
  const publicAccess = [...defaultAuthConfig.public || [], ...authConfig.public || []];
@@ -1159,10 +1160,7 @@ var authenticationMiddleware = async (c2, next) => {
1159
1160
  if (isDevPlaygroundRequest(c2.req)) {
1160
1161
  return next();
1161
1162
  }
1162
- if (isCustomRoutePublic(c2.req.path, c2.req.method, customRouteAuthConfig)) {
1163
- return next();
1164
- }
1165
- if (!isProtectedPath(c2.req.path, c2.req.method, authConfig)) {
1163
+ if (!isProtectedPath(c2.req.path, c2.req.method, authConfig, customRouteAuthConfig)) {
1166
1164
  return next();
1167
1165
  }
1168
1166
  if (canAccessPublicly(c2.req.path, c2.req.method, authConfig)) {
@@ -1205,10 +1203,7 @@ var authorizationMiddleware = async (c2, next) => {
1205
1203
  if (isDevPlaygroundRequest(c2.req)) {
1206
1204
  return next();
1207
1205
  }
1208
- if (isCustomRoutePublic(path, method, customRouteAuthConfig)) {
1209
- return next();
1210
- }
1211
- if (!isProtectedPath(c2.req.path, c2.req.method, authConfig)) {
1206
+ if (!isProtectedPath(c2.req.path, c2.req.method, authConfig, customRouteAuthConfig)) {
1212
1207
  return next();
1213
1208
  }
1214
1209
  if (canAccessPublicly(path, method, authConfig)) {
@@ -2492,154 +2487,204 @@ async function streamGenerateLegacyHandler(c2) {
2492
2487
  }
2493
2488
  }
2494
2489
  async function streamGenerateHandler(c2) {
2490
+ const mastra = c2.get("mastra");
2491
+ const agentId = c2.req.param("agentId");
2492
+ const runtimeContext = c2.get("runtimeContext");
2493
+ const body = await c2.req.json();
2494
+ const logger2 = mastra.getLogger();
2495
+ let streamResponse;
2495
2496
  try {
2496
- const mastra = c2.get("mastra");
2497
- const agentId = c2.req.param("agentId");
2498
- const runtimeContext = c2.get("runtimeContext");
2499
- const body = await c2.req.json();
2500
- const logger2 = mastra.getLogger();
2501
- c2.header("Transfer-Encoding", "chunked");
2502
- return stream(
2503
- c2,
2504
- async (stream6) => {
2505
- try {
2506
- const streamResponse = await streamGenerateHandler$1({
2507
- mastra,
2508
- agentId,
2509
- runtimeContext,
2510
- body,
2511
- abortSignal: c2.req.raw.signal
2512
- });
2513
- const reader = streamResponse.fullStream.getReader();
2514
- stream6.onAbort(() => {
2515
- void reader.cancel("request aborted");
2516
- });
2517
- let chunkResult;
2518
- while ((chunkResult = await reader.read()) && !chunkResult.done) {
2519
- await stream6.write(`data: ${JSON.stringify(chunkResult.value)}
2497
+ streamResponse = await streamGenerateHandler$1({
2498
+ mastra,
2499
+ agentId,
2500
+ runtimeContext,
2501
+ body,
2502
+ abortSignal: c2.req.raw.signal
2503
+ });
2504
+ } catch (err) {
2505
+ return handleError(err, "Error streaming from agent");
2506
+ }
2507
+ c2.header("Transfer-Encoding", "chunked");
2508
+ return stream(
2509
+ c2,
2510
+ async (stream6) => {
2511
+ try {
2512
+ const reader = streamResponse.fullStream.getReader();
2513
+ stream6.onAbort(() => {
2514
+ void reader.cancel("request aborted");
2515
+ });
2516
+ let chunkResult;
2517
+ while ((chunkResult = await reader.read()) && !chunkResult.done) {
2518
+ await stream6.write(`data: ${JSON.stringify(chunkResult.value)}
2520
2519
 
2521
2520
  `);
2522
- }
2523
- await stream6.write("data: [DONE]\n\n");
2524
- } catch (err) {
2525
- logger2.error("Error in stream generate: " + (err?.message ?? "Unknown error"));
2526
2521
  }
2527
- await stream6.close();
2528
- },
2529
- async (err) => {
2530
- logger2.error("Error in watch stream: " + err?.message);
2522
+ await stream6.write("data: [DONE]\n\n");
2523
+ } catch (err) {
2524
+ logger2.error("Error in stream generate: " + (err?.message ?? "Unknown error"));
2525
+ const errorChunk = {
2526
+ type: "error",
2527
+ from: ChunkFrom.AGENT,
2528
+ runId: body.runId || "unknown",
2529
+ payload: {
2530
+ error: err instanceof Error ? {
2531
+ message: err.message,
2532
+ name: err.name,
2533
+ stack: err.stack
2534
+ } : String(err)
2535
+ }
2536
+ };
2537
+ await stream6.write(`data: ${JSON.stringify(errorChunk)}
2538
+
2539
+ `);
2531
2540
  }
2532
- );
2533
- } catch (error) {
2534
- return handleError(error, "Error streaming from agent");
2535
- }
2541
+ await stream6.close();
2542
+ },
2543
+ async (err) => {
2544
+ logger2.error("Error in watch stream: " + err?.message);
2545
+ }
2546
+ );
2536
2547
  }
2537
2548
  async function approveToolCallHandler(c2) {
2549
+ const mastra = c2.get("mastra");
2550
+ const agentId = c2.req.param("agentId");
2551
+ const runtimeContext = c2.get("runtimeContext");
2552
+ const body = await c2.req.json();
2553
+ const logger2 = mastra.getLogger();
2554
+ let streamResponse;
2538
2555
  try {
2539
- const mastra = c2.get("mastra");
2540
- const agentId = c2.req.param("agentId");
2541
- const runtimeContext = c2.get("runtimeContext");
2542
- const body = await c2.req.json();
2543
- const logger2 = mastra.getLogger();
2544
- c2.header("Transfer-Encoding", "chunked");
2545
- c2.header("Transfer-Encoding", "chunked");
2546
- return stream(
2547
- c2,
2548
- async (stream6) => {
2549
- try {
2550
- const streamResponse = await approveToolCallHandler$1({
2551
- mastra,
2552
- runtimeContext,
2553
- agentId,
2554
- body,
2555
- abortSignal: c2.req.raw.signal
2556
- });
2557
- const reader = streamResponse.fullStream.getReader();
2558
- stream6.onAbort(() => {
2559
- void reader.cancel("request aborted");
2560
- });
2561
- let chunkResult;
2562
- while ((chunkResult = await reader.read()) && !chunkResult.done) {
2563
- await stream6.write(`data: ${JSON.stringify(chunkResult.value)}
2556
+ streamResponse = await approveToolCallHandler$1({
2557
+ mastra,
2558
+ runtimeContext,
2559
+ agentId,
2560
+ body,
2561
+ abortSignal: c2.req.raw.signal
2562
+ });
2563
+ } catch (err) {
2564
+ return handleError(err, "Error approving tool call");
2565
+ }
2566
+ c2.header("Transfer-Encoding", "chunked");
2567
+ return stream(
2568
+ c2,
2569
+ async (stream6) => {
2570
+ try {
2571
+ const reader = streamResponse.fullStream.getReader();
2572
+ stream6.onAbort(() => {
2573
+ void reader.cancel("request aborted");
2574
+ });
2575
+ let chunkResult;
2576
+ while ((chunkResult = await reader.read()) && !chunkResult.done) {
2577
+ await stream6.write(`data: ${JSON.stringify(chunkResult.value)}
2564
2578
 
2565
2579
  `);
2566
- }
2567
- await stream6.write("data: [DONE]\n\n");
2568
- } catch (err) {
2569
- logger2.error("Error in approve tool call: " + (err?.message ?? "Unknown error"));
2570
2580
  }
2571
- await stream6.close();
2572
- },
2573
- async (err) => {
2574
- logger2.error("Error in watch stream: " + err?.message);
2581
+ await stream6.write("data: [DONE]\n\n");
2582
+ } catch (err) {
2583
+ logger2.error("Error in approve tool call: " + (err?.message ?? "Unknown error"));
2584
+ const errorChunk = {
2585
+ type: "error",
2586
+ from: ChunkFrom.AGENT,
2587
+ runId: body.runId || "unknown",
2588
+ payload: {
2589
+ error: err instanceof Error ? {
2590
+ message: err.message,
2591
+ name: err.name,
2592
+ stack: err.stack
2593
+ } : String(err)
2594
+ }
2595
+ };
2596
+ await stream6.write(`data: ${JSON.stringify(errorChunk)}
2597
+
2598
+ `);
2575
2599
  }
2576
- );
2577
- } catch (error) {
2578
- return handleError(error, "Error approving tool call");
2579
- }
2600
+ await stream6.close();
2601
+ },
2602
+ async (err) => {
2603
+ logger2.error("Error in watch stream: " + err?.message);
2604
+ }
2605
+ );
2580
2606
  }
2581
2607
  async function declineToolCallHandler(c2) {
2608
+ const mastra = c2.get("mastra");
2609
+ const agentId = c2.req.param("agentId");
2610
+ const runtimeContext = c2.get("runtimeContext");
2611
+ const body = await c2.req.json();
2612
+ const logger2 = mastra.getLogger();
2613
+ let streamResponse;
2582
2614
  try {
2583
- const mastra = c2.get("mastra");
2584
- const agentId = c2.req.param("agentId");
2585
- const runtimeContext = c2.get("runtimeContext");
2586
- const body = await c2.req.json();
2587
- const logger2 = mastra.getLogger();
2588
- c2.header("Transfer-Encoding", "chunked");
2589
- return stream(
2590
- c2,
2591
- async (stream6) => {
2592
- try {
2593
- const streamResponse = await declineToolCallHandler$1({
2594
- mastra,
2595
- runtimeContext,
2596
- agentId,
2597
- body,
2598
- abortSignal: c2.req.raw.signal
2599
- });
2600
- const reader = streamResponse.fullStream.getReader();
2601
- stream6.onAbort(() => {
2602
- void reader.cancel("request aborted");
2603
- });
2604
- let chunkResult;
2605
- while ((chunkResult = await reader.read()) && !chunkResult.done) {
2606
- await stream6.write(`data: ${JSON.stringify(chunkResult.value)}
2615
+ streamResponse = await declineToolCallHandler$1({
2616
+ mastra,
2617
+ runtimeContext,
2618
+ agentId,
2619
+ body,
2620
+ abortSignal: c2.req.raw.signal
2621
+ });
2622
+ } catch (err) {
2623
+ return handleError(err, "Error declining tool call");
2624
+ }
2625
+ c2.header("Transfer-Encoding", "chunked");
2626
+ return stream(
2627
+ c2,
2628
+ async (stream6) => {
2629
+ try {
2630
+ const reader = streamResponse.fullStream.getReader();
2631
+ stream6.onAbort(() => {
2632
+ void reader.cancel("request aborted");
2633
+ });
2634
+ let chunkResult;
2635
+ while ((chunkResult = await reader.read()) && !chunkResult.done) {
2636
+ await stream6.write(`data: ${JSON.stringify(chunkResult.value)}
2607
2637
 
2608
2638
  `);
2609
- }
2610
- await stream6.write("data: [DONE]\n\n");
2611
- } catch (err) {
2612
- logger2.error("Error in decline tool call: " + (err?.message ?? "Unknown error"));
2613
2639
  }
2614
- await stream6.close();
2615
- },
2616
- async (err) => {
2617
- logger2.error("Error in watch stream: " + err?.message);
2640
+ await stream6.write("data: [DONE]\n\n");
2641
+ } catch (err) {
2642
+ logger2.error("Error in decline tool call: " + (err?.message ?? "Unknown error"));
2643
+ const errorChunk = {
2644
+ type: "error",
2645
+ from: ChunkFrom.AGENT,
2646
+ runId: body.runId || "unknown",
2647
+ payload: {
2648
+ error: err instanceof Error ? {
2649
+ message: err.message,
2650
+ name: err.name,
2651
+ stack: err.stack
2652
+ } : String(err)
2653
+ }
2654
+ };
2655
+ await stream6.write(`data: ${JSON.stringify(errorChunk)}
2656
+
2657
+ `);
2618
2658
  }
2619
- );
2620
- } catch (error) {
2621
- return handleError(error, "Error declining tool call");
2622
- }
2659
+ await stream6.close();
2660
+ },
2661
+ async (err) => {
2662
+ logger2.error("Error in watch stream: " + err?.message);
2663
+ }
2664
+ );
2623
2665
  }
2624
2666
  async function streamNetworkHandler(c2) {
2625
- try {
2626
- const mastra = c2.get("mastra");
2627
- const agentId = c2.req.param("agentId");
2628
- const runtimeContext = c2.get("runtimeContext");
2629
- const body = await c2.req.json();
2630
- const logger2 = mastra.getLogger();
2631
- const agent = mastra.getAgent(agentId);
2632
- if (!agent) {
2633
- throw new MastraError({
2667
+ const mastra = c2.get("mastra");
2668
+ const agentId = c2.req.param("agentId");
2669
+ const runtimeContext = c2.get("runtimeContext");
2670
+ const body = await c2.req.json();
2671
+ const logger2 = mastra.getLogger();
2672
+ const agent = mastra.getAgent(agentId);
2673
+ if (!agent) {
2674
+ return handleError(
2675
+ new MastraError({
2634
2676
  id: "AGENT_NOT_FOUND",
2635
2677
  domain: ErrorDomain.AGENT,
2636
2678
  category: ErrorCategory.USER,
2637
2679
  text: "Agent not found"
2638
- });
2639
- }
2640
- const memory = await agent.getMemory({ runtimeContext });
2641
- if (!memory) {
2642
- throw new MastraError({
2680
+ }),
2681
+ "Agent not found"
2682
+ );
2683
+ }
2684
+ const memory = await agent.getMemory({ runtimeContext });
2685
+ if (!memory) {
2686
+ return handleError(
2687
+ new MastraError({
2643
2688
  id: "AGENT_NETWORK_MEMORY_REQUIRED",
2644
2689
  domain: ErrorDomain.AGENT_NETWORK,
2645
2690
  category: ErrorCategory.USER,
@@ -2647,43 +2692,62 @@ async function streamNetworkHandler(c2) {
2647
2692
  details: {
2648
2693
  status: 400
2649
2694
  }
2650
- });
2651
- }
2652
- c2.header("Transfer-Encoding", "chunked");
2653
- return stream(
2654
- c2,
2655
- async (stream6) => {
2656
- try {
2657
- const streamResponse = await streamNetworkHandler$1({
2658
- mastra,
2659
- agentId,
2660
- runtimeContext,
2661
- body
2662
- // abortSignal: c.req.raw.signal,
2663
- });
2664
- const reader = streamResponse.getReader();
2665
- stream6.onAbort(() => {
2666
- void reader.cancel("request aborted");
2667
- });
2668
- let chunkResult;
2669
- while ((chunkResult = await reader.read()) && !chunkResult.done) {
2670
- await stream6.write(`data: ${JSON.stringify(chunkResult.value)}
2695
+ }),
2696
+ "Memory required for agent network"
2697
+ );
2698
+ }
2699
+ let streamResponse;
2700
+ try {
2701
+ streamResponse = await streamNetworkHandler$1({
2702
+ mastra,
2703
+ agentId,
2704
+ runtimeContext,
2705
+ body
2706
+ // abortSignal: c.req.raw.signal,
2707
+ });
2708
+ } catch (err) {
2709
+ return handleError(err, "Error streaming from agent in network mode");
2710
+ }
2711
+ c2.header("Transfer-Encoding", "chunked");
2712
+ return stream(
2713
+ c2,
2714
+ async (stream6) => {
2715
+ try {
2716
+ const reader = streamResponse.getReader();
2717
+ stream6.onAbort(() => {
2718
+ void reader.cancel("request aborted");
2719
+ });
2720
+ let chunkResult;
2721
+ while ((chunkResult = await reader.read()) && !chunkResult.done) {
2722
+ await stream6.write(`data: ${JSON.stringify(chunkResult.value)}
2671
2723
 
2672
2724
  `);
2673
- }
2674
- await stream6.write("data: [DONE]\n\n");
2675
- } catch (err) {
2676
- logger2.error("Error in streamNetwork generate: " + (err?.message ?? "Unknown error"));
2677
2725
  }
2678
- await stream6.close();
2679
- },
2680
- async (err) => {
2681
- logger2.error("Error in watch stream: " + err?.message);
2726
+ await stream6.write("data: [DONE]\n\n");
2727
+ } catch (err) {
2728
+ logger2.error("Error in streamNetwork generate: " + (err?.message ?? "Unknown error"));
2729
+ const errorChunk = {
2730
+ type: "error",
2731
+ from: ChunkFrom.AGENT,
2732
+ runId: body.runId || "unknown",
2733
+ payload: {
2734
+ error: err instanceof Error ? {
2735
+ message: err.message,
2736
+ name: err.name,
2737
+ stack: err.stack
2738
+ } : String(err)
2739
+ }
2740
+ };
2741
+ await stream6.write(`data: ${JSON.stringify(errorChunk)}
2742
+
2743
+ `);
2682
2744
  }
2683
- );
2684
- } catch (error) {
2685
- return handleError(error, "Error streaming from agent in network mode");
2686
- }
2745
+ await stream6.close();
2746
+ },
2747
+ async (err) => {
2748
+ logger2.error("Error in watch stream: " + err?.message);
2749
+ }
2750
+ );
2687
2751
  }
2688
2752
  async function streamUIMessageHandler(c2) {
2689
2753
  try {