@mastra/core 1.9.0 → 1.10.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/CHANGELOG.md +202 -0
- package/dist/agent/agent.d.ts +22 -3
- package/dist/agent/agent.d.ts.map +1 -1
- package/dist/agent/index.cjs +13 -13
- package/dist/agent/index.js +2 -2
- package/dist/agent/message-list/index.cjs +18 -18
- package/dist/agent/message-list/index.js +1 -1
- package/dist/agent/message-list/message-list.d.ts.map +1 -1
- package/dist/{chunk-IOY7Y5GV.js → chunk-3VVNJPTO.js} +602 -187
- package/dist/chunk-3VVNJPTO.js.map +1 -0
- package/dist/{chunk-VDKWYUGC.cjs → chunk-5WBEMKE2.cjs} +7 -3
- package/dist/chunk-5WBEMKE2.cjs.map +1 -0
- package/dist/{chunk-H5S4PS44.cjs → chunk-76Q75VI4.cjs} +602 -187
- package/dist/chunk-76Q75VI4.cjs.map +1 -0
- package/dist/{chunk-ZBESCKPX.cjs → chunk-7AHCLTZZ.cjs} +1572 -36
- package/dist/chunk-7AHCLTZZ.cjs.map +1 -0
- package/dist/{chunk-SEKQJ447.js → chunk-ACAILOJE.js} +166 -68
- package/dist/chunk-ACAILOJE.js.map +1 -0
- package/dist/{chunk-YIJZBU54.cjs → chunk-BCSVBOAN.cjs} +240 -463
- package/dist/chunk-BCSVBOAN.cjs.map +1 -0
- package/dist/{chunk-ZVWVQ6MG.js → chunk-CY4ZWL2X.js} +8 -3
- package/dist/chunk-CY4ZWL2X.js.map +1 -0
- package/dist/{chunk-ET7GXCHS.js → chunk-DIKRJVK6.js} +5 -5
- package/dist/{chunk-ET7GXCHS.js.map → chunk-DIKRJVK6.js.map} +1 -1
- package/dist/{chunk-P6ZX7OKT.cjs → chunk-E6I5LBDM.cjs} +7 -7
- package/dist/{chunk-P6ZX7OKT.cjs.map → chunk-E6I5LBDM.cjs.map} +1 -1
- package/dist/{chunk-BFV3GSGS.js → chunk-FT5Q6XTK.js} +1546 -22
- package/dist/chunk-FT5Q6XTK.js.map +1 -0
- package/dist/{chunk-K54LFB4P.js → chunk-FXOWXS4O.js} +3 -3
- package/dist/{chunk-K54LFB4P.js.map → chunk-FXOWXS4O.js.map} +1 -1
- package/dist/{chunk-QNXY3J6B.cjs → chunk-GCRPNAAR.cjs} +22 -19
- package/dist/chunk-GCRPNAAR.cjs.map +1 -0
- package/dist/{chunk-5M3RMO7U.js → chunk-GTA5BKXZ.js} +8 -8
- package/dist/{chunk-5M3RMO7U.js.map → chunk-GTA5BKXZ.js.map} +1 -1
- package/dist/{chunk-G5R2755Q.cjs → chunk-HAIQ57YB.cjs} +53 -20
- package/dist/chunk-HAIQ57YB.cjs.map +1 -0
- package/dist/{chunk-3ZBLD2Y4.cjs → chunk-HH76UOJL.cjs} +2 -2
- package/dist/{chunk-3ZBLD2Y4.cjs.map → chunk-HH76UOJL.cjs.map} +1 -1
- package/dist/{chunk-HAGCXIBX.cjs → chunk-HNYQITSV.cjs} +9 -9
- package/dist/{chunk-HAGCXIBX.cjs.map → chunk-HNYQITSV.cjs.map} +1 -1
- package/dist/{chunk-GJTLWOKJ.js → chunk-HQA3IBLZ.js} +51 -18
- package/dist/chunk-HQA3IBLZ.js.map +1 -0
- package/dist/{chunk-4BXXAZ75.js → chunk-HQTHWVAK.js} +15 -7
- package/dist/chunk-HQTHWVAK.js.map +1 -0
- package/dist/{chunk-CCLV5CAA.js → chunk-JGOH7RWL.js} +7 -3
- package/dist/chunk-JGOH7RWL.js.map +1 -0
- package/dist/{chunk-Y6TGIUGL.js → chunk-LSF5WJ6G.js} +2 -2
- package/dist/{chunk-Y6TGIUGL.js.map → chunk-LSF5WJ6G.js.map} +1 -1
- package/dist/{chunk-D6HO5QAM.cjs → chunk-M26GEN4C.cjs} +14 -9
- package/dist/chunk-M26GEN4C.cjs.map +1 -0
- package/dist/{chunk-4P35AVPE.cjs → chunk-MEMYFFOL.cjs} +256 -157
- package/dist/chunk-MEMYFFOL.cjs.map +1 -0
- package/dist/{chunk-BQ355Z3O.js → chunk-NUZWQA4J.js} +4 -4
- package/dist/{chunk-BQ355Z3O.js.map → chunk-NUZWQA4J.js.map} +1 -1
- package/dist/{chunk-JIRB5LX4.js → chunk-OHX36YXF.js} +5 -3
- package/dist/chunk-OHX36YXF.js.map +1 -0
- package/dist/{chunk-PKORY4ZZ.cjs → chunk-OOTLMVNN.cjs} +107 -7
- package/dist/chunk-OOTLMVNN.cjs.map +1 -0
- package/dist/{chunk-D4M6E4OQ.cjs → chunk-OWZ6QT24.cjs} +16 -8
- package/dist/chunk-OWZ6QT24.cjs.map +1 -0
- package/dist/{chunk-6OHS6ZQ3.js → chunk-PDJCIONR.js} +8 -8
- package/dist/{chunk-6OHS6ZQ3.js.map → chunk-PDJCIONR.js.map} +1 -1
- package/dist/{chunk-WU2P7XOU.cjs → chunk-PP4G2TZZ.cjs} +20 -20
- package/dist/{chunk-WU2P7XOU.cjs.map → chunk-PP4G2TZZ.cjs.map} +1 -1
- package/dist/{chunk-VWAK25TU.js → chunk-SBBWRNZA.js} +10 -7
- package/dist/chunk-SBBWRNZA.js.map +1 -0
- package/dist/{chunk-TU4YMXOQ.js → chunk-TJIFNVPX.js} +6 -6
- package/dist/{chunk-TU4YMXOQ.js.map → chunk-TJIFNVPX.js.map} +1 -1
- package/dist/{chunk-V5YNS2QO.cjs → chunk-XJNQHPBJ.cjs} +15 -15
- package/dist/{chunk-V5YNS2QO.cjs.map → chunk-XJNQHPBJ.cjs.map} +1 -1
- package/dist/{chunk-MVYP55NA.js → chunk-YC6Z75K2.js} +113 -336
- package/dist/chunk-YC6Z75K2.js.map +1 -0
- package/dist/{chunk-3ZF7IC6Q.cjs → chunk-YZMSJKAK.cjs} +5 -3
- package/dist/chunk-YZMSJKAK.cjs.map +1 -0
- package/dist/{chunk-L3WDI7HP.cjs → chunk-Z2X5VTYJ.cjs} +65 -65
- package/dist/{chunk-L3WDI7HP.cjs.map → chunk-Z2X5VTYJ.cjs.map} +1 -1
- package/dist/{chunk-BN5MV2QK.cjs → chunk-Z52OAJ73.cjs} +4 -4
- package/dist/{chunk-BN5MV2QK.cjs.map → chunk-Z52OAJ73.cjs.map} +1 -1
- package/dist/{chunk-WYPSC6CO.js → chunk-ZBU6P4JV.js} +104 -4
- package/dist/chunk-ZBU6P4JV.js.map +1 -0
- package/dist/datasets/experiment/index.d.ts.map +1 -1
- package/dist/datasets/experiment/scorer.d.ts.map +1 -1
- package/dist/datasets/index.cjs +17 -17
- package/dist/datasets/index.js +2 -2
- package/dist/di/index.cjs +4 -4
- package/dist/di/index.js +1 -1
- package/dist/docs/SKILL.md +1 -1
- package/dist/docs/assets/SOURCE_MAP.json +443 -384
- package/dist/docs/references/docs-agents-agent-approval.md +61 -31
- package/dist/docs/references/docs-agents-supervisor-agents.md +1 -1
- package/dist/docs/references/docs-memory-observational-memory.md +9 -0
- package/dist/docs/references/docs-memory-semantic-recall.md +17 -1
- package/dist/docs/references/docs-workspace-skills.md +7 -5
- package/dist/docs/references/reference-agents-agent.md +20 -20
- package/dist/docs/references/reference-agents-generate.md +200 -66
- package/dist/docs/references/reference-agents-generateLegacy.md +77 -35
- package/dist/docs/references/reference-agents-getDefaultGenerateOptions.md +4 -6
- package/dist/docs/references/reference-agents-getDefaultOptions.md +4 -6
- package/dist/docs/references/reference-agents-getDefaultStreamOptions.md +4 -6
- package/dist/docs/references/reference-agents-getDescription.md +1 -1
- package/dist/docs/references/reference-agents-getInstructions.md +4 -6
- package/dist/docs/references/reference-agents-getLLM.md +6 -8
- package/dist/docs/references/reference-agents-getMemory.md +4 -6
- package/dist/docs/references/reference-agents-getModel.md +4 -6
- package/dist/docs/references/reference-agents-getTools.md +5 -7
- package/dist/docs/references/reference-agents-getVoice.md +4 -6
- package/dist/docs/references/reference-agents-listAgents.md +4 -6
- package/dist/docs/references/reference-agents-listScorers.md +4 -6
- package/dist/docs/references/reference-agents-listTools.md +4 -6
- package/dist/docs/references/reference-agents-listWorkflows.md +4 -6
- package/dist/docs/references/reference-agents-network.md +69 -23
- package/dist/docs/references/reference-ai-sdk-chat-route.md +7 -7
- package/dist/docs/references/reference-ai-sdk-network-route.md +3 -3
- package/dist/docs/references/reference-ai-sdk-to-ai-sdk-stream.md +9 -9
- package/dist/docs/references/reference-ai-sdk-with-mastra.md +12 -12
- package/dist/docs/references/reference-ai-sdk-workflow-route.md +3 -3
- package/dist/docs/references/reference-auth-auth0.md +6 -6
- package/dist/docs/references/reference-auth-clerk.md +5 -5
- package/dist/docs/references/reference-auth-firebase.md +7 -7
- package/dist/docs/references/reference-auth-jwt.md +1 -1
- package/dist/docs/references/reference-auth-supabase.md +4 -4
- package/dist/docs/references/reference-auth-workos.md +6 -6
- package/dist/docs/references/reference-core-addGateway.md +2 -2
- package/dist/docs/references/reference-core-getAgent.md +2 -2
- package/dist/docs/references/reference-core-getAgentById.md +2 -2
- package/dist/docs/references/reference-core-getDeployer.md +1 -1
- package/dist/docs/references/reference-core-getGateway.md +2 -2
- package/dist/docs/references/reference-core-getGatewayById.md +2 -2
- package/dist/docs/references/reference-core-getLogger.md +1 -1
- package/dist/docs/references/reference-core-getMCPServer.md +2 -2
- package/dist/docs/references/reference-core-getMCPServerById.md +3 -3
- package/dist/docs/references/reference-core-getMemory.md +2 -2
- package/dist/docs/references/reference-core-getScorer.md +2 -2
- package/dist/docs/references/reference-core-getScorerById.md +2 -2
- package/dist/docs/references/reference-core-getServer.md +1 -1
- package/dist/docs/references/reference-core-getStorage.md +1 -1
- package/dist/docs/references/reference-core-getStoredAgentById.md +18 -20
- package/dist/docs/references/reference-core-getTelemetry.md +1 -1
- package/dist/docs/references/reference-core-getVector.md +2 -2
- package/dist/docs/references/reference-core-getWorkflow.md +3 -3
- package/dist/docs/references/reference-core-listAgents.md +1 -1
- package/dist/docs/references/reference-core-listGateways.md +1 -1
- package/dist/docs/references/reference-core-listLogs.md +9 -11
- package/dist/docs/references/reference-core-listLogsByRunId.md +9 -9
- package/dist/docs/references/reference-core-listMCPServers.md +1 -1
- package/dist/docs/references/reference-core-listMemory.md +1 -1
- package/dist/docs/references/reference-core-listScorers.md +1 -1
- package/dist/docs/references/reference-core-listStoredAgents.md +9 -11
- package/dist/docs/references/reference-core-listVectors.md +1 -1
- package/dist/docs/references/reference-core-listWorkflows.md +2 -2
- package/dist/docs/references/reference-core-mastra-class.md +17 -17
- package/dist/docs/references/reference-core-mastra-model-gateway.md +15 -15
- package/dist/docs/references/reference-core-setLogger.md +2 -4
- package/dist/docs/references/reference-core-setStorage.md +1 -1
- package/dist/docs/references/reference-datasets-addItem.md +20 -4
- package/dist/docs/references/reference-datasets-addItems.md +8 -2
- package/dist/docs/references/reference-datasets-compareExperiments.md +15 -3
- package/dist/docs/references/reference-datasets-create.md +6 -6
- package/dist/docs/references/reference-datasets-dataset.md +1 -1
- package/dist/docs/references/reference-datasets-delete.md +2 -2
- package/dist/docs/references/reference-datasets-deleteExperiment.md +2 -2
- package/dist/docs/references/reference-datasets-deleteItem.md +2 -2
- package/dist/docs/references/reference-datasets-deleteItems.md +2 -2
- package/dist/docs/references/reference-datasets-get.md +2 -2
- package/dist/docs/references/reference-datasets-getDetails.md +9 -9
- package/dist/docs/references/reference-datasets-getExperiment.md +2 -2
- package/dist/docs/references/reference-datasets-getItem.md +3 -3
- package/dist/docs/references/reference-datasets-getItemHistory.md +22 -2
- package/dist/docs/references/reference-datasets-list.md +7 -3
- package/dist/docs/references/reference-datasets-listExperimentResults.md +34 -4
- package/dist/docs/references/reference-datasets-listExperiments.md +41 -3
- package/dist/docs/references/reference-datasets-listItems.md +18 -6
- package/dist/docs/references/reference-datasets-listVersions.md +23 -3
- package/dist/docs/references/reference-datasets-startExperiment.md +62 -12
- package/dist/docs/references/reference-datasets-startExperimentAsync.md +5 -1
- package/dist/docs/references/reference-datasets-update.md +6 -6
- package/dist/docs/references/reference-datasets-updateItem.md +5 -5
- package/dist/docs/references/reference-evals-answer-relevancy.md +11 -11
- package/dist/docs/references/reference-evals-answer-similarity.md +17 -19
- package/dist/docs/references/reference-evals-bias.md +10 -10
- package/dist/docs/references/reference-evals-completeness.md +3 -3
- package/dist/docs/references/reference-evals-content-similarity.md +6 -6
- package/dist/docs/references/reference-evals-context-precision.md +4 -4
- package/dist/docs/references/reference-evals-create-scorer.md +47 -49
- package/dist/docs/references/reference-evals-faithfulness.md +11 -11
- package/dist/docs/references/reference-evals-hallucination.md +17 -21
- package/dist/docs/references/reference-evals-keyword-coverage.md +4 -4
- package/dist/docs/references/reference-evals-mastra-scorer.md +14 -14
- package/dist/docs/references/reference-evals-run-evals.md +16 -16
- package/dist/docs/references/reference-evals-scorer-utils.md +3 -3
- package/dist/docs/references/reference-evals-textual-difference.md +3 -3
- package/dist/docs/references/reference-evals-tone-consistency.md +3 -3
- package/dist/docs/references/reference-evals-toxicity.md +8 -8
- package/dist/docs/references/reference-harness-harness-class.md +34 -42
- package/dist/docs/references/reference-logging-pino-logger.md +5 -5
- package/dist/docs/references/reference-memory-deleteMessages.md +2 -2
- package/dist/docs/references/reference-memory-memory-class.md +12 -14
- package/dist/docs/references/reference-memory-observational-memory.md +102 -94
- package/dist/docs/references/reference-observability-tracing-configuration.md +27 -10
- package/dist/docs/references/reference-observability-tracing-exporters-console-exporter.md +4 -7
- package/dist/docs/references/reference-processors-batch-parts-processor.md +8 -10
- package/dist/docs/references/reference-processors-language-detector.md +14 -16
- package/dist/docs/references/reference-processors-message-history-processor.md +7 -9
- package/dist/docs/references/reference-processors-moderation-processor.md +13 -15
- package/dist/docs/references/reference-processors-pii-detector.md +14 -16
- package/dist/docs/references/reference-processors-processor-interface.md +62 -62
- package/dist/docs/references/reference-processors-prompt-injection-detector.md +11 -13
- package/dist/docs/references/reference-processors-semantic-recall-processor.md +14 -16
- package/dist/docs/references/reference-processors-system-prompt-scrubber.md +12 -14
- package/dist/docs/references/reference-processors-token-limiter-processor.md +11 -13
- package/dist/docs/references/reference-processors-tool-call-filter.md +5 -7
- package/dist/docs/references/reference-processors-tool-search-processor.md +9 -11
- package/dist/docs/references/reference-processors-unicode-normalizer.md +8 -10
- package/dist/docs/references/reference-processors-working-memory-processor.md +14 -18
- package/dist/docs/references/reference-rag-database-config.md +11 -7
- package/dist/docs/references/reference-rag-embeddings.md +12 -12
- package/dist/docs/references/reference-server-mastra-server.md +10 -10
- package/dist/docs/references/reference-server-register-api-route.md +13 -13
- package/dist/docs/references/reference-storage-cloudflare-d1.md +5 -5
- package/dist/docs/references/reference-storage-composite.md +9 -9
- package/dist/docs/references/reference-storage-lance.md +3 -3
- package/dist/docs/references/reference-storage-libsql.md +2 -2
- package/dist/docs/references/reference-storage-mongodb.md +5 -5
- package/dist/docs/references/reference-storage-mssql.md +2 -2
- package/dist/docs/references/reference-storage-postgresql.md +25 -25
- package/dist/docs/references/reference-storage-upstash.md +3 -3
- package/dist/docs/references/reference-streaming-ChunkType.md +251 -59
- package/dist/docs/references/reference-streaming-agents-MastraModelOutput.md +86 -16
- package/dist/docs/references/reference-streaming-agents-streamLegacy.md +79 -39
- package/dist/docs/references/reference-streaming-workflows-resumeStream.md +18 -8
- package/dist/docs/references/reference-streaming-workflows-stream.md +21 -9
- package/dist/docs/references/reference-streaming-workflows-timeTravelStream.md +4 -4
- package/dist/docs/references/reference-tools-create-tool.md +25 -21
- package/dist/docs/references/reference-tools-graph-rag-tool.md +16 -18
- package/dist/docs/references/reference-tools-mcp-client.md +38 -27
- package/dist/docs/references/reference-tools-mcp-server.md +45 -45
- package/dist/docs/references/reference-tools-vector-query-tool.md +34 -22
- package/dist/docs/references/reference-vectors-libsql.md +31 -31
- package/dist/docs/references/reference-vectors-mongodb.md +32 -32
- package/dist/docs/references/reference-vectors-pg.md +60 -44
- package/dist/docs/references/reference-vectors-upstash.md +25 -25
- package/dist/docs/references/reference-voice-composite-voice.md +10 -10
- package/dist/docs/references/reference-voice-mastra-voice.md +20 -20
- package/dist/docs/references/reference-voice-voice.addInstructions.md +1 -1
- package/dist/docs/references/reference-voice-voice.addTools.md +1 -1
- package/dist/docs/references/reference-voice-voice.connect.md +3 -3
- package/dist/docs/references/reference-voice-voice.events.md +11 -11
- package/dist/docs/references/reference-voice-voice.listen.md +9 -9
- package/dist/docs/references/reference-voice-voice.on.md +2 -2
- package/dist/docs/references/reference-voice-voice.speak.md +11 -11
- package/dist/docs/references/reference-workflows-run-methods-cancel.md +2 -2
- package/dist/docs/references/reference-workflows-run-methods-restart.md +17 -5
- package/dist/docs/references/reference-workflows-run-methods-resume.md +23 -9
- package/dist/docs/references/reference-workflows-run-methods-start.md +22 -8
- package/dist/docs/references/reference-workflows-run-methods-startAsync.md +12 -6
- package/dist/docs/references/reference-workflows-run-methods-timeTravel.md +29 -13
- package/dist/docs/references/reference-workflows-run.md +12 -12
- package/dist/docs/references/reference-workflows-step.md +24 -26
- package/dist/docs/references/reference-workflows-workflow-methods-branch.md +2 -2
- package/dist/docs/references/reference-workflows-workflow-methods-commit.md +1 -1
- package/dist/docs/references/reference-workflows-workflow-methods-create-run.md +4 -4
- package/dist/docs/references/reference-workflows-workflow-methods-dountil.md +3 -3
- package/dist/docs/references/reference-workflows-workflow-methods-dowhile.md +3 -3
- package/dist/docs/references/reference-workflows-workflow-methods-foreach.md +9 -9
- package/dist/docs/references/reference-workflows-workflow-methods-map.md +2 -2
- package/dist/docs/references/reference-workflows-workflow-methods-parallel.md +2 -2
- package/dist/docs/references/reference-workflows-workflow-methods-sleep.md +2 -2
- package/dist/docs/references/reference-workflows-workflow-methods-sleepUntil.md +2 -2
- package/dist/docs/references/reference-workflows-workflow-methods-then.md +2 -2
- package/dist/docs/references/reference-workflows-workflow.md +40 -50
- package/dist/docs/references/reference-workspace-filesystem.md +22 -22
- package/dist/docs/references/reference-workspace-local-filesystem.md +35 -35
- package/dist/docs/references/reference-workspace-local-sandbox.md +26 -26
- package/dist/docs/references/reference-workspace-sandbox.md +8 -8
- package/dist/docs/references/reference-workspace-workspace-class.md +30 -34
- package/dist/editor/types.d.ts +1 -0
- package/dist/editor/types.d.ts.map +1 -1
- package/dist/evals/index.cjs +20 -20
- package/dist/evals/index.js +3 -3
- package/dist/evals/scoreTraces/index.cjs +5 -5
- package/dist/evals/scoreTraces/index.js +2 -2
- package/dist/harness/harness.d.ts.map +1 -1
- package/dist/harness/index.cjs +25 -21
- package/dist/harness/index.cjs.map +1 -1
- package/dist/harness/index.js +15 -11
- package/dist/harness/index.js.map +1 -1
- package/dist/index.cjs +2 -2
- package/dist/index.js +1 -1
- package/dist/integration/index.cjs +2 -2
- package/dist/integration/index.js +1 -1
- package/dist/llm/index.cjs +12 -12
- package/dist/llm/index.js +3 -3
- package/dist/llm/model/model.d.ts.map +1 -1
- package/dist/llm/model/model.loop.d.ts.map +1 -1
- package/dist/llm/model/provider-types.generated.d.ts +5 -1
- package/dist/loop/index.cjs +14 -14
- package/dist/loop/index.js +1 -1
- package/dist/loop/workflows/agentic-loop/index.d.ts.map +1 -1
- package/dist/mastra/index.cjs +2 -2
- package/dist/mastra/index.js +1 -1
- package/dist/memory/index.cjs +14 -14
- package/dist/memory/index.js +1 -1
- package/dist/models-dev-2FJK72J2.cjs +12 -0
- package/dist/{models-dev-UVWCKPA2.cjs.map → models-dev-2FJK72J2.cjs.map} +1 -1
- package/dist/models-dev-CMQG6EMO.js +3 -0
- package/dist/{models-dev-W3LXZTEB.js.map → models-dev-CMQG6EMO.js.map} +1 -1
- package/dist/processor-provider/index.cjs +10 -10
- package/dist/processor-provider/index.js +1 -1
- package/dist/processors/index.cjs +42 -42
- package/dist/processors/index.js +1 -1
- package/dist/processors/processors/skills.d.ts +9 -42
- package/dist/processors/processors/skills.d.ts.map +1 -1
- package/dist/provider-registry-EHOAWHFE.cjs +40 -0
- package/dist/{provider-registry-4HLP2JRR.cjs.map → provider-registry-EHOAWHFE.cjs.map} +1 -1
- package/dist/provider-registry-LVP6T63V.js +3 -0
- package/dist/{provider-registry-K3DWQSMH.js.map → provider-registry-LVP6T63V.js.map} +1 -1
- package/dist/provider-registry.json +12 -4
- package/dist/relevance/index.cjs +3 -3
- package/dist/relevance/index.js +1 -1
- package/dist/request-context/index.cjs +4 -4
- package/dist/request-context/index.d.ts.map +1 -1
- package/dist/request-context/index.js +1 -1
- package/dist/storage/base.d.ts +34 -1
- package/dist/storage/base.d.ts.map +1 -1
- package/dist/storage/constants.cjs +56 -56
- package/dist/storage/constants.js +1 -1
- package/dist/storage/domains/agents/filesystem.d.ts +28 -0
- package/dist/storage/domains/agents/filesystem.d.ts.map +1 -0
- package/dist/storage/domains/agents/index.d.ts +1 -0
- package/dist/storage/domains/agents/index.d.ts.map +1 -1
- package/dist/storage/domains/experiments/inmemory.d.ts.map +1 -1
- package/dist/storage/domains/mcp-clients/filesystem.d.ts +28 -0
- package/dist/storage/domains/mcp-clients/filesystem.d.ts.map +1 -0
- package/dist/storage/domains/mcp-clients/index.d.ts +1 -0
- package/dist/storage/domains/mcp-clients/index.d.ts.map +1 -1
- package/dist/storage/domains/mcp-servers/filesystem.d.ts +28 -0
- package/dist/storage/domains/mcp-servers/filesystem.d.ts.map +1 -0
- package/dist/storage/domains/mcp-servers/index.d.ts +1 -0
- package/dist/storage/domains/mcp-servers/index.d.ts.map +1 -1
- package/dist/storage/domains/prompt-blocks/filesystem.d.ts +28 -0
- package/dist/storage/domains/prompt-blocks/filesystem.d.ts.map +1 -0
- package/dist/storage/domains/prompt-blocks/index.d.ts +1 -0
- package/dist/storage/domains/prompt-blocks/index.d.ts.map +1 -1
- package/dist/storage/domains/scorer-definitions/filesystem.d.ts +28 -0
- package/dist/storage/domains/scorer-definitions/filesystem.d.ts.map +1 -0
- package/dist/storage/domains/scorer-definitions/index.d.ts +1 -0
- package/dist/storage/domains/scorer-definitions/index.d.ts.map +1 -1
- package/dist/storage/domains/skills/filesystem.d.ts +28 -0
- package/dist/storage/domains/skills/filesystem.d.ts.map +1 -0
- package/dist/storage/domains/skills/index.d.ts +1 -0
- package/dist/storage/domains/skills/index.d.ts.map +1 -1
- package/dist/storage/domains/workspaces/filesystem.d.ts +28 -0
- package/dist/storage/domains/workspaces/filesystem.d.ts.map +1 -0
- package/dist/storage/domains/workspaces/index.d.ts +1 -0
- package/dist/storage/domains/workspaces/index.d.ts.map +1 -1
- package/dist/storage/filesystem-db.d.ts +82 -0
- package/dist/storage/filesystem-db.d.ts.map +1 -0
- package/dist/storage/filesystem-versioned.d.ts +148 -0
- package/dist/storage/filesystem-versioned.d.ts.map +1 -0
- package/dist/storage/filesystem.d.ts +39 -0
- package/dist/storage/filesystem.d.ts.map +1 -0
- package/dist/storage/git-history.d.ts +68 -0
- package/dist/storage/git-history.d.ts.map +1 -0
- package/dist/storage/index.cjs +208 -160
- package/dist/storage/index.d.ts +4 -0
- package/dist/storage/index.d.ts.map +1 -1
- package/dist/storage/index.js +2 -2
- package/dist/storage/types.d.ts +1 -0
- package/dist/storage/types.d.ts.map +1 -1
- package/dist/stream/RunOutput.d.ts +1 -1
- package/dist/stream/aisdk/v5/output-helpers.d.ts +6 -6
- package/dist/stream/base/output.d.ts +3 -3
- package/dist/stream/base/schema.d.ts +1 -1
- package/dist/stream/index.cjs +11 -11
- package/dist/stream/index.js +2 -2
- package/dist/test-utils/llm-mock.cjs +4 -4
- package/dist/test-utils/llm-mock.js +1 -1
- package/dist/tool-loop-agent/index.cjs +4 -4
- package/dist/tool-loop-agent/index.js +1 -1
- package/dist/tools/index.cjs +6 -6
- package/dist/tools/index.js +1 -1
- package/dist/tools/is-vercel-tool.cjs +2 -2
- package/dist/tools/is-vercel-tool.js +1 -1
- package/dist/tools/tool-builder/builder.d.ts.map +1 -1
- package/dist/tools/tool.d.ts +6 -0
- package/dist/tools/tool.d.ts.map +1 -1
- package/dist/tools/types.d.ts +27 -0
- package/dist/tools/types.d.ts.map +1 -1
- package/dist/utils.cjs +23 -23
- package/dist/utils.js +1 -1
- package/dist/vector/index.cjs +9 -9
- package/dist/vector/index.js +2 -2
- package/dist/workflows/evented/index.cjs +10 -10
- package/dist/workflows/evented/index.js +1 -1
- package/dist/workflows/index.cjs +25 -25
- package/dist/workflows/index.js +1 -1
- package/dist/workspace/index.cjs +70 -66
- package/dist/workspace/index.d.ts +1 -0
- package/dist/workspace/index.d.ts.map +1 -1
- package/dist/workspace/index.js +1 -1
- package/dist/workspace/sandbox/execa.d.ts +9 -0
- package/dist/workspace/sandbox/execa.d.ts.map +1 -0
- package/dist/workspace/sandbox/local-process-manager.d.ts.map +1 -1
- package/dist/workspace/skills/index.d.ts +1 -0
- package/dist/workspace/skills/index.d.ts.map +1 -1
- package/dist/workspace/skills/tools.d.ts +36 -0
- package/dist/workspace/skills/tools.d.ts.map +1 -0
- package/dist/workspace/tools/execute-command.d.ts.map +1 -1
- package/dist/workspace/tools/output-helpers.d.ts +4 -3
- package/dist/workspace/tools/output-helpers.d.ts.map +1 -1
- package/package.json +9 -9
- package/src/llm/model/provider-types.generated.d.ts +5 -1
- package/dist/chunk-3ZF7IC6Q.cjs.map +0 -1
- package/dist/chunk-4BXXAZ75.js.map +0 -1
- package/dist/chunk-4P35AVPE.cjs.map +0 -1
- package/dist/chunk-BFV3GSGS.js.map +0 -1
- package/dist/chunk-CCLV5CAA.js.map +0 -1
- package/dist/chunk-D4M6E4OQ.cjs.map +0 -1
- package/dist/chunk-D6HO5QAM.cjs.map +0 -1
- package/dist/chunk-G5R2755Q.cjs.map +0 -1
- package/dist/chunk-GJTLWOKJ.js.map +0 -1
- package/dist/chunk-H5S4PS44.cjs.map +0 -1
- package/dist/chunk-IOY7Y5GV.js.map +0 -1
- package/dist/chunk-JIRB5LX4.js.map +0 -1
- package/dist/chunk-MVYP55NA.js.map +0 -1
- package/dist/chunk-PKORY4ZZ.cjs.map +0 -1
- package/dist/chunk-QNXY3J6B.cjs.map +0 -1
- package/dist/chunk-SEKQJ447.js.map +0 -1
- package/dist/chunk-VDKWYUGC.cjs.map +0 -1
- package/dist/chunk-VWAK25TU.js.map +0 -1
- package/dist/chunk-WYPSC6CO.js.map +0 -1
- package/dist/chunk-YIJZBU54.cjs.map +0 -1
- package/dist/chunk-ZBESCKPX.cjs.map +0 -1
- package/dist/chunk-ZVWVQ6MG.js.map +0 -1
- package/dist/models-dev-UVWCKPA2.cjs +0 -12
- package/dist/models-dev-W3LXZTEB.js +0 -3
- package/dist/provider-registry-4HLP2JRR.cjs +0 -40
- package/dist/provider-registry-K3DWQSMH.js +0 -3
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
import { DefaultVoice } from './chunk-LHRHOPUC.js';
|
|
2
2
|
import { PUBSUB_SYMBOL, STREAM_FORMAT_SYMBOL } from './chunk-2QXNHEDL.js';
|
|
3
|
-
import {
|
|
4
|
-
import { InMemoryStore } from './chunk-
|
|
5
|
-
import { MessageList, coreContentToString, DefaultGeneratedFile, DefaultGeneratedFileWithType, sanitizeToolName } from './chunk-
|
|
3
|
+
import { createWorkspaceTools, createSkillTools, BM25Index } from './chunk-ACAILOJE.js';
|
|
4
|
+
import { InMemoryStore } from './chunk-FT5Q6XTK.js';
|
|
5
|
+
import { MessageList, coreContentToString, DefaultGeneratedFile, DefaultGeneratedFileWithType, sanitizeToolName } from './chunk-OHX36YXF.js';
|
|
6
6
|
import { parsePartialJson, isDeepEqualData, stepCountIs } from './chunk-UTLWS5LV.js';
|
|
7
7
|
import { generateId, asSchema, jsonSchema, APICallError, tool } from './chunk-CPLRD2VP.js';
|
|
8
8
|
import { executeHook } from './chunk-L54GIUCB.js';
|
|
9
|
-
import { resolveModelConfig, ModelRouterEmbeddingModel, ModelRouterLanguageModel } from './chunk-
|
|
10
|
-
import { MastraLLMV1 } from './chunk-
|
|
9
|
+
import { resolveModelConfig, ModelRouterEmbeddingModel, ModelRouterLanguageModel } from './chunk-TJIFNVPX.js';
|
|
10
|
+
import { MastraLLMV1 } from './chunk-ZBU6P4JV.js';
|
|
11
11
|
import { noopLogger } from './chunk-PSCMWPLC.js';
|
|
12
12
|
import { EventEmitterPubSub } from './chunk-X2HAI3OX.js';
|
|
13
|
-
import { isZodType, removeUndefinedValues, ensureToolProperties, makeCoreTool, createMastraProxy, deepMerge, selectFields, delay } from './chunk-
|
|
13
|
+
import { isZodType, removeUndefinedValues, ensureToolProperties, makeCoreTool, createMastraProxy, deepMerge, selectFields, delay } from './chunk-SBBWRNZA.js';
|
|
14
14
|
import { resolveObservabilityContext, createObservabilityContext, getOrCreateSpan, wrapMastra, executeWithContextSync } from './chunk-6JYMMRHB.js';
|
|
15
|
-
import { ToolStream } from './chunk-DD2VNRQM.js';
|
|
16
|
-
import { Tool, createTool } from './chunk-ZVWVQ6MG.js';
|
|
17
|
-
import { RequestContext, MASTRA_RESOURCE_ID_KEY, MASTRA_THREAD_ID_KEY } from './chunk-CCLV5CAA.js';
|
|
18
15
|
import { MastraError, getErrorFromUnknown } from './chunk-FJEVLHJT.js';
|
|
16
|
+
import { ToolStream } from './chunk-DD2VNRQM.js';
|
|
17
|
+
import { Tool, createTool } from './chunk-CY4ZWL2X.js';
|
|
18
|
+
import { RequestContext, MASTRA_RESOURCE_ID_KEY, MASTRA_THREAD_ID_KEY } from './chunk-JGOH7RWL.js';
|
|
19
19
|
import { zodToJsonSchema } from './chunk-PJKCPRYF.js';
|
|
20
20
|
import { MastraBase } from './chunk-WCAFTXGK.js';
|
|
21
21
|
import { RegisteredLogger, ConsoleLogger } from './chunk-X2WMFSPB.js';
|
|
@@ -13736,6 +13736,7 @@ function createAgenticLoopWorkflow(params) {
|
|
|
13736
13736
|
} = params;
|
|
13737
13737
|
const accumulatedSteps = [];
|
|
13738
13738
|
let previousContentLength = 0;
|
|
13739
|
+
let pendingFeedbackStop = false;
|
|
13739
13740
|
const agenticExecutionWorkflow = createAgenticExecutionWorkflow({
|
|
13740
13741
|
messageId,
|
|
13741
13742
|
models,
|
|
@@ -13766,6 +13767,10 @@ function createAgenticLoopWorkflow(params) {
|
|
|
13766
13767
|
}).dowhile(agenticExecutionWorkflow, async ({ inputData }) => {
|
|
13767
13768
|
const typedInputData = inputData;
|
|
13768
13769
|
let hasFinishedSteps = false;
|
|
13770
|
+
if (pendingFeedbackStop) {
|
|
13771
|
+
hasFinishedSteps = true;
|
|
13772
|
+
pendingFeedbackStop = false;
|
|
13773
|
+
}
|
|
13769
13774
|
const allContent = typedInputData.messages.nonUser.flatMap(
|
|
13770
13775
|
(message) => message.content
|
|
13771
13776
|
);
|
|
@@ -13810,7 +13815,7 @@ function createAgenticLoopWorkflow(params) {
|
|
|
13810
13815
|
})
|
|
13811
13816
|
);
|
|
13812
13817
|
const hasStopped = conditions.some((condition) => condition);
|
|
13813
|
-
hasFinishedSteps = hasStopped;
|
|
13818
|
+
hasFinishedSteps = hasFinishedSteps || hasStopped;
|
|
13814
13819
|
}
|
|
13815
13820
|
if (rest.onIterationComplete) {
|
|
13816
13821
|
const isFinal = !typedInputData.stepResult?.isContinued || hasFinishedSteps;
|
|
@@ -13841,10 +13846,7 @@ function createAgenticLoopWorkflow(params) {
|
|
|
13841
13846
|
try {
|
|
13842
13847
|
const iterationResult = await rest.onIterationComplete(iterationContext);
|
|
13843
13848
|
if (iterationResult) {
|
|
13844
|
-
if (iterationResult.
|
|
13845
|
-
hasFinishedSteps = true;
|
|
13846
|
-
}
|
|
13847
|
-
if (iterationResult.feedback && typedInputData.stepResult?.isContinued && !hasFinishedSteps) {
|
|
13849
|
+
if (iterationResult.feedback && typedInputData.stepResult?.isContinued) {
|
|
13848
13850
|
messageList.add(
|
|
13849
13851
|
{
|
|
13850
13852
|
id: rest.mastra?.generateId() || randomUUID(),
|
|
@@ -13869,10 +13871,14 @@ function createAgenticLoopWorkflow(params) {
|
|
|
13869
13871
|
},
|
|
13870
13872
|
"response"
|
|
13871
13873
|
);
|
|
13872
|
-
if (iterationResult.continue
|
|
13874
|
+
if (iterationResult.continue === false) {
|
|
13875
|
+
pendingFeedbackStop = true;
|
|
13876
|
+
} else if (!hasFinishedSteps && rest.maxSteps && accumulatedSteps.length < rest.maxSteps) {
|
|
13873
13877
|
hasFinishedSteps = false;
|
|
13874
13878
|
typedInputData.stepResult.isContinued = true;
|
|
13875
13879
|
}
|
|
13880
|
+
} else if (iterationResult.continue === false && !hasFinishedSteps) {
|
|
13881
|
+
hasFinishedSteps = true;
|
|
13876
13882
|
}
|
|
13877
13883
|
}
|
|
13878
13884
|
} catch (error) {
|
|
@@ -14356,6 +14362,7 @@ var MastraLLMVNext = class extends MastraBase {
|
|
|
14356
14362
|
toolCallId,
|
|
14357
14363
|
messageList,
|
|
14358
14364
|
models: this.#models,
|
|
14365
|
+
logger: this.logger,
|
|
14359
14366
|
tools,
|
|
14360
14367
|
stopWhen: stopWhenToUse,
|
|
14361
14368
|
toolChoice,
|
|
@@ -16598,6 +16605,8 @@ async function networkLoop({
|
|
|
16598
16605
|
}
|
|
16599
16606
|
});
|
|
16600
16607
|
}
|
|
16608
|
+
|
|
16609
|
+
// src/processors/processors/skills.ts
|
|
16601
16610
|
var SkillsProcessor = class {
|
|
16602
16611
|
id = "skills-processor";
|
|
16603
16612
|
name = "Skills Processor";
|
|
@@ -16605,8 +16614,6 @@ var SkillsProcessor = class {
|
|
|
16605
16614
|
_workspace;
|
|
16606
16615
|
/** Format for skill injection */
|
|
16607
16616
|
_format;
|
|
16608
|
-
/** Set of activated skill names */
|
|
16609
|
-
_activatedSkills = /* @__PURE__ */ new Set();
|
|
16610
16617
|
constructor(opts) {
|
|
16611
16618
|
this._workspace = opts.workspace;
|
|
16612
16619
|
this._format = opts.format ?? "xml";
|
|
@@ -16646,7 +16653,8 @@ var SkillsProcessor = class {
|
|
|
16646
16653
|
return skill.source.type;
|
|
16647
16654
|
}
|
|
16648
16655
|
/**
|
|
16649
|
-
* Format available skills metadata based on configured format
|
|
16656
|
+
* Format available skills metadata based on configured format.
|
|
16657
|
+
* Skills are sorted by name for deterministic output (prompt cache stability).
|
|
16650
16658
|
*/
|
|
16651
16659
|
async formatAvailableSkills() {
|
|
16652
16660
|
const skillsList = await this.skills?.list();
|
|
@@ -16655,6 +16663,7 @@ var SkillsProcessor = class {
|
|
|
16655
16663
|
}
|
|
16656
16664
|
const skillPromises = skillsList.map((meta) => this.skills?.get(meta.name));
|
|
16657
16665
|
const fullSkills = (await Promise.all(skillPromises)).filter((s) => s !== void 0);
|
|
16666
|
+
fullSkills.sort((a, b) => a.name.localeCompare(b.name));
|
|
16658
16667
|
switch (this._format) {
|
|
16659
16668
|
case "xml": {
|
|
16660
16669
|
const skillsXml = fullSkills.map(
|
|
@@ -16697,46 +16706,6 @@ ${skillsMd}`;
|
|
|
16697
16706
|
}
|
|
16698
16707
|
}
|
|
16699
16708
|
}
|
|
16700
|
-
/**
|
|
16701
|
-
* Format activated skills based on configured format
|
|
16702
|
-
*/
|
|
16703
|
-
async formatActivatedSkills() {
|
|
16704
|
-
const skillPromises = Array.from(this._activatedSkills).map((name) => this.skills?.get(name));
|
|
16705
|
-
const activatedSkillsList = (await Promise.all(skillPromises)).filter((s) => s !== void 0);
|
|
16706
|
-
if (activatedSkillsList.length === 0) {
|
|
16707
|
-
return "";
|
|
16708
|
-
}
|
|
16709
|
-
switch (this._format) {
|
|
16710
|
-
case "xml": {
|
|
16711
|
-
const skillInstructions = activatedSkillsList.map(
|
|
16712
|
-
(skill) => `# Skill: ${skill.name}
|
|
16713
|
-
Location: ${this.formatLocation(skill)}
|
|
16714
|
-
Source: ${this.formatSourceType(skill)}
|
|
16715
|
-
|
|
16716
|
-
${skill.instructions}`
|
|
16717
|
-
).join("\n\n---\n\n");
|
|
16718
|
-
return `<activated_skills>
|
|
16719
|
-
${skillInstructions}
|
|
16720
|
-
</activated_skills>`;
|
|
16721
|
-
}
|
|
16722
|
-
case "json":
|
|
16723
|
-
case "markdown": {
|
|
16724
|
-
const skillInstructions = activatedSkillsList.map(
|
|
16725
|
-
(skill) => `# Skill: ${skill.name}
|
|
16726
|
-
*Location: ${this.formatLocation(skill)} | Source: ${this.formatSourceType(skill)}*
|
|
16727
|
-
|
|
16728
|
-
${skill.instructions}`
|
|
16729
|
-
).join("\n\n---\n\n");
|
|
16730
|
-
return `# Activated Skills
|
|
16731
|
-
|
|
16732
|
-
${skillInstructions}`;
|
|
16733
|
-
}
|
|
16734
|
-
default: {
|
|
16735
|
-
const _exhaustive = this._format;
|
|
16736
|
-
return _exhaustive;
|
|
16737
|
-
}
|
|
16738
|
-
}
|
|
16739
|
-
}
|
|
16740
16709
|
/**
|
|
16741
16710
|
* Escape XML special characters
|
|
16742
16711
|
*/
|
|
@@ -16744,255 +16713,13 @@ ${skillInstructions}`;
|
|
|
16744
16713
|
return str.replace(/&/g, "&").replace(/</g, "<").replace(/>/g, ">").replace(/"/g, """).replace(/'/g, "'");
|
|
16745
16714
|
}
|
|
16746
16715
|
// ===========================================================================
|
|
16747
|
-
//
|
|
16748
|
-
// ===========================================================================
|
|
16749
|
-
/**
|
|
16750
|
-
* Create skill-activate tool
|
|
16751
|
-
*/
|
|
16752
|
-
createSkillActivateTool() {
|
|
16753
|
-
const skills = this.skills;
|
|
16754
|
-
const activatedSkills = this._activatedSkills;
|
|
16755
|
-
return createTool({
|
|
16756
|
-
id: "skill-activate",
|
|
16757
|
-
description: "Activate a skill to load its full instructions. You should activate skills proactively when they are relevant to the user's request without asking for permission first.",
|
|
16758
|
-
inputSchema: z10.object({
|
|
16759
|
-
name: z10.string().describe("The name of the skill to activate")
|
|
16760
|
-
}),
|
|
16761
|
-
execute: async ({ name }) => {
|
|
16762
|
-
if (!skills) {
|
|
16763
|
-
return {
|
|
16764
|
-
success: false,
|
|
16765
|
-
message: "No skills configured"
|
|
16766
|
-
};
|
|
16767
|
-
}
|
|
16768
|
-
if (!await skills.has(name)) {
|
|
16769
|
-
const skillsList = await skills.list();
|
|
16770
|
-
const skillNames = skillsList.map((s) => s.name);
|
|
16771
|
-
return {
|
|
16772
|
-
success: false,
|
|
16773
|
-
message: `Skill "${name}" not found. Available skills: ${skillNames.join(", ")}`
|
|
16774
|
-
};
|
|
16775
|
-
}
|
|
16776
|
-
if (activatedSkills.has(name)) {
|
|
16777
|
-
return {
|
|
16778
|
-
success: true,
|
|
16779
|
-
message: `Skill "${name}" is already activated`
|
|
16780
|
-
};
|
|
16781
|
-
}
|
|
16782
|
-
activatedSkills.add(name);
|
|
16783
|
-
return {
|
|
16784
|
-
success: true,
|
|
16785
|
-
message: `Skill "${name}" activated successfully. The skill instructions are now available.`
|
|
16786
|
-
};
|
|
16787
|
-
}
|
|
16788
|
-
});
|
|
16789
|
-
}
|
|
16790
|
-
/**
|
|
16791
|
-
* Create skill-read-reference tool
|
|
16792
|
-
*/
|
|
16793
|
-
createSkillReadReferenceTool() {
|
|
16794
|
-
const skills = this.skills;
|
|
16795
|
-
const activatedSkills = this._activatedSkills;
|
|
16796
|
-
return createTool({
|
|
16797
|
-
id: "skill-read-reference",
|
|
16798
|
-
description: "Read a reference file from an activated skill. Optionally specify line range to read a portion of the file.",
|
|
16799
|
-
inputSchema: z10.object({
|
|
16800
|
-
skillName: z10.string().describe("The name of the activated skill"),
|
|
16801
|
-
referencePath: z10.string().describe(
|
|
16802
|
-
'Path to the reference file (relative to the skill root directory, e.g. "references/colors.md" or "docs/schema.md")'
|
|
16803
|
-
),
|
|
16804
|
-
startLine: z10.number().optional().describe("Starting line number (1-indexed). If omitted, starts from the beginning."),
|
|
16805
|
-
endLine: z10.number().optional().describe("Ending line number (1-indexed, inclusive). If omitted, reads to the end.")
|
|
16806
|
-
}),
|
|
16807
|
-
execute: async ({ skillName, referencePath, startLine, endLine }) => {
|
|
16808
|
-
if (!skills) {
|
|
16809
|
-
return {
|
|
16810
|
-
success: false,
|
|
16811
|
-
message: "No skills configured"
|
|
16812
|
-
};
|
|
16813
|
-
}
|
|
16814
|
-
if (!activatedSkills.has(skillName)) {
|
|
16815
|
-
return {
|
|
16816
|
-
success: false,
|
|
16817
|
-
message: `Skill "${skillName}" is not activated. Activate it first using skill-activate.`
|
|
16818
|
-
};
|
|
16819
|
-
}
|
|
16820
|
-
const fullContent = await skills.getReference(skillName, referencePath);
|
|
16821
|
-
if (fullContent === null) {
|
|
16822
|
-
const availableRefs = await skills.listReferences(skillName);
|
|
16823
|
-
return {
|
|
16824
|
-
success: false,
|
|
16825
|
-
message: `Reference file "${referencePath}" not found in skill "${skillName}". Available references: ${availableRefs.join(", ") || "none"}`
|
|
16826
|
-
};
|
|
16827
|
-
}
|
|
16828
|
-
const result = extractLines(fullContent, startLine, endLine);
|
|
16829
|
-
return {
|
|
16830
|
-
success: true,
|
|
16831
|
-
content: result.content,
|
|
16832
|
-
lines: result.lines,
|
|
16833
|
-
totalLines: result.totalLines
|
|
16834
|
-
};
|
|
16835
|
-
}
|
|
16836
|
-
});
|
|
16837
|
-
}
|
|
16838
|
-
/**
|
|
16839
|
-
* Create skill-read-script tool
|
|
16840
|
-
*/
|
|
16841
|
-
createSkillReadScriptTool() {
|
|
16842
|
-
const skills = this.skills;
|
|
16843
|
-
const activatedSkills = this._activatedSkills;
|
|
16844
|
-
return createTool({
|
|
16845
|
-
id: "skill-read-script",
|
|
16846
|
-
description: "Read a script file from an activated skill. Scripts contain executable code. Optionally specify line range.",
|
|
16847
|
-
inputSchema: z10.object({
|
|
16848
|
-
skillName: z10.string().describe("The name of the activated skill"),
|
|
16849
|
-
scriptPath: z10.string().describe('Path to the script file (relative to the skill root directory, e.g. "scripts/run.sh")'),
|
|
16850
|
-
startLine: z10.number().optional().describe("Starting line number (1-indexed). If omitted, starts from the beginning."),
|
|
16851
|
-
endLine: z10.number().optional().describe("Ending line number (1-indexed, inclusive). If omitted, reads to the end.")
|
|
16852
|
-
}),
|
|
16853
|
-
execute: async ({ skillName, scriptPath, startLine, endLine }) => {
|
|
16854
|
-
if (!skills) {
|
|
16855
|
-
return {
|
|
16856
|
-
success: false,
|
|
16857
|
-
message: "No skills configured"
|
|
16858
|
-
};
|
|
16859
|
-
}
|
|
16860
|
-
if (!activatedSkills.has(skillName)) {
|
|
16861
|
-
return {
|
|
16862
|
-
success: false,
|
|
16863
|
-
message: `Skill "${skillName}" is not activated. Activate it first using skill-activate.`
|
|
16864
|
-
};
|
|
16865
|
-
}
|
|
16866
|
-
const fullContent = await skills.getScript(skillName, scriptPath);
|
|
16867
|
-
if (fullContent === null) {
|
|
16868
|
-
const availableScripts = await skills.listScripts(skillName);
|
|
16869
|
-
return {
|
|
16870
|
-
success: false,
|
|
16871
|
-
message: `Script file "${scriptPath}" not found in skill "${skillName}". Available scripts: ${availableScripts.join(", ") || "none"}`
|
|
16872
|
-
};
|
|
16873
|
-
}
|
|
16874
|
-
const result = extractLines(fullContent, startLine, endLine);
|
|
16875
|
-
return {
|
|
16876
|
-
success: true,
|
|
16877
|
-
content: result.content,
|
|
16878
|
-
lines: result.lines,
|
|
16879
|
-
totalLines: result.totalLines
|
|
16880
|
-
};
|
|
16881
|
-
}
|
|
16882
|
-
});
|
|
16883
|
-
}
|
|
16884
|
-
/**
|
|
16885
|
-
* Create skill-read-asset tool
|
|
16886
|
-
*/
|
|
16887
|
-
createSkillReadAssetTool() {
|
|
16888
|
-
const skills = this.skills;
|
|
16889
|
-
const activatedSkills = this._activatedSkills;
|
|
16890
|
-
return createTool({
|
|
16891
|
-
id: "skill-read-asset",
|
|
16892
|
-
description: "Read an asset file from an activated skill. Assets include templates, data files, and other static resources. Binary files are returned as base64.",
|
|
16893
|
-
inputSchema: z10.object({
|
|
16894
|
-
skillName: z10.string().describe("The name of the activated skill"),
|
|
16895
|
-
assetPath: z10.string().describe('Path to the asset file (relative to the skill root directory, e.g. "assets/logo.png")')
|
|
16896
|
-
}),
|
|
16897
|
-
execute: async ({ skillName, assetPath }) => {
|
|
16898
|
-
if (!skills) {
|
|
16899
|
-
return {
|
|
16900
|
-
success: false,
|
|
16901
|
-
message: "No skills configured"
|
|
16902
|
-
};
|
|
16903
|
-
}
|
|
16904
|
-
if (!activatedSkills.has(skillName)) {
|
|
16905
|
-
return {
|
|
16906
|
-
success: false,
|
|
16907
|
-
message: `Skill "${skillName}" is not activated. Activate it first using skill-activate.`
|
|
16908
|
-
};
|
|
16909
|
-
}
|
|
16910
|
-
const content = await skills.getAsset(skillName, assetPath);
|
|
16911
|
-
if (content === null) {
|
|
16912
|
-
const availableAssets = await skills.listAssets(skillName);
|
|
16913
|
-
return {
|
|
16914
|
-
success: false,
|
|
16915
|
-
message: `Asset file "${assetPath}" not found in skill "${skillName}". Available assets: ${availableAssets.join(", ") || "none"}`
|
|
16916
|
-
};
|
|
16917
|
-
}
|
|
16918
|
-
try {
|
|
16919
|
-
const textContent = content.toString("utf-8");
|
|
16920
|
-
if (!textContent.slice(0, 1e3).includes("\0")) {
|
|
16921
|
-
return {
|
|
16922
|
-
success: true,
|
|
16923
|
-
content: textContent,
|
|
16924
|
-
encoding: "utf-8"
|
|
16925
|
-
};
|
|
16926
|
-
}
|
|
16927
|
-
} catch {
|
|
16928
|
-
}
|
|
16929
|
-
return {
|
|
16930
|
-
success: true,
|
|
16931
|
-
content: content.toString("base64"),
|
|
16932
|
-
encoding: "base64"
|
|
16933
|
-
};
|
|
16934
|
-
}
|
|
16935
|
-
});
|
|
16936
|
-
}
|
|
16937
|
-
/**
|
|
16938
|
-
* Create skill-search tool for searching across skill content
|
|
16939
|
-
*/
|
|
16940
|
-
createSkillSearchTool() {
|
|
16941
|
-
const skills = this.skills;
|
|
16942
|
-
return createTool({
|
|
16943
|
-
id: "skill-search",
|
|
16944
|
-
description: "Search across skill content to find relevant information. Useful when you need to find specific details within skills.",
|
|
16945
|
-
inputSchema: z10.object({
|
|
16946
|
-
query: z10.string().describe("The search query"),
|
|
16947
|
-
skillNames: z10.array(z10.string()).optional().describe("Optional list of skill names to search within"),
|
|
16948
|
-
topK: z10.number().optional().describe("Maximum number of results to return (default: 5)")
|
|
16949
|
-
}),
|
|
16950
|
-
execute: async ({ query, skillNames, topK }) => {
|
|
16951
|
-
if (!skills) {
|
|
16952
|
-
return {
|
|
16953
|
-
success: false,
|
|
16954
|
-
message: "No skills configured"
|
|
16955
|
-
};
|
|
16956
|
-
}
|
|
16957
|
-
const results = await skills.search(query, { topK, skillNames });
|
|
16958
|
-
if (results.length === 0) {
|
|
16959
|
-
return {
|
|
16960
|
-
success: true,
|
|
16961
|
-
message: "No results found",
|
|
16962
|
-
results: []
|
|
16963
|
-
};
|
|
16964
|
-
}
|
|
16965
|
-
return {
|
|
16966
|
-
success: true,
|
|
16967
|
-
results: results.map((r) => ({
|
|
16968
|
-
skillName: r.skillName,
|
|
16969
|
-
source: r.source,
|
|
16970
|
-
score: r.score,
|
|
16971
|
-
preview: r.content.substring(0, 200) + (r.content.length > 200 ? "..." : ""),
|
|
16972
|
-
lineRange: r.lineRange
|
|
16973
|
-
}))
|
|
16974
|
-
};
|
|
16975
|
-
}
|
|
16976
|
-
});
|
|
16977
|
-
}
|
|
16978
|
-
// ===========================================================================
|
|
16979
|
-
// Helpers
|
|
16980
|
-
// ===========================================================================
|
|
16981
|
-
/**
|
|
16982
|
-
* Mark a tool as never requiring approval.
|
|
16983
|
-
* Skill tools are internal plumbing and should bypass requireToolApproval.
|
|
16984
|
-
*/
|
|
16985
|
-
withNoApproval(tool2) {
|
|
16986
|
-
tool2.needsApprovalFn = () => false;
|
|
16987
|
-
return tool2;
|
|
16988
|
-
}
|
|
16989
|
-
// ===========================================================================
|
|
16990
|
-
// Processor Interface
|
|
16716
|
+
// processInputStep — system message injection only
|
|
16991
16717
|
// ===========================================================================
|
|
16992
16718
|
/**
|
|
16993
|
-
* Process input step - inject available skills
|
|
16719
|
+
* Process input step - inject available skills metadata into the system
|
|
16720
|
+
* message. Tools are provided by `Agent.listSkillTools()` instead.
|
|
16994
16721
|
*/
|
|
16995
|
-
async processInputStep({ messageList,
|
|
16722
|
+
async processInputStep({ messageList, stepNumber, requestContext }) {
|
|
16996
16723
|
if (stepNumber === 0) {
|
|
16997
16724
|
await this.skills?.maybeRefresh({ requestContext });
|
|
16998
16725
|
}
|
|
@@ -17008,35 +16735,9 @@ ${skillInstructions}`;
|
|
|
17008
16735
|
}
|
|
17009
16736
|
messageList.addSystem({
|
|
17010
16737
|
role: "system",
|
|
17011
|
-
content: 'IMPORTANT: Skills are NOT tools. Do not call skill names directly. To use a skill, call the skill
|
|
16738
|
+
content: 'IMPORTANT: Skills are NOT tools. Do not call skill names directly as tool names. To use a skill, call the `skill` tool with the skill name as the "name" parameter. When a user asks about a topic covered by an available skill, activate it immediately without asking for permission first.'
|
|
17012
16739
|
});
|
|
17013
16740
|
}
|
|
17014
|
-
if (this._activatedSkills.size > 0) {
|
|
17015
|
-
const activatedSkillsMessage = await this.formatActivatedSkills();
|
|
17016
|
-
if (activatedSkillsMessage) {
|
|
17017
|
-
messageList.addSystem({
|
|
17018
|
-
role: "system",
|
|
17019
|
-
content: activatedSkillsMessage
|
|
17020
|
-
});
|
|
17021
|
-
}
|
|
17022
|
-
}
|
|
17023
|
-
const skillTools = {};
|
|
17024
|
-
if (hasSkills) {
|
|
17025
|
-
skillTools["skill-activate"] = this.withNoApproval(this.createSkillActivateTool());
|
|
17026
|
-
skillTools["skill-search"] = this.withNoApproval(this.createSkillSearchTool());
|
|
17027
|
-
}
|
|
17028
|
-
if (this._activatedSkills.size > 0) {
|
|
17029
|
-
skillTools["skill-read-reference"] = this.withNoApproval(this.createSkillReadReferenceTool());
|
|
17030
|
-
skillTools["skill-read-script"] = this.withNoApproval(this.createSkillReadScriptTool());
|
|
17031
|
-
skillTools["skill-read-asset"] = this.withNoApproval(this.createSkillReadAssetTool());
|
|
17032
|
-
}
|
|
17033
|
-
return {
|
|
17034
|
-
messageList,
|
|
17035
|
-
tools: {
|
|
17036
|
-
...tools,
|
|
17037
|
-
...skillTools
|
|
17038
|
-
}
|
|
17039
|
-
};
|
|
17040
16741
|
}
|
|
17041
16742
|
};
|
|
17042
16743
|
|
|
@@ -19796,6 +19497,19 @@ ${errorMessages}`,
|
|
|
19796
19497
|
this.model = Array.isArray(this.#originalModel) ? [...this.#originalModel] : this.#originalModel;
|
|
19797
19498
|
this.logger.debug(`[Agents:${this.name}] Model reset to original.`, { model: this.model, name: this.name });
|
|
19798
19499
|
}
|
|
19500
|
+
/**
|
|
19501
|
+
* Returns a snapshot of the raw field values that may be overridden by stored config.
|
|
19502
|
+
* Used by the editor to save/restore code defaults externally.
|
|
19503
|
+
* @internal
|
|
19504
|
+
*/
|
|
19505
|
+
__getOverridableFields() {
|
|
19506
|
+
return {
|
|
19507
|
+
instructions: this.#instructions,
|
|
19508
|
+
model: this.model,
|
|
19509
|
+
tools: this.#tools,
|
|
19510
|
+
workspace: this.#workspace
|
|
19511
|
+
};
|
|
19512
|
+
}
|
|
19799
19513
|
reorderModels(modelIds) {
|
|
19800
19514
|
if (!Array.isArray(this.model)) {
|
|
19801
19515
|
this.logger.warn(`[Agents:${this.name}] model is not an array`);
|
|
@@ -20129,6 +19843,59 @@ ${errorMessages}`,
|
|
|
20129
19843
|
}
|
|
20130
19844
|
return convertedWorkspaceTools;
|
|
20131
19845
|
}
|
|
19846
|
+
/**
|
|
19847
|
+
* Returns skill tools (skill, skill_search, skill_read) when the workspace
|
|
19848
|
+
* has skills configured. These are added at the Agent level (like workspace
|
|
19849
|
+
* tools) rather than inside a processor, so they persist across turns and
|
|
19850
|
+
* survive serialization across tool-approval pauses.
|
|
19851
|
+
* @internal
|
|
19852
|
+
*/
|
|
19853
|
+
async listSkillTools({
|
|
19854
|
+
runId,
|
|
19855
|
+
resourceId,
|
|
19856
|
+
threadId,
|
|
19857
|
+
requestContext,
|
|
19858
|
+
mastraProxy,
|
|
19859
|
+
autoResumeSuspendedTools,
|
|
19860
|
+
...rest
|
|
19861
|
+
}) {
|
|
19862
|
+
const observabilityContext = resolveObservabilityContext(rest);
|
|
19863
|
+
let convertedSkillTools = {};
|
|
19864
|
+
if (this._agentNetworkAppend) {
|
|
19865
|
+
return convertedSkillTools;
|
|
19866
|
+
}
|
|
19867
|
+
const workspace = await this.getWorkspace({ requestContext });
|
|
19868
|
+
if (!workspace?.skills) {
|
|
19869
|
+
return convertedSkillTools;
|
|
19870
|
+
}
|
|
19871
|
+
const skillTools = createSkillTools(workspace.skills);
|
|
19872
|
+
if (Object.keys(skillTools).length > 0) {
|
|
19873
|
+
this.logger.debug(`[Agent:${this.name}] - Adding skill tools: ${Object.keys(skillTools).join(", ")}`, {
|
|
19874
|
+
runId
|
|
19875
|
+
});
|
|
19876
|
+
for (const [toolName, tool2] of Object.entries(skillTools)) {
|
|
19877
|
+
const toolObj = tool2;
|
|
19878
|
+
const options = {
|
|
19879
|
+
name: toolName,
|
|
19880
|
+
runId,
|
|
19881
|
+
threadId,
|
|
19882
|
+
resourceId,
|
|
19883
|
+
logger: this.logger,
|
|
19884
|
+
mastra: mastraProxy,
|
|
19885
|
+
agentName: this.name,
|
|
19886
|
+
requestContext,
|
|
19887
|
+
...observabilityContext,
|
|
19888
|
+
model: await this.getModel({ requestContext }),
|
|
19889
|
+
tracingPolicy: this.#options?.tracingPolicy,
|
|
19890
|
+
requireApproval: false
|
|
19891
|
+
// Skill tools never require approval
|
|
19892
|
+
};
|
|
19893
|
+
const convertedToCoreTool = makeCoreTool(toolObj, options, void 0, autoResumeSuspendedTools);
|
|
19894
|
+
convertedSkillTools[toolName] = convertedToCoreTool;
|
|
19895
|
+
}
|
|
19896
|
+
}
|
|
19897
|
+
return convertedSkillTools;
|
|
19898
|
+
}
|
|
20132
19899
|
/**
|
|
20133
19900
|
* Executes input processors on the message list before LLM processing.
|
|
20134
19901
|
* @internal
|
|
@@ -21331,6 +21098,15 @@ ${effectiveInstructions}`;
|
|
|
21331
21098
|
mastraProxy,
|
|
21332
21099
|
autoResumeSuspendedTools
|
|
21333
21100
|
});
|
|
21101
|
+
const skillTools = await this.listSkillTools({
|
|
21102
|
+
runId,
|
|
21103
|
+
resourceId,
|
|
21104
|
+
threadId,
|
|
21105
|
+
requestContext,
|
|
21106
|
+
...observabilityContext,
|
|
21107
|
+
mastraProxy,
|
|
21108
|
+
autoResumeSuspendedTools
|
|
21109
|
+
});
|
|
21334
21110
|
const allTools = {
|
|
21335
21111
|
...assignedTools,
|
|
21336
21112
|
...memoryTools,
|
|
@@ -21338,7 +21114,8 @@ ${effectiveInstructions}`;
|
|
|
21338
21114
|
...clientSideTools,
|
|
21339
21115
|
...agentTools,
|
|
21340
21116
|
...workflowTools,
|
|
21341
|
-
...workspaceTools
|
|
21117
|
+
...workspaceTools,
|
|
21118
|
+
...skillTools
|
|
21342
21119
|
};
|
|
21343
21120
|
return this.formatTools(allTools);
|
|
21344
21121
|
}
|
|
@@ -22084,7 +21861,7 @@ ${effectiveInstructions}`;
|
|
|
22084
21861
|
}
|
|
22085
21862
|
const fullOutput = await result.result.getFullOutput();
|
|
22086
21863
|
const error = fullOutput.error;
|
|
22087
|
-
if (
|
|
21864
|
+
if (error) {
|
|
22088
21865
|
throw error;
|
|
22089
21866
|
}
|
|
22090
21867
|
return fullOutput;
|
|
@@ -22288,7 +22065,7 @@ ${effectiveInstructions}`;
|
|
|
22288
22065
|
}
|
|
22289
22066
|
const fullOutput = await result.result.getFullOutput();
|
|
22290
22067
|
const error = fullOutput.error;
|
|
22291
|
-
if (
|
|
22068
|
+
if (error) {
|
|
22292
22069
|
throw error;
|
|
22293
22070
|
}
|
|
22294
22071
|
return fullOutput;
|
|
@@ -26320,5 +26097,5 @@ var MockMemory = class extends MastraMemory {
|
|
|
26320
26097
|
};
|
|
26321
26098
|
|
|
26322
26099
|
export { Agent, BaseProcessor, BatchPartsProcessor, ChunkFrom, DefaultExecutionEngine, ExecutionEngine, FilePartSchema, ImagePartSchema, LanguageDetector, MastraAgentNetworkStream, MastraMemory, MastraModelOutput, MastraScorer, MemoryProcessor, MessageContentSchema, MessageHistory, MessagePartSchema, MockMemory, ModerationProcessor, PIIDetector, ProcessorInputPhaseSchema, ProcessorInputStepPhaseSchema, ProcessorMessageContentSchema, ProcessorMessageSchema, ProcessorOutputResultPhaseSchema, ProcessorOutputStepPhaseSchema, ProcessorOutputStreamPhaseSchema, ProcessorRunner, ProcessorState, ProcessorStepInputSchema, ProcessorStepOutputSchema, ProcessorStepSchema, PromptInjectionDetector, ReasoningPartSchema, Run, SemanticRecall, SkillsProcessor, SourcePartSchema, StepStartPartSchema, StructuredOutputProcessor, SystemPromptScrubber, TextPartSchema, TokenLimiterProcessor, ToolCallFilter, ToolInvocationPartSchema, ToolSearchProcessor, TripWire, UnicodeNormalizer, WORKING_MEMORY_END_TAG, WORKING_MEMORY_START_TAG, Workflow, WorkflowRunOutput, WorkingMemory, WorkspaceInstructionsProcessor, augmentWithInit, cleanStepResult, cloneStep, cloneWorkflow, convertFullStreamChunkToMastra, convertFullStreamChunkToUIMessageStream, convertMastraChunkToAISDKv5, createDeprecationProxy, createScorer, createStep, createTimeTravelExecutionParams, createWorkflow, extractWorkingMemoryContent, extractWorkingMemoryTags, formatCheckFeedback, formatCompletionFeedback, formatStreamCompletionFeedback, formatValidationFeedback, generateFinalResult, generateStructuredFinalResult, getResumeLabelsByStepId, getStepIds, getStepResult, getThreadOMMetadata, getZodErrors, globalEmbeddingCache, hydrateSerializedStepErrors, isObservationalMemoryEnabled, isProcessor, isProcessorWorkflow, isSupportedLanguageModel, loop, mapVariable, memoryDefaultOptions, parseMemoryRequestContext, removeWorkingMemoryTags, resolveThreadIdFromArgs, runChecks, runCompletionScorers, runCountDeprecationMessage, runDefaultCompletionCheck, runStreamCompletionScorers, runValidation, setThreadOMMetadata, supportedLanguageModelSpecifications, tryGenerateWithJsonFallback, tryStreamWithJsonFallback, validateStepInput, validateStepRequestContext, validateStepResumeData, validateStepStateData, validateStepSuspendData };
|
|
26323
|
-
//# sourceMappingURL=chunk-
|
|
26324
|
-
//# sourceMappingURL=chunk-
|
|
26100
|
+
//# sourceMappingURL=chunk-YC6Z75K2.js.map
|
|
26101
|
+
//# sourceMappingURL=chunk-YC6Z75K2.js.map
|