@mastra/client-js 1.17.0-alpha.1 → 1.17.0-alpha.2

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/types.d.ts CHANGED
@@ -2,19 +2,33 @@ import type { AgentExecutionOptions, MultiPrimitiveExecutionOptions, AgentGenera
2
2
  import type { MessageListInput } from '@mastra/core/agent/message-list';
3
3
  import type { MastraScorerEntry, ScoreRowData } from '@mastra/core/evals';
4
4
  import type { CoreMessage } from '@mastra/core/llm';
5
- import type { BaseLogMessage, LogLevel } from '@mastra/core/logger';
5
+ import type { LogLevel } from '@mastra/core/logger';
6
6
  import type { MCPToolType, ServerInfo } from '@mastra/core/mcp';
7
7
  import type { AiMessageType, MastraMessageV1, MastraDBMessage, MemoryConfig, StorageThreadType } from '@mastra/core/memory';
8
8
  import type { TracingOptions } from '@mastra/core/observability';
9
9
  import type { RequestContext } from '@mastra/core/request-context';
10
- import type { AgentInstructionBlock, PaginationInfo, WorkflowRuns, StorageListMessagesInput, ObservationalMemoryRecord, Rule, RuleGroup, StorageConditionalVariant, StorageConditionalField, StoredProcessorGraph } from '@mastra/core/storage';
10
+ import type { AgentInstructionBlock, PaginationInfo, WorkflowRuns, StorageListMessagesInput, Rule, RuleGroup, StorageConditionalVariant, StorageConditionalField, StoredProcessorGraph } from '@mastra/core/storage';
11
11
  import type { QueryResult } from '@mastra/core/vector';
12
12
  import type { TimeTravelContext, Workflow, WorkflowResult, WorkflowRunStatus, WorkflowState } from '@mastra/core/workflows';
13
13
  import type { PublicSchema } from '@mastra/schema-compat/schema';
14
14
  import type { JSONSchema7 } from 'json-schema';
15
15
  import type { ZodSchema as ZodSchemaV3 } from 'zod/v3';
16
16
  import type { ZodType as ZodTypeV4 } from 'zod/v4';
17
+ import type { Body, QueryParams, RouteKey, RouteResponse, Simplify } from './route-types.generated.js';
17
18
  export type ZodSchema = ZodSchemaV3 | ZodTypeV4;
19
+ type OptionalizeUndefined<T> = T extends Date ? Date : T extends (...args: any[]) => any ? T : T extends readonly (infer U)[] ? OptionalizeUndefined<U>[] : T extends object ? Simplify<{
20
+ [K in keyof T as undefined extends T[K] ? never : K]: OptionalizeUndefined<T[K]>;
21
+ } & {
22
+ [K in keyof T as undefined extends T[K] ? K : never]?: OptionalizeUndefined<Exclude<T[K], undefined>>;
23
+ }> : T;
24
+ type Serialized<T> = T extends Date ? string : T extends readonly (infer U)[] ? Serialized<U>[] : T extends object ? {
25
+ [K in keyof T]: Serialized<T[K]>;
26
+ } : T;
27
+ type RequestContextOptions = {
28
+ requestContext?: RequestContext | Record<string, any>;
29
+ };
30
+ type GeneratedRequest<T> = OptionalizeUndefined<T>;
31
+ type GeneratedResponse<T extends RouteKey> = Serialized<RouteResponse<T>>;
18
32
  export interface ClientOptions {
19
33
  /** Base URL for API requests */
20
34
  baseUrl: string;
@@ -426,17 +440,8 @@ export interface GetWorkflowResponse {
426
440
  isProcessorWorkflow?: boolean;
427
441
  }
428
442
  export type WorkflowRunResult = WorkflowResult<any, any, any, any>;
429
- export interface UpsertVectorParams {
430
- indexName: string;
431
- vectors: number[][];
432
- metadata?: Record<string, any>[];
433
- ids?: string[];
434
- }
435
- export interface CreateIndexParams {
436
- indexName: string;
437
- dimension: number;
438
- metric?: 'cosine' | 'euclidean' | 'dotproduct';
439
- }
443
+ export type UpsertVectorParams = GeneratedRequest<Body<'POST /vector/:vectorName/upsert'>>;
444
+ export type CreateIndexParams = GeneratedRequest<Body<'POST /vector/:vectorName/create-index'>>;
440
445
  export interface QueryVectorParams {
441
446
  indexName: string;
442
447
  queryVector: number[];
@@ -445,11 +450,7 @@ export interface QueryVectorParams {
445
450
  includeVector?: boolean;
446
451
  }
447
452
  export type QueryVectorResponse = QueryResult[];
448
- export interface GetVectorIndexResponse {
449
- dimension: number;
450
- metric: 'cosine' | 'euclidean' | 'dotproduct';
451
- count: number;
452
- }
453
+ export type GetVectorIndexResponse = GeneratedResponse<'GET /vector/:vectorName/indexes/:indexName'>;
453
454
  export interface SaveMessageToMemoryParams {
454
455
  messages: (MastraMessageV1 | MastraDBMessage)[];
455
456
  agentId: string;
@@ -462,15 +463,8 @@ export interface SaveNetworkMessageToMemoryParams {
462
463
  export type SaveMessageToMemoryResponse = {
463
464
  messages: (MastraMessageV1 | MastraDBMessage)[];
464
465
  };
465
- export interface CreateMemoryThreadParams {
466
- title?: string;
467
- metadata?: Record<string, any>;
468
- resourceId: string;
469
- threadId?: string;
470
- agentId: string;
471
- requestContext?: RequestContext | Record<string, any>;
472
- }
473
- export type CreateMemoryThreadResponse = StorageThreadType;
466
+ export type CreateMemoryThreadParams = GeneratedRequest<Body<'POST /memory/threads'> & QueryParams<'POST /memory/threads'>> & RequestContextOptions;
467
+ export type CreateMemoryThreadResponse = GeneratedResponse<'POST /memory/threads'>;
474
468
  export interface ListMemoryThreadsParams {
475
469
  /**
476
470
  * Optional resourceId to filter threads. When not provided, returns all threads.
@@ -491,16 +485,9 @@ export interface ListMemoryThreadsParams {
491
485
  sortDirection?: 'ASC' | 'DESC';
492
486
  requestContext?: RequestContext | Record<string, any>;
493
487
  }
494
- export type ListMemoryThreadsResponse = PaginationInfo & {
495
- threads: StorageThreadType[];
496
- };
497
- export interface GetMemoryConfigParams {
498
- agentId: string;
499
- requestContext?: RequestContext | Record<string, any>;
500
- }
501
- export type GetMemoryConfigResponse = {
502
- config: MemoryConfig;
503
- };
488
+ export type ListMemoryThreadsResponse = GeneratedResponse<'GET /memory/threads'>;
489
+ export type GetMemoryConfigParams = GeneratedRequest<QueryParams<'GET /memory/config'>> & RequestContextOptions;
490
+ export type GetMemoryConfigResponse = GeneratedResponse<'GET /memory/config'>;
504
491
  export interface UpdateMemoryThreadParams {
505
492
  title: string;
506
493
  metadata: Record<string, any>;
@@ -532,15 +519,7 @@ export type CloneMemoryThreadResponse = {
532
519
  thread: StorageThreadType;
533
520
  clonedMessages: MastraDBMessage[];
534
521
  };
535
- export interface GetLogsParams {
536
- transportId: string;
537
- fromDate?: Date;
538
- toDate?: Date;
539
- logLevel?: LogLevel;
540
- filters?: Record<string, string>;
541
- page?: number;
542
- perPage?: number;
543
- }
522
+ export type GetLogsParams = GeneratedRequest<QueryParams<'GET /logs'>>;
544
523
  export interface GetLogParams {
545
524
  runId: string;
546
525
  transportId: string;
@@ -551,13 +530,7 @@ export interface GetLogParams {
551
530
  page?: number;
552
531
  perPage?: number;
553
532
  }
554
- export type GetLogsResponse = {
555
- logs: BaseLogMessage[];
556
- total: number;
557
- page: number;
558
- perPage: number;
559
- hasMore: boolean;
560
- };
533
+ export type GetLogsResponse = GeneratedResponse<'GET /logs'>;
561
534
  export type RequestFunction = (path: string, options?: RequestOptions) => Promise<any>;
562
535
  export interface GetVNextNetworkResponse {
563
536
  id: string;
@@ -1379,9 +1352,7 @@ export interface CompareScorerVersionsResponse {
1379
1352
  toVersion: ScorerVersionResponse;
1380
1353
  diffs: VersionDiff[];
1381
1354
  }
1382
- export interface ListAgentsModelProvidersResponse {
1383
- providers: Provider[];
1384
- }
1355
+ export type ListAgentsModelProvidersResponse = GeneratedResponse<'GET /agents/providers'>;
1385
1356
  export interface Provider {
1386
1357
  id: string;
1387
1358
  name: string;
@@ -1394,62 +1365,27 @@ export interface MastraPackage {
1394
1365
  name: string;
1395
1366
  version: string;
1396
1367
  }
1397
- export interface GetSystemPackagesResponse {
1398
- packages: MastraPackage[];
1399
- isDev: boolean;
1400
- cmsEnabled: boolean;
1401
- observabilityEnabled: boolean;
1402
- storageType?: string;
1403
- observabilityStorageType?: string;
1404
- observabilityRuntimeStrategy?: 'realtime' | 'batch-with-updates' | 'insert-only' | 'event-sourced';
1405
- }
1368
+ export type GetSystemPackagesResponse = GeneratedResponse<'GET /system/packages'>;
1406
1369
  /**
1407
1370
  * Workspace capabilities
1408
1371
  */
1409
- export interface WorkspaceCapabilities {
1410
- hasFilesystem: boolean;
1411
- hasSandbox: boolean;
1412
- canBM25: boolean;
1413
- canVector: boolean;
1414
- canHybrid: boolean;
1415
- hasSkills: boolean;
1416
- }
1372
+ export type WorkspaceCapabilities = ListWorkspacesResponse['workspaces'][number]['capabilities'];
1417
1373
  /**
1418
1374
  * Workspace safety configuration
1419
1375
  */
1420
- export interface WorkspaceSafety {
1421
- readOnly: boolean;
1422
- }
1376
+ export type WorkspaceSafety = ListWorkspacesResponse['workspaces'][number]['safety'];
1423
1377
  /**
1424
1378
  * Response for getting workspace info
1425
1379
  */
1426
- export interface WorkspaceInfoResponse {
1427
- isWorkspaceConfigured: boolean;
1428
- id?: string;
1429
- name?: string;
1430
- status?: string;
1431
- capabilities?: WorkspaceCapabilities;
1432
- safety?: WorkspaceSafety;
1433
- }
1380
+ export type WorkspaceInfoResponse = GeneratedResponse<'GET /workspaces/:workspaceId'>;
1434
1381
  /**
1435
1382
  * Workspace item in list response
1436
1383
  */
1437
- export interface WorkspaceItem {
1438
- id: string;
1439
- name: string;
1440
- status: string;
1441
- source: 'mastra' | 'agent';
1442
- agentId?: string;
1443
- agentName?: string;
1444
- capabilities: WorkspaceCapabilities;
1445
- safety: WorkspaceSafety;
1446
- }
1384
+ export type WorkspaceItem = ListWorkspacesResponse['workspaces'][number];
1447
1385
  /**
1448
1386
  * Response for listing all workspaces
1449
1387
  */
1450
- export interface ListWorkspacesResponse {
1451
- workspaces: WorkspaceItem[];
1452
- }
1388
+ export type ListWorkspacesResponse = GeneratedResponse<'GET /workspaces'>;
1453
1389
  /**
1454
1390
  * File entry in directory listing
1455
1391
  */
@@ -1461,52 +1397,27 @@ export interface WorkspaceFileEntry {
1461
1397
  /**
1462
1398
  * Response for reading a file
1463
1399
  */
1464
- export interface WorkspaceFsReadResponse {
1465
- path: string;
1466
- content: string;
1467
- type: 'file' | 'directory';
1468
- size?: number;
1469
- mimeType?: string;
1470
- }
1400
+ export type WorkspaceFsReadResponse = GeneratedResponse<'GET /workspaces/:workspaceId/fs/read'>;
1471
1401
  /**
1472
1402
  * Response for writing a file
1473
1403
  */
1474
- export interface WorkspaceFsWriteResponse {
1475
- success: boolean;
1476
- path: string;
1477
- }
1404
+ export type WorkspaceFsWriteResponse = GeneratedResponse<'POST /workspaces/:workspaceId/fs/write'>;
1478
1405
  /**
1479
1406
  * Response for listing files
1480
1407
  */
1481
- export interface WorkspaceFsListResponse {
1482
- path: string;
1483
- entries: WorkspaceFileEntry[];
1484
- }
1408
+ export type WorkspaceFsListResponse = GeneratedResponse<'GET /workspaces/:workspaceId/fs/list'>;
1485
1409
  /**
1486
1410
  * Response for deleting a file
1487
1411
  */
1488
- export interface WorkspaceFsDeleteResponse {
1489
- success: boolean;
1490
- path: string;
1491
- }
1412
+ export type WorkspaceFsDeleteResponse = GeneratedResponse<'DELETE /workspaces/:workspaceId/fs/delete'>;
1492
1413
  /**
1493
1414
  * Response for creating a directory
1494
1415
  */
1495
- export interface WorkspaceFsMkdirResponse {
1496
- success: boolean;
1497
- path: string;
1498
- }
1416
+ export type WorkspaceFsMkdirResponse = GeneratedResponse<'POST /workspaces/:workspaceId/fs/mkdir'>;
1499
1417
  /**
1500
1418
  * Response for getting file stats
1501
1419
  */
1502
- export interface WorkspaceFsStatResponse {
1503
- path: string;
1504
- type: 'file' | 'directory';
1505
- size?: number;
1506
- createdAt?: string;
1507
- modifiedAt?: string;
1508
- mimeType?: string;
1509
- }
1420
+ export type WorkspaceFsStatResponse = GeneratedResponse<'GET /workspaces/:workspaceId/fs/stat'>;
1510
1421
  /**
1511
1422
  * Workspace search result
1512
1423
  */
@@ -1527,35 +1438,19 @@ export interface WorkspaceSearchResult {
1527
1438
  /**
1528
1439
  * Parameters for searching workspace content
1529
1440
  */
1530
- export interface WorkspaceSearchParams {
1531
- query: string;
1532
- topK?: number;
1533
- mode?: 'bm25' | 'vector' | 'hybrid';
1534
- minScore?: number;
1535
- }
1441
+ export type WorkspaceSearchParams = GeneratedRequest<QueryParams<'GET /workspaces/:workspaceId/search'>>;
1536
1442
  /**
1537
1443
  * Response for searching workspace
1538
1444
  */
1539
- export interface WorkspaceSearchResponse {
1540
- results: WorkspaceSearchResult[];
1541
- query: string;
1542
- mode: 'bm25' | 'vector' | 'hybrid';
1543
- }
1445
+ export type WorkspaceSearchResponse = GeneratedResponse<'GET /workspaces/:workspaceId/search'>;
1544
1446
  /**
1545
1447
  * Parameters for indexing content
1546
1448
  */
1547
- export interface WorkspaceIndexParams {
1548
- path: string;
1549
- content: string;
1550
- metadata?: Record<string, unknown>;
1551
- }
1449
+ export type WorkspaceIndexParams = GeneratedRequest<Body<'POST /workspaces/:workspaceId/index'>>;
1552
1450
  /**
1553
1451
  * Response for indexing content
1554
1452
  */
1555
- export interface WorkspaceIndexResponse {
1556
- success: boolean;
1557
- path: string;
1558
- }
1453
+ export type WorkspaceIndexResponse = GeneratedResponse<'POST /workspaces/:workspaceId/index'>;
1559
1454
  /**
1560
1455
  * Skill source type indicating where the skill comes from
1561
1456
  */
@@ -1794,55 +1689,26 @@ export interface ExecuteProcessorResponse {
1794
1689
  /**
1795
1690
  * Parameters for getting observational memory
1796
1691
  */
1797
- export interface GetObservationalMemoryParams {
1798
- agentId: string;
1799
- resourceId?: string;
1800
- threadId?: string;
1692
+ export type GetObservationalMemoryParams = Omit<GeneratedRequest<QueryParams<'GET /memory/observational-memory'>>, 'from' | 'to'> & {
1801
1693
  from?: Date | string;
1802
1694
  to?: Date | string;
1803
- offset?: number;
1804
- limit?: number;
1805
- requestContext?: RequestContext | Record<string, any>;
1806
- }
1695
+ } & RequestContextOptions;
1807
1696
  /**
1808
1697
  * Response for observational memory endpoint
1809
1698
  */
1810
- export interface GetObservationalMemoryResponse {
1811
- record: ObservationalMemoryRecord | null;
1812
- history?: ObservationalMemoryRecord[];
1813
- }
1699
+ export type GetObservationalMemoryResponse = GeneratedResponse<'GET /memory/observational-memory'>;
1814
1700
  /**
1815
1701
  * Parameters for awaiting buffer status
1816
1702
  */
1817
- export interface AwaitBufferStatusParams {
1818
- agentId: string;
1819
- resourceId?: string;
1820
- threadId?: string;
1821
- requestContext?: RequestContext;
1822
- }
1703
+ export type AwaitBufferStatusParams = GeneratedRequest<Body<'POST /memory/observational-memory/buffer-status'>> & RequestContextOptions;
1823
1704
  /**
1824
1705
  * Response for buffer status endpoint
1825
1706
  */
1826
- export interface AwaitBufferStatusResponse {
1827
- record: ObservationalMemoryRecord | null;
1828
- }
1707
+ export type AwaitBufferStatusResponse = GeneratedResponse<'POST /memory/observational-memory/buffer-status'>;
1829
1708
  /**
1830
1709
  * Extended memory status response with OM info
1831
1710
  */
1832
- export interface GetMemoryStatusResponse {
1833
- result: boolean;
1834
- memoryType?: 'local' | 'gateway';
1835
- observationalMemory?: {
1836
- enabled: boolean;
1837
- hasRecord?: boolean;
1838
- originType?: string;
1839
- lastObservedAt?: Date | null;
1840
- tokenCount?: number;
1841
- observationTokenCount?: number;
1842
- isObserving?: boolean;
1843
- isReflecting?: boolean;
1844
- };
1845
- }
1711
+ export type GetMemoryStatusResponse = GeneratedResponse<'GET /memory/status'>;
1846
1712
  /**
1847
1713
  * Extended memory config response with OM config
1848
1714
  */
@@ -1868,67 +1734,20 @@ export interface GetMemoryConfigResponseExtended {
1868
1734
  /**
1869
1735
  * Response for listing available vector stores
1870
1736
  */
1871
- export interface ListVectorsResponse {
1872
- vectors: Array<{
1873
- name: string;
1874
- id: string;
1875
- type: string;
1876
- }>;
1877
- }
1737
+ export type ListVectorsResponse = GeneratedResponse<'GET /vectors'>;
1878
1738
  /**
1879
1739
  * Response for listing available embedding models
1880
1740
  */
1881
- export interface ListEmbeddersResponse {
1882
- embedders: Array<{
1883
- id: string;
1884
- provider: string;
1885
- name: string;
1886
- description: string;
1887
- dimensions: number;
1888
- maxInputTokens: number;
1889
- }>;
1890
- }
1891
- export interface ToolProviderInfo {
1892
- id: string;
1893
- name: string;
1894
- description?: string;
1895
- }
1896
- export interface ToolProviderToolkit {
1897
- slug: string;
1898
- name: string;
1899
- description?: string;
1900
- icon?: string;
1901
- }
1902
- export interface ToolProviderToolInfo {
1903
- slug: string;
1904
- name: string;
1905
- description?: string;
1906
- toolkit?: string;
1907
- }
1908
- export interface ToolProviderPagination {
1909
- total?: number;
1910
- page?: number;
1911
- perPage?: number;
1912
- hasMore: boolean;
1913
- }
1914
- export interface ListToolProvidersResponse {
1915
- providers: ToolProviderInfo[];
1916
- }
1917
- export interface ListToolProviderToolkitsResponse {
1918
- data: ToolProviderToolkit[];
1919
- pagination?: ToolProviderPagination;
1920
- }
1921
- export interface ListToolProviderToolsParams {
1922
- toolkit?: string;
1923
- search?: string;
1924
- page?: number;
1925
- perPage?: number;
1926
- }
1927
- export interface ListToolProviderToolsResponse {
1928
- data: ToolProviderToolInfo[];
1929
- pagination?: ToolProviderPagination;
1930
- }
1931
- export type GetToolProviderToolSchemaResponse = Record<string, unknown>;
1741
+ export type ListEmbeddersResponse = GeneratedResponse<'GET /embedders'>;
1742
+ export type ToolProviderInfo = GeneratedResponse<'GET /tool-providers'>['providers'][number];
1743
+ export type ToolProviderToolkit = GeneratedResponse<'GET /tool-providers/:providerId/toolkits'>['data'][number];
1744
+ export type ToolProviderToolInfo = GeneratedResponse<'GET /tool-providers/:providerId/tools'>['data'][number];
1745
+ export type ToolProviderPagination = NonNullable<GeneratedResponse<'GET /tool-providers/:providerId/toolkits'>['pagination']>;
1746
+ export type ListToolProvidersResponse = GeneratedResponse<'GET /tool-providers'>;
1747
+ export type ListToolProviderToolkitsResponse = GeneratedResponse<'GET /tool-providers/:providerId/toolkits'>;
1748
+ export type ListToolProviderToolsParams = GeneratedRequest<QueryParams<'GET /tool-providers/:providerId/tools'>>;
1749
+ export type ListToolProviderToolsResponse = GeneratedResponse<'GET /tool-providers/:providerId/tools'>;
1750
+ export type GetToolProviderToolSchemaResponse = GeneratedResponse<'GET /tool-providers/:providerId/tools/:toolSlug/schema'>;
1932
1751
  /**
1933
1752
  * Provider phase names as returned by the server (prefixed form).
1934
1753
  * Distinct from ProcessorPhase which uses the short/unprefixed form for processor endpoints.
@@ -2292,53 +2111,10 @@ export interface DeletePromptBlockVersionResponse {
2292
2111
  }
2293
2112
  export type BackgroundTaskStatus = 'pending' | 'running' | 'completed' | 'failed' | 'cancelled' | 'timed_out';
2294
2113
  export type BackgroundTaskDateColumn = 'createdAt' | 'startedAt' | 'completedAt';
2295
- export interface BackgroundTaskResponse {
2296
- id: string;
2297
- status: BackgroundTaskStatus;
2298
- toolName: string;
2299
- toolCallId: string;
2300
- args: Record<string, unknown>;
2301
- agentId: string;
2302
- threadId?: string;
2303
- resourceId?: string;
2304
- runId: string;
2305
- result?: unknown;
2306
- error?: {
2307
- message: string;
2308
- stack?: string;
2309
- };
2310
- createdAt: string;
2311
- startedAt?: string;
2312
- completedAt?: string;
2313
- retryCount: number;
2314
- maxRetries: number;
2315
- timeoutMs: number;
2316
- }
2317
- export interface ListBackgroundTasksParams {
2318
- agentId?: string;
2319
- status?: BackgroundTaskStatus;
2320
- runId?: string;
2321
- threadId?: string;
2322
- resourceId?: string;
2323
- fromDate?: Date;
2324
- toDate?: Date;
2325
- dateFilterBy?: BackgroundTaskDateColumn;
2326
- orderBy?: BackgroundTaskDateColumn;
2327
- orderDirection?: 'asc' | 'desc';
2328
- page?: number;
2329
- perPage?: number;
2330
- }
2331
- export interface ListBackgroundTasksResponse {
2332
- tasks: BackgroundTaskResponse[];
2333
- total: number;
2334
- }
2335
- export interface StreamBackgroundTasksParams {
2336
- agentId?: string;
2337
- runId?: string;
2338
- threadId?: string;
2339
- resourceId?: string;
2340
- taskId?: string;
2341
- }
2114
+ export type BackgroundTaskResponse = GeneratedResponse<'GET /background-tasks'>['tasks'][number];
2115
+ export type ListBackgroundTasksParams = GeneratedRequest<QueryParams<'GET /background-tasks'>>;
2116
+ export type ListBackgroundTasksResponse = GeneratedResponse<'GET /background-tasks'>;
2117
+ export type StreamBackgroundTasksParams = GeneratedRequest<QueryParams<'GET /background-tasks/stream'>>;
2342
2118
  export type ScheduleStatus = 'active' | 'paused';
2343
2119
  export interface ScheduleTarget {
2344
2120
  type: 'workflow';