@mastra/mcp-docs-server 1.2.15-alpha.9 → 1.2.16-alpha.1
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/agents/agent-approval.md +19 -5
- package/.docs/docs/agents/code-mode.md +17 -2
- package/.docs/docs/agents/networks.md +2 -2
- package/.docs/docs/agents/overview.md +6 -6
- package/.docs/docs/agents/processors.md +3 -3
- package/.docs/docs/agents/using-tools.md +1 -1
- package/.docs/docs/browser/overview.md +9 -9
- package/.docs/docs/browser/recording.md +4 -4
- package/.docs/docs/capabilities/{channels/overview.md → channels.md} +71 -8
- package/.docs/docs/capabilities/subagents.md +7 -4
- package/.docs/docs/connections/overview.md +1 -1
- package/.docs/docs/datasets/overview.md +1 -1
- package/.docs/docs/datasets/running-experiments.md +49 -0
- package/.docs/docs/deployment/cloud-providers.md +13 -11
- package/.docs/docs/deployment/mastra-server.md +1 -1
- package/.docs/docs/deployment/monorepo.md +1 -1
- package/.docs/docs/deployment/overview.md +13 -10
- package/.docs/docs/deployment/sandbox.md +4 -4
- package/.docs/docs/deployment/web-framework.md +7 -7
- package/.docs/docs/deployment/workers.md +249 -3
- package/.docs/docs/deployment/workflow-runners.md +2 -2
- package/.docs/docs/evals/overview.md +1 -1
- package/.docs/docs/evals/quick-checks.md +1 -1
- package/.docs/docs/getting-started/develop.md +1 -1
- package/.docs/{guides/concepts → docs/guides}/multi-agent-systems.md +1 -1
- package/.docs/docs/harness/agent-controller.md +50 -9
- package/.docs/docs/harness/overview.md +3 -5
- package/.docs/docs/index.md +8 -8
- package/.docs/docs/long-running-agents/durable-agents.md +3 -3
- package/.docs/docs/long-running-agents/goals.md +1 -1
- package/.docs/docs/long-running-agents/schedules.md +1 -1
- package/.docs/docs/long-running-agents/signal-providers.md +5 -18
- package/.docs/docs/long-running-agents/signals.md +2 -2
- package/.docs/docs/mastra-platform/database.md +2 -2
- package/.docs/docs/mastra-platform/deploy.md +28 -1
- package/.docs/docs/mastra-platform/observability.md +63 -18
- package/.docs/docs/mastra-platform/overview.md +1 -1
- package/.docs/docs/mastra-platform/server.md +1 -1
- package/.docs/docs/mastra-platform/trace-intelligence.md +9 -13
- package/.docs/docs/mcp/overview.md +43 -1
- package/.docs/docs/memory/memory-processors.md +5 -5
- package/.docs/docs/memory/message-history.md +3 -3
- package/.docs/docs/memory/multi-user-threads.md +1 -1
- package/.docs/docs/memory/observational-memory.md +2 -2
- package/.docs/docs/memory/semantic-recall.md +2 -1
- package/.docs/docs/memory/working-memory.md +2 -1
- package/.docs/docs/observability/integrations/exporters/mastra-storage.md +18 -17
- package/.docs/docs/observability/logging.md +1 -1
- package/.docs/docs/observability/metrics/overview.md +1 -1
- package/.docs/docs/observability/overview.md +1 -5
- package/.docs/docs/observability/tracing/overview.md +3 -6
- package/.docs/docs/server/auth/fga.md +1 -1
- package/.docs/docs/server/auth/simple-auth.md +1 -1
- package/.docs/docs/server/auth/workers.md +3 -1
- package/.docs/docs/server/auth.md +15 -13
- package/.docs/docs/server/custom-adapters.md +1 -1
- package/.docs/docs/server/custom-api-routes.md +35 -0
- package/.docs/docs/server/mastra-client.md +3 -3
- package/.docs/docs/server/mastra-server.md +2 -2
- package/.docs/docs/storage/overview.md +20 -17
- package/.docs/docs/studio/observability.md +1 -1
- package/.docs/docs/workflows/dynamic-workflows.md +1 -1
- package/.docs/docs/workflows/human-in-the-loop.md +2 -2
- package/.docs/docs/workflows/overview.md +4 -4
- package/.docs/docs/workflows/snapshots.md +12 -10
- package/.docs/docs/workflows/time-travel.md +2 -0
- package/.docs/docs/workspace/filesystem.md +15 -15
- package/.docs/docs/workspace/sandbox.md +18 -19
- package/.docs/docs/workspace/search.md +1 -1
- package/.docs/{guides/build-your-ui → integrations/agentic-ui}/ai-sdk-ui.md +6 -6
- package/.docs/{guides/build-your-ui → integrations/agentic-ui}/assistant-ui.md +2 -2
- package/.docs/{guides/build-your-ui/copilotkit/overview.md → integrations/agentic-ui/copilotkit.md} +258 -5
- package/.docs/{guides/build-your-ui → integrations/agentic-ui}/openui.md +1 -1
- package/.docs/{docs/server → integrations}/auth/auth0.md +1 -1
- package/.docs/{docs/server → integrations}/auth/clerk.md +2 -2
- package/.docs/{docs/server → integrations}/auth/firebase.md +1 -1
- package/.docs/{docs/server → integrations}/auth/okta.md +24 -4
- package/.docs/{docs/server → integrations}/auth/supabase.md +2 -2
- package/.docs/{docs/server → integrations}/auth/workos.md +1 -1
- package/.docs/{docs/browser → integrations/browsers}/agent-browser.md +2 -2
- package/.docs/{docs/browser → integrations/browsers}/browser-viewer.md +3 -3
- package/.docs/{docs/browser → integrations/browsers}/firecrawl.md +2 -2
- package/.docs/{docs/browser → integrations/browsers}/stagehand.md +1 -1
- package/.docs/{docs/capabilities → integrations}/channels/discord.md +2 -2
- package/.docs/integrations/channels/github.md +103 -0
- package/.docs/{docs/capabilities → integrations}/channels/imessage.md +12 -4
- package/.docs/{docs/capabilities → integrations}/channels/slack.md +4 -4
- package/.docs/{docs/capabilities → integrations}/channels/teams.md +2 -2
- package/.docs/{docs/capabilities → integrations}/channels/telegram.md +2 -2
- package/.docs/{docs/capabilities → integrations}/channels/whatsapp.md +2 -2
- package/.docs/{reference/storage/dsql.md → integrations/databases/aurora-dsql.md} +1 -1
- package/.docs/{reference/storage → integrations/databases}/clickhouse.md +2 -2
- package/.docs/{reference/storage → integrations/databases}/cloudflare-d1.md +1 -1
- package/.docs/{reference/storage/cloudflare.md → integrations/databases/cloudflare-kv.md} +1 -1
- package/.docs/{reference/storage → integrations/databases}/convex.md +1 -1
- package/.docs/{reference/storage → integrations/databases}/duckdb.md +5 -5
- package/.docs/{reference/storage → integrations/databases}/dynamodb.md +1 -1
- package/.docs/{reference/storage/lance.md → integrations/databases/lancedb.md} +1 -1
- package/.docs/{reference/storage → integrations/databases}/libsql.md +2 -2
- package/.docs/{reference/storage → integrations/databases}/mongodb.md +1 -1
- package/.docs/{reference/storage → integrations/databases}/mssql.md +1 -1
- package/.docs/integrations/databases/neon.md +220 -0
- package/.docs/integrations/databases/oracledb.md +239 -0
- package/.docs/{reference/storage → integrations/databases}/postgresql.md +9 -9
- package/.docs/{reference/storage → integrations/databases}/redis.md +1 -1
- package/.docs/{reference/storage → integrations/databases}/spanner.md +1 -1
- package/.docs/{reference/storage → integrations/databases}/upstash.md +1 -1
- package/.docs/{guides/deployment → integrations/deploy}/amazon-ec2.md +3 -3
- package/.docs/{guides/deployment → integrations/deploy}/aws-bedrock-agentcore.md +2 -2
- package/.docs/{guides/deployment → integrations/deploy}/aws-lambda.md +4 -4
- package/.docs/{guides/deployment → integrations/deploy}/azure-app-services.md +4 -4
- package/.docs/{guides/deployment → integrations/deploy}/cloudflare.md +4 -4
- package/.docs/{guides/deployment → integrations/deploy}/digital-ocean.md +5 -5
- package/.docs/{guides/deployment → integrations/deploy}/inngest.md +1 -1
- package/.docs/{guides/deployment → integrations/deploy}/kubernetes.md +4 -5
- package/.docs/{guides/deployment → integrations/deploy}/netlify.md +5 -5
- package/.docs/{guides/deployment → integrations/deploy}/temporal.md +1 -1
- package/.docs/{guides/deployment → integrations/deploy}/vercel.md +5 -5
- package/.docs/{reference/workspace/agentfs-filesystem.md → integrations/file-storage/agentfs.md} +1 -1
- package/.docs/{reference/workspace/s3-filesystem.md → integrations/file-storage/amazon-s3.md} +6 -6
- package/.docs/{reference/workspace/archil-filesystem.md → integrations/file-storage/archil.md} +4 -4
- package/.docs/{reference/workspace/azure-blob-filesystem.md → integrations/file-storage/azure-blob.md} +3 -3
- package/.docs/{reference/workspace/gcs-filesystem.md → integrations/file-storage/google-cloud-storage.md} +6 -6
- package/.docs/{reference/workspace/google-drive-filesystem.md → integrations/file-storage/google-drive.md} +1 -1
- package/.docs/{reference/workspace/mesa-filesystem.md → integrations/file-storage/mesa.md} +3 -3
- package/.docs/{reference/workspace/files-sdk-filesystem.md → integrations/file-storage/vercel-files.md} +6 -6
- package/.docs/{guides/getting-started → integrations/frameworks}/astro.md +2 -2
- package/.docs/{guides/getting-started → integrations/frameworks}/electron.md +4 -4
- package/.docs/{guides/getting-started → integrations/frameworks}/express.md +1 -1
- package/.docs/{guides/getting-started → integrations/frameworks}/hono.md +1 -1
- package/.docs/{guides/getting-started → integrations/frameworks}/nestjs.md +1 -1
- package/.docs/{guides/getting-started → integrations/frameworks}/next-js.md +3 -3
- package/.docs/{guides/getting-started → integrations/frameworks}/nuxt.md +2 -2
- package/.docs/{guides/getting-started → integrations/frameworks}/sveltekit.md +2 -2
- package/.docs/{guides/getting-started → integrations/frameworks}/vite-react.md +2 -2
- package/.docs/{docs/observability/integrations/exporters → integrations/observability}/arize.md +1 -1
- package/.docs/{docs/observability/integrations/exporters → integrations/observability}/arthur.md +1 -1
- package/.docs/{docs/observability/integrations/exporters → integrations/observability}/braintrust.md +1 -1
- package/.docs/{docs/observability/integrations/exporters → integrations/observability}/confident-ai.md +1 -1
- package/.docs/integrations/observability/datadog.md +538 -0
- package/.docs/{docs/observability/integrations/exporters → integrations/observability}/laminar.md +1 -1
- package/.docs/{docs/observability/integrations/exporters → integrations/observability}/langfuse.md +1 -1
- package/.docs/{docs/observability/integrations/exporters → integrations/observability}/langsmith.md +1 -1
- package/.docs/{docs/observability/integrations/exporters/otel.md → integrations/observability/opentelemetry.md} +278 -46
- package/.docs/{docs/observability/integrations/exporters → integrations/observability}/posthog.md +1 -1
- package/.docs/{docs/observability/integrations/exporters → integrations/observability}/sentry.md +1 -1
- package/.docs/{reference/workspace/agentcore-runtime-sandbox.md → integrations/sandboxes/agentcore.md} +1 -1
- package/.docs/{reference/workspace/apple-container-sandbox.md → integrations/sandboxes/apple-container.md} +2 -2
- package/.docs/{reference/workspace/blaxel-sandbox.md → integrations/sandboxes/blaxel.md} +1 -1
- package/.docs/{reference/workspace/daytona-sandbox.md → integrations/sandboxes/daytona.md} +24 -3
- package/.docs/{reference/workspace/docker-sandbox.md → integrations/sandboxes/docker.md} +2 -2
- package/.docs/{reference/workspace/e2b-sandbox.md → integrations/sandboxes/e2b.md} +4 -4
- package/.docs/{reference/workspace/modal-sandbox.md → integrations/sandboxes/modal.md} +3 -3
- package/.docs/{reference/workspace/railway-sandbox.md → integrations/sandboxes/railway.md} +9 -1
- package/.docs/{reference/workspace/vercel-sandbox.md → integrations/sandboxes/vercel.md} +143 -12
- package/.docs/{reference → integrations}/tools/brightdata.md +1 -1
- package/.docs/{guides/guide → integrations/tools}/firecrawl.md +2 -2
- package/.docs/{reference → integrations}/tools/perplexity.md +1 -1
- package/.docs/{reference → integrations}/tools/tavily.md +1 -1
- package/.docs/{reference → integrations}/voice/aws-nova-sonic.md +1 -1
- package/.docs/{reference → integrations}/voice/cloudflare.md +3 -3
- package/.docs/{reference/voice/google-gemini-live.md → integrations/voice/google.md} +305 -30
- package/.docs/{reference/voice/inworld-realtime.md → integrations/voice/inworld.md} +163 -25
- package/.docs/{reference → integrations}/voice/livekit.md +436 -33
- package/.docs/{reference/voice/openai-realtime.md → integrations/voice/openai.md} +117 -20
- package/.docs/integrations.md +147 -0
- package/.docs/models/embeddings.md +3 -3
- package/.docs/models/environment-variables.md +1 -0
- package/.docs/models/gateways/custom-gateways.md +4 -0
- package/.docs/models/gateways/neon.md +1 -1
- package/.docs/models/gateways/netlify.md +1 -1
- package/.docs/models/gateways/openrouter.md +9 -3
- package/.docs/models/gateways/vercel.md +6 -4
- package/.docs/models/index.md +3 -3
- package/.docs/models/providers/302ai.md +1 -1
- package/.docs/models/providers/abacus.md +1 -1
- package/.docs/models/providers/abliteration-ai.md +1 -1
- package/.docs/models/providers/agentrouter.md +1 -1
- package/.docs/models/providers/ai-router.md +1 -1
- package/.docs/models/providers/aiand.md +1 -1
- package/.docs/models/providers/aki-io.md +1 -1
- package/.docs/models/providers/alibaba-cn.md +1 -1
- package/.docs/models/providers/alibaba-coding-plan-cn.md +1 -1
- package/.docs/models/providers/alibaba-coding-plan.md +1 -1
- package/.docs/models/providers/alibaba-token-plan-cn.md +1 -1
- package/.docs/models/providers/alibaba-token-plan.md +1 -1
- package/.docs/models/providers/alibaba.md +7 -5
- package/.docs/models/providers/ambient.md +2 -2
- package/.docs/models/providers/anyapi.md +1 -1
- package/.docs/models/providers/atomic-chat.md +1 -1
- package/.docs/models/providers/auriko.md +1 -1
- package/.docs/models/providers/bailing.md +1 -1
- package/.docs/models/providers/baseten.md +2 -2
- package/.docs/models/providers/berget.md +1 -1
- package/.docs/models/providers/blueclaw.md +1 -1
- package/.docs/models/providers/chutes.md +1 -1
- package/.docs/models/providers/clarifai.md +1 -1
- package/.docs/models/providers/claudinio.md +1 -1
- package/.docs/models/providers/cline-pass.md +1 -1
- package/.docs/models/providers/cloudferro-sherlock.md +1 -1
- package/.docs/models/providers/cloudflare-workers-ai.md +1 -1
- package/.docs/models/providers/coralbricks.md +75 -0
- package/.docs/models/providers/cortecs.md +3 -5
- package/.docs/models/providers/crof.md +1 -1
- package/.docs/models/providers/crossmodel.md +2 -3
- package/.docs/models/providers/daoxe.md +1 -1
- package/.docs/models/providers/databricks.md +1 -1
- package/.docs/models/providers/deepinfra.md +6 -5
- package/.docs/models/providers/digitalocean.md +5 -5
- package/.docs/models/providers/dinference.md +1 -1
- package/.docs/models/providers/drun.md +1 -1
- package/.docs/models/providers/ebcloud.md +1 -1
- package/.docs/models/providers/empiriolabs.md +3 -2
- package/.docs/models/providers/evroc.md +3 -4
- package/.docs/models/providers/fastrouter.md +1 -1
- package/.docs/models/providers/firepass.md +1 -1
- package/.docs/models/providers/fireworks-ai.md +1 -1
- package/.docs/models/providers/firmware.md +1 -1
- package/.docs/models/providers/freemodel.md +1 -1
- package/.docs/models/providers/friendli.md +1 -1
- package/.docs/models/providers/frogbot.md +1 -1
- package/.docs/models/providers/github-models.md +1 -1
- package/.docs/models/providers/gmicloud.md +1 -1
- package/.docs/models/providers/google.md +1 -1
- package/.docs/models/providers/greenpt.md +1 -1
- package/.docs/models/providers/helicone.md +1 -1
- package/.docs/models/providers/hetzner.md +8 -5
- package/.docs/models/providers/hpc-ai.md +1 -1
- package/.docs/models/providers/huggingface.md +1 -1
- package/.docs/models/providers/hyper.md +7 -7
- package/.docs/models/providers/iflowcn.md +1 -1
- package/.docs/models/providers/impossibl.md +1 -1
- package/.docs/models/providers/inception.md +1 -1
- package/.docs/models/providers/inceptron.md +1 -1
- package/.docs/models/providers/inference.md +1 -1
- package/.docs/models/providers/inferx.md +1 -1
- package/.docs/models/providers/infomaniak.md +1 -1
- package/.docs/models/providers/io-intelligence.md +1 -1
- package/.docs/models/providers/io-net.md +1 -1
- package/.docs/models/providers/jiekou.md +1 -1
- package/.docs/models/providers/kenari.md +1 -1
- package/.docs/models/providers/kilo.md +19 -13
- package/.docs/models/providers/kimi-for-coding.md +1 -1
- package/.docs/models/providers/kiro.md +1 -1
- package/.docs/models/providers/kuae-cloud-coding-plan.md +1 -1
- package/.docs/models/providers/lilac.md +1 -1
- package/.docs/models/providers/llama.md +1 -1
- package/.docs/models/providers/llmgateway.md +2 -7
- package/.docs/models/providers/llmtr.md +1 -1
- package/.docs/models/providers/lmstudio.md +1 -1
- package/.docs/models/providers/longcat.md +1 -1
- package/.docs/models/providers/lucidquery.md +1 -1
- package/.docs/models/providers/lynkr.md +1 -1
- package/.docs/models/providers/meganova.md +1 -1
- package/.docs/models/providers/meta.md +1 -1
- package/.docs/models/providers/minimax-cn-coding-plan.md +1 -1
- package/.docs/models/providers/minimax-cn.md +1 -1
- package/.docs/models/providers/minimax-coding-plan.md +1 -1
- package/.docs/models/providers/minimax.md +1 -1
- package/.docs/models/providers/mixlayer.md +1 -1
- package/.docs/models/providers/moark.md +1 -1
- package/.docs/models/providers/modal.md +1 -1
- package/.docs/models/providers/model-oracle-ai.md +1 -1
- package/.docs/models/providers/modelis.md +1 -1
- package/.docs/models/providers/modelscope.md +1 -1
- package/.docs/models/providers/moonshotai-cn.md +1 -1
- package/.docs/models/providers/moonshotai.md +1 -1
- package/.docs/models/providers/morph.md +1 -1
- package/.docs/models/providers/nano-gpt.md +11 -7
- package/.docs/models/providers/nearai.md +1 -1
- package/.docs/models/providers/nebius.md +3 -2
- package/.docs/models/providers/neuralwatt.md +1 -1
- package/.docs/models/providers/nova.md +1 -1
- package/.docs/models/providers/novita-ai.md +1 -1
- package/.docs/models/providers/nvidia.md +3 -2
- package/.docs/models/providers/ofox.md +4 -3
- package/.docs/models/providers/ollama-cloud.md +1 -1
- package/.docs/models/providers/opencode-go.md +1 -1
- package/.docs/models/providers/opencode.md +64 -64
- package/.docs/models/providers/orcarouter.md +1 -1
- package/.docs/models/providers/ovhcloud.md +1 -1
- package/.docs/models/providers/perplexity-agent.md +1 -1
- package/.docs/models/providers/pioneer.md +1 -1
- package/.docs/models/providers/poe.md +1 -1
- package/.docs/models/providers/poolside.md +1 -1
- package/.docs/models/providers/privatemode-ai.md +12 -10
- package/.docs/models/providers/qihang-ai.md +1 -1
- package/.docs/models/providers/qiniu-ai.md +1 -1
- package/.docs/models/providers/regolo-ai.md +26 -21
- package/.docs/models/providers/requesty.md +3 -3
- package/.docs/models/providers/routing-run.md +1 -1
- package/.docs/models/providers/sakana.md +1 -1
- package/.docs/models/providers/sarvam.md +1 -1
- package/.docs/models/providers/scaleway.md +1 -1
- package/.docs/models/providers/scx.md +1 -1
- package/.docs/models/providers/siliconflow-cn.md +1 -1
- package/.docs/models/providers/siliconflow.md +1 -1
- package/.docs/models/providers/snowflake-cortex.md +6 -2
- package/.docs/models/providers/stackit.md +1 -1
- package/.docs/models/providers/stepfun-ai-step-plan.md +1 -1
- package/.docs/models/providers/stepfun-ai.md +1 -1
- package/.docs/models/providers/stepfun-step-plan.md +1 -1
- package/.docs/models/providers/stepfun.md +1 -1
- package/.docs/models/providers/subconscious.md +1 -1
- package/.docs/models/providers/submodel.md +1 -1
- package/.docs/models/providers/synthetic.md +1 -1
- package/.docs/models/providers/tencent-coding-plan.md +1 -1
- package/.docs/models/providers/tencent-token-plan.md +1 -1
- package/.docs/models/providers/tencent-tokenhub.md +1 -1
- package/.docs/models/providers/tensorx.md +1 -1
- package/.docs/models/providers/the-grid-ai.md +1 -1
- package/.docs/models/providers/thinkingmachines.md +1 -1
- package/.docs/models/providers/tinfoil.md +2 -2
- package/.docs/models/providers/togetherai.md +1 -1
- package/.docs/models/providers/trustedrouter.md +1 -1
- package/.docs/models/providers/umans-ai-coding-plan.md +1 -1
- package/.docs/models/providers/umans-ai.md +1 -1
- package/.docs/models/providers/unorouter.md +1 -1
- package/.docs/models/providers/upstage.md +1 -1
- package/.docs/models/providers/venice.md +1 -1
- package/.docs/models/providers/vivgrid.md +1 -1
- package/.docs/models/providers/vultr.md +1 -1
- package/.docs/models/providers/wafer.ai.md +1 -1
- package/.docs/models/providers/wandb.md +3 -2
- package/.docs/models/providers/xiaomi-token-plan-ams.md +1 -1
- package/.docs/models/providers/xiaomi-token-plan-cn.md +1 -1
- package/.docs/models/providers/xiaomi-token-plan-sgp.md +1 -1
- package/.docs/models/providers/xiaomi.md +1 -1
- package/.docs/models/providers/xpersona.md +1 -1
- package/.docs/models/providers/zai-coding-plan.md +1 -1
- package/.docs/models/providers/zai.md +1 -1
- package/.docs/models/providers/zeldoc.md +8 -8
- package/.docs/models/providers/zenifra.md +1 -1
- package/.docs/models/providers/zenmux.md +1 -16
- package/.docs/models/providers/zhipuai-coding-plan.md +1 -1
- package/.docs/models/providers/zhipuai.md +1 -1
- package/.docs/models/providers.md +1 -0
- package/.docs/reference/agent-controller/agent-controller-class.md +35 -4
- package/.docs/reference/agent-controller/session.md +5 -3
- package/.docs/reference/agents/channels.md +2 -2
- package/.docs/reference/agents/durable-agent.md +2 -0
- package/.docs/reference/agents/generateLegacy.md +2 -2
- package/.docs/reference/agents/getDefaultOptions.md +1 -1
- package/.docs/reference/agents/getDefaultStreamOptions.md +1 -1
- package/.docs/reference/agents/getVoice.md +1 -1
- package/.docs/reference/agents/inngest-agent.md +3 -1
- package/.docs/reference/agents/network.md +1 -1
- package/.docs/reference/ai-sdk/handle-network-stream.md +1 -1
- package/.docs/reference/ai-sdk/network-route.md +1 -1
- package/.docs/{guides/agent-frameworks/ai-sdk.md → reference/ai-sdk/overview.md} +2 -2
- package/.docs/reference/auth/auth0.md +1 -1
- package/.docs/reference/auth/better-auth.md +1 -1
- package/.docs/reference/auth/clerk.md +1 -1
- package/.docs/reference/auth/firebase.md +1 -1
- package/.docs/reference/auth/google.md +1 -1
- package/.docs/reference/auth/okta.md +5 -1
- package/.docs/reference/auth/supabase.md +1 -1
- package/.docs/reference/auth/workos.md +1 -1
- package/.docs/reference/browser/agent-browser.md +2 -2
- package/.docs/reference/browser/browser-viewer.md +1 -1
- package/.docs/reference/browser/firecrawl-browser.md +1 -1
- package/.docs/reference/browser/mastra-browser.md +1 -1
- package/.docs/reference/browser/stagehand-browser.md +2 -2
- package/.docs/reference/channels/channel-provider.md +1 -1
- package/.docs/reference/channels/slack-provider.md +2 -2
- package/.docs/reference/cli/mastra.md +6 -6
- package/.docs/reference/client-js/agents.md +2 -1
- package/.docs/reference/client-js/workflows.md +3 -3
- package/.docs/reference/code-sdk/mount-agent-controller.md +1 -1
- package/.docs/reference/configuration.md +22 -28
- package/.docs/reference/core/addDynamicWorkflow.md +2 -2
- package/.docs/reference/core/addDynamicWorkflows.md +2 -2
- package/.docs/reference/core/getStorage.md +1 -1
- package/.docs/reference/core/getVector.md +2 -2
- package/.docs/reference/core/listVectors.md +2 -2
- package/.docs/reference/core/setStorage.md +1 -1
- package/.docs/reference/datasets/startExperiment.md +8 -0
- package/.docs/reference/file-based-agents/config.md +2 -0
- package/.docs/reference/file-based-agents/instructions.md +2 -0
- package/.docs/reference/file-based-agents/logger.md +2 -0
- package/.docs/reference/file-based-agents/memory.md +2 -0
- package/.docs/reference/file-based-agents/observability.md +2 -0
- package/.docs/reference/file-based-agents/processors.md +2 -0
- package/.docs/reference/file-based-agents/schedules.md +2 -0
- package/.docs/reference/file-based-agents/scorers.md +2 -0
- package/.docs/reference/file-based-agents/server.md +2 -0
- package/.docs/reference/file-based-agents/skills.md +2 -0
- package/.docs/reference/file-based-agents/storage.md +3 -1
- package/.docs/reference/file-based-agents/studio.md +3 -1
- package/.docs/reference/file-based-agents/subagents.md +2 -0
- package/.docs/reference/file-based-agents/tools.md +2 -0
- package/.docs/reference/file-based-agents/workflows.md +2 -0
- package/.docs/reference/file-based-agents/workspace.md +2 -0
- package/.docs/reference/index.md +34 -55
- package/.docs/{guides/getting-started → reference}/manual-install.md +3 -3
- package/.docs/{guides → reference}/migrations/ai-sdk-v4-to-v5.md +1 -1
- package/.docs/{guides → reference}/migrations/mastra-cloud.md +2 -2
- package/.docs/{guides → reference}/migrations/network-to-supervisor.md +1 -1
- package/.docs/{guides → reference}/migrations/upgrade-to-v1/cli.md +1 -1
- package/.docs/{guides → reference}/migrations/upgrade-to-v1/memory.md +1 -1
- package/.docs/{guides → reference}/migrations/upgrade-to-v1/overview.md +41 -41
- package/.docs/{guides → reference}/migrations/upgrade-to-v1/tools.md +1 -1
- package/.docs/{guides → reference}/migrations/upgrade-to-v1/tracing.md +11 -13
- package/.docs/reference/observability/tracing/bridges/datadog.md +2 -2
- package/.docs/reference/observability/tracing/bridges/otel.md +2 -2
- package/.docs/reference/observability/tracing/exporters/arize.md +1 -1
- package/.docs/reference/observability/tracing/exporters/arthur.md +1 -1
- package/.docs/reference/observability/tracing/exporters/cloud-exporter.md +0 -1
- package/.docs/reference/observability/tracing/exporters/confident-ai.md +1 -1
- package/.docs/reference/observability/tracing/exporters/console-exporter.md +0 -1
- package/.docs/reference/observability/tracing/exporters/datadog.md +1 -1
- package/.docs/reference/observability/tracing/exporters/default-exporter.md +0 -1
- package/.docs/reference/observability/tracing/exporters/mastra-platform-exporter.md +12 -1
- package/.docs/reference/observability/tracing/exporters/mastra-storage-exporter.md +0 -1
- package/.docs/reference/observability/tracing/exporters/otel.md +2 -2
- package/.docs/reference/observability/tracing/processors/sensitive-data-filter.md +111 -99
- package/.docs/reference/observability/tracing/span-filtering.md +1 -1
- package/.docs/reference/processors/pii-detector.md +2 -0
- package/.docs/reference/processors/prompt-injection-detector.md +2 -0
- package/.docs/reference/processors/regex-filter-processor.md +20 -0
- package/.docs/reference/processors/response-cache.md +2 -0
- package/.docs/reference/processors/tool-search-processor.md +33 -1
- package/.docs/reference/pubsub/lease-provider.md +1 -1
- package/.docs/{guides → reference}/rag/chunking-and-embedding.md +16 -19
- package/.docs/reference/rag/database-config.md +1 -1
- package/.docs/{guides/rag/graph-rag.md → reference/rag/graph-rag-guide.md} +1 -1
- package/.docs/reference/rag/metadata-filters.md +13 -4
- package/.docs/{guides → reference}/rag/overview.md +2 -2
- package/.docs/{guides → reference}/rag/retrieval.md +18 -1
- package/.docs/{guides → reference}/rag/vector-databases.md +42 -1
- package/.docs/reference/schedules/overview.md +2 -0
- package/.docs/reference/server/create-route.md +27 -1
- package/.docs/reference/server/register-api-route.md +2 -0
- package/.docs/reference/signals/create-notification-inbox-tool.md +2 -0
- package/.docs/reference/signals/signal-provider.md +2 -0
- package/.docs/reference/signals/task-signal-provider.md +2 -0
- package/.docs/reference/signals/webhook-signal-provider.md +2 -0
- package/.docs/reference/storage/composite.md +4 -4
- package/.docs/reference/storage/overview.md +1 -1
- package/.docs/reference/storage/retention.md +4 -4
- package/.docs/reference/streaming/ChunkType.md +3 -3
- package/.docs/reference/streaming/agents/stream.md +1 -1
- package/.docs/reference/streaming/agents/streamLegacy.md +3 -3
- package/.docs/reference/streaming/agents/streamUntilIdle.md +1 -1
- package/.docs/reference/templates/overview.md +1 -1
- package/.docs/reference/tools/create-code-mode.md +3 -1
- package/.docs/reference/tools/isolated-vm-transport.md +1 -1
- package/.docs/reference/tools/mcp-client.md +51 -0
- package/.docs/reference/tools/mcp-server.md +1 -1
- package/.docs/reference/tools/quickjs-transport.md +92 -0
- package/.docs/reference/vectors/chroma.md +1 -1
- package/.docs/reference/vectors/convex.md +2 -2
- package/.docs/reference/vectors/oracledb.md +347 -0
- package/.docs/{guides → reference}/voice/overview.md +58 -109
- package/.docs/{guides → reference}/voice/speech-to-speech.md +1 -1
- package/.docs/{guides → reference}/voice/speech-to-text.md +8 -8
- package/.docs/{guides → reference}/voice/text-to-speech.md +11 -12
- package/.docs/reference/workers/overview.md +10 -8
- package/.docs/reference/workflows/dynamic-workflow-definition.md +3 -1
- package/.docs/reference/workflows/run-methods/timeTravel.md +1 -0
- package/.docs/reference/workflows/workflow.md +18 -0
- package/.docs/reference/workspace/local-sandbox.md +1 -1
- package/.docs/reference/workspace/platform-filesystem.md +3 -3
- package/.docs/reference/workspace/platform-sandbox.md +11 -3
- package/.docs/reference/workspace/process-manager.md +3 -3
- package/.docs/reference/workspace/sandbox.md +10 -0
- package/CHANGELOG.md +97 -0
- package/dist/index.js +1 -1
- package/dist/{src-BZcgzbk9.js → src-D-W-bx5t.js} +2 -2
- package/dist/{src-BZcgzbk9.js.map → src-D-W-bx5t.js.map} +1 -1
- package/dist/stdio.js +1 -1
- package/package.json +6 -6
- package/.docs/docs/capabilities/channels/other-adapters.md +0 -68
- package/.docs/docs/observability/integrations/bridges/datadog.md +0 -219
- package/.docs/docs/observability/integrations/bridges/otel.md +0 -234
- package/.docs/docs/observability/integrations/exporters/datadog.md +0 -321
- package/.docs/docs/observability/integrations/exporters/mastra-platform.md +0 -201
- package/.docs/docs/observability/integrations/overview.md +0 -47
- package/.docs/docs/observability/integrations/processors/sensitive-data-filter.md +0 -302
- package/.docs/guides/build-your-ui/copilotkit/channels.md +0 -86
- package/.docs/guides/build-your-ui/copilotkit/generative-ui.md +0 -174
- package/.docs/guides/deployment/mastra-workers.md +0 -576
- package/.docs/guides/getting-started/quickstart.md +0 -88
- package/.docs/guides/guide/ai-recruiter.md +0 -228
- package/.docs/guides/guide/chef-michel.md +0 -211
- package/.docs/guides/guide/code-review-bot.md +0 -228
- package/.docs/guides/guide/coding-agent.md +0 -392
- package/.docs/guides/guide/dev-assistant.md +0 -309
- package/.docs/guides/guide/docs-manager.md +0 -240
- package/.docs/guides/guide/github-actions-pr-description.md +0 -238
- package/.docs/guides/guide/notes-mcp-server.md +0 -418
- package/.docs/guides/guide/publishing-mcp-server.md +0 -137
- package/.docs/guides/guide/research-assistant.md +0 -350
- package/.docs/guides/guide/research-coordinator.md +0 -418
- package/.docs/guides/guide/signal-provider.md +0 -221
- package/.docs/guides/guide/slack-assistant.md +0 -193
- package/.docs/guides/guide/stock-agent.md +0 -132
- package/.docs/guides/guide/web-search.md +0 -322
- package/.docs/guides/guide/whatsapp-chat-bot.md +0 -407
- package/.docs/guides/index.md +0 -24
- package/.docs/guides/voice/realtime-voice.md +0 -430
- package/.docs/reference/voice/google.md +0 -290
- package/.docs/reference/voice/inworld.md +0 -137
- package/.docs/reference/voice/openai.md +0 -96
- package/.docs/reference/voice/playai.md +0 -82
- package/.docs/reference/workspace/vercel-serverless.md +0 -128
- /package/.docs/{guides/concepts → docs/guides}/streaming.md +0 -0
- /package/.docs/{reference → docs}/mastra-platform/api.md +0 -0
- /package/.docs/{docs/server → integrations}/auth/better-auth.md +0 -0
- /package/.docs/{docs/server → integrations}/auth/google.md +0 -0
- /package/.docs/{reference → integrations}/voice/azure.md +0 -0
- /package/.docs/{reference → integrations}/voice/deepgram.md +0 -0
- /package/.docs/{reference → integrations}/voice/elevenlabs.md +0 -0
- /package/.docs/{reference → integrations}/voice/mistral.md +0 -0
- /package/.docs/{reference → integrations}/voice/murf.md +0 -0
- /package/.docs/{reference → integrations}/voice/sarvam.md +0 -0
- /package/.docs/{reference → integrations}/voice/speechify.md +0 -0
- /package/.docs/{reference/voice/xai-realtime.md → integrations/voice/xai.md} +0 -0
- /package/.docs/{guides → reference}/migrations/agentnetwork.md +0 -0
- /package/.docs/{guides → reference}/migrations/upgrade-to-v1/agent.md +0 -0
- /package/.docs/{guides → reference}/migrations/upgrade-to-v1/client.md +0 -0
- /package/.docs/{guides → reference}/migrations/upgrade-to-v1/deployment.md +0 -0
- /package/.docs/{guides → reference}/migrations/upgrade-to-v1/evals.md +0 -0
- /package/.docs/{guides → reference}/migrations/upgrade-to-v1/mastra.md +0 -0
- /package/.docs/{guides → reference}/migrations/upgrade-to-v1/mcp.md +0 -0
- /package/.docs/{guides → reference}/migrations/upgrade-to-v1/processors.md +0 -0
- /package/.docs/{guides → reference}/migrations/upgrade-to-v1/rag.md +0 -0
- /package/.docs/{guides → reference}/migrations/upgrade-to-v1/storage.md +0 -0
- /package/.docs/{guides → reference}/migrations/upgrade-to-v1/vectors.md +0 -0
- /package/.docs/{guides → reference}/migrations/upgrade-to-v1/voice.md +0 -0
- /package/.docs/{guides → reference}/migrations/upgrade-to-v1/workflows.md +0 -0
- /package/.docs/{guides → reference}/migrations/vnext-to-standard-apis.md +0 -0
|
@@ -29,7 +29,7 @@ You can then use the following voice capabilities:
|
|
|
29
29
|
|
|
30
30
|
Turn your agent's responses into natural-sounding speech using Mastra's TTS capabilities. Choose from multiple providers like OpenAI, ElevenLabs, and more.
|
|
31
31
|
|
|
32
|
-
For detailed configuration options and advanced features, check out our [Text-to-Speech guide](https://mastra.ai/
|
|
32
|
+
For detailed configuration options and advanced features, check out our [Text-to-Speech guide](https://mastra.ai/reference/voice/text-to-speech).
|
|
33
33
|
|
|
34
34
|
**OpenAI**:
|
|
35
35
|
|
|
@@ -57,7 +57,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
57
57
|
playAudio(audioStream)
|
|
58
58
|
```
|
|
59
59
|
|
|
60
|
-
Visit the [OpenAI Voice Reference](https://mastra.ai/
|
|
60
|
+
Visit the [OpenAI Voice Reference](https://mastra.ai/integrations/voice/openai) for more information on the OpenAI voice provider.
|
|
61
61
|
|
|
62
62
|
**Azure**:
|
|
63
63
|
|
|
@@ -84,7 +84,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
84
84
|
playAudio(audioStream)
|
|
85
85
|
```
|
|
86
86
|
|
|
87
|
-
Visit the [Azure Voice Reference](https://mastra.ai/
|
|
87
|
+
Visit the [Azure Voice Reference](https://mastra.ai/integrations/voice/azure) for more information on the Azure voice provider.
|
|
88
88
|
|
|
89
89
|
**ElevenLabs**:
|
|
90
90
|
|
|
@@ -111,34 +111,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
111
111
|
playAudio(audioStream)
|
|
112
112
|
```
|
|
113
113
|
|
|
114
|
-
Visit the [ElevenLabs Voice Reference](https://mastra.ai/
|
|
115
|
-
|
|
116
|
-
**PlayAI**:
|
|
117
|
-
|
|
118
|
-
```typescript
|
|
119
|
-
import { Agent } from '@mastra/core/agent'
|
|
120
|
-
import { PlayAIVoice } from '@mastra/voice-playai'
|
|
121
|
-
import { playAudio } from '@mastra/node-audio'
|
|
122
|
-
|
|
123
|
-
const voiceAgent = new Agent({
|
|
124
|
-
id: 'voice-agent',
|
|
125
|
-
name: 'Voice Agent',
|
|
126
|
-
instructions: 'You are a voice assistant that can help users with their tasks.',
|
|
127
|
-
model: 'openai/gpt-5.6-sol',
|
|
128
|
-
voice: new PlayAIVoice(),
|
|
129
|
-
})
|
|
130
|
-
|
|
131
|
-
const { text } = await voiceAgent.generate('What color is the sky?')
|
|
132
|
-
|
|
133
|
-
// Convert text to speech to an Audio Stream
|
|
134
|
-
const audioStream = await voiceAgent.voice.speak(text, {
|
|
135
|
-
speaker: 'default', // Optional: specify a speaker
|
|
136
|
-
})
|
|
137
|
-
|
|
138
|
-
playAudio(audioStream)
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
Visit the [PlayAI Voice Reference](https://mastra.ai/reference/voice/playai) for more information on the PlayAI voice provider.
|
|
114
|
+
Visit the [ElevenLabs Voice Reference](https://mastra.ai/integrations/voice/elevenlabs) for more information on the ElevenLabs voice provider.
|
|
142
115
|
|
|
143
116
|
**Google**:
|
|
144
117
|
|
|
@@ -165,7 +138,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
165
138
|
playAudio(audioStream)
|
|
166
139
|
```
|
|
167
140
|
|
|
168
|
-
Visit the [Google Voice Reference](https://mastra.ai/
|
|
141
|
+
Visit the [Google Voice Reference](https://mastra.ai/integrations/voice/google) for more information on the Google voice provider.
|
|
169
142
|
|
|
170
143
|
**Cloudflare**:
|
|
171
144
|
|
|
@@ -192,7 +165,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
192
165
|
playAudio(audioStream)
|
|
193
166
|
```
|
|
194
167
|
|
|
195
|
-
Visit the [Cloudflare Voice Reference](https://mastra.ai/
|
|
168
|
+
Visit the [Cloudflare Voice Reference](https://mastra.ai/integrations/voice/cloudflare) for more information on the Cloudflare voice provider.
|
|
196
169
|
|
|
197
170
|
**Deepgram**:
|
|
198
171
|
|
|
@@ -219,7 +192,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
219
192
|
playAudio(audioStream)
|
|
220
193
|
```
|
|
221
194
|
|
|
222
|
-
Visit the [Deepgram Voice Reference](https://mastra.ai/
|
|
195
|
+
Visit the [Deepgram Voice Reference](https://mastra.ai/integrations/voice/deepgram) for more information on the Deepgram voice provider.
|
|
223
196
|
|
|
224
197
|
**Inworld**:
|
|
225
198
|
|
|
@@ -246,7 +219,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
246
219
|
playAudio(audioStream)
|
|
247
220
|
```
|
|
248
221
|
|
|
249
|
-
Visit the [Inworld Voice Reference](https://mastra.ai/
|
|
222
|
+
Visit the [Inworld Voice Reference](https://mastra.ai/integrations/voice/inworld) for more information on the Inworld voice provider.
|
|
250
223
|
|
|
251
224
|
**Speechify**:
|
|
252
225
|
|
|
@@ -273,7 +246,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
273
246
|
playAudio(audioStream)
|
|
274
247
|
```
|
|
275
248
|
|
|
276
|
-
Visit the [Speechify Voice Reference](https://mastra.ai/
|
|
249
|
+
Visit the [Speechify Voice Reference](https://mastra.ai/integrations/voice/speechify) for more information on the Speechify voice provider.
|
|
277
250
|
|
|
278
251
|
**Sarvam**:
|
|
279
252
|
|
|
@@ -300,7 +273,7 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
300
273
|
playAudio(audioStream)
|
|
301
274
|
```
|
|
302
275
|
|
|
303
|
-
Visit the [Sarvam Voice Reference](https://mastra.ai/
|
|
276
|
+
Visit the [Sarvam Voice Reference](https://mastra.ai/integrations/voice/sarvam) for more information on the Sarvam voice provider.
|
|
304
277
|
|
|
305
278
|
**Murf**:
|
|
306
279
|
|
|
@@ -327,11 +300,11 @@ const audioStream = await voiceAgent.voice.speak(text, {
|
|
|
327
300
|
playAudio(audioStream)
|
|
328
301
|
```
|
|
329
302
|
|
|
330
|
-
Visit the [Murf Voice Reference](https://mastra.ai/
|
|
303
|
+
Visit the [Murf Voice Reference](https://mastra.ai/integrations/voice/murf) for more information on the Murf voice provider.
|
|
331
304
|
|
|
332
305
|
### Speech to Text (STT)
|
|
333
306
|
|
|
334
|
-
Transcribe spoken content using providers like OpenAI, ElevenLabs, and more. For detailed configuration options and more, check out [Speech to Text](https://mastra.ai/
|
|
307
|
+
Transcribe spoken content using providers like OpenAI, ElevenLabs, and more. For detailed configuration options and more, check out [Speech to Text](https://mastra.ai/reference/voice/speech-to-text).
|
|
335
308
|
|
|
336
309
|
You can download a sample audio file from [here](https://github.com/mastra-ai/realtime-voice-demo/raw/refs/heads/main/how_can_i_help_you.mp3).
|
|
337
310
|
|
|
@@ -363,7 +336,7 @@ console.log(`User said: ${transcript}`)
|
|
|
363
336
|
const { text } = await voiceAgent.generate(transcript)
|
|
364
337
|
```
|
|
365
338
|
|
|
366
|
-
Visit the [OpenAI Voice Reference](https://mastra.ai/
|
|
339
|
+
Visit the [OpenAI Voice Reference](https://mastra.ai/integrations/voice/openai) for more information on the OpenAI voice provider.
|
|
367
340
|
|
|
368
341
|
**Azure**:
|
|
369
342
|
|
|
@@ -392,7 +365,7 @@ console.log(`User said: ${transcript}`)
|
|
|
392
365
|
const { text } = await voiceAgent.generate(transcript)
|
|
393
366
|
```
|
|
394
367
|
|
|
395
|
-
Visit the [Azure Voice Reference](https://mastra.ai/
|
|
368
|
+
Visit the [Azure Voice Reference](https://mastra.ai/integrations/voice/azure) for more information on the Azure voice provider.
|
|
396
369
|
|
|
397
370
|
**ElevenLabs**:
|
|
398
371
|
|
|
@@ -420,7 +393,7 @@ console.log(`User said: ${transcript}`)
|
|
|
420
393
|
const { text } = await voiceAgent.generate(transcript)
|
|
421
394
|
```
|
|
422
395
|
|
|
423
|
-
Visit the [ElevenLabs Voice Reference](https://mastra.ai/
|
|
396
|
+
Visit the [ElevenLabs Voice Reference](https://mastra.ai/integrations/voice/elevenlabs) for more information on the ElevenLabs voice provider.
|
|
424
397
|
|
|
425
398
|
**Google**:
|
|
426
399
|
|
|
@@ -448,7 +421,7 @@ console.log(`User said: ${transcript}`)
|
|
|
448
421
|
const { text } = await voiceAgent.generate(transcript)
|
|
449
422
|
```
|
|
450
423
|
|
|
451
|
-
Visit the [Google Voice Reference](https://mastra.ai/
|
|
424
|
+
Visit the [Google Voice Reference](https://mastra.ai/integrations/voice/google) for more information on the Google voice provider.
|
|
452
425
|
|
|
453
426
|
**Cloudflare**:
|
|
454
427
|
|
|
@@ -476,7 +449,7 @@ console.log(`User said: ${transcript}`)
|
|
|
476
449
|
const { text } = await voiceAgent.generate(transcript)
|
|
477
450
|
```
|
|
478
451
|
|
|
479
|
-
Visit the [Cloudflare Voice Reference](https://mastra.ai/
|
|
452
|
+
Visit the [Cloudflare Voice Reference](https://mastra.ai/integrations/voice/cloudflare) for more information on the Cloudflare voice provider.
|
|
480
453
|
|
|
481
454
|
**Deepgram**:
|
|
482
455
|
|
|
@@ -504,7 +477,7 @@ console.log(`User said: ${transcript}`)
|
|
|
504
477
|
const { text } = await voiceAgent.generate(transcript)
|
|
505
478
|
```
|
|
506
479
|
|
|
507
|
-
Visit the [Deepgram Voice Reference](https://mastra.ai/
|
|
480
|
+
Visit the [Deepgram Voice Reference](https://mastra.ai/integrations/voice/deepgram) for more information on the Deepgram voice provider.
|
|
508
481
|
|
|
509
482
|
**Inworld**:
|
|
510
483
|
|
|
@@ -532,7 +505,7 @@ console.log(`User said: ${transcript}`)
|
|
|
532
505
|
const { text } = await voiceAgent.generate(transcript)
|
|
533
506
|
```
|
|
534
507
|
|
|
535
|
-
Visit the [Inworld Voice Reference](https://mastra.ai/
|
|
508
|
+
Visit the [Inworld Voice Reference](https://mastra.ai/integrations/voice/inworld) for more information on the Inworld voice provider.
|
|
536
509
|
|
|
537
510
|
**Sarvam**:
|
|
538
511
|
|
|
@@ -560,11 +533,11 @@ console.log(`User said: ${transcript}`)
|
|
|
560
533
|
const { text } = await voiceAgent.generate(transcript)
|
|
561
534
|
```
|
|
562
535
|
|
|
563
|
-
Visit the [Sarvam Voice Reference](https://mastra.ai/
|
|
536
|
+
Visit the [Sarvam Voice Reference](https://mastra.ai/integrations/voice/sarvam) for more information on the Sarvam voice provider.
|
|
564
537
|
|
|
565
538
|
### Speech to Speech (STS)
|
|
566
539
|
|
|
567
|
-
Create conversational experiences with speech-to-speech capabilities. The unified API enables real-time voice interactions between users and AI agents. For detailed configuration options and advanced features, check out [Speech to Speech](https://mastra.ai/
|
|
540
|
+
Create conversational experiences with speech-to-speech capabilities. The unified API enables real-time voice interactions between users and AI agents. For detailed configuration options and advanced features, check out [Speech to Speech](https://mastra.ai/reference/voice/speech-to-speech).
|
|
568
541
|
|
|
569
542
|
**OpenAI**:
|
|
570
543
|
|
|
@@ -594,7 +567,7 @@ const micStream = getMicrophoneStream()
|
|
|
594
567
|
await voiceAgent.voice.send(micStream)
|
|
595
568
|
```
|
|
596
569
|
|
|
597
|
-
Visit the [OpenAI Voice Reference](https://mastra.ai/
|
|
570
|
+
Visit the [OpenAI Voice Reference](https://mastra.ai/integrations/voice/openai) for more information on the OpenAI voice provider.
|
|
598
571
|
|
|
599
572
|
**Google**:
|
|
600
573
|
|
|
@@ -643,7 +616,7 @@ const micStream = getMicrophoneStream()
|
|
|
643
616
|
await voiceAgent.voice.send(micStream)
|
|
644
617
|
```
|
|
645
618
|
|
|
646
|
-
Visit the [Google Gemini Live Reference](https://mastra.ai/
|
|
619
|
+
Visit the [Google Gemini Live Reference](https://mastra.ai/integrations/voice/google) for more information on the Google Gemini Live voice provider.
|
|
647
620
|
|
|
648
621
|
**AWS Nova Sonic**:
|
|
649
622
|
|
|
@@ -686,7 +659,7 @@ const micStream = getMicrophoneStream()
|
|
|
686
659
|
await voiceAgent.voice.send(micStream)
|
|
687
660
|
```
|
|
688
661
|
|
|
689
|
-
Visit the [AWS Nova Sonic Reference](https://mastra.ai/
|
|
662
|
+
Visit the [AWS Nova Sonic Reference](https://mastra.ai/integrations/voice/aws-nova-sonic) for more information on the AWS Nova Sonic voice provider.
|
|
690
663
|
|
|
691
664
|
**Inworld Realtime**:
|
|
692
665
|
|
|
@@ -728,7 +701,7 @@ const micStream = getMicrophoneStream()
|
|
|
728
701
|
await voiceAgent.voice.send(micStream)
|
|
729
702
|
```
|
|
730
703
|
|
|
731
|
-
Visit the [Inworld Realtime Reference](https://mastra.ai/
|
|
704
|
+
Visit the [Inworld Realtime Reference](https://mastra.ai/integrations/voice/inworld) for more information on the Inworld Realtime voice provider.
|
|
732
705
|
|
|
733
706
|
**xAI**:
|
|
734
707
|
|
|
@@ -771,11 +744,11 @@ const micStream = getMicrophoneStream()
|
|
|
771
744
|
await voiceAgent.voice.send(micStream)
|
|
772
745
|
```
|
|
773
746
|
|
|
774
|
-
Visit the [xAI Realtime Voice Reference](https://mastra.ai/
|
|
747
|
+
Visit the [xAI Realtime Voice Reference](https://mastra.ai/integrations/voice/xai) for more information on the xAI voice provider.
|
|
775
748
|
|
|
776
749
|
### Realtime voice
|
|
777
750
|
|
|
778
|
-
Run live calls a user can talk over, in the browser or over the phone. Mastra hands the audio loop to LiveKit, which covers voice activity detection, semantic turn detection, and barge-in, while your agent generates each reply with its own model, tools, and memory. For setup and configuration options, check out [Realtime voice](https://mastra.ai/
|
|
751
|
+
Run live calls a user can talk over, in the browser or over the phone. Mastra hands the audio loop to LiveKit, which covers voice activity detection, semantic turn detection, and barge-in, while your agent generates each reply with its own model, tools, and memory. For setup and configuration options, check out [Realtime voice](https://mastra.ai/integrations/voice/livekit).
|
|
779
752
|
|
|
780
753
|
## Voice configuration
|
|
781
754
|
|
|
@@ -802,7 +775,7 @@ const voice = new OpenAIVoice({
|
|
|
802
775
|
})
|
|
803
776
|
```
|
|
804
777
|
|
|
805
|
-
Visit the [OpenAI Voice Reference](https://mastra.ai/
|
|
778
|
+
Visit the [OpenAI Voice Reference](https://mastra.ai/integrations/voice/openai) for more information on the OpenAI voice provider.
|
|
806
779
|
|
|
807
780
|
**Azure**:
|
|
808
781
|
|
|
@@ -827,7 +800,7 @@ const voice = new AzureVoice({
|
|
|
827
800
|
})
|
|
828
801
|
```
|
|
829
802
|
|
|
830
|
-
Visit the [Azure Voice Reference](https://mastra.ai/
|
|
803
|
+
Visit the [Azure Voice Reference](https://mastra.ai/integrations/voice/azure) for more information on the Azure voice provider.
|
|
831
804
|
|
|
832
805
|
**ElevenLabs**:
|
|
833
806
|
|
|
@@ -845,25 +818,7 @@ const voice = new ElevenLabsVoice({
|
|
|
845
818
|
})
|
|
846
819
|
```
|
|
847
820
|
|
|
848
|
-
Visit the [ElevenLabs Voice Reference](https://mastra.ai/
|
|
849
|
-
|
|
850
|
-
**PlayAI**:
|
|
851
|
-
|
|
852
|
-
```typescript
|
|
853
|
-
// PlayAI Voice Configuration
|
|
854
|
-
const voice = new PlayAIVoice({
|
|
855
|
-
speechModel: {
|
|
856
|
-
name: 'playai-voice', // Example model name
|
|
857
|
-
speaker: 'emma', // Example speaker name
|
|
858
|
-
apiKey: process.env.PLAYAI_API_KEY,
|
|
859
|
-
language: 'en-US', // Language code
|
|
860
|
-
speed: 1.0, // Speech speed
|
|
861
|
-
},
|
|
862
|
-
// PlayAI may not have a separate listening model
|
|
863
|
-
})
|
|
864
|
-
```
|
|
865
|
-
|
|
866
|
-
Visit the [PlayAI Voice Reference](https://mastra.ai/reference/voice/playai) for more information on the PlayAI voice provider.
|
|
821
|
+
Visit the [ElevenLabs Voice Reference](https://mastra.ai/integrations/voice/elevenlabs) for more information on the ElevenLabs voice provider.
|
|
867
822
|
|
|
868
823
|
**Google**:
|
|
869
824
|
|
|
@@ -884,7 +839,7 @@ const voice = new GoogleVoice({
|
|
|
884
839
|
})
|
|
885
840
|
```
|
|
886
841
|
|
|
887
|
-
Visit the [Google Voice Reference](https://mastra.ai/
|
|
842
|
+
Visit the [Google Voice Reference](https://mastra.ai/integrations/voice/google) for more information on the Google voice provider.
|
|
888
843
|
|
|
889
844
|
**Cloudflare**:
|
|
890
845
|
|
|
@@ -902,7 +857,7 @@ const voice = new CloudflareVoice({
|
|
|
902
857
|
})
|
|
903
858
|
```
|
|
904
859
|
|
|
905
|
-
Visit the [Cloudflare Voice Reference](https://mastra.ai/
|
|
860
|
+
Visit the [Cloudflare Voice Reference](https://mastra.ai/integrations/voice/cloudflare) for more information on the Cloudflare voice provider.
|
|
906
861
|
|
|
907
862
|
**Deepgram**:
|
|
908
863
|
|
|
@@ -923,7 +878,7 @@ const voice = new DeepgramVoice({
|
|
|
923
878
|
})
|
|
924
879
|
```
|
|
925
880
|
|
|
926
|
-
Visit the [Deepgram Voice Reference](https://mastra.ai/
|
|
881
|
+
Visit the [Deepgram Voice Reference](https://mastra.ai/integrations/voice/deepgram) for more information on the Deepgram voice provider.
|
|
927
882
|
|
|
928
883
|
**Inworld**:
|
|
929
884
|
|
|
@@ -951,7 +906,7 @@ const audioStream = await voice.speak('Hello!', {
|
|
|
951
906
|
})
|
|
952
907
|
```
|
|
953
908
|
|
|
954
|
-
Visit the [Inworld Voice Reference](https://mastra.ai/
|
|
909
|
+
Visit the [Inworld Voice Reference](https://mastra.ai/integrations/voice/inworld) for more information on the Inworld voice provider.
|
|
955
910
|
|
|
956
911
|
**Speechify**:
|
|
957
912
|
|
|
@@ -969,7 +924,7 @@ const voice = new SpeechifyVoice({
|
|
|
969
924
|
})
|
|
970
925
|
```
|
|
971
926
|
|
|
972
|
-
Visit the [Speechify Voice Reference](https://mastra.ai/
|
|
927
|
+
Visit the [Speechify Voice Reference](https://mastra.ai/integrations/voice/speechify) for more information on the Speechify voice provider.
|
|
973
928
|
|
|
974
929
|
**Sarvam**:
|
|
975
930
|
|
|
@@ -989,7 +944,7 @@ const voice = new SarvamVoice({
|
|
|
989
944
|
})
|
|
990
945
|
```
|
|
991
946
|
|
|
992
|
-
Visit the [Sarvam Voice Reference](https://mastra.ai/
|
|
947
|
+
Visit the [Sarvam Voice Reference](https://mastra.ai/integrations/voice/sarvam) for more information on the Sarvam voice provider.
|
|
993
948
|
|
|
994
949
|
**Murf**:
|
|
995
950
|
|
|
@@ -1006,7 +961,7 @@ const voice = new MurfVoice({
|
|
|
1006
961
|
})
|
|
1007
962
|
```
|
|
1008
963
|
|
|
1009
|
-
Visit the [Murf Voice Reference](https://mastra.ai/
|
|
964
|
+
Visit the [Murf Voice Reference](https://mastra.ai/integrations/voice/murf) for more information on the Murf voice provider.
|
|
1010
965
|
|
|
1011
966
|
**OpenAI Realtime**:
|
|
1012
967
|
|
|
@@ -1027,7 +982,7 @@ const voice = new OpenAIRealtimeVoice({
|
|
|
1027
982
|
})
|
|
1028
983
|
```
|
|
1029
984
|
|
|
1030
|
-
For more information on the OpenAI Realtime voice provider, refer to the [OpenAI Realtime Voice Reference](https://mastra.ai/
|
|
985
|
+
For more information on the OpenAI Realtime voice provider, refer to the [OpenAI Realtime Voice Reference](https://mastra.ai/integrations/voice/openai).
|
|
1031
986
|
|
|
1032
987
|
**xAI Realtime**:
|
|
1033
988
|
|
|
@@ -1059,7 +1014,7 @@ const voice = new XAIRealtimeVoice({
|
|
|
1059
1014
|
})
|
|
1060
1015
|
```
|
|
1061
1016
|
|
|
1062
|
-
Visit the [xAI Realtime Voice Reference](https://mastra.ai/
|
|
1017
|
+
Visit the [xAI Realtime Voice Reference](https://mastra.ai/integrations/voice/xai) for more information on the xAI realtime voice provider.
|
|
1063
1018
|
|
|
1064
1019
|
**Google Gemini Live**:
|
|
1065
1020
|
|
|
@@ -1075,7 +1030,7 @@ const voice = new GeminiLiveVoice({
|
|
|
1075
1030
|
})
|
|
1076
1031
|
```
|
|
1077
1032
|
|
|
1078
|
-
Visit the [Google Gemini Live Reference](https://mastra.ai/
|
|
1033
|
+
Visit the [Google Gemini Live Reference](https://mastra.ai/integrations/voice/google) for more information on the Google Gemini Live voice provider.
|
|
1079
1034
|
|
|
1080
1035
|
**AWS Nova Sonic**:
|
|
1081
1036
|
|
|
@@ -1097,7 +1052,7 @@ const voice = new NovaSonicVoice({
|
|
|
1097
1052
|
})
|
|
1098
1053
|
```
|
|
1099
1054
|
|
|
1100
|
-
Visit the [AWS Nova Sonic Reference](https://mastra.ai/
|
|
1055
|
+
Visit the [AWS Nova Sonic Reference](https://mastra.ai/integrations/voice/aws-nova-sonic) for more information on the AWS Nova Sonic voice provider.
|
|
1101
1056
|
|
|
1102
1057
|
**Inworld Realtime**:
|
|
1103
1058
|
|
|
@@ -1117,7 +1072,7 @@ const voice = new InworldRealtimeVoice({
|
|
|
1117
1072
|
})
|
|
1118
1073
|
```
|
|
1119
1074
|
|
|
1120
|
-
Visit the [Inworld Realtime Reference](https://mastra.ai/
|
|
1075
|
+
Visit the [Inworld Realtime Reference](https://mastra.ai/integrations/voice/inworld) for more information on the Inworld Realtime voice provider.
|
|
1121
1076
|
|
|
1122
1077
|
**AI SDK**:
|
|
1123
1078
|
|
|
@@ -1145,13 +1100,13 @@ const voiceAgent = new Agent({
|
|
|
1145
1100
|
|
|
1146
1101
|
### Using multiple voice providers
|
|
1147
1102
|
|
|
1148
|
-
This example demonstrates how to create and use two different voice providers in Mastra: OpenAI for speech-to-text (STT) and
|
|
1103
|
+
This example demonstrates how to create and use two different voice providers in Mastra: OpenAI for speech-to-text (STT) and ElevenLabs for text-to-speech (TTS).
|
|
1149
1104
|
|
|
1150
1105
|
Start by creating instances of the voice providers with any necessary configuration.
|
|
1151
1106
|
|
|
1152
1107
|
```typescript
|
|
1153
1108
|
import { OpenAIVoice } from '@mastra/voice-openai'
|
|
1154
|
-
import {
|
|
1109
|
+
import { ElevenLabsVoice } from '@mastra/voice-elevenlabs'
|
|
1155
1110
|
import { CompositeVoice } from '@mastra/core/voice'
|
|
1156
1111
|
import { playAudio, getMicrophoneStream } from '@mastra/node-audio'
|
|
1157
1112
|
|
|
@@ -1163,13 +1118,8 @@ const input = new OpenAIVoice({
|
|
|
1163
1118
|
},
|
|
1164
1119
|
})
|
|
1165
1120
|
|
|
1166
|
-
// Initialize
|
|
1167
|
-
const output = new
|
|
1168
|
-
speechModel: {
|
|
1169
|
-
name: 'playai-voice',
|
|
1170
|
-
apiKey: process.env.PLAYAI_API_KEY,
|
|
1171
|
-
},
|
|
1172
|
-
})
|
|
1121
|
+
// Initialize ElevenLabs voice for TTS
|
|
1122
|
+
const output = new ElevenLabsVoice()
|
|
1173
1123
|
|
|
1174
1124
|
// Combine the providers using CompositeVoice
|
|
1175
1125
|
const voice = new CompositeVoice({
|
|
@@ -1228,12 +1178,12 @@ You can also mix AI SDK models with Mastra providers:
|
|
|
1228
1178
|
|
|
1229
1179
|
```typescript
|
|
1230
1180
|
import { CompositeVoice } from '@mastra/core/voice'
|
|
1231
|
-
import {
|
|
1181
|
+
import { ElevenLabsVoice } from '@mastra/voice-elevenlabs'
|
|
1232
1182
|
import { groq } from '@ai-sdk/groq'
|
|
1233
1183
|
|
|
1234
1184
|
const voice = new CompositeVoice({
|
|
1235
1185
|
input: groq.transcription('whisper-large-v3'), // AI SDK for STT
|
|
1236
|
-
output: new
|
|
1186
|
+
output: new ElevenLabsVoice(), // Mastra provider for TTS
|
|
1237
1187
|
})
|
|
1238
1188
|
```
|
|
1239
1189
|
|
|
@@ -1243,15 +1193,14 @@ For more information on the CompositeVoice, refer to the [CompositeVoice Referen
|
|
|
1243
1193
|
|
|
1244
1194
|
- [CompositeVoice](https://mastra.ai/reference/voice/composite-voice)
|
|
1245
1195
|
- [MastraVoice](https://mastra.ai/reference/voice/mastra-voice)
|
|
1246
|
-
- [OpenAI Voice](https://mastra.ai/
|
|
1247
|
-
- [OpenAI Realtime Voice](https://mastra.ai/
|
|
1248
|
-
- [xAI Realtime Voice](https://mastra.ai/
|
|
1249
|
-
- [Azure Voice](https://mastra.ai/
|
|
1250
|
-
- [Google Voice](https://mastra.ai/
|
|
1251
|
-
- [Google Gemini Live Voice](https://mastra.ai/
|
|
1252
|
-
- [AWS Nova Sonic Voice](https://mastra.ai/
|
|
1253
|
-
- [Deepgram Voice](https://mastra.ai/
|
|
1254
|
-
- [Inworld Voice](https://mastra.ai/
|
|
1255
|
-
- [LiveKit](https://mastra.ai/
|
|
1256
|
-
- [PlayAI Voice](https://mastra.ai/reference/voice/playai)
|
|
1196
|
+
- [OpenAI Voice](https://mastra.ai/integrations/voice/openai)
|
|
1197
|
+
- [OpenAI Realtime Voice](https://mastra.ai/integrations/voice/openai)
|
|
1198
|
+
- [xAI Realtime Voice](https://mastra.ai/integrations/voice/xai)
|
|
1199
|
+
- [Azure Voice](https://mastra.ai/integrations/voice/azure)
|
|
1200
|
+
- [Google Voice](https://mastra.ai/integrations/voice/google)
|
|
1201
|
+
- [Google Gemini Live Voice](https://mastra.ai/integrations/voice/google)
|
|
1202
|
+
- [AWS Nova Sonic Voice](https://mastra.ai/integrations/voice/aws-nova-sonic)
|
|
1203
|
+
- [Deepgram Voice](https://mastra.ai/integrations/voice/deepgram)
|
|
1204
|
+
- [Inworld Voice](https://mastra.ai/integrations/voice/inworld)
|
|
1205
|
+
- [LiveKit](https://mastra.ai/integrations/voice/livekit)
|
|
1257
1206
|
- [Voice Examples](https://github.com/mastra-ai/voice-examples)
|
|
@@ -54,7 +54,7 @@ const micStream = getMicrophoneStream()
|
|
|
54
54
|
await agent.voice.send(micStream)
|
|
55
55
|
```
|
|
56
56
|
|
|
57
|
-
For a broader overview of voice providers on agents, see [Voice in Mastra](https://mastra.ai/
|
|
57
|
+
For a broader overview of voice providers on agents, see [Voice in Mastra](https://mastra.ai/reference/voice/overview).
|
|
58
58
|
|
|
59
59
|
## Use tools in realtime sessions
|
|
60
60
|
|
|
@@ -30,13 +30,13 @@ const voice = new OpenAIVoice()
|
|
|
30
30
|
|
|
31
31
|
Mastra supports several Speech-to-Text providers, each with their own capabilities and strengths:
|
|
32
32
|
|
|
33
|
-
- [**OpenAI**](https://mastra.ai/
|
|
34
|
-
- [**Azure**](https://mastra.ai/
|
|
35
|
-
- [**ElevenLabs**](https://mastra.ai/
|
|
36
|
-
- [**Google**](https://mastra.ai/
|
|
37
|
-
- [**Cloudflare**](https://mastra.ai/
|
|
38
|
-
- [**Deepgram**](https://mastra.ai/
|
|
39
|
-
- [**Sarvam**](https://mastra.ai/
|
|
33
|
+
- [**OpenAI**](https://mastra.ai/integrations/voice/openai): High-accuracy transcription with Whisper models
|
|
34
|
+
- [**Azure**](https://mastra.ai/integrations/voice/azure): Microsoft's speech recognition with enterprise-grade reliability
|
|
35
|
+
- [**ElevenLabs**](https://mastra.ai/integrations/voice/elevenlabs): Advanced speech recognition with support for multiple languages
|
|
36
|
+
- [**Google**](https://mastra.ai/integrations/voice/google): Google's speech recognition with extensive language support
|
|
37
|
+
- [**Cloudflare**](https://mastra.ai/integrations/voice/cloudflare): Edge-optimized speech recognition for low-latency applications
|
|
38
|
+
- [**Deepgram**](https://mastra.ai/integrations/voice/deepgram): AI-powered speech recognition with high accuracy for various accents
|
|
39
|
+
- [**Sarvam**](https://mastra.ai/integrations/voice/sarvam): Specialized in Indic languages and accents
|
|
40
40
|
|
|
41
41
|
Each provider is implemented as a separate package that you can install as needed:
|
|
42
42
|
|
|
@@ -96,4 +96,4 @@ const transcription = await agent.voice.listen(audioStream, {
|
|
|
96
96
|
console.log(`Transcription: ${transcription}`)
|
|
97
97
|
```
|
|
98
98
|
|
|
99
|
-
For a broader overview of voice providers on agents, see [Voice in Mastra](https://mastra.ai/
|
|
99
|
+
For a broader overview of voice providers on agents, see [Voice in Mastra](https://mastra.ai/reference/voice/overview).
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Text-to-Speech (TTS) in Mastra offers a unified API for synthesizing spoken audio from text using providers. By incorporating TTS into your applications, you can enhance user experience with natural voice interactions and improve accessibility for users with visual impairments, plus create more engaging multimodal interfaces.
|
|
6
6
|
|
|
7
|
-
TTS is a core component of any voice application. Combined with STT (Speech-to-Text), it forms the foundation of voice interaction systems. Newer models support STS ([Speech-to-Speech](https://mastra.ai/
|
|
7
|
+
TTS is a core component of any voice application. Combined with STT (Speech-to-Text), it forms the foundation of voice interaction systems. Newer models support STS ([Speech-to-Speech](https://mastra.ai/reference/voice/speech-to-speech)) which can be used for real-time interactions but come at high cost ($).
|
|
8
8
|
|
|
9
9
|
## Configuration
|
|
10
10
|
|
|
@@ -35,16 +35,15 @@ const voice = new OpenAIVoice()
|
|
|
35
35
|
|
|
36
36
|
Mastra supports Text-to-Speech providers, each with their own unique capabilities and voice options. You can choose the provider that best suits your application's needs:
|
|
37
37
|
|
|
38
|
-
- [**OpenAI**](https://mastra.ai/
|
|
39
|
-
- [**Azure**](https://mastra.ai/
|
|
40
|
-
- [**ElevenLabs**](https://mastra.ai/
|
|
41
|
-
- [**
|
|
42
|
-
- [**
|
|
43
|
-
- [**
|
|
44
|
-
- [**
|
|
45
|
-
- [**
|
|
46
|
-
- [**
|
|
47
|
-
- [**Murf**](https://mastra.ai/reference/voice/murf): Studio-quality voice overs with customizable parameters
|
|
38
|
+
- [**OpenAI**](https://mastra.ai/integrations/voice/openai): High-quality voices with natural intonation and expression
|
|
39
|
+
- [**Azure**](https://mastra.ai/integrations/voice/azure): Microsoft's speech service with voices and languages
|
|
40
|
+
- [**ElevenLabs**](https://mastra.ai/integrations/voice/elevenlabs): Ultra-realistic voices with emotion and fine-grained control
|
|
41
|
+
- [**Google**](https://mastra.ai/integrations/voice/google): Google's speech synthesis with multilingual support
|
|
42
|
+
- [**Cloudflare**](https://mastra.ai/integrations/voice/cloudflare): Edge-optimized speech synthesis for low-latency applications
|
|
43
|
+
- [**Deepgram**](https://mastra.ai/integrations/voice/deepgram): AI-powered speech technology with high accuracy
|
|
44
|
+
- [**Speechify**](https://mastra.ai/integrations/voice/speechify): Text-to-speech optimized for readability and accessibility
|
|
45
|
+
- [**Sarvam**](https://mastra.ai/integrations/voice/sarvam): Specialized in Indic languages and accents
|
|
46
|
+
- [**Murf**](https://mastra.ai/integrations/voice/murf): Studio-quality voice overs with customizable parameters
|
|
48
47
|
|
|
49
48
|
Each provider is implemented as a separate package that you can install as needed:
|
|
50
49
|
|
|
@@ -102,4 +101,4 @@ await new Promise<void>((resolve, reject) => {
|
|
|
102
101
|
})
|
|
103
102
|
```
|
|
104
103
|
|
|
105
|
-
For a broader overview of voice providers on agents, see [Voice in Mastra](https://mastra.ai/
|
|
104
|
+
For a broader overview of voice providers on agents, see [Voice in Mastra](https://mastra.ai/reference/voice/overview).
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
# Workers
|
|
4
4
|
|
|
5
|
+
> **Beta:** Breaking changes may occur without a major version bump until the API is stable.
|
|
6
|
+
|
|
5
7
|
For usage patterns and deployment topologies, see [Workers](https://mastra.ai/docs/deployment/workers).
|
|
6
8
|
|
|
7
9
|
## Environment variables
|
|
@@ -75,13 +77,13 @@ Executes background tool calls dispatched by agents.
|
|
|
75
77
|
|
|
76
78
|
A deployment running all worker types requires a storage backend that implements the `workflows`, `backgroundTasks`, and `schedules` domains. The `schedules` domain is specifically required by the SchedulerWorker. If you don't use scheduled workflows, backends without it can still support orchestration and background tasks. The following backends support all three:
|
|
77
79
|
|
|
78
|
-
| Backend | Package
|
|
79
|
-
| ---------- |
|
|
80
|
-
| PostgreSQL | [`@mastra/pg`](https://mastra.ai/
|
|
81
|
-
| LibSQL | [`@mastra/libsql`](https://mastra.ai/
|
|
82
|
-
| MySQL | `@mastra/mysql`
|
|
83
|
-
| MongoDB | [`@mastra/mongodb`](https://mastra.ai/
|
|
84
|
-
| Spanner | [`@mastra/spanner`](https://mastra.ai/
|
|
85
|
-
| Convex | [`@mastra/convex`](https://mastra.ai/
|
|
80
|
+
| Backend | Package |
|
|
81
|
+
| ---------- | --------------------------------------------------------------------- |
|
|
82
|
+
| PostgreSQL | [`@mastra/pg`](https://mastra.ai/integrations/databases/postgresql) |
|
|
83
|
+
| LibSQL | [`@mastra/libsql`](https://mastra.ai/integrations/databases/libsql) |
|
|
84
|
+
| MySQL | `@mastra/mysql` |
|
|
85
|
+
| MongoDB | [`@mastra/mongodb`](https://mastra.ai/integrations/databases/mongodb) |
|
|
86
|
+
| Spanner | [`@mastra/spanner`](https://mastra.ai/integrations/databases/spanner) |
|
|
87
|
+
| Convex | [`@mastra/convex`](https://mastra.ai/integrations/databases/convex) |
|
|
86
88
|
|
|
87
89
|
Other storage backends (Upstash, DynamoDB, Cloudflare D1, ClickHouse, Redis) support workflows and some worker features, but are missing the `schedules` domain. They can still be used for orchestration and background task workers if you don't deploy the scheduler.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Dynamic workflow definition
|
|
4
4
|
|
|
5
|
-
> **Beta:**
|
|
5
|
+
> **Beta:** Breaking changes may occur without a major version bump until the API is stable.
|
|
6
6
|
|
|
7
7
|
A dynamic workflow definition is a JSON-compatible `DynamicWorkflowGraph` accepted by [`Mastra.addDynamicWorkflow()`](https://mastra.ai/reference/core/addDynamicWorkflow), the stored-workflow server routes, and the Client SDK workflows API.
|
|
8
8
|
|
|
@@ -132,6 +132,8 @@ Tool entries accept the same optional `description` and `options` fields as agen
|
|
|
132
132
|
|
|
133
133
|
A `mapping` entry reshapes data. Its `mapConfig` is a JSON string that encodes an object. Each key becomes a key in the step output, and each descriptor defines one source.
|
|
134
134
|
|
|
135
|
+
When you call [`Mastra.addDynamicWorkflow()`](https://mastra.ai/reference/core/addDynamicWorkflow) directly, `mapConfig` also accepts the object itself. Mastra encodes it to a JSON string before registering and storing the definition, so the persisted row is the same either way. A stored definition always carries the JSON string form.
|
|
136
|
+
|
|
135
137
|
| Descriptor | Description |
|
|
136
138
|
| -------------------------------------- | ----------------------------------------- |
|
|
137
139
|
| `{ "value": ... }` | A constant JSON value |
|
|
@@ -150,6 +150,7 @@ const result = await run.timeTravel({
|
|
|
150
150
|
- When re-executing a workflow, the workflow loads the existing snapshot from storage (if available)
|
|
151
151
|
- Step results before the target step are reconstructed from the snapshot or provided context
|
|
152
152
|
- Execution begins from the specified step with the provided or reconstructed input data
|
|
153
|
+
- If a step that precedes the target in the current workflow definition has no recorded entry in the snapshot (for example, the step was renamed since the run was recorded, or the run never reached it), `timeTravel` rejects with a descriptive error before anything executes and the stored snapshot is left unchanged
|
|
153
154
|
- The workflow continues to completion from that point forward
|
|
154
155
|
- Time travel can be used on workflows that haven't been run yet by providing custom context or input data for the step to start from.
|
|
155
156
|
|
|
@@ -127,6 +127,24 @@ export const testWorkflow = createWorkflow({
|
|
|
127
127
|
|
|
128
128
|
**options.pruneSnapshot** (`(params: { snapshot: WorkflowRunState; workflowStatus: WorkflowRunStatus }) => WorkflowRunState`): Optional hook to transform the workflow snapshot immediately before it is persisted. Must return JSON-serializable data and preserve everything the workflow needs to resume (suspended step suspendPayloads, suspendedPaths, executionPath, etc.). Used internally by agent runs to keep snapshots minimal; user workflows persist full snapshots by default.
|
|
129
129
|
|
|
130
|
+
**options.onStart** (`(info: WorkflowStartCallbackInfo) => void | Promise<void>`): Callback awaited before a run starts executing, and before any step runs. Fires only on initial start, not on resume, restart, or time travel. Unlike onFinish and onError, errors thrown here are propagated: they reject the start() or stream() call and the run never executes, so this can be used as a pre-flight gate such as a quota check. The run record created by createRun() stays at status pending.
|
|
131
|
+
|
|
132
|
+
**options.onStart.runId** (`string`): The workflow run ID
|
|
133
|
+
|
|
134
|
+
**options.onStart.workflowId** (`string`): The workflow identifier
|
|
135
|
+
|
|
136
|
+
**options.onStart.resourceId** (`string`): Resource or user identifier for multi-tenant scenarios
|
|
137
|
+
|
|
138
|
+
**options.onStart.getInitData** (`() => any`): Returns the initial workflow input data
|
|
139
|
+
|
|
140
|
+
**options.onStart.state** (`Record<string, any>`): The initial workflow state
|
|
141
|
+
|
|
142
|
+
**options.onStart.requestContext** (`RequestContext`): The request context for the run
|
|
143
|
+
|
|
144
|
+
**options.onStart.mastra** (`Mastra`): The Mastra instance, when the workflow is registered
|
|
145
|
+
|
|
146
|
+
**options.onStart.logger** (`IMastraLogger`): The Mastra logger
|
|
147
|
+
|
|
130
148
|
**options.onFinish** (`(result: WorkflowFinishCallbackResult) => void | Promise<void>`): Callback invoked when workflow completes with any status (success, failed, suspended, tripwire). Receives the workflow result including status, output, error, and step results. Errors thrown in this callback are caught and logged, not propagated.
|
|
131
149
|
|
|
132
150
|
**options.onFinish.status** (`WorkflowRunStatus`): The workflow status: 'success', 'failed', 'suspended', or 'tripwire'
|