@mastra/mcp-docs-server 0.13.39 → 1.0.0-beta.0
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/organized/changelogs/%40internal%2Fai-sdk-v4.md +1 -0
- package/.docs/organized/changelogs/%40internal%2Fchangeset-cli.md +0 -10
- package/.docs/organized/changelogs/%40internal%2Fexternal-types.md +0 -10
- package/.docs/organized/changelogs/%40internal%2Fstorage-test-utils.md +36 -36
- package/.docs/organized/changelogs/%40internal%2Ftypes-builder.md +0 -10
- package/.docs/organized/changelogs/%40mastra%2Fagent-builder.md +70 -70
- package/.docs/organized/changelogs/%40mastra%2Fai-sdk.md +40 -40
- package/.docs/organized/changelogs/%40mastra%2Fastra.md +19 -19
- package/.docs/organized/changelogs/%40mastra%2Fauth.md +4 -14
- package/.docs/organized/changelogs/%40mastra%2Fchroma.md +18 -18
- package/.docs/organized/changelogs/%40mastra%2Fclickhouse.md +199 -199
- package/.docs/organized/changelogs/%40mastra%2Fclient-js.md +223 -223
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare-d1.md +190 -190
- package/.docs/organized/changelogs/%40mastra%2Fcloudflare.md +199 -199
- package/.docs/organized/changelogs/%40mastra%2Fcodemod.md +7 -0
- package/.docs/organized/changelogs/%40mastra%2Fcore.md +214 -214
- package/.docs/organized/changelogs/%40mastra%2Fcouchbase.md +16 -16
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloud.md +74 -74
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-cloudflare.md +67 -67
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-netlify.md +70 -70
- package/.docs/organized/changelogs/%40mastra%2Fdeployer-vercel.md +67 -67
- package/.docs/organized/changelogs/%40mastra%2Fdeployer.md +209 -209
- package/.docs/organized/changelogs/%40mastra%2Fdynamodb.md +191 -191
- package/.docs/organized/changelogs/%40mastra%2Fevals.md +34 -34
- package/.docs/organized/changelogs/%40mastra%2Ffastembed.md +5 -13
- package/.docs/organized/changelogs/%40mastra%2Flance.md +182 -182
- package/.docs/organized/changelogs/%40mastra%2Flibsql.md +199 -199
- package/.docs/organized/changelogs/%40mastra%2Floggers.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fmcp-docs-server.md +58 -58
- package/.docs/organized/changelogs/%40mastra%2Fmcp-registry-registry.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fmcp.md +65 -65
- package/.docs/organized/changelogs/%40mastra%2Fmemory.md +228 -228
- package/.docs/organized/changelogs/%40mastra%2Fmongodb.md +199 -199
- package/.docs/organized/changelogs/%40mastra%2Fmssql.md +206 -206
- package/.docs/organized/changelogs/%40mastra%2Fopensearch.md +19 -19
- package/.docs/organized/changelogs/%40mastra%2Fpg.md +197 -197
- package/.docs/organized/changelogs/%40mastra%2Fpinecone.md +16 -16
- package/.docs/organized/changelogs/%40mastra%2Fplayground-ui.md +217 -217
- package/.docs/organized/changelogs/%40mastra%2Fqdrant.md +16 -16
- package/.docs/organized/changelogs/%40mastra%2Frag.md +61 -61
- package/.docs/organized/changelogs/%40mastra%2Freact.md +70 -70
- package/.docs/organized/changelogs/%40mastra%2Fs3vectors.md +9 -17
- package/.docs/organized/changelogs/%40mastra%2Fschema-compat.md +6 -30
- package/.docs/organized/changelogs/%40mastra%2Fserver.md +206 -206
- package/.docs/organized/changelogs/%40mastra%2Fturbopuffer.md +16 -16
- package/.docs/organized/changelogs/%40mastra%2Fupstash.md +190 -190
- package/.docs/organized/changelogs/%40mastra%2Fvectorize.md +18 -18
- package/.docs/organized/changelogs/%40mastra%2Fvoice-azure.md +21 -21
- package/.docs/organized/changelogs/%40mastra%2Fvoice-cloudflare.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-deepgram.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-elevenlabs.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-gladia.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google-gemini-live.md +56 -56
- package/.docs/organized/changelogs/%40mastra%2Fvoice-google.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-murf.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai-realtime.md +56 -56
- package/.docs/organized/changelogs/%40mastra%2Fvoice-openai.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-playai.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-sarvam.md +20 -20
- package/.docs/organized/changelogs/%40mastra%2Fvoice-speechify.md +20 -20
- package/.docs/organized/changelogs/create-mastra.md +33 -33
- package/.docs/organized/changelogs/mastra.md +86 -86
- package/.docs/organized/code-examples/a2a.md +4 -2
- package/.docs/organized/code-examples/agui.md +12 -9
- package/.docs/organized/code-examples/ai-sdk-useChat.md +12 -18
- package/.docs/organized/code-examples/ai-sdk-v5.md +4 -2
- package/.docs/organized/code-examples/bird-checker-with-express.md +5 -4
- package/.docs/organized/code-examples/bird-checker-with-nextjs-and-eval.md +4 -3
- package/.docs/organized/code-examples/bird-checker-with-nextjs.md +4 -3
- package/.docs/organized/code-examples/client-side-tools.md +1 -0
- package/.docs/organized/code-examples/crypto-chatbot.md +1 -1
- package/.docs/organized/code-examples/experimental-auth-weather-agent.md +8 -177
- package/.docs/organized/code-examples/fireworks-r1.md +2 -2
- package/.docs/organized/code-examples/heads-up-game.md +10 -7
- package/.docs/organized/code-examples/mcp-configuration.md +5 -3
- package/.docs/organized/code-examples/mcp-registry-registry.md +3 -2
- package/.docs/organized/code-examples/memory-per-resource-example.md +4 -2
- package/.docs/organized/code-examples/memory-todo-agent.md +1 -0
- package/.docs/organized/code-examples/memory-with-context.md +2 -1
- package/.docs/organized/code-examples/memory-with-libsql.md +4 -2
- package/.docs/organized/code-examples/memory-with-mongodb.md +4 -2
- package/.docs/organized/code-examples/memory-with-pg.md +4 -2
- package/.docs/organized/code-examples/memory-with-processors.md +13 -8
- package/.docs/organized/code-examples/memory-with-upstash.md +5 -3
- package/.docs/organized/code-examples/openapi-spec-writer.md +32 -41
- package/.docs/organized/code-examples/quick-start.md +5 -32
- package/.docs/organized/code-examples/stock-price-tool.md +6 -5
- package/.docs/organized/code-examples/weather-agent.md +21 -16
- package/.docs/organized/code-examples/workflow-ai-recruiter.md +3 -2
- package/.docs/organized/code-examples/workflow-with-inline-steps.md +9 -12
- package/.docs/organized/code-examples/workflow-with-memory.md +16 -15
- package/.docs/organized/code-examples/workflow-with-separate-steps.md +2 -2
- package/.docs/organized/code-examples/workflow-with-suspend-resume.md +3 -2
- package/.docs/raw/agents/adding-voice.mdx +27 -22
- package/.docs/raw/agents/agent-memory.mdx +23 -15
- package/.docs/raw/agents/guardrails.mdx +33 -12
- package/.docs/raw/agents/networks.mdx +8 -4
- package/.docs/raw/agents/overview.mdx +21 -15
- package/.docs/raw/agents/using-tools.mdx +11 -8
- package/.docs/raw/auth/auth0.mdx +8 -8
- package/.docs/raw/auth/clerk.mdx +6 -6
- package/.docs/raw/auth/firebase.mdx +8 -8
- package/.docs/raw/auth/index.mdx +6 -6
- package/.docs/raw/auth/jwt.mdx +6 -6
- package/.docs/raw/auth/supabase.mdx +7 -7
- package/.docs/raw/auth/workos.mdx +8 -8
- package/.docs/raw/community/contributing-templates.mdx +3 -3
- package/.docs/raw/community/discord.mdx +1 -1
- package/.docs/raw/course/01-first-agent/08-exporting-your-agent.md +2 -1
- package/.docs/raw/course/01-first-agent/16-adding-memory-to-agent.md +2 -1
- package/.docs/raw/course/02-agent-tools-mcp/31-enhancing-memory-configuration.md +2 -0
- package/.docs/raw/course/03-agent-memory/04-creating-basic-memory-agent.md +1 -0
- package/.docs/raw/course/03-agent-memory/10-storage-configuration.md +2 -3
- package/.docs/raw/course/03-agent-memory/13-vector-store-configuration.md +2 -0
- package/.docs/raw/course/03-agent-memory/16-configuring-semantic-recall.md +2 -0
- package/.docs/raw/course/03-agent-memory/18-advanced-configuration-semantic-recall.md +1 -0
- package/.docs/raw/course/03-agent-memory/21-configuring-working-memory.md +2 -0
- package/.docs/raw/course/03-agent-memory/22-custom-working-memory-templates.md +1 -0
- package/.docs/raw/course/03-agent-memory/25-combining-memory-features.md +1 -0
- package/.docs/raw/course/03-agent-memory/27-creating-learning-assistant.md +1 -0
- package/.docs/raw/course/04-workflows/08-running-workflows-programmatically.md +2 -2
- package/.docs/raw/deployment/cloud-providers/amazon-ec2.mdx +5 -5
- package/.docs/raw/deployment/cloud-providers/aws-lambda.mdx +7 -5
- package/.docs/raw/deployment/cloud-providers/azure-app-services.mdx +3 -3
- package/.docs/raw/deployment/cloud-providers/digital-ocean.mdx +4 -4
- package/.docs/raw/deployment/cloud-providers/index.mdx +11 -8
- package/.docs/raw/deployment/monorepo.mdx +2 -2
- package/.docs/raw/deployment/overview.mdx +2 -2
- package/.docs/raw/deployment/server-deployment.mdx +2 -10
- package/.docs/raw/deployment/serverless-platforms/cloudflare-deployer.mdx +4 -4
- package/.docs/raw/deployment/serverless-platforms/index.mdx +10 -7
- package/.docs/raw/deployment/serverless-platforms/netlify-deployer.mdx +4 -4
- package/.docs/raw/deployment/serverless-platforms/vercel-deployer.mdx +4 -4
- package/.docs/raw/deployment/web-framework.mdx +8 -8
- package/.docs/raw/{scorers → evals}/custom-scorers.mdx +6 -6
- package/.docs/raw/evals/off-the-shelf-scorers.mdx +50 -0
- package/.docs/raw/{scorers → evals}/overview.mdx +8 -8
- package/.docs/raw/evals/running-in-ci.mdx +113 -0
- package/.docs/raw/frameworks/agentic-uis/ai-sdk.mdx +22 -21
- package/.docs/raw/frameworks/agentic-uis/copilotkit.mdx +8 -8
- package/.docs/raw/frameworks/agentic-uis/openrouter.mdx +3 -0
- package/.docs/raw/frameworks/servers/express.mdx +10 -9
- package/.docs/raw/frameworks/web-frameworks/astro.mdx +6 -6
- package/.docs/raw/frameworks/web-frameworks/next-js.mdx +3 -3
- package/.docs/raw/frameworks/web-frameworks/sveltekit.mdx +4 -4
- package/.docs/raw/frameworks/web-frameworks/vite-react.mdx +2 -2
- package/.docs/raw/getting-started/installation.mdx +13 -12
- package/.docs/raw/getting-started/mcp-docs-server.mdx +1 -1
- package/.docs/raw/getting-started/project-structure.mdx +4 -4
- package/.docs/raw/getting-started/studio.mdx +8 -8
- package/.docs/raw/getting-started/templates.mdx +1 -1
- package/.docs/raw/guides/guide/ai-recruiter.mdx +264 -0
- package/.docs/raw/guides/guide/chef-michel.mdx +271 -0
- package/.docs/raw/guides/guide/notes-mcp-server.mdx +450 -0
- package/.docs/raw/guides/guide/research-assistant.mdx +389 -0
- package/.docs/raw/guides/guide/stock-agent.mdx +185 -0
- package/.docs/raw/guides/guide/web-search.mdx +291 -0
- package/.docs/raw/guides/index.mdx +43 -0
- package/.docs/raw/guides/migrations/agentnetwork.mdx +114 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/_template.mdx +50 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/agent.mdx +265 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/cli.mdx +48 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/client.mdx +153 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/evals.mdx +230 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/mastra.mdx +171 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/mcp.mdx +114 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/memory.mdx +241 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/overview.mdx +83 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/processors.mdx +62 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/storage.mdx +270 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/tools.mdx +115 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/tracing.mdx +280 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/vectors.mdx +23 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/voice.mdx +39 -0
- package/.docs/raw/guides/migrations/upgrade-to-v1/workflows.mdx +178 -0
- package/.docs/raw/guides/migrations/vnext-to-standard-apis.mdx +367 -0
- package/.docs/raw/index.mdx +9 -9
- package/.docs/raw/{observability/logging.mdx → logging.mdx} +4 -4
- package/.docs/raw/mastra-cloud/dashboard.mdx +2 -2
- package/.docs/raw/mastra-cloud/observability.mdx +6 -6
- package/.docs/raw/mastra-cloud/overview.mdx +2 -2
- package/.docs/raw/mastra-cloud/setting-up.mdx +4 -4
- package/.docs/raw/memory/conversation-history.mdx +1 -0
- package/.docs/raw/memory/memory-processors.mdx +4 -3
- package/.docs/raw/memory/overview.mdx +9 -5
- package/.docs/raw/memory/semantic-recall.mdx +12 -7
- package/.docs/raw/memory/storage/memory-with-libsql.mdx +10 -5
- package/.docs/raw/memory/storage/memory-with-pg.mdx +9 -4
- package/.docs/raw/memory/storage/memory-with-upstash.mdx +9 -4
- package/.docs/raw/memory/threads-and-resources.mdx +11 -13
- package/.docs/raw/memory/working-memory.mdx +30 -14
- package/.docs/raw/observability/overview.mdx +13 -30
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/arize.mdx +10 -18
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/braintrust.mdx +7 -16
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/cloud.mdx +11 -17
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/default.mdx +16 -20
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/langfuse.mdx +7 -16
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/langsmith.mdx +7 -16
- package/.docs/raw/observability/{ai-tracing → tracing}/exporters/otel.mdx +9 -18
- package/.docs/raw/observability/{ai-tracing → tracing}/overview.mdx +107 -142
- package/.docs/raw/observability/{ai-tracing → tracing}/processors/sensitive-data-filter.mdx +14 -13
- package/.docs/raw/rag/chunking-and-embedding.mdx +5 -5
- package/.docs/raw/rag/overview.mdx +3 -13
- package/.docs/raw/rag/retrieval.mdx +24 -12
- package/.docs/raw/rag/vector-databases.mdx +7 -1
- package/.docs/raw/reference/agents/agent.mdx +33 -28
- package/.docs/raw/reference/agents/generate.mdx +10 -10
- package/.docs/raw/reference/agents/generateLegacy.mdx +8 -8
- package/.docs/raw/reference/agents/getDefaultGenerateOptions.mdx +21 -15
- package/.docs/raw/reference/agents/getDefaultOptions.mdx +69 -0
- package/.docs/raw/reference/agents/getDefaultStreamOptions.mdx +22 -16
- package/.docs/raw/reference/agents/getDescription.mdx +1 -1
- package/.docs/raw/reference/agents/getInstructions.mdx +8 -8
- package/.docs/raw/reference/agents/getLLM.mdx +9 -9
- package/.docs/raw/reference/agents/getMemory.mdx +9 -9
- package/.docs/raw/reference/agents/getModel.mdx +10 -10
- package/.docs/raw/reference/agents/getVoice.mdx +8 -8
- package/.docs/raw/reference/agents/listAgents.mdx +9 -9
- package/.docs/raw/reference/agents/listScorers.mdx +7 -7
- package/.docs/raw/reference/agents/listTools.mdx +7 -7
- package/.docs/raw/reference/agents/listWorkflows.mdx +7 -7
- package/.docs/raw/reference/agents/network.mdx +11 -10
- package/.docs/raw/reference/auth/auth0.mdx +4 -4
- package/.docs/raw/reference/auth/clerk.mdx +4 -4
- package/.docs/raw/reference/auth/firebase.mdx +6 -6
- package/.docs/raw/reference/auth/jwt.mdx +4 -4
- package/.docs/raw/reference/auth/supabase.mdx +4 -4
- package/.docs/raw/reference/auth/workos.mdx +4 -4
- package/.docs/raw/reference/cli/mastra.mdx +7 -7
- package/.docs/raw/reference/client-js/agents.mdx +6 -2
- package/.docs/raw/reference/client-js/mastra-client.mdx +7 -7
- package/.docs/raw/reference/client-js/memory.mdx +24 -16
- package/.docs/raw/reference/client-js/observability.mdx +11 -11
- package/.docs/raw/reference/client-js/workflows.mdx +6 -34
- package/.docs/raw/reference/core/getAgent.mdx +1 -1
- package/.docs/raw/reference/core/getAgentById.mdx +1 -1
- package/.docs/raw/reference/core/getDeployer.mdx +2 -2
- package/.docs/raw/reference/core/getLogger.mdx +2 -2
- package/.docs/raw/reference/core/getMCPServer.mdx +31 -15
- package/.docs/raw/reference/core/getMCPServerById.mdx +81 -0
- package/.docs/raw/reference/core/getScorer.mdx +3 -3
- package/.docs/raw/reference/core/getScorerById.mdx +79 -0
- package/.docs/raw/reference/core/getServer.mdx +2 -2
- package/.docs/raw/reference/core/getStorage.mdx +2 -2
- package/.docs/raw/reference/core/getTelemetry.mdx +2 -2
- package/.docs/raw/reference/core/getVector.mdx +2 -2
- package/.docs/raw/reference/core/getWorkflow.mdx +1 -1
- package/.docs/raw/reference/core/listAgents.mdx +1 -1
- package/.docs/raw/reference/core/listLogs.mdx +2 -2
- package/.docs/raw/reference/core/listLogsByRunId.mdx +2 -2
- package/.docs/raw/reference/core/listMCPServers.mdx +65 -0
- package/.docs/raw/reference/core/listScorers.mdx +3 -3
- package/.docs/raw/reference/core/listVectors.mdx +36 -0
- package/.docs/raw/reference/core/listWorkflows.mdx +6 -6
- package/.docs/raw/reference/core/mastra-class.mdx +3 -2
- package/.docs/raw/reference/core/setLogger.mdx +2 -2
- package/.docs/raw/reference/core/setStorage.mdx +3 -2
- package/.docs/raw/reference/core/setTelemetry.mdx +2 -2
- package/.docs/raw/reference/deployer/cloudflare.mdx +2 -2
- package/.docs/raw/reference/deployer/deployer.mdx +0 -6
- package/.docs/raw/reference/deployer/netlify.mdx +2 -2
- package/.docs/raw/reference/deployer/vercel.mdx +3 -3
- package/.docs/raw/reference/evals/answer-relevancy.mdx +164 -126
- package/.docs/raw/reference/{scorers → evals}/answer-similarity.mdx +27 -27
- package/.docs/raw/reference/evals/bias.mdx +149 -115
- package/.docs/raw/reference/evals/completeness.mdx +148 -117
- package/.docs/raw/reference/evals/content-similarity.mdx +126 -113
- package/.docs/raw/reference/evals/context-precision.mdx +290 -133
- package/.docs/raw/reference/{scorers → evals}/context-relevance.mdx +6 -6
- package/.docs/raw/reference/{scorers → evals}/create-scorer.mdx +11 -11
- package/.docs/raw/reference/evals/faithfulness.mdx +163 -121
- package/.docs/raw/reference/evals/hallucination.mdx +159 -132
- package/.docs/raw/reference/evals/keyword-coverage.mdx +169 -125
- package/.docs/raw/reference/{scorers → evals}/mastra-scorer.mdx +5 -5
- package/.docs/raw/reference/{scorers → evals}/noise-sensitivity.mdx +9 -9
- package/.docs/raw/reference/evals/prompt-alignment.mdx +604 -182
- package/.docs/raw/reference/{scorers/run-experiment.mdx → evals/run-evals.mdx} +17 -18
- package/.docs/raw/reference/evals/textual-difference.mdx +149 -117
- package/.docs/raw/reference/evals/tone-consistency.mdx +149 -125
- package/.docs/raw/reference/{scorers → evals}/tool-call-accuracy.mdx +8 -6
- package/.docs/raw/reference/evals/toxicity.mdx +152 -96
- package/.docs/raw/reference/{observability/logging → logging}/pino-logger.mdx +2 -2
- package/.docs/raw/reference/memory/createThread.mdx +5 -5
- package/.docs/raw/reference/memory/deleteMessages.mdx +7 -7
- package/.docs/raw/reference/memory/getThreadById.mdx +4 -4
- package/.docs/raw/reference/memory/listThreadsByResourceId.mdx +110 -0
- package/.docs/raw/reference/memory/memory-class.mdx +13 -9
- package/.docs/raw/reference/memory/query.mdx +58 -57
- package/.docs/raw/reference/memory/recall.mdx +185 -0
- package/.docs/raw/reference/observability/tracing/configuration.mdx +245 -0
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/arize.mdx +13 -13
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/braintrust.mdx +11 -8
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/cloud-exporter.mdx +21 -19
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/console-exporter.mdx +49 -17
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/default-exporter.mdx +42 -41
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/langfuse.mdx +10 -7
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/langsmith.mdx +10 -7
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/exporters/otel.mdx +5 -5
- package/.docs/raw/reference/observability/tracing/instances.mdx +168 -0
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/interfaces.mdx +115 -89
- package/.docs/raw/reference/observability/{ai-tracing → tracing}/processors/sensitive-data-filter.mdx +3 -3
- package/.docs/raw/reference/observability/{ai-tracing/span.mdx → tracing/spans.mdx} +59 -41
- package/.docs/raw/reference/processors/batch-parts-processor.mdx +1 -1
- package/.docs/raw/reference/processors/language-detector.mdx +1 -1
- package/.docs/raw/reference/processors/moderation-processor.mdx +1 -1
- package/.docs/raw/reference/processors/pii-detector.mdx +1 -1
- package/.docs/raw/reference/processors/prompt-injection-detector.mdx +1 -1
- package/.docs/raw/reference/processors/system-prompt-scrubber.mdx +1 -1
- package/.docs/raw/reference/processors/token-limiter-processor.mdx +1 -1
- package/.docs/raw/reference/processors/unicode-normalizer.mdx +1 -1
- package/.docs/raw/reference/rag/chunk.mdx +1 -8
- package/.docs/raw/reference/rag/database-config.mdx +7 -7
- package/.docs/raw/reference/rag/metadata-filters.mdx +14 -11
- package/.docs/raw/reference/storage/libsql.mdx +2 -0
- package/.docs/raw/reference/storage/mssql.mdx +5 -0
- package/.docs/raw/reference/storage/postgresql.mdx +6 -0
- package/.docs/raw/reference/storage/upstash.mdx +1 -0
- package/.docs/raw/reference/streaming/agents/stream.mdx +12 -12
- package/.docs/raw/reference/streaming/agents/streamLegacy.mdx +8 -8
- package/.docs/raw/reference/streaming/workflows/observeStream.mdx +3 -3
- package/.docs/raw/reference/streaming/workflows/observeStreamVNext.mdx +3 -3
- package/.docs/raw/reference/streaming/workflows/resumeStreamVNext.mdx +6 -6
- package/.docs/raw/reference/streaming/workflows/stream.mdx +10 -10
- package/.docs/raw/reference/streaming/workflows/streamVNext.mdx +11 -11
- package/.docs/raw/reference/templates/overview.mdx +2 -2
- package/.docs/raw/reference/tools/create-tool.mdx +52 -35
- package/.docs/raw/reference/tools/graph-rag-tool.mdx +15 -15
- package/.docs/raw/reference/tools/mcp-client.mdx +1 -1
- package/.docs/raw/reference/tools/mcp-server.mdx +119 -35
- package/.docs/raw/reference/tools/vector-query-tool.mdx +27 -26
- package/.docs/raw/reference/vectors/libsql.mdx +1 -0
- package/.docs/raw/reference/vectors/pg.mdx +3 -0
- package/.docs/raw/reference/vectors/upstash.mdx +1 -0
- package/.docs/raw/reference/voice/google-gemini-live.mdx +1 -1
- package/.docs/raw/reference/voice/voice.addTools.mdx +3 -3
- package/.docs/raw/reference/workflows/run-methods/cancel.mdx +4 -4
- package/.docs/raw/reference/workflows/run-methods/resume.mdx +14 -14
- package/.docs/raw/reference/workflows/run-methods/start.mdx +17 -17
- package/.docs/raw/reference/workflows/run.mdx +1 -8
- package/.docs/raw/reference/workflows/step.mdx +5 -5
- package/.docs/raw/reference/workflows/workflow-methods/branch.mdx +2 -2
- package/.docs/raw/reference/workflows/workflow-methods/commit.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/create-run.mdx +7 -13
- package/.docs/raw/reference/workflows/workflow-methods/dountil.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/dowhile.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/foreach.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/map.mdx +5 -0
- package/.docs/raw/reference/workflows/workflow-methods/parallel.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/sendEvent.mdx +2 -2
- package/.docs/raw/reference/workflows/workflow-methods/sleep.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/sleepUntil.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/then.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow-methods/waitForEvent.mdx +1 -1
- package/.docs/raw/reference/workflows/workflow.mdx +1 -1
- package/.docs/raw/server-db/custom-api-routes.mdx +2 -2
- package/.docs/raw/server-db/mastra-client.mdx +19 -18
- package/.docs/raw/server-db/middleware.mdx +7 -7
- package/.docs/raw/server-db/production-server.mdx +4 -4
- package/.docs/raw/server-db/{runtime-context.mdx → request-context.mdx} +46 -45
- package/.docs/raw/server-db/storage.mdx +29 -21
- package/.docs/raw/streaming/events.mdx +3 -3
- package/.docs/raw/streaming/overview.mdx +5 -5
- package/.docs/raw/streaming/tool-streaming.mdx +18 -17
- package/.docs/raw/streaming/workflow-streaming.mdx +1 -1
- package/.docs/raw/tools-mcp/advanced-usage.mdx +5 -4
- package/.docs/raw/tools-mcp/mcp-overview.mdx +32 -19
- package/.docs/raw/tools-mcp/overview.mdx +11 -11
- package/.docs/raw/voice/overview.mdx +63 -43
- package/.docs/raw/voice/speech-to-speech.mdx +5 -3
- package/.docs/raw/voice/speech-to-text.mdx +9 -8
- package/.docs/raw/voice/text-to-speech.mdx +12 -11
- package/.docs/raw/workflows/agents-and-tools.mdx +9 -5
- package/.docs/raw/workflows/control-flow.mdx +3 -3
- package/.docs/raw/workflows/error-handling.mdx +2 -21
- package/.docs/raw/workflows/human-in-the-loop.mdx +7 -4
- package/.docs/raw/workflows/inngest-workflow.mdx +2 -2
- package/.docs/raw/workflows/input-data-mapping.mdx +107 -0
- package/.docs/raw/workflows/overview.mdx +17 -16
- package/.docs/raw/workflows/snapshots.mdx +13 -11
- package/.docs/raw/workflows/suspend-and-resume.mdx +23 -15
- package/CHANGELOG.md +52 -57
- package/README.md +11 -2
- package/dist/{chunk-TUAHUTTB.js → chunk-5NJC7NRO.js} +3 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/prepare-docs/copy-raw.d.ts.map +1 -1
- package/dist/prepare-docs/prepare.js +1 -1
- package/dist/prompts/migration.d.ts +6 -0
- package/dist/prompts/migration.d.ts.map +1 -0
- package/dist/stdio.js +402 -30
- package/dist/tools/migration.d.ts +40 -0
- package/dist/tools/migration.d.ts.map +1 -0
- package/package.json +8 -12
- package/.docs/organized/changelogs/%40mastra%2Fcloud.md +0 -302
- package/.docs/raw/observability/nextjs-tracing.mdx +0 -109
- package/.docs/raw/observability/otel-tracing.mdx +0 -189
- package/.docs/raw/reference/agents/getScorers.mdx +0 -69
- package/.docs/raw/reference/agents/getTools.mdx +0 -69
- package/.docs/raw/reference/agents/getWorkflows.mdx +0 -69
- package/.docs/raw/reference/client-js/workflows-legacy.mdx +0 -143
- package/.docs/raw/reference/core/getAgents.mdx +0 -35
- package/.docs/raw/reference/core/getLogs.mdx +0 -96
- package/.docs/raw/reference/core/getLogsByRunId.mdx +0 -87
- package/.docs/raw/reference/core/getMCPServers.mdx +0 -36
- package/.docs/raw/reference/core/getMemory.mdx +0 -36
- package/.docs/raw/reference/core/getScorerByName.mdx +0 -78
- package/.docs/raw/reference/core/getScorers.mdx +0 -43
- package/.docs/raw/reference/core/getVectors.mdx +0 -36
- package/.docs/raw/reference/core/getWorkflows.mdx +0 -45
- package/.docs/raw/reference/evals/context-position.mdx +0 -197
- package/.docs/raw/reference/evals/context-relevancy.mdx +0 -196
- package/.docs/raw/reference/evals/contextual-recall.mdx +0 -196
- package/.docs/raw/reference/evals/summarization.mdx +0 -212
- package/.docs/raw/reference/legacyWorkflows/after.mdx +0 -89
- package/.docs/raw/reference/legacyWorkflows/afterEvent.mdx +0 -79
- package/.docs/raw/reference/legacyWorkflows/commit.mdx +0 -33
- package/.docs/raw/reference/legacyWorkflows/createRun.mdx +0 -76
- package/.docs/raw/reference/legacyWorkflows/else.mdx +0 -68
- package/.docs/raw/reference/legacyWorkflows/events.mdx +0 -305
- package/.docs/raw/reference/legacyWorkflows/execute.mdx +0 -110
- package/.docs/raw/reference/legacyWorkflows/if.mdx +0 -108
- package/.docs/raw/reference/legacyWorkflows/resume.mdx +0 -158
- package/.docs/raw/reference/legacyWorkflows/resumeWithEvent.mdx +0 -133
- package/.docs/raw/reference/legacyWorkflows/snapshots.mdx +0 -207
- package/.docs/raw/reference/legacyWorkflows/start.mdx +0 -87
- package/.docs/raw/reference/legacyWorkflows/step-class.mdx +0 -100
- package/.docs/raw/reference/legacyWorkflows/step-condition.mdx +0 -137
- package/.docs/raw/reference/legacyWorkflows/step-function.mdx +0 -93
- package/.docs/raw/reference/legacyWorkflows/step-options.mdx +0 -69
- package/.docs/raw/reference/legacyWorkflows/step-retries.mdx +0 -196
- package/.docs/raw/reference/legacyWorkflows/suspend.mdx +0 -70
- package/.docs/raw/reference/legacyWorkflows/then.mdx +0 -72
- package/.docs/raw/reference/legacyWorkflows/until.mdx +0 -168
- package/.docs/raw/reference/legacyWorkflows/watch.mdx +0 -124
- package/.docs/raw/reference/legacyWorkflows/while.mdx +0 -168
- package/.docs/raw/reference/legacyWorkflows/workflow.mdx +0 -234
- package/.docs/raw/reference/memory/getThreadsByResourceId.mdx +0 -79
- package/.docs/raw/reference/memory/getThreadsByResourceIdPaginated.mdx +0 -110
- package/.docs/raw/reference/observability/ai-tracing/ai-tracing.mdx +0 -185
- package/.docs/raw/reference/observability/ai-tracing/configuration.mdx +0 -238
- package/.docs/raw/reference/observability/otel-tracing/otel-config.mdx +0 -117
- package/.docs/raw/reference/observability/otel-tracing/providers/arize-ax.mdx +0 -81
- package/.docs/raw/reference/observability/otel-tracing/providers/arize-phoenix.mdx +0 -121
- package/.docs/raw/reference/observability/otel-tracing/providers/braintrust.mdx +0 -40
- package/.docs/raw/reference/observability/otel-tracing/providers/dash0.mdx +0 -40
- package/.docs/raw/reference/observability/otel-tracing/providers/index.mdx +0 -20
- package/.docs/raw/reference/observability/otel-tracing/providers/keywordsai.mdx +0 -73
- package/.docs/raw/reference/observability/otel-tracing/providers/laminar.mdx +0 -41
- package/.docs/raw/reference/observability/otel-tracing/providers/langfuse.mdx +0 -84
- package/.docs/raw/reference/observability/otel-tracing/providers/langsmith.mdx +0 -48
- package/.docs/raw/reference/observability/otel-tracing/providers/langwatch.mdx +0 -43
- package/.docs/raw/reference/observability/otel-tracing/providers/new-relic.mdx +0 -40
- package/.docs/raw/reference/observability/otel-tracing/providers/signoz.mdx +0 -40
- package/.docs/raw/reference/observability/otel-tracing/providers/traceloop.mdx +0 -40
- package/.docs/raw/reference/scorers/answer-relevancy.mdx +0 -227
- package/.docs/raw/reference/scorers/bias.mdx +0 -228
- package/.docs/raw/reference/scorers/completeness.mdx +0 -214
- package/.docs/raw/reference/scorers/content-similarity.mdx +0 -197
- package/.docs/raw/reference/scorers/context-precision.mdx +0 -352
- package/.docs/raw/reference/scorers/faithfulness.mdx +0 -241
- package/.docs/raw/reference/scorers/hallucination.mdx +0 -252
- package/.docs/raw/reference/scorers/keyword-coverage.mdx +0 -229
- package/.docs/raw/reference/scorers/prompt-alignment.mdx +0 -668
- package/.docs/raw/reference/scorers/textual-difference.mdx +0 -203
- package/.docs/raw/reference/scorers/tone-consistency.mdx +0 -211
- package/.docs/raw/reference/scorers/toxicity.mdx +0 -228
- package/.docs/raw/reference/workflows/run-methods/watch.mdx +0 -73
- package/.docs/raw/scorers/evals-old-api/custom-eval.mdx +0 -24
- package/.docs/raw/scorers/evals-old-api/overview.mdx +0 -106
- package/.docs/raw/scorers/evals-old-api/running-in-ci.mdx +0 -85
- package/.docs/raw/scorers/evals-old-api/textual-evals.mdx +0 -58
- package/.docs/raw/scorers/off-the-shelf-scorers.mdx +0 -50
- package/.docs/raw/workflows-legacy/control-flow.mdx +0 -774
- package/.docs/raw/workflows-legacy/dynamic-workflows.mdx +0 -239
- package/.docs/raw/workflows-legacy/error-handling.mdx +0 -187
- package/.docs/raw/workflows-legacy/nested-workflows.mdx +0 -360
- package/.docs/raw/workflows-legacy/overview.mdx +0 -182
- package/.docs/raw/workflows-legacy/runtime-variables.mdx +0 -156
- package/.docs/raw/workflows-legacy/steps.mdx +0 -115
- package/.docs/raw/workflows-legacy/suspend-and-resume.mdx +0 -406
- package/.docs/raw/workflows-legacy/variables.mdx +0 -318
|
@@ -21,12 +21,13 @@
|
|
|
21
21
|
### mastra/index.ts
|
|
22
22
|
```typescript
|
|
23
23
|
import { openai } from '@ai-sdk/openai';
|
|
24
|
-
import { Mastra } from '@mastra/core';
|
|
24
|
+
import { Mastra } from '@mastra/core/mastra';
|
|
25
25
|
import { Agent } from '@mastra/core/agent';
|
|
26
26
|
import { Step, Workflow } from '@mastra/core/workflows';
|
|
27
27
|
import { z } from 'zod';
|
|
28
28
|
|
|
29
29
|
const recruiter = new Agent({
|
|
30
|
+
id: 'recruiter-agent',
|
|
30
31
|
name: 'Recruiter Agent',
|
|
31
32
|
instructions: `You are a recruiter.`,
|
|
32
33
|
model: openai('gpt-4o-mini'),
|
|
@@ -132,7 +133,7 @@ const mastra = new Mastra({
|
|
|
132
133
|
});
|
|
133
134
|
|
|
134
135
|
(async () => {
|
|
135
|
-
const run = await mastra.getWorkflow('candidateWorkflow').
|
|
136
|
+
const run = await mastra.getWorkflow('candidateWorkflow').createRun();
|
|
136
137
|
const { runId, start } = run;
|
|
137
138
|
|
|
138
139
|
console.log('Run', runId);
|
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
|
|
18
18
|
### mastra/index.ts
|
|
19
19
|
```typescript
|
|
20
|
-
import { Mastra } from '@mastra/core';
|
|
20
|
+
import { Mastra } from '@mastra/core/mastra';
|
|
21
21
|
|
|
22
22
|
import { myWorkflow } from './workflows';
|
|
23
23
|
|
|
@@ -51,8 +51,8 @@ myWorkflow
|
|
|
51
51
|
outputSchema: z.object({
|
|
52
52
|
doubledValue: z.number(),
|
|
53
53
|
}),
|
|
54
|
-
execute: async (
|
|
55
|
-
const doubledValue = context?.triggerData.inputValue * 2;
|
|
54
|
+
execute: async (inputData, context) => {
|
|
55
|
+
const doubledValue = context?.workflow?.state?.triggerData.inputValue * 2;
|
|
56
56
|
return { doubledValue };
|
|
57
57
|
},
|
|
58
58
|
}),
|
|
@@ -66,21 +66,18 @@ myWorkflow
|
|
|
66
66
|
outputSchema: z.object({
|
|
67
67
|
incrementedValue: z.number(),
|
|
68
68
|
}),
|
|
69
|
-
execute: async (
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
return { incrementedValue };
|
|
73
|
-
}
|
|
74
|
-
return { incrementedValue: 0 };
|
|
69
|
+
execute: async (inputData, context) => {
|
|
70
|
+
const incrementedValue = inputData.valueToIncrement + 1;
|
|
71
|
+
return { incrementedValue };
|
|
75
72
|
},
|
|
76
73
|
}),
|
|
77
74
|
)
|
|
78
75
|
.then(
|
|
79
76
|
new Step({
|
|
80
77
|
id: 'stepThree',
|
|
81
|
-
execute: async (
|
|
82
|
-
if (context?.resumeData?.confirm !== 'true') {
|
|
83
|
-
return suspend({
|
|
78
|
+
execute: async (inputData, context) => {
|
|
79
|
+
if (context?.workflow?.resumeData?.confirm !== 'true') {
|
|
80
|
+
return context?.workflow?.suspend({
|
|
84
81
|
message: 'Do you accept?',
|
|
85
82
|
});
|
|
86
83
|
}
|
|
@@ -30,7 +30,8 @@ const memory = new Memory({
|
|
|
30
30
|
});
|
|
31
31
|
|
|
32
32
|
export const catOne = new Agent({
|
|
33
|
-
|
|
33
|
+
id: 'cat-one',
|
|
34
|
+
name: 'Cat One',
|
|
34
35
|
memory,
|
|
35
36
|
instructions:
|
|
36
37
|
'You are a feline expert with comprehensive knowledge of all cat species, from domestic breeds to wild big cats. As a lifelong cat specialist, you understand their behavior, biology, social structures, and evolutionary history in great depth.',
|
|
@@ -41,7 +42,7 @@ export const catOne = new Agent({
|
|
|
41
42
|
|
|
42
43
|
### mastra/index.ts
|
|
43
44
|
```typescript
|
|
44
|
-
import { Mastra } from '@mastra/core';
|
|
45
|
+
import { Mastra } from '@mastra/core/mastra';
|
|
45
46
|
import { PinoLogger } from '@mastra/loggers';
|
|
46
47
|
|
|
47
48
|
import { catOne } from './agents/index';
|
|
@@ -103,8 +104,8 @@ const stepOne = new Step({
|
|
|
103
104
|
outputSchema: z.object({
|
|
104
105
|
doubledValue: z.number(),
|
|
105
106
|
}),
|
|
106
|
-
execute: async
|
|
107
|
-
const doubledValue =
|
|
107
|
+
execute: async inputData => {
|
|
108
|
+
const doubledValue = inputData.inputValue * 2;
|
|
108
109
|
return { doubledValue };
|
|
109
110
|
},
|
|
110
111
|
});
|
|
@@ -118,8 +119,8 @@ const stepTwo = new Step({
|
|
|
118
119
|
outputSchema: z.object({
|
|
119
120
|
incrementedValue: z.number(),
|
|
120
121
|
}),
|
|
121
|
-
execute: async
|
|
122
|
-
const incrementedValue =
|
|
122
|
+
execute: async inputData => {
|
|
123
|
+
const incrementedValue = inputData.valueToIncrement + 1;
|
|
123
124
|
return { incrementedValue };
|
|
124
125
|
},
|
|
125
126
|
});
|
|
@@ -133,8 +134,8 @@ const stepThree = new Step({
|
|
|
133
134
|
outputSchema: z.object({
|
|
134
135
|
squaredValue: z.number(),
|
|
135
136
|
}),
|
|
136
|
-
execute: async
|
|
137
|
-
const squaredValue =
|
|
137
|
+
execute: async inputData => {
|
|
138
|
+
const squaredValue = inputData.valueToSquare * inputData.valueToSquare;
|
|
138
139
|
return { squaredValue };
|
|
139
140
|
},
|
|
140
141
|
});
|
|
@@ -148,8 +149,8 @@ const stepFour = new Step({
|
|
|
148
149
|
outputSchema: z.object({
|
|
149
150
|
rootValue: z.number(),
|
|
150
151
|
}),
|
|
151
|
-
execute: async
|
|
152
|
-
return { rootValue: Math.sqrt(
|
|
152
|
+
execute: async inputData => {
|
|
153
|
+
return { rootValue: Math.sqrt(inputData.valueToRoot) };
|
|
153
154
|
},
|
|
154
155
|
});
|
|
155
156
|
|
|
@@ -162,8 +163,8 @@ const stepFive = new Step({
|
|
|
162
163
|
outputSchema: z.object({
|
|
163
164
|
tripledValue: z.number(),
|
|
164
165
|
}),
|
|
165
|
-
execute: async
|
|
166
|
-
const tripledValue =
|
|
166
|
+
execute: async inputData => {
|
|
167
|
+
const tripledValue = inputData.inputValue * 3;
|
|
167
168
|
return { tripledValue };
|
|
168
169
|
},
|
|
169
170
|
});
|
|
@@ -177,9 +178,9 @@ const stepSix = new Step({
|
|
|
177
178
|
outputSchema: z.object({
|
|
178
179
|
rawText: z.string(),
|
|
179
180
|
}),
|
|
180
|
-
execute: async
|
|
181
|
-
console.log(
|
|
182
|
-
return { rawText:
|
|
181
|
+
execute: async inputData => {
|
|
182
|
+
console.log(inputData.inputValue);
|
|
183
|
+
return { rawText: inputData.inputValue.toString() };
|
|
183
184
|
},
|
|
184
185
|
});
|
|
185
186
|
|
|
@@ -20,7 +20,7 @@
|
|
|
20
20
|
import { mastra } from './mastra';
|
|
21
21
|
|
|
22
22
|
async function main() {
|
|
23
|
-
const run = await mastra.getWorkflow('myWorkflow').
|
|
23
|
+
const run = await mastra.getWorkflow('myWorkflow').createRun();
|
|
24
24
|
try {
|
|
25
25
|
const res = await run.start({
|
|
26
26
|
inputData: {
|
|
@@ -46,7 +46,7 @@ main();
|
|
|
46
46
|
|
|
47
47
|
### mastra/index.ts
|
|
48
48
|
```typescript
|
|
49
|
-
import { Mastra } from '@mastra/core';
|
|
49
|
+
import { Mastra } from '@mastra/core/mastra';
|
|
50
50
|
|
|
51
51
|
import { myWorkflow } from './workflows';
|
|
52
52
|
|
|
@@ -24,7 +24,7 @@ async function main() {
|
|
|
24
24
|
console.log('🚀 Starting workflow with suspend/resume example...\n');
|
|
25
25
|
|
|
26
26
|
const myWorkflow = mastra.getWorkflow('myWorkflow');
|
|
27
|
-
const run = await myWorkflow.
|
|
27
|
+
const run = await myWorkflow.createRun();
|
|
28
28
|
|
|
29
29
|
try {
|
|
30
30
|
// Start the workflow - it will suspend at stepTwo
|
|
@@ -65,7 +65,7 @@ main();
|
|
|
65
65
|
|
|
66
66
|
### mastra/index.ts
|
|
67
67
|
```typescript
|
|
68
|
-
import { Mastra } from '@mastra/core';
|
|
68
|
+
import { Mastra } from '@mastra/core/mastra';
|
|
69
69
|
import { LibSQLStore } from '@mastra/libsql';
|
|
70
70
|
|
|
71
71
|
import { myWorkflow } from './workflows';
|
|
@@ -75,6 +75,7 @@ export const mastra = new Mastra({
|
|
|
75
75
|
myWorkflow,
|
|
76
76
|
},
|
|
77
77
|
storage: new LibSQLStore({
|
|
78
|
+
id: 'workflow-snapshots-storage',
|
|
78
79
|
url: 'file:./workflow-snapshots.db',
|
|
79
80
|
}),
|
|
80
81
|
});
|
|
@@ -22,7 +22,8 @@ const voice = new OpenAIVoice();
|
|
|
22
22
|
|
|
23
23
|
// Create an agent with voice capabilities
|
|
24
24
|
export const agent = new Agent({
|
|
25
|
-
|
|
25
|
+
id: "voice-agent",
|
|
26
|
+
name: "Voice Agent",
|
|
26
27
|
instructions: `You are a helpful assistant with both STT and TTS capabilities.`,
|
|
27
28
|
model: openai("gpt-4o"),
|
|
28
29
|
voice,
|
|
@@ -110,7 +111,8 @@ const voice = new OpenAIRealtimeVoice({
|
|
|
110
111
|
|
|
111
112
|
// Create an agent with speech-to-speech voice capabilities
|
|
112
113
|
export const agent = new Agent({
|
|
113
|
-
|
|
114
|
+
id: "speech-to-speech-agent",
|
|
115
|
+
name: "Speech-to-Speech Agent",
|
|
114
116
|
instructions: `You are a helpful assistant with speech-to-speech capabilities.`,
|
|
115
117
|
model: openai("gpt-4o"),
|
|
116
118
|
tools: {
|
|
@@ -175,7 +177,7 @@ import { createReadStream } from "fs";
|
|
|
175
177
|
import { Agent } from "@mastra/core/agent";
|
|
176
178
|
import { CompositeVoice } from "@mastra/core/voice";
|
|
177
179
|
import { OpenAIVoice } from "@mastra/voice-openai";
|
|
178
|
-
import { Mastra } from "@mastra/core
|
|
180
|
+
import { Mastra } from "@mastra/core";
|
|
179
181
|
import { openai } from "@ai-sdk/openai";
|
|
180
182
|
|
|
181
183
|
// Saves an audio stream to a file in the audio directory, creating the directory if it doesn't exist.
|
|
@@ -206,14 +208,15 @@ export const convertToText = async (
|
|
|
206
208
|
|
|
207
209
|
const chunks: Buffer[] = [];
|
|
208
210
|
return new Promise((resolve, reject) => {
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
211
|
+
inputData.on("data", (chunk) => chunks.push(Buffer.from(chunk)));
|
|
212
|
+
inputData.on("error", reject);
|
|
213
|
+
inputData.on("end", () => resolve(Buffer.concat(chunks).toString("utf-8")));
|
|
212
214
|
});
|
|
213
215
|
};
|
|
214
216
|
|
|
215
217
|
export const hybridVoiceAgent = new Agent({
|
|
216
|
-
|
|
218
|
+
id: "hybrid-voice-agent",
|
|
219
|
+
name: "Hybrid Voice Agent",
|
|
217
220
|
model: openai("gpt-4o"),
|
|
218
221
|
instructions: "You can speak and listen using different providers.",
|
|
219
222
|
voice: new CompositeVoice({
|
|
@@ -223,7 +226,8 @@ export const hybridVoiceAgent = new Agent({
|
|
|
223
226
|
});
|
|
224
227
|
|
|
225
228
|
export const unifiedVoiceAgent = new Agent({
|
|
226
|
-
|
|
229
|
+
id: "unified-voice-agent",
|
|
230
|
+
name: "Unified Voice Agent",
|
|
227
231
|
instructions: "You are an agent with both STT and TTS capabilities.",
|
|
228
232
|
model: openai("gpt-4o"),
|
|
229
233
|
voice: new OpenAIVoice(),
|
|
@@ -268,7 +272,8 @@ import { PlayAIVoice } from "@mastra/voice-playai";
|
|
|
268
272
|
import { openai } from "@ai-sdk/openai";
|
|
269
273
|
|
|
270
274
|
export const agent = new Agent({
|
|
271
|
-
|
|
275
|
+
id: "voice-agent",
|
|
276
|
+
name: "Voice Agent",
|
|
272
277
|
instructions: `You are a helpful assistant with both STT and TTS capabilities.`,
|
|
273
278
|
model: openai("gpt-4o"),
|
|
274
279
|
|
|
@@ -286,16 +291,16 @@ Mastra supports multiple voice providers for text-to-speech (TTS) and speech-to-
|
|
|
286
291
|
|
|
287
292
|
| Provider | Package | Features | Reference |
|
|
288
293
|
| --------------- | ------------------------------- | ------------------------- | ------------------------------------------------- |
|
|
289
|
-
| OpenAI | `@mastra/voice-openai` | TTS, STT | [Documentation](/reference/voice/openai) |
|
|
290
|
-
| OpenAI Realtime | `@mastra/voice-openai-realtime` | Realtime speech-to-speech | [Documentation](/reference/voice/openai-realtime) |
|
|
291
|
-
| ElevenLabs | `@mastra/voice-elevenlabs` | High-quality TTS | [Documentation](/reference/voice/elevenlabs) |
|
|
292
|
-
| PlayAI | `@mastra/voice-playai` | TTS | [Documentation](/reference/voice/playai) |
|
|
293
|
-
| Google | `@mastra/voice-google` | TTS, STT | [Documentation](/reference/voice/google) |
|
|
294
|
-
| Deepgram | `@mastra/voice-deepgram` | STT | [Documentation](/reference/voice/deepgram) |
|
|
295
|
-
| Murf | `@mastra/voice-murf` | TTS | [Documentation](/reference/voice/murf) |
|
|
296
|
-
| Speechify | `@mastra/voice-speechify` | TTS | [Documentation](/reference/voice/speechify) |
|
|
297
|
-
| Sarvam | `@mastra/voice-sarvam` | TTS, STT | [Documentation](/reference/voice/sarvam) |
|
|
298
|
-
| Azure | `@mastra/voice-azure` | TTS, STT | [Documentation](/reference/voice/mastra-voice) |
|
|
299
|
-
| Cloudflare | `@mastra/voice-cloudflare` | TTS | [Documentation](/reference/voice/mastra-voice) |
|
|
300
|
-
|
|
301
|
-
For more details on voice capabilities, see the [Voice API Reference](/reference/voice/mastra-voice).
|
|
294
|
+
| OpenAI | `@mastra/voice-openai` | TTS, STT | [Documentation](/reference/v1/voice/openai) |
|
|
295
|
+
| OpenAI Realtime | `@mastra/voice-openai-realtime` | Realtime speech-to-speech | [Documentation](/reference/v1/voice/openai-realtime) |
|
|
296
|
+
| ElevenLabs | `@mastra/voice-elevenlabs` | High-quality TTS | [Documentation](/reference/v1/voice/elevenlabs) |
|
|
297
|
+
| PlayAI | `@mastra/voice-playai` | TTS | [Documentation](/reference/v1/voice/playai) |
|
|
298
|
+
| Google | `@mastra/voice-google` | TTS, STT | [Documentation](/reference/v1/voice/google) |
|
|
299
|
+
| Deepgram | `@mastra/voice-deepgram` | STT | [Documentation](/reference/v1/voice/deepgram) |
|
|
300
|
+
| Murf | `@mastra/voice-murf` | TTS | [Documentation](/reference/v1/voice/murf) |
|
|
301
|
+
| Speechify | `@mastra/voice-speechify` | TTS | [Documentation](/reference/v1/voice/speechify) |
|
|
302
|
+
| Sarvam | `@mastra/voice-sarvam` | TTS, STT | [Documentation](/reference/v1/voice/sarvam) |
|
|
303
|
+
| Azure | `@mastra/voice-azure` | TTS, STT | [Documentation](/reference/v1/voice/mastra-voice) |
|
|
304
|
+
| Cloudflare | `@mastra/voice-cloudflare` | TTS | [Documentation](/reference/v1/voice/mastra-voice) |
|
|
305
|
+
|
|
306
|
+
For more details on voice capabilities, see the [Voice API Reference](/reference/v1/voice/mastra-voice).
|
|
@@ -26,7 +26,7 @@ npm install @mastra/memory@latest @mastra/libsql@latest
|
|
|
26
26
|
|
|
27
27
|
## Storage providers
|
|
28
28
|
|
|
29
|
-
Memory requires a storage provider to persist conversation history, including user messages and agent responses. For more details on available providers and how storage works in Mastra, see the [Storage](/docs/server-db/storage) documentation.
|
|
29
|
+
Memory requires a storage provider to persist conversation history, including user messages and agent responses. For more details on available providers and how storage works in Mastra, see the [Storage](/docs/v1/server-db/storage) documentation.
|
|
30
30
|
|
|
31
31
|
## Configuring memory
|
|
32
32
|
|
|
@@ -40,6 +40,8 @@ import { Agent } from "@mastra/core/agent";
|
|
|
40
40
|
import { Memory } from "@mastra/memory";
|
|
41
41
|
|
|
42
42
|
export const memoryAgent = new Agent({
|
|
43
|
+
id: 'memory-agent',
|
|
44
|
+
name: 'Memory Agent',
|
|
43
45
|
// ...
|
|
44
46
|
memory: new Memory({
|
|
45
47
|
options: {
|
|
@@ -51,7 +53,7 @@ export const memoryAgent = new Agent({
|
|
|
51
53
|
|
|
52
54
|
:::note
|
|
53
55
|
|
|
54
|
-
See the [Memory Class](/reference/memory/memory-class) docs for a full list of configuration options.
|
|
56
|
+
See the [Memory Class](/reference/v1/memory/memory-class) docs for a full list of configuration options.
|
|
55
57
|
|
|
56
58
|
:::
|
|
57
59
|
|
|
@@ -62,12 +64,13 @@ See the [Memory Class](/reference/memory/memory-class) docs for a full list of c
|
|
|
62
64
|
Add a storage provider to your main Mastra instance to enable memory across all configured agents.
|
|
63
65
|
|
|
64
66
|
```typescript {6-8} title="src/mastra/index.ts" copy
|
|
65
|
-
import { Mastra } from "@mastra/core
|
|
67
|
+
import { Mastra } from "@mastra/core";
|
|
66
68
|
import { LibSQLStore } from "@mastra/libsql";
|
|
67
69
|
|
|
68
70
|
export const mastra = new Mastra({
|
|
69
71
|
// ..
|
|
70
72
|
storage: new LibSQLStore({
|
|
73
|
+
id: 'mastra-storage',
|
|
71
74
|
url: ":memory:",
|
|
72
75
|
}),
|
|
73
76
|
});
|
|
@@ -75,7 +78,7 @@ export const mastra = new Mastra({
|
|
|
75
78
|
|
|
76
79
|
:::note
|
|
77
80
|
|
|
78
|
-
See the [LibSQL Storage](/reference/storage/libsql) docs for a full list of configuration options.
|
|
81
|
+
See the [LibSQL Storage](/reference/v1/storage/libsql) docs for a full list of configuration options.
|
|
79
82
|
|
|
80
83
|
:::
|
|
81
84
|
|
|
@@ -90,9 +93,12 @@ import { Memory } from "@mastra/memory";
|
|
|
90
93
|
import { LibSQLStore } from "@mastra/libsql";
|
|
91
94
|
|
|
92
95
|
export const memoryAgent = new Agent({
|
|
96
|
+
id: 'memory-agent',
|
|
97
|
+
name: 'Memory Agent',
|
|
93
98
|
// ...
|
|
94
99
|
memory: new Memory({
|
|
95
100
|
storage: new LibSQLStore({
|
|
101
|
+
id: 'mastra-storage',
|
|
96
102
|
url: ":memory:",
|
|
97
103
|
}),
|
|
98
104
|
}),
|
|
@@ -108,13 +114,13 @@ Include a `memory` object with both `resource` and `thread` to track conversatio
|
|
|
108
114
|
|
|
109
115
|
These fields tell the agent where to store and retrieve context, enabling persistent, thread-aware memory across a conversation.
|
|
110
116
|
|
|
111
|
-
```typescript {
|
|
117
|
+
```typescript {5-6}
|
|
112
118
|
const response = await memoryAgent.generate(
|
|
113
119
|
"Remember my favorite color is blue.",
|
|
114
120
|
{
|
|
115
121
|
memory: {
|
|
116
|
-
|
|
117
|
-
|
|
122
|
+
resource: "user-123",
|
|
123
|
+
thread: "conversation-123",
|
|
118
124
|
},
|
|
119
125
|
},
|
|
120
126
|
);
|
|
@@ -125,17 +131,17 @@ To recall information stored in memory, call the agent with the same `resource`
|
|
|
125
131
|
```typescript {3-4}
|
|
126
132
|
const response = await memoryAgent.generate("What's my favorite color?", {
|
|
127
133
|
memory: {
|
|
128
|
-
|
|
129
|
-
|
|
134
|
+
resource: "user-123",
|
|
135
|
+
thread: "conversation-123",
|
|
130
136
|
},
|
|
131
137
|
});
|
|
132
138
|
```
|
|
133
139
|
|
|
134
140
|
To learn more about memory see the [Memory](../memory/overview) documentation.
|
|
135
141
|
|
|
136
|
-
## Using `
|
|
142
|
+
## Using `RequestContext`
|
|
137
143
|
|
|
138
|
-
Use [
|
|
144
|
+
Use [RequestContext](/docs/v1/server-db/request-context) to access request-specific values. This lets you conditionally select different memory or storage configurations based on the context of the request.
|
|
139
145
|
|
|
140
146
|
```typescript title="src/mastra/agents/memory-agent.ts" showLineNumbers
|
|
141
147
|
export type UserTier = {
|
|
@@ -151,9 +157,11 @@ const standardMemory = new Memory({
|
|
|
151
157
|
});
|
|
152
158
|
|
|
153
159
|
export const memoryAgent = new Agent({
|
|
160
|
+
id: 'memory-agent',
|
|
161
|
+
name: 'Memory Agent',
|
|
154
162
|
// ...
|
|
155
|
-
memory: ({
|
|
156
|
-
const userTier =
|
|
163
|
+
memory: ({ requestContext }) => {
|
|
164
|
+
const userTier = requestContext.get("user-tier") as UserTier["user-tier"];
|
|
157
165
|
|
|
158
166
|
return userTier === "enterprise" ? premiumMemory : standardMemory;
|
|
159
167
|
},
|
|
@@ -162,7 +170,7 @@ export const memoryAgent = new Agent({
|
|
|
162
170
|
|
|
163
171
|
:::note
|
|
164
172
|
|
|
165
|
-
See [
|
|
173
|
+
See [Request Context](/docs/v1/server-db/request-context) docs for more information.
|
|
166
174
|
|
|
167
175
|
:::
|
|
168
176
|
|
|
@@ -171,4 +179,4 @@ See [Runtime Context](/docs/server-db/runtime-context) docs for more information
|
|
|
171
179
|
- [Working Memory](../memory/working-memory)
|
|
172
180
|
- [Semantic Recall](../memory/semantic-recall)
|
|
173
181
|
- [Threads and Resources](../memory/threads-and-resources)
|
|
174
|
-
- [
|
|
182
|
+
- [Request Context](/docs/v1/server-db/request-context)
|
|
@@ -28,7 +28,8 @@ import { Agent } from "@mastra/core/agent";
|
|
|
28
28
|
import { ModerationProcessor } from "@mastra/core/processors";
|
|
29
29
|
|
|
30
30
|
export const moderatedAgent = new Agent({
|
|
31
|
-
|
|
31
|
+
id: "moderated-agent",
|
|
32
|
+
name: "Moderated Agent",
|
|
32
33
|
instructions: "You are a helpful assistant",
|
|
33
34
|
model: openai("gpt-4o-mini"),
|
|
34
35
|
inputProcessors: [
|
|
@@ -55,6 +56,8 @@ The `UnicodeNormalizer` is an input processor that cleans and normalizes user in
|
|
|
55
56
|
import { UnicodeNormalizer } from "@mastra/core/processors";
|
|
56
57
|
|
|
57
58
|
export const normalizedAgent = new Agent({
|
|
59
|
+
id: "normalized-agent",
|
|
60
|
+
name: "Normalized Agent",
|
|
58
61
|
// ...
|
|
59
62
|
inputProcessors: [
|
|
60
63
|
new UnicodeNormalizer({
|
|
@@ -65,7 +68,7 @@ export const normalizedAgent = new Agent({
|
|
|
65
68
|
});
|
|
66
69
|
```
|
|
67
70
|
|
|
68
|
-
> See [UnicodeNormalizer](/reference/processors/unicode-normalizer) for a full list of configuration options.
|
|
71
|
+
> See [UnicodeNormalizer](/reference/v1/processors/unicode-normalizer) for a full list of configuration options.
|
|
69
72
|
|
|
70
73
|
### Preventing prompt injection
|
|
71
74
|
|
|
@@ -75,6 +78,8 @@ The `PromptInjectionDetector` is an input processor that scans user messages for
|
|
|
75
78
|
import { PromptInjectionDetector } from "@mastra/core/processors";
|
|
76
79
|
|
|
77
80
|
export const secureAgent = new Agent({
|
|
81
|
+
id: "secure-agent",
|
|
82
|
+
name: "Secure Agent",
|
|
78
83
|
// ...
|
|
79
84
|
inputProcessors: [
|
|
80
85
|
new PromptInjectionDetector({
|
|
@@ -87,7 +92,7 @@ export const secureAgent = new Agent({
|
|
|
87
92
|
});
|
|
88
93
|
```
|
|
89
94
|
|
|
90
|
-
> See [PromptInjectionDetector](/reference/processors/prompt-injection-detector) for a full list of configuration options.
|
|
95
|
+
> See [PromptInjectionDetector](/reference/v1/processors/prompt-injection-detector) for a full list of configuration options.
|
|
91
96
|
|
|
92
97
|
### Detecting and translating language
|
|
93
98
|
|
|
@@ -97,6 +102,8 @@ The `LanguageDetector` is an input processor that detects and translates user me
|
|
|
97
102
|
import { LanguageDetector } from "@mastra/core/processors";
|
|
98
103
|
|
|
99
104
|
export const multilingualAgent = new Agent({
|
|
105
|
+
id: "multilingual-agent",
|
|
106
|
+
name: "Multilingual Agent",
|
|
100
107
|
// ...
|
|
101
108
|
inputProcessors: [
|
|
102
109
|
new LanguageDetector({
|
|
@@ -109,7 +116,7 @@ export const multilingualAgent = new Agent({
|
|
|
109
116
|
});
|
|
110
117
|
```
|
|
111
118
|
|
|
112
|
-
> See [LanguageDetector](/reference/processors/language-detector) for a full list of configuration options.
|
|
119
|
+
> See [LanguageDetector](/reference/v1/processors/language-detector) for a full list of configuration options.
|
|
113
120
|
|
|
114
121
|
## Output processors
|
|
115
122
|
|
|
@@ -123,6 +130,8 @@ The `BatchPartsProcessor` is an output processor that combines multiple stream p
|
|
|
123
130
|
import { BatchPartsProcessor } from "@mastra/core/processors";
|
|
124
131
|
|
|
125
132
|
export const batchedAgent = new Agent({
|
|
133
|
+
id: "batched-agent",
|
|
134
|
+
name: "Batched Agent",
|
|
126
135
|
// ...
|
|
127
136
|
outputProcessors: [
|
|
128
137
|
new BatchPartsProcessor({
|
|
@@ -134,7 +143,7 @@ export const batchedAgent = new Agent({
|
|
|
134
143
|
});
|
|
135
144
|
```
|
|
136
145
|
|
|
137
|
-
> See [BatchPartsProcessor](/reference/processors/batch-parts-processor) for a full list of configuration options.
|
|
146
|
+
> See [BatchPartsProcessor](/reference/v1/processors/batch-parts-processor) for a full list of configuration options.
|
|
138
147
|
|
|
139
148
|
### Limiting token usage
|
|
140
149
|
|
|
@@ -144,6 +153,8 @@ The `TokenLimiterProcessor` is an output processor that limits the number of tok
|
|
|
144
153
|
import { TokenLimiterProcessor } from "@mastra/core/processors";
|
|
145
154
|
|
|
146
155
|
export const limitedAgent = new Agent({
|
|
156
|
+
id: "limited-agent",
|
|
157
|
+
name: "Limited Agent",
|
|
147
158
|
// ...
|
|
148
159
|
outputProcessors: [
|
|
149
160
|
new TokenLimiterProcessor({
|
|
@@ -155,7 +166,7 @@ export const limitedAgent = new Agent({
|
|
|
155
166
|
});
|
|
156
167
|
```
|
|
157
168
|
|
|
158
|
-
> See [TokenLimiterProcessor](/reference/processors/token-limiter-processor) for a full list of configuration options.
|
|
169
|
+
> See [TokenLimiterProcessor](/reference/v1/processors/token-limiter-processor) for a full list of configuration options.
|
|
159
170
|
|
|
160
171
|
### Scrubbing system prompts
|
|
161
172
|
|
|
@@ -165,6 +176,8 @@ The `SystemPromptScrubber` is an output processor that detects and redacts syste
|
|
|
165
176
|
import { SystemPromptScrubber } from "@mastra/core/processors";
|
|
166
177
|
|
|
167
178
|
const scrubbedAgent = new Agent({
|
|
179
|
+
id: "scrubbed-agent",
|
|
180
|
+
name: "Scrubbed Agent",
|
|
168
181
|
outputProcessors: [
|
|
169
182
|
new SystemPromptScrubber({
|
|
170
183
|
model: openai("gpt-4.1-nano"),
|
|
@@ -180,7 +193,7 @@ const scrubbedAgent = new Agent({
|
|
|
180
193
|
});
|
|
181
194
|
```
|
|
182
195
|
|
|
183
|
-
> See [SystemPromptScrubber](/reference/processors/system-prompt-scrubber) for a full list of configuration options.
|
|
196
|
+
> See [SystemPromptScrubber](/reference/v1/processors/system-prompt-scrubber) for a full list of configuration options.
|
|
184
197
|
|
|
185
198
|
## Hybrid processors
|
|
186
199
|
|
|
@@ -194,6 +207,8 @@ The `ModerationProcessor` is a hybrid processor that detects inappropriate or ha
|
|
|
194
207
|
import { ModerationProcessor } from "@mastra/core/processors";
|
|
195
208
|
|
|
196
209
|
export const moderatedAgent = new Agent({
|
|
210
|
+
id: "moderated-agent",
|
|
211
|
+
name: "Moderated Agent",
|
|
197
212
|
// ...
|
|
198
213
|
inputProcessors: [
|
|
199
214
|
new ModerationProcessor({
|
|
@@ -211,7 +226,7 @@ export const moderatedAgent = new Agent({
|
|
|
211
226
|
});
|
|
212
227
|
```
|
|
213
228
|
|
|
214
|
-
> See [ModerationProcessor](/reference/processors/moderation-processor) for a full list of configuration options.
|
|
229
|
+
> See [ModerationProcessor](/reference/v1/processors/moderation-processor) for a full list of configuration options.
|
|
215
230
|
|
|
216
231
|
### Detecting and redacting PII
|
|
217
232
|
|
|
@@ -221,6 +236,8 @@ The `PIIDetector` is a hybrid processor that detects and removes personally iden
|
|
|
221
236
|
import { PIIDetector } from "@mastra/core/processors";
|
|
222
237
|
|
|
223
238
|
export const privateAgent = new Agent({
|
|
239
|
+
id: "private-agent",
|
|
240
|
+
name: "Private Agent",
|
|
224
241
|
// ...
|
|
225
242
|
inputProcessors: [
|
|
226
243
|
new PIIDetector({
|
|
@@ -240,7 +257,7 @@ export const privateAgent = new Agent({
|
|
|
240
257
|
});
|
|
241
258
|
```
|
|
242
259
|
|
|
243
|
-
> See [PIIDetector](/reference/processors/pii-detector) for a full list of configuration options.
|
|
260
|
+
> See [PIIDetector](/reference/v1/processors/pii-detector) for a full list of configuration options.
|
|
244
261
|
|
|
245
262
|
## Applying multiple processors
|
|
246
263
|
|
|
@@ -263,6 +280,8 @@ import {
|
|
|
263
280
|
} from "@mastra/core/processors";
|
|
264
281
|
|
|
265
282
|
export const testAgent = new Agent({
|
|
283
|
+
id: "test-agent",
|
|
284
|
+
name: "Test Agent",
|
|
266
285
|
// ...
|
|
267
286
|
inputProcessors: [
|
|
268
287
|
new UnicodeNormalizer({
|
|
@@ -291,6 +310,8 @@ Most strategies allow the request to continue without interruption. When `block`
|
|
|
291
310
|
import { PIIDetector } from "@mastra/core/processors";
|
|
292
311
|
|
|
293
312
|
export const privateAgent = new Agent({
|
|
313
|
+
id: "private-agent",
|
|
314
|
+
name: "Private Agent",
|
|
294
315
|
// ...
|
|
295
316
|
inputProcessors: [
|
|
296
317
|
new PIIDetector({
|
|
@@ -344,6 +365,6 @@ If the built-in processors don’t cover your needs, you can create your own by
|
|
|
344
365
|
|
|
345
366
|
Available examples:
|
|
346
367
|
|
|
347
|
-
- [Message Length Limiter](
|
|
348
|
-
- [Response Length Limiter](
|
|
349
|
-
- [Response Validator](
|
|
368
|
+
- [Message Length Limiter](/examples/v1/processors/message-length-limiter)
|
|
369
|
+
- [Response Length Limiter](/examples/v1/processors/response-length-limiter)
|
|
370
|
+
- [Response Validator](/examples/v1/processors/response-validator)
|
|
@@ -36,7 +36,8 @@ import { cityWorkflow } from "../workflows/city-workflow";
|
|
|
36
36
|
import { weatherTool } from "../tools/weather-tool";
|
|
37
37
|
|
|
38
38
|
export const routingAgent = new Agent({
|
|
39
|
-
|
|
39
|
+
id: "routing-agent",
|
|
40
|
+
name: "Routing Agent",
|
|
40
41
|
instructions: `
|
|
41
42
|
You are a network of writers and researchers.
|
|
42
43
|
The user will ask you to research a topic.
|
|
@@ -56,6 +57,7 @@ export const routingAgent = new Agent({
|
|
|
56
57
|
},
|
|
57
58
|
memory: new Memory({
|
|
58
59
|
storage: new LibSQLStore({
|
|
60
|
+
id: 'mastra-storage',
|
|
59
61
|
url: "file:../mastra.db",
|
|
60
62
|
}),
|
|
61
63
|
}),
|
|
@@ -72,7 +74,8 @@ Each agent in a network should include a clear `description` that explains what
|
|
|
72
74
|
|
|
73
75
|
```typescript title="src/mastra/agents/research-agent.ts" showLineNumbers
|
|
74
76
|
export const researchAgent = new Agent({
|
|
75
|
-
|
|
77
|
+
id: "research-agent",
|
|
78
|
+
name: "Research Agent",
|
|
76
79
|
description: `This agent gathers concise research insights in bullet-point form.
|
|
77
80
|
It's designed to extract key facts without generating full
|
|
78
81
|
responses or narrative content.`,
|
|
@@ -82,7 +85,8 @@ export const researchAgent = new Agent({
|
|
|
82
85
|
|
|
83
86
|
```typescript title="src/mastra/agents/writing-agent.ts" showLineNumbers
|
|
84
87
|
export const writingAgent = new Agent({
|
|
85
|
-
|
|
88
|
+
id: "writing-agent",
|
|
89
|
+
name: "Writing Agent",
|
|
86
90
|
description: `This agent turns researched material into well-structured
|
|
87
91
|
written content. It produces full-paragraph reports with no bullet points,
|
|
88
92
|
suitable for use in articles, summaries, or blog posts.`,
|
|
@@ -236,4 +240,4 @@ network-execution-event-step-finish
|
|
|
236
240
|
|
|
237
241
|
- [Agent Memory](./agent-memory)
|
|
238
242
|
- [Workflows Overview](../workflows/overview)
|
|
239
|
-
- [
|
|
243
|
+
- [Request Context](/docs/v1/server-db/request-context)
|