@mastra/core 1.4.0 → 1.5.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (369) hide show
  1. package/CHANGELOG.md +368 -0
  2. package/dist/agent/agent.d.ts +3 -2
  3. package/dist/agent/agent.d.ts.map +1 -1
  4. package/dist/agent/index.cjs +13 -13
  5. package/dist/agent/index.js +2 -2
  6. package/dist/agent/message-list/conversion/output-converter.d.ts.map +1 -1
  7. package/dist/agent/message-list/index.cjs +18 -18
  8. package/dist/agent/message-list/index.js +1 -1
  9. package/dist/agent/message-list/merge/MessageMerger.d.ts.map +1 -1
  10. package/dist/agent/message-list/message-list.d.ts.map +1 -1
  11. package/dist/agent/types.d.ts +2 -2
  12. package/dist/agent/types.d.ts.map +1 -1
  13. package/dist/agent/workflows/prepare-stream/index.d.ts +1 -0
  14. package/dist/agent/workflows/prepare-stream/index.d.ts.map +1 -1
  15. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts +1 -0
  16. package/dist/agent/workflows/prepare-stream/prepare-tools-step.d.ts.map +1 -1
  17. package/dist/agent/workflows/prepare-stream/schema.d.ts +8 -0
  18. package/dist/agent/workflows/prepare-stream/schema.d.ts.map +1 -1
  19. package/dist/{chunk-Y3TQ52UE.js → chunk-33TGTTTS.js} +4 -3
  20. package/dist/chunk-33TGTTTS.js.map +1 -0
  21. package/dist/{chunk-3X3CZUXI.js → chunk-3KJW4EMO.js} +660 -206
  22. package/dist/chunk-3KJW4EMO.js.map +1 -0
  23. package/dist/{chunk-YNNJLLFN.cjs → chunk-3YMDR4OL.cjs} +661 -207
  24. package/dist/chunk-3YMDR4OL.cjs.map +1 -0
  25. package/dist/{chunk-NJ7TL3LQ.js → chunk-5EOLBHHS.js} +26 -15
  26. package/dist/chunk-5EOLBHHS.js.map +1 -0
  27. package/dist/{chunk-RZ4CIIZR.js → chunk-6DUTLERJ.js} +4 -4
  28. package/dist/{chunk-RZ4CIIZR.js.map → chunk-6DUTLERJ.js.map} +1 -1
  29. package/dist/{chunk-VTE2OBKS.cjs → chunk-A6EWCOGA.cjs} +417 -77
  30. package/dist/chunk-A6EWCOGA.cjs.map +1 -0
  31. package/dist/{chunk-4XSAZPPS.js → chunk-A7V2NSY3.js} +313 -137
  32. package/dist/chunk-A7V2NSY3.js.map +1 -0
  33. package/dist/{chunk-FLPEGTEK.js → chunk-AIRMLZ43.js} +5 -5
  34. package/dist/{chunk-FLPEGTEK.js.map → chunk-AIRMLZ43.js.map} +1 -1
  35. package/dist/{chunk-DBSVT6AR.cjs → chunk-BKQAP27M.cjs} +9 -9
  36. package/dist/{chunk-DBSVT6AR.cjs.map → chunk-BKQAP27M.cjs.map} +1 -1
  37. package/dist/{chunk-RS6CZXGA.js → chunk-BQHWJLXU.js} +15 -4
  38. package/dist/chunk-BQHWJLXU.js.map +1 -0
  39. package/dist/{chunk-V2MLGA7T.js → chunk-CXVMDV2B.js} +417 -78
  40. package/dist/chunk-CXVMDV2B.js.map +1 -0
  41. package/dist/{chunk-NKYWDNCI.cjs → chunk-E2FHTXAI.cjs} +7 -7
  42. package/dist/{chunk-NKYWDNCI.cjs.map → chunk-E2FHTXAI.cjs.map} +1 -1
  43. package/dist/{chunk-7UWHFWST.cjs → chunk-EAZ6YDCQ.cjs} +15 -3
  44. package/dist/chunk-EAZ6YDCQ.cjs.map +1 -0
  45. package/dist/{chunk-64WGYTQK.cjs → chunk-FTBLAVTF.cjs} +55 -55
  46. package/dist/{chunk-64WGYTQK.cjs.map → chunk-FTBLAVTF.cjs.map} +1 -1
  47. package/dist/{chunk-4EHGOATH.js → chunk-FZ5DRHKE.js} +1337 -547
  48. package/dist/chunk-FZ5DRHKE.js.map +1 -0
  49. package/dist/{chunk-4TQ4EBYX.js → chunk-GEDGDKQ6.js} +9 -9
  50. package/dist/chunk-GEDGDKQ6.js.map +1 -0
  51. package/dist/{chunk-QTTWRCB5.js → chunk-I3AWF54W.js} +5 -5
  52. package/dist/{chunk-QTTWRCB5.js.map → chunk-I3AWF54W.js.map} +1 -1
  53. package/dist/{chunk-U2HKJZCI.js → chunk-IBNCZTNQ.js} +6 -6
  54. package/dist/{chunk-U2HKJZCI.js.map → chunk-IBNCZTNQ.js.map} +1 -1
  55. package/dist/{chunk-3JVFFAJX.cjs → chunk-IJIE3ZID.cjs} +27 -16
  56. package/dist/chunk-IJIE3ZID.cjs.map +1 -0
  57. package/dist/{chunk-NZG2JAKS.cjs → chunk-JWG272ZZ.cjs} +19 -19
  58. package/dist/chunk-JWG272ZZ.cjs.map +1 -0
  59. package/dist/{chunk-BP7VYTOP.cjs → chunk-JZ6TH4HQ.cjs} +954 -401
  60. package/dist/chunk-JZ6TH4HQ.cjs.map +1 -0
  61. package/dist/{chunk-SU5APAM6.cjs → chunk-KNXZ7KYL.cjs} +94 -6
  62. package/dist/chunk-KNXZ7KYL.cjs.map +1 -0
  63. package/dist/{chunk-CYUP7QWT.cjs → chunk-KRAGJ433.cjs} +4 -3
  64. package/dist/chunk-KRAGJ433.cjs.map +1 -0
  65. package/dist/{chunk-XDD5V446.cjs → chunk-MDC6VYA6.cjs} +6 -2
  66. package/dist/{chunk-XDD5V446.cjs.map → chunk-MDC6VYA6.cjs.map} +1 -1
  67. package/dist/{chunk-AXHBJ4GX.js → chunk-NN26FSKL.js} +10 -8
  68. package/dist/chunk-NN26FSKL.js.map +1 -0
  69. package/dist/{chunk-AY6DBRS3.js → chunk-OHLVZVIK.js} +36 -2
  70. package/dist/chunk-OHLVZVIK.js.map +1 -0
  71. package/dist/{chunk-5Q5Y34SS.js → chunk-PECKKR4C.js} +4 -4
  72. package/dist/{chunk-5Q5Y34SS.js.map → chunk-PECKKR4C.js.map} +1 -1
  73. package/dist/{chunk-HYRYTTMT.cjs → chunk-PHHJLGZU.cjs} +9 -9
  74. package/dist/{chunk-HYRYTTMT.cjs.map → chunk-PHHJLGZU.cjs.map} +1 -1
  75. package/dist/{chunk-65PHUUMF.cjs → chunk-QDH6MVJ7.cjs} +24 -22
  76. package/dist/chunk-QDH6MVJ7.cjs.map +1 -0
  77. package/dist/{chunk-VD5YA6RH.cjs → chunk-QSN5KQXZ.cjs} +18 -18
  78. package/dist/{chunk-VD5YA6RH.cjs.map → chunk-QSN5KQXZ.cjs.map} +1 -1
  79. package/dist/{chunk-4IJ4UDZX.cjs → chunk-RH2K66O2.cjs} +399 -223
  80. package/dist/chunk-RH2K66O2.cjs.map +1 -0
  81. package/dist/{chunk-4KFEMXTV.cjs → chunk-S4VVZI4E.cjs} +1361 -546
  82. package/dist/chunk-S4VVZI4E.cjs.map +1 -0
  83. package/dist/{chunk-ZATLLPIH.js → chunk-TPDMP7OD.js} +6 -2
  84. package/dist/chunk-TPDMP7OD.js.map +1 -0
  85. package/dist/{chunk-PS5ONCXY.js → chunk-UZFGMMKU.js} +82 -4
  86. package/dist/chunk-UZFGMMKU.js.map +1 -0
  87. package/dist/{chunk-7NKUSQEV.js → chunk-YIN5F7VO.js} +936 -389
  88. package/dist/chunk-YIN5F7VO.js.map +1 -0
  89. package/dist/{chunk-CZ4NQANZ.cjs → chunk-YW54RH77.cjs} +36 -2
  90. package/dist/chunk-YW54RH77.cjs.map +1 -0
  91. package/dist/datasets/experiment/executor.d.ts.map +1 -1
  92. package/dist/datasets/index.cjs +17 -17
  93. package/dist/datasets/index.js +2 -2
  94. package/dist/docs/SKILL.md +27 -1
  95. package/dist/docs/assets/SOURCE_MAP.json +463 -389
  96. package/dist/docs/references/docs-agents-processors.md +52 -0
  97. package/dist/docs/references/docs-observability-datasets-overview.md +188 -0
  98. package/dist/docs/references/docs-observability-datasets-running-experiments.md +266 -0
  99. package/dist/docs/references/docs-observability-tracing-exporters-cloud.md +7 -4
  100. package/dist/docs/references/reference-agents-generate.md +1 -1
  101. package/dist/docs/references/reference-configuration.md +3 -4
  102. package/dist/docs/references/reference-datasets-addItem.md +35 -0
  103. package/dist/docs/references/reference-datasets-addItems.md +33 -0
  104. package/dist/docs/references/reference-datasets-compareExperiments.md +48 -0
  105. package/dist/docs/references/reference-datasets-create.md +49 -0
  106. package/dist/docs/references/reference-datasets-dataset.md +78 -0
  107. package/dist/docs/references/reference-datasets-datasets-manager.md +84 -0
  108. package/dist/docs/references/reference-datasets-delete.md +23 -0
  109. package/dist/docs/references/reference-datasets-deleteExperiment.md +25 -0
  110. package/dist/docs/references/reference-datasets-deleteItem.md +25 -0
  111. package/dist/docs/references/reference-datasets-deleteItems.md +27 -0
  112. package/dist/docs/references/reference-datasets-get.md +29 -0
  113. package/dist/docs/references/reference-datasets-getDetails.md +45 -0
  114. package/dist/docs/references/reference-datasets-getExperiment.md +28 -0
  115. package/dist/docs/references/reference-datasets-getItem.md +31 -0
  116. package/dist/docs/references/reference-datasets-getItemHistory.md +29 -0
  117. package/dist/docs/references/reference-datasets-list.md +29 -0
  118. package/dist/docs/references/reference-datasets-listExperimentResults.md +37 -0
  119. package/dist/docs/references/reference-datasets-listExperiments.md +31 -0
  120. package/dist/docs/references/reference-datasets-listItems.md +44 -0
  121. package/dist/docs/references/reference-datasets-listVersions.md +31 -0
  122. package/dist/docs/references/reference-datasets-startExperiment.md +60 -0
  123. package/dist/docs/references/reference-datasets-startExperimentAsync.md +41 -0
  124. package/dist/docs/references/reference-datasets-update.md +46 -0
  125. package/dist/docs/references/reference-datasets-updateItem.md +36 -0
  126. package/dist/docs/references/reference-memory-observational-memory.md +36 -0
  127. package/dist/docs/references/reference-processors-processor-interface.md +4 -0
  128. package/dist/docs/references/reference-tools-create-tool.md +1 -1
  129. package/dist/docs/references/reference.md +24 -0
  130. package/dist/editor/index.d.ts +1 -1
  131. package/dist/editor/index.d.ts.map +1 -1
  132. package/dist/editor/types.d.ts +108 -2
  133. package/dist/editor/types.d.ts.map +1 -1
  134. package/dist/evals/index.cjs +20 -20
  135. package/dist/evals/index.js +3 -3
  136. package/dist/evals/scoreTraces/index.cjs +5 -5
  137. package/dist/evals/scoreTraces/index.js +2 -2
  138. package/dist/harness/harness.d.ts +281 -0
  139. package/dist/harness/harness.d.ts.map +1 -0
  140. package/dist/harness/index.cjs +1728 -0
  141. package/dist/harness/index.cjs.map +1 -0
  142. package/dist/harness/index.d.ts +4 -0
  143. package/dist/harness/index.d.ts.map +1 -0
  144. package/dist/harness/index.js +1723 -0
  145. package/dist/harness/index.js.map +1 -0
  146. package/dist/harness/tools.d.ts +65 -0
  147. package/dist/harness/tools.d.ts.map +1 -0
  148. package/dist/harness/types.d.ts +561 -0
  149. package/dist/harness/types.d.ts.map +1 -0
  150. package/dist/index.cjs +2 -2
  151. package/dist/index.js +1 -1
  152. package/dist/integration/index.cjs +2 -2
  153. package/dist/integration/index.js +1 -1
  154. package/dist/llm/index.cjs +20 -20
  155. package/dist/llm/index.js +3 -3
  156. package/dist/llm/model/gateways/constants.d.ts.map +1 -1
  157. package/dist/llm/model/gateways/models-dev.d.ts +2 -3
  158. package/dist/llm/model/gateways/models-dev.d.ts.map +1 -1
  159. package/dist/llm/model/provider-types.generated.d.ts +312 -93
  160. package/dist/loop/index.cjs +12 -12
  161. package/dist/loop/index.js +1 -1
  162. package/dist/loop/network/index.d.ts.map +1 -1
  163. package/dist/loop/test-utils/options.d.ts.map +1 -1
  164. package/dist/loop/test-utils/tools.d.ts.map +1 -1
  165. package/dist/loop/workflows/agentic-execution/llm-mapping-step.d.ts.map +1 -1
  166. package/dist/loop/workflows/agentic-execution/tool-call-step.d.ts.map +1 -1
  167. package/dist/loop/workflows/stream.d.ts.map +1 -1
  168. package/dist/mastra/index.cjs +2 -2
  169. package/dist/mastra/index.d.ts +3 -3
  170. package/dist/mastra/index.d.ts.map +1 -1
  171. package/dist/mastra/index.js +1 -1
  172. package/dist/memory/index.cjs +14 -14
  173. package/dist/memory/index.js +1 -1
  174. package/dist/memory/memory.d.ts +10 -0
  175. package/dist/memory/memory.d.ts.map +1 -1
  176. package/dist/memory/types.d.ts +24 -0
  177. package/dist/memory/types.d.ts.map +1 -1
  178. package/dist/models-dev-BW2GAM3K.cjs +12 -0
  179. package/dist/{models-dev-PPIXUUCU.cjs.map → models-dev-BW2GAM3K.cjs.map} +1 -1
  180. package/dist/models-dev-MDI5E2YA.js +3 -0
  181. package/dist/{models-dev-FQVUTQ7L.js.map → models-dev-MDI5E2YA.js.map} +1 -1
  182. package/dist/observability/index.cjs +11 -11
  183. package/dist/observability/index.js +1 -1
  184. package/dist/observability/utils.d.ts.map +1 -1
  185. package/dist/processors/index.cjs +41 -41
  186. package/dist/processors/index.js +1 -1
  187. package/dist/processors/processors/skills.d.ts +5 -0
  188. package/dist/processors/processors/skills.d.ts.map +1 -1
  189. package/dist/processors/runner.d.ts +2 -2
  190. package/dist/processors/runner.d.ts.map +1 -1
  191. package/dist/processors/step-schema.d.ts +218 -49453
  192. package/dist/processors/step-schema.d.ts.map +1 -1
  193. package/dist/provider-registry-4PH2JPIA.cjs +40 -0
  194. package/dist/{provider-registry-6LZAGQET.cjs.map → provider-registry-4PH2JPIA.cjs.map} +1 -1
  195. package/dist/provider-registry-VEJ3PN4S.js +3 -0
  196. package/dist/{provider-registry-QUNT7S55.js.map → provider-registry-VEJ3PN4S.js.map} +1 -1
  197. package/dist/provider-registry.json +657 -203
  198. package/dist/relevance/index.cjs +3 -3
  199. package/dist/relevance/index.js +1 -1
  200. package/dist/server/composite-auth.d.ts.map +1 -1
  201. package/dist/server/index.cjs +6 -1
  202. package/dist/server/index.cjs.map +1 -1
  203. package/dist/server/index.js +6 -1
  204. package/dist/server/index.js.map +1 -1
  205. package/dist/storage/base.d.ts +4 -1
  206. package/dist/storage/base.d.ts.map +1 -1
  207. package/dist/storage/constants.cjs +82 -42
  208. package/dist/storage/constants.d.ts +11 -1
  209. package/dist/storage/constants.d.ts.map +1 -1
  210. package/dist/storage/constants.js +1 -1
  211. package/dist/storage/domains/agents/inmemory.d.ts.map +1 -1
  212. package/dist/storage/domains/blobs/base.d.ts +47 -0
  213. package/dist/storage/domains/blobs/base.d.ts.map +1 -0
  214. package/dist/storage/domains/blobs/index.d.ts +3 -0
  215. package/dist/storage/domains/blobs/index.d.ts.map +1 -0
  216. package/dist/storage/domains/blobs/inmemory.d.ts +17 -0
  217. package/dist/storage/domains/blobs/inmemory.d.ts.map +1 -0
  218. package/dist/storage/domains/datasets/inmemory.d.ts.map +1 -1
  219. package/dist/storage/domains/index.d.ts +3 -0
  220. package/dist/storage/domains/index.d.ts.map +1 -1
  221. package/dist/storage/domains/inmemory-db.d.ts +7 -1
  222. package/dist/storage/domains/inmemory-db.d.ts.map +1 -1
  223. package/dist/storage/domains/mcp-clients/inmemory.d.ts.map +1 -1
  224. package/dist/storage/domains/operations/inmemory.d.ts.map +1 -1
  225. package/dist/storage/domains/prompt-blocks/inmemory.d.ts.map +1 -1
  226. package/dist/storage/domains/scorer-definitions/inmemory.d.ts.map +1 -1
  227. package/dist/storage/domains/skills/base.d.ts +47 -0
  228. package/dist/storage/domains/skills/base.d.ts.map +1 -0
  229. package/dist/storage/domains/skills/index.d.ts +3 -0
  230. package/dist/storage/domains/skills/index.d.ts.map +1 -0
  231. package/dist/storage/domains/skills/inmemory.d.ts +31 -0
  232. package/dist/storage/domains/skills/inmemory.d.ts.map +1 -0
  233. package/dist/storage/domains/versioned.d.ts +12 -3
  234. package/dist/storage/domains/versioned.d.ts.map +1 -1
  235. package/dist/storage/domains/workspaces/base.d.ts +47 -0
  236. package/dist/storage/domains/workspaces/base.d.ts.map +1 -0
  237. package/dist/storage/domains/workspaces/index.d.ts +3 -0
  238. package/dist/storage/domains/workspaces/index.d.ts.map +1 -0
  239. package/dist/storage/domains/workspaces/inmemory.d.ts +31 -0
  240. package/dist/storage/domains/workspaces/inmemory.d.ts.map +1 -0
  241. package/dist/storage/index.cjs +202 -138
  242. package/dist/storage/index.js +2 -2
  243. package/dist/storage/mock.d.ts.map +1 -1
  244. package/dist/storage/types.d.ts +422 -12
  245. package/dist/storage/types.d.ts.map +1 -1
  246. package/dist/stream/base/output.d.ts.map +1 -1
  247. package/dist/stream/index.cjs +11 -11
  248. package/dist/stream/index.js +2 -2
  249. package/dist/test-utils/llm-mock.cjs +4 -4
  250. package/dist/test-utils/llm-mock.js +1 -1
  251. package/dist/tool-loop-agent/index.cjs +4 -4
  252. package/dist/tool-loop-agent/index.js +1 -1
  253. package/dist/tools/index.cjs +8 -4
  254. package/dist/tools/index.js +1 -1
  255. package/dist/tools/is-vercel-tool.cjs +2 -2
  256. package/dist/tools/is-vercel-tool.js +1 -1
  257. package/dist/tools/tool-builder/builder.d.ts.map +1 -1
  258. package/dist/tools/tool.d.ts +13 -0
  259. package/dist/tools/tool.d.ts.map +1 -1
  260. package/dist/tools/toolchecks.d.ts.map +1 -1
  261. package/dist/tools/types.d.ts +24 -0
  262. package/dist/tools/types.d.ts.map +1 -1
  263. package/dist/types/zod-compat.d.ts +27 -6
  264. package/dist/types/zod-compat.d.ts.map +1 -1
  265. package/dist/utils.cjs +23 -23
  266. package/dist/utils.js +1 -1
  267. package/dist/vector/index.cjs +12 -12
  268. package/dist/vector/index.js +2 -2
  269. package/dist/workflows/evented/index.cjs +10 -10
  270. package/dist/workflows/evented/index.js +1 -1
  271. package/dist/workflows/handlers/entry.d.ts.map +1 -1
  272. package/dist/workflows/index.cjs +25 -25
  273. package/dist/workflows/index.js +1 -1
  274. package/dist/workflows/workflow.d.ts +2 -2
  275. package/dist/workflows/workflow.d.ts.map +1 -1
  276. package/dist/workspace/constants/index.d.ts +1 -0
  277. package/dist/workspace/constants/index.d.ts.map +1 -1
  278. package/dist/workspace/errors.d.ts +3 -0
  279. package/dist/workspace/errors.d.ts.map +1 -1
  280. package/dist/workspace/filesystem/composite-filesystem.d.ts +75 -6
  281. package/dist/workspace/filesystem/composite-filesystem.d.ts.map +1 -1
  282. package/dist/workspace/filesystem/local-filesystem.d.ts +42 -0
  283. package/dist/workspace/filesystem/local-filesystem.d.ts.map +1 -1
  284. package/dist/workspace/glob.d.ts +61 -0
  285. package/dist/workspace/glob.d.ts.map +1 -0
  286. package/dist/workspace/index.cjs +133 -41
  287. package/dist/workspace/index.d.ts +8 -1
  288. package/dist/workspace/index.d.ts.map +1 -1
  289. package/dist/workspace/index.js +1 -1
  290. package/dist/workspace/sandbox/local-sandbox.d.ts.map +1 -1
  291. package/dist/workspace/skills/composite-versioned-skill-source.d.ts +44 -0
  292. package/dist/workspace/skills/composite-versioned-skill-source.d.ts.map +1 -0
  293. package/dist/workspace/skills/index.d.ts +3 -0
  294. package/dist/workspace/skills/index.d.ts.map +1 -1
  295. package/dist/workspace/skills/local-skill-source.d.ts.map +1 -1
  296. package/dist/workspace/skills/publish.d.ts +34 -0
  297. package/dist/workspace/skills/publish.d.ts.map +1 -0
  298. package/dist/workspace/skills/skill-source.d.ts +2 -0
  299. package/dist/workspace/skills/skill-source.d.ts.map +1 -1
  300. package/dist/workspace/skills/types.d.ts +16 -0
  301. package/dist/workspace/skills/types.d.ts.map +1 -1
  302. package/dist/workspace/skills/versioned-skill-source.d.ts +20 -0
  303. package/dist/workspace/skills/versioned-skill-source.d.ts.map +1 -0
  304. package/dist/workspace/skills/workspace-skills.d.ts +5 -0
  305. package/dist/workspace/skills/workspace-skills.d.ts.map +1 -1
  306. package/dist/workspace/tools/delete-file.d.ts +5 -0
  307. package/dist/workspace/tools/delete-file.d.ts.map +1 -0
  308. package/dist/workspace/tools/edit-file.d.ts +7 -0
  309. package/dist/workspace/tools/edit-file.d.ts.map +1 -0
  310. package/dist/workspace/tools/execute-command.d.ts +7 -0
  311. package/dist/workspace/tools/execute-command.d.ts.map +1 -0
  312. package/dist/workspace/tools/file-stat.d.ts +4 -0
  313. package/dist/workspace/tools/file-stat.d.ts.map +1 -0
  314. package/dist/workspace/tools/grep.d.ts +9 -0
  315. package/dist/workspace/tools/grep.d.ts.map +1 -0
  316. package/dist/workspace/tools/helpers.d.ts +36 -0
  317. package/dist/workspace/tools/helpers.d.ts.map +1 -0
  318. package/dist/workspace/tools/index-content.d.ts +6 -0
  319. package/dist/workspace/tools/index-content.d.ts.map +1 -0
  320. package/dist/workspace/tools/index.d.ts +13 -1
  321. package/dist/workspace/tools/index.d.ts.map +1 -1
  322. package/dist/workspace/tools/list-files.d.ts +10 -0
  323. package/dist/workspace/tools/list-files.d.ts.map +1 -0
  324. package/dist/workspace/tools/mkdir.d.ts +5 -0
  325. package/dist/workspace/tools/mkdir.d.ts.map +1 -0
  326. package/dist/workspace/tools/read-file.d.ts +8 -0
  327. package/dist/workspace/tools/read-file.d.ts.map +1 -0
  328. package/dist/workspace/tools/search.d.ts +7 -0
  329. package/dist/workspace/tools/search.d.ts.map +1 -0
  330. package/dist/workspace/tools/tools.d.ts +5 -7
  331. package/dist/workspace/tools/tools.d.ts.map +1 -1
  332. package/dist/workspace/tools/tree-formatter.d.ts +2 -0
  333. package/dist/workspace/tools/tree-formatter.d.ts.map +1 -1
  334. package/dist/workspace/tools/write-file.d.ts +6 -0
  335. package/dist/workspace/tools/write-file.d.ts.map +1 -0
  336. package/dist/workspace/workspace.d.ts +56 -10
  337. package/dist/workspace/workspace.d.ts.map +1 -1
  338. package/harness.d.ts +1 -0
  339. package/package.json +8 -6
  340. package/src/llm/model/provider-types.generated.d.ts +312 -93
  341. package/dist/chunk-3JVFFAJX.cjs.map +0 -1
  342. package/dist/chunk-3X3CZUXI.js.map +0 -1
  343. package/dist/chunk-4EHGOATH.js.map +0 -1
  344. package/dist/chunk-4IJ4UDZX.cjs.map +0 -1
  345. package/dist/chunk-4KFEMXTV.cjs.map +0 -1
  346. package/dist/chunk-4TQ4EBYX.js.map +0 -1
  347. package/dist/chunk-4XSAZPPS.js.map +0 -1
  348. package/dist/chunk-65PHUUMF.cjs.map +0 -1
  349. package/dist/chunk-7NKUSQEV.js.map +0 -1
  350. package/dist/chunk-7UWHFWST.cjs.map +0 -1
  351. package/dist/chunk-AXHBJ4GX.js.map +0 -1
  352. package/dist/chunk-AY6DBRS3.js.map +0 -1
  353. package/dist/chunk-BP7VYTOP.cjs.map +0 -1
  354. package/dist/chunk-CYUP7QWT.cjs.map +0 -1
  355. package/dist/chunk-CZ4NQANZ.cjs.map +0 -1
  356. package/dist/chunk-NJ7TL3LQ.js.map +0 -1
  357. package/dist/chunk-NZG2JAKS.cjs.map +0 -1
  358. package/dist/chunk-PS5ONCXY.js.map +0 -1
  359. package/dist/chunk-RS6CZXGA.js.map +0 -1
  360. package/dist/chunk-SU5APAM6.cjs.map +0 -1
  361. package/dist/chunk-V2MLGA7T.js.map +0 -1
  362. package/dist/chunk-VTE2OBKS.cjs.map +0 -1
  363. package/dist/chunk-Y3TQ52UE.js.map +0 -1
  364. package/dist/chunk-YNNJLLFN.cjs.map +0 -1
  365. package/dist/chunk-ZATLLPIH.js.map +0 -1
  366. package/dist/models-dev-FQVUTQ7L.js +0 -3
  367. package/dist/models-dev-PPIXUUCU.cjs +0 -12
  368. package/dist/provider-registry-6LZAGQET.cjs +0 -40
  369. package/dist/provider-registry-QUNT7S55.js +0 -3
@@ -0,0 +1,44 @@
1
+ import type { BlobStore } from '../../storage/domains/blobs/base.js';
2
+ import type { SkillVersionTree } from '../../storage/types.js';
3
+ import type { SkillSource, SkillSourceEntry, SkillSourceStat } from './skill-source.js';
4
+ /**
5
+ * A skill entry for the composite source.
6
+ * Each entry represents one skill's versioned tree, mounted under a directory name.
7
+ */
8
+ export interface VersionedSkillEntry {
9
+ /** Directory name for this skill (used as the subdirectory under the root) */
10
+ dirName: string;
11
+ /** The skill version's file tree manifest */
12
+ tree: SkillVersionTree;
13
+ /** When this version was created */
14
+ versionCreatedAt: Date;
15
+ }
16
+ /**
17
+ * A SkillSource that composes multiple versioned skill trees into a virtual directory.
18
+ *
19
+ * Each skill is mounted under a directory name, so the composite source looks like:
20
+ * / (root - virtual)
21
+ * /brand-guidelines/ (skill 1 root)
22
+ * /brand-guidelines/SKILL.md (skill 1 files from blob store)
23
+ * /tone-of-voice/ (skill 2 root)
24
+ * /tone-of-voice/SKILL.md (skill 2 files from blob store)
25
+ *
26
+ * This allows WorkspaceSkillsImpl to discover skills normally by scanning the root
27
+ * for subdirectories containing SKILL.md.
28
+ *
29
+ * Can also include a fallback source for "live" skills that read from the filesystem.
30
+ */
31
+ export declare class CompositeVersionedSkillSource implements SkillSource {
32
+ #private;
33
+ constructor(entries: VersionedSkillEntry[], blobStore: BlobStore, options?: {
34
+ /** Fallback source for "live" skills that read from the filesystem */
35
+ fallback?: SkillSource;
36
+ /** Skill directory names that should be served from the fallback source */
37
+ fallbackSkills?: string[];
38
+ });
39
+ exists(path: string): Promise<boolean>;
40
+ stat(path: string): Promise<SkillSourceStat>;
41
+ readFile(path: string): Promise<string | Buffer>;
42
+ readdir(path: string): Promise<SkillSourceEntry[]>;
43
+ }
44
+ //# sourceMappingURL=composite-versioned-skill-source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"composite-versioned-skill-source.d.ts","sourceRoot":"","sources":["../../../src/workspace/skills/composite-versioned-skill-source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAGrF;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,8EAA8E;IAC9E,OAAO,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,IAAI,EAAE,gBAAgB,CAAC;IACvB,oCAAoC;IACpC,gBAAgB,EAAE,IAAI,CAAC;CACxB;AAED;;;;;;;;;;;;;;GAcG;AACH,qBAAa,6BAA8B,YAAW,WAAW;;gBAM7D,OAAO,EAAE,mBAAmB,EAAE,EAC9B,SAAS,EAAE,SAAS,EACpB,OAAO,CAAC,EAAE;QACR,sEAAsE;QACtE,QAAQ,CAAC,EAAE,WAAW,CAAC;QACvB,2EAA2E;QAC3E,cAAc,CAAC,EAAE,MAAM,EAAE,CAAC;KAC3B;IA8CG,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAYtC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAsB5C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAShD,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;CA+BzD"}
@@ -10,5 +10,8 @@ export * from './types.js';
10
10
  export * from './schemas.js';
11
11
  export * from './skill-source.js';
12
12
  export * from './local-skill-source.js';
13
+ export * from './versioned-skill-source.js';
14
+ export * from './composite-versioned-skill-source.js';
13
15
  export * from './workspace-skills.js';
16
+ export * from './publish.js';
14
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/workspace/skills/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/workspace/skills/index.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC;AAC1B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,sBAAsB,CAAC;AACrC,cAAc,0BAA0B,CAAC;AACzC,cAAc,oCAAoC,CAAC;AACnD,cAAc,oBAAoB,CAAC;AACnC,cAAc,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"local-skill-source.d.ts","sourceRoot":"","sources":["../../../src/workspace/skills/local-skill-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAErF;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,qBAAa,gBAAiB,YAAW,WAAW;;gBAGtC,OAAO,GAAE,uBAA4B;IAe3C,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI3C,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAIjD,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAUrD,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;CAQ9D"}
1
+ {"version":3,"file":"local-skill-source.d.ts","sourceRoot":"","sources":["../../../src/workspace/skills/local-skill-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAMH,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAErF;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;GAKG;AACH,qBAAa,gBAAiB,YAAW,WAAW;;gBAGtC,OAAO,GAAE,uBAA4B;IAe3C,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAI3C,IAAI,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAIjD,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAUrD,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;CAa9D"}
@@ -0,0 +1,34 @@
1
+ import type { BlobStore } from '../../storage/domains/blobs/base.js';
2
+ import type { SkillVersionTree, StorageBlobEntry, StorageSkillSnapshotType } from '../../storage/types.js';
3
+ import type { SkillSource } from './skill-source.js';
4
+ /**
5
+ * Result of collecting a skill's filesystem tree.
6
+ * Contains the tree manifest, the blob entries to store, and parsed SKILL.md fields.
7
+ */
8
+ export interface SkillPublishResult {
9
+ /** Denormalized snapshot fields parsed from SKILL.md frontmatter */
10
+ snapshot: Omit<StorageSkillSnapshotType, 'tree'>;
11
+ /** Content-addressable file tree manifest */
12
+ tree: SkillVersionTree;
13
+ /** Blob entries to store (already deduplicated by hash) */
14
+ blobs: StorageBlobEntry[];
15
+ }
16
+ /**
17
+ * Collect a skill from a SkillSource for publishing.
18
+ * Walks the skill directory, hashes all files, parses SKILL.md frontmatter,
19
+ * and returns everything needed to create a new version.
20
+ *
21
+ * @param source - The SkillSource to read from (live filesystem or any other source)
22
+ * @param skillPath - Path to the skill directory (containing SKILL.md)
23
+ */
24
+ export declare function collectSkillForPublish(source: SkillSource, skillPath: string): Promise<SkillPublishResult>;
25
+ /**
26
+ * Publish a skill: collect files, store blobs, create version.
27
+ * This is the full publish flow.
28
+ *
29
+ * @param source - The SkillSource to read from
30
+ * @param skillPath - Path to the skill directory
31
+ * @param blobStore - Where to store file blobs
32
+ */
33
+ export declare function publishSkillFromSource(source: SkillSource, skillPath: string, blobStore: BlobStore): Promise<SkillPublishResult>;
34
+ //# sourceMappingURL=publish.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"publish.d.ts","sourceRoot":"","sources":["../../../src/workspace/skills/publish.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,KAAK,EACV,gBAAgB,EAEhB,gBAAgB,EAChB,wBAAwB,EACzB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAoB,MAAM,gBAAgB,CAAC;AAEpE;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC,oEAAoE;IACpE,QAAQ,EAAE,IAAI,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAC;IACjD,6CAA6C;IAC7C,IAAI,EAAE,gBAAgB,CAAC;IACvB,2DAA2D;IAC3D,KAAK,EAAE,gBAAgB,EAAE,CAAC;CAC3B;AAgID;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC,CA2FhH;AAED;;;;;;;GAOG;AACH,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,WAAW,EACnB,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,SAAS,GACnB,OAAO,CAAC,kBAAkB,CAAC,CAK7B"}
@@ -33,6 +33,8 @@ export interface SkillSourceEntry {
33
33
  name: string;
34
34
  /** Entry type */
35
35
  type: 'file' | 'directory';
36
+ /** Whether this entry is a symbolic link */
37
+ isSymlink?: boolean;
36
38
  }
37
39
  /**
38
40
  * Minimal read-only interface for loading skills.
@@ -1 +1 @@
1
- {"version":3,"file":"skill-source.d.ts","sourceRoot":"","sources":["../../../src/workspace/skills/skill-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,SAAS,EAAE,IAAI,CAAC;IAChB,6BAA6B;IAC7B,UAAU,EAAE,IAAI,CAAC;IACjB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB;IACjB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;CAC5B;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvC;;;OAGG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAE7C;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAEjD;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;CACpD"}
1
+ {"version":3,"file":"skill-source.d.ts","sourceRoot":"","sources":["../../../src/workspace/skills/skill-source.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;GAGG;AACH,MAAM,WAAW,eAAe;IAC9B,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,wCAAwC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,SAAS,EAAE,IAAI,CAAC;IAChB,6BAA6B;IAC7B,UAAU,EAAE,IAAI,CAAC;IACjB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,0CAA0C;IAC1C,IAAI,EAAE,MAAM,CAAC;IACb,iBAAiB;IACjB,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,4CAA4C;IAC5C,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED;;;;;GAKG;AACH,MAAM,WAAW,WAAW;IAC1B;;OAEG;IACH,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAEvC;;;OAGG;IACH,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IAE7C;;OAEG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAEjD;;OAEG;IACH,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC;CACpD"}
@@ -247,5 +247,21 @@ export interface WorkspaceSkills {
247
247
  * Get all asset file paths for a skill
248
248
  */
249
249
  listAssets(skillName: string): Promise<string[]>;
250
+ /**
251
+ * Surgically add or update a single skill in the cache from its path.
252
+ * Parses the SKILL.md, updates the in-memory cache and search index,
253
+ * and bumps the discovery timestamp so maybeRefresh() won't trigger a full scan.
254
+ *
255
+ * @param skillPath - Path to the skill directory or SKILL.md file
256
+ */
257
+ addSkill?(skillPath: string): Promise<void>;
258
+ /**
259
+ * Surgically remove a single skill from the cache by name.
260
+ * Removes the skill from the in-memory cache and search index,
261
+ * and bumps the discovery timestamp so maybeRefresh() won't trigger a full scan.
262
+ *
263
+ * @param skillName - Name of the skill to remove
264
+ */
265
+ removeSkill?(skillName: string): Promise<void>;
250
266
  }
251
267
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/workspace/skills/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/workspace/skills/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,20 @@
1
+ import type { BlobStore } from '../../storage/domains/blobs/base.js';
2
+ import type { SkillVersionTree } from '../../storage/types.js';
3
+ import type { SkillSource, SkillSourceEntry, SkillSourceStat } from './skill-source.js';
4
+ /**
5
+ * A SkillSource implementation that reads skill files from a versioned
6
+ * content-addressable blob store, using a SkillVersionTree manifest.
7
+ *
8
+ * This is used by production agents to read from published skill versions
9
+ * rather than the live filesystem. The SkillVersionTree maps file paths
10
+ * to blob hashes, and the BlobStore provides the actual content.
11
+ */
12
+ export declare class VersionedSkillSource implements SkillSource {
13
+ #private;
14
+ constructor(tree: SkillVersionTree, blobStore: BlobStore, versionCreatedAt: Date);
15
+ exists(path: string): Promise<boolean>;
16
+ stat(path: string): Promise<SkillSourceStat>;
17
+ readFile(path: string): Promise<string | Buffer>;
18
+ readdir(path: string): Promise<SkillSourceEntry[]>;
19
+ }
20
+ //# sourceMappingURL=versioned-skill-source.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"versioned-skill-source.d.ts","sourceRoot":"","sources":["../../../src/workspace/skills/versioned-skill-source.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAErF;;;;;;;GAOG;AACH,qBAAa,oBAAqB,YAAW,WAAW;;gBAQ1C,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE,SAAS,EAAE,gBAAgB,EAAE,IAAI;IAmC1E,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAQtC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IA+B5C,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC;IAqBhD,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC;CA8BzD"}
@@ -13,6 +13,7 @@ import type { Skill, SkillMetadata, SkillSearchResult, SkillSearchOptions, Works
13
13
  */
14
14
  interface SkillSearchEngine {
15
15
  index(doc: IndexDocument): Promise<void>;
16
+ remove?(id: string): Promise<void>;
16
17
  search(query: string, options?: {
17
18
  topK?: number;
18
19
  minScore?: number;
@@ -43,12 +44,16 @@ export interface WorkspaceSkillsImplConfig {
43
44
  */
44
45
  export declare class WorkspaceSkillsImpl implements WorkspaceSkills {
45
46
  #private;
47
+ static readonly GLOB_RESOLVE_INTERVAL = 5000;
48
+ static readonly STALENESS_CHECK_COOLDOWN = 2000;
46
49
  constructor(config: WorkspaceSkillsImplConfig);
47
50
  list(): Promise<SkillMetadata[]>;
48
51
  get(name: string): Promise<Skill | null>;
49
52
  has(name: string): Promise<boolean>;
50
53
  refresh(): Promise<void>;
51
54
  maybeRefresh(context?: SkillsContext): Promise<void>;
55
+ addSkill(skillPath: string): Promise<void>;
56
+ removeSkill(skillName: string): Promise<void>;
52
57
  search(query: string, options?: SkillSearchOptions): Promise<SkillSearchResult[]>;
53
58
  getReference(skillName: string, referencePath: string): Promise<string | null>;
54
59
  getScript(skillName: string, scriptPath: string): Promise<string | null>;
@@ -1 +1 @@
1
- {"version":3,"file":"workspace-skills.d.ts","sourceRoot":"","sources":["../../../src/workspace/skills/workspace-skills.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE7D,OAAO,KAAK,EAAE,WAAW,IAAI,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,KAAK,EAEV,KAAK,EACL,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,aAAa,EACd,MAAM,SAAS,CAAC;AAMjB;;;GAGG;AACH,UAAU,iBAAiB;IACzB,KAAK,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,CACJ,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;KAAE,GAClF,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC3B,KAAK,IAAI,IAAI,CAAC;CACf;AAWD;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,MAAM,EAAE,oBAAoB,CAAC;IAC7B;;;OAGG;IACH,MAAM,EAAE,cAAc,CAAC;IACvB,gDAAgD;IAChD,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,8CAA8C;IAC9C,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,mBAAoB,YAAW,eAAe;;gBAqB7C,MAAM,EAAE,yBAAyB;IAWvC,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAWhC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAUxC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKnC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IASxB,YAAY,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IA+CpD,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAyDrF,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAqB9E,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAqBxE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAyBtE,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAMpD,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAMjD,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CA2ZvD"}
1
+ {"version":3,"file":"workspace-skills.d.ts","sourceRoot":"","sources":["../../../src/workspace/skills/workspace-skills.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH,OAAO,KAAK,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAE7D,OAAO,KAAK,EAAE,WAAW,IAAI,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AAC1E,OAAO,KAAK,EAEV,KAAK,EACL,aAAa,EACb,iBAAiB,EACjB,kBAAkB,EAClB,eAAe,EACf,cAAc,EACd,aAAa,EACd,MAAM,SAAS,CAAC;AAMjB;;;GAGG;AACH,UAAU,iBAAiB;IACzB,KAAK,CAAC,GAAG,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACzC,MAAM,CAAC,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,CACJ,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,QAAQ,CAAA;KAAE,GAClF,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;IAC3B,KAAK,IAAI,IAAI,CAAC;CACf;AAWD;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACxC;;OAEG;IACH,MAAM,EAAE,oBAAoB,CAAC;IAC7B;;;OAGG;IACH,MAAM,EAAE,cAAc,CAAC;IACvB,gDAAgD;IAChD,YAAY,CAAC,EAAE,iBAAiB,CAAC;IACjC,8CAA8C;IAC9C,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;GAEG;AACH,qBAAa,mBAAoB,YAAW,eAAe;;IAwBzD,MAAM,CAAC,QAAQ,CAAC,qBAAqB,QAAS;IAC9C,MAAM,CAAC,QAAQ,CAAC,wBAAwB,QAAS;gBAErC,MAAM,EAAE,yBAAyB;IAWvC,IAAI,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;IAWhC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,GAAG,IAAI,CAAC;IAUxC,GAAG,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAKnC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IASxB,YAAY,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC;IAuBpD,QAAQ,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAiC1C,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAwC7C,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,GAAE,kBAAuB,GAAG,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAyDrF,YAAY,CAAC,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAqB9E,SAAS,CAAC,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAqBxE,QAAQ,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IAyBtE,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAMpD,WAAW,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAMjD,UAAU,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAsmBvD"}
@@ -0,0 +1,5 @@
1
+ export declare const deleteFileTool: import("../../tools").Tool<{
2
+ path: string;
3
+ recursive: boolean;
4
+ }, string, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "mastra_workspace_delete", unknown>;
5
+ //# sourceMappingURL=delete-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"delete-file.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/delete-file.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,cAAc;;;uIA4BzB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare const editFileTool: import("../../tools").Tool<{
2
+ path: string;
3
+ old_string: string;
4
+ new_string: string;
5
+ replace_all: boolean;
6
+ }, string, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "mastra_workspace_edit_file", unknown>;
7
+ //# sourceMappingURL=edit-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"edit-file.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/edit-file.ts"],"names":[],"mappings":"AAOA,eAAO,MAAM,YAAY;;;;;0IAgDvB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare const executeCommandTool: import("../../tools").Tool<{
2
+ args: string[] | null;
3
+ command: string;
4
+ timeout?: number | null | undefined;
5
+ cwd?: string | null | undefined;
6
+ }, string, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "mastra_workspace_execute_command", unknown>;
7
+ //# sourceMappingURL=execute-command.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute-command.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/execute-command.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,kBAAkB;;;;;gJAkF7B,CAAC"}
@@ -0,0 +1,4 @@
1
+ export declare const fileStatTool: import("../../tools").Tool<{
2
+ path: string;
3
+ }, string, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "mastra_workspace_file_stat", unknown>;
4
+ //# sourceMappingURL=file-stat.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"file-stat.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/file-stat.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,YAAY;;0IA0BvB,CAAC"}
@@ -0,0 +1,9 @@
1
+ export declare const grepTool: import("../../tools").Tool<{
2
+ path: string;
3
+ pattern: string;
4
+ contextLines: number;
5
+ caseSensitive: boolean;
6
+ includeHidden: boolean;
7
+ maxCount?: number | undefined;
8
+ }, string, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "mastra_workspace_grep", unknown>;
9
+ //# sourceMappingURL=grep.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grep.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/grep.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,QAAQ;;;;;;;qIA+MnB,CAAC"}
@@ -0,0 +1,36 @@
1
+ /**
2
+ * Workspace Tool Helpers
3
+ *
4
+ * Runtime assertions for extracting workspace resources from tool execution context.
5
+ */
6
+ import type { ToolExecutionContext } from '../../tools/types.js';
7
+ import type { WorkspaceFilesystem } from '../filesystem/index.js';
8
+ import type { WorkspaceSandbox } from '../sandbox/index.js';
9
+ import type { Workspace } from '../workspace.js';
10
+ /**
11
+ * Extract workspace from tool execution context.
12
+ * Throws if workspace is not available.
13
+ */
14
+ export declare function requireWorkspace(context: ToolExecutionContext): Workspace;
15
+ /**
16
+ * Extract filesystem from workspace in tool execution context.
17
+ * Throws if workspace or filesystem is not available.
18
+ */
19
+ export declare function requireFilesystem(context: ToolExecutionContext): {
20
+ workspace: Workspace;
21
+ filesystem: WorkspaceFilesystem;
22
+ };
23
+ /**
24
+ * Extract sandbox from workspace in tool execution context.
25
+ * Throws if workspace or sandbox is not available.
26
+ */
27
+ export declare function requireSandbox(context: ToolExecutionContext): {
28
+ workspace: Workspace;
29
+ sandbox: WorkspaceSandbox;
30
+ };
31
+ /**
32
+ * Emit workspace metadata as a data chunk so the UI can render workspace info immediately.
33
+ * Should be called at the start of every workspace tool's execute function.
34
+ */
35
+ export declare function emitWorkspaceMetadata(context: ToolExecutionContext, toolName: string): Promise<void>;
36
+ //# sourceMappingURL=helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/helpers.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAE9D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AACnD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,oBAAoB,GAAG,SAAS,CAKzE;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,oBAAoB,GAAG;IAChE,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,mBAAmB,CAAC;CACjC,CAMA;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,oBAAoB,GAAG;IAC7D,SAAS,EAAE,SAAS,CAAC;IACrB,OAAO,EAAE,gBAAgB,CAAC;CAC3B,CAMA;AAED;;;GAGG;AACH,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,oBAAoB,EAAE,QAAQ,EAAE,MAAM,iBAQ1F"}
@@ -0,0 +1,6 @@
1
+ export declare const indexContentTool: import("../../tools").Tool<{
2
+ content: string;
3
+ path: string;
4
+ metadata?: Record<string, unknown> | undefined;
5
+ }, string, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "mastra_workspace_index", unknown>;
6
+ //# sourceMappingURL=index-content.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-content.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/index-content.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,gBAAgB;;;;sIAe3B,CAAC"}
@@ -1,4 +1,16 @@
1
1
  export * from './types.js';
2
- export * from './tools.js';
2
+ export { createWorkspaceTools, resolveToolConfig } from './tools.js';
3
+ export { readFileTool } from './read-file.js';
4
+ export { writeFileTool } from './write-file.js';
5
+ export { editFileTool } from './edit-file.js';
6
+ export { listFilesTool } from './list-files.js';
7
+ export { deleteFileTool } from './delete-file.js';
8
+ export { fileStatTool } from './file-stat.js';
9
+ export { mkdirTool } from './mkdir.js';
10
+ export { searchTool } from './search.js';
11
+ export { indexContentTool } from './index-content.js';
12
+ export { executeCommandTool } from './execute-command.js';
13
+ export { grepTool } from './grep.js';
14
+ export { requireWorkspace, requireFilesystem, requireSandbox, emitWorkspaceMetadata } from './helpers.js';
3
15
  export * from './tree-formatter.js';
4
16
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,kBAAkB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/index.ts"],"names":[],"mappings":"AACA,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAGlE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,OAAO,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/C,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpC,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAE,MAAM,QAAQ,CAAC;AAGlC,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAGvG,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,10 @@
1
+ export declare const listFilesTool: import("../../tools").Tool<{
2
+ maxDepth: number;
3
+ path: string;
4
+ showHidden: boolean;
5
+ dirsOnly: boolean;
6
+ pattern?: string | string[] | undefined;
7
+ extension?: string | undefined;
8
+ exclude?: string | undefined;
9
+ }, string, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "mastra_workspace_list_files", unknown>;
10
+ //# sourceMappingURL=list-files.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-files.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/list-files.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,aAAa;;;;;;;;2IAwDxB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare const mkdirTool: import("../../tools").Tool<{
2
+ path: string;
3
+ recursive: boolean;
4
+ }, string, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "mastra_workspace_mkdir", unknown>;
5
+ //# sourceMappingURL=mkdir.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mkdir.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/mkdir.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,SAAS;;;sIAsBpB,CAAC"}
@@ -0,0 +1,8 @@
1
+ export declare const readFileTool: import("../../tools").Tool<{
2
+ path: string;
3
+ showLineNumbers: boolean;
4
+ limit?: number | undefined;
5
+ offset?: number | undefined;
6
+ encoding?: "utf8" | "utf-8" | "base64" | "binary" | "hex" | undefined;
7
+ }, string, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "mastra_workspace_read_file", unknown>;
8
+ //# sourceMappingURL=read-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"read-file.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/read-file.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,YAAY;;;;;;0IAwDvB,CAAC"}
@@ -0,0 +1,7 @@
1
+ export declare const searchTool: import("../../tools").Tool<{
2
+ topK: number;
3
+ query: string;
4
+ minScore?: number | undefined;
5
+ mode?: "vector" | "bm25" | "hybrid" | undefined;
6
+ }, string, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "mastra_workspace_search", unknown>;
7
+ //# sourceMappingURL=search.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/search.ts"],"names":[],"mappings":"AAKA,eAAO,MAAM,UAAU;;;;;uIAmCrB,CAAC"}
@@ -1,8 +1,10 @@
1
1
  /**
2
- * Workspace Tools
2
+ * Workspace Tools — Factory
3
3
  *
4
- * Auto-injected tools for agents with workspace configured.
5
- * These tools provide filesystem and sandbox capabilities.
4
+ * Creates the built-in workspace tools for agents. Individual tools are
5
+ * defined in their own files; this module applies WorkspaceToolsConfig
6
+ * (enabled, requireApproval, requireReadBeforeWrite) and injects workspace
7
+ * into the tool execution context.
6
8
  */
7
9
  import type { WorkspaceToolName } from '../constants/index.js';
8
10
  import type { Workspace } from '../workspace.js';
@@ -14,10 +16,6 @@ import type { WorkspaceToolsConfig } from './types.js';
14
16
  * 1. Built-in defaults (enabled: true, requireApproval: false)
15
17
  * 2. Top-level config (tools.enabled, tools.requireApproval)
16
18
  * 3. Per-tool config (tools[toolName].enabled, tools[toolName].requireApproval)
17
- *
18
- * @param toolsConfig - The workspace tools configuration
19
- * @param toolName - The tool name to resolve config for
20
- * @returns Resolved enabled and requireApproval values
21
19
  */
22
20
  export declare function resolveToolConfig(toolsConfig: WorkspaceToolsConfig | undefined, toolName: WorkspaceToolName): {
23
21
  enabled: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/tools.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAYtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAE9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAEpD;;;;;;;;;;;GAWG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,oBAAoB,GAAG,SAAS,EAC7C,QAAQ,EAAE,iBAAiB,GAC1B;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,eAAe,EAAE,OAAO,CAAC;IAAC,sBAAsB,CAAC,EAAE,OAAO,CAAA;CAAE,CA+BlF;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,SAAS,uBAooBxD"}
1
+ {"version":3,"file":"tools.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/tools.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAKtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAW9C,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAIpD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,WAAW,EAAE,oBAAoB,GAAG,SAAS,EAC7C,QAAQ,EAAE,iBAAiB,GAC1B;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,eAAe,EAAE,OAAO,CAAC;IAAC,sBAAsB,CAAC,EAAE,OAAO,CAAA;CAAE,CA4BlF;AA8ED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,SAAS,uBAuExD"}
@@ -32,6 +32,8 @@ export interface TreeOptions {
32
32
  exclude?: string | string[];
33
33
  /** Filter by file extension (e.g., '.ts'). Similar to tree's -P flag. */
34
34
  extension?: string | string[];
35
+ /** Glob pattern(s) to filter files. Matches against paths relative to the listed directory. Directories always pass through so their contents can be checked. */
36
+ pattern?: string | string[];
35
37
  }
36
38
  export interface TreeResult {
37
39
  /** ASCII tree representation */
@@ -1 +1 @@
1
- {"version":3,"file":"tree-formatter.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/tree-formatter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAa,MAAM,eAAe,CAAC;AAMpE,MAAM,WAAW,WAAW;IAC1B,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mGAAmG;IACnG,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,mFAAmF;IACnF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yFAAyF;IACzF,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC/B;AAED,MAAM,WAAW,UAAU;IACzB,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,OAAO,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,SAAS,EAAE,OAAO,CAAC;CACpB;AAeD;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAqHpH;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAA;CAAE,CAAC,GAAG,MAAM,CAyDxG"}
1
+ {"version":3,"file":"tree-formatter.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/tree-formatter.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAa,MAAM,eAAe,CAAC;AAQpE,MAAM,WAAW,WAAW;IAC1B,8EAA8E;IAC9E,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mGAAmG;IACnG,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,mFAAmF;IACnF,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,yFAAyF;IACzF,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC5B,yEAAyE;IACzE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IAC9B,iKAAiK;IACjK,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CAC7B;AAED,MAAM,WAAW,UAAU;IACzB,gCAAgC;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,+DAA+D;IAC/D,OAAO,EAAE,MAAM,CAAC;IAChB,kCAAkC;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,4BAA4B;IAC5B,SAAS,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,SAAS,EAAE,OAAO,CAAC;CACpB;AAeD;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAAC,EAAE,EAAE,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAgJpH;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,KAAK,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAA;CAAE,CAAC,GAAG,MAAM,CAyDxG"}
@@ -0,0 +1,6 @@
1
+ export declare const writeFileTool: import("../../tools").Tool<{
2
+ content: string;
3
+ path: string;
4
+ overwrite: boolean;
5
+ }, string, unknown, unknown, import("../../tools").ToolExecutionContext<unknown, unknown, unknown>, "mastra_workspace_write_file", unknown>;
6
+ //# sourceMappingURL=write-file.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"write-file.d.ts","sourceRoot":"","sources":["../../../src/workspace/tools/write-file.ts"],"names":[],"mappings":"AAMA,eAAO,MAAM,aAAa;;;;2IAqBxB,CAAC"}