@mastra/mcp-docs-server 1.2.17-alpha.13 → 1.2.17-alpha.16
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/course/02-agent-tools-mcp/32-conclusion.md +1 -1
- package/.docs/docs/agents/code-mode.md +3 -3
- package/.docs/docs/agents/guardrails.md +1 -1
- package/.docs/docs/agents/{agent-approval.md → human-in-the-loop.md} +5 -5
- package/.docs/docs/agents/networks.md +3 -3
- package/.docs/docs/agents/overview.md +7 -7
- package/.docs/docs/agents/processors.md +2 -2
- package/.docs/docs/agents/{using-tools.md → tools.md} +7 -7
- package/.docs/docs/{server/auth → auth}/custom-auth-provider.md +1 -1
- package/.docs/docs/{server/auth → auth}/fga.md +27 -1
- package/.docs/docs/{server/auth.md → auth/overview.md} +4 -4
- package/.docs/docs/{server/auth → auth}/simple-auth.md +1 -1
- package/.docs/docs/{server/auth → auth}/workers.md +2 -2
- package/.docs/docs/{capabilities/channels.md → channels.md} +2 -2
- package/.docs/docs/{agents → connections}/a2a.md +2 -2
- package/.docs/docs/{agents → connections}/acp.md +1 -1
- package/.docs/docs/{mcp/overview.md → connections/mcp.md} +1 -1
- package/.docs/docs/connections/overview.md +5 -5
- package/.docs/docs/{agents → connections}/sdk-agents.md +1 -1
- package/.docs/docs/deployment/mastra-server.md +2 -2
- package/.docs/docs/deployment/overview.md +1 -1
- package/.docs/docs/deployment/sandbox.md +3 -3
- package/.docs/docs/deployment/workers.md +4 -4
- package/.docs/docs/guides/multi-agent-systems.md +7 -7
- package/.docs/docs/guides/streaming.md +1 -1
- package/.docs/docs/harness/agent-controller.md +5 -3
- package/.docs/docs/{long-running-agents → harness}/background-tasks.md +5 -5
- package/.docs/docs/{long-running-agents → harness}/durable-agents.md +2 -2
- package/.docs/docs/{long-running-agents → harness}/goals.md +6 -6
- package/.docs/docs/harness/overview.md +11 -10
- package/.docs/docs/{long-running-agents → harness}/schedules.md +5 -5
- package/.docs/docs/{long-running-agents → harness}/signal-providers.md +4 -4
- package/.docs/docs/mastra-platform/deploy.md +1 -1
- package/.docs/docs/mastra-platform/overview.md +1 -1
- package/.docs/docs/mastra-platform/server.md +1 -1
- package/.docs/docs/memory/message-history.md +1 -1
- package/.docs/docs/memory/overview.md +4 -4
- package/.docs/docs/memory/working-memory.md +1 -1
- package/.docs/docs/observability/integrations/exporters/mastra-storage.md +1 -1
- package/.docs/docs/{workspace → sandbox}/filesystem.md +2 -2
- package/.docs/docs/{workspace → sandbox}/lsp.md +3 -3
- package/.docs/docs/{workspace/sandbox.md → sandbox/overview.md} +3 -3
- package/.docs/docs/{workspace → sandbox}/search.md +2 -2
- package/.docs/docs/{workspace → sandbox}/skills.md +5 -5
- package/.docs/docs/server/custom-api-routes.md +2 -2
- package/.docs/docs/server/mastra-client.md +2 -2
- package/.docs/docs/server/{mastra-server.md → overview.md} +3 -3
- package/.docs/docs/server/pubsub.md +2 -2
- package/.docs/docs/server/server-adapters.md +4 -4
- package/.docs/docs/{agents/skills.md → skills.md} +4 -4
- package/.docs/docs/{storage/overview.md → storage.md} +1 -1
- package/.docs/docs/studio/auth.md +4 -4
- package/.docs/docs/studio/overview.md +2 -2
- package/.docs/docs/{capabilities/subagents.md → subagents.md} +35 -5
- package/.docs/docs/workflows/agents-and-tools.md +1 -1
- package/.docs/docs/workflows/overview.md +1 -1
- package/.docs/docs/workflows/scheduled-workflows.md +2 -2
- package/.docs/docs/workflows/snapshots.md +1 -1
- package/.docs/integrations/agentic-ui/ai-sdk-ui.md +1 -1
- package/.docs/integrations/agentic-ui/copilotkit.md +1 -1
- package/.docs/integrations/auth/google.md +2 -2
- package/.docs/integrations/auth/workos.md +1 -1
- package/.docs/integrations/browsers/agent-browser.md +2 -2
- package/.docs/integrations/browsers/browser-viewer.md +6 -6
- package/.docs/integrations/browsers/firecrawl.md +1 -1
- package/.docs/integrations/browsers/stagehand.md +2 -2
- package/.docs/integrations/channels/discord.md +2 -2
- package/.docs/integrations/channels/github.md +1 -1
- package/.docs/integrations/channels/imessage.md +4 -4
- package/.docs/integrations/channels/slack.md +5 -5
- package/.docs/integrations/channels/teams.md +2 -2
- package/.docs/integrations/channels/telegram.md +2 -2
- package/.docs/integrations/channels/whatsapp.md +2 -2
- package/.docs/integrations/databases/postgresql.md +1 -0
- package/.docs/integrations/deploy/amazon-ec2.md +2 -2
- package/.docs/integrations/deploy/aws-lambda.md +3 -3
- package/.docs/integrations/deploy/azure-app-services.md +2 -2
- package/.docs/integrations/deploy/cloudflare.md +2 -2
- package/.docs/integrations/deploy/digital-ocean.md +3 -3
- package/.docs/integrations/deploy/kubernetes.md +11 -11
- package/.docs/integrations/deploy/netlify.md +3 -3
- package/.docs/integrations/deploy/vercel.md +2 -2
- package/.docs/integrations/file-storage/amazon-s3.md +1 -1
- package/.docs/integrations/file-storage/azure-blob.md +1 -1
- package/.docs/integrations/file-storage/google-cloud-storage.md +1 -1
- package/.docs/integrations/file-storage/mesa.md +2 -2
- package/.docs/integrations/file-storage/vercel-files.md +1 -1
- package/.docs/integrations/frameworks/astro.md +1 -1
- package/.docs/integrations/frameworks/electron.md +1 -1
- package/.docs/integrations/frameworks/express.md +1 -1
- package/.docs/integrations/frameworks/hono.md +1 -1
- package/.docs/integrations/frameworks/nestjs.md +1 -1
- package/.docs/integrations/frameworks/next-js.md +1 -1
- package/.docs/integrations/frameworks/nuxt.md +1 -1
- package/.docs/integrations/frameworks/sveltekit.md +1 -1
- package/.docs/integrations/frameworks/vite-react.md +1 -1
- package/.docs/integrations/sandboxes/agentcore.md +1 -1
- package/.docs/integrations/sandboxes/apple-container.md +1 -1
- package/.docs/integrations/sandboxes/daytona.md +1 -1
- package/.docs/integrations/sandboxes/docker.md +4 -3
- package/.docs/integrations/sandboxes/e2b.md +1 -1
- package/.docs/integrations/sandboxes/modal.md +1 -1
- package/.docs/models/environment-variables.md +2 -0
- package/.docs/models/gateways/vercel.md +3 -1
- package/.docs/models/index.md +1 -1
- package/.docs/models/providers/arcee.md +79 -0
- package/.docs/models/providers/baseten.md +1 -1
- package/.docs/models/providers/cerebras.md +2 -3
- package/.docs/models/providers/cloudflare-workers-ai.md +1 -1
- package/.docs/models/providers/cortecs.md +2 -1
- package/.docs/models/providers/crof.md +1 -1
- package/.docs/models/providers/crossmodel.md +1 -1
- package/.docs/models/providers/deepinfra.md +2 -1
- package/.docs/models/providers/edenai.md +11 -5
- package/.docs/models/providers/huggingface.md +3 -1
- package/.docs/models/providers/hyper.md +5 -5
- package/.docs/models/providers/jalapeno.md +89 -0
- package/.docs/models/providers/kilo.md +8 -7
- package/.docs/models/providers/merge-gateway.md +3 -1
- package/.docs/models/providers/nano-gpt.md +3 -9
- package/.docs/models/providers/vivgrid.md +2 -1
- package/.docs/models/providers.md +2 -0
- package/.docs/reference/acp/acp-agent.md +2 -2
- package/.docs/reference/acp/create-acp-tool.md +1 -1
- package/.docs/reference/agent-controller/agent-controller-class.md +2 -2
- package/.docs/reference/agents/agent.md +2 -2
- package/.docs/reference/agents/channels.md +2 -2
- package/.docs/reference/agents/createSkill.md +2 -2
- package/.docs/reference/agents/durable-agent.md +1 -1
- package/.docs/reference/agents/generate.md +1 -1
- package/.docs/reference/agents/getSkill.md +1 -1
- package/.docs/reference/agents/listSkills.md +1 -1
- package/.docs/reference/agents/listSuspendedRuns.md +6 -6
- package/.docs/reference/agents/listTools.md +2 -2
- 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/reference/auth/fga.md +7 -5
- package/.docs/reference/auth/jwt.md +1 -1
- package/.docs/reference/browser/agent-browser.md +2 -2
- package/.docs/reference/browser/browser-viewer.md +2 -2
- 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/build-with-ai.md +2 -2
- package/.docs/reference/channels/channel-provider.md +1 -1
- package/.docs/reference/channels/slack-provider.md +1 -1
- package/.docs/reference/cli/mastra.md +2 -0
- package/.docs/reference/client-js/agents.md +4 -4
- package/.docs/reference/coding-agent/create-coding-agent.md +142 -13
- package/.docs/reference/configuration.md +6 -6
- package/.docs/reference/core/getEditor.md +1 -1
- package/.docs/reference/core/getMCPServer.md +1 -1
- package/.docs/reference/core/getMCPServerById.md +1 -1
- package/.docs/reference/core/getTool.md +1 -1
- package/.docs/reference/core/getToolById.md +1 -1
- package/.docs/reference/core/listMCPServers.md +1 -1
- package/.docs/reference/core/listTools.md +1 -1
- package/.docs/reference/core/removeWorkspace.md +1 -1
- package/.docs/reference/editor/mastra-editor.md +2 -2
- package/.docs/reference/editor/prompt-blocks.md +2 -2
- package/.docs/reference/editor/tool-provider.md +1 -1
- package/.docs/reference/editor/tools.md +1 -1
- package/.docs/reference/editor/versioning.md +3 -3
- package/.docs/reference/evals/prompt-alignment.md +18 -0
- package/.docs/reference/evals/rubric.md +1 -1
- package/.docs/reference/file-based-agents/memory.md +2 -2
- package/.docs/reference/file-based-agents/server.md +3 -3
- package/.docs/reference/file-based-agents/skills.md +1 -1
- package/.docs/reference/file-based-agents/storage.md +3 -3
- package/.docs/reference/file-based-agents/subagents.md +1 -1
- package/.docs/reference/file-based-agents/workspace.md +3 -3
- package/.docs/reference/index.md +1 -0
- package/.docs/reference/manual-install.md +3 -3
- package/.docs/reference/memory/memory-class.md +1 -0
- package/.docs/reference/memory/settled.md +57 -0
- package/.docs/reference/migrations/network-to-supervisor.md +2 -2
- package/.docs/reference/processors/skill-search-processor.md +1 -1
- package/.docs/reference/processors/tool-call-filter.md +7 -7
- package/.docs/reference/processors/tool-search-processor.md +1 -1
- package/.docs/reference/project-structure.md +1 -1
- package/.docs/reference/pubsub/lease-provider.md +3 -3
- package/.docs/reference/pubsub/redis-streams.md +1 -1
- package/.docs/reference/rag/graph-rag.md +71 -8
- package/.docs/reference/schedules/overview.md +1 -1
- package/.docs/reference/streaming/ChunkType.md +2 -2
- package/.docs/reference/streaming/agents/stream.md +7 -4
- package/.docs/reference/streaming/agents/streamUntilIdle.md +1 -1
- package/.docs/reference/tools/ask-user-tool.md +1 -1
- package/.docs/reference/tools/create-code-mode.md +1 -1
- package/.docs/reference/tools/create-tool.md +4 -4
- package/.docs/reference/tools/mcp-server.md +47 -2
- package/.docs/reference/tools/submit-plan-tool.md +1 -1
- package/.docs/reference/tools/task-tools.md +2 -2
- package/.docs/reference/vectors/vectorize.md +12 -2
- package/.docs/reference/workers/overview.md +2 -2
- package/.docs/reference/workspace/local-filesystem.md +1 -1
- package/.docs/reference/workspace/local-sandbox.md +4 -3
- package/.docs/reference/workspace/process-manager.md +20 -4
- package/.docs/reference/workspace/sandbox.md +1 -1
- package/.docs/reference/workspace/workspace-class.md +5 -5
- package/CHANGELOG.md +15 -0
- package/package.json +4 -4
- /package/.docs/docs/{server/auth → auth}/composite-auth.md +0 -0
- /package/.docs/docs/{server/auth → auth}/jwt.md +0 -0
- /package/.docs/docs/{browser/overview.md → browser.md} +0 -0
- /package/.docs/docs/{getting-started/develop.md → develop.md} +0 -0
- /package/.docs/docs/{long-running-agents → harness}/signals.md +0 -0
- /package/.docs/docs/{editor/overview.md → studio/editor.md} +0 -0
|
@@ -198,7 +198,7 @@ await durableAgent.stream('Research topic', {
|
|
|
198
198
|
})
|
|
199
199
|
```
|
|
200
200
|
|
|
201
|
-
Visit [Background tasks](https://mastra.ai/docs/
|
|
201
|
+
Visit [Background tasks](https://mastra.ai/docs/harness/background-tasks) for the full background task guide, including configuration, subagents, and suspend/resume.
|
|
202
202
|
|
|
203
203
|
## Cleanup
|
|
204
204
|
|
|
@@ -267,7 +267,7 @@ Mastra doesn't provide a distributed lease or lock yet. In multi-replica deploym
|
|
|
267
267
|
|
|
268
268
|
- [DurableAgent reference](https://mastra.ai/reference/agents/durable-agent)
|
|
269
269
|
- [`createInngestAgent()` reference](https://mastra.ai/reference/agents/inngest-agent)
|
|
270
|
-
- [Background tasks](https://mastra.ai/docs/
|
|
270
|
+
- [Background tasks](https://mastra.ai/docs/harness/background-tasks)
|
|
271
271
|
- [Inngest deployment guide](https://mastra.ai/integrations/deploy/inngest)
|
|
272
272
|
- [Agent overview](https://mastra.ai/docs/agents/overview)
|
|
273
273
|
- [Worker overview](https://mastra.ai/docs/deployment/workers)
|
|
@@ -10,7 +10,7 @@ A goal is a durable, thread-scoped objective: a standing instruction the agent k
|
|
|
10
10
|
|
|
11
11
|
The objective is persisted in thread state, so it survives reloads and is evaluated in-loop, even when a new message arrives in the middle of an already-running turn.
|
|
12
12
|
|
|
13
|
-
Goals build on the same machinery as [`isTaskComplete`](https://mastra.ai/docs/
|
|
13
|
+
Goals build on the same machinery as [`isTaskComplete`](https://mastra.ai/docs/subagents): an LLM-as-judge scores the agent's output each iteration and gates the loop. The difference is that a goal is **durable** (stored in thread state, not passed per call) and is set and updated through `Agent` methods rather than per-`stream()` options.
|
|
14
14
|
|
|
15
15
|
## When to use goals
|
|
16
16
|
|
|
@@ -20,11 +20,11 @@ Use a goal when you want an agent to keep working toward a single objective acro
|
|
|
20
20
|
- Work that should continue across mid-run messages (a message delivered into a live run is still judged against the goal).
|
|
21
21
|
- An objective that must persist across thread reloads or process restarts.
|
|
22
22
|
|
|
23
|
-
For a one-off completion check within a single `stream()` call, use [`isTaskComplete`](https://mastra.ai/docs/
|
|
23
|
+
For a one-off completion check within a single `stream()` call, use [`isTaskComplete`](https://mastra.ai/docs/subagents) instead.
|
|
24
24
|
|
|
25
25
|
## Quickstart
|
|
26
26
|
|
|
27
|
-
Goals require a configured [storage](https://mastra.ai/docs/storage
|
|
27
|
+
Goals require a configured [storage](https://mastra.ai/docs/storage) backend and a memory-backed thread. Add a `goal` config to the agent, a judge model is required for the goal to do anything, then set an objective for a thread:
|
|
28
28
|
|
|
29
29
|
```typescript
|
|
30
30
|
import { Agent } from '@mastra/core/agent'
|
|
@@ -113,7 +113,7 @@ Per-objective values written by `setObjective` / `updateObjectiveOptions` take p
|
|
|
113
113
|
|
|
114
114
|
## Related
|
|
115
115
|
|
|
116
|
-
- [Supervisor agents](https://mastra.ai/docs/
|
|
117
|
-
- [Signal providers](https://mastra.ai/docs/
|
|
118
|
-
- [Memory storage](https://mastra.ai/docs/storage
|
|
116
|
+
- [Supervisor agents](https://mastra.ai/docs/subagents): `isTaskComplete` and the rubric scorer
|
|
117
|
+
- [Signal providers](https://mastra.ai/docs/harness/signal-providers): How the objective is projected into context
|
|
118
|
+
- [Memory storage](https://mastra.ai/docs/storage): The storage backend goals require
|
|
119
119
|
- [Mastra Factory](https://factory.mastra.ai) and [Mastra Code](https://code.mastra.ai): Examples of goal-driven coding agents
|
|
@@ -12,13 +12,14 @@ In Mastra, harness refers to a set of capabilities for managing an agent beyond
|
|
|
12
12
|
|
|
13
13
|
Choose a starting point based on what the agent needs. You may use one capability or several.
|
|
14
14
|
|
|
15
|
-
| If you want to | Start here
|
|
16
|
-
| ------------------------------------------------------------------------------------- |
|
|
17
|
-
| Keep a run available through client disconnects or server restarts | [Durable Agents](https://mastra.ai/docs/
|
|
18
|
-
| Run slow tools, workflows, or subagents without blocking | [Background Tasks](https://mastra.ai/docs/
|
|
19
|
-
| Keep an agent working until it reaches an objective | [Goals](https://mastra.ai/docs/
|
|
20
|
-
| Start work automatically at recurring times | [Schedules](https://mastra.ai/docs/
|
|
21
|
-
| Add context, redirect active work, or wake an idle thread | [Signals](https://mastra.ai/docs/
|
|
22
|
-
| React to changes in GitHub, Slack, continuous integration, or another external system | [Signal Providers](https://mastra.ai/docs/
|
|
23
|
-
| Build an interactive product with sessions, modes, state, approvals, and events | [AgentController](https://mastra.ai/docs/harness/agent-controller)
|
|
24
|
-
| Let users steer, queue follow-up work, or stop an interactive run | [AgentController](https://mastra.ai/docs/harness/agent-controller)
|
|
15
|
+
| If you want to | Start here | Why |
|
|
16
|
+
| ------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------- |
|
|
17
|
+
| Keep a run available through client disconnects or server restarts | [Durable Agents](https://mastra.ai/docs/harness/durable-agents) | Persist run state and let clients reconnect to its stream. |
|
|
18
|
+
| Run slow tools, workflows, or subagents without blocking | [Background Tasks](https://mastra.ai/docs/harness/background-tasks) | Finish work asynchronously and return its result to the agent. |
|
|
19
|
+
| Keep an agent working until it reaches an objective | [Goals](https://mastra.ai/docs/harness/goals) | Evaluate a thread-scoped objective until it's complete or reaches its run budget. |
|
|
20
|
+
| Start work automatically at recurring times | [Schedules](https://mastra.ai/docs/harness/schedules) | Start isolated runs or send prompts into an existing thread on a cron schedule. |
|
|
21
|
+
| Add context, redirect active work, or wake an idle thread | [Signals](https://mastra.ai/docs/harness/signals) | Deliver input now or hold it for the next turn. |
|
|
22
|
+
| React to changes in GitHub, Slack, continuous integration, or another external system | [Signal Providers](https://mastra.ai/docs/harness/signal-providers) | Track subscriptions and forward matching events to agent threads. |
|
|
23
|
+
| Build an interactive product with sessions, modes, state, approvals, and events | [AgentController](https://mastra.ai/docs/harness/agent-controller) | Host isolated sessions around a shared agent runtime. |
|
|
24
|
+
| Let users steer, queue follow-up work, or stop an interactive run | [AgentController](https://mastra.ai/docs/harness/agent-controller) | Expose run controls through each session. |
|
|
25
|
+
| Give an agent files, a shell, and the defaults a coding agent needs | [`createCodingAgent()`](https://mastra.ai/reference/coding-agent/create-coding-agent) | Build a standard agent with a workspace, task tracking, and retries already configured. |
|
|
@@ -6,11 +6,11 @@
|
|
|
6
6
|
|
|
7
7
|
> **Beta:** Breaking changes may occur without a major version bump until the API is stable.
|
|
8
8
|
|
|
9
|
-
A schedule runs an agent on a cron cadence. On each fire, Mastra sends a prompt to the agent, either as a [signal](https://mastra.ai/docs/
|
|
9
|
+
A schedule runs an agent on a cron cadence. On each fire, Mastra sends a prompt to the agent, either as a [signal](https://mastra.ai/docs/harness/signals) into a thread or as a threadless [`agent.generate()`](https://mastra.ai/reference/agents/generate) run. Use schedules for recurring agent work such as daily summaries, periodic checks, or scheduled nudges into a conversation.
|
|
10
10
|
|
|
11
11
|
Schedules are persisted, so they survive restarts and redeploys. Manage them at runtime through [`mastra.schedules`](https://mastra.ai/reference/schedules/overview), the canonical create, read, update, and delete (CRUD) surface. The same surface also manages [workflow schedules](https://mastra.ai/docs/workflows/scheduled-workflows) (pass `workflowId` instead of `agentId` to schedule a workflow).
|
|
12
12
|
|
|
13
|
-
> **Note:** Schedules require a [storage](https://mastra.ai/docs/storage
|
|
13
|
+
> **Note:** Schedules require a [storage](https://mastra.ai/docs/storage) adapter that implements the schedules domain. See the [`mastra.schedules` reference](https://mastra.ai/reference/schedules/overview) for supported adapters and API behavior.
|
|
14
14
|
|
|
15
15
|
## Quickstart
|
|
16
16
|
|
|
@@ -71,7 +71,7 @@ Without a `threadId`, each fire is an isolated `agent.generate()` run. Nothing i
|
|
|
71
71
|
|
|
72
72
|
### Threaded
|
|
73
73
|
|
|
74
|
-
With a `threadId`, the schedule sends a [signal](https://mastra.ai/docs/
|
|
74
|
+
With a `threadId`, the schedule sends a [signal](https://mastra.ai/docs/harness/signals) into that thread, so the prompt joins the agent's conversation. Threaded schedules require a `resourceId` alongside the `threadId`.
|
|
75
75
|
|
|
76
76
|
```typescript
|
|
77
77
|
await mastra.schedules.create({
|
|
@@ -83,7 +83,7 @@ await mastra.schedules.create({
|
|
|
83
83
|
})
|
|
84
84
|
```
|
|
85
85
|
|
|
86
|
-
Threaded schedules accept extra fields that control how the signal behaves, including the signal type, XML tag, tag attributes, and active-or-idle delivery behavior. They mirror the options [`agent.sendSignal()`](https://mastra.ai/docs/
|
|
86
|
+
Threaded schedules accept extra fields that control how the signal behaves, including the signal type, XML tag, tag attributes, and active-or-idle delivery behavior. They mirror the options [`agent.sendSignal()`](https://mastra.ai/docs/harness/signals) accepts and stay JSON-serializable so they persist with the schedule.
|
|
87
87
|
|
|
88
88
|
These fields require a `threadId`. For the full threaded input shape, see the [agent schedule input reference](https://mastra.ai/reference/schedules/overview).
|
|
89
89
|
|
|
@@ -197,5 +197,5 @@ Hook exceptions are caught and logged. They never re-route the worker or trigger
|
|
|
197
197
|
## Related
|
|
198
198
|
|
|
199
199
|
- [`mastra.schedules`](https://mastra.ai/reference/schedules/overview): API reference for creating and managing schedules.
|
|
200
|
-
- [Signals](https://mastra.ai/docs/
|
|
200
|
+
- [Signals](https://mastra.ai/docs/harness/signals): the delivery mechanism behind threaded schedules.
|
|
201
201
|
- [Scheduled workflows](https://mastra.ai/docs/workflows/scheduled-workflows): declare a cron schedule on a workflow definition.
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
|
|
7
7
|
> **Beta:** Breaking changes may occur without a major version bump until the API is stable.
|
|
8
8
|
|
|
9
|
-
A signal provider monitors an external source, such as GitHub, Slack, continuous integration (CI), or your own API, and pushes [notification signals](https://mastra.ai/docs/
|
|
9
|
+
A signal provider monitors an external source, such as GitHub, Slack, continuous integration (CI), or your own API, and pushes [notification signals](https://mastra.ai/docs/harness/signals) into subscribed agent threads.
|
|
10
10
|
|
|
11
11
|
## When to use a signal provider
|
|
12
12
|
|
|
@@ -20,7 +20,7 @@ If you only need to push a one-off event into a thread, call [`agent.sendNotific
|
|
|
20
20
|
|
|
21
21
|
## How signal providers work
|
|
22
22
|
|
|
23
|
-
A signal provider is the producing side of the [signals](https://mastra.ai/docs/
|
|
23
|
+
A signal provider is the producing side of the [signals](https://mastra.ai/docs/harness/signals) system. It brings external events into a thread, while the signal APIs control how the thread consumes them.
|
|
24
24
|
|
|
25
25
|
A signal provider combines three capabilities:
|
|
26
26
|
|
|
@@ -205,7 +205,7 @@ For a production provider that watches GitHub pull requests, see the [GitHub Cha
|
|
|
205
205
|
## Related
|
|
206
206
|
|
|
207
207
|
- [Guide: Building a signal provider](https://mastra.ai/blog/building-a-signal-provider)
|
|
208
|
-
- [Signals](https://mastra.ai/docs/
|
|
209
|
-
- [Notification signals](https://mastra.ai/docs/
|
|
208
|
+
- [Signals](https://mastra.ai/docs/harness/signals)
|
|
209
|
+
- [Notification signals](https://mastra.ai/docs/harness/signals)
|
|
210
210
|
- [`SignalProvider` reference](https://mastra.ai/reference/signals/signal-provider)
|
|
211
211
|
- [`WebhookSignalProvider` reference](https://mastra.ai/reference/signals/webhook-signal-provider)
|
|
@@ -63,7 +63,7 @@ A local `.env` file is optional. Environment variables stored on the platform ar
|
|
|
63
63
|
|
|
64
64
|
4. Verify your deployment at the URL printed by the CLI. Append `/api/agents` to confirm it returns a JSON list of your agents.
|
|
65
65
|
|
|
66
|
-
> **Warning:** Set up [authentication](https://mastra.ai/docs/
|
|
66
|
+
> **Warning:** Set up [authentication](https://mastra.ai/docs/auth/overview) before exposing your endpoints publicly.
|
|
67
67
|
|
|
68
68
|
The first deploy writes a `.mastra-project.json` file linking your directory to the platform project. Commit it so later deploys, CI runs, and [`mastra env`](https://mastra.ai/docs/mastra-platform/environments) commands target the same project without extra flags.
|
|
69
69
|
|
|
@@ -29,7 +29,7 @@ Choose the path that matches what you want to do:
|
|
|
29
29
|
Your Mastra application is built from three building blocks:
|
|
30
30
|
|
|
31
31
|
- [Agents](https://mastra.ai/docs/agents/overview): AI agents that can use tools and follow instructions while maintaining context
|
|
32
|
-
- [Tools](https://mastra.ai/docs/agents/
|
|
32
|
+
- [Tools](https://mastra.ai/docs/agents/tools): Callable functions and integrations available to your agents
|
|
33
33
|
- [Workflows](https://mastra.ai/docs/workflows/overview): Multi-step orchestration pipelines that coordinate agents and tools
|
|
34
34
|
|
|
35
35
|
## Going to production
|
|
@@ -56,7 +56,7 @@ You get a stable API endpoint with environment variable management and custom do
|
|
|
56
56
|
|
|
57
57
|
4. Verify your deployment at the URL printed by the CLI. Append `/api/agents` to confirm it returns a JSON list of your agents.
|
|
58
58
|
|
|
59
|
-
> **Warning:** Set up [authentication](https://mastra.ai/docs/
|
|
59
|
+
> **Warning:** Set up [authentication](https://mastra.ai/docs/auth/overview) before exposing your endpoints publicly.
|
|
60
60
|
|
|
61
61
|
## Deploy lifecycle
|
|
62
62
|
|
|
@@ -25,7 +25,7 @@ Studio automatically generates a thread and resource ID for you. When calling `s
|
|
|
25
25
|
|
|
26
26
|
## Getting started
|
|
27
27
|
|
|
28
|
-
Install the Mastra memory module along with a [storage adapter](https://mastra.ai/docs/storage
|
|
28
|
+
Install the Mastra memory module along with a [storage adapter](https://mastra.ai/docs/storage) for your database. The examples below use `@mastra/libsql`, which stores data locally in a `mastra.db` file.
|
|
29
29
|
|
|
30
30
|
**npm**:
|
|
31
31
|
|
|
@@ -13,7 +13,7 @@ Mastra agents can be configured to store [message history](https://mastra.ai/doc
|
|
|
13
13
|
|
|
14
14
|
If the combined memory exceeds the model's context limit, [memory processors](https://mastra.ai/docs/memory/memory-processors) can filter, trim, or prioritize content so the most relevant information is preserved.
|
|
15
15
|
|
|
16
|
-
Memory results will be stored in one or more of your configured [storage providers](https://mastra.ai/docs/storage
|
|
16
|
+
Memory results will be stored in one or more of your configured [storage providers](https://mastra.ai/docs/storage).
|
|
17
17
|
|
|
18
18
|
> **📹 Watch:** Watch [Mastra memory concepts](https://www.youtube.com/watch?v=18iIHQtIPmc) for a conceptual overview of the memory layers agents can use.
|
|
19
19
|
|
|
@@ -77,7 +77,7 @@ Use memory when your agent needs to maintain multi-turn conversations that refer
|
|
|
77
77
|
bun add @mastra/libsql@latest
|
|
78
78
|
```
|
|
79
79
|
|
|
80
|
-
For more details on available providers and how storage works in Mastra, visit the [storage](https://mastra.ai/docs/storage
|
|
80
|
+
For more details on available providers and how storage works in Mastra, visit the [storage](https://mastra.ai/docs/storage) documentation.
|
|
81
81
|
|
|
82
82
|
3. Add the storage provider to your main Mastra instance to enable memory across all configured agents.
|
|
83
83
|
|
|
@@ -188,7 +188,7 @@ Conversation messages are ordered by timestamp and deduplicated by message ID, s
|
|
|
188
188
|
|
|
189
189
|
## Memory in multi-agent systems
|
|
190
190
|
|
|
191
|
-
When a [supervisor agent](https://mastra.ai/docs/
|
|
191
|
+
When a [supervisor agent](https://mastra.ai/docs/subagents) delegates to a subagent, Mastra isolates subagent memory automatically. No flag enables this as it happens on every delegation. Understanding how this scoping works lets you decide what stays private and what to share intentionally.
|
|
192
192
|
|
|
193
193
|
### How delegation scopes memory
|
|
194
194
|
|
|
@@ -200,7 +200,7 @@ Each delegation creates a fresh `threadId` and a deterministic `resourceId` for
|
|
|
200
200
|
|
|
201
201
|
> **Note:** Title generation (`generateTitle`) is a top-level thread concern and **isn't** applied to inherited subagent threads. Because each delegation creates an ephemeral thread that no one sees, running title generation for it would waste an LLM call per delegation. To generate titles for a subagent's own threads, give that subagent its own memory configuration.
|
|
202
202
|
|
|
203
|
-
The supervisor forwards its conversation context to the subagent so it has enough background to complete the task. Only the delegation prompt and the subagent's response are saved, the full parent conversation isn't stored. You can control which messages reach the subagent with the [`messageFilter`](https://mastra.ai/docs/
|
|
203
|
+
The supervisor forwards its conversation context to the subagent so it has enough background to complete the task. Only the delegation prompt and the subagent's response are saved, the full parent conversation isn't stored. You can control which messages reach the subagent with the [`messageFilter`](https://mastra.ai/docs/subagents) callback.
|
|
204
204
|
|
|
205
205
|
> **Note:** Subagent resource IDs are always suffixed with the agent name (`{parentResourceId}-{agentName}`). Different subagents under the same supervisor never share a resource ID through delegation.
|
|
206
206
|
|
|
@@ -400,7 +400,7 @@ const response = await agent.generate('What do you know about me?', {
|
|
|
400
400
|
|
|
401
401
|
## Opt in to state signals (experimental)
|
|
402
402
|
|
|
403
|
-
By default, working memory reaches the model as part of the system message. You can opt into delivering it as a [state signal](https://mastra.ai/docs/
|
|
403
|
+
By default, working memory reaches the model as part of the system message. You can opt into delivering it as a [state signal](https://mastra.ai/docs/harness/signals) instead by setting `useStateSignals: true`:
|
|
404
404
|
|
|
405
405
|
```typescript
|
|
406
406
|
const memory = new Memory({
|
|
@@ -244,4 +244,4 @@ new MastraStorageExporter({
|
|
|
244
244
|
- [Tracing Overview](https://mastra.ai/docs/observability/tracing/overview)
|
|
245
245
|
- [MastraPlatformExporter](https://mastra.ai/docs/mastra-platform/observability)
|
|
246
246
|
- [Composite Storage](https://mastra.ai/reference/storage/composite): Combine multiple storage providers
|
|
247
|
-
- [Storage Configuration](https://mastra.ai/docs/storage
|
|
247
|
+
- [Storage Configuration](https://mastra.ai/docs/storage)
|
|
@@ -165,7 +165,7 @@ const workspace = new Workspace({
|
|
|
165
165
|
|
|
166
166
|
### Per-user or per-thread mounts
|
|
167
167
|
|
|
168
|
-
Workspace-level `mounts` require a sandbox provider object and can't be combined with a sandbox resolver. For one sandbox and storage prefix per user or thread, create and mount the filesystem inside the sandbox resolver. See [Multi-tenant sandboxes](https://mastra.ai/docs/
|
|
168
|
+
Workspace-level `mounts` require a sandbox provider object and can't be combined with a sandbox resolver. For one sandbox and storage prefix per user or thread, create and mount the filesystem inside the sandbox resolver. See [Multi-tenant sandboxes](https://mastra.ai/docs/sandbox/overview) for a complete example.
|
|
169
169
|
|
|
170
170
|
## Workspace-only filesystem
|
|
171
171
|
|
|
@@ -262,6 +262,6 @@ Each tenant's prefix seeds its own workspace view. Workspace tools resolve the f
|
|
|
262
262
|
|
|
263
263
|
## Related
|
|
264
264
|
|
|
265
|
-
- [Sandbox](https://mastra.ai/docs/
|
|
265
|
+
- [Sandbox](https://mastra.ai/docs/sandbox/overview)
|
|
266
266
|
- [`WorkspaceFilesystem` reference](https://mastra.ai/reference/workspace/filesystem)
|
|
267
267
|
- [`Workspace` reference](https://mastra.ai/reference/workspace/workspace-class)
|
|
@@ -210,7 +210,7 @@ const workspace = new Workspace({
|
|
|
210
210
|
|
|
211
211
|
## Related
|
|
212
212
|
|
|
213
|
-
- [Filesystem](https://mastra.ai/docs/
|
|
214
|
-
- [Sandbox](https://mastra.ai/docs/
|
|
215
|
-
- [Search and indexing](https://mastra.ai/docs/
|
|
213
|
+
- [Filesystem](https://mastra.ai/docs/sandbox/filesystem)
|
|
214
|
+
- [Sandbox](https://mastra.ai/docs/sandbox/overview)
|
|
215
|
+
- [Search and indexing](https://mastra.ai/docs/sandbox/search)
|
|
216
216
|
- [Workspace class reference](https://mastra.ai/reference/workspace/workspace-class)
|
|
@@ -145,7 +145,7 @@ const workspace = new Workspace({
|
|
|
145
145
|
|
|
146
146
|
The agent receives filesystem tools for the mounted storage, and commands in the sandbox can access the same files under `/data`. This lets you seed an ephemeral sandbox with existing files and persist its output after the sandbox stops.
|
|
147
147
|
|
|
148
|
-
Mount support varies by sandbox backend. See [Filesystem](https://mastra.ai/docs/
|
|
148
|
+
Mount support varies by sandbox backend. See [Filesystem](https://mastra.ai/docs/sandbox/filesystem) for supported storage backends, detailed mount configuration, and how to mount multiple filesystems.
|
|
149
149
|
|
|
150
150
|
## Multi-tenant sandboxes
|
|
151
151
|
|
|
@@ -200,7 +200,7 @@ Workspace-level `mounts` can't be combined with a sandbox resolver. This is a kn
|
|
|
200
200
|
|
|
201
201
|
The workspace doesn't own sandboxes returned by a resolver. Return a sandbox that's ready to use, and destroy it through your application's lifecycle code when it's no longer needed. `workspace.destroy()` doesn't destroy resolver-returned sandboxes.
|
|
202
202
|
|
|
203
|
-
Resolvers are incompatible with `mounts` and [`lsp: true`](https://mastra.ai/docs/
|
|
203
|
+
Resolvers are incompatible with `mounts` and [`lsp: true`](https://mastra.ai/docs/sandbox/lsp), because both require a static sandbox when the workspace is constructed. Using a resolver with `mounts` throws an `INVALID_CONFIG` error. With `lsp: true`, Mastra disables LSP and logs a warning.
|
|
204
204
|
|
|
205
205
|
### Tool availability
|
|
206
206
|
|
|
@@ -335,4 +335,4 @@ await sandbox.executeCommand('node', ['scripts/download-reports.js'], {
|
|
|
335
335
|
|
|
336
336
|
- [`SandboxProcessManager` reference](https://mastra.ai/reference/workspace/process-manager)
|
|
337
337
|
- [`WorkspaceSandbox` reference](https://mastra.ai/reference/workspace/sandbox)
|
|
338
|
-
- [Filesystem](https://mastra.ai/docs/
|
|
338
|
+
- [Filesystem](https://mastra.ai/docs/sandbox/filesystem)
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Search lets agents find relevant content in indexed workspace files. When an agent needs to answer a question or find information, it can search the indexed content instead of reading every file.
|
|
6
6
|
|
|
7
|
-
Search works with both [`mounts`](https://mastra.ai/docs/
|
|
7
|
+
Search works with both [`mounts`](https://mastra.ai/docs/sandbox/filesystem) and a [workspace-only filesystem](https://mastra.ai/docs/sandbox/filesystem). With `mounts`, paths from every mounted filesystem are available through one composite filesystem. With `filesystem`, search uses that provider directly. In both cases, queries search the workspace index rather than reading live files on demand.
|
|
8
8
|
|
|
9
9
|
## When to use search
|
|
10
10
|
|
|
@@ -327,6 +327,6 @@ See [workspace class reference](https://mastra.ai/reference/workspace/workspace-
|
|
|
327
327
|
|
|
328
328
|
## Related
|
|
329
329
|
|
|
330
|
-
- [Sandbox](https://mastra.ai/docs/
|
|
330
|
+
- [Sandbox](https://mastra.ai/docs/sandbox/overview)
|
|
331
331
|
- [RAG overview](https://mastra.ai/reference/rag/overview)
|
|
332
332
|
- [Workspace class reference](https://mastra.ai/reference/workspace/workspace-class)
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Skills are reusable instructions that teach agents how to perform specific tasks. They follow the [Agent Skills specification](https://agentskills.io) - an open standard for packaging agent capabilities.
|
|
6
6
|
|
|
7
|
-
> **Note:** Workspace skills are discovered through a workspace and shared with every agent that uses it. To attach skills directly to one agent without requiring a workspace, use [agent skills](https://mastra.ai/docs/
|
|
7
|
+
> **Note:** Workspace skills are discovered through a workspace and shared with every agent that uses it. To attach skills directly to one agent without requiring a workspace, use [agent skills](https://mastra.ai/docs/skills).
|
|
8
8
|
|
|
9
9
|
## When to use skills
|
|
10
10
|
|
|
@@ -205,7 +205,7 @@ When `skillSource` is provided, it's used instead of the workspace filesystem fo
|
|
|
205
205
|
|
|
206
206
|
You can also attach skills directly to an agent without a workspace using `createSkill()` and the agent's `skills` config. When both agent-level and workspace-level skills exist, they merge, agent-level skills take precedence on name conflicts.
|
|
207
207
|
|
|
208
|
-
See [Agent skills](https://mastra.ai/docs/
|
|
208
|
+
See [Agent skills](https://mastra.ai/docs/skills) for details.
|
|
209
209
|
|
|
210
210
|
## Dynamic skills
|
|
211
211
|
|
|
@@ -226,8 +226,8 @@ const workspace = new Workspace({
|
|
|
226
226
|
|
|
227
227
|
## Related
|
|
228
228
|
|
|
229
|
-
- [Agent skills](https://mastra.ai/docs/
|
|
229
|
+
- [Agent skills](https://mastra.ai/docs/skills)
|
|
230
230
|
- [Agent skills specification](https://agentskills.io)
|
|
231
|
-
- [Sandbox](https://mastra.ai/docs/
|
|
232
|
-
- [Search and indexing](https://mastra.ai/docs/
|
|
231
|
+
- [Sandbox](https://mastra.ai/docs/sandbox/overview)
|
|
232
|
+
- [Search and indexing](https://mastra.ai/docs/sandbox/search)
|
|
233
233
|
- [`createSkill()` reference](https://mastra.ai/reference/agents/createSkill)
|
|
@@ -295,7 +295,7 @@ registerApiRoute('/user-profile', {
|
|
|
295
295
|
})
|
|
296
296
|
```
|
|
297
297
|
|
|
298
|
-
For more information about authentication providers, see the [Auth documentation](https://mastra.ai/docs/
|
|
298
|
+
For more information about authentication providers, see the [Auth documentation](https://mastra.ai/docs/auth/overview).
|
|
299
299
|
|
|
300
300
|
## Continue generation after client disconnect
|
|
301
301
|
|
|
@@ -372,4 +372,4 @@ export const mastra = new Mastra({
|
|
|
372
372
|
|
|
373
373
|
- [registerApiRoute() Reference](https://mastra.ai/reference/server/register-api-route): Full API reference
|
|
374
374
|
- [Server Middleware](https://mastra.ai/docs/server/middleware): Global middleware configuration
|
|
375
|
-
- [Mastra Server](https://mastra.ai/docs/server/
|
|
375
|
+
- [Mastra Server](https://mastra.ai/docs/server/overview): Server configuration options
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Mastra client
|
|
4
4
|
|
|
5
|
-
The Mastra Client SDK provides a concise and type-safe interface for interacting with your [Mastra Server](https://mastra.ai/docs/server/
|
|
5
|
+
The Mastra Client SDK provides a concise and type-safe interface for interacting with your [Mastra Server](https://mastra.ai/docs/server/overview) from your client environment.
|
|
6
6
|
|
|
7
7
|
## Prerequisites
|
|
8
8
|
|
|
@@ -59,7 +59,7 @@ export const mastraClient = new MastraClient({
|
|
|
59
59
|
The Mastra Client SDK exposes all resources served by the Mastra Server.
|
|
60
60
|
|
|
61
61
|
- **[Agents](https://mastra.ai/reference/client-js/agents)**: Generate responses and stream conversations.
|
|
62
|
-
- **[A2A](https://mastra.ai/docs/
|
|
62
|
+
- **[A2A](https://mastra.ai/docs/connections/a2a)**: Discover agents through agent cards and work with task-based A2A streams.
|
|
63
63
|
- **[Memory](https://mastra.ai/reference/client-js/memory)**: Manage conversation threads and message history.
|
|
64
64
|
- **[Tools](https://mastra.ai/reference/client-js/tools)**: Executed and managed tools.
|
|
65
65
|
- **[Workflows](https://mastra.ai/reference/client-js/workflows)**: Trigger workflows and track their execution.
|
|
@@ -14,8 +14,8 @@ Mastra runs as an HTTP server that exposes your agents, workflows, and other fun
|
|
|
14
14
|
- **[Server Adapters](https://mastra.ai/docs/server/server-adapters)**: Run Mastra with Express, Hono, or your own HTTP server instead of the generated server.
|
|
15
15
|
- **[Custom Adapters](https://mastra.ai/docs/server/custom-adapters)**: Build adapters for frameworks not officially supported.
|
|
16
16
|
- **[Mastra Client SDK](https://mastra.ai/docs/server/mastra-client)**: Type-safe client for calling agents, workflows, and tools from browser or server environments.
|
|
17
|
-
- **[A2A](https://mastra.ai/docs/
|
|
18
|
-
- **[Authentication](https://mastra.ai/docs/
|
|
17
|
+
- **[A2A](https://mastra.ai/docs/connections/a2a)**: Expose agents through A2A agent cards and task streams, plus push notifications.
|
|
18
|
+
- **[Authentication](https://mastra.ai/docs/auth/overview)**: Secure endpoints with JWT, Clerk, Supabase, Firebase, Auth0, or WorkOS.
|
|
19
19
|
|
|
20
20
|
## Configuration
|
|
21
21
|
|
|
@@ -101,5 +101,5 @@ Mastra requires `module` and `moduleResolution` settings compatible with modern
|
|
|
101
101
|
|
|
102
102
|
- Add [middleware](https://mastra.ai/docs/server/middleware)
|
|
103
103
|
- Create [custom API routes](https://mastra.ai/docs/server/custom-api-routes)
|
|
104
|
-
- Add [authentication](https://mastra.ai/docs/
|
|
104
|
+
- Add [authentication](https://mastra.ai/docs/auth/overview)
|
|
105
105
|
- [Deploy](https://mastra.ai/docs/deployment/overview) your server to production
|
|
@@ -12,7 +12,7 @@ Several built-in systems publish and subscribe to events through the same pub/su
|
|
|
12
12
|
|
|
13
13
|
- **Workflow execution**: The scheduler publishes a `workflow.start` event, and a long-lived worker consumes it to run the workflow. Step and lifecycle events flow over pub/sub during execution.
|
|
14
14
|
- **Scheduled workflows**: The scheduler dispatches due runs by publishing to the workflow topic. See [Scheduled workflows](https://mastra.ai/docs/workflows/scheduled-workflows).
|
|
15
|
-
- **Background tasks**: A task manager dispatches work to a worker group and fans task lifecycle updates out to subscribers, which is how background task streams stay live. See [Background task streaming](https://mastra.ai/docs/
|
|
15
|
+
- **Background tasks**: A task manager dispatches work to a worker group and fans task lifecycle updates out to subscribers, which is how background task streams stay live. See [Background task streaming](https://mastra.ai/docs/harness/background-tasks).
|
|
16
16
|
- **Agent signals**: Sending a signal to an active agent run publishes an event on a thread topic, so a run executing in another process receives the signal.
|
|
17
17
|
- **Resumable streams**: Stream chunks are published per run, so a client that reconnects can replay what it missed.
|
|
18
18
|
|
|
@@ -125,5 +125,5 @@ Visit the [PubSub reference](https://mastra.ai/reference/pubsub/base) for the fu
|
|
|
125
125
|
- [PubSub reference](https://mastra.ai/reference/pubsub/base)
|
|
126
126
|
- [Mastra class](https://mastra.ai/reference/core/mastra-class)
|
|
127
127
|
- [Workers](https://mastra.ai/docs/deployment/workers): Run workflow orchestration and background tasks in dedicated processes using PubSub
|
|
128
|
-
- [Background task streaming](https://mastra.ai/docs/
|
|
128
|
+
- [Background task streaming](https://mastra.ai/docs/harness/background-tasks)
|
|
129
129
|
- [Scheduled workflows](https://mastra.ai/docs/workflows/scheduled-workflows)
|
|
@@ -12,7 +12,7 @@ Server adapters let you run Mastra with your own HTTP server instead of the Hono
|
|
|
12
12
|
- You need direct access to the server instance for custom configuration
|
|
13
13
|
- Your team prefers using another server framework instead of the Hono server created by `mastra build`.
|
|
14
14
|
|
|
15
|
-
> **Tip:** For deployments without custom server requirements, use `mastra build` instead. It configures server setup and registers middleware, plus applies deployment settings based on your project configuration. See [Server Configuration](https://mastra.ai/docs/server/
|
|
15
|
+
> **Tip:** For deployments without custom server requirements, use `mastra build` instead. It configures server setup and registers middleware, plus applies deployment settings based on your project configuration. See [Server Configuration](https://mastra.ai/docs/server/overview).
|
|
16
16
|
>
|
|
17
17
|
> If you want to use [Studio](https://mastra.ai/docs/studio/overview) with your server adapter, use [`mastra studio`](https://mastra.ai/reference/cli/mastra) to only launch the Studio UI.
|
|
18
18
|
|
|
@@ -635,7 +635,7 @@ const server = new MastraServer({
|
|
|
635
635
|
|
|
636
636
|
When `serverless: true`, MCP HTTP requests run without session management, making them compatible with stateless execution environments.
|
|
637
637
|
|
|
638
|
-
See [MCP](https://mastra.ai/docs/mcp
|
|
638
|
+
See [MCP](https://mastra.ai/docs/connections/mcp) for configuration details and how to set up MCP servers.
|
|
639
639
|
|
|
640
640
|
## Related
|
|
641
641
|
|
|
@@ -643,7 +643,7 @@ See [MCP](https://mastra.ai/docs/mcp/overview) for configuration details and how
|
|
|
643
643
|
- [Express Adapter](https://mastra.ai/reference/server/express-adapter) - Express-specific setup
|
|
644
644
|
- [NestJS Adapter](https://mastra.ai/reference/server/nestjs-adapter) - NestJS-specific setup
|
|
645
645
|
- [Custom Adapters](https://mastra.ai/docs/server/custom-adapters) - Building adapters for other frameworks
|
|
646
|
-
- [Server Configuration](https://mastra.ai/docs/server/
|
|
647
|
-
- [Authentication](https://mastra.ai/docs/
|
|
646
|
+
- [Server Configuration](https://mastra.ai/docs/server/overview) - Using `mastra build` instead
|
|
647
|
+
- [Authentication](https://mastra.ai/docs/auth/overview) - Configuring auth for your server
|
|
648
648
|
- [MastraServer Reference](https://mastra.ai/reference/server/mastra-server) - Full API reference
|
|
649
649
|
- [createRoute() Reference](https://mastra.ai/reference/server/create-route) - Creating type-safe custom routes
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Skills are reusable instructions that teach agents how to perform specific tasks. They follow the [Agent Skills specification](https://agentskills.io).
|
|
6
6
|
|
|
7
|
-
You can attach skills directly to an agent through its `skills` config, or configure them on a [workspace](https://mastra.ai/docs/
|
|
7
|
+
You can attach skills directly to an agent through its `skills` config, or configure them on a [workspace](https://mastra.ai/docs/sandbox/skills). Attach them to the agent when the skills belong to that specific agent and you want to define them in code with no workspace required. Use a workspace when you want skills discovered from the filesystem and shared across every agent that uses it. This page covers the agent-level approach, defining skills in code and loading them from files, plus resolving them per request.
|
|
8
8
|
|
|
9
9
|
## When to use agent-level skills
|
|
10
10
|
|
|
@@ -15,7 +15,7 @@ Use agent-level skills when:
|
|
|
15
15
|
- You're building packages or libraries that contain agent capabilities
|
|
16
16
|
- You need per-request skill resolution based on context
|
|
17
17
|
|
|
18
|
-
For filesystem-based skill discovery across a project, use [workspace skills](https://mastra.ai/docs/
|
|
18
|
+
For filesystem-based skill discovery across a project, use [workspace skills](https://mastra.ai/docs/sandbox/skills) instead.
|
|
19
19
|
|
|
20
20
|
## Quickstart
|
|
21
21
|
|
|
@@ -90,7 +90,7 @@ export const agent = new Agent({
|
|
|
90
90
|
})
|
|
91
91
|
```
|
|
92
92
|
|
|
93
|
-
Filesystem paths use `LocalSkillSource` under the hood, which reads `SKILL.md` files following the same format as [workspace skills](https://mastra.ai/docs/
|
|
93
|
+
Filesystem paths use `LocalSkillSource` under the hood, which reads `SKILL.md` files following the same format as [workspace skills](https://mastra.ai/docs/sandbox/skills).
|
|
94
94
|
|
|
95
95
|
## Dynamic skills
|
|
96
96
|
|
|
@@ -193,7 +193,7 @@ Visit [`.getSkill()` reference](https://mastra.ai/reference/agents/getSkill) and
|
|
|
193
193
|
|
|
194
194
|
## Related
|
|
195
195
|
|
|
196
|
-
- [Workspace skills](https://mastra.ai/docs/
|
|
196
|
+
- [Workspace skills](https://mastra.ai/docs/sandbox/skills)
|
|
197
197
|
- [`createSkill()` reference](https://mastra.ai/reference/agents/createSkill)
|
|
198
198
|
- [`.getSkill()` reference](https://mastra.ai/reference/agents/getSkill)
|
|
199
199
|
- [`.listSkills()` reference](https://mastra.ai/reference/agents/listSkills)
|
|
@@ -10,7 +10,7 @@ Storage powers:
|
|
|
10
10
|
- [Workflows](https://mastra.ai/docs/workflows/overview): Durable snapshots for suspended and resumed workflow runs.
|
|
11
11
|
- [Observability](https://mastra.ai/docs/observability/overview): Traces, spans, metrics, logs, and feedback.
|
|
12
12
|
- [Evals](https://mastra.ai/docs/evals/overview): Scores, datasets, experiments, and evaluation results.
|
|
13
|
-
- [Long-running agents](https://mastra.ai/docs/
|
|
13
|
+
- [Long-running agents](https://mastra.ai/docs/harness/durable-agents): Background tasks, schedules, goals, and thread state.
|
|
14
14
|
|
|
15
15
|
## When to configure storage
|
|
16
16
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Studio auth
|
|
4
4
|
|
|
5
|
-
When you configure [authentication](https://mastra.ai/docs/
|
|
5
|
+
When you configure [authentication](https://mastra.ai/docs/auth/overview) on your Mastra server, Studio automatically displays a login screen and enforces access control. One configuration secures both the Studio UI and your API routes.
|
|
6
6
|
|
|
7
7
|
Without authentication, Studio and all API routes are publicly accessible.
|
|
8
8
|
|
|
@@ -14,7 +14,7 @@ Without authentication, Studio and all API routes are publicly accessible.
|
|
|
14
14
|
|
|
15
15
|
## Quickstart
|
|
16
16
|
|
|
17
|
-
Add an auth provider to your Mastra server configuration. This example uses [Simple Auth](https://mastra.ai/docs/
|
|
17
|
+
Add an auth provider to your Mastra server configuration. This example uses [Simple Auth](https://mastra.ai/docs/auth/simple-auth) for a minimal setup:
|
|
18
18
|
|
|
19
19
|
```typescript
|
|
20
20
|
import { Mastra } from '@mastra/core'
|
|
@@ -35,7 +35,7 @@ export const mastra = new Mastra({
|
|
|
35
35
|
})
|
|
36
36
|
```
|
|
37
37
|
|
|
38
|
-
Once configured, Studio shows a login screen and requires authentication for all API requests. Visit the [Auth docs](https://mastra.ai/docs/
|
|
38
|
+
Once configured, Studio shows a login screen and requires authentication for all API requests. Visit the [Auth docs](https://mastra.ai/docs/auth/overview) for a full list of supported providers.
|
|
39
39
|
|
|
40
40
|
## How it works
|
|
41
41
|
|
|
@@ -157,6 +157,6 @@ Studio Auth features (SSO login, RBAC, permission-based UI) are part of the Mast
|
|
|
157
157
|
|
|
158
158
|
## Related
|
|
159
159
|
|
|
160
|
-
- [Auth overview](https://mastra.ai/docs/
|
|
160
|
+
- [Auth overview](https://mastra.ai/docs/auth/overview): Full list of supported auth providers.
|
|
161
161
|
- [Studio deployment](https://mastra.ai/docs/studio/deployment): Deploy Studio to production.
|
|
162
162
|
- [Custom API routes](https://mastra.ai/docs/server/custom-api-routes): Control authentication on individual endpoints.
|
|
@@ -57,7 +57,7 @@ You can also attach [scorers](#scorers) to measure and compare response quality
|
|
|
57
57
|
|
|
58
58
|
You can send a follow-up message in the same thread during an agent response stream. Studio shows the message as pending until the stream confirms it, then continues the response below that follow-up. Other Studio tabs that have the same thread open can observe the active stream.
|
|
59
59
|
|
|
60
|
-
Use [Editor](https://mastra.ai/docs/editor
|
|
60
|
+
Use [Editor](https://mastra.ai/docs/studio/editor) to let non-technical team members iterate on agents and version every change, plus run experiments without redeploying.
|
|
61
61
|
|
|
62
62
|
Use [Agent Builder](https://agent-builder.mastra.ai) to create and manage fully stored agents through a separate browser-based interface.
|
|
63
63
|
|
|
@@ -85,7 +85,7 @@ Run tools on their own to observe behavior and test them before assigning them t
|
|
|
85
85
|
|
|
86
86
|
Browse the files in your agent's workspace filesystem using a built-in file browser. Switch between workspace mounts, create directories, and view file contents with syntax highlighting. Writable workspaces allow directory creation and file deletion; read-only workspaces are labeled accordingly. The Skills tab lists all discovered skills with their instructions, references, and metadata. Install community skills from [skills.sh](https://skills.sh) or remove existing ones.
|
|
87
87
|
|
|
88
|
-
See [workspaces](https://mastra.ai/docs/
|
|
88
|
+
See [workspaces](https://mastra.ai/docs/sandbox/overview) for configuration details.
|
|
89
89
|
|
|
90
90
|
### Request context
|
|
91
91
|
|