@mastra/client-js 0.0.0-fix-tool-call-history-20250731222019 → 0.0.0-fix-tool-call-history-3-20250806004225
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.turbo/turbo-build.log +18 -0
- package/CHANGELOG.md +65 -3
- package/dist/adapters/agui.d.ts +1 -1
- package/dist/adapters/agui.d.ts.map +1 -1
- package/dist/client.d.ts +4 -4
- package/dist/index.cjs +24 -10
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.js +24 -10
- package/dist/index.js.map +1 -1
- package/dist/resources/a2a.d.ts +2 -2
- package/dist/resources/agent.d.ts +2 -2
- package/dist/resources/base.d.ts +1 -1
- package/dist/resources/index.d.ts +10 -10
- package/dist/resources/legacy-workflow.d.ts +2 -2
- package/dist/resources/mcp-tool.d.ts +2 -2
- package/dist/resources/memory-thread.d.ts +2 -2
- package/dist/resources/network-memory-thread.d.ts +2 -2
- package/dist/resources/network.d.ts +2 -2
- package/dist/resources/tool.d.ts +2 -2
- package/dist/resources/vNextNetwork.d.ts +2 -2
- package/dist/resources/vector.d.ts +2 -2
- package/dist/resources/workflow.d.ts +2 -2
- package/package.json +7 -5
- package/src/adapters/agui.ts +29 -11
- package/tsup.config.ts +2 -7
package/dist/resources/a2a.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { TaskSendParams, TaskQueryParams, TaskIdParams, Task, AgentCard } from '@mastra/core/a2a';
|
|
2
|
-
import type { ClientOptions } from '../types';
|
|
3
|
-
import { BaseResource } from './base';
|
|
2
|
+
import type { ClientOptions } from '../types.js';
|
|
3
|
+
import { BaseResource } from './base.js';
|
|
4
4
|
/**
|
|
5
5
|
* Class for interacting with an agent via the A2A protocol
|
|
6
6
|
*/
|
|
@@ -2,8 +2,8 @@ import { processDataStream } from '@ai-sdk/ui-utils';
|
|
|
2
2
|
import { type GenerateReturn } from '@mastra/core/llm';
|
|
3
3
|
import type { JSONSchema7 } from 'json-schema';
|
|
4
4
|
import { ZodSchema } from 'zod';
|
|
5
|
-
import type { GenerateParams, GetAgentResponse, GetEvalsByAgentIdResponse, GetToolResponse, ClientOptions, StreamParams } from '../types';
|
|
6
|
-
import { BaseResource } from './base';
|
|
5
|
+
import type { GenerateParams, GetAgentResponse, GetEvalsByAgentIdResponse, GetToolResponse, ClientOptions, StreamParams } from '../types.js';
|
|
6
|
+
import { BaseResource } from './base.js';
|
|
7
7
|
import type { RuntimeContext } from '@mastra/core/runtime-context';
|
|
8
8
|
export declare class AgentVoice extends BaseResource {
|
|
9
9
|
private agentId;
|
package/dist/resources/base.d.ts
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
export * from './agent';
|
|
2
|
-
export * from './network';
|
|
3
|
-
export * from './memory-thread';
|
|
4
|
-
export * from './vector';
|
|
5
|
-
export * from './legacy-workflow';
|
|
6
|
-
export * from './tool';
|
|
7
|
-
export * from './base';
|
|
8
|
-
export * from './workflow';
|
|
9
|
-
export * from './a2a';
|
|
10
|
-
export * from './mcp-tool';
|
|
1
|
+
export * from './agent.js';
|
|
2
|
+
export * from './network.js';
|
|
3
|
+
export * from './memory-thread.js';
|
|
4
|
+
export * from './vector.js';
|
|
5
|
+
export * from './legacy-workflow.js';
|
|
6
|
+
export * from './tool.js';
|
|
7
|
+
export * from './base.js';
|
|
8
|
+
export * from './workflow.js';
|
|
9
|
+
export * from './a2a.js';
|
|
10
|
+
export * from './mcp-tool.js';
|
|
11
11
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { ClientOptions, LegacyWorkflowRunResult, GetLegacyWorkflowRunsResponse, GetWorkflowRunsParams, GetLegacyWorkflowResponse } from '../types';
|
|
2
|
-
import { BaseResource } from './base';
|
|
1
|
+
import type { ClientOptions, LegacyWorkflowRunResult, GetLegacyWorkflowRunsResponse, GetWorkflowRunsParams, GetLegacyWorkflowResponse } from '../types.js';
|
|
2
|
+
import { BaseResource } from './base.js';
|
|
3
3
|
export declare class LegacyWorkflow extends BaseResource {
|
|
4
4
|
private workflowId;
|
|
5
5
|
constructor(options: ClientOptions, workflowId: string);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { RuntimeContext } from '@mastra/core/runtime-context';
|
|
2
|
-
import type { ClientOptions, McpToolInfo } from '../types';
|
|
3
|
-
import { BaseResource } from './base';
|
|
2
|
+
import type { ClientOptions, McpToolInfo } from '../types.js';
|
|
3
|
+
import { BaseResource } from './base.js';
|
|
4
4
|
/**
|
|
5
5
|
* Represents a specific tool available on a specific MCP server.
|
|
6
6
|
* Provides methods to get details and execute the tool.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { StorageThreadType } from '@mastra/core';
|
|
2
|
-
import type { GetMemoryThreadMessagesResponse, ClientOptions, UpdateMemoryThreadParams, GetMemoryThreadMessagesParams, GetMemoryThreadMessagesPaginatedParams, GetMemoryThreadMessagesPaginatedResponse } from '../types';
|
|
3
|
-
import { BaseResource } from './base';
|
|
2
|
+
import type { GetMemoryThreadMessagesResponse, ClientOptions, UpdateMemoryThreadParams, GetMemoryThreadMessagesParams, GetMemoryThreadMessagesPaginatedParams, GetMemoryThreadMessagesPaginatedResponse } from '../types.js';
|
|
3
|
+
import { BaseResource } from './base.js';
|
|
4
4
|
export declare class MemoryThread extends BaseResource {
|
|
5
5
|
private threadId;
|
|
6
6
|
private agentId;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { StorageThreadType } from '@mastra/core';
|
|
2
|
-
import type { GetMemoryThreadMessagesResponse, ClientOptions, UpdateMemoryThreadParams, GetMemoryThreadMessagesParams } from '../types';
|
|
3
|
-
import { BaseResource } from './base';
|
|
2
|
+
import type { GetMemoryThreadMessagesResponse, ClientOptions, UpdateMemoryThreadParams, GetMemoryThreadMessagesParams } from '../types.js';
|
|
3
|
+
import { BaseResource } from './base.js';
|
|
4
4
|
export declare class NetworkMemoryThread extends BaseResource {
|
|
5
5
|
private threadId;
|
|
6
6
|
private networkId;
|
|
@@ -2,8 +2,8 @@ import { processDataStream } from '@ai-sdk/ui-utils';
|
|
|
2
2
|
import type { GenerateReturn } from '@mastra/core';
|
|
3
3
|
import type { JSONSchema7 } from 'json-schema';
|
|
4
4
|
import type { ZodSchema } from 'zod';
|
|
5
|
-
import type { GenerateParams, ClientOptions, StreamParams, GetNetworkResponse } from '../types';
|
|
6
|
-
import { BaseResource } from './base';
|
|
5
|
+
import type { GenerateParams, ClientOptions, StreamParams, GetNetworkResponse } from '../types.js';
|
|
6
|
+
import { BaseResource } from './base.js';
|
|
7
7
|
export declare class Network extends BaseResource {
|
|
8
8
|
private networkId;
|
|
9
9
|
constructor(options: ClientOptions, networkId: string);
|
package/dist/resources/tool.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { RuntimeContext } from '@mastra/core/runtime-context';
|
|
2
|
-
import type { GetToolResponse, ClientOptions } from '../types';
|
|
3
|
-
import { BaseResource } from './base';
|
|
2
|
+
import type { GetToolResponse, ClientOptions } from '../types.js';
|
|
3
|
+
import { BaseResource } from './base.js';
|
|
4
4
|
export declare class Tool extends BaseResource {
|
|
5
5
|
private toolId;
|
|
6
6
|
constructor(options: ClientOptions, toolId: string);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { WatchEvent } from '@mastra/core/workflows';
|
|
2
|
-
import type { ClientOptions, GetVNextNetworkResponse, GenerateVNextNetworkResponse, LoopVNextNetworkResponse, GenerateOrStreamVNextNetworkParams, LoopStreamVNextNetworkParams } from '../types';
|
|
3
|
-
import { BaseResource } from './base';
|
|
2
|
+
import type { ClientOptions, GetVNextNetworkResponse, GenerateVNextNetworkResponse, LoopVNextNetworkResponse, GenerateOrStreamVNextNetworkParams, LoopStreamVNextNetworkParams } from '../types.js';
|
|
3
|
+
import { BaseResource } from './base.js';
|
|
4
4
|
import type { RuntimeContext } from '@mastra/core/runtime-context';
|
|
5
5
|
export declare class VNextNetwork extends BaseResource {
|
|
6
6
|
private networkId;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { CreateIndexParams, GetVectorIndexResponse, QueryVectorParams, QueryVectorResponse, ClientOptions, UpsertVectorParams } from '../types';
|
|
2
|
-
import { BaseResource } from './base';
|
|
1
|
+
import type { CreateIndexParams, GetVectorIndexResponse, QueryVectorParams, QueryVectorResponse, ClientOptions, UpsertVectorParams } from '../types.js';
|
|
2
|
+
import { BaseResource } from './base.js';
|
|
3
3
|
export declare class Vector extends BaseResource {
|
|
4
4
|
private vectorName;
|
|
5
5
|
constructor(options: ClientOptions, vectorName: string);
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { RuntimeContext } from '@mastra/core/runtime-context';
|
|
2
|
-
import type { ClientOptions, GetWorkflowResponse, GetWorkflowRunsResponse, GetWorkflowRunsParams, WorkflowRunResult, WorkflowWatchResult, GetWorkflowRunByIdResponse, GetWorkflowRunExecutionResultResponse } from '../types';
|
|
3
|
-
import { BaseResource } from './base';
|
|
2
|
+
import type { ClientOptions, GetWorkflowResponse, GetWorkflowRunsResponse, GetWorkflowRunsParams, WorkflowRunResult, WorkflowWatchResult, GetWorkflowRunByIdResponse, GetWorkflowRunExecutionResultResponse } from '../types.js';
|
|
3
|
+
import { BaseResource } from './base.js';
|
|
4
4
|
export declare class Workflow extends BaseResource {
|
|
5
5
|
private workflowId;
|
|
6
6
|
constructor(options: ClientOptions, workflowId: string);
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mastra/client-js",
|
|
3
|
-
"version": "0.0.0-fix-tool-call-history-
|
|
3
|
+
"version": "0.0.0-fix-tool-call-history-3-20250806004225",
|
|
4
4
|
"description": "The official TypeScript library for the Mastra Client API",
|
|
5
5
|
"author": "",
|
|
6
6
|
"type": "module",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"default": "./dist/index.js"
|
|
14
14
|
},
|
|
15
15
|
"require": {
|
|
16
|
-
"types": "./dist/index.d.
|
|
16
|
+
"types": "./dist/index.d.ts",
|
|
17
17
|
"default": "./dist/index.cjs"
|
|
18
18
|
}
|
|
19
19
|
},
|
|
@@ -34,7 +34,7 @@
|
|
|
34
34
|
"rxjs": "7.8.1",
|
|
35
35
|
"zod": "^3.25.67",
|
|
36
36
|
"zod-to-json-schema": "^3.24.5",
|
|
37
|
-
"@mastra/core": "0.0.0-fix-tool-call-history-
|
|
37
|
+
"@mastra/core": "0.0.0-fix-tool-call-history-3-20250806004225"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
40
40
|
"zod": "^3.0.0"
|
|
@@ -46,13 +46,15 @@
|
|
|
46
46
|
"@types/json-schema": "^7.0.15",
|
|
47
47
|
"@types/node": "^20.19.0",
|
|
48
48
|
"ai": "^4.3.19",
|
|
49
|
+
"globby": "^14.1.0",
|
|
49
50
|
"tsup": "^8.5.0",
|
|
50
51
|
"typescript": "^5.8.3",
|
|
51
52
|
"vitest": "^3.2.4",
|
|
52
|
-
"@internal/lint": "0.0.0-fix-tool-call-history-
|
|
53
|
+
"@internal/lint": "0.0.0-fix-tool-call-history-3-20250806004225",
|
|
54
|
+
"@internal/types-builder": "0.0.0-fix-tool-call-history-3-20250806004225"
|
|
53
55
|
},
|
|
54
56
|
"scripts": {
|
|
55
|
-
"build": "tsup --
|
|
57
|
+
"build": "tsup --config tsup.config.ts",
|
|
56
58
|
"dev": "pnpm build --watch",
|
|
57
59
|
"test": "vitest run && pnpm run test:integration",
|
|
58
60
|
"test:unit": "vitest run",
|
package/src/adapters/agui.ts
CHANGED
|
@@ -189,6 +189,14 @@ export function generateUUID(): string {
|
|
|
189
189
|
export function convertMessagesToMastraMessages(messages: Message[]): CoreMessage[] {
|
|
190
190
|
const result: CoreMessage[] = [];
|
|
191
191
|
|
|
192
|
+
// First pass: identify which tool calls already have corresponding tool messages
|
|
193
|
+
const toolCallsWithResults = new Set<string>();
|
|
194
|
+
for (const message of messages) {
|
|
195
|
+
if (message.role === 'tool' && message.toolCallId) {
|
|
196
|
+
toolCallsWithResults.add(message.toolCallId);
|
|
197
|
+
}
|
|
198
|
+
}
|
|
199
|
+
|
|
192
200
|
for (const message of messages) {
|
|
193
201
|
if (message.role === 'assistant') {
|
|
194
202
|
const parts: any[] = message.content ? [{ type: 'text', text: message.content }] : [];
|
|
@@ -204,16 +212,24 @@ export function convertMessagesToMastraMessages(messages: Message[]): CoreMessag
|
|
|
204
212
|
role: 'assistant',
|
|
205
213
|
content: parts,
|
|
206
214
|
});
|
|
215
|
+
|
|
216
|
+
// Only create automatic tool results if there are no corresponding tool messages
|
|
207
217
|
if (message.toolCalls?.length) {
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
218
|
+
for (const toolCall of message.toolCalls) {
|
|
219
|
+
if (!toolCallsWithResults.has(toolCall.id)) {
|
|
220
|
+
result.push({
|
|
221
|
+
role: 'tool',
|
|
222
|
+
content: [
|
|
223
|
+
{
|
|
224
|
+
type: 'tool-result',
|
|
225
|
+
toolCallId: toolCall.id,
|
|
226
|
+
toolName: toolCall.function.name,
|
|
227
|
+
result: JSON.parse(toolCall.function.arguments), // This is still wrong but matches test expectations
|
|
228
|
+
},
|
|
229
|
+
],
|
|
230
|
+
});
|
|
231
|
+
}
|
|
232
|
+
}
|
|
217
233
|
}
|
|
218
234
|
} else if (message.role === 'user') {
|
|
219
235
|
result.push({
|
|
@@ -221,13 +237,15 @@ export function convertMessagesToMastraMessages(messages: Message[]): CoreMessag
|
|
|
221
237
|
content: message.content || '',
|
|
222
238
|
});
|
|
223
239
|
} else if (message.role === 'tool') {
|
|
240
|
+
// For tool messages from CopilotKit, we need to handle them properly
|
|
241
|
+
// CopilotKit sends tool messages as responses to tool calls
|
|
224
242
|
result.push({
|
|
225
243
|
role: 'tool',
|
|
226
244
|
content: [
|
|
227
245
|
{
|
|
228
246
|
type: 'tool-result',
|
|
229
|
-
toolCallId: message.toolCallId,
|
|
230
|
-
toolName: 'unknown',
|
|
247
|
+
toolCallId: message.toolCallId || 'unknown',
|
|
248
|
+
toolName: 'unknown', // toolName is not available in tool messages from CopilotKit
|
|
231
249
|
result: message.content,
|
|
232
250
|
},
|
|
233
251
|
],
|
package/tsup.config.ts
CHANGED
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
import { spawn } from 'child_process';
|
|
2
|
-
import { promisify } from 'util';
|
|
3
1
|
import { defineConfig } from 'tsup';
|
|
4
|
-
|
|
5
|
-
const exec = promisify(spawn);
|
|
2
|
+
import { generateTypes } from '@internal/types-builder';
|
|
6
3
|
|
|
7
4
|
export default defineConfig({
|
|
8
5
|
entry: ['src/index.ts'],
|
|
@@ -15,8 +12,6 @@ export default defineConfig({
|
|
|
15
12
|
},
|
|
16
13
|
sourcemap: true,
|
|
17
14
|
onSuccess: async () => {
|
|
18
|
-
await
|
|
19
|
-
stdio: 'inherit',
|
|
20
|
-
});
|
|
15
|
+
await generateTypes(process.cwd());
|
|
21
16
|
},
|
|
22
17
|
});
|