@mastra/core
Version:
Mastra is a framework for building AI-powered applications and agents with a modern TypeScript stack.
868 lines • 25.1 kB
JSON
{
"name": "@mastra/core",
"version": "1.36.0",
"license": "Apache-2.0",
"type": "module",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"files": [
"dist",
"CHANGELOG.md",
"./**/*.d.ts"
],
"exports": {
".": {
"import": {
"types": "./dist/index.d.ts",
"default": "./dist/index.js"
},
"require": {
"types": "./dist/index.d.ts",
"default": "./dist/index.cjs"
}
},
"./a2a": {
"import": {
"types": "./dist/a2a/index.d.ts",
"default": "./dist/a2a/index.js"
},
"require": {
"types": "./dist/a2a/index.d.ts",
"default": "./dist/a2a/index.cjs"
}
},
"./a2a/client": {
"import": {
"types": "./dist/a2a/client.d.ts",
"default": "./dist/a2a/client.js"
},
"require": {
"types": "./dist/a2a/client.d.ts",
"default": "./dist/a2a/client.cjs"
}
},
"./agent": {
"import": {
"types": "./dist/agent/index.d.ts",
"default": "./dist/agent/index.js"
},
"require": {
"types": "./dist/agent/index.d.ts",
"default": "./dist/agent/index.cjs"
}
},
"./agent/durable": {
"import": {
"types": "./dist/agent/durable/index.d.ts",
"default": "./dist/agent/durable/index.js"
},
"require": {
"types": "./dist/agent/durable/index.d.ts",
"default": "./dist/agent/durable/index.cjs"
}
},
"./agent/message-list": {
"import": {
"types": "./dist/agent/message-list/index.d.ts",
"default": "./dist/agent/message-list/index.js"
},
"require": {
"types": "./dist/agent/message-list/index.d.ts",
"default": "./dist/agent/message-list/index.cjs"
}
},
"./auth": {
"import": {
"types": "./dist/auth/index.d.ts",
"default": "./dist/auth/index.js"
},
"require": {
"types": "./dist/auth/index.d.ts",
"default": "./dist/auth/index.cjs"
}
},
"./auth/ee": {
"import": {
"types": "./dist/auth/ee/index.d.ts",
"default": "./dist/auth/ee/index.js"
},
"require": {
"types": "./dist/auth/ee/index.d.ts",
"default": "./dist/auth/ee/index.cjs"
}
},
"./agent-builder/ee": {
"import": {
"types": "./dist/agent-builder/ee/index.d.ts",
"default": "./dist/agent-builder/ee/index.js"
},
"require": {
"types": "./dist/agent-builder/ee/index.d.ts",
"default": "./dist/agent-builder/ee/index.cjs"
}
},
"./background-tasks": {
"import": {
"types": "./dist/background-tasks/index.d.ts",
"default": "./dist/background-tasks/index.js"
},
"require": {
"types": "./dist/background-tasks/index.d.ts",
"default": "./dist/background-tasks/index.cjs"
}
},
"./browser": {
"import": {
"types": "./dist/browser/index.d.ts",
"default": "./dist/browser/index.js"
},
"require": {
"types": "./dist/browser/index.d.ts",
"default": "./dist/browser/index.cjs"
}
},
"./bundler": {
"import": {
"types": "./dist/bundler/index.d.ts",
"default": "./dist/bundler/index.js"
},
"require": {
"types": "./dist/bundler/index.d.ts",
"default": "./dist/bundler/index.cjs"
}
},
"./cache": {
"import": {
"types": "./dist/cache/index.d.ts",
"default": "./dist/cache/index.js"
},
"require": {
"types": "./dist/cache/index.d.ts",
"default": "./dist/cache/index.cjs"
}
},
"./channels": {
"import": {
"types": "./dist/channels/index.d.ts",
"default": "./dist/channels/index.js"
},
"require": {
"types": "./dist/channels/index.d.ts",
"default": "./dist/channels/index.cjs"
}
},
"./datasets": {
"import": {
"types": "./dist/datasets/index.d.ts",
"default": "./dist/datasets/index.js"
},
"require": {
"types": "./dist/datasets/index.d.ts",
"default": "./dist/datasets/index.cjs"
}
},
"./deployer": {
"import": {
"types": "./dist/deployer/index.d.ts",
"default": "./dist/deployer/index.js"
},
"require": {
"types": "./dist/deployer/index.d.ts",
"default": "./dist/deployer/index.cjs"
}
},
"./di": {
"import": {
"types": "./dist/di/index.d.ts",
"default": "./dist/di/index.js"
},
"require": {
"types": "./dist/di/index.d.ts",
"default": "./dist/di/index.cjs"
}
},
"./editor": {
"import": {
"types": "./dist/editor/index.d.ts",
"default": "./dist/editor/index.js"
},
"require": {
"types": "./dist/editor/index.d.ts",
"default": "./dist/editor/index.cjs"
}
},
"./error": {
"import": {
"types": "./dist/error/index.d.ts",
"default": "./dist/error/index.js"
},
"require": {
"types": "./dist/error/index.d.ts",
"default": "./dist/error/index.cjs"
}
},
"./evals": {
"import": {
"types": "./dist/evals/index.d.ts",
"default": "./dist/evals/index.js"
},
"require": {
"types": "./dist/evals/index.d.ts",
"default": "./dist/evals/index.cjs"
}
},
"./evals/scoreTraces": {
"import": {
"types": "./dist/evals/scoreTraces/index.d.ts",
"default": "./dist/evals/scoreTraces/index.js"
},
"require": {
"types": "./dist/evals/scoreTraces/index.d.ts",
"default": "./dist/evals/scoreTraces/index.cjs"
}
},
"./events": {
"import": {
"types": "./dist/events/index.d.ts",
"default": "./dist/events/index.js"
},
"require": {
"types": "./dist/events/index.d.ts",
"default": "./dist/events/index.cjs"
}
},
"./features": {
"import": {
"types": "./dist/features/index.d.ts",
"default": "./dist/features/index.js"
},
"require": {
"types": "./dist/features/index.d.ts",
"default": "./dist/features/index.cjs"
}
},
"./harness": {
"import": {
"types": "./dist/harness/index.d.ts",
"default": "./dist/harness/index.js"
},
"require": {
"types": "./dist/harness/index.d.ts",
"default": "./dist/harness/index.cjs"
}
},
"./hooks": {
"import": {
"types": "./dist/hooks/index.d.ts",
"default": "./dist/hooks/index.js"
},
"require": {
"types": "./dist/hooks/index.d.ts",
"default": "./dist/hooks/index.cjs"
}
},
"./integration": {
"import": {
"types": "./dist/integration/index.d.ts",
"default": "./dist/integration/index.js"
},
"require": {
"types": "./dist/integration/index.d.ts",
"default": "./dist/integration/index.cjs"
}
},
"./llm": {
"import": {
"types": "./dist/llm/index.d.ts",
"default": "./dist/llm/index.js"
},
"require": {
"types": "./dist/llm/index.d.ts",
"default": "./dist/llm/index.cjs"
}
},
"./logger": {
"import": {
"types": "./dist/logger/index.d.ts",
"default": "./dist/logger/index.js"
},
"require": {
"types": "./dist/logger/index.d.ts",
"default": "./dist/logger/index.cjs"
}
},
"./loop": {
"import": {
"types": "./dist/loop/index.d.ts",
"default": "./dist/loop/index.js"
},
"require": {
"types": "./dist/loop/index.d.ts",
"default": "./dist/loop/index.cjs"
}
},
"./mastra": {
"import": {
"types": "./dist/mastra/index.d.ts",
"default": "./dist/mastra/index.js"
},
"require": {
"types": "./dist/mastra/index.d.ts",
"default": "./dist/mastra/index.cjs"
}
},
"./mcp": {
"import": {
"types": "./dist/mcp/index.d.ts",
"default": "./dist/mcp/index.js"
},
"require": {
"types": "./dist/mcp/index.d.ts",
"default": "./dist/mcp/index.cjs"
}
},
"./memory": {
"import": {
"types": "./dist/memory/index.d.ts",
"default": "./dist/memory/index.js"
},
"require": {
"types": "./dist/memory/index.d.ts",
"default": "./dist/memory/index.cjs"
}
},
"./observability": {
"import": {
"types": "./dist/observability/index.d.ts",
"default": "./dist/observability/index.js"
},
"require": {
"types": "./dist/observability/index.d.ts",
"default": "./dist/observability/index.cjs"
}
},
"./processor-provider": {
"import": {
"types": "./dist/processor-provider/index.d.ts",
"default": "./dist/processor-provider/index.js"
},
"require": {
"types": "./dist/processor-provider/index.d.ts",
"default": "./dist/processor-provider/index.cjs"
}
},
"./processors": {
"import": {
"types": "./dist/processors/index.d.ts",
"default": "./dist/processors/index.js"
},
"require": {
"types": "./dist/processors/index.d.ts",
"default": "./dist/processors/index.cjs"
}
},
"./relevance": {
"import": {
"types": "./dist/relevance/index.d.ts",
"default": "./dist/relevance/index.js"
},
"require": {
"types": "./dist/relevance/index.d.ts",
"default": "./dist/relevance/index.cjs"
}
},
"./request-context": {
"import": {
"types": "./dist/request-context/index.d.ts",
"default": "./dist/request-context/index.js"
},
"require": {
"types": "./dist/request-context/index.d.ts",
"default": "./dist/request-context/index.cjs"
}
},
"./schema": {
"import": {
"types": "./dist/schema/index.d.ts",
"default": "./dist/schema/index.js"
},
"require": {
"types": "./dist/schema/index.d.ts",
"default": "./dist/schema/index.cjs"
}
},
"./server": {
"import": {
"types": "./dist/server/index.d.ts",
"default": "./dist/server/index.js"
},
"require": {
"types": "./dist/server/index.d.ts",
"default": "./dist/server/index.cjs"
}
},
"./storage": {
"import": {
"types": "./dist/storage/index.d.ts",
"default": "./dist/storage/index.js"
},
"require": {
"types": "./dist/storage/index.d.ts",
"default": "./dist/storage/index.cjs"
}
},
"./stream": {
"import": {
"types": "./dist/stream/index.d.ts",
"default": "./dist/stream/index.js"
},
"require": {
"types": "./dist/stream/index.d.ts",
"default": "./dist/stream/index.cjs"
}
},
"./tool-loop-agent": {
"import": {
"types": "./dist/tool-loop-agent/index.d.ts",
"default": "./dist/tool-loop-agent/index.js"
},
"require": {
"types": "./dist/tool-loop-agent/index.d.ts",
"default": "./dist/tool-loop-agent/index.cjs"
}
},
"./tool-provider": {
"import": {
"types": "./dist/tool-provider/index.d.ts",
"default": "./dist/tool-provider/index.js"
},
"require": {
"types": "./dist/tool-provider/index.d.ts",
"default": "./dist/tool-provider/index.cjs"
}
},
"./tools": {
"import": {
"types": "./dist/tools/index.d.ts",
"default": "./dist/tools/index.js"
},
"require": {
"types": "./dist/tools/index.d.ts",
"default": "./dist/tools/index.cjs"
}
},
"./tts": {
"import": {
"types": "./dist/tts/index.d.ts",
"default": "./dist/tts/index.js"
},
"require": {
"types": "./dist/tts/index.d.ts",
"default": "./dist/tts/index.cjs"
}
},
"./types": {
"import": {
"types": "./dist/types/index.d.ts",
"default": "./dist/types/index.js"
},
"require": {
"types": "./dist/types/index.d.ts",
"default": "./dist/types/index.cjs"
}
},
"./vector": {
"import": {
"types": "./dist/vector/index.d.ts",
"default": "./dist/vector/index.js"
},
"require": {
"types": "./dist/vector/index.d.ts",
"default": "./dist/vector/index.cjs"
}
},
"./vector/filter": {
"import": {
"types": "./dist/vector/filter/index.d.ts",
"default": "./dist/vector/filter/index.js"
},
"require": {
"types": "./dist/vector/filter/index.d.ts",
"default": "./dist/vector/filter/index.cjs"
}
},
"./voice": {
"import": {
"types": "./dist/voice/index.d.ts",
"default": "./dist/voice/index.js"
},
"require": {
"types": "./dist/voice/index.d.ts",
"default": "./dist/voice/index.cjs"
}
},
"./workflows": {
"import": {
"types": "./dist/workflows/index.d.ts",
"default": "./dist/workflows/index.js"
},
"require": {
"types": "./dist/workflows/index.d.ts",
"default": "./dist/workflows/index.cjs"
}
},
"./workflows/evented": {
"import": {
"types": "./dist/workflows/evented/index.d.ts",
"default": "./dist/workflows/evented/index.js"
},
"require": {
"types": "./dist/workflows/evented/index.d.ts",
"default": "./dist/workflows/evented/index.cjs"
}
},
"./worker": {
"import": {
"types": "./dist/worker/index.d.ts",
"default": "./dist/worker/index.js"
},
"require": {
"types": "./dist/worker/index.d.ts",
"default": "./dist/worker/index.cjs"
}
},
"./workspace": {
"import": {
"types": "./dist/workspace/index.d.ts",
"default": "./dist/workspace/index.js"
},
"require": {
"types": "./dist/workspace/index.d.ts",
"default": "./dist/workspace/index.cjs"
}
},
"./tools/is-vercel-tool": {
"import": {
"types": "./dist/tools/is-vercel-tool.d.ts",
"default": "./dist/tools/is-vercel-tool.js"
},
"require": {
"types": "./dist/tools/is-vercel-tool.d.ts",
"default": "./dist/tools/is-vercel-tool.cjs"
}
},
"./workflows/_constants": {
"import": {
"types": "./dist/workflows/constants.d.ts",
"default": "./dist/workflows/constants.js"
},
"require": {
"types": "./dist/workflows/constants.d.ts",
"default": "./dist/workflows/constants.cjs"
}
},
"./network/vNext": {
"import": {
"types": "./dist/network/vNext/index.d.ts",
"default": "./dist/network/vNext/index.js"
},
"require": {
"types": "./dist/network/vNext/index.d.ts",
"default": "./dist/network/vNext/index.cjs"
}
},
"./observability/context-storage": {
"import": {
"types": "./dist/observability/context-storage.d.ts",
"default": "./dist/observability/context-storage.js"
},
"require": {
"types": "./dist/observability/context-storage.d.ts",
"default": "./dist/observability/context-storage.cjs"
}
},
"./utils": {
"import": {
"types": "./dist/utils.d.ts",
"default": "./dist/utils.js"
},
"require": {
"types": "./dist/utils.d.ts",
"default": "./dist/utils.cjs"
}
},
"./base": {
"import": {
"types": "./dist/base.d.ts",
"default": "./dist/base.js"
},
"require": {
"types": "./dist/base.d.ts",
"default": "./dist/base.cjs"
}
},
"./telemetry/otel-vendor": {
"import": {
"types": "./dist/telemetry/otel-vendor.d.ts",
"default": "./dist/telemetry/otel-vendor.js"
},
"require": {
"types": "./dist/telemetry/otel-vendor.d.ts",
"default": "./dist/telemetry/otel-vendor.cjs"
}
},
"./test-utils/llm-mock": {
"import": {
"types": "./dist/test-utils/llm-mock.d.ts",
"default": "./dist/test-utils/llm-mock.js"
},
"require": {
"types": "./dist/test-utils/llm-mock.d.ts",
"default": "./dist/test-utils/llm-mock.cjs"
}
},
"./utils/zod-to-json": {
"import": {
"types": "./dist/zod-to-json.d.ts",
"default": "./dist/zod-to-json.js"
},
"require": {
"types": "./dist/zod-to-json.d.ts",
"default": "./dist/zod-to-json.cjs"
}
},
"./loop/server": {
"import": {
"types": "./dist/loop/server.d.ts",
"default": "./dist/loop/server.js"
},
"require": {
"types": "./dist/loop/server.d.ts",
"default": "./dist/loop/server.cjs"
}
},
"./storage/constants": {
"import": {
"types": "./dist/storage/constants.d.ts",
"default": "./dist/storage/constants.js"
},
"require": {
"types": "./dist/storage/constants.d.ts",
"default": "./dist/storage/constants.cjs"
}
},
"./package.json": "./package.json",
"./storage/domains/agents": {
"import": {
"types": "./dist/storage/domains/agents/index.d.ts",
"default": "./dist/storage/domains/agents/index.js"
},
"require": {
"types": "./dist/storage/domains/agents/index.d.ts",
"default": "./dist/storage/domains/agents/index.cjs"
}
},
"./storage/domains/mcp-clients": {
"import": {
"types": "./dist/storage/domains/mcp-clients/index.d.ts",
"default": "./dist/storage/domains/mcp-clients/index.js"
},
"require": {
"types": "./dist/storage/domains/mcp-clients/index.d.ts",
"default": "./dist/storage/domains/mcp-clients/index.cjs"
}
},
"./storage/domains/mcp-servers": {
"import": {
"types": "./dist/storage/domains/mcp-servers/index.d.ts",
"default": "./dist/storage/domains/mcp-servers/index.js"
},
"require": {
"types": "./dist/storage/domains/mcp-servers/index.d.ts",
"default": "./dist/storage/domains/mcp-servers/index.cjs"
}
},
"./storage/domains/prompt-blocks": {
"import": {
"types": "./dist/storage/domains/prompt-blocks/index.d.ts",
"default": "./dist/storage/domains/prompt-blocks/index.js"
},
"require": {
"types": "./dist/storage/domains/prompt-blocks/index.d.ts",
"default": "./dist/storage/domains/prompt-blocks/index.cjs"
}
},
"./storage/domains/scorer-definitions": {
"import": {
"types": "./dist/storage/domains/scorer-definitions/index.d.ts",
"default": "./dist/storage/domains/scorer-definitions/index.js"
},
"require": {
"types": "./dist/storage/domains/scorer-definitions/index.d.ts",
"default": "./dist/storage/domains/scorer-definitions/index.cjs"
}
},
"./storage/domains/skills": {
"import": {
"types": "./dist/storage/domains/skills/index.d.ts",
"default": "./dist/storage/domains/skills/index.js"
},
"require": {
"types": "./dist/storage/domains/skills/index.d.ts",
"default": "./dist/storage/domains/skills/index.cjs"
}
},
"./storage/domains/favorites": {
"import": {
"types": "./dist/storage/domains/favorites/index.d.ts",
"default": "./dist/storage/domains/favorites/index.js"
},
"require": {
"types": "./dist/storage/domains/favorites/index.d.ts",
"default": "./dist/storage/domains/favorites/index.cjs"
}
},
"./storage/domains/workspaces": {
"import": {
"types": "./dist/storage/domains/workspaces/index.d.ts",
"default": "./dist/storage/domains/workspaces/index.js"
},
"require": {
"types": "./dist/storage/domains/workspaces/index.d.ts",
"default": "./dist/storage/domains/workspaces/index.cjs"
}
}
},
"sideEffects": false,
"dependencies": {
"@a2a-js/sdk": "~0.3.13",
"@ai-sdk/provider-utils-v5": "npm:@ai-sdk/provider-utils@3.0.25",
"@ai-sdk/provider-utils-v6": "npm:@ai-sdk/provider-utils@4.0.27",
"@ai-sdk/provider-v5": "npm:@ai-sdk/provider@2.0.3",
"@ai-sdk/provider-v6": "npm:@ai-sdk/provider@3.0.10",
"@ai-sdk/ui-utils-v5": "npm:@ai-sdk/ui-utils@1.2.11",
"@isaacs/ttlcache": "^2.1.4",
"@lukeed/uuid": "^2.0.1",
"@modelcontextprotocol/sdk": "^1.29.0",
"@sindresorhus/slugify": "^2.2.1",
"@standard-schema/spec": "^1.1.0",
"ajv": "^8.18.0",
"chat": "^4.29.0",
"croner": "^10.0.1",
"dotenv": "^17.3.1",
"execa": "^9.6.1",
"fastq": "^1.19.1",
"gray-matter": "^4.0.3",
"hono": "^4.12.8",
"hono-openapi": "^1.3.0",
"ignore": "^7.0.5",
"json-schema": "^0.4.0",
"tokenx": "^1.3.0",
"lru-cache": "^11.2.7",
"p-map": "^7.0.4",
"p-retry": "^7.1.1",
"picomatch": "^4.0.3",
"posthog-node": "^5.30.6",
"ws": "^8.20.0",
"xxhash-wasm": "^1.1.0",
"@mastra/schema-compat": "1.2.10"
},
"peerDependencies": {
"zod": "^3.25.0 || ^4.0.0"
},
"devDependencies": {
"@ai-sdk/anthropic-v5": "npm:@ai-sdk/anthropic@2.0.79",
"@ai-sdk/anthropic-v6": "npm:@ai-sdk/anthropic@3.0.76",
"@ai-sdk/azure": "^2.0.108",
"@ai-sdk/cerebras-v5": "npm:@ai-sdk/cerebras@1.0.44",
"@ai-sdk/deepinfra-v5": "npm:@ai-sdk/deepinfra@1.0.42",
"@ai-sdk/deepseek-v5": "npm:@ai-sdk/deepseek@1.0.40",
"@ai-sdk/google-v5": "npm:@ai-sdk/google@2.0.72",
"@ai-sdk/google-v6": "npm:@ai-sdk/google@3.0.70",
"@ai-sdk/groq-v5": "npm:@ai-sdk/groq@2.0.40",
"@ai-sdk/groq-v6": "npm:@ai-sdk/groq@3.0.39",
"@ai-sdk/mistral-v5": "npm:@ai-sdk/mistral@2.0.33",
"@ai-sdk/mistral-v6": "npm:@ai-sdk/mistral@3.0.36",
"@ai-sdk/openai": "^1.3.24",
"@ai-sdk/openai-compatible-v5": "npm:@ai-sdk/openai-compatible@1.0.39",
"@ai-sdk/openai-v5": "npm:@ai-sdk/openai@2.0.106",
"@ai-sdk/openai-v6": "npm:@ai-sdk/openai@3.0.63",
"@ai-sdk/perplexity-v5": "npm:@ai-sdk/perplexity@2.0.30",
"@ai-sdk/provider-utils-v4": "npm:@ai-sdk/provider-utils@2.2.8",
"@ai-sdk/provider-v4": "npm:@ai-sdk/provider@1.1.3",
"@ai-sdk/togetherai-v5": "npm:@ai-sdk/togetherai@1.0.42",
"@ai-sdk/xai-v5": "npm:@ai-sdk/xai@2.0.72",
"@ai-sdk/xai-v6": "npm:@ai-sdk/xai@3.0.89",
"@ast-grep/napi": "^0.40.5",
"@babel/core": "^7.29.0",
"@openrouter/ai-sdk-provider": "^0.4.6",
"@openrouter/ai-sdk-provider-v5": "npm:@openrouter/ai-sdk-provider@1.2.3",
"@types/babel__core": "^7.20.5",
"@types/json-schema": "^7.0.15",
"@types/node": "22.19.15",
"@types/picomatch": "4.0.2",
"@types/ws": "^8.18.1",
"@vitest/coverage-v8": "4.1.5",
"@vitest/ui": "4.1.5",
"eslint": "^10.2.1",
"fast-deep-equal": "^3.1.3",
"tinyglobby": "^0.2.16",
"rollup": "^4.59.0",
"ts-morph": "^27.0.2",
"tsup": "^8.5.1",
"typescript": "^6.0.3",
"vitest": "4.1.5",
"vscode-jsonrpc": "^8.2.1",
"vscode-languageserver-protocol": "^3.17.5",
"zod": "^4.3.6",
"@internal/ai-sdk-v5": "0.0.44",
"@internal/ai-sdk-v4": "0.0.44",
"@internal/ai-v6": "0.0.44",
"@internal/external-types": "0.0.47",
"@internal/core": "0.0.0",
"@internal/lint": "0.0.97",
"@internal/llm-recorder": "0.0.33",
"@internal/test-utils": "0.0.33",
"@internal/types-builder": "0.0.72"
},
"engines": {
"node": ">=22.13.0"
},
"keywords": [
"ai",
"llm",
"llms",
"agent",
"agents",
"vectorstore",
"embeddings",
"rag",
"evals",
"memory",
"tools",
"typescript",
"otel",
"framework"
],
"homepage": "https://mastra.ai",
"repository": {
"type": "git",
"url": "git+https://github.com/mastra-ai/mastra.git",
"directory": "packages/core"
},
"bugs": {
"url": "https://github.com/mastra-ai/mastra/issues"
},
"scripts": {
"check": "tsc --noEmit",
"typecheck": "tsc --noEmit -p tsconfig.build.json",
"lint": "eslint .",
"build:lib": "tsup --silent --config tsup.config.ts --no-dts",
"build:patch-commonjs": "node ../../scripts/commonjs-tsc-fixer.js",
"build:watch": "pnpm build:lib --watch",
"generate:providers": "pnpx tsx scripts/generate-providers.ts",
"generate:model-router": "pnpx tsx scripts/generate-providers.ts && pnpx tsx scripts/generate-model-docs.ts && cd ../.. && pnpm prettier:changed",
"test:unit": "vitest run --exclude '**/tool-builder/**'",
"test": "npm run test:unit"
}
}