@mastra/core 0.6.4 → 0.6.5-alpha.0

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.
@@ -1,10 +1,10 @@
1
1
  'use strict';
2
2
 
3
- var chunkYLLXAKL2_cjs = require('../chunk-YLLXAKL2.cjs');
3
+ var chunkMHS4VFX4_cjs = require('../chunk-MHS4VFX4.cjs');
4
4
 
5
5
 
6
6
 
7
7
  Object.defineProperty(exports, "Agent", {
8
8
  enumerable: true,
9
- get: function () { return chunkYLLXAKL2_cjs.Agent; }
9
+ get: function () { return chunkMHS4VFX4_cjs.Agent; }
10
10
  });
@@ -1 +1 @@
1
- export { Agent } from '../chunk-PRNJCD6I.js';
1
+ export { Agent } from '../chunk-FVWRLDKM.js';
@@ -1,4 +1,4 @@
1
- import { Agent } from './chunk-PRNJCD6I.js';
1
+ import { Agent } from './chunk-FVWRLDKM.js';
2
2
  import { CohereClient } from 'cohere-ai';
3
3
 
4
4
  var CohereRelevanceScorer = class {
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkYLLXAKL2_cjs = require('./chunk-YLLXAKL2.cjs');
3
+ var chunkMHS4VFX4_cjs = require('./chunk-MHS4VFX4.cjs');
4
4
  var cohereAi = require('cohere-ai');
5
5
 
6
6
  var CohereRelevanceScorer = class {
@@ -38,7 +38,7 @@ Relevance score (0-1):`;
38
38
  var MastraAgentRelevanceScorer = class {
39
39
  agent;
40
40
  constructor(name, model) {
41
- this.agent = new chunkYLLXAKL2_cjs.Agent({
41
+ this.agent = new chunkMHS4VFX4_cjs.Agent({
42
42
  name: `Relevance Scorer ${name}`,
43
43
  instructions: `You are a specialized agent for evaluating the relevance of text to queries.
44
44
  Your task is to rate how well a text passage answers a given query.
@@ -248,7 +248,7 @@ var MastraLLM = class extends MastraLLMBase {
248
248
  }
249
249
  }
250
250
  return await generateText({
251
- messages,
251
+ messages: this.convertToUIMessages(messages),
252
252
  ...argsForExecute,
253
253
  experimental_telemetry: {
254
254
  ...this.experimental_telemetry,
@@ -325,7 +325,7 @@ var MastraLLM = class extends MastraLLMBase {
325
325
  schema = jsonSchema(structuredOutput);
326
326
  }
327
327
  return await generateObject({
328
- messages,
328
+ messages: this.convertToUIMessages(messages),
329
329
  ...argsForExecute,
330
330
  output,
331
331
  schema,
@@ -423,7 +423,7 @@ var MastraLLM = class extends MastraLLMBase {
423
423
  }
424
424
  }
425
425
  return await streamText({
426
- messages,
426
+ messages: this.convertToUIMessages(messages),
427
427
  ...argsForExecute,
428
428
  experimental_telemetry: {
429
429
  ...this.experimental_telemetry,
@@ -519,7 +519,7 @@ var MastraLLM = class extends MastraLLMBase {
519
519
  schema = jsonSchema(structuredOutput);
520
520
  }
521
521
  return streamObject({
522
- messages,
522
+ messages: this.convertToUIMessages(messages),
523
523
  ...argsForExecute,
524
524
  output,
525
525
  schema,
@@ -609,6 +609,82 @@ var MastraLLM = class extends MastraLLMBase {
609
609
  ...rest
610
610
  });
611
611
  }
612
+ convertToUIMessages(messages) {
613
+ function addToolMessageToChat({
614
+ toolMessage,
615
+ messages: messages2,
616
+ toolResultContents
617
+ }) {
618
+ const chatMessages2 = messages2.map(message => {
619
+ if (message.toolInvocations) {
620
+ return {
621
+ ...message,
622
+ toolInvocations: message.toolInvocations.map(toolInvocation => {
623
+ const toolResult = toolMessage.content.find(tool => tool.toolCallId === toolInvocation.toolCallId);
624
+ if (toolResult) {
625
+ return {
626
+ ...toolInvocation,
627
+ state: "result",
628
+ result: toolResult.result
629
+ };
630
+ }
631
+ return toolInvocation;
632
+ })
633
+ };
634
+ }
635
+ return message;
636
+ });
637
+ const resultContents = [...toolResultContents, ...toolMessage.content];
638
+ return {
639
+ chatMessages: chatMessages2,
640
+ toolResultContents: resultContents
641
+ };
642
+ }
643
+ const {
644
+ chatMessages
645
+ } = messages.reduce((obj, message) => {
646
+ if (message.role === "tool") {
647
+ return addToolMessageToChat({
648
+ toolMessage: message,
649
+ messages: obj.chatMessages,
650
+ toolResultContents: obj.toolResultContents
651
+ });
652
+ }
653
+ let textContent = "";
654
+ let toolInvocations = [];
655
+ if (typeof message.content === "string") {
656
+ textContent = message.content;
657
+ } else if (typeof message.content === "number") {
658
+ textContent = String(message.content);
659
+ } else if (Array.isArray(message.content)) {
660
+ for (const content of message.content) {
661
+ if (content.type === "text") {
662
+ textContent += content.text;
663
+ } else if (content.type === "tool-call") {
664
+ const toolResult = obj.toolResultContents.find(tool => tool.toolCallId === content.toolCallId);
665
+ toolInvocations.push({
666
+ state: toolResult ? "result" : "call",
667
+ toolCallId: content.toolCallId,
668
+ toolName: content.toolName,
669
+ args: content.args,
670
+ result: toolResult?.result
671
+ });
672
+ }
673
+ }
674
+ }
675
+ obj.chatMessages.push({
676
+ id: message.id,
677
+ role: message.role,
678
+ content: textContent,
679
+ toolInvocations
680
+ });
681
+ return obj;
682
+ }, {
683
+ chatMessages: [],
684
+ toolResultContents: []
685
+ });
686
+ return chatMessages;
687
+ }
612
688
  };
613
689
 
614
690
  // src/agent/index.ts
@@ -250,7 +250,7 @@ var MastraLLM = class extends MastraLLMBase {
250
250
  }
251
251
  }
252
252
  return await ai.generateText({
253
- messages,
253
+ messages: this.convertToUIMessages(messages),
254
254
  ...argsForExecute,
255
255
  experimental_telemetry: {
256
256
  ...this.experimental_telemetry,
@@ -327,7 +327,7 @@ var MastraLLM = class extends MastraLLMBase {
327
327
  schema = ai.jsonSchema(structuredOutput);
328
328
  }
329
329
  return await ai.generateObject({
330
- messages,
330
+ messages: this.convertToUIMessages(messages),
331
331
  ...argsForExecute,
332
332
  output,
333
333
  schema,
@@ -425,7 +425,7 @@ var MastraLLM = class extends MastraLLMBase {
425
425
  }
426
426
  }
427
427
  return await ai.streamText({
428
- messages,
428
+ messages: this.convertToUIMessages(messages),
429
429
  ...argsForExecute,
430
430
  experimental_telemetry: {
431
431
  ...this.experimental_telemetry,
@@ -521,7 +521,7 @@ var MastraLLM = class extends MastraLLMBase {
521
521
  schema = ai.jsonSchema(structuredOutput);
522
522
  }
523
523
  return ai.streamObject({
524
- messages,
524
+ messages: this.convertToUIMessages(messages),
525
525
  ...argsForExecute,
526
526
  output,
527
527
  schema,
@@ -611,6 +611,82 @@ var MastraLLM = class extends MastraLLMBase {
611
611
  ...rest
612
612
  });
613
613
  }
614
+ convertToUIMessages(messages) {
615
+ function addToolMessageToChat({
616
+ toolMessage,
617
+ messages: messages2,
618
+ toolResultContents
619
+ }) {
620
+ const chatMessages2 = messages2.map(message => {
621
+ if (message.toolInvocations) {
622
+ return {
623
+ ...message,
624
+ toolInvocations: message.toolInvocations.map(toolInvocation => {
625
+ const toolResult = toolMessage.content.find(tool => tool.toolCallId === toolInvocation.toolCallId);
626
+ if (toolResult) {
627
+ return {
628
+ ...toolInvocation,
629
+ state: "result",
630
+ result: toolResult.result
631
+ };
632
+ }
633
+ return toolInvocation;
634
+ })
635
+ };
636
+ }
637
+ return message;
638
+ });
639
+ const resultContents = [...toolResultContents, ...toolMessage.content];
640
+ return {
641
+ chatMessages: chatMessages2,
642
+ toolResultContents: resultContents
643
+ };
644
+ }
645
+ const {
646
+ chatMessages
647
+ } = messages.reduce((obj, message) => {
648
+ if (message.role === "tool") {
649
+ return addToolMessageToChat({
650
+ toolMessage: message,
651
+ messages: obj.chatMessages,
652
+ toolResultContents: obj.toolResultContents
653
+ });
654
+ }
655
+ let textContent = "";
656
+ let toolInvocations = [];
657
+ if (typeof message.content === "string") {
658
+ textContent = message.content;
659
+ } else if (typeof message.content === "number") {
660
+ textContent = String(message.content);
661
+ } else if (Array.isArray(message.content)) {
662
+ for (const content of message.content) {
663
+ if (content.type === "text") {
664
+ textContent += content.text;
665
+ } else if (content.type === "tool-call") {
666
+ const toolResult = obj.toolResultContents.find(tool => tool.toolCallId === content.toolCallId);
667
+ toolInvocations.push({
668
+ state: toolResult ? "result" : "call",
669
+ toolCallId: content.toolCallId,
670
+ toolName: content.toolName,
671
+ args: content.args,
672
+ result: toolResult?.result
673
+ });
674
+ }
675
+ }
676
+ }
677
+ obj.chatMessages.push({
678
+ id: message.id,
679
+ role: message.role,
680
+ content: textContent,
681
+ toolInvocations
682
+ });
683
+ return obj;
684
+ }, {
685
+ chatMessages: [],
686
+ toolResultContents: []
687
+ });
688
+ return chatMessages;
689
+ }
614
690
  };
615
691
 
616
692
  // src/agent/index.ts
package/dist/index.cjs CHANGED
@@ -6,9 +6,9 @@ var chunkXLSROQ26_cjs = require('./chunk-XLSROQ26.cjs');
6
6
  var chunkYXJQFZOW_cjs = require('./chunk-YXJQFZOW.cjs');
7
7
  var chunk2DKUBXLZ_cjs = require('./chunk-2DKUBXLZ.cjs');
8
8
  var chunkRUA6BSB6_cjs = require('./chunk-RUA6BSB6.cjs');
9
- var chunkYTP2MMIM_cjs = require('./chunk-YTP2MMIM.cjs');
9
+ var chunkBYBMTU6U_cjs = require('./chunk-BYBMTU6U.cjs');
10
10
  var chunkWVVKLIUW_cjs = require('./chunk-WVVKLIUW.cjs');
11
- var chunkYLLXAKL2_cjs = require('./chunk-YLLXAKL2.cjs');
11
+ var chunkMHS4VFX4_cjs = require('./chunk-MHS4VFX4.cjs');
12
12
  var chunkXB2TJ7LX_cjs = require('./chunk-XB2TJ7LX.cjs');
13
13
  var chunk4OM3F6KZ_cjs = require('./chunk-4OM3F6KZ.cjs');
14
14
  var chunk2W2GYEYQ_cjs = require('./chunk-2W2GYEYQ.cjs');
@@ -19,7 +19,7 @@ var chunkV5ORZPFW_cjs = require('./chunk-V5ORZPFW.cjs');
19
19
  var chunkST5RMVLG_cjs = require('./chunk-ST5RMVLG.cjs');
20
20
 
21
21
  // src/agent/index.warning.ts
22
- var Agent2 = class extends chunkYLLXAKL2_cjs.Agent {
22
+ var Agent2 = class extends chunkMHS4VFX4_cjs.Agent {
23
23
  constructor(config) {
24
24
  super(config);
25
25
  this.logger.warn('Please import "Agent from "@mastra/core/agent" instead of "@mastra/core"');
@@ -180,15 +180,15 @@ Object.defineProperty(exports, "Mastra", {
180
180
  });
181
181
  Object.defineProperty(exports, "CohereRelevanceScorer", {
182
182
  enumerable: true,
183
- get: function () { return chunkYTP2MMIM_cjs.CohereRelevanceScorer; }
183
+ get: function () { return chunkBYBMTU6U_cjs.CohereRelevanceScorer; }
184
184
  });
185
185
  Object.defineProperty(exports, "MastraAgentRelevanceScorer", {
186
186
  enumerable: true,
187
- get: function () { return chunkYTP2MMIM_cjs.MastraAgentRelevanceScorer; }
187
+ get: function () { return chunkBYBMTU6U_cjs.MastraAgentRelevanceScorer; }
188
188
  });
189
189
  Object.defineProperty(exports, "createSimilarityPrompt", {
190
190
  enumerable: true,
191
- get: function () { return chunkYTP2MMIM_cjs.createSimilarityPrompt; }
191
+ get: function () { return chunkBYBMTU6U_cjs.createSimilarityPrompt; }
192
192
  });
193
193
  Object.defineProperty(exports, "InstrumentClass", {
194
194
  enumerable: true,
package/dist/index.js CHANGED
@@ -5,9 +5,9 @@ import { Integration, OpenAPIToolset } from './chunk-PNZK456O.js';
5
5
  export { Mastra } from './chunk-ZBKJDQPM.js';
6
6
  import { MastraMemory } from './chunk-34GSMLRD.js';
7
7
  import { MastraVector } from './chunk-ZABXT2MN.js';
8
- export { CohereRelevanceScorer, MastraAgentRelevanceScorer, createSimilarityPrompt } from './chunk-B7OACOMS.js';
8
+ export { CohereRelevanceScorer, MastraAgentRelevanceScorer, createSimilarityPrompt } from './chunk-7ST47THC.js';
9
9
  import { MastraStorage } from './chunk-RU7CSPAV.js';
10
- import { Agent } from './chunk-PRNJCD6I.js';
10
+ import { Agent } from './chunk-FVWRLDKM.js';
11
11
  export { InstrumentClass, OTLPTraceExporter as OTLPStorageExporter, Telemetry, hasActiveTelemetry, withSpan } from './chunk-W5HVJX45.js';
12
12
  export { checkEvalStorageFields, createMastraProxy, deepMerge, delay, ensureToolProperties, isVercelTool, jsonSchemaPropertiesToTSTypes, jsonSchemaToModel, makeCoreTool, maskStreamTags, resolveSerializedZodOutput } from './chunk-3OXCRLRW.js';
13
13
  import { Tool } from './chunk-ZINPRHAN.js';
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var chunkYLLXAKL2_cjs = require('../chunk-YLLXAKL2.cjs');
3
+ var chunkMHS4VFX4_cjs = require('../chunk-MHS4VFX4.cjs');
4
4
  var chunk2W2GYEYQ_cjs = require('../chunk-2W2GYEYQ.cjs');
5
5
  var chunkPL7PVTGF_cjs = require('../chunk-PL7PVTGF.cjs');
6
6
  var chunkNPOKIPWC_cjs = require('../chunk-NPOKIPWC.cjs');
@@ -17,7 +17,7 @@ var AgentNetwork = class extends chunkPL7PVTGF_cjs.MastraBase {
17
17
  this.#instructions = config.instructions;
18
18
  this.#agents = config.agents;
19
19
  this.#model = config.model;
20
- this.#routingAgent = new chunkYLLXAKL2_cjs.Agent({
20
+ this.#routingAgent = new chunkMHS4VFX4_cjs.Agent({
21
21
  name: config.name,
22
22
  instructions: this.getInstructions(),
23
23
  model: this.#model,
@@ -1,4 +1,4 @@
1
- import { Agent } from '../chunk-PRNJCD6I.js';
1
+ import { Agent } from '../chunk-FVWRLDKM.js';
2
2
  import { createTool } from '../chunk-ZINPRHAN.js';
3
3
  import { MastraBase } from '../chunk-VN4M67DA.js';
4
4
  import { RegisteredLogger } from '../chunk-L7CR75HA.js';
@@ -1,18 +1,18 @@
1
1
  'use strict';
2
2
 
3
- var chunkYTP2MMIM_cjs = require('../chunk-YTP2MMIM.cjs');
3
+ var chunkBYBMTU6U_cjs = require('../chunk-BYBMTU6U.cjs');
4
4
 
5
5
 
6
6
 
7
7
  Object.defineProperty(exports, "CohereRelevanceScorer", {
8
8
  enumerable: true,
9
- get: function () { return chunkYTP2MMIM_cjs.CohereRelevanceScorer; }
9
+ get: function () { return chunkBYBMTU6U_cjs.CohereRelevanceScorer; }
10
10
  });
11
11
  Object.defineProperty(exports, "MastraAgentRelevanceScorer", {
12
12
  enumerable: true,
13
- get: function () { return chunkYTP2MMIM_cjs.MastraAgentRelevanceScorer; }
13
+ get: function () { return chunkBYBMTU6U_cjs.MastraAgentRelevanceScorer; }
14
14
  });
15
15
  Object.defineProperty(exports, "createSimilarityPrompt", {
16
16
  enumerable: true,
17
- get: function () { return chunkYTP2MMIM_cjs.createSimilarityPrompt; }
17
+ get: function () { return chunkBYBMTU6U_cjs.createSimilarityPrompt; }
18
18
  });
@@ -1 +1 @@
1
- export { CohereRelevanceScorer, MastraAgentRelevanceScorer, createSimilarityPrompt } from '../chunk-B7OACOMS.js';
1
+ export { CohereRelevanceScorer, MastraAgentRelevanceScorer, createSimilarityPrompt } from '../chunk-7ST47THC.js';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mastra/core",
3
- "version": "0.6.4",
3
+ "version": "0.6.5-alpha.0",
4
4
  "license": "ISC",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",