@mastra/client-js 0.0.0-ai-v5-20250729012312 → 0.0.0-ai-v5-20250801192614

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 (66) hide show
  1. package/.turbo/turbo-build.log +2 -17
  2. package/CHANGELOG.md +116 -20
  3. package/dist/adapters/agui.d.ts +22 -0
  4. package/dist/adapters/agui.d.ts.map +1 -0
  5. package/dist/client.d.ts +265 -0
  6. package/dist/client.d.ts.map +1 -0
  7. package/dist/example.d.ts +2 -0
  8. package/dist/example.d.ts.map +1 -0
  9. package/dist/index.cjs +42 -22
  10. package/dist/index.cjs.map +1 -0
  11. package/dist/index.d.ts +3 -1331
  12. package/dist/index.d.ts.map +1 -0
  13. package/dist/index.js +39 -19
  14. package/dist/index.js.map +1 -0
  15. package/dist/resources/a2a.d.ts +44 -0
  16. package/dist/resources/a2a.d.ts.map +1 -0
  17. package/dist/resources/agent.d.ts +112 -0
  18. package/dist/resources/agent.d.ts.map +1 -0
  19. package/dist/resources/base.d.ts +13 -0
  20. package/dist/resources/base.d.ts.map +1 -0
  21. package/dist/resources/index.d.ts +11 -0
  22. package/dist/resources/index.d.ts.map +1 -0
  23. package/dist/resources/legacy-workflow.d.ts +87 -0
  24. package/dist/resources/legacy-workflow.d.ts.map +1 -0
  25. package/dist/resources/mcp-tool.d.ts +27 -0
  26. package/dist/resources/mcp-tool.d.ts.map +1 -0
  27. package/dist/resources/memory-thread.d.ts +53 -0
  28. package/dist/resources/memory-thread.d.ts.map +1 -0
  29. package/dist/resources/network-memory-thread.d.ts +47 -0
  30. package/dist/resources/network-memory-thread.d.ts.map +1 -0
  31. package/dist/resources/network.d.ts +30 -0
  32. package/dist/resources/network.d.ts.map +1 -0
  33. package/dist/resources/tool.d.ts +23 -0
  34. package/dist/resources/tool.d.ts.map +1 -0
  35. package/dist/resources/vNextNetwork.d.ts +42 -0
  36. package/dist/resources/vNextNetwork.d.ts.map +1 -0
  37. package/dist/resources/vector.d.ts +48 -0
  38. package/dist/resources/vector.d.ts.map +1 -0
  39. package/dist/resources/workflow.d.ts +154 -0
  40. package/dist/resources/workflow.d.ts.map +1 -0
  41. package/dist/types.d.ts +427 -0
  42. package/dist/types.d.ts.map +1 -0
  43. package/dist/utils/index.d.ts +3 -0
  44. package/dist/utils/index.d.ts.map +1 -0
  45. package/dist/utils/process-client-tools.d.ts +3 -0
  46. package/dist/utils/process-client-tools.d.ts.map +1 -0
  47. package/dist/utils/zod-to-json-schema.d.ts +105 -0
  48. package/dist/utils/zod-to-json-schema.d.ts.map +1 -0
  49. package/integration-tests/agui-adapter.test.ts +122 -0
  50. package/integration-tests/package.json +17 -0
  51. package/integration-tests/src/mastra/index.ts +38 -0
  52. package/integration-tests/vitest.config.ts +9 -0
  53. package/package.json +9 -7
  54. package/src/adapters/agui.test.ts +145 -3
  55. package/src/adapters/agui.ts +28 -16
  56. package/src/index.test.ts +108 -0
  57. package/src/resources/agent.ts +21 -19
  58. package/src/resources/base.ts +1 -0
  59. package/src/resources/network.ts +1 -1
  60. package/src/types.ts +4 -4
  61. package/src/utils/process-client-tools.ts +1 -1
  62. package/src/v2-messages.test.ts +180 -0
  63. package/tsconfig.build.json +9 -0
  64. package/tsconfig.json +1 -1
  65. package/tsup.config.ts +22 -0
  66. package/dist/index.d.cts +0 -1331
@@ -1,19 +1,4 @@
1
1
 
2
- > @mastra/client-js@0.10.17-alpha.1 build /home/runner/work/mastra/mastra/client-sdks/client-js
3
- > tsup src/index.ts --format esm,cjs --dts --clean --treeshake=smallest --splitting
2
+ > @mastra/client-js@0.10.18 build /home/runner/work/mastra/mastra/client-sdks/client-js
3
+ > tsup --silent --config tsup.config.ts
4
4
 
5
- CLI Building entry: src/index.ts
6
- CLI Using tsconfig: tsconfig.json
7
- CLI tsup v8.5.0
8
- CLI Target: es2022
9
- CLI Cleaning output folder
10
- ESM Build start
11
- CJS Build start
12
- CJS dist/index.cjs 75.34 KB
13
- CJS ⚡️ Build success in 2299ms
14
- ESM dist/index.js 75.03 KB
15
- ESM ⚡️ Build success in 2304ms
16
- DTS Build start
17
- DTS ⚡️ Build success in 19159ms
18
- DTS dist/index.d.ts 47.09 KB
19
- DTS dist/index.d.cts 47.09 KB
package/CHANGELOG.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @mastra/client-js
2
2
 
3
- ## 0.0.0-ai-v5-20250729012312
3
+ ## 0.0.0-ai-v5-20250801192614
4
4
 
5
5
  ### Minor Changes
6
6
 
@@ -8,10 +8,54 @@
8
8
 
9
9
  ### Patch Changes
10
10
 
11
+ - Updated dependencies [66858d4]
12
+ - Updated dependencies [94f4812]
13
+ - Updated dependencies [e202b82]
14
+ - Updated dependencies [e00f6a0]
15
+ - @mastra/core@0.0.0-ai-v5-20250801192614
16
+
17
+ ## 0.10.18
18
+
19
+ ### Patch Changes
20
+
21
+ - 6690a16: dependencies updates:
22
+ - Updated dependency [`@ag-ui/client@^0.0.35` ↗︎](https://www.npmjs.com/package/@ag-ui/client/v/0.0.35) (from `^0.0.27`, in `dependencies`)
23
+ - Updated dependencies [33dcb07]
24
+ - Updated dependencies [d0d9500]
25
+ - Updated dependencies [d30b1a0]
26
+ - Updated dependencies [bff87f7]
27
+ - Updated dependencies [b4a8df0]
28
+ - @mastra/core@0.12.1
29
+
30
+ ## 0.10.18-alpha.1
31
+
32
+ ### Patch Changes
33
+
34
+ - Updated dependencies [d0d9500]
35
+ - @mastra/core@0.12.1-alpha.1
36
+
37
+ ## 0.10.18-alpha.0
38
+
39
+ ### Patch Changes
40
+
41
+ - 6690a16: dependencies updates:
42
+ - Updated dependency [`@ag-ui/client@^0.0.35` ↗︎](https://www.npmjs.com/package/@ag-ui/client/v/0.0.35) (from `^0.0.27`, in `dependencies`)
43
+ - Updated dependencies [33dcb07]
44
+ - Updated dependencies [d30b1a0]
45
+ - Updated dependencies [bff87f7]
46
+ - Updated dependencies [b4a8df0]
47
+ - @mastra/core@0.12.1-alpha.0
48
+
49
+ ## 0.10.17
50
+
51
+ ### Patch Changes
52
+
11
53
  - aa2715b: process stream response error handling
12
- - 2ab3115: Should not send content type if body instance of FormData
13
- - 0f24e20: Added the ability to pass in metadata for UIMessage and MastraMessageV2 in client-js and agent.stream/generate
14
- - e25ab3b: fix: save score params
54
+ - 6bd354c: Should not send content type if body instance of FormData
55
+ - cda801d: Added the ability to pass in metadata for UIMessage and MastraMessageV2 in client-js and agent.stream/generate
56
+ - b641ba3: fix: save score params
57
+ - 9802f42: Added types and tests to ensure client-js and hono endpoints can save memory messages where the input is either a v1 or v2 mastra message
58
+ - 1ac8f6b: deduplicate message
15
59
  - b8efbb9: feat: add flexible deleteMessages method to memory API
16
60
  - Added `memory.deleteMessages(input)` method that accepts multiple input types:
17
61
  - Single message ID as string: `deleteMessages('msg-123')`
@@ -24,27 +68,79 @@
24
68
  - Updates thread timestamps when messages are deleted
25
69
  - Added comprehensive test coverage and documentation
26
70
 
27
- - Updated dependencies [f96993c]
28
- - Updated dependencies [6725b7b]
29
- - Updated dependencies [5fc97af]
30
- - Updated dependencies [39fcf57]
31
- - Updated dependencies [6ab4a1c]
71
+ - Updated dependencies [510e2c8]
72
+ - Updated dependencies [2f72fb2]
73
+ - Updated dependencies [27cc97a]
74
+ - Updated dependencies [3f89307]
75
+ - Updated dependencies [9eda7d4]
76
+ - Updated dependencies [9d49408]
32
77
  - Updated dependencies [41daa63]
78
+ - Updated dependencies [ad0a58b]
33
79
  - Updated dependencies [254a36b]
34
- - Updated dependencies [67c55d0]
35
- - Updated dependencies [731c220]
36
- - Updated dependencies [c37d890]
37
- - Updated dependencies [041d2de]
38
- - Updated dependencies [4de4737]
39
- - Updated dependencies [679c163]
40
- - Updated dependencies [0f24e20]
41
- - Updated dependencies [4cece2f]
80
+ - Updated dependencies [2ecf658]
81
+ - Updated dependencies [7a7754f]
82
+ - Updated dependencies [fc92d80]
83
+ - Updated dependencies [e0f73c6]
84
+ - Updated dependencies [0b89602]
85
+ - Updated dependencies [4d37822]
86
+ - Updated dependencies [23a6a7c]
87
+ - Updated dependencies [cda801d]
88
+ - Updated dependencies [a77c823]
89
+ - Updated dependencies [ff9c125]
90
+ - Updated dependencies [09bca64]
91
+ - Updated dependencies [b8efbb9]
92
+ - Updated dependencies [71466e7]
93
+ - Updated dependencies [0c99fbe]
94
+ - @mastra/core@0.12.0
95
+
96
+ ## 0.10.17-alpha.5
97
+
98
+ ### Patch Changes
99
+
100
+ - @mastra/core@0.12.0-alpha.5
101
+
102
+ ## 0.10.17-alpha.4
103
+
104
+ ### Patch Changes
105
+
106
+ - Updated dependencies [ad0a58b]
107
+ - @mastra/core@0.12.0-alpha.4
108
+
109
+ ## 0.10.17-alpha.3
110
+
111
+ ### Patch Changes
112
+
113
+ - 9802f42: Added types and tests to ensure client-js and hono endpoints can save memory messages where the input is either a v1 or v2 mastra message
114
+ - 1ac8f6b: deduplicate message
115
+ - @mastra/core@0.12.0-alpha.3
116
+
117
+ ## 0.10.17-alpha.2
118
+
119
+ ### Patch Changes
120
+
121
+ - aa2715b: process stream response error handling
122
+ - b8efbb9: feat: add flexible deleteMessages method to memory API
123
+ - Added `memory.deleteMessages(input)` method that accepts multiple input types:
124
+ - Single message ID as string: `deleteMessages('msg-123')`
125
+ - Array of message IDs: `deleteMessages(['msg-1', 'msg-2'])`
126
+ - Message object with id property: `deleteMessages({ id: 'msg-123' })`
127
+ - Array of message objects: `deleteMessages([{ id: 'msg-1' }, { id: 'msg-2' }])`
128
+ - Implemented in all storage adapters (LibSQL, PostgreSQL, Upstash, InMemory)
129
+ - Added REST API endpoint: `POST /api/memory/messages/delete`
130
+ - Updated client SDK: `thread.deleteMessages()` accepts all input types
131
+ - Updates thread timestamps when messages are deleted
132
+ - Added comprehensive test coverage and documentation
133
+
134
+ - Updated dependencies [27cc97a]
135
+ - Updated dependencies [41daa63]
136
+ - Updated dependencies [254a36b]
137
+ - Updated dependencies [0b89602]
138
+ - Updated dependencies [4d37822]
42
139
  - Updated dependencies [ff9c125]
43
- - Updated dependencies [66858d4]
44
- - Updated dependencies [19bc92c]
45
140
  - Updated dependencies [b8efbb9]
141
+ - Updated dependencies [71466e7]
46
142
  - Updated dependencies [0c99fbe]
47
- - @mastra/core@0.0.0-ai-v5-20250729012312
143
+ - @mastra/core@0.12.0-alpha.2
48
144
 
49
145
  ## 0.10.17-alpha.1
50
146
 
@@ -0,0 +1,22 @@
1
+ import type { AgentConfig, BaseEvent, Message, RunAgentInput } from '@ag-ui/client';
2
+ import { AbstractAgent } from '@ag-ui/client';
3
+ import { Observable } from 'rxjs';
4
+ import type { Agent } from '../resources/agent';
5
+ interface MastraAgentConfig extends AgentConfig {
6
+ agent: Agent;
7
+ agentId: string;
8
+ resourceId?: string;
9
+ }
10
+ export declare class AGUIAdapter extends AbstractAgent {
11
+ agent: Agent;
12
+ resourceId?: string;
13
+ constructor({ agent, agentId, resourceId, ...rest }: MastraAgentConfig);
14
+ protected run(input: RunAgentInput): Observable<BaseEvent>;
15
+ }
16
+ /**
17
+ * Generates a UUID v4 that works in both browser and Node.js environments
18
+ */
19
+ export declare function generateUUID(): string;
20
+ export declare function convertMessagesToMastraMessages(messages: Message[]): any[];
21
+ export {};
22
+ //# sourceMappingURL=agui.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"agui.d.ts","sourceRoot":"","sources":["../../src/adapters/agui.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,OAAO,EACP,aAAa,EASd,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,aAAa,EAAa,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,UAAU,EAAE,MAAM,MAAM,CAAC;AAClC,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAEhD,UAAU,iBAAkB,SAAQ,WAAW;IAC7C,KAAK,EAAE,KAAK,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,WAAY,SAAQ,aAAa;IAC5C,KAAK,EAAE,KAAK,CAAC;IACb,UAAU,CAAC,EAAE,MAAM,CAAC;gBACR,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,IAAI,EAAE,EAAE,iBAAiB;IAStE,SAAS,CAAC,GAAG,CAAC,KAAK,EAAE,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC;CA+G3D;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAgCrC;AAED,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,OAAO,EAAE,GAAG,GAAG,EAAE,CA+D1E"}
@@ -0,0 +1,265 @@
1
+ import type { AbstractAgent } from '@ag-ui/client';
2
+ import type { ServerDetailInfo } from '@mastra/core/mcp';
3
+ import { Agent, MemoryThread, Tool, Workflow, Vector, BaseResource, Network, A2A, MCPTool, LegacyWorkflow } from './resources';
4
+ import { NetworkMemoryThread } from './resources/network-memory-thread';
5
+ import { VNextNetwork } from './resources/vNextNetwork';
6
+ import type { ClientOptions, CreateMemoryThreadParams, CreateMemoryThreadResponse, GetAgentResponse, GetLogParams, GetLogsParams, GetLogsResponse, GetMemoryThreadParams, GetMemoryThreadResponse, GetNetworkResponse, GetTelemetryParams, GetTelemetryResponse, GetToolResponse, GetWorkflowResponse, SaveMessageToMemoryParams, SaveMessageToMemoryResponse, McpServerListResponse, McpServerToolListResponse, GetLegacyWorkflowResponse, GetVNextNetworkResponse, GetNetworkMemoryThreadParams, CreateNetworkMemoryThreadParams, SaveNetworkMessageToMemoryParams, GetScorerResponse, GetScoresByScorerIdParams, GetScoresResponse, GetScoresByRunIdParams, GetScoresByEntityIdParams, SaveScoreParams, SaveScoreResponse } from './types';
7
+ export declare class MastraClient extends BaseResource {
8
+ constructor(options: ClientOptions);
9
+ /**
10
+ * Retrieves all available agents
11
+ * @returns Promise containing map of agent IDs to agent details
12
+ */
13
+ getAgents(): Promise<Record<string, GetAgentResponse>>;
14
+ getAGUI({ resourceId }: {
15
+ resourceId: string;
16
+ }): Promise<Record<string, AbstractAgent>>;
17
+ /**
18
+ * Gets an agent instance by ID
19
+ * @param agentId - ID of the agent to retrieve
20
+ * @returns Agent instance
21
+ */
22
+ getAgent(agentId: string): Agent;
23
+ /**
24
+ * Retrieves memory threads for a resource
25
+ * @param params - Parameters containing the resource ID
26
+ * @returns Promise containing array of memory threads
27
+ */
28
+ getMemoryThreads(params: GetMemoryThreadParams): Promise<GetMemoryThreadResponse>;
29
+ /**
30
+ * Creates a new memory thread
31
+ * @param params - Parameters for creating the memory thread
32
+ * @returns Promise containing the created memory thread
33
+ */
34
+ createMemoryThread(params: CreateMemoryThreadParams): Promise<CreateMemoryThreadResponse>;
35
+ /**
36
+ * Gets a memory thread instance by ID
37
+ * @param threadId - ID of the memory thread to retrieve
38
+ * @returns MemoryThread instance
39
+ */
40
+ getMemoryThread(threadId: string, agentId: string): MemoryThread;
41
+ /**
42
+ * Saves messages to memory
43
+ * @param params - Parameters containing messages to save
44
+ * @returns Promise containing the saved messages
45
+ */
46
+ saveMessageToMemory(params: SaveMessageToMemoryParams): Promise<SaveMessageToMemoryResponse>;
47
+ /**
48
+ * Gets the status of the memory system
49
+ * @returns Promise containing memory system status
50
+ */
51
+ getMemoryStatus(agentId: string): Promise<{
52
+ result: boolean;
53
+ }>;
54
+ /**
55
+ * Retrieves memory threads for a resource
56
+ * @param params - Parameters containing the resource ID
57
+ * @returns Promise containing array of memory threads
58
+ */
59
+ getNetworkMemoryThreads(params: GetNetworkMemoryThreadParams): Promise<GetMemoryThreadResponse>;
60
+ /**
61
+ * Creates a new memory thread
62
+ * @param params - Parameters for creating the memory thread
63
+ * @returns Promise containing the created memory thread
64
+ */
65
+ createNetworkMemoryThread(params: CreateNetworkMemoryThreadParams): Promise<CreateMemoryThreadResponse>;
66
+ /**
67
+ * Gets a memory thread instance by ID
68
+ * @param threadId - ID of the memory thread to retrieve
69
+ * @returns MemoryThread instance
70
+ */
71
+ getNetworkMemoryThread(threadId: string, networkId: string): NetworkMemoryThread;
72
+ /**
73
+ * Saves messages to memory
74
+ * @param params - Parameters containing messages to save
75
+ * @returns Promise containing the saved messages
76
+ */
77
+ saveNetworkMessageToMemory(params: SaveNetworkMessageToMemoryParams): Promise<SaveMessageToMemoryResponse>;
78
+ /**
79
+ * Gets the status of the memory system
80
+ * @returns Promise containing memory system status
81
+ */
82
+ getNetworkMemoryStatus(networkId: string): Promise<{
83
+ result: boolean;
84
+ }>;
85
+ /**
86
+ * Retrieves all available tools
87
+ * @returns Promise containing map of tool IDs to tool details
88
+ */
89
+ getTools(): Promise<Record<string, GetToolResponse>>;
90
+ /**
91
+ * Gets a tool instance by ID
92
+ * @param toolId - ID of the tool to retrieve
93
+ * @returns Tool instance
94
+ */
95
+ getTool(toolId: string): Tool;
96
+ /**
97
+ * Retrieves all available legacy workflows
98
+ * @returns Promise containing map of legacy workflow IDs to legacy workflow details
99
+ */
100
+ getLegacyWorkflows(): Promise<Record<string, GetLegacyWorkflowResponse>>;
101
+ /**
102
+ * Gets a legacy workflow instance by ID
103
+ * @param workflowId - ID of the legacy workflow to retrieve
104
+ * @returns Legacy Workflow instance
105
+ */
106
+ getLegacyWorkflow(workflowId: string): LegacyWorkflow;
107
+ /**
108
+ * Retrieves all available workflows
109
+ * @returns Promise containing map of workflow IDs to workflow details
110
+ */
111
+ getWorkflows(): Promise<Record<string, GetWorkflowResponse>>;
112
+ /**
113
+ * Gets a workflow instance by ID
114
+ * @param workflowId - ID of the workflow to retrieve
115
+ * @returns Workflow instance
116
+ */
117
+ getWorkflow(workflowId: string): Workflow;
118
+ /**
119
+ * Gets a vector instance by name
120
+ * @param vectorName - Name of the vector to retrieve
121
+ * @returns Vector instance
122
+ */
123
+ getVector(vectorName: string): Vector;
124
+ /**
125
+ * Retrieves logs
126
+ * @param params - Parameters for filtering logs
127
+ * @returns Promise containing array of log messages
128
+ */
129
+ getLogs(params: GetLogsParams): Promise<GetLogsResponse>;
130
+ /**
131
+ * Gets logs for a specific run
132
+ * @param params - Parameters containing run ID to retrieve
133
+ * @returns Promise containing array of log messages
134
+ */
135
+ getLogForRun(params: GetLogParams): Promise<GetLogsResponse>;
136
+ /**
137
+ * List of all log transports
138
+ * @returns Promise containing list of log transports
139
+ */
140
+ getLogTransports(): Promise<{
141
+ transports: string[];
142
+ }>;
143
+ /**
144
+ * List of all traces (paged)
145
+ * @param params - Parameters for filtering traces
146
+ * @returns Promise containing telemetry data
147
+ */
148
+ getTelemetry(params?: GetTelemetryParams): Promise<GetTelemetryResponse>;
149
+ /**
150
+ * Retrieves all available networks
151
+ * @returns Promise containing map of network IDs to network details
152
+ */
153
+ getNetworks(): Promise<Array<GetNetworkResponse>>;
154
+ /**
155
+ * Retrieves all available vNext networks
156
+ * @returns Promise containing map of vNext network IDs to vNext network details
157
+ */
158
+ getVNextNetworks(): Promise<Array<GetVNextNetworkResponse>>;
159
+ /**
160
+ * Gets a network instance by ID
161
+ * @param networkId - ID of the network to retrieve
162
+ * @returns Network instance
163
+ */
164
+ getNetwork(networkId: string): Network;
165
+ /**
166
+ * Gets a vNext network instance by ID
167
+ * @param networkId - ID of the vNext network to retrieve
168
+ * @returns vNext Network instance
169
+ */
170
+ getVNextNetwork(networkId: string): VNextNetwork;
171
+ /**
172
+ * Retrieves a list of available MCP servers.
173
+ * @param params - Optional parameters for pagination (limit, offset).
174
+ * @returns Promise containing the list of MCP servers and pagination info.
175
+ */
176
+ getMcpServers(params?: {
177
+ limit?: number;
178
+ offset?: number;
179
+ }): Promise<McpServerListResponse>;
180
+ /**
181
+ * Retrieves detailed information for a specific MCP server.
182
+ * @param serverId - The ID of the MCP server to retrieve.
183
+ * @param params - Optional parameters, e.g., specific version.
184
+ * @returns Promise containing the detailed MCP server information.
185
+ */
186
+ getMcpServerDetails(serverId: string, params?: {
187
+ version?: string;
188
+ }): Promise<ServerDetailInfo>;
189
+ /**
190
+ * Retrieves a list of tools for a specific MCP server.
191
+ * @param serverId - The ID of the MCP server.
192
+ * @returns Promise containing the list of tools.
193
+ */
194
+ getMcpServerTools(serverId: string): Promise<McpServerToolListResponse>;
195
+ /**
196
+ * Gets an MCPTool resource instance for a specific tool on an MCP server.
197
+ * This instance can then be used to fetch details or execute the tool.
198
+ * @param serverId - The ID of the MCP server.
199
+ * @param toolId - The ID of the tool.
200
+ * @returns MCPTool instance.
201
+ */
202
+ getMcpServerTool(serverId: string, toolId: string): MCPTool;
203
+ /**
204
+ * Gets an A2A client for interacting with an agent via the A2A protocol
205
+ * @param agentId - ID of the agent to interact with
206
+ * @returns A2A client instance
207
+ */
208
+ getA2A(agentId: string): A2A;
209
+ /**
210
+ * Retrieves the working memory for a specific thread (optionally resource-scoped).
211
+ * @param agentId - ID of the agent.
212
+ * @param threadId - ID of the thread.
213
+ * @param resourceId - Optional ID of the resource.
214
+ * @returns Working memory for the specified thread or resource.
215
+ */
216
+ getWorkingMemory({ agentId, threadId, resourceId, }: {
217
+ agentId: string;
218
+ threadId: string;
219
+ resourceId?: string;
220
+ }): Promise<unknown>;
221
+ /**
222
+ * Updates the working memory for a specific thread (optionally resource-scoped).
223
+ * @param agentId - ID of the agent.
224
+ * @param threadId - ID of the thread.
225
+ * @param workingMemory - The new working memory content.
226
+ * @param resourceId - Optional ID of the resource.
227
+ */
228
+ updateWorkingMemory({ agentId, threadId, workingMemory, resourceId, }: {
229
+ agentId: string;
230
+ threadId: string;
231
+ workingMemory: string;
232
+ resourceId?: string;
233
+ }): Promise<unknown>;
234
+ /**
235
+ * Retrieves all available scorers
236
+ * @returns Promise containing list of available scorers
237
+ */
238
+ getScorers(): Promise<Record<string, GetScorerResponse>>;
239
+ /**
240
+ * Retrieves a scorer by ID
241
+ * @param scorerId - ID of the scorer to retrieve
242
+ * @returns Promise containing the scorer
243
+ */
244
+ getScorer(scorerId: string): Promise<GetScorerResponse>;
245
+ getScoresByScorerId(params: GetScoresByScorerIdParams): Promise<GetScoresResponse>;
246
+ /**
247
+ * Retrieves scores by run ID
248
+ * @param params - Parameters containing run ID and pagination options
249
+ * @returns Promise containing scores and pagination info
250
+ */
251
+ getScoresByRunId(params: GetScoresByRunIdParams): Promise<GetScoresResponse>;
252
+ /**
253
+ * Retrieves scores by entity ID and type
254
+ * @param params - Parameters containing entity ID, type, and pagination options
255
+ * @returns Promise containing scores and pagination info
256
+ */
257
+ getScoresByEntityId(params: GetScoresByEntityIdParams): Promise<GetScoresResponse>;
258
+ /**
259
+ * Saves a score
260
+ * @param params - Parameters containing the score data to save
261
+ * @returns Promise containing the saved score
262
+ */
263
+ saveScore(params: SaveScoreParams): Promise<SaveScoreResponse>;
264
+ }
265
+ //# sourceMappingURL=client.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=example.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../src/example.ts"],"names":[],"mappings":""}
package/dist/index.cjs CHANGED
@@ -2,7 +2,7 @@
2
2
 
3
3
  var client = require('@ag-ui/client');
4
4
  var rxjs = require('rxjs');
5
- var uiUtils = require('@ai-sdk/ui-utils');
5
+ var ai = require('ai');
6
6
  var zod = require('zod');
7
7
  var originalZodToJsonSchema = require('zod-to-json-schema');
8
8
  var isVercelTool = require('@mastra/core/tools/is-vercel-tool');
@@ -153,9 +153,12 @@ function convertMessagesToMastraMessages(messages) {
153
153
  const result = [];
154
154
  for (const message of messages) {
155
155
  if (message.role === "assistant") {
156
- const parts = message.content ? [{ type: "text", text: message.content }] : [];
156
+ const content = [];
157
+ if (message.content) {
158
+ content.push({ type: "text", text: message.content });
159
+ }
157
160
  for (const toolCall of message.toolCalls ?? []) {
158
- parts.push({
161
+ content.push({
159
162
  type: "tool-call",
160
163
  toolCallId: toolCall.id,
161
164
  toolName: toolCall.function.name,
@@ -164,18 +167,22 @@ function convertMessagesToMastraMessages(messages) {
164
167
  }
165
168
  result.push({
166
169
  role: "assistant",
167
- content: parts
170
+ content: content.length > 0 ? content : message.content || ""
168
171
  });
169
172
  if (message.toolCalls?.length) {
170
- result.push({
171
- role: "tool",
172
- content: message.toolCalls.map((toolCall) => ({
173
- type: "tool-result",
174
- toolCallId: toolCall.id,
175
- toolName: toolCall.function.name,
176
- result: JSON.parse(toolCall.function.arguments)
177
- }))
178
- });
173
+ for (const toolCall of message.toolCalls) {
174
+ result.push({
175
+ role: "tool",
176
+ content: [
177
+ {
178
+ type: "tool-result",
179
+ toolCallId: toolCall.id,
180
+ toolName: toolCall.function.name,
181
+ result: JSON.parse(toolCall.function.arguments)
182
+ }
183
+ ]
184
+ });
185
+ }
179
186
  }
180
187
  } else if (message.role === "user") {
181
188
  result.push({
@@ -190,7 +197,7 @@ function convertMessagesToMastraMessages(messages) {
190
197
  type: "tool-result",
191
198
  toolCallId: message.toolCallId,
192
199
  toolName: "unknown",
193
- result: message.content
200
+ result: message.content || ""
194
201
  }
195
202
  ]
196
203
  });
@@ -215,7 +222,7 @@ function processClientTools(clientTools) {
215
222
  key,
216
223
  {
217
224
  ...value,
218
- parameters: value.parameters ? zodToJsonSchema(value.parameters) : void 0
225
+ inputSchema: value.inputSchema ? zodToJsonSchema(value.inputSchema) : void 0
219
226
  }
220
227
  ];
221
228
  } else {
@@ -255,9 +262,10 @@ var BaseResource = class {
255
262
  headers: {
256
263
  ...options.body && !(options.body instanceof FormData) && (options.method === "POST" || options.method === "PUT") ? { "content-type": "application/json" } : {},
257
264
  ...headers,
258
- ...options.headers
265
+ ...options.headers,
259
266
  // TODO: Bring this back once we figure out what we/users need to do to make this work with cross-origin requests
260
267
  // 'x-mastra-client-type': 'js',
268
+ "x-ai-sdk-compat": "v4"
261
269
  },
262
270
  signal: this.options.abortSignal,
263
271
  body: options.body instanceof FormData ? options.body : options.body ? JSON.stringify(options.body) : void 0
@@ -494,7 +502,7 @@ var Agent = class extends BaseResource {
494
502
  replaceLastMessage
495
503
  });
496
504
  }
497
- await uiUtils.processDataStream({
505
+ await ai.processDataStream({
498
506
  stream,
499
507
  onTextPart(value) {
500
508
  if (currentTextPart == null) {
@@ -591,7 +599,12 @@ var Agent = class extends BaseResource {
591
599
  onToolCallDeltaPart(value) {
592
600
  const partialToolCall = partialToolCalls[value.toolCallId];
593
601
  partialToolCall.text += value.argsTextDelta;
594
- const { value: partialArgs } = uiUtils.parsePartialJson(partialToolCall.text);
602
+ let partialArgs;
603
+ try {
604
+ partialArgs = JSON.parse(partialToolCall.text);
605
+ } catch {
606
+ partialArgs = void 0;
607
+ }
595
608
  const invocation = {
596
609
  state: "partial-call",
597
610
  step: partialToolCall.step,
@@ -710,7 +723,7 @@ var Agent = class extends BaseResource {
710
723
  headers: response.headers
711
724
  });
712
725
  streamResponse.processDataStream = async (options = {}) => {
713
- await uiUtils.processDataStream({
726
+ await ai.processDataStream({
714
727
  stream: streamResponse.body,
715
728
  ...options
716
729
  });
@@ -741,7 +754,12 @@ var Agent = class extends BaseResource {
741
754
  this.processChatResponse({
742
755
  stream: streamForProcessing,
743
756
  update: ({ message }) => {
744
- messages.push(message);
757
+ const existingIndex = messages.findIndex((m) => m.id === message.id);
758
+ if (existingIndex !== -1) {
759
+ messages[existingIndex] = message;
760
+ } else {
761
+ messages.push(message);
762
+ }
745
763
  },
746
764
  onFinish: async ({ finishReason, message }) => {
747
765
  if (finishReason === "tool-calls") {
@@ -801,7 +819,7 @@ var Agent = class extends BaseResource {
801
819
  this.processStreamResponse(
802
820
  {
803
821
  ...processedParams,
804
- messages: [...messageArray, ...messages, lastMessage]
822
+ messages: [...messageArray, ...messages.filter((m) => m.id !== lastMessage.id), lastMessage]
805
823
  },
806
824
  writable
807
825
  ).catch((error) => {
@@ -911,7 +929,7 @@ var Network = class extends BaseResource {
911
929
  throw new Error("No response body");
912
930
  }
913
931
  response.processDataStream = async (options = {}) => {
914
- await uiUtils.processDataStream({
932
+ await ai.processDataStream({
915
933
  stream: response.body,
916
934
  ...options
917
935
  });
@@ -2410,3 +2428,5 @@ var MastraClient = class extends BaseResource {
2410
2428
  };
2411
2429
 
2412
2430
  exports.MastraClient = MastraClient;
2431
+ //# sourceMappingURL=index.cjs.map
2432
+ //# sourceMappingURL=index.cjs.map