@mastra/mcp-docs-server 1.2.5-alpha.1 → 1.2.5-alpha.5
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/.docs/docs/agent-builder/deploying.md +1 -1
- package/.docs/docs/agent-controller/overview.md +1 -1
- package/.docs/docs/agent-controller/session.md +1 -1
- package/.docs/docs/agents/overview.md +1 -1
- package/.docs/docs/agents/processors.md +1 -1
- package/.docs/docs/agents/supervisor-agents.md +3 -3
- package/.docs/docs/agents/using-tools.md +1 -1
- package/.docs/docs/{agents → long-running-agents}/background-tasks.md +2 -2
- package/.docs/docs/{agents → long-running-agents}/durable-agents.md +2 -2
- package/.docs/docs/{agents → long-running-agents}/goals.md +1 -1
- package/.docs/docs/{agents → long-running-agents}/heartbeats.md +5 -5
- package/.docs/docs/{agents → long-running-agents}/signal-providers.md +4 -4
- package/.docs/docs/memory/working-memory.md +1 -1
- package/.docs/docs/observability/config.md +1 -2
- package/.docs/docs/server/pubsub.md +2 -2
- package/.docs/docs/voice/overview.md +3 -3
- package/.docs/docs/voice/speech-to-speech.md +81 -1
- package/.docs/docs/voice/speech-to-text.md +19 -1
- package/.docs/docs/voice/text-to-speech.md +21 -1
- package/.docs/docs/workflows/control-flow.md +1 -1
- package/.docs/docs/workflows/error-handling.md +1 -1
- package/.docs/docs/workflows/human-in-the-loop.md +1 -1
- package/.docs/docs/workflows/overview.md +1 -1
- package/.docs/docs/workflows/snapshots.md +1 -1
- package/.docs/docs/workflows/suspend-and-resume.md +1 -1
- package/.docs/docs/workflows/time-travel.md +1 -1
- package/.docs/docs/workflows/workflow-state.md +1 -1
- package/.docs/guides/build-your-ui/copilotkit/channels.md +76 -0
- package/.docs/guides/build-your-ui/copilotkit/generative-ui.md +174 -0
- package/.docs/guides/build-your-ui/copilotkit/overview.md +411 -0
- package/.docs/guides/concepts/streaming.md +1 -1
- package/.docs/guides/deployment/vercel.md +1 -2
- package/.docs/guides/guide/signal-provider.md +5 -5
- package/.docs/models/environment-variables.md +1 -0
- package/.docs/models/index.md +1 -1
- package/.docs/models/providers/alibaba-cn.md +2 -1
- package/.docs/models/providers/friendli.md +1 -2
- package/.docs/models/providers/nvidia.md +3 -2
- package/.docs/models/providers/tencent-token-plan.md +7 -7
- package/.docs/models/providers/tencent-tokenhub.md +5 -4
- package/.docs/models/providers.md +1 -0
- package/.docs/reference/acp/acp-agent.md +5 -5
- package/.docs/reference/acp/create-acp-tool.md +5 -5
- package/.docs/reference/agent-controller/agent-controller-class.md +27 -27
- package/.docs/reference/agents/agent.md +34 -34
- package/.docs/reference/agents/channels.md +19 -19
- package/.docs/reference/agents/createSkill.md +2 -2
- package/.docs/reference/agents/durable-agent.md +22 -22
- package/.docs/reference/agents/generate.md +10 -10
- package/.docs/reference/agents/generateLegacy.md +12 -12
- package/.docs/reference/agents/getMetadata.md +1 -1
- package/.docs/reference/agents/getVoice.md +1 -1
- package/.docs/reference/agents/inngest-agent.md +9 -9
- package/.docs/reference/agents/network.md +1 -1
- package/.docs/reference/ai-sdk/chat-route.md +4 -4
- package/.docs/reference/ai-sdk/handle-chat-stream.md +6 -6
- package/.docs/reference/ai-sdk/handle-network-stream.md +3 -3
- package/.docs/reference/ai-sdk/handle-workflow-stream.md +1 -1
- package/.docs/reference/ai-sdk/network-route.md +4 -4
- package/.docs/reference/ai-sdk/to-ai-sdk-messages.md +1 -1
- package/.docs/reference/ai-sdk/to-ai-sdk-stream.md +1 -1
- package/.docs/reference/ai-sdk/with-mastra.md +2 -2
- package/.docs/reference/ai-sdk/workflow-route.md +2 -2
- package/.docs/reference/ai-sdk/workflow-snapshot-to-stream.md +1 -1
- package/.docs/reference/auth/google.md +10 -10
- package/.docs/reference/auth/okta.md +11 -11
- package/.docs/reference/auth/workos.md +3 -3
- package/.docs/reference/channels/slack-provider.md +15 -15
- package/.docs/reference/cli/mastra.md +145 -0
- package/.docs/reference/client-js/agents.md +9 -9
- package/.docs/reference/client-js/mastra-client.md +5 -5
- package/.docs/reference/client-js/responses.md +3 -3
- package/.docs/reference/configuration.md +1 -1
- package/.docs/reference/core/getAgentById.md +3 -3
- package/.docs/reference/core/getWorkflow.md +1 -1
- package/.docs/reference/core/listWorkflows.md +1 -1
- package/.docs/reference/core/mastra-class.md +3 -3
- package/.docs/reference/core/removeWorkspace.md +2 -2
- package/.docs/reference/datasets/compareExperiments.md +1 -1
- package/.docs/reference/datasets/getItemHistory.md +1 -1
- package/.docs/reference/datasets/list.md +5 -5
- package/.docs/reference/datasets/listExperimentResults.md +4 -4
- package/.docs/reference/datasets/listExperiments.md +4 -4
- package/.docs/reference/datasets/listItems.md +5 -5
- package/.docs/reference/datasets/listVersions.md +3 -3
- package/.docs/reference/datasets/startExperiment.md +8 -8
- package/.docs/reference/datasets/startExperimentAsync.md +1 -1
- package/.docs/reference/editor/agent-builder/agent-builder-options.md +4 -4
- package/.docs/reference/editor/agent-builder/builder-agent-defaults.md +7 -7
- package/.docs/reference/editor/agent-builder/builder-models.md +4 -4
- package/.docs/reference/editor/blob-store-provider.md +2 -2
- package/.docs/reference/editor/browser-provider.md +2 -2
- package/.docs/reference/editor/filesystem-provider.md +2 -2
- package/.docs/reference/editor/mastra-editor.md +2 -2
- package/.docs/reference/editor/processor-provider.md +4 -4
- package/.docs/reference/editor/sandbox-provider.md +2 -2
- package/.docs/reference/editor/storage-browser-ref.md +2 -2
- package/.docs/reference/editor/storage-workspace-ref.md +7 -7
- package/.docs/reference/evals/create-scorer.md +8 -8
- package/.docs/reference/evals/rubric.md +1 -1
- package/.docs/reference/evals/run-evals.md +7 -7
- package/.docs/reference/evals/trajectory-accuracy.md +1 -1
- package/.docs/reference/index.md +2 -2
- package/.docs/reference/logging/pino-logger.md +4 -4
- package/.docs/reference/memory/cloneThread.md +35 -4
- package/.docs/reference/memory/memory-class.md +5 -5
- package/.docs/reference/memory/observational-memory.md +43 -43
- package/.docs/reference/memory/recall.md +4 -4
- package/.docs/reference/memory/serialized-memory-config.md +6 -6
- package/.docs/reference/observability/tracing/configuration.md +4 -4
- package/.docs/reference/processors/language-detector.md +1 -1
- package/.docs/reference/processors/moderation-processor.md +1 -1
- package/.docs/reference/processors/pii-detector.md +1 -1
- package/.docs/reference/processors/processor-interface.md +20 -20
- package/.docs/reference/processors/prompt-injection-detector.md +1 -1
- package/.docs/reference/processors/response-cache.md +6 -6
- package/.docs/reference/processors/unicode-normalizer.md +1 -1
- package/.docs/reference/pubsub/base.md +7 -7
- package/.docs/reference/pubsub/caching-pubsub.md +1 -1
- package/.docs/reference/pubsub/event-emitter.md +2 -2
- package/.docs/reference/pubsub/google-cloud-pubsub.md +1 -1
- package/.docs/reference/pubsub/lease-provider.md +3 -3
- package/.docs/reference/pubsub/redis-streams.md +6 -6
- package/.docs/reference/pubsub/unix-socket-pubsub.md +1 -1
- package/.docs/reference/rag/chunk.md +2 -2
- package/.docs/reference/server/create-route.md +3 -3
- package/.docs/reference/server/express-adapter.md +4 -4
- package/.docs/reference/server/fastify-adapter.md +4 -4
- package/.docs/reference/server/hono-adapter.md +4 -4
- package/.docs/reference/server/koa-adapter.md +4 -4
- package/.docs/reference/server/mastra-server.md +1 -1
- package/.docs/reference/server/nestjs-adapter.md +3 -3
- package/.docs/reference/server/register-api-route.md +3 -3
- package/.docs/reference/signals/create-notification-inbox-tool.md +3 -3
- package/.docs/reference/signals/signal-provider.md +7 -7
- package/.docs/reference/signals/webhook-signal-provider.md +2 -2
- package/.docs/reference/storage/clickhouse.md +7 -7
- package/.docs/reference/storage/composite.md +2 -2
- package/.docs/reference/storage/duckdb.md +1 -1
- package/.docs/reference/storage/dynamodb.md +1 -1
- package/.docs/reference/storage/libsql.md +1 -1
- package/.docs/reference/storage/postgresql.md +2 -2
- package/.docs/reference/storage/redis.md +2 -2
- package/.docs/reference/storage/retention.md +5 -5
- package/.docs/reference/storage/spanner.md +6 -6
- package/.docs/reference/streaming/ChunkType.md +3 -3
- package/.docs/reference/streaming/agents/stream.md +14 -14
- package/.docs/reference/streaming/agents/streamLegacy.md +10 -10
- package/.docs/reference/streaming/agents/streamUntilIdle.md +1 -1
- package/.docs/reference/streaming/workflows/resumeStream.md +1 -1
- package/.docs/reference/templates/overview.md +1 -140
- package/.docs/reference/tools/brightdata.md +4 -4
- package/.docs/reference/tools/create-code-mode.md +5 -5
- package/.docs/reference/tools/create-tool.md +15 -15
- package/.docs/reference/tools/graph-rag-tool.md +1 -1
- package/.docs/reference/tools/mcp-client.md +2 -2
- package/.docs/reference/tools/mcp-server.md +12 -12
- package/.docs/reference/tools/perplexity.md +3 -3
- package/.docs/reference/tools/tavily.md +1 -1
- package/.docs/reference/tools/vector-query-tool.md +1 -1
- package/.docs/reference/vectors/chroma.md +1 -1
- package/.docs/reference/vectors/mongodb.md +1 -1
- package/.docs/reference/vectors/pg.md +1 -1
- package/.docs/reference/vectors/s3vectors.md +4 -4
- package/.docs/reference/voice/google-gemini-live.md +3 -3
- package/.docs/reference/voice/inworld-realtime.md +12 -12
- package/.docs/reference/voice/inworld.md +2 -2
- package/.docs/reference/voice/voice.on.md +1 -1
- package/.docs/reference/workflows/run-methods/resume.md +1 -1
- package/.docs/reference/workflows/run-methods/timeTravel.md +1 -1
- package/.docs/reference/workspace/agentcore-runtime-sandbox.md +4 -4
- package/.docs/reference/workspace/agentfs-filesystem.md +1 -1
- package/.docs/reference/workspace/apple-container-sandbox.md +5 -5
- package/.docs/reference/workspace/archil-filesystem.md +5 -5
- package/.docs/reference/workspace/blaxel-sandbox.md +1 -1
- package/.docs/reference/workspace/daytona-sandbox.md +1 -1
- package/.docs/reference/workspace/docker-sandbox.md +2 -2
- package/.docs/reference/workspace/e2b-sandbox.md +2 -2
- package/.docs/reference/workspace/files-sdk-filesystem.md +1 -1
- package/.docs/reference/workspace/filesystem.md +1 -1
- package/.docs/reference/workspace/local-filesystem.md +3 -3
- package/.docs/reference/workspace/local-sandbox.md +1 -1
- package/.docs/reference/workspace/mesa-filesystem.md +3 -3
- package/.docs/reference/workspace/modal-sandbox.md +1 -1
- package/.docs/reference/workspace/railway-sandbox.md +1 -1
- package/.docs/reference/workspace/s3-filesystem.md +4 -4
- package/.docs/reference/workspace/sandbox.md +1 -1
- package/.docs/reference/workspace/{vercel-microvm-sandbox.md → vercel-sandbox.md} +21 -15
- package/.docs/reference/workspace/{vercel.md → vercel-serverless.md} +21 -14
- package/.docs/reference/workspace/workspace-class.md +15 -15
- package/CHANGELOG.md +15 -0
- package/package.json +4 -4
- package/.docs/docs/agents/adding-voice.md +0 -383
- package/.docs/docs/community/contributing-templates.md +0 -5
- package/.docs/docs/community/discord.md +0 -11
- package/.docs/guides/build-your-ui/copilotkit.md +0 -291
- package/LICENSE.md +0 -30
- /package/.docs/docs/{community/licensing.md → license.md} +0 -0
- /package/.docs/docs/{agents → long-running-agents}/signals.md +0 -0
|
@@ -26,13 +26,13 @@ registerApiRoute("/items/:itemId", { ... })
|
|
|
26
26
|
|
|
27
27
|
**method** (`'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH' | 'ALL'`): HTTP method for the route
|
|
28
28
|
|
|
29
|
-
**handler** (`Handler`): Route handler function receiving Hono Context. Use either
|
|
29
|
+
**handler** (`Handler`): Route handler function receiving Hono Context. Use either handler or createHandler, not both.
|
|
30
30
|
|
|
31
|
-
**createHandler** (`(c: Context) => Promise<Handler>`): Async factory function to create the handler. Use either
|
|
31
|
+
**createHandler** (`(c: Context) => Promise<Handler>`): Async factory function to create the handler. Use either handler or createHandler, not both.
|
|
32
32
|
|
|
33
33
|
**middleware** (`MiddlewareHandler | MiddlewareHandler[]`): Route-specific middleware functions
|
|
34
34
|
|
|
35
|
-
**cors** (`CorsOptions`): Route-specific CORS configuration. Use this when one custom route needs a different cross-origin policy from
|
|
35
|
+
**cors** (`CorsOptions`): Route-specific CORS configuration. Use this when one custom route needs a different cross-origin policy from server.cors.
|
|
36
36
|
|
|
37
37
|
**openapi** (`DescribeRouteOptions`): OpenAPI metadata for Swagger UI documentation
|
|
38
38
|
|
|
@@ -33,7 +33,7 @@ export const supportAgent = new Agent({
|
|
|
33
33
|
|
|
34
34
|
**options** (`object`): Tool configuration.
|
|
35
35
|
|
|
36
|
-
**options.storage** (`NotificationsStorage`): Notification storage domain returned by
|
|
36
|
+
**options.storage** (`NotificationsStorage`): Notification storage domain returned by storage.getStore('notifications').
|
|
37
37
|
|
|
38
38
|
## Tool input
|
|
39
39
|
|
|
@@ -43,7 +43,7 @@ The generated tool has the id `notification-inbox` and accepts these input field
|
|
|
43
43
|
|
|
44
44
|
**threadId** (`string`): Thread ID to inspect. Defaults to the current agent thread when available.
|
|
45
45
|
|
|
46
|
-
**id** (`string`): Notification ID. Required for
|
|
46
|
+
**id** (`string`): Notification ID. Required for markSeen, dismiss, and archive. Optional for read.
|
|
47
47
|
|
|
48
48
|
**status** (`'pending' | 'delivered' | 'seen' | 'dismissed' | 'archived' | 'discarded'`): Status filter for list, read, or search actions.
|
|
49
49
|
|
|
@@ -51,7 +51,7 @@ The generated tool has the id `notification-inbox` and accepts these input field
|
|
|
51
51
|
|
|
52
52
|
**source** (`string`): Source filter for list, read, or search actions.
|
|
53
53
|
|
|
54
|
-
**query** (`string`): Search query. Required when
|
|
54
|
+
**query** (`string`): Search query. Required when action is search.
|
|
55
55
|
|
|
56
56
|
**limit** (`number`): Maximum number of notifications to return. Must be a positive integer.
|
|
57
57
|
|
|
@@ -63,9 +63,9 @@ The agent calls `connect(this)`, registers any processors or tools the provider
|
|
|
63
63
|
|
|
64
64
|
**name** (`string`): Human-readable display name for the provider.
|
|
65
65
|
|
|
66
|
-
**pollInterval** (`number`): Poll interval in milliseconds. When set, the framework calls
|
|
66
|
+
**pollInterval** (`number`): Poll interval in milliseconds. When set, the framework calls poll() on this interval. Leave undefined or 0 for webhook-only providers.
|
|
67
67
|
|
|
68
|
-
**isConnected** (`boolean`): Whether this provider is connected to an agent. Returns
|
|
68
|
+
**isConnected** (`boolean`): Whether this provider is connected to an agent. Returns true after connect() is called. Used internally to skip re-wiring during Agent.\_\_fork().
|
|
69
69
|
|
|
70
70
|
## Methods
|
|
71
71
|
|
|
@@ -154,9 +154,9 @@ const sub = this.subscribe(
|
|
|
154
154
|
|
|
155
155
|
Returns: `SignalSubscription` — the created subscription, or the existing one with merged metadata.
|
|
156
156
|
|
|
157
|
-
**target** (`SignalProviderTarget`): The thread to subscribe. Must include
|
|
157
|
+
**target** (`SignalProviderTarget`): The thread to subscribe. Must include threadId and resourceId.
|
|
158
158
|
|
|
159
|
-
**externalResourceId** (`string`): Provider-specific identifier for the external resource (for example,
|
|
159
|
+
**externalResourceId** (`string`): Provider-specific identifier for the external resource (for example, "github:owner/repo#123").
|
|
160
160
|
|
|
161
161
|
**metadata** (`Record<string, unknown>`): Additional data to store with the subscription. Merged into existing metadata on duplicate subscribes.
|
|
162
162
|
|
|
@@ -352,7 +352,7 @@ await this.notify(
|
|
|
352
352
|
|
|
353
353
|
**notification.source** (`string`): Identifier for the notification source.
|
|
354
354
|
|
|
355
|
-
**notification.kind** (`string`): Type of event (for example,
|
|
355
|
+
**notification.kind** (`string`): Type of event (for example, "pr-updated", "new-message").
|
|
356
356
|
|
|
357
357
|
**notification.summary** (`string`): Human-readable summary of the event.
|
|
358
358
|
|
|
@@ -360,7 +360,7 @@ await this.notify(
|
|
|
360
360
|
|
|
361
361
|
**notification.payload** (`unknown`): Arbitrary data attached to the notification.
|
|
362
362
|
|
|
363
|
-
**target** (`SignalProviderTarget`): The thread to notify. Must include
|
|
363
|
+
**target** (`SignalProviderTarget`): The thread to notify. Must include threadId and resourceId.
|
|
364
364
|
|
|
365
365
|
## Types
|
|
366
366
|
|
|
@@ -376,7 +376,7 @@ The subscription object returned by `subscribe()`.
|
|
|
376
376
|
|
|
377
377
|
**resourceId** (`string`): The resource owning the thread.
|
|
378
378
|
|
|
379
|
-
**externalResourceId** (`string`): Provider-specific identifier for the external resource (for example,
|
|
379
|
+
**externalResourceId** (`string`): Provider-specific identifier for the external resource (for example, "github:owner/repo#123").
|
|
380
380
|
|
|
381
381
|
**subscribedAt** (`Date`): When the subscription was created.
|
|
382
382
|
|
|
@@ -53,7 +53,7 @@ const result = await webhookProvider.handleWebhook({
|
|
|
53
53
|
|
|
54
54
|
**name** (`string`): Human-readable name. (Default: `'Webhook Signals'`)
|
|
55
55
|
|
|
56
|
-
**extractResourceId** (`(payload: unknown) => string | string[] | undefined`): Extract the external resource ID from a webhook payload. Return
|
|
56
|
+
**extractResourceId** (`(payload: unknown) => string | string[] | undefined`): Extract the external resource ID from a webhook payload. Return undefined to skip the event. Can return an array to match multiple resources. (Default: ``Returns `payload.resource` or `payload.externalResourceId` if present``)
|
|
57
57
|
|
|
58
58
|
**buildNotification** (`(payload: unknown, subscription: SignalSubscription) => SendNotificationSignalInput`): Build the notification object from a webhook payload and the matched subscription. (Default: `` Returns `{ source: id, kind: 'webhook-event', summary, payload }` ``)
|
|
59
59
|
|
|
@@ -75,7 +75,7 @@ webhookProvider.subscribeThread(
|
|
|
75
75
|
|
|
76
76
|
Returns: `SignalSubscription`
|
|
77
77
|
|
|
78
|
-
**target** (`SignalProviderTarget`): The thread to subscribe. Must include
|
|
78
|
+
**target** (`SignalProviderTarget`): The thread to subscribe. Must include threadId and resourceId.
|
|
79
79
|
|
|
80
80
|
**externalResourceId** (`string`): The external resource to monitor (for example, a repository full name).
|
|
81
81
|
|
|
@@ -174,19 +174,19 @@ The same `client` form is accepted by `ObservabilityStorageClickhouse` and `Obse
|
|
|
174
174
|
|
|
175
175
|
**id** (`string`): Unique identifier for this storage instance.
|
|
176
176
|
|
|
177
|
-
**url** (`string`): ClickHouse server URL (for example,
|
|
177
|
+
**url** (`string`): ClickHouse server URL (for example, https\://your-instance.clickhouse.cloud:8443 or http\://localhost:8123). Required when not passing a pre-configured client.
|
|
178
178
|
|
|
179
|
-
**username** (`string`): ClickHouse username. Required when not passing a pre-configured
|
|
179
|
+
**username** (`string`): ClickHouse username. Required when not passing a pre-configured client.
|
|
180
180
|
|
|
181
|
-
**password** (`string`): ClickHouse password. Required when not passing a pre-configured
|
|
181
|
+
**password** (`string`): ClickHouse password. Required when not passing a pre-configured client. It can be an empty string for the default user on a local instance.
|
|
182
182
|
|
|
183
|
-
**client** (`ClickHouseClient`): Pre-configured ClickHouse client from
|
|
183
|
+
**client** (`ClickHouseClient`): Pre-configured ClickHouse client from @clickhouse/client. Use this when you need custom request settings. Mutually exclusive with the credential fields above.
|
|
184
184
|
|
|
185
|
-
**ttl** (`object`): Per-table TTL configuration applied at table creation time. Accepts row-level and column-level TTLs in interval units from
|
|
185
|
+
**ttl** (`object`): Per-table TTL configuration applied at table creation time. Accepts row-level and column-level TTLs in interval units from NANOSECOND through YEAR.
|
|
186
186
|
|
|
187
|
-
**replication** (`{ cluster?: string; zookeeperPath?: string; replicaName?: string }`): Opt-in replicated table configuration for multi-replica ClickHouse clusters. When set, Mastra creates replicated MergeTree tables. When
|
|
187
|
+
**replication** (`{ cluster?: string; zookeeperPath?: string; replicaName?: string }`): Opt-in replicated table configuration for multi-replica ClickHouse clusters. When set, Mastra creates replicated MergeTree tables. When cluster is set, Mastra also adds ON CLUSTER to Mastra-owned data definition language (DDL).
|
|
188
188
|
|
|
189
|
-
**disableInit** (`boolean`): When
|
|
189
|
+
**disableInit** (`boolean`): When true, the store does not run table creation or migrations on first use. Call storage.init() explicitly from your deployment scripts. (Default: `false`)
|
|
190
190
|
|
|
191
191
|
`ClickhouseStore` also accepts every option from `ClickHouseClientConfigOptions` (such as `database`, `request_timeout`, `compression`, `keep_alive`, and `max_open_connections`).
|
|
192
192
|
|
|
@@ -128,11 +128,11 @@ export const mastra = new Mastra({
|
|
|
128
128
|
|
|
129
129
|
**id** (`string`): Unique identifier for this storage instance.
|
|
130
130
|
|
|
131
|
-
**default** (`MastraCompositeStore`): Default storage adapter. Domains not explicitly specified in
|
|
131
|
+
**default** (`MastraCompositeStore`): Default storage adapter. Domains not explicitly specified in domains will use this storage's domains as fallbacks.
|
|
132
132
|
|
|
133
133
|
**disableInit** (`boolean`): When true, automatic initialization is disabled. You must call init() explicitly.
|
|
134
134
|
|
|
135
|
-
**domains** (`object`): Individual domain overrides. Each domain can come from a different storage adapter. These take precedence over both
|
|
135
|
+
**domains** (`object`): Individual domain overrides. Each domain can come from a different storage adapter. These take precedence over both editor and default storage.
|
|
136
136
|
|
|
137
137
|
**domains.memory** (`MemoryStorage`): Storage for threads, messages, and resources.
|
|
138
138
|
|
|
@@ -108,7 +108,7 @@ const duckdb = new DuckDBStore({ path: ':memory:' })
|
|
|
108
108
|
|
|
109
109
|
**id** (`string`): Unique identifier for this storage instance. (Default: `'duckdb'`)
|
|
110
110
|
|
|
111
|
-
**path** (`string`): Path to the DuckDB database file. Use
|
|
111
|
+
**path** (`string`): Path to the DuckDB database file. Use :memory: for an ephemeral in-memory database. (Default: `'mastra.duckdb'`)
|
|
112
112
|
|
|
113
113
|
### Lower-level types
|
|
114
114
|
|
|
@@ -118,7 +118,7 @@ For local development, you can use [DynamoDB Local](https://docs.aws.amazon.com/
|
|
|
118
118
|
|
|
119
119
|
**config.endpoint** (`string`): Custom endpoint for DynamoDB (e.g., 'http\://localhost:8000' for local development).
|
|
120
120
|
|
|
121
|
-
**config.credentials** (`object`): AWS credentials object with
|
|
121
|
+
**config.credentials** (`object`): AWS credentials object with accessKeyId and secretAccessKey. If not provided, the AWS SDK will attempt to source credentials from environment variables, IAM roles (e.g., for EC2/Lambda), or the shared AWS credentials file.
|
|
122
122
|
|
|
123
123
|
**config.ttl** (`object`): TTL (Time To Live) configuration for automatic data expiration. Configure per entity type: thread, message, trace, eval, workflow\_snapshot, resource, score. Each entity config includes: enabled (boolean), attributeName (string, default: 'ttl'), defaultTtlSeconds (number).
|
|
124
124
|
|
|
@@ -91,7 +91,7 @@ storage: new LibSQLStore({
|
|
|
91
91
|
|
|
92
92
|
## Options
|
|
93
93
|
|
|
94
|
-
**url** (`string`): Database URL. Use
|
|
94
|
+
**url** (`string`): Database URL. Use :memory: for in-memory database, file:filename.db for a file database, or a libSQL connection string (e.g., libsql://your-database.turso.io) for remote storage.
|
|
95
95
|
|
|
96
96
|
**authToken** (`string`): Authentication token for remote libSQL databases.
|
|
97
97
|
|
|
@@ -45,7 +45,7 @@ const storage = new PostgresStore({
|
|
|
45
45
|
|
|
46
46
|
**id** (`string`): Unique identifier for this storage instance.
|
|
47
47
|
|
|
48
|
-
**connectionString** (`string`): PostgreSQL connection string (e.g., postgresql://user:pass\@host:5432/dbname). Required unless using
|
|
48
|
+
**connectionString** (`string`): PostgreSQL connection string (e.g., postgresql://user:pass\@host:5432/dbname). Required unless using pool or individual host-based parameters (host, port, database, user, password).
|
|
49
49
|
|
|
50
50
|
**host** (`string`): Database server hostname or IP address. Used with other host-based parameters as an alternative to connectionString.
|
|
51
51
|
|
|
@@ -57,7 +57,7 @@ const storage = new PostgresStore({
|
|
|
57
57
|
|
|
58
58
|
**password** (`string`): Password for the database user.
|
|
59
59
|
|
|
60
|
-
**pool** (`pg.Pool`): Pre-configured pg.Pool instance. Use this to reuse an existing connection pool. When provided, Mastra will not create its own pool and will not close it when
|
|
60
|
+
**pool** (`pg.Pool`): Pre-configured pg.Pool instance. Use this to reuse an existing connection pool. When provided, Mastra will not create its own pool and will not close it when store.close() is called.
|
|
61
61
|
|
|
62
62
|
**schemaName** (`string`): The name of the schema you want the storage to use. Defaults to 'public'.
|
|
63
63
|
|
|
@@ -69,7 +69,7 @@ const storage = new RedisStore({
|
|
|
69
69
|
|
|
70
70
|
**id** (`string`): Unique identifier for the storage instance
|
|
71
71
|
|
|
72
|
-
**connectionString** (`string`): Redis connection URL (e.g.,
|
|
72
|
+
**connectionString** (`string`): Redis connection URL (e.g., redis\://localhost:6379 or redis\://:password\@localhost:6379)
|
|
73
73
|
|
|
74
74
|
**host** (`string`): Redis host address
|
|
75
75
|
|
|
@@ -79,7 +79,7 @@ const storage = new RedisStore({
|
|
|
79
79
|
|
|
80
80
|
**db** (`number`): Redis database number (Default: `0`)
|
|
81
81
|
|
|
82
|
-
**client** (`RedisClient`): Pre-configured redis client (from the
|
|
82
|
+
**client** (`RedisClient`): Pre-configured redis client (from the redis package) for advanced setups
|
|
83
83
|
|
|
84
84
|
> **Note:** You must provide either `connectionString`, `host`, or `client`. These options are mutually exclusive.
|
|
85
85
|
|
|
@@ -55,11 +55,11 @@ Set the `retention` field on the store config.
|
|
|
55
55
|
|
|
56
56
|
**retention** (`RetentionConfig`): Per-domain, per-table age policies. Unset domains and tables are kept forever.
|
|
57
57
|
|
|
58
|
-
**retention.\[domain]** (`Record<TableKey, TableRetentionPolicy>`): A real storage domain key (e.g.
|
|
58
|
+
**retention.\[domain]** (`Record<TableKey, TableRetentionPolicy>`): A real storage domain key (e.g. memory, observability). Maps that domain's retention-eligible table keys to their policies.
|
|
59
59
|
|
|
60
60
|
### TableRetentionPolicy
|
|
61
61
|
|
|
62
|
-
**maxAge** (`Duration`): Maximum age to keep rows. Rows whose anchor timestamp is strictly older than
|
|
62
|
+
**maxAge** (`Duration`): Maximum age to keep rows. Rows whose anchor timestamp is strictly older than Date.now() - maxAge are eligible for deletion. A number is milliseconds, or a string with a unit suffix: ms, s, m, h, d, w (e.g. '30d', '12h').
|
|
63
63
|
|
|
64
64
|
**batchSize** (`number`): Rows deleted per batch. Each batch is its own transaction, which bounds lock duration and WAL growth on large tables. (Default: `1000`)
|
|
65
65
|
|
|
@@ -122,13 +122,13 @@ Returns: `Promise<PruneResult[]>`
|
|
|
122
122
|
|
|
123
123
|
##### PruneOptions
|
|
124
124
|
|
|
125
|
-
**maxBatches** (`number`): Maximum delete batches per table per call. When reached, that table's result is returned with
|
|
125
|
+
**maxBatches** (`number`): Maximum delete batches per table per call. When reached, that table's result is returned with done: false.
|
|
126
126
|
|
|
127
|
-
**maxRows** (`number`): Maximum rows deleted per table per call. When reached, that table's result is returned with
|
|
127
|
+
**maxRows** (`number`): Maximum rows deleted per table per call. When reached, that table's result is returned with done: false.
|
|
128
128
|
|
|
129
129
|
**pauseMs** (`number`): Delay in milliseconds between batches, to avoid starving live traffic.
|
|
130
130
|
|
|
131
|
-
**signal** (`AbortSignal`): Cooperative cancellation. The batch loop checks it between batches and stops cleanly, returning partial results with
|
|
131
|
+
**signal** (`AbortSignal`): Cooperative cancellation. The batch loop checks it between batches and stops cleanly, returning partial results with done: false.
|
|
132
132
|
|
|
133
133
|
##### PruneResult
|
|
134
134
|
|
|
@@ -49,23 +49,23 @@ The instance and database must already exist. The adapter creates the required t
|
|
|
49
49
|
|
|
50
50
|
**id** (`string`): Unique identifier for this storage instance.
|
|
51
51
|
|
|
52
|
-
**projectId** (`string`): Google Cloud project ID. Required unless
|
|
52
|
+
**projectId** (`string`): Google Cloud project ID. Required unless database is provided.
|
|
53
53
|
|
|
54
|
-
**instanceId** (`string`): Cloud Spanner instance ID. Required unless
|
|
54
|
+
**instanceId** (`string`): Cloud Spanner instance ID. Required unless database is provided.
|
|
55
55
|
|
|
56
|
-
**databaseId** (`string`): Cloud Spanner database ID. Required unless
|
|
56
|
+
**databaseId** (`string`): Cloud Spanner database ID. Required unless database is provided.
|
|
57
57
|
|
|
58
58
|
**database** (`@google-cloud/spanner Database`): Pre-configured Spanner Database handle. Use this when you manage the Spanner client elsewhere (for example, to share auth or connection options across services).
|
|
59
59
|
|
|
60
|
-
**spannerOptions** (`object`): Options forwarded to the
|
|
60
|
+
**spannerOptions** (`object`): Options forwarded to the @google-cloud/spanner client constructor. Use this to set credentials, custom endpoints, or to point at the local emulator.
|
|
61
61
|
|
|
62
|
-
**disableInit** (`boolean`): When true, skip automatic table creation on first use. You must call
|
|
62
|
+
**disableInit** (`boolean`): When true, skip automatic table creation on first use. You must call storage.init() explicitly during a separate deploy step. (Default: `false`)
|
|
63
63
|
|
|
64
64
|
**skipDefaultIndexes** (`boolean`): When true, skip creation of default indexes during initialization. (Default: `false`)
|
|
65
65
|
|
|
66
66
|
**indexes** (`CreateIndexOptions[]`): Custom secondary indexes to create. Each index must specify the table it belongs to. Indexes are routed to the appropriate domain based on the table name.
|
|
67
67
|
|
|
68
|
-
**initMode** (`'sync' | 'validate'`): Controls schema-initialization behavior.
|
|
68
|
+
**initMode** (`'sync' | 'validate'`): Controls schema-initialization behavior. 'sync' creates missing tables, columns, and indexes during init() (the historical behavior). 'validate' issues no DDL and instead verifies that every expected table, column, and default/custom index already exists, throwing a typed user error if anything is missing — useful when an external process (Terraform, Liquibase, a release pipeline, etc.) owns the schema and Mastra should only verify it. (Default: `'sync'`)
|
|
69
69
|
|
|
70
70
|
## Constructor examples
|
|
71
71
|
|
|
@@ -402,7 +402,7 @@ Contains output from workflow step execution, used primarily for usage tracking
|
|
|
402
402
|
|
|
403
403
|
## Background task chunks
|
|
404
404
|
|
|
405
|
-
Emitted when a tool call is dispatched as a [background task](https://mastra.ai/docs/agents/background-tasks) and `streamUntilIdle()` is used.
|
|
405
|
+
Emitted when a tool call is dispatched as a [background task](https://mastra.ai/docs/long-running-agents/background-tasks) and `streamUntilIdle()` is used.
|
|
406
406
|
|
|
407
407
|
### background-task-started
|
|
408
408
|
|
|
@@ -540,7 +540,7 @@ When consumed by [`Agent.streamUntilIdle()`](https://mastra.ai/reference/streami
|
|
|
540
540
|
|
|
541
541
|
**payload.agentId** (`string`): ID of the agent that dispatched the task
|
|
542
542
|
|
|
543
|
-
**payload.suspendData** (`unknown`): Whatever the tool passed to
|
|
543
|
+
**payload.suspendData** (`unknown`): Whatever the tool passed to suspend(data)
|
|
544
544
|
|
|
545
545
|
### background-task-resumed
|
|
546
546
|
|
|
@@ -614,7 +614,7 @@ Contains monitoring and observability data from agent execution. Can include wor
|
|
|
614
614
|
|
|
615
615
|
### goal
|
|
616
616
|
|
|
617
|
-
Emitted on every evaluation of an agent [goal](https://mastra.ai/docs/agents/goals). Consumers use this to render judge progress and the result mid-run. A goal that has no judge model configured produces no `goal` chunk.
|
|
617
|
+
Emitted on every evaluation of an agent [goal](https://mastra.ai/docs/long-running-agents/goals). Consumers use this to render judge progress and the result mid-run. A goal that has no judge model configured produces no `goal` chunk.
|
|
618
618
|
|
|
619
619
|
**type** (`"goal"`): Chunk type identifier
|
|
620
620
|
|
|
@@ -66,7 +66,7 @@ const stream = await agent.stream('message for agent')
|
|
|
66
66
|
|
|
67
67
|
**options.delegation.onDelegationStart** (`(context: DelegationStartContext) => DelegationStartResult | void | Promise<DelegationStartResult | void>`): Called before delegating to a subagent. Use this to modify the delegation parameters or reject the delegation entirely.
|
|
68
68
|
|
|
69
|
-
**options.delegation.onDelegationComplete** (`(context: DelegationCompleteContext) => { feedback?: string } | void | Promise<{ feedback?: string } | void>`): Called after a subagent delegation completes. The context includes a
|
|
69
|
+
**options.delegation.onDelegationComplete** (`(context: DelegationCompleteContext) => { feedback?: string } | void | Promise<{ feedback?: string } | void>`): Called after a subagent delegation completes. The context includes a bail() method to stop further execution, and you can return { feedback } to guide the supervisor's next action. Feedback is saved to supervisor memory as an assistant message.
|
|
70
70
|
|
|
71
71
|
**options.delegation.messageFilter** (`(context: MessageFilterContext) => MastraDBMessage[] | Promise<MastraDBMessage[]>`): Callback function called before delegating to a subagent. Use this to filter the messages that are passed to the subagent.
|
|
72
72
|
|
|
@@ -102,13 +102,13 @@ const stream = await agent.stream('message for agent')
|
|
|
102
102
|
|
|
103
103
|
**options.structuredOutput.jsonPromptInjection** (`boolean`): Injects system prompt into the main agent instructing it to return structured output, useful for when a model does not natively support structured outputs.
|
|
104
104
|
|
|
105
|
-
**options.structuredOutput.providerOptions** (`ProviderOptions`): Provider-specific options passed to the internal structuring agent. Use this to control model behavior like reasoning effort for thinking models (e.g.,
|
|
105
|
+
**options.structuredOutput.providerOptions** (`ProviderOptions`): Provider-specific options passed to the internal structuring agent. Use this to control model behavior like reasoning effort for thinking models (e.g., { openai: { reasoningEffort: 'low' } }).
|
|
106
106
|
|
|
107
|
-
**options.outputProcessors** (`Processor[]`): Overrides the output processors set on the agent. Output processors that can modify or validate messages from the agent before they are returned to the user. Must implement either (or both) of the
|
|
107
|
+
**options.outputProcessors** (`Processor[]`): Overrides the output processors set on the agent. Output processors that can modify or validate messages from the agent before they are returned to the user. Must implement either (or both) of the processOutputResult and processOutputStream functions.
|
|
108
108
|
|
|
109
109
|
**options.includeRawChunks** (`boolean`): Whether to include raw chunks in the stream output (not available on all model providers).
|
|
110
110
|
|
|
111
|
-
**options.inputProcessors** (`Processor[]`): Overrides the input processors set on the agent. Input processors that can modify or validate messages before they are processed by the agent. Must implement the
|
|
111
|
+
**options.inputProcessors** (`Processor[]`): Overrides the input processors set on the agent. Input processors that can modify or validate messages before they are processed by the agent. Must implement the processInput function.
|
|
112
112
|
|
|
113
113
|
**options.instructions** (`string`): Custom instructions that override the agent's default instructions for this specific generation. Useful for dynamically modifying agent behavior without creating a new agent instance.
|
|
114
114
|
|
|
@@ -118,7 +118,7 @@ const stream = await agent.stream('message for agent')
|
|
|
118
118
|
|
|
119
119
|
**options.memory** (`object`): Configuration for memory. This is the preferred way to manage memory.
|
|
120
120
|
|
|
121
|
-
**options.memory.thread** (`string | { id: string; metadata?: Record<string, any>, title?: string }`): The conversation thread, as a string ID or an object with an
|
|
121
|
+
**options.memory.thread** (`string | { id: string; metadata?: Record<string, any>, title?: string }`): The conversation thread, as a string ID or an object with an id and optional metadata.
|
|
122
122
|
|
|
123
123
|
**options.memory.resource** (`string`): Identifier for the user or resource associated with the thread.
|
|
124
124
|
|
|
@@ -170,23 +170,23 @@ const stream = await agent.stream('message for agent')
|
|
|
170
170
|
|
|
171
171
|
**options.clientTools** (`ToolsInput`): Tools that are executed on the 'client' side of the request. These tools do not have execute functions in the definition.
|
|
172
172
|
|
|
173
|
-
**options.hooks** (`ToolHooks`): Per-execution hooks that run before and after tool calls. Overrides matching agent-level hooks for this execution.
|
|
173
|
+
**options.hooks** (`ToolHooks`): Per-execution hooks that run before and after tool calls. Overrides matching agent-level hooks for this execution. beforeToolCall can return { proceed: false, output } to skip the tool call.
|
|
174
174
|
|
|
175
175
|
**options.savePerStep** (`boolean`): Save messages incrementally after each stream step completes (default: false).
|
|
176
176
|
|
|
177
|
-
**options.requireToolApproval** (`boolean`): When true, all tool calls require explicit approval before execution. The stream will emit
|
|
177
|
+
**options.requireToolApproval** (`boolean`): When true, all tool calls require explicit approval before execution. The stream will emit tool-call-approval chunks and pause until approveToolCall() or declineToolCall() is called.
|
|
178
178
|
|
|
179
|
-
**options.autoResumeSuspendedTools** (`boolean`): When true, automatically resumes suspended tools when the user sends a new message on the same thread. The agent extracts
|
|
179
|
+
**options.autoResumeSuspendedTools** (`boolean`): When true, automatically resumes suspended tools when the user sends a new message on the same thread. The agent extracts resumeData from the user's message based on the tool's resumeSchema. Requires memory to be configured.
|
|
180
180
|
|
|
181
181
|
**options.toolCallConcurrency** (`number`): Maximum number of tool calls to execute concurrently. Defaults to 1 when approval may be required, otherwise 10.
|
|
182
182
|
|
|
183
|
-
**options.providerOptions** (`Record<string, Record<string, JSONValue>>`): Additional provider-specific options that are passed through to the underlying LLM provider. The structure is
|
|
183
|
+
**options.providerOptions** (`Record<string, Record<string, JSONValue>>`): Additional provider-specific options that are passed through to the underlying LLM provider. The structure is { providerName: { optionKey: value } }. For example: { openai: { reasoningEffort: 'high' }, anthropic: { maxTokens: 1000 } }.
|
|
184
184
|
|
|
185
|
-
**options.providerOptions.openai** (`Record<string, JSONValue>`): OpenAI-specific options. Example:
|
|
185
|
+
**options.providerOptions.openai** (`Record<string, JSONValue>`): OpenAI-specific options. Example: { reasoningEffort: 'high' }
|
|
186
186
|
|
|
187
|
-
**options.providerOptions.anthropic** (`Record<string, JSONValue>`): Anthropic-specific options. Example:
|
|
187
|
+
**options.providerOptions.anthropic** (`Record<string, JSONValue>`): Anthropic-specific options. Example: { maxTokens: 1000 }
|
|
188
188
|
|
|
189
|
-
**options.providerOptions.google** (`Record<string, JSONValue>`): Google-specific options. Example:
|
|
189
|
+
**options.providerOptions.google** (`Record<string, JSONValue>`): Google-specific options. Example: { safetySettings: \[...] }
|
|
190
190
|
|
|
191
191
|
**options.providerOptions.\[providerName]** (`Record<string, JSONValue>`): Other provider-specific options. The key is the provider name and the value is a record of provider-specific options.
|
|
192
192
|
|
|
@@ -210,7 +210,7 @@ const stream = await agent.stream('message for agent')
|
|
|
210
210
|
|
|
211
211
|
**options.tracingOptions.tags** (`string[]`): Tags to apply to this trace. String labels for categorizing and filtering traces.
|
|
212
212
|
|
|
213
|
-
**options.versions** (`VersionOverrides`): Per-invocation version overrides for sub-agent delegation. Merged on top of Mastra instance-level versions and propagated automatically through sub-agent calls via requestContext. Requires the editor package. See
|
|
213
|
+
**options.versions** (`VersionOverrides`): Per-invocation version overrides for sub-agent delegation. Merged on top of Mastra instance-level versions and propagated automatically through sub-agent calls via requestContext. Requires the editor package. See Sub-agent versioning.
|
|
214
214
|
|
|
215
215
|
**options.versions.agents** (`Record<string, VersionSelector>`): A map of agent IDs to their version selectors.
|
|
216
216
|
|
|
@@ -218,7 +218,7 @@ const stream = await agent.stream('message for agent')
|
|
|
218
218
|
|
|
219
219
|
**options.versions.agents.status** (`'draft' | 'published'`): Target the latest version with this publication status.
|
|
220
220
|
|
|
221
|
-
**options.untilIdle** (`boolean | { maxIdleMs?: number }`): When set, keeps the stream open across background-task continuations. The agent will automatically re-invoke the LLM when background tasks complete, streaming continuation turns through the same
|
|
221
|
+
**options.untilIdle** (`boolean | { maxIdleMs?: number }`): When set, keeps the stream open across background-task continuations. The agent will automatically re-invoke the LLM when background tasks complete, streaming continuation turns through the same fullStream. Pass true for default settings (5 min idle timeout), or an object with maxIdleMs to configure. Requires memory. Replaces the standalone streamUntilIdle() method.
|
|
222
222
|
|
|
223
223
|
**options.untilIdle.maxIdleMs** (`number`): Closes the outer stream after this many ms of idleness between turns. The timer only runs while the wrapper is between turns. Default: 5 minutes.
|
|
224
224
|
|
|
@@ -30,7 +30,7 @@ await agent.streamLegacy('message for agent')
|
|
|
30
30
|
|
|
31
31
|
**options.memory** (`object`): Configuration for memory. This is the preferred way to manage memory.
|
|
32
32
|
|
|
33
|
-
**options.memory.thread** (`string | { id: string; metadata?: Record<string, any>, title?: string }`): The conversation thread, as a string ID or an object with an
|
|
33
|
+
**options.memory.thread** (`string | { id: string; metadata?: Record<string, any>, title?: string }`): The conversation thread, as a string ID or an object with an id and optional metadata.
|
|
34
34
|
|
|
35
35
|
**options.memory.resource** (`string`): Identifier for the user or resource associated with the thread.
|
|
36
36
|
|
|
@@ -40,7 +40,7 @@ await agent.streamLegacy('message for agent')
|
|
|
40
40
|
|
|
41
41
|
**options.maxRetries** (`number`): Maximum number of retries. Set to 0 to disable retries.
|
|
42
42
|
|
|
43
|
-
**options.memoryOptions** (`MemoryConfig`): \*\*Deprecated.\*\* Use
|
|
43
|
+
**options.memoryOptions** (`MemoryConfig`): \*\*Deprecated.\*\* Use memory.options instead. Configuration options for memory management.
|
|
44
44
|
|
|
45
45
|
**options.memoryOptions.lastMessages** (`number | false`): Number of recent messages to include in context, or false to disable.
|
|
46
46
|
|
|
@@ -54,7 +54,7 @@ await agent.streamLegacy('message for agent')
|
|
|
54
54
|
|
|
55
55
|
**options.onStepFinish** (`StreamTextOnStepFinishCallback<any> | never`): Callback function called after each execution step. Receives step details as a JSON string. Unavailable for structured output
|
|
56
56
|
|
|
57
|
-
**options.resourceId** (`string`): \*\*Deprecated.\*\* Use
|
|
57
|
+
**options.resourceId** (`string`): \*\*Deprecated.\*\* Use memory.resource instead. Identifier for the user or resource interacting with the agent. Must be provided if threadId is provided.
|
|
58
58
|
|
|
59
59
|
**options.telemetry** (`TelemetrySettings`): Settings for telemetry collection during streaming.
|
|
60
60
|
|
|
@@ -68,7 +68,7 @@ await agent.streamLegacy('message for agent')
|
|
|
68
68
|
|
|
69
69
|
**options.temperature** (`number`): Controls randomness in the model's output. Higher values (e.g., 0.8) make the output more random, lower values (e.g., 0.2) make it more focused and deterministic.
|
|
70
70
|
|
|
71
|
-
**options.threadId** (`string`): \*\*Deprecated.\*\* Use
|
|
71
|
+
**options.threadId** (`string`): \*\*Deprecated.\*\* Use memory.thread instead. Identifier for the conversation thread. Allows for maintaining context across multiple interactions. Must be provided if resourceId is provided.
|
|
72
72
|
|
|
73
73
|
**options.toolChoice** (`'auto' | 'none' | 'required' | { type: 'tool'; toolName: string }`): Controls how the agent uses tools during streaming.
|
|
74
74
|
|
|
@@ -84,17 +84,17 @@ await agent.streamLegacy('message for agent')
|
|
|
84
84
|
|
|
85
85
|
**options.clientTools** (`ToolsInput`): Tools that are executed on the 'client' side of the request. These tools do not have execute functions in the definition.
|
|
86
86
|
|
|
87
|
-
**options.hooks** (`ToolHooks`): Per-execution hooks that run before and after tool calls. Overrides matching agent-level hooks for this execution.
|
|
87
|
+
**options.hooks** (`ToolHooks`): Per-execution hooks that run before and after tool calls. Overrides matching agent-level hooks for this execution. beforeToolCall can return { proceed: false, output } to skip the tool call.
|
|
88
88
|
|
|
89
89
|
**options.savePerStep** (`boolean`): Save messages incrementally after each stream step completes (default: false).
|
|
90
90
|
|
|
91
|
-
**options.providerOptions** (`Record<string, Record<string, JSONValue>>`): Additional provider-specific options that are passed through to the underlying LLM provider. The structure is
|
|
91
|
+
**options.providerOptions** (`Record<string, Record<string, JSONValue>>`): Additional provider-specific options that are passed through to the underlying LLM provider. The structure is { providerName: { optionKey: value } }. For example: { openai: { reasoningEffort: 'high' }, anthropic: { maxTokens: 1000 } }.
|
|
92
92
|
|
|
93
|
-
**options.providerOptions.openai** (`Record<string, JSONValue>`): OpenAI-specific options. Example:
|
|
93
|
+
**options.providerOptions.openai** (`Record<string, JSONValue>`): OpenAI-specific options. Example: { reasoningEffort: 'high' }
|
|
94
94
|
|
|
95
|
-
**options.providerOptions.anthropic** (`Record<string, JSONValue>`): Anthropic-specific options. Example:
|
|
95
|
+
**options.providerOptions.anthropic** (`Record<string, JSONValue>`): Anthropic-specific options. Example: { maxTokens: 1000 }
|
|
96
96
|
|
|
97
|
-
**options.providerOptions.google** (`Record<string, JSONValue>`): Google-specific options. Example:
|
|
97
|
+
**options.providerOptions.google** (`Record<string, JSONValue>`): Google-specific options. Example: { safetySettings: \[...] }
|
|
98
98
|
|
|
99
99
|
**options.providerOptions.\[providerName]** (`Record<string, JSONValue>`): Other provider-specific options. The key is the provider name and the value is a record of provider-specific options.
|
|
100
100
|
|
|
@@ -104,7 +104,7 @@ await agent.streamLegacy('message for agent')
|
|
|
104
104
|
|
|
105
105
|
**options.maxTokens** (`number`): Maximum number of tokens to generate.
|
|
106
106
|
|
|
107
|
-
**options.topP** (`number`): Nucleus sampling. This is a number between 0 and 1. It is recommended to set either
|
|
107
|
+
**options.topP** (`number`): Nucleus sampling. This is a number between 0 and 1. It is recommended to set either temperature or topP, but not both.
|
|
108
108
|
|
|
109
109
|
**options.topK** (`number`): Only sample from the top K options for each subsequent token. Used to remove 'long tail' low probability responses.
|
|
110
110
|
|
|
@@ -101,7 +101,7 @@ for await (const chunk of stream.fullStream) {
|
|
|
101
101
|
|
|
102
102
|
## Related
|
|
103
103
|
|
|
104
|
-
- [Background tasks](https://mastra.ai/docs/agents/background-tasks)
|
|
104
|
+
- [Background tasks](https://mastra.ai/docs/long-running-agents/background-tasks)
|
|
105
105
|
- [`Agent.stream()` reference](https://mastra.ai/reference/streaming/agents/stream)
|
|
106
106
|
- [backgroundTasks configuration reference](https://mastra.ai/reference/configuration)
|
|
107
107
|
- [Stream chunk types](https://mastra.ai/reference/streaming/ChunkType)
|
|
@@ -34,7 +34,7 @@ if (result!.status === 'suspended') {
|
|
|
34
34
|
|
|
35
35
|
**step** (`Step<string, any, any, any, any, TEngineType>`): The step to resume execution from
|
|
36
36
|
|
|
37
|
-
**forEachIndex** (`number`): Target a specific iteration of a suspended
|
|
37
|
+
**forEachIndex** (`number`): Target a specific iteration of a suspended .foreach() step. Pass the zero-based index of the iteration to resume; other iterations remain suspended. Omit to resume all suspended iterations of the step with the same resumeData.
|
|
38
38
|
|
|
39
39
|
**tracingOptions** (`TracingOptions`): Options for Tracing configuration.
|
|
40
40
|
|