@mastra/core 0.16.4-alpha.2 → 0.17.0-alpha.4

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 (193) hide show
  1. package/CHANGELOG.md +55 -0
  2. package/dist/agent/agent.d.ts +17 -2
  3. package/dist/agent/agent.d.ts.map +1 -1
  4. package/dist/agent/index.cjs +11 -11
  5. package/dist/agent/index.js +2 -2
  6. package/dist/agent/input-processor/index.cjs +6 -6
  7. package/dist/agent/input-processor/index.js +1 -1
  8. package/dist/agent/message-list/index.d.ts +1 -1
  9. package/dist/agent/message-list/index.d.ts.map +1 -1
  10. package/dist/agent/types.d.ts +15 -2
  11. package/dist/agent/types.d.ts.map +1 -1
  12. package/dist/ai-tracing/exporters/default.d.ts +1 -0
  13. package/dist/ai-tracing/exporters/default.d.ts.map +1 -1
  14. package/dist/ai-tracing/index.cjs +35 -31
  15. package/dist/ai-tracing/index.js +1 -1
  16. package/dist/ai-tracing/span_processors/sensitive-data-filter.d.ts +7 -1
  17. package/dist/ai-tracing/span_processors/sensitive-data-filter.d.ts.map +1 -1
  18. package/dist/ai-tracing/spans/base.d.ts +2 -1
  19. package/dist/ai-tracing/spans/base.d.ts.map +1 -1
  20. package/dist/ai-tracing/types.d.ts +35 -4
  21. package/dist/ai-tracing/types.d.ts.map +1 -1
  22. package/dist/ai-tracing/utils.d.ts +3 -2
  23. package/dist/ai-tracing/utils.d.ts.map +1 -1
  24. package/dist/bundler/index.cjs +2 -2
  25. package/dist/bundler/index.d.ts +8 -2
  26. package/dist/bundler/index.d.ts.map +1 -1
  27. package/dist/bundler/index.js +1 -1
  28. package/dist/{chunk-AWILTHBM.js → chunk-2PQSZI63.js} +3 -3
  29. package/dist/{chunk-AWILTHBM.js.map → chunk-2PQSZI63.js.map} +1 -1
  30. package/dist/{chunk-4VP3M5T7.js → chunk-4OT7CXAS.js} +17 -4
  31. package/dist/chunk-4OT7CXAS.js.map +1 -0
  32. package/dist/{chunk-O5GOFG6A.js → chunk-4VHC2F5H.js} +10 -8
  33. package/dist/chunk-4VHC2F5H.js.map +1 -0
  34. package/dist/{chunk-VVH4BOE4.cjs → chunk-6MDSS7WL.cjs} +4 -4
  35. package/dist/{chunk-VVH4BOE4.cjs.map → chunk-6MDSS7WL.cjs.map} +1 -1
  36. package/dist/{chunk-YLR7PB3B.cjs → chunk-BGAJ72HJ.cjs} +104 -86
  37. package/dist/chunk-BGAJ72HJ.cjs.map +1 -0
  38. package/dist/{chunk-YYZT5JKX.js → chunk-BY37WSX5.js} +5 -5
  39. package/dist/{chunk-YYZT5JKX.js.map → chunk-BY37WSX5.js.map} +1 -1
  40. package/dist/{chunk-ERRIEUC2.cjs → chunk-CP4TZ4HO.cjs} +129 -48
  41. package/dist/chunk-CP4TZ4HO.cjs.map +1 -0
  42. package/dist/{chunk-W4GRW6AV.cjs → chunk-F3XF7MEZ.cjs} +12 -12
  43. package/dist/{chunk-W4GRW6AV.cjs.map → chunk-F3XF7MEZ.cjs.map} +1 -1
  44. package/dist/{chunk-PY4MHJTE.js → chunk-G366B5BY.js} +2 -2
  45. package/dist/chunk-G366B5BY.js.map +1 -0
  46. package/dist/{chunk-GJKL73EJ.cjs → chunk-HBQSSMAD.cjs} +13 -11
  47. package/dist/chunk-HBQSSMAD.cjs.map +1 -0
  48. package/dist/{chunk-UIFZI5XX.cjs → chunk-HZGYVRVN.cjs} +21 -8
  49. package/dist/chunk-HZGYVRVN.cjs.map +1 -0
  50. package/dist/{chunk-DUUXEPE5.cjs → chunk-MRZHPP3G.cjs} +103 -5
  51. package/dist/chunk-MRZHPP3G.cjs.map +1 -0
  52. package/dist/{chunk-ODLGLX2R.js → chunk-PL3B3FZM.js} +129 -49
  53. package/dist/chunk-PL3B3FZM.js.map +1 -0
  54. package/dist/{chunk-LVVAUDVQ.cjs → chunk-QHDT3QQC.cjs} +2 -2
  55. package/dist/chunk-QHDT3QQC.cjs.map +1 -0
  56. package/dist/chunk-QPOJZU26.cjs +14 -0
  57. package/dist/{chunk-ELKY3FEM.cjs.map → chunk-QPOJZU26.cjs.map} +1 -1
  58. package/dist/{chunk-VH3RNDZA.cjs → chunk-RNJ4GD7U.cjs} +6 -6
  59. package/dist/{chunk-VH3RNDZA.cjs.map → chunk-RNJ4GD7U.cjs.map} +1 -1
  60. package/dist/{chunk-ES5UWPHJ.js → chunk-TUXCO343.js} +17 -6
  61. package/dist/chunk-TUXCO343.js.map +1 -0
  62. package/dist/{chunk-CF3TI576.js → chunk-UWUM3F3X.js} +84 -66
  63. package/dist/chunk-UWUM3F3X.js.map +1 -0
  64. package/dist/{chunk-BVE3UPHV.js → chunk-VXJFKEON.js} +4 -4
  65. package/dist/{chunk-BVE3UPHV.js.map → chunk-VXJFKEON.js.map} +1 -1
  66. package/dist/{chunk-FTDM75SW.cjs → chunk-X3MOJJYH.cjs} +20 -9
  67. package/dist/chunk-X3MOJJYH.cjs.map +1 -0
  68. package/dist/{chunk-LVKX346H.js → chunk-XKVDOO2O.js} +3 -3
  69. package/dist/{chunk-LVKX346H.js.map → chunk-XKVDOO2O.js.map} +1 -1
  70. package/dist/{chunk-ZDMAOD35.js → chunk-XRJDA7BI.js} +102 -4
  71. package/dist/chunk-XRJDA7BI.js.map +1 -0
  72. package/dist/deployer/index.cjs +2 -2
  73. package/dist/deployer/index.js +1 -1
  74. package/dist/index.cjs +40 -40
  75. package/dist/index.js +8 -8
  76. package/dist/llm/model/model.d.ts +3 -1
  77. package/dist/llm/model/model.d.ts.map +1 -1
  78. package/dist/llm/model/model.loop.d.ts +6 -4
  79. package/dist/llm/model/model.loop.d.ts.map +1 -1
  80. package/dist/llm/model/model.loop.types.d.ts +1 -1
  81. package/dist/llm/model/model.loop.types.d.ts.map +1 -1
  82. package/dist/llm/model/shared.types.d.ts +5 -0
  83. package/dist/llm/model/shared.types.d.ts.map +1 -1
  84. package/dist/loop/index.cjs +2 -2
  85. package/dist/loop/index.js +1 -1
  86. package/dist/loop/loop.d.ts +1 -1
  87. package/dist/loop/loop.d.ts.map +1 -1
  88. package/dist/loop/test-utils/fullStream.d.ts.map +1 -1
  89. package/dist/loop/test-utils/generateText.d.ts.map +1 -1
  90. package/dist/loop/test-utils/options.d.ts.map +1 -1
  91. package/dist/loop/test-utils/resultObject.d.ts.map +1 -1
  92. package/dist/loop/test-utils/streamObject.d.ts.map +1 -1
  93. package/dist/loop/test-utils/textStream.d.ts.map +1 -1
  94. package/dist/loop/test-utils/tools.d.ts.map +1 -1
  95. package/dist/loop/test-utils/utils.d.ts +4 -3
  96. package/dist/loop/test-utils/utils.d.ts.map +1 -1
  97. package/dist/loop/types.d.ts +2 -2
  98. package/dist/loop/types.d.ts.map +1 -1
  99. package/dist/loop/workflows/agentic-execution/index.d.ts +836 -0
  100. package/dist/loop/workflows/agentic-execution/index.d.ts.map +1 -0
  101. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts +559 -0
  102. package/dist/loop/workflows/agentic-execution/llm-execution-step.d.ts.map +1 -0
  103. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts +311 -0
  104. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts.map +1 -0
  105. package/dist/loop/{workflow → workflows/agentic-execution}/tool-call-step.d.ts +16 -16
  106. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -0
  107. package/dist/loop/workflows/agentic-loop/index.d.ts +842 -0
  108. package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -0
  109. package/dist/loop/workflows/run-state.d.ts.map +1 -0
  110. package/dist/loop/workflows/schema.d.ts +439 -0
  111. package/dist/loop/workflows/schema.d.ts.map +1 -0
  112. package/dist/loop/{workflow → workflows}/stream.d.ts +1 -1
  113. package/dist/loop/workflows/stream.d.ts.map +1 -0
  114. package/dist/mastra/index.cjs +2 -2
  115. package/dist/mastra/index.js +1 -1
  116. package/dist/memory/index.cjs +4 -4
  117. package/dist/memory/index.js +1 -1
  118. package/dist/network/index.cjs +2 -2
  119. package/dist/network/index.js +1 -1
  120. package/dist/network/vNext/index.cjs +34 -34
  121. package/dist/network/vNext/index.cjs.map +1 -1
  122. package/dist/network/vNext/index.js +7 -7
  123. package/dist/network/vNext/index.js.map +1 -1
  124. package/dist/processors/index.cjs +8 -8
  125. package/dist/processors/index.js +2 -2
  126. package/dist/relevance/index.cjs +4 -4
  127. package/dist/relevance/index.js +1 -1
  128. package/dist/scores/base.d.ts.map +1 -1
  129. package/dist/scores/index.cjs +8 -8
  130. package/dist/scores/index.js +1 -1
  131. package/dist/server/types.d.ts +7 -0
  132. package/dist/server/types.d.ts.map +1 -1
  133. package/dist/storage/index.cjs +3 -3
  134. package/dist/storage/index.js +1 -1
  135. package/dist/stream/aisdk/v5/execute.d.ts +2 -1
  136. package/dist/stream/aisdk/v5/execute.d.ts.map +1 -1
  137. package/dist/stream/aisdk/v5/output-helpers.d.ts +1 -5
  138. package/dist/stream/aisdk/v5/output-helpers.d.ts.map +1 -1
  139. package/dist/stream/aisdk/v5/output.d.ts +2 -10
  140. package/dist/stream/aisdk/v5/output.d.ts.map +1 -1
  141. package/dist/stream/base/output-format-handlers.d.ts.map +1 -1
  142. package/dist/stream/base/output.d.ts +1 -5
  143. package/dist/stream/base/output.d.ts.map +1 -1
  144. package/dist/stream/index.cjs +3 -3
  145. package/dist/stream/index.js +1 -1
  146. package/dist/stream/types.d.ts +8 -2
  147. package/dist/stream/types.d.ts.map +1 -1
  148. package/dist/test-utils/llm-mock.cjs +2 -2
  149. package/dist/test-utils/llm-mock.js +1 -1
  150. package/dist/utils.cjs +17 -17
  151. package/dist/utils.d.ts +2 -1
  152. package/dist/utils.d.ts.map +1 -1
  153. package/dist/utils.js +1 -1
  154. package/dist/workflows/default.d.ts.map +1 -1
  155. package/dist/workflows/evented/index.cjs +10 -10
  156. package/dist/workflows/evented/index.js +1 -1
  157. package/dist/workflows/evented/workflow.d.ts.map +1 -1
  158. package/dist/workflows/execution-engine.d.ts +7 -2
  159. package/dist/workflows/execution-engine.d.ts.map +1 -1
  160. package/dist/workflows/index.cjs +10 -10
  161. package/dist/workflows/index.js +1 -1
  162. package/dist/workflows/legacy/index.cjs +22 -22
  163. package/dist/workflows/legacy/index.js +1 -1
  164. package/dist/workflows/types.d.ts +6 -1
  165. package/dist/workflows/types.d.ts.map +1 -1
  166. package/dist/workflows/workflow.d.ts +12 -10
  167. package/dist/workflows/workflow.d.ts.map +1 -1
  168. package/package.json +7 -6
  169. package/dist/chunk-4VP3M5T7.js.map +0 -1
  170. package/dist/chunk-CF3TI576.js.map +0 -1
  171. package/dist/chunk-DUUXEPE5.cjs.map +0 -1
  172. package/dist/chunk-ELKY3FEM.cjs +0 -14
  173. package/dist/chunk-ERRIEUC2.cjs.map +0 -1
  174. package/dist/chunk-ES5UWPHJ.js.map +0 -1
  175. package/dist/chunk-FTDM75SW.cjs.map +0 -1
  176. package/dist/chunk-GJKL73EJ.cjs.map +0 -1
  177. package/dist/chunk-LVVAUDVQ.cjs.map +0 -1
  178. package/dist/chunk-O5GOFG6A.js.map +0 -1
  179. package/dist/chunk-ODLGLX2R.js.map +0 -1
  180. package/dist/chunk-PY4MHJTE.js.map +0 -1
  181. package/dist/chunk-UIFZI5XX.cjs.map +0 -1
  182. package/dist/chunk-YLR7PB3B.cjs.map +0 -1
  183. package/dist/chunk-ZDMAOD35.js.map +0 -1
  184. package/dist/loop/workflow/llm-execution.d.ts +0 -81
  185. package/dist/loop/workflow/llm-execution.d.ts.map +0 -1
  186. package/dist/loop/workflow/outer-llm-step.d.ts +0 -44
  187. package/dist/loop/workflow/outer-llm-step.d.ts.map +0 -1
  188. package/dist/loop/workflow/run-state.d.ts.map +0 -1
  189. package/dist/loop/workflow/schema.d.ts +0 -92
  190. package/dist/loop/workflow/schema.d.ts.map +0 -1
  191. package/dist/loop/workflow/stream.d.ts.map +0 -1
  192. package/dist/loop/workflow/tool-call-step.d.ts.map +0 -1
  193. /package/dist/loop/{workflow → workflows}/run-state.d.ts +0 -0
@@ -1,6 +1,6 @@
1
- import { Agent, createStep, createWorkflow, RESOURCE_TYPES } from '../../chunk-CF3TI576.js';
1
+ import { Agent, createStep, createWorkflow, RESOURCE_TYPES } from '../../chunk-UWUM3F3X.js';
2
2
  import { EMITTER_SYMBOL } from '../../chunk-NLNKQD2T.js';
3
- import { MessageList } from '../../chunk-ZDMAOD35.js';
3
+ import { MessageList } from '../../chunk-XRJDA7BI.js';
4
4
  import { RuntimeContext } from '../../chunk-HLRWYUFN.js';
5
5
  import { MastraBase } from '../../chunk-6GF5M4GX.js';
6
6
  import { RegisteredLogger } from '../../chunk-X3GXU6TZ.js';
@@ -253,7 +253,7 @@ var NewAgentNetwork = class extends MastraBase {
253
253
  }).dountil(networkWorkflow, async ({ inputData }) => {
254
254
  return inputData.isComplete || maxIterations && inputData.iteration >= maxIterations;
255
255
  }).then(finalStep).commit();
256
- const run = mainWorkflow.createRun();
256
+ const run = await mainWorkflow.createRunAsync();
257
257
  const thread = await this.beforeRun({
258
258
  runtimeContext: runtimeContext || new RuntimeContext(),
259
259
  threadId: threadId || run.runId,
@@ -325,7 +325,7 @@ var NewAgentNetwork = class extends MastraBase {
325
325
  }).dountil(networkWorkflow, async ({ inputData }) => {
326
326
  return inputData.isComplete || maxIterations && inputData.iteration >= maxIterations;
327
327
  }).then(finalStep).commit();
328
- const run = mainWorkflow.createRun();
328
+ const run = await mainWorkflow.createRunAsync();
329
329
  const thread = await this.beforeRun({
330
330
  runtimeContext: runtimeContext || new RuntimeContext(),
331
331
  threadId: threadId || run.runId,
@@ -661,7 +661,7 @@ ${completionResult.object.finalResult}` : ""}
661
661
  type: "tool-call-streaming-start",
662
662
  ...toolData
663
663
  });
664
- const run = wf.createRun();
664
+ const run = await wf.createRunAsync();
665
665
  const { stream, getWorkflowState } = run.stream({
666
666
  inputData: input,
667
667
  runtimeContext: runtimeContextToUse
@@ -918,7 +918,7 @@ ${completionResult.object.finalResult}` : ""}
918
918
  resourceId
919
919
  }) {
920
920
  const networkWorkflow = this.createWorkflow({ runtimeContext });
921
- const run = networkWorkflow.createRun();
921
+ const run = await networkWorkflow.createRunAsync();
922
922
  const thread = await this.beforeRun({
923
923
  runtimeContext: runtimeContext || new RuntimeContext(),
924
924
  threadId: threadId || run.runId,
@@ -957,7 +957,7 @@ ${completionResult.object.finalResult}` : ""}
957
957
  resourceId
958
958
  }) {
959
959
  const networkWorkflow = this.createWorkflow({ runtimeContext });
960
- const run = networkWorkflow.createRun();
960
+ const run = await networkWorkflow.createRunAsync();
961
961
  const thread = await this.beforeRun({
962
962
  runtimeContext: runtimeContext || new RuntimeContext(),
963
963
  threadId: threadId || run.runId,
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/network/vNext/index.ts"],"names":["result"],"mappings":"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","file":"index.js","sourcesContent":["import { randomUUID } from 'crypto';\nimport { zodToJsonSchema } from '@mastra/schema-compat/zod-to-json';\nimport { z } from 'zod';\nimport { Agent, MessageList } from '../../agent';\nimport type { MessageListInput } from '../../agent/message-list';\nimport { MastraBase } from '../../base';\nimport type { MastraLanguageModel } from '../../llm/model/shared.types';\nimport { RegisteredLogger } from '../../logger';\nimport { RESOURCE_TYPES } from '../../loop/types';\nimport type { Mastra } from '../../mastra';\nimport type { MastraMessageV2, MastraMemory } from '../../memory';\nimport { RuntimeContext } from '../../runtime-context';\nimport type { Tool } from '../../tools';\nimport type { DynamicArgument } from '../../types';\nimport type { Workflow } from '../../workflows';\nimport { EMITTER_SYMBOL } from '../../workflows/constants';\nimport { createWorkflow, createStep } from '../../workflows/workflow';\n\ninterface NewAgentNetworkConfig {\n id: string;\n name: string;\n instructions: DynamicArgument<string>;\n model: DynamicArgument<MastraLanguageModel>;\n agents: DynamicArgument<Record<string, Agent>>;\n workflows?: DynamicArgument<Record<string, Workflow>>;\n tools?: DynamicArgument<Record<string, Tool<any, any, any>>>;\n memory?: DynamicArgument<MastraMemory>;\n defaultAgent?: DynamicArgument<Agent>;\n}\n\nexport class NewAgentNetwork extends MastraBase {\n id: string;\n name: string;\n #instructions: DynamicArgument<string>;\n #model: DynamicArgument<MastraLanguageModel>;\n #agents: DynamicArgument<Record<string, Agent>>;\n #defaultAgent: DynamicArgument<Agent> | undefined;\n #workflows: DynamicArgument<Record<string, Workflow>> | undefined;\n #tools: DynamicArgument<Record<string, Tool>> | undefined;\n #memory?: DynamicArgument<MastraMemory>;\n #mastra?: Mastra;\n\n constructor({\n id,\n name,\n instructions,\n model,\n agents,\n workflows,\n memory,\n tools,\n defaultAgent,\n }: NewAgentNetworkConfig) {\n super({\n component: RegisteredLogger.NETWORK,\n name: name || 'NewAgentNetwork',\n });\n\n console.warn(\n `⚠️ DEPRECATION WARNING: AgentNetwork vNext will be deprecated on September 16th, 2025 and will be removed in a future version. Please use agent.network() instead.`,\n );\n\n this.id = id;\n this.name = name;\n this.#instructions = instructions;\n this.#model = model;\n this.#agents = agents;\n this.#workflows = workflows;\n this.#memory = memory;\n this.#tools = tools;\n this.#defaultAgent = defaultAgent;\n }\n\n __registerMastra(mastra: Mastra) {\n this.#mastra = mastra;\n }\n\n private getLastMessage(messages: MessageListInput) {\n let message = '';\n if (typeof messages === 'string') {\n message = messages;\n } else {\n const lastMessage = Array.isArray(messages) ? messages[messages.length - 1] : messages;\n if (typeof lastMessage === 'string') {\n message = lastMessage;\n } else if (lastMessage && `content` in lastMessage && lastMessage?.content) {\n const lastMessageContent = lastMessage.content;\n if (typeof lastMessageContent === 'string') {\n message = lastMessageContent;\n } else if (Array.isArray(lastMessageContent)) {\n const lastPart = lastMessageContent[lastMessageContent.length - 1];\n if (lastPart?.type === 'text') {\n message = lastPart.text;\n }\n }\n }\n }\n\n return message;\n }\n\n private async beforeRun({\n runtimeContext,\n threadId,\n resourceId,\n messages,\n }: {\n runtimeContext: RuntimeContext;\n threadId: string;\n resourceId: string;\n messages: MessageListInput;\n }) {\n const memory = await this.getMemory({ runtimeContext });\n let thread = await memory?.getThreadById({ threadId });\n if (!thread) {\n thread = await memory?.createThread({\n threadId,\n title: '',\n resourceId,\n });\n }\n if (typeof messages === 'string') {\n await memory?.saveMessages({\n messages: [\n {\n id: this.#mastra?.generateId() || randomUUID(),\n type: 'text',\n role: 'user',\n content: { parts: [{ type: 'text', text: messages }], format: 2 },\n createdAt: new Date(),\n threadId: thread?.id,\n resourceId: thread?.resourceId,\n },\n ] as MastraMessageV2[],\n format: 'v2',\n });\n } else {\n const messageList = new MessageList({\n threadId: thread?.id,\n resourceId: thread?.resourceId,\n });\n messageList.add(messages, 'user');\n const messagesToSave = messageList.get.all.v2();\n\n await memory?.saveMessages({\n messages: messagesToSave,\n format: 'v2',\n });\n }\n\n return thread;\n }\n\n async getAgents({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n let agentsToUse: Record<string, Agent>;\n\n if (typeof this.#agents === 'function') {\n agentsToUse = await this.#agents({ runtimeContext: runtimeContext || new RuntimeContext() });\n } else {\n agentsToUse = this.#agents;\n }\n\n return agentsToUse;\n }\n\n async getWorkflows({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n let workflowsToUse: Record<string, Workflow>;\n\n if (typeof this.#workflows === 'function') {\n workflowsToUse = await this.#workflows({ runtimeContext: runtimeContext || new RuntimeContext() });\n } else {\n workflowsToUse = this.#workflows || {};\n }\n\n return workflowsToUse;\n }\n\n async getTools({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n let toolsToUse: Record<string, Tool>;\n\n if (typeof this.#tools === 'function') {\n toolsToUse = await this.#tools({ runtimeContext: runtimeContext || new RuntimeContext() });\n } else {\n toolsToUse = this.#tools || {};\n }\n\n return toolsToUse;\n }\n\n async getMemory({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n let memoryToUse: MastraMemory;\n\n if (!this.#memory) {\n return;\n }\n\n if (typeof this.#memory === 'function') {\n memoryToUse = await this.#memory({ runtimeContext: runtimeContext || new RuntimeContext() });\n } else {\n memoryToUse = this.#memory;\n }\n\n return memoryToUse;\n }\n\n async getInstructions({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n let instructionsToUse = this.#instructions;\n\n if (typeof instructionsToUse === 'function') {\n instructionsToUse = await instructionsToUse({ runtimeContext: runtimeContext || new RuntimeContext() });\n }\n\n return instructionsToUse;\n }\n\n async getRoutingAgent({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n const instructionsToUse = await this.getInstructions({ runtimeContext: runtimeContext || new RuntimeContext() });\n const memoryToUse = await this.getMemory({ runtimeContext: runtimeContext || new RuntimeContext() });\n const agentsToUse = await this.getAgents({ runtimeContext: runtimeContext || new RuntimeContext() });\n const workflowsToUse = await this.getWorkflows({ runtimeContext: runtimeContext || new RuntimeContext() });\n const toolsToUse = await this.getTools({ runtimeContext: runtimeContext || new RuntimeContext() });\n\n const agentList = Object.entries(agentsToUse)\n .map(([name, agent]) => {\n // Use agent name instead of description since description might not exist\n return ` - **${name}**: ${agent.getDescription()}`;\n })\n .join('\\n');\n\n const workflowList = Object.entries(workflowsToUse)\n .map(([name, workflow]) => {\n return ` - **${name}**: ${workflow.description}, input schema: ${JSON.stringify(\n zodToJsonSchema(workflow.inputSchema),\n )}`;\n })\n .join('\\n');\n\n const toolList = Object.entries(toolsToUse)\n .map(([name, tool]) => {\n return ` - **${name}**: ${tool.description}, input schema: ${JSON.stringify(\n zodToJsonSchema(tool.inputSchema || z.object({})),\n )}`;\n })\n .join('\\n');\n\n const instructions = `\n You are a router in a network of specialized AI agents. \n Your job is to decide which agent should handle each step of a task.\n\n If asking for completion of a task, make sure to follow system instructions closely.\n \n ## System Instructions\n ${instructionsToUse}\n\n You can only pick agents and workflows that are available in the lists below. Never call any agents or workflows that are not available in the lists below.\n\n ## Available Agents in Network\n ${agentList}\n\n ## Available Workflows in Network (make sure to use inputs corresponding to the input schema when calling a workflow)\n ${workflowList}\n\n ## Available Tools in Network (make sure to use inputs corresponding to the input schema when calling a tool)\n ${toolList}\n\n ${\n this.#defaultAgent\n ? `If none of the agents or workflows are appropriate, call the default agent: ${this.#defaultAgent.name}.` +\n `This should not be done lightly. You should only do this if you have exhausted all other options.`\n : ''\n }\n\n If you have multiple entries that need to be called with a workflow or agent, call them separately with each input.\n When calling a workflow, the prompt should be a JSON value that corresponds to the input schema of the workflow. The JSON value is stringified.\n When calling a tool, the prompt should be a JSON value that corresponds to the input schema of the tool. The JSON value is stringified.\n When calling an agent, the prompt should be a text value, like you would call an LLM in a chat interface.\n\n Keep in mind that the user only sees the final result of the task. When reviewing completion, you should know that the user will not see the intermediate results.\n `;\n\n return new Agent({\n name: 'routing-agent',\n instructions,\n model: this.#model,\n memory: memoryToUse,\n // @ts-ignore\n _agentNetworkAppend: true,\n });\n }\n\n async loop(\n messages: MessageListInput,\n {\n runtimeContext,\n maxIterations,\n threadId,\n resourceId,\n }: {\n runtimeContext?: RuntimeContext;\n maxIterations?: number;\n threadId?: string;\n resourceId?: string;\n },\n ) {\n const networkWorkflow = this.createWorkflow({ runtimeContext });\n\n const finalStep = createStep({\n id: 'final-step',\n inputSchema: networkWorkflow.outputSchema,\n outputSchema: networkWorkflow.outputSchema,\n execute: async ({ inputData }) => {\n if (maxIterations && inputData.iteration >= maxIterations) {\n return {\n ...inputData,\n completionReason: `Max iterations reached: ${maxIterations}`,\n };\n }\n\n return inputData;\n },\n });\n\n const mainWorkflow = createWorkflow({\n id: 'Agent-Network-Main-Workflow',\n inputSchema: z.object({\n iteration: z.number(),\n task: z.string(),\n resourceType: RESOURCE_TYPES,\n threadId: z.string().optional(),\n threadResourceId: z.string().optional(),\n }),\n outputSchema: networkWorkflow.outputSchema,\n })\n .dountil(networkWorkflow, async ({ inputData }) => {\n return inputData.isComplete || (maxIterations && inputData.iteration >= maxIterations);\n })\n .then(finalStep)\n .commit();\n\n const run = mainWorkflow.createRun();\n\n const thread = await this.beforeRun({\n runtimeContext: runtimeContext || new RuntimeContext(),\n threadId: threadId || run.runId,\n resourceId: resourceId || this.name,\n messages,\n });\n\n const message = this.getLastMessage(messages);\n\n const result = await run.start({\n inputData: {\n task: message,\n resourceType: 'none',\n iteration: 0,\n threadResourceId: thread?.resourceId,\n threadId: thread?.id,\n },\n });\n\n if (result.status === 'failed') {\n throw result.error;\n }\n\n if (result.status === 'suspended') {\n throw new Error('Workflow suspended');\n }\n\n return result;\n }\n\n async loopStream(\n messages: MessageListInput,\n {\n runtimeContext,\n maxIterations,\n threadId,\n resourceId,\n }: {\n runtimeContext?: RuntimeContext;\n maxIterations?: number;\n threadId?: string;\n resourceId?: string;\n },\n ) {\n const networkWorkflow = this.createWorkflow({ runtimeContext });\n\n const finalStep = createStep({\n id: 'final-step',\n inputSchema: networkWorkflow.outputSchema,\n outputSchema: networkWorkflow.outputSchema,\n execute: async ({ inputData }) => {\n if (maxIterations && inputData.iteration >= maxIterations) {\n return {\n ...inputData,\n completionReason: `Max iterations reached: ${maxIterations}`,\n };\n }\n\n return inputData;\n },\n });\n\n const mainWorkflow = createWorkflow({\n id: 'Agent-Network-Main-Workflow',\n inputSchema: z.object({\n iteration: z.number(),\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n result: z.string().optional(),\n threadId: z.string().optional(),\n threadResourceId: z.string().optional(),\n isOneOff: z.boolean(),\n verboseIntrospection: z.boolean(),\n }),\n outputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n completionReason: z.string().optional(),\n iteration: z.number(),\n }),\n })\n .dountil(networkWorkflow, async ({ inputData }) => {\n return inputData.isComplete || (maxIterations && inputData.iteration >= maxIterations);\n })\n .then(finalStep)\n .commit();\n\n const run = mainWorkflow.createRun();\n\n const thread = await this.beforeRun({\n runtimeContext: runtimeContext || new RuntimeContext(),\n threadId: threadId || run.runId,\n resourceId: resourceId || this.name,\n messages,\n });\n\n const message = this.getLastMessage(messages);\n\n return run.stream({\n inputData: {\n task: message,\n resourceId: '',\n resourceType: 'none',\n iteration: 0,\n threadResourceId: thread?.resourceId,\n threadId: thread?.id,\n isOneOff: false,\n verboseIntrospection: true,\n },\n });\n }\n\n createWorkflow({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n const runId = this.#mastra?.generateId() || randomUUID();\n\n const runtimeContextToUse = runtimeContext || new RuntimeContext();\n\n const routingStep = createStep({\n id: 'routing-step',\n inputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n result: z.string().optional(),\n iteration: z.number(),\n threadId: z.string().optional(),\n threadResourceId: z.string().optional(),\n isOneOff: z.boolean(),\n verboseIntrospection: z.boolean(),\n }),\n outputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n selectionReason: z.string(),\n iteration: z.number(),\n }),\n execute: async ({ inputData, getInitData }) => {\n const initData = await getInitData();\n\n const routingAgent = await this.getRoutingAgent({ runtimeContext: runtimeContextToUse });\n\n const model = await routingAgent.getModel();\n\n const completionSchema = z.object({\n isComplete: z.boolean(),\n finalResult: z.string(),\n completionReason: z.string(),\n });\n let completionResult;\n if (inputData.resourceType !== 'none' && inputData?.result) {\n // Check if the task is complete\n const completionPrompt = `\n The ${inputData.resourceType} ${inputData.resourceId} has contributed to the task.\n This is the result from the agent: ${inputData.result}\n\n You need to evaluate that our task is complete. Pay very close attention to the SYSTEM INSTRUCTIONS for when the task is considered complete. Only return true if the task is complete according to the system instructions. Pay close attention to the finalResult and completionReason.\n Original task: ${inputData.task}\n\n {\n \"isComplete\": boolean,\n \"completionReason\": string,\n \"finalResult\": string\n }\n `;\n\n if (model.specificationVersion === 'v2') {\n completionResult = await routingAgent.generateVNext([{ role: 'assistant', content: completionPrompt }], {\n output: completionSchema,\n threadId: initData?.threadId ?? runId,\n resourceId: initData?.threadResourceId ?? this.name,\n runtimeContext: runtimeContextToUse,\n });\n } else {\n completionResult = await routingAgent.generate([{ role: 'assistant', content: completionPrompt }], {\n output: completionSchema,\n threadId: initData?.threadId ?? runId,\n resourceId: initData?.threadResourceId ?? this.name,\n runtimeContext: runtimeContextToUse,\n });\n }\n\n if (completionResult.object.isComplete) {\n return {\n task: inputData.task,\n resourceId: '',\n resourceType: 'none' as z.infer<typeof RESOURCE_TYPES>,\n prompt: '',\n result: completionResult.object.finalResult,\n isComplete: true,\n selectionReason: completionResult.object.completionReason,\n iteration: inputData.iteration + 1,\n };\n }\n }\n\n let result;\n const prompt: MessageListInput = [\n {\n role: 'assistant',\n content: `\n ${inputData.isOneOff ? 'You are executing just one primitive based on the user task. Make sure to pick the primitive that is the best suited to accomplish the whole task. Primitives that execute only part of the task should be avoided.' : 'You will be calling just *one* primitive at a time to accomplish the user task, every call to you is one decision in the process of accomplishing the user task. Make sure to pick primitives that are the best suited to accomplish the whole task. Completeness is the highest priority.'}\n\n The user has given you the following task: \n ${inputData.task}\n ${completionResult ? `\\n\\n${completionResult.object.finalResult}` : ''}\n\n Please select the most appropriate primitive to handle this task and the prompt to be sent to the primitive.\n If you are calling the same agent again, make sure to adjust the prompt to be more specific.\n\n {\n \"resourceId\": string,\n \"resourceType\": \"agent\" | \"workflow\" | \"tool\",\n \"prompt\": string,\n \"selectionReason\": string\n }\n\n The 'selectionReason' property should explain why you picked the primitive${inputData.verboseIntrospection ? ', as well as why the other primitives were not picked.' : '.'}\n `,\n },\n ];\n\n const options = {\n output: z.object({\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n selectionReason: z.string(),\n }),\n threadId: initData?.threadId ?? runId,\n resourceId: initData?.threadResourceId ?? this.name,\n runtimeContext: runtimeContextToUse,\n };\n\n if (model.specificationVersion === 'v2') {\n result = await routingAgent.generateVNext(prompt, options);\n } else {\n result = await routingAgent.generate(prompt, options);\n }\n\n return {\n task: inputData.task,\n result: '',\n resourceId: result.object.resourceId,\n resourceType: result.object.resourceType,\n prompt: result.object.prompt,\n isComplete: result.object.resourceId === 'none' && result.object.resourceType === 'none' ? true : false,\n selectionReason: result.object.selectionReason,\n iteration: inputData.iteration + 1,\n };\n },\n });\n\n const agentStep = createStep({\n id: 'agent-step',\n inputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n selectionReason: z.string(),\n iteration: z.number(),\n }),\n outputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n result: z.string(),\n isComplete: z.boolean().optional(),\n iteration: z.number(),\n }),\n execute: async ({ inputData, [EMITTER_SYMBOL]: emitter, getInitData }) => {\n const agentsMap = await this.getAgents({ runtimeContext: runtimeContextToUse });\n const agentId = inputData.resourceId;\n\n const agent = agentsMap[inputData.resourceId];\n\n if (!agent) {\n throw new Error(`Agent ${agentId} not found`);\n }\n\n let streamPromise = {} as {\n promise: Promise<string>;\n resolve: (value: string) => void;\n reject: (reason?: any) => void;\n };\n\n streamPromise.promise = new Promise((resolve, reject) => {\n streamPromise.resolve = resolve;\n streamPromise.reject = reject;\n });\n const toolData = {\n name: agent.name,\n args: inputData,\n };\n await emitter.emit('watch-v2', {\n type: 'tool-call-streaming-start',\n ...toolData,\n });\n\n const model = await agent.getModel();\n\n let result;\n\n if (model.specificationVersion === 'v2') {\n result = await agent.streamVNext(inputData.prompt, {\n // resourceId: inputData.resourceId,\n // threadId: inputData.threadId,\n runtimeContext: runtimeContextToUse,\n onFinish: result => {\n streamPromise.resolve(result.text);\n },\n });\n\n for await (const chunk of result.fullStream) {\n switch (chunk.type) {\n case 'text-delta':\n await emitter.emit('watch-v2', {\n type: 'tool-call-delta',\n ...toolData,\n argsTextDelta: chunk.payload.text,\n });\n break;\n\n case 'step-start':\n case 'step-finish':\n case 'finish':\n case 'tool-call':\n case 'tool-result':\n case 'tool-call-input-streaming-start':\n case 'tool-call-delta':\n break;\n case 'source':\n case 'file':\n default:\n await emitter.emit('watch-v2', chunk);\n break;\n }\n }\n } else {\n result = await agent.stream(inputData.prompt, {\n // resourceId: inputData.resourceId,\n // threadId: inputData.threadId,\n runtimeContext: runtimeContextToUse,\n onFinish: result => {\n streamPromise.resolve(result.text);\n },\n });\n\n for await (const chunk of result.fullStream) {\n switch (chunk.type) {\n case 'text-delta':\n await emitter.emit('watch-v2', {\n type: 'tool-call-delta',\n ...toolData,\n argsTextDelta: chunk.textDelta,\n });\n break;\n\n case 'step-start':\n case 'step-finish':\n case 'finish':\n case 'tool-call':\n case 'tool-result':\n case 'tool-call-streaming-start':\n case 'tool-call-delta':\n break;\n case 'source':\n case 'file':\n default:\n await emitter.emit('watch-v2', chunk);\n break;\n }\n }\n }\n\n const finalResult = await streamPromise.promise;\n\n const memory = await this.getMemory({ runtimeContext: runtimeContext || new RuntimeContext() });\n const initData = await getInitData();\n await memory?.saveMessages({\n messages: [\n {\n id: this.#mastra?.generateId() || randomUUID(),\n type: 'text',\n role: 'assistant',\n content: { parts: [{ type: 'text', text: finalResult }], format: 2 },\n createdAt: new Date(),\n threadId: initData.threadId || runId,\n resourceId: initData.threadResourceId || this.name,\n },\n ] as MastraMessageV2[],\n format: 'v2',\n });\n\n return {\n task: inputData.task,\n resourceId: inputData.resourceId,\n resourceType: inputData.resourceType,\n result: finalResult,\n isComplete: false,\n iteration: inputData.iteration,\n };\n },\n });\n\n const workflowStep = createStep({\n id: 'workflow-step',\n inputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n selectionReason: z.string(),\n iteration: z.number(),\n }),\n outputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n result: z.string(),\n isComplete: z.boolean().optional(),\n iteration: z.number(),\n }),\n execute: async ({ inputData, [EMITTER_SYMBOL]: emitter, getInitData }) => {\n const workflowsMap = await this.getWorkflows({ runtimeContext: runtimeContextToUse });\n const wf = workflowsMap[inputData.resourceId];\n\n if (!wf) {\n throw new Error(`Workflow ${inputData.resourceId} not found`);\n }\n\n let input;\n try {\n input = JSON.parse(inputData.prompt);\n } catch (e: unknown) {\n console.error(e);\n throw new Error(`Invalid task input: ${inputData.task}`);\n }\n\n let streamPromise = {} as {\n promise: Promise<any>;\n resolve: (value: any) => void;\n reject: (reason?: any) => void;\n };\n\n streamPromise.promise = new Promise((resolve, reject) => {\n streamPromise.resolve = resolve;\n streamPromise.reject = reject;\n });\n const toolData = {\n name: wf.name,\n args: inputData,\n };\n await emitter.emit('watch-v2', {\n type: 'tool-call-streaming-start',\n ...toolData,\n });\n const run = wf.createRun();\n const { stream, getWorkflowState } = run.stream({\n inputData: input,\n runtimeContext: runtimeContextToUse,\n });\n\n let result: any;\n let stepResults: Record<string, any> = {};\n for await (const chunk of stream) {\n const c: any = chunk;\n // const c = chunk;\n switch (c.type) {\n case 'text-delta':\n await emitter.emit('watch-v2', {\n type: 'tool-call-delta',\n ...toolData,\n argsTextDelta: c.textDelta,\n });\n break;\n\n case 'step-result':\n if (c?.payload?.output) {\n result = c?.payload?.output;\n stepResults[c?.payload?.id] = c?.payload?.output;\n }\n await emitter.emit('watch-v2', c);\n break;\n case 'finish':\n streamPromise.resolve(result);\n break;\n\n case 'start':\n case 'step-start':\n case 'step-finish':\n case 'tool-call':\n case 'tool-result':\n case 'tool-call-streaming-start':\n case 'tool-call-delta':\n case 'source':\n case 'file':\n default:\n await emitter.emit('watch-v2', c);\n break;\n }\n }\n\n let runSuccess = true;\n const runResult = await streamPromise.promise;\n\n const workflowState = await getWorkflowState();\n if (workflowState.status === 'failed') {\n runSuccess = false;\n }\n\n const finalResult = JSON.stringify({\n runId: run.runId,\n runResult,\n runSuccess,\n });\n\n const memory = await this.getMemory({ runtimeContext: runtimeContext || new RuntimeContext() });\n const initData = await getInitData();\n await memory?.saveMessages({\n messages: [\n {\n id: this.#mastra?.generateId() || randomUUID(),\n type: 'text',\n role: 'assistant',\n content: { parts: [{ type: 'text', text: finalResult }], format: 2 },\n createdAt: new Date(),\n threadId: initData.threadId || runId,\n resourceId: initData.threadResourceId || this.name,\n },\n ] as MastraMessageV2[],\n format: 'v2',\n });\n\n return {\n result: finalResult || '',\n task: inputData.task,\n resourceId: inputData.resourceId,\n resourceType: inputData.resourceType,\n isComplete: false,\n iteration: inputData.iteration,\n };\n },\n });\n\n const toolStep = createStep({\n id: 'toolStep',\n inputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n selectionReason: z.string(),\n iteration: z.number(),\n }),\n outputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n result: z.string(),\n isComplete: z.boolean().optional(),\n iteration: z.number(),\n }),\n execute: async ({ inputData, getInitData }) => {\n const toolsMap = await this.getTools({ runtimeContext: runtimeContextToUse });\n const tool = toolsMap[inputData.resourceId];\n\n if (!tool) {\n throw new Error(`Tool ${inputData.resourceId} not found`);\n }\n\n if (!tool.execute) {\n throw new Error(`Tool ${inputData.resourceId} does not have an execute function`);\n }\n\n let inputDataToUse: any;\n try {\n inputDataToUse = JSON.parse(inputData.prompt);\n } catch (e: unknown) {\n console.error(e);\n throw new Error(`Invalid task input: ${inputData.task}`);\n }\n\n const finalResult: any = await tool.execute({\n runtimeContext: runtimeContextToUse,\n mastra: this.#mastra,\n resourceId: inputData.resourceId,\n threadId: runId,\n runId,\n context: inputDataToUse,\n // TODO: Pass proper tracing context when network supports tracing\n tracingContext: { currentSpan: undefined },\n });\n\n const memory = await this.getMemory({ runtimeContext: runtimeContext || new RuntimeContext() });\n const initData = await getInitData();\n await memory?.saveMessages({\n messages: [\n {\n id: this.#mastra?.generateId() || randomUUID(),\n type: 'text',\n role: 'assistant',\n content: { parts: [{ type: 'text', text: JSON.stringify(finalResult) }], format: 2 },\n createdAt: new Date(),\n threadId: initData.threadId || runId,\n resourceId: initData.threadResourceId || this.name,\n },\n ] as MastraMessageV2[],\n format: 'v2',\n });\n\n return {\n task: inputData.task,\n resourceId: inputData.resourceId,\n resourceType: inputData.resourceType,\n result: finalResult,\n isComplete: false,\n iteration: inputData.iteration,\n };\n },\n });\n\n const finishStep = createStep({\n id: 'finish-step',\n inputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n selectionReason: z.string(),\n iteration: z.number(),\n }),\n outputSchema: z.object({\n task: z.string(),\n result: z.string(),\n isComplete: z.boolean(),\n iteration: z.number(),\n }),\n execute: async ({ inputData }) => {\n return {\n task: inputData.task,\n result: inputData.result,\n isComplete: !!inputData.isComplete,\n iteration: inputData.iteration,\n };\n },\n });\n\n const networkWorkflow = createWorkflow({\n id: 'Agent-Network-Outer-Workflow',\n inputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n result: z.string().optional(),\n iteration: z.number(),\n threadId: z.string().optional(),\n threadResourceId: z.string().optional(),\n isOneOff: z.boolean(),\n verboseIntrospection: z.boolean(),\n }),\n outputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n completionReason: z.string().optional(),\n iteration: z.number(),\n threadId: z.string().optional(),\n threadResourceId: z.string().optional(),\n isOneOff: z.boolean(),\n }),\n });\n\n networkWorkflow\n .then(routingStep)\n .branch([\n [async ({ inputData }) => !inputData.isComplete && inputData.resourceType === 'agent', agentStep],\n [async ({ inputData }) => !inputData.isComplete && inputData.resourceType === 'workflow', workflowStep],\n [async ({ inputData }) => !inputData.isComplete && inputData.resourceType === 'tool', toolStep],\n [async ({ inputData }) => inputData.isComplete, finishStep],\n ])\n .map({\n task: {\n step: [routingStep, agentStep, workflowStep, toolStep],\n path: 'task',\n },\n isComplete: {\n step: [agentStep, workflowStep, toolStep, finishStep],\n path: 'isComplete',\n },\n completionReason: {\n step: [routingStep, agentStep, workflowStep, toolStep, finishStep],\n path: 'completionReason',\n },\n result: {\n step: [agentStep, workflowStep, toolStep, finishStep],\n path: 'result',\n },\n resourceId: {\n step: [routingStep, agentStep, workflowStep, toolStep],\n path: 'resourceId',\n },\n resourceType: {\n step: [routingStep, agentStep, workflowStep, toolStep],\n path: 'resourceType',\n },\n iteration: {\n step: [routingStep, agentStep, workflowStep, toolStep],\n path: 'iteration',\n },\n isOneOff: {\n initData: networkWorkflow,\n path: 'isOneOff',\n },\n threadId: {\n initData: networkWorkflow,\n path: 'threadId',\n },\n threadResourceId: {\n initData: networkWorkflow,\n path: 'threadResourceId',\n },\n })\n .commit();\n\n return networkWorkflow;\n }\n\n async generate(\n messages: MessageListInput,\n {\n runtimeContext,\n threadId,\n resourceId,\n }: { runtimeContext?: RuntimeContext; threadId?: string; resourceId?: string },\n ) {\n const networkWorkflow = this.createWorkflow({ runtimeContext });\n const run = networkWorkflow.createRun();\n\n const thread = await this.beforeRun({\n runtimeContext: runtimeContext || new RuntimeContext(),\n threadId: threadId || run.runId,\n resourceId: resourceId || this.name,\n messages,\n });\n\n const message = this.getLastMessage(messages);\n\n const result = await run.start({\n inputData: {\n task: message,\n resourceId: '',\n resourceType: 'none',\n iteration: 0,\n threadId: thread?.id,\n threadResourceId: thread?.resourceId,\n isOneOff: true,\n verboseIntrospection: true,\n },\n });\n\n if (result.status === 'failed') {\n throw result.error;\n }\n\n if (result.status === 'suspended') {\n throw new Error('Workflow suspended');\n }\n\n return {\n task: result.result.task,\n result: result.result.result,\n resourceId: result.result.resourceId,\n resourceType: result.result.resourceType,\n };\n }\n\n async stream(\n messages: MessageListInput,\n {\n runtimeContext,\n threadId,\n resourceId,\n }: { runtimeContext?: RuntimeContext; resourceId?: string; threadId?: string },\n ) {\n const networkWorkflow = this.createWorkflow({ runtimeContext });\n const run = networkWorkflow.createRun();\n\n const thread = await this.beforeRun({\n runtimeContext: runtimeContext || new RuntimeContext(),\n threadId: threadId || run.runId,\n resourceId: resourceId || this.name,\n messages,\n });\n\n const message = this.getLastMessage(messages);\n\n return run.stream({\n inputData: {\n task: `You are executing just one primitive based on the following: ${message}`,\n resourceId: '',\n resourceType: 'none',\n iteration: 0,\n threadResourceId: thread?.resourceId,\n threadId: thread?.id,\n isOneOff: true,\n verboseIntrospection: true,\n },\n });\n }\n}\n"]}
1
+ {"version":3,"sources":["../../../src/network/vNext/index.ts"],"names":["result"],"mappings":"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","file":"index.js","sourcesContent":["import { randomUUID } from 'crypto';\nimport { zodToJsonSchema } from '@mastra/schema-compat/zod-to-json';\nimport { z } from 'zod';\nimport { Agent, MessageList } from '../../agent';\nimport type { MessageListInput } from '../../agent/message-list';\nimport { MastraBase } from '../../base';\nimport type { MastraLanguageModel } from '../../llm/model/shared.types';\nimport { RegisteredLogger } from '../../logger';\nimport { RESOURCE_TYPES } from '../../loop/types';\nimport type { Mastra } from '../../mastra';\nimport type { MastraMessageV2, MastraMemory } from '../../memory';\nimport { RuntimeContext } from '../../runtime-context';\nimport type { Tool } from '../../tools';\nimport type { DynamicArgument } from '../../types';\nimport type { Workflow } from '../../workflows';\nimport { EMITTER_SYMBOL } from '../../workflows/constants';\nimport { createWorkflow, createStep } from '../../workflows/workflow';\n\ninterface NewAgentNetworkConfig {\n id: string;\n name: string;\n instructions: DynamicArgument<string>;\n model: DynamicArgument<MastraLanguageModel>;\n agents: DynamicArgument<Record<string, Agent>>;\n workflows?: DynamicArgument<Record<string, Workflow>>;\n tools?: DynamicArgument<Record<string, Tool<any, any, any>>>;\n memory?: DynamicArgument<MastraMemory>;\n defaultAgent?: DynamicArgument<Agent>;\n}\n\nexport class NewAgentNetwork extends MastraBase {\n id: string;\n name: string;\n #instructions: DynamicArgument<string>;\n #model: DynamicArgument<MastraLanguageModel>;\n #agents: DynamicArgument<Record<string, Agent>>;\n #defaultAgent: DynamicArgument<Agent> | undefined;\n #workflows: DynamicArgument<Record<string, Workflow>> | undefined;\n #tools: DynamicArgument<Record<string, Tool>> | undefined;\n #memory?: DynamicArgument<MastraMemory>;\n #mastra?: Mastra;\n\n constructor({\n id,\n name,\n instructions,\n model,\n agents,\n workflows,\n memory,\n tools,\n defaultAgent,\n }: NewAgentNetworkConfig) {\n super({\n component: RegisteredLogger.NETWORK,\n name: name || 'NewAgentNetwork',\n });\n\n console.warn(\n `⚠️ DEPRECATION WARNING: AgentNetwork vNext will be deprecated on September 16th, 2025 and will be removed in a future version. Please use agent.network() instead.`,\n );\n\n this.id = id;\n this.name = name;\n this.#instructions = instructions;\n this.#model = model;\n this.#agents = agents;\n this.#workflows = workflows;\n this.#memory = memory;\n this.#tools = tools;\n this.#defaultAgent = defaultAgent;\n }\n\n __registerMastra(mastra: Mastra) {\n this.#mastra = mastra;\n }\n\n private getLastMessage(messages: MessageListInput) {\n let message = '';\n if (typeof messages === 'string') {\n message = messages;\n } else {\n const lastMessage = Array.isArray(messages) ? messages[messages.length - 1] : messages;\n if (typeof lastMessage === 'string') {\n message = lastMessage;\n } else if (lastMessage && `content` in lastMessage && lastMessage?.content) {\n const lastMessageContent = lastMessage.content;\n if (typeof lastMessageContent === 'string') {\n message = lastMessageContent;\n } else if (Array.isArray(lastMessageContent)) {\n const lastPart = lastMessageContent[lastMessageContent.length - 1];\n if (lastPart?.type === 'text') {\n message = lastPart.text;\n }\n }\n }\n }\n\n return message;\n }\n\n private async beforeRun({\n runtimeContext,\n threadId,\n resourceId,\n messages,\n }: {\n runtimeContext: RuntimeContext;\n threadId: string;\n resourceId: string;\n messages: MessageListInput;\n }) {\n const memory = await this.getMemory({ runtimeContext });\n let thread = await memory?.getThreadById({ threadId });\n if (!thread) {\n thread = await memory?.createThread({\n threadId,\n title: '',\n resourceId,\n });\n }\n if (typeof messages === 'string') {\n await memory?.saveMessages({\n messages: [\n {\n id: this.#mastra?.generateId() || randomUUID(),\n type: 'text',\n role: 'user',\n content: { parts: [{ type: 'text', text: messages }], format: 2 },\n createdAt: new Date(),\n threadId: thread?.id,\n resourceId: thread?.resourceId,\n },\n ] as MastraMessageV2[],\n format: 'v2',\n });\n } else {\n const messageList = new MessageList({\n threadId: thread?.id,\n resourceId: thread?.resourceId,\n });\n messageList.add(messages, 'user');\n const messagesToSave = messageList.get.all.v2();\n\n await memory?.saveMessages({\n messages: messagesToSave,\n format: 'v2',\n });\n }\n\n return thread;\n }\n\n async getAgents({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n let agentsToUse: Record<string, Agent>;\n\n if (typeof this.#agents === 'function') {\n agentsToUse = await this.#agents({ runtimeContext: runtimeContext || new RuntimeContext() });\n } else {\n agentsToUse = this.#agents;\n }\n\n return agentsToUse;\n }\n\n async getWorkflows({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n let workflowsToUse: Record<string, Workflow>;\n\n if (typeof this.#workflows === 'function') {\n workflowsToUse = await this.#workflows({ runtimeContext: runtimeContext || new RuntimeContext() });\n } else {\n workflowsToUse = this.#workflows || {};\n }\n\n return workflowsToUse;\n }\n\n async getTools({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n let toolsToUse: Record<string, Tool>;\n\n if (typeof this.#tools === 'function') {\n toolsToUse = await this.#tools({ runtimeContext: runtimeContext || new RuntimeContext() });\n } else {\n toolsToUse = this.#tools || {};\n }\n\n return toolsToUse;\n }\n\n async getMemory({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n let memoryToUse: MastraMemory;\n\n if (!this.#memory) {\n return;\n }\n\n if (typeof this.#memory === 'function') {\n memoryToUse = await this.#memory({ runtimeContext: runtimeContext || new RuntimeContext() });\n } else {\n memoryToUse = this.#memory;\n }\n\n return memoryToUse;\n }\n\n async getInstructions({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n let instructionsToUse = this.#instructions;\n\n if (typeof instructionsToUse === 'function') {\n instructionsToUse = await instructionsToUse({ runtimeContext: runtimeContext || new RuntimeContext() });\n }\n\n return instructionsToUse;\n }\n\n async getRoutingAgent({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n const instructionsToUse = await this.getInstructions({ runtimeContext: runtimeContext || new RuntimeContext() });\n const memoryToUse = await this.getMemory({ runtimeContext: runtimeContext || new RuntimeContext() });\n const agentsToUse = await this.getAgents({ runtimeContext: runtimeContext || new RuntimeContext() });\n const workflowsToUse = await this.getWorkflows({ runtimeContext: runtimeContext || new RuntimeContext() });\n const toolsToUse = await this.getTools({ runtimeContext: runtimeContext || new RuntimeContext() });\n\n const agentList = Object.entries(agentsToUse)\n .map(([name, agent]) => {\n // Use agent name instead of description since description might not exist\n return ` - **${name}**: ${agent.getDescription()}`;\n })\n .join('\\n');\n\n const workflowList = Object.entries(workflowsToUse)\n .map(([name, workflow]) => {\n return ` - **${name}**: ${workflow.description}, input schema: ${JSON.stringify(\n zodToJsonSchema(workflow.inputSchema),\n )}`;\n })\n .join('\\n');\n\n const toolList = Object.entries(toolsToUse)\n .map(([name, tool]) => {\n return ` - **${name}**: ${tool.description}, input schema: ${JSON.stringify(\n zodToJsonSchema(tool.inputSchema || z.object({})),\n )}`;\n })\n .join('\\n');\n\n const instructions = `\n You are a router in a network of specialized AI agents. \n Your job is to decide which agent should handle each step of a task.\n\n If asking for completion of a task, make sure to follow system instructions closely.\n \n ## System Instructions\n ${instructionsToUse}\n\n You can only pick agents and workflows that are available in the lists below. Never call any agents or workflows that are not available in the lists below.\n\n ## Available Agents in Network\n ${agentList}\n\n ## Available Workflows in Network (make sure to use inputs corresponding to the input schema when calling a workflow)\n ${workflowList}\n\n ## Available Tools in Network (make sure to use inputs corresponding to the input schema when calling a tool)\n ${toolList}\n\n ${\n this.#defaultAgent\n ? `If none of the agents or workflows are appropriate, call the default agent: ${this.#defaultAgent.name}.` +\n `This should not be done lightly. You should only do this if you have exhausted all other options.`\n : ''\n }\n\n If you have multiple entries that need to be called with a workflow or agent, call them separately with each input.\n When calling a workflow, the prompt should be a JSON value that corresponds to the input schema of the workflow. The JSON value is stringified.\n When calling a tool, the prompt should be a JSON value that corresponds to the input schema of the tool. The JSON value is stringified.\n When calling an agent, the prompt should be a text value, like you would call an LLM in a chat interface.\n\n Keep in mind that the user only sees the final result of the task. When reviewing completion, you should know that the user will not see the intermediate results.\n `;\n\n return new Agent({\n name: 'routing-agent',\n instructions,\n model: this.#model,\n memory: memoryToUse,\n // @ts-ignore\n _agentNetworkAppend: true,\n });\n }\n\n async loop(\n messages: MessageListInput,\n {\n runtimeContext,\n maxIterations,\n threadId,\n resourceId,\n }: {\n runtimeContext?: RuntimeContext;\n maxIterations?: number;\n threadId?: string;\n resourceId?: string;\n },\n ) {\n const networkWorkflow = this.createWorkflow({ runtimeContext });\n\n const finalStep = createStep({\n id: 'final-step',\n inputSchema: networkWorkflow.outputSchema,\n outputSchema: networkWorkflow.outputSchema,\n execute: async ({ inputData }) => {\n if (maxIterations && inputData.iteration >= maxIterations) {\n return {\n ...inputData,\n completionReason: `Max iterations reached: ${maxIterations}`,\n };\n }\n\n return inputData;\n },\n });\n\n const mainWorkflow = createWorkflow({\n id: 'Agent-Network-Main-Workflow',\n inputSchema: z.object({\n iteration: z.number(),\n task: z.string(),\n resourceType: RESOURCE_TYPES,\n threadId: z.string().optional(),\n threadResourceId: z.string().optional(),\n }),\n outputSchema: networkWorkflow.outputSchema,\n })\n .dountil(networkWorkflow, async ({ inputData }) => {\n return inputData.isComplete || (maxIterations && inputData.iteration >= maxIterations);\n })\n .then(finalStep)\n .commit();\n\n const run = await mainWorkflow.createRunAsync();\n\n const thread = await this.beforeRun({\n runtimeContext: runtimeContext || new RuntimeContext(),\n threadId: threadId || run.runId,\n resourceId: resourceId || this.name,\n messages,\n });\n\n const message = this.getLastMessage(messages);\n\n const result = await run.start({\n inputData: {\n task: message,\n resourceType: 'none',\n iteration: 0,\n threadResourceId: thread?.resourceId,\n threadId: thread?.id,\n },\n });\n\n if (result.status === 'failed') {\n throw result.error;\n }\n\n if (result.status === 'suspended') {\n throw new Error('Workflow suspended');\n }\n\n return result;\n }\n\n async loopStream(\n messages: MessageListInput,\n {\n runtimeContext,\n maxIterations,\n threadId,\n resourceId,\n }: {\n runtimeContext?: RuntimeContext;\n maxIterations?: number;\n threadId?: string;\n resourceId?: string;\n },\n ) {\n const networkWorkflow = this.createWorkflow({ runtimeContext });\n\n const finalStep = createStep({\n id: 'final-step',\n inputSchema: networkWorkflow.outputSchema,\n outputSchema: networkWorkflow.outputSchema,\n execute: async ({ inputData }) => {\n if (maxIterations && inputData.iteration >= maxIterations) {\n return {\n ...inputData,\n completionReason: `Max iterations reached: ${maxIterations}`,\n };\n }\n\n return inputData;\n },\n });\n\n const mainWorkflow = createWorkflow({\n id: 'Agent-Network-Main-Workflow',\n inputSchema: z.object({\n iteration: z.number(),\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n result: z.string().optional(),\n threadId: z.string().optional(),\n threadResourceId: z.string().optional(),\n isOneOff: z.boolean(),\n verboseIntrospection: z.boolean(),\n }),\n outputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n completionReason: z.string().optional(),\n iteration: z.number(),\n }),\n })\n .dountil(networkWorkflow, async ({ inputData }) => {\n return inputData.isComplete || (maxIterations && inputData.iteration >= maxIterations);\n })\n .then(finalStep)\n .commit();\n\n const run = await mainWorkflow.createRunAsync();\n\n const thread = await this.beforeRun({\n runtimeContext: runtimeContext || new RuntimeContext(),\n threadId: threadId || run.runId,\n resourceId: resourceId || this.name,\n messages,\n });\n\n const message = this.getLastMessage(messages);\n\n return run.stream({\n inputData: {\n task: message,\n resourceId: '',\n resourceType: 'none',\n iteration: 0,\n threadResourceId: thread?.resourceId,\n threadId: thread?.id,\n isOneOff: false,\n verboseIntrospection: true,\n },\n });\n }\n\n createWorkflow({ runtimeContext }: { runtimeContext?: RuntimeContext }) {\n const runId = this.#mastra?.generateId() || randomUUID();\n\n const runtimeContextToUse = runtimeContext || new RuntimeContext();\n\n const routingStep = createStep({\n id: 'routing-step',\n inputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n result: z.string().optional(),\n iteration: z.number(),\n threadId: z.string().optional(),\n threadResourceId: z.string().optional(),\n isOneOff: z.boolean(),\n verboseIntrospection: z.boolean(),\n }),\n outputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n selectionReason: z.string(),\n iteration: z.number(),\n }),\n execute: async ({ inputData, getInitData }) => {\n const initData = await getInitData();\n\n const routingAgent = await this.getRoutingAgent({ runtimeContext: runtimeContextToUse });\n\n const model = await routingAgent.getModel();\n\n const completionSchema = z.object({\n isComplete: z.boolean(),\n finalResult: z.string(),\n completionReason: z.string(),\n });\n let completionResult;\n if (inputData.resourceType !== 'none' && inputData?.result) {\n // Check if the task is complete\n const completionPrompt = `\n The ${inputData.resourceType} ${inputData.resourceId} has contributed to the task.\n This is the result from the agent: ${inputData.result}\n\n You need to evaluate that our task is complete. Pay very close attention to the SYSTEM INSTRUCTIONS for when the task is considered complete. Only return true if the task is complete according to the system instructions. Pay close attention to the finalResult and completionReason.\n Original task: ${inputData.task}\n\n {\n \"isComplete\": boolean,\n \"completionReason\": string,\n \"finalResult\": string\n }\n `;\n\n if (model.specificationVersion === 'v2') {\n completionResult = await routingAgent.generateVNext([{ role: 'assistant', content: completionPrompt }], {\n output: completionSchema,\n threadId: initData?.threadId ?? runId,\n resourceId: initData?.threadResourceId ?? this.name,\n runtimeContext: runtimeContextToUse,\n });\n } else {\n completionResult = await routingAgent.generate([{ role: 'assistant', content: completionPrompt }], {\n output: completionSchema,\n threadId: initData?.threadId ?? runId,\n resourceId: initData?.threadResourceId ?? this.name,\n runtimeContext: runtimeContextToUse,\n });\n }\n\n if (completionResult.object.isComplete) {\n return {\n task: inputData.task,\n resourceId: '',\n resourceType: 'none' as z.infer<typeof RESOURCE_TYPES>,\n prompt: '',\n result: completionResult.object.finalResult,\n isComplete: true,\n selectionReason: completionResult.object.completionReason,\n iteration: inputData.iteration + 1,\n };\n }\n }\n\n let result;\n const prompt: MessageListInput = [\n {\n role: 'assistant',\n content: `\n ${inputData.isOneOff ? 'You are executing just one primitive based on the user task. Make sure to pick the primitive that is the best suited to accomplish the whole task. Primitives that execute only part of the task should be avoided.' : 'You will be calling just *one* primitive at a time to accomplish the user task, every call to you is one decision in the process of accomplishing the user task. Make sure to pick primitives that are the best suited to accomplish the whole task. Completeness is the highest priority.'}\n\n The user has given you the following task: \n ${inputData.task}\n ${completionResult ? `\\n\\n${completionResult.object.finalResult}` : ''}\n\n Please select the most appropriate primitive to handle this task and the prompt to be sent to the primitive.\n If you are calling the same agent again, make sure to adjust the prompt to be more specific.\n\n {\n \"resourceId\": string,\n \"resourceType\": \"agent\" | \"workflow\" | \"tool\",\n \"prompt\": string,\n \"selectionReason\": string\n }\n\n The 'selectionReason' property should explain why you picked the primitive${inputData.verboseIntrospection ? ', as well as why the other primitives were not picked.' : '.'}\n `,\n },\n ];\n\n const options = {\n output: z.object({\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n selectionReason: z.string(),\n }),\n threadId: initData?.threadId ?? runId,\n resourceId: initData?.threadResourceId ?? this.name,\n runtimeContext: runtimeContextToUse,\n };\n\n if (model.specificationVersion === 'v2') {\n result = await routingAgent.generateVNext(prompt, options);\n } else {\n result = await routingAgent.generate(prompt, options);\n }\n\n return {\n task: inputData.task,\n result: '',\n resourceId: result.object.resourceId,\n resourceType: result.object.resourceType,\n prompt: result.object.prompt,\n isComplete: result.object.resourceId === 'none' && result.object.resourceType === 'none' ? true : false,\n selectionReason: result.object.selectionReason,\n iteration: inputData.iteration + 1,\n };\n },\n });\n\n const agentStep = createStep({\n id: 'agent-step',\n inputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n selectionReason: z.string(),\n iteration: z.number(),\n }),\n outputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n result: z.string(),\n isComplete: z.boolean().optional(),\n iteration: z.number(),\n }),\n execute: async ({ inputData, [EMITTER_SYMBOL]: emitter, getInitData }) => {\n const agentsMap = await this.getAgents({ runtimeContext: runtimeContextToUse });\n const agentId = inputData.resourceId;\n\n const agent = agentsMap[inputData.resourceId];\n\n if (!agent) {\n throw new Error(`Agent ${agentId} not found`);\n }\n\n let streamPromise = {} as {\n promise: Promise<string>;\n resolve: (value: string) => void;\n reject: (reason?: any) => void;\n };\n\n streamPromise.promise = new Promise((resolve, reject) => {\n streamPromise.resolve = resolve;\n streamPromise.reject = reject;\n });\n const toolData = {\n name: agent.name,\n args: inputData,\n };\n await emitter.emit('watch-v2', {\n type: 'tool-call-streaming-start',\n ...toolData,\n });\n\n const model = await agent.getModel();\n\n let result;\n\n if (model.specificationVersion === 'v2') {\n result = await agent.streamVNext(inputData.prompt, {\n // resourceId: inputData.resourceId,\n // threadId: inputData.threadId,\n runtimeContext: runtimeContextToUse,\n onFinish: result => {\n streamPromise.resolve(result.text);\n },\n });\n\n for await (const chunk of result.fullStream) {\n switch (chunk.type) {\n case 'text-delta':\n await emitter.emit('watch-v2', {\n type: 'tool-call-delta',\n ...toolData,\n argsTextDelta: chunk.payload.text,\n });\n break;\n\n case 'step-start':\n case 'step-finish':\n case 'finish':\n case 'tool-call':\n case 'tool-result':\n case 'tool-call-input-streaming-start':\n case 'tool-call-delta':\n break;\n case 'source':\n case 'file':\n default:\n await emitter.emit('watch-v2', chunk);\n break;\n }\n }\n } else {\n result = await agent.stream(inputData.prompt, {\n // resourceId: inputData.resourceId,\n // threadId: inputData.threadId,\n runtimeContext: runtimeContextToUse,\n onFinish: result => {\n streamPromise.resolve(result.text);\n },\n });\n\n for await (const chunk of result.fullStream) {\n switch (chunk.type) {\n case 'text-delta':\n await emitter.emit('watch-v2', {\n type: 'tool-call-delta',\n ...toolData,\n argsTextDelta: chunk.textDelta,\n });\n break;\n\n case 'step-start':\n case 'step-finish':\n case 'finish':\n case 'tool-call':\n case 'tool-result':\n case 'tool-call-streaming-start':\n case 'tool-call-delta':\n break;\n case 'source':\n case 'file':\n default:\n await emitter.emit('watch-v2', chunk);\n break;\n }\n }\n }\n\n const finalResult = await streamPromise.promise;\n\n const memory = await this.getMemory({ runtimeContext: runtimeContext || new RuntimeContext() });\n const initData = await getInitData();\n await memory?.saveMessages({\n messages: [\n {\n id: this.#mastra?.generateId() || randomUUID(),\n type: 'text',\n role: 'assistant',\n content: { parts: [{ type: 'text', text: finalResult }], format: 2 },\n createdAt: new Date(),\n threadId: initData.threadId || runId,\n resourceId: initData.threadResourceId || this.name,\n },\n ] as MastraMessageV2[],\n format: 'v2',\n });\n\n return {\n task: inputData.task,\n resourceId: inputData.resourceId,\n resourceType: inputData.resourceType,\n result: finalResult,\n isComplete: false,\n iteration: inputData.iteration,\n };\n },\n });\n\n const workflowStep = createStep({\n id: 'workflow-step',\n inputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n selectionReason: z.string(),\n iteration: z.number(),\n }),\n outputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n result: z.string(),\n isComplete: z.boolean().optional(),\n iteration: z.number(),\n }),\n execute: async ({ inputData, [EMITTER_SYMBOL]: emitter, getInitData }) => {\n const workflowsMap = await this.getWorkflows({ runtimeContext: runtimeContextToUse });\n const wf = workflowsMap[inputData.resourceId];\n\n if (!wf) {\n throw new Error(`Workflow ${inputData.resourceId} not found`);\n }\n\n let input;\n try {\n input = JSON.parse(inputData.prompt);\n } catch (e: unknown) {\n console.error(e);\n throw new Error(`Invalid task input: ${inputData.task}`);\n }\n\n let streamPromise = {} as {\n promise: Promise<any>;\n resolve: (value: any) => void;\n reject: (reason?: any) => void;\n };\n\n streamPromise.promise = new Promise((resolve, reject) => {\n streamPromise.resolve = resolve;\n streamPromise.reject = reject;\n });\n const toolData = {\n name: wf.name,\n args: inputData,\n };\n await emitter.emit('watch-v2', {\n type: 'tool-call-streaming-start',\n ...toolData,\n });\n const run = await wf.createRunAsync();\n const { stream, getWorkflowState } = run.stream({\n inputData: input,\n runtimeContext: runtimeContextToUse,\n });\n\n let result: any;\n let stepResults: Record<string, any> = {};\n for await (const chunk of stream) {\n const c: any = chunk;\n // const c = chunk;\n switch (c.type) {\n case 'text-delta':\n await emitter.emit('watch-v2', {\n type: 'tool-call-delta',\n ...toolData,\n argsTextDelta: c.textDelta,\n });\n break;\n\n case 'step-result':\n if (c?.payload?.output) {\n result = c?.payload?.output;\n stepResults[c?.payload?.id] = c?.payload?.output;\n }\n await emitter.emit('watch-v2', c);\n break;\n case 'finish':\n streamPromise.resolve(result);\n break;\n\n case 'start':\n case 'step-start':\n case 'step-finish':\n case 'tool-call':\n case 'tool-result':\n case 'tool-call-streaming-start':\n case 'tool-call-delta':\n case 'source':\n case 'file':\n default:\n await emitter.emit('watch-v2', c);\n break;\n }\n }\n\n let runSuccess = true;\n const runResult = await streamPromise.promise;\n\n const workflowState = await getWorkflowState();\n if (workflowState.status === 'failed') {\n runSuccess = false;\n }\n\n const finalResult = JSON.stringify({\n runId: run.runId,\n runResult,\n runSuccess,\n });\n\n const memory = await this.getMemory({ runtimeContext: runtimeContext || new RuntimeContext() });\n const initData = await getInitData();\n await memory?.saveMessages({\n messages: [\n {\n id: this.#mastra?.generateId() || randomUUID(),\n type: 'text',\n role: 'assistant',\n content: { parts: [{ type: 'text', text: finalResult }], format: 2 },\n createdAt: new Date(),\n threadId: initData.threadId || runId,\n resourceId: initData.threadResourceId || this.name,\n },\n ] as MastraMessageV2[],\n format: 'v2',\n });\n\n return {\n result: finalResult || '',\n task: inputData.task,\n resourceId: inputData.resourceId,\n resourceType: inputData.resourceType,\n isComplete: false,\n iteration: inputData.iteration,\n };\n },\n });\n\n const toolStep = createStep({\n id: 'toolStep',\n inputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n selectionReason: z.string(),\n iteration: z.number(),\n }),\n outputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n result: z.string(),\n isComplete: z.boolean().optional(),\n iteration: z.number(),\n }),\n execute: async ({ inputData, getInitData }) => {\n const toolsMap = await this.getTools({ runtimeContext: runtimeContextToUse });\n const tool = toolsMap[inputData.resourceId];\n\n if (!tool) {\n throw new Error(`Tool ${inputData.resourceId} not found`);\n }\n\n if (!tool.execute) {\n throw new Error(`Tool ${inputData.resourceId} does not have an execute function`);\n }\n\n let inputDataToUse: any;\n try {\n inputDataToUse = JSON.parse(inputData.prompt);\n } catch (e: unknown) {\n console.error(e);\n throw new Error(`Invalid task input: ${inputData.task}`);\n }\n\n const finalResult: any = await tool.execute({\n runtimeContext: runtimeContextToUse,\n mastra: this.#mastra,\n resourceId: inputData.resourceId,\n threadId: runId,\n runId,\n context: inputDataToUse,\n // TODO: Pass proper tracing context when network supports tracing\n tracingContext: { currentSpan: undefined },\n });\n\n const memory = await this.getMemory({ runtimeContext: runtimeContext || new RuntimeContext() });\n const initData = await getInitData();\n await memory?.saveMessages({\n messages: [\n {\n id: this.#mastra?.generateId() || randomUUID(),\n type: 'text',\n role: 'assistant',\n content: { parts: [{ type: 'text', text: JSON.stringify(finalResult) }], format: 2 },\n createdAt: new Date(),\n threadId: initData.threadId || runId,\n resourceId: initData.threadResourceId || this.name,\n },\n ] as MastraMessageV2[],\n format: 'v2',\n });\n\n return {\n task: inputData.task,\n resourceId: inputData.resourceId,\n resourceType: inputData.resourceType,\n result: finalResult,\n isComplete: false,\n iteration: inputData.iteration,\n };\n },\n });\n\n const finishStep = createStep({\n id: 'finish-step',\n inputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n selectionReason: z.string(),\n iteration: z.number(),\n }),\n outputSchema: z.object({\n task: z.string(),\n result: z.string(),\n isComplete: z.boolean(),\n iteration: z.number(),\n }),\n execute: async ({ inputData }) => {\n return {\n task: inputData.task,\n result: inputData.result,\n isComplete: !!inputData.isComplete,\n iteration: inputData.iteration,\n };\n },\n });\n\n const networkWorkflow = createWorkflow({\n id: 'Agent-Network-Outer-Workflow',\n inputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n result: z.string().optional(),\n iteration: z.number(),\n threadId: z.string().optional(),\n threadResourceId: z.string().optional(),\n isOneOff: z.boolean(),\n verboseIntrospection: z.boolean(),\n }),\n outputSchema: z.object({\n task: z.string(),\n resourceId: z.string(),\n resourceType: RESOURCE_TYPES,\n prompt: z.string(),\n result: z.string(),\n isComplete: z.boolean().optional(),\n completionReason: z.string().optional(),\n iteration: z.number(),\n threadId: z.string().optional(),\n threadResourceId: z.string().optional(),\n isOneOff: z.boolean(),\n }),\n });\n\n networkWorkflow\n .then(routingStep)\n .branch([\n [async ({ inputData }) => !inputData.isComplete && inputData.resourceType === 'agent', agentStep],\n [async ({ inputData }) => !inputData.isComplete && inputData.resourceType === 'workflow', workflowStep],\n [async ({ inputData }) => !inputData.isComplete && inputData.resourceType === 'tool', toolStep],\n [async ({ inputData }) => inputData.isComplete, finishStep],\n ])\n .map({\n task: {\n step: [routingStep, agentStep, workflowStep, toolStep],\n path: 'task',\n },\n isComplete: {\n step: [agentStep, workflowStep, toolStep, finishStep],\n path: 'isComplete',\n },\n completionReason: {\n step: [routingStep, agentStep, workflowStep, toolStep, finishStep],\n path: 'completionReason',\n },\n result: {\n step: [agentStep, workflowStep, toolStep, finishStep],\n path: 'result',\n },\n resourceId: {\n step: [routingStep, agentStep, workflowStep, toolStep],\n path: 'resourceId',\n },\n resourceType: {\n step: [routingStep, agentStep, workflowStep, toolStep],\n path: 'resourceType',\n },\n iteration: {\n step: [routingStep, agentStep, workflowStep, toolStep],\n path: 'iteration',\n },\n isOneOff: {\n initData: networkWorkflow,\n path: 'isOneOff',\n },\n threadId: {\n initData: networkWorkflow,\n path: 'threadId',\n },\n threadResourceId: {\n initData: networkWorkflow,\n path: 'threadResourceId',\n },\n })\n .commit();\n\n return networkWorkflow;\n }\n\n async generate(\n messages: MessageListInput,\n {\n runtimeContext,\n threadId,\n resourceId,\n }: { runtimeContext?: RuntimeContext; threadId?: string; resourceId?: string },\n ) {\n const networkWorkflow = this.createWorkflow({ runtimeContext });\n const run = await networkWorkflow.createRunAsync();\n\n const thread = await this.beforeRun({\n runtimeContext: runtimeContext || new RuntimeContext(),\n threadId: threadId || run.runId,\n resourceId: resourceId || this.name,\n messages,\n });\n\n const message = this.getLastMessage(messages);\n\n const result = await run.start({\n inputData: {\n task: message,\n resourceId: '',\n resourceType: 'none',\n iteration: 0,\n threadId: thread?.id,\n threadResourceId: thread?.resourceId,\n isOneOff: true,\n verboseIntrospection: true,\n },\n });\n\n if (result.status === 'failed') {\n throw result.error;\n }\n\n if (result.status === 'suspended') {\n throw new Error('Workflow suspended');\n }\n\n return {\n task: result.result.task,\n result: result.result.result,\n resourceId: result.result.resourceId,\n resourceType: result.result.resourceType,\n };\n }\n\n async stream(\n messages: MessageListInput,\n {\n runtimeContext,\n threadId,\n resourceId,\n }: { runtimeContext?: RuntimeContext; resourceId?: string; threadId?: string },\n ) {\n const networkWorkflow = this.createWorkflow({ runtimeContext });\n const run = await networkWorkflow.createRunAsync();\n\n const thread = await this.beforeRun({\n runtimeContext: runtimeContext || new RuntimeContext(),\n threadId: threadId || run.runId,\n resourceId: resourceId || this.name,\n messages,\n });\n\n const message = this.getLastMessage(messages);\n\n return run.stream({\n inputData: {\n task: `You are executing just one primitive based on the following: ${message}`,\n resourceId: '',\n resourceType: 'none',\n iteration: 0,\n threadResourceId: thread?.resourceId,\n threadId: thread?.id,\n isOneOff: true,\n verboseIntrospection: true,\n },\n });\n }\n}\n"]}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkYLR7PB3B_cjs = require('../chunk-YLR7PB3B.cjs');
3
+ var chunkBGAJ72HJ_cjs = require('../chunk-BGAJ72HJ.cjs');
4
4
  var lite = require('js-tiktoken/lite');
5
5
  var o200k_base = require('js-tiktoken/ranks/o200k_base');
6
6
  var zod = require('zod');
@@ -271,7 +271,7 @@ var SystemPromptScrubber = class {
271
271
  this.placeholderText = options.placeholderText || "[SYSTEM_PROMPT]";
272
272
  this.instructions = options.instructions || this.getDefaultInstructions();
273
273
  this.model = options.model;
274
- this.detectionAgent = new chunkYLR7PB3B_cjs.Agent({
274
+ this.detectionAgent = new chunkBGAJ72HJ_cjs.Agent({
275
275
  name: "system-prompt-detector",
276
276
  model: this.model,
277
277
  instructions: this.instructions
@@ -499,27 +499,27 @@ Be thorough but avoid false positives. Only flag content that genuinely represen
499
499
 
500
500
  Object.defineProperty(exports, "LanguageDetector", {
501
501
  enumerable: true,
502
- get: function () { return chunkYLR7PB3B_cjs.LanguageDetector; }
502
+ get: function () { return chunkBGAJ72HJ_cjs.LanguageDetector; }
503
503
  });
504
504
  Object.defineProperty(exports, "ModerationProcessor", {
505
505
  enumerable: true,
506
- get: function () { return chunkYLR7PB3B_cjs.ModerationProcessor; }
506
+ get: function () { return chunkBGAJ72HJ_cjs.ModerationProcessor; }
507
507
  });
508
508
  Object.defineProperty(exports, "PIIDetector", {
509
509
  enumerable: true,
510
- get: function () { return chunkYLR7PB3B_cjs.PIIDetector; }
510
+ get: function () { return chunkBGAJ72HJ_cjs.PIIDetector; }
511
511
  });
512
512
  Object.defineProperty(exports, "PromptInjectionDetector", {
513
513
  enumerable: true,
514
- get: function () { return chunkYLR7PB3B_cjs.PromptInjectionDetector; }
514
+ get: function () { return chunkBGAJ72HJ_cjs.PromptInjectionDetector; }
515
515
  });
516
516
  Object.defineProperty(exports, "StructuredOutputProcessor", {
517
517
  enumerable: true,
518
- get: function () { return chunkYLR7PB3B_cjs.StructuredOutputProcessor; }
518
+ get: function () { return chunkBGAJ72HJ_cjs.StructuredOutputProcessor; }
519
519
  });
520
520
  Object.defineProperty(exports, "UnicodeNormalizer", {
521
521
  enumerable: true,
522
- get: function () { return chunkYLR7PB3B_cjs.UnicodeNormalizer; }
522
+ get: function () { return chunkBGAJ72HJ_cjs.UnicodeNormalizer; }
523
523
  });
524
524
  exports.BatchPartsProcessor = BatchPartsProcessor;
525
525
  exports.SystemPromptScrubber = SystemPromptScrubber;
@@ -1,5 +1,5 @@
1
- import { Agent } from '../chunk-CF3TI576.js';
2
- export { LanguageDetector, ModerationProcessor, PIIDetector, PromptInjectionDetector, StructuredOutputProcessor, UnicodeNormalizer } from '../chunk-CF3TI576.js';
1
+ import { Agent } from '../chunk-UWUM3F3X.js';
2
+ export { LanguageDetector, ModerationProcessor, PIIDetector, PromptInjectionDetector, StructuredOutputProcessor, UnicodeNormalizer } from '../chunk-UWUM3F3X.js';
3
3
  import { Tiktoken } from 'js-tiktoken/lite';
4
4
  import o200k_base from 'js-tiktoken/ranks/o200k_base';
5
5
  import { z } from 'zod';
@@ -1,20 +1,20 @@
1
1
  'use strict';
2
2
 
3
- var chunkVVH4BOE4_cjs = require('../chunk-VVH4BOE4.cjs');
3
+ var chunk6MDSS7WL_cjs = require('../chunk-6MDSS7WL.cjs');
4
4
 
5
5
 
6
6
 
7
7
  Object.defineProperty(exports, "CohereRelevanceScorer", {
8
8
  enumerable: true,
9
- get: function () { return chunkVVH4BOE4_cjs.CohereRelevanceScorer; }
9
+ get: function () { return chunk6MDSS7WL_cjs.CohereRelevanceScorer; }
10
10
  });
11
11
  Object.defineProperty(exports, "MastraAgentRelevanceScorer", {
12
12
  enumerable: true,
13
- get: function () { return chunkVVH4BOE4_cjs.MastraAgentRelevanceScorer; }
13
+ get: function () { return chunk6MDSS7WL_cjs.MastraAgentRelevanceScorer; }
14
14
  });
15
15
  Object.defineProperty(exports, "createSimilarityPrompt", {
16
16
  enumerable: true,
17
- get: function () { return chunkVVH4BOE4_cjs.createSimilarityPrompt; }
17
+ get: function () { return chunk6MDSS7WL_cjs.createSimilarityPrompt; }
18
18
  });
19
19
  //# sourceMappingURL=index.cjs.map
20
20
  //# sourceMappingURL=index.cjs.map
@@ -1,3 +1,3 @@
1
- export { CohereRelevanceScorer, MastraAgentRelevanceScorer, createSimilarityPrompt } from '../chunk-LVKX346H.js';
1
+ export { CohereRelevanceScorer, MastraAgentRelevanceScorer, createSimilarityPrompt } from '../chunk-XKVDOO2O.js';
2
2
  //# sourceMappingURL=index.js.map
3
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/scores/base.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/scores/base.ts"],"names":[],"mappings":"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"}
@@ -1,36 +1,36 @@
1
1
  'use strict';
2
2
 
3
- var chunkFTDM75SW_cjs = require('../chunk-FTDM75SW.cjs');
3
+ var chunkX3MOJJYH_cjs = require('../chunk-X3MOJJYH.cjs');
4
4
 
5
5
 
6
6
 
7
7
  Object.defineProperty(exports, "MastraScorer", {
8
8
  enumerable: true,
9
- get: function () { return chunkFTDM75SW_cjs.MastraScorer; }
9
+ get: function () { return chunkX3MOJJYH_cjs.MastraScorer; }
10
10
  });
11
11
  Object.defineProperty(exports, "createScorer", {
12
12
  enumerable: true,
13
- get: function () { return chunkFTDM75SW_cjs.createScorer; }
13
+ get: function () { return chunkX3MOJJYH_cjs.createScorer; }
14
14
  });
15
15
  Object.defineProperty(exports, "runExperiment", {
16
16
  enumerable: true,
17
- get: function () { return chunkFTDM75SW_cjs.runExperiment; }
17
+ get: function () { return chunkX3MOJJYH_cjs.runExperiment; }
18
18
  });
19
19
  Object.defineProperty(exports, "saveScorePayloadSchema", {
20
20
  enumerable: true,
21
- get: function () { return chunkFTDM75SW_cjs.saveScorePayloadSchema; }
21
+ get: function () { return chunkX3MOJJYH_cjs.saveScorePayloadSchema; }
22
22
  });
23
23
  Object.defineProperty(exports, "scoreResultSchema", {
24
24
  enumerable: true,
25
- get: function () { return chunkFTDM75SW_cjs.scoreResultSchema; }
25
+ get: function () { return chunkX3MOJJYH_cjs.scoreResultSchema; }
26
26
  });
27
27
  Object.defineProperty(exports, "scoringExtractStepResultSchema", {
28
28
  enumerable: true,
29
- get: function () { return chunkFTDM75SW_cjs.scoringExtractStepResultSchema; }
29
+ get: function () { return chunkX3MOJJYH_cjs.scoringExtractStepResultSchema; }
30
30
  });
31
31
  Object.defineProperty(exports, "scoringValueSchema", {
32
32
  enumerable: true,
33
- get: function () { return chunkFTDM75SW_cjs.scoringValueSchema; }
33
+ get: function () { return chunkX3MOJJYH_cjs.scoringValueSchema; }
34
34
  });
35
35
  //# sourceMappingURL=index.cjs.map
36
36
  //# sourceMappingURL=index.cjs.map
@@ -1,3 +1,3 @@
1
- export { MastraScorer, createScorer, runExperiment, saveScorePayloadSchema, scoreResultSchema, scoringExtractStepResultSchema, scoringValueSchema } from '../chunk-ES5UWPHJ.js';
1
+ export { MastraScorer, createScorer, runExperiment, saveScorePayloadSchema, scoreResultSchema, scoringExtractStepResultSchema, scoringValueSchema } from '../chunk-TUXCO343.js';
2
2
  //# sourceMappingURL=index.js.map
3
3
  //# sourceMappingURL=index.js.map
@@ -129,5 +129,12 @@ export type ServerConfig = {
129
129
  * Authentication configuration for the server
130
130
  */
131
131
  experimental_auth?: MastraAuthConfig<any> | MastraAuthProvider<any>;
132
+ /**
133
+ * If you want to run `mastra dev` with HTTPS, you can run it with the `--https` flag and provide the key and cert files here.
134
+ */
135
+ https?: {
136
+ key: Buffer;
137
+ cert: Buffer;
138
+ };
132
139
  };
133
140
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/server/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/server/types.ts"],"names":[],"mappings":"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"}