@mastra/client-js 1.10.1-alpha.4 → 1.11.0-alpha.6

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/dist/index.js CHANGED
@@ -329,11 +329,22 @@ async function executeToolCallAndRespond({
329
329
  return response;
330
330
  }
331
331
  var AgentVoice = class extends BaseResource {
332
- constructor(options, agentId) {
332
+ constructor(options, agentId, version) {
333
333
  super(options);
334
334
  this.agentId = agentId;
335
+ this.version = version;
335
336
  this.agentId = agentId;
336
337
  }
338
+ getQueryString(requestContext, delimiter = "?") {
339
+ const searchParams = new URLSearchParams(requestContextQueryString(requestContext).slice(1));
340
+ if (this.version) {
341
+ new URLSearchParams(toQueryParams(this.version)).forEach((value, key) => {
342
+ searchParams.set(key, value);
343
+ });
344
+ }
345
+ const queryString = searchParams.toString();
346
+ return queryString ? `${delimiter}${queryString}` : "";
347
+ }
337
348
  /**
338
349
  * Convert text to speech using the agent's voice provider
339
350
  * @param text - Text to convert to speech
@@ -374,7 +385,7 @@ var AgentVoice = class extends BaseResource {
374
385
  * @returns Promise containing list of available speakers
375
386
  */
376
387
  getSpeakers(requestContext) {
377
- return this.request(`/agents/${this.agentId}/voice/speakers${requestContextQueryString(requestContext)}`);
388
+ return this.request(`/agents/${this.agentId}/voice/speakers${this.getQueryString(requestContext)}`);
378
389
  }
379
390
  /**
380
391
  * Get the listener configuration for the agent's voice provider
@@ -383,23 +394,34 @@ var AgentVoice = class extends BaseResource {
383
394
  * @returns Promise containing a check if the agent has listening capabilities
384
395
  */
385
396
  getListener(requestContext) {
386
- return this.request(`/agents/${this.agentId}/voice/listener${requestContextQueryString(requestContext)}`);
397
+ return this.request(`/agents/${this.agentId}/voice/listener${this.getQueryString(requestContext)}`);
387
398
  }
388
399
  };
389
400
  var Agent = class extends BaseResource {
390
- constructor(options, agentId) {
401
+ constructor(options, agentId, version) {
391
402
  super(options);
392
403
  this.agentId = agentId;
393
- this.voice = new AgentVoice(options, this.agentId);
404
+ this.version = version;
405
+ this.voice = new AgentVoice(options, this.agentId, this.version);
394
406
  }
395
407
  voice;
408
+ getQueryString(requestContext, delimiter = "?") {
409
+ const searchParams = new URLSearchParams(requestContextQueryString(requestContext).slice(1));
410
+ if (this.version) {
411
+ new URLSearchParams(toQueryParams(this.version)).forEach((value, key) => {
412
+ searchParams.set(key, value);
413
+ });
414
+ }
415
+ const queryString = searchParams.toString();
416
+ return queryString ? `${delimiter}${queryString}` : "";
417
+ }
396
418
  /**
397
419
  * Retrieves details about the agent
398
420
  * @param requestContext - Optional request context to pass as query parameter
399
421
  * @returns Promise containing agent details including model and instructions
400
422
  */
401
423
  details(requestContext) {
402
- return this.request(`/agents/${this.agentId}${requestContextQueryString(requestContext)}`);
424
+ return this.request(`/agents/${this.agentId}${this.getQueryString(requestContext)}`);
403
425
  }
404
426
  enhanceInstructions(instructions, comment) {
405
427
  return this.request(`/agents/${this.agentId}/instructions/enhance`, {
@@ -422,6 +444,108 @@ var Agent = class extends BaseResource {
422
444
  }
423
445
  });
424
446
  }
447
+ /**
448
+ * Lists all override versions for this code agent
449
+ * @param params - Optional pagination and sorting parameters
450
+ * @param requestContext - Optional request context to pass as query parameter
451
+ * @returns Promise containing paginated list of versions
452
+ */
453
+ listVersions(params, requestContext) {
454
+ const queryParams = new URLSearchParams();
455
+ if (params?.page !== void 0) queryParams.set("page", String(params.page));
456
+ if (params?.perPage !== void 0) queryParams.set("perPage", String(params.perPage));
457
+ if (params?.orderBy) queryParams.set("orderBy", params.orderBy);
458
+ if (params?.sortDirection) queryParams.set("sortDirection", params.sortDirection);
459
+ const queryString = queryParams.toString();
460
+ const contextString = requestContextQueryString(requestContext);
461
+ return this.request(
462
+ `/stored/agents/${encodeURIComponent(this.agentId)}/versions${queryString ? `?${queryString}` : ""}${contextString ? `${queryString ? "&" : "?"}${contextString.slice(1)}` : ""}`
463
+ );
464
+ }
465
+ /**
466
+ * Creates a new override version snapshot for this code agent
467
+ * @param params - Optional override fields and change message for the version
468
+ * @param requestContext - Optional request context to pass as query parameter
469
+ * @returns Promise containing the created version
470
+ */
471
+ createVersion(params, requestContext) {
472
+ return this.request(
473
+ `/stored/agents/${encodeURIComponent(this.agentId)}/versions${requestContextQueryString(requestContext)}`,
474
+ {
475
+ method: "POST",
476
+ body: params || {}
477
+ }
478
+ );
479
+ }
480
+ /**
481
+ * Retrieves a specific override version by its ID
482
+ * @param versionId - The UUID of the version to retrieve
483
+ * @param requestContext - Optional request context to pass as query parameter
484
+ * @returns Promise containing the version details
485
+ */
486
+ getVersion(versionId, requestContext) {
487
+ return this.request(
488
+ `/stored/agents/${encodeURIComponent(this.agentId)}/versions/${encodeURIComponent(versionId)}${requestContextQueryString(requestContext)}`
489
+ );
490
+ }
491
+ /**
492
+ * Activates a specific override version for this code agent
493
+ * @param versionId - The UUID of the version to activate
494
+ * @param requestContext - Optional request context to pass as query parameter
495
+ * @returns Promise containing the activated version details
496
+ */
497
+ activateVersion(versionId, requestContext) {
498
+ return this.request(
499
+ `/stored/agents/${encodeURIComponent(this.agentId)}/versions/${encodeURIComponent(versionId)}/activate${requestContextQueryString(requestContext)}`,
500
+ {
501
+ method: "POST"
502
+ }
503
+ );
504
+ }
505
+ /**
506
+ * Restores a version by creating a new override version with the same configuration
507
+ * @param versionId - The UUID of the version to restore
508
+ * @param requestContext - Optional request context to pass as query parameter
509
+ * @returns Promise containing the newly created version
510
+ */
511
+ restoreVersion(versionId, requestContext) {
512
+ return this.request(
513
+ `/stored/agents/${encodeURIComponent(this.agentId)}/versions/${encodeURIComponent(versionId)}/restore${requestContextQueryString(requestContext)}`,
514
+ {
515
+ method: "POST"
516
+ }
517
+ );
518
+ }
519
+ /**
520
+ * Deletes a specific override version
521
+ * @param versionId - The UUID of the version to delete
522
+ * @param requestContext - Optional request context to pass as query parameter
523
+ * @returns Promise that resolves with deletion response
524
+ */
525
+ deleteVersion(versionId, requestContext) {
526
+ return this.request(
527
+ `/stored/agents/${encodeURIComponent(this.agentId)}/versions/${encodeURIComponent(versionId)}${requestContextQueryString(requestContext)}`,
528
+ {
529
+ method: "DELETE"
530
+ }
531
+ );
532
+ }
533
+ /**
534
+ * Compares two override versions and returns their differences
535
+ * @param fromId - The UUID of the source version
536
+ * @param toId - The UUID of the target version
537
+ * @param requestContext - Optional request context to pass as query parameter
538
+ * @returns Promise containing the comparison results
539
+ */
540
+ compareVersions(fromId, toId, requestContext) {
541
+ const queryParams = new URLSearchParams();
542
+ queryParams.set("from", fromId);
543
+ queryParams.set("to", toId);
544
+ const contextString = requestContextQueryString(requestContext);
545
+ return this.request(
546
+ `/stored/agents/${encodeURIComponent(this.agentId)}/versions/compare?${queryParams.toString()}${contextString ? `&${contextString.slice(1)}` : ""}`
547
+ );
548
+ }
425
549
  async generateLegacy(params) {
426
550
  const processedParams = {
427
551
  ...params,
@@ -1515,7 +1639,7 @@ var Agent = class extends BaseResource {
1515
1639
  * @returns Promise containing tool details
1516
1640
  */
1517
1641
  getTool(toolId, requestContext) {
1518
- return this.request(`/agents/${this.agentId}/tools/${toolId}${requestContextQueryString(requestContext)}`);
1642
+ return this.request(`/agents/${this.agentId}/tools/${toolId}${this.getQueryString(requestContext)}`);
1519
1643
  }
1520
1644
  /**
1521
1645
  * Executes a tool for the agent
@@ -3935,10 +4059,11 @@ var MastraClient = class extends BaseResource {
3935
4059
  /**
3936
4060
  * Gets an agent instance by ID
3937
4061
  * @param agentId - ID of the agent to retrieve
4062
+ * @param version - Optional version selector for stored agent overrides
3938
4063
  * @returns Agent instance
3939
4064
  */
3940
- getAgent(agentId) {
3941
- return new Agent(this.options, agentId);
4065
+ getAgent(agentId, version) {
4066
+ return new Agent(this.options, agentId, version);
3942
4067
  }
3943
4068
  /**
3944
4069
  * Lists memory threads with optional filtering by resourceId and/or metadata