@mastra/server 1.0.4-alpha.2 → 1.1.0-alpha.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.
Files changed (487) hide show
  1. package/CHANGELOG.md +6765 -0
  2. package/LICENSE.md +11 -42
  3. package/README.md +45 -137
  4. package/a2a/store.d.ts +1 -0
  5. package/auth.d.ts +1 -0
  6. package/dist/chunk-24SISJRB.js +250 -0
  7. package/dist/chunk-24SISJRB.js.map +1 -0
  8. package/dist/chunk-2HAVULC2.cjs +204 -0
  9. package/dist/chunk-2HAVULC2.cjs.map +1 -0
  10. package/dist/chunk-2HOMKKY4.cjs +352 -0
  11. package/dist/chunk-2HOMKKY4.cjs.map +1 -0
  12. package/dist/chunk-37DO73XV.cjs +33207 -0
  13. package/dist/chunk-37DO73XV.cjs.map +1 -0
  14. package/dist/chunk-3AZY5AWI.js +689 -0
  15. package/dist/chunk-3AZY5AWI.js.map +1 -0
  16. package/dist/chunk-3OIJLD3O.js +333 -0
  17. package/dist/chunk-3OIJLD3O.js.map +1 -0
  18. package/dist/chunk-3QUACCLU.js +1372 -0
  19. package/dist/chunk-3QUACCLU.js.map +1 -0
  20. package/dist/chunk-3W67K7YE.js +13 -0
  21. package/dist/chunk-3W67K7YE.js.map +1 -0
  22. package/dist/chunk-4HFYR562.cjs +82 -0
  23. package/dist/chunk-4HFYR562.cjs.map +1 -0
  24. package/dist/chunk-4JAEBN6N.js +1201 -0
  25. package/dist/chunk-4JAEBN6N.js.map +1 -0
  26. package/dist/chunk-4LVJBXI2.cjs +324 -0
  27. package/dist/chunk-4LVJBXI2.cjs.map +1 -0
  28. package/dist/{chunk-FV45V6WC.cjs → chunk-64ITUOXI.cjs} +3 -7
  29. package/dist/chunk-64ITUOXI.cjs.map +1 -0
  30. package/dist/chunk-6G2RQWKA.cjs +252 -0
  31. package/dist/chunk-6G2RQWKA.cjs.map +1 -0
  32. package/dist/chunk-6KC345IN.cjs +708 -0
  33. package/dist/chunk-6KC345IN.cjs.map +1 -0
  34. package/dist/{chunk-TRDNDNGQ.js → chunk-6QWQZI4Q.js} +4 -7
  35. package/dist/chunk-6QWQZI4Q.js.map +1 -0
  36. package/dist/chunk-7D3UAMQM.cjs +82 -0
  37. package/dist/chunk-7D3UAMQM.cjs.map +1 -0
  38. package/dist/chunk-7XIMPDJV.js +442 -0
  39. package/dist/chunk-7XIMPDJV.js.map +1 -0
  40. package/dist/chunk-A2K5ZL47.cjs +195 -0
  41. package/dist/chunk-A2K5ZL47.cjs.map +1 -0
  42. package/dist/chunk-AAHPYUEC.cjs +211 -0
  43. package/dist/chunk-AAHPYUEC.cjs.map +1 -0
  44. package/dist/chunk-AN42MFD5.cjs +1231 -0
  45. package/dist/chunk-AN42MFD5.cjs.map +1 -0
  46. package/dist/chunk-AQI6GLTN.cjs +2777 -0
  47. package/dist/chunk-AQI6GLTN.cjs.map +1 -0
  48. package/dist/chunk-AV3VZ6S3.cjs +190 -0
  49. package/dist/chunk-AV3VZ6S3.cjs.map +1 -0
  50. package/dist/chunk-C4NZAUUW.js +33168 -0
  51. package/dist/chunk-C4NZAUUW.js.map +1 -0
  52. package/dist/chunk-D5VCL56B.js +317 -0
  53. package/dist/chunk-D5VCL56B.js.map +1 -0
  54. package/dist/chunk-DD7LYNHB.js +596 -0
  55. package/dist/chunk-DD7LYNHB.js.map +1 -0
  56. package/dist/chunk-DHDVJ5II.js +334 -0
  57. package/dist/chunk-DHDVJ5II.js.map +1 -0
  58. package/dist/chunk-ED6NQBHF.js +190 -0
  59. package/dist/chunk-ED6NQBHF.js.map +1 -0
  60. package/dist/chunk-EKFYZUPC.cjs +1404 -0
  61. package/dist/chunk-EKFYZUPC.cjs.map +1 -0
  62. package/dist/chunk-EV5H2JQU.js +45 -0
  63. package/dist/chunk-EV5H2JQU.js.map +1 -0
  64. package/dist/chunk-F2WTCJ5C.js +1153 -0
  65. package/dist/chunk-F2WTCJ5C.js.map +1 -0
  66. package/dist/chunk-FCPLBTHB.js +195 -0
  67. package/dist/chunk-FCPLBTHB.js.map +1 -0
  68. package/dist/chunk-FQX5SQO7.js +212 -0
  69. package/dist/chunk-FQX5SQO7.js.map +1 -0
  70. package/dist/chunk-FRRHYZR6.cjs +88 -0
  71. package/dist/chunk-FRRHYZR6.cjs.map +1 -0
  72. package/dist/chunk-GUG6KRAJ.js +666 -0
  73. package/dist/chunk-GUG6KRAJ.js.map +1 -0
  74. package/dist/chunk-GXUBQJ74.js +184 -0
  75. package/dist/chunk-GXUBQJ74.js.map +1 -0
  76. package/dist/chunk-H66LLFDL.js +970 -0
  77. package/dist/chunk-H66LLFDL.js.map +1 -0
  78. package/dist/chunk-HDGF45K7.cjs +128 -0
  79. package/dist/chunk-HDGF45K7.cjs.map +1 -0
  80. package/dist/chunk-HT4LP3BO.js +75 -0
  81. package/dist/chunk-HT4LP3BO.js.map +1 -0
  82. package/dist/chunk-HZINLMHL.cjs +252 -0
  83. package/dist/chunk-HZINLMHL.cjs.map +1 -0
  84. package/dist/chunk-IS3HHGL4.js +250 -0
  85. package/dist/chunk-IS3HHGL4.js.map +1 -0
  86. package/dist/chunk-JLFFAYTC.cjs +252 -0
  87. package/dist/chunk-JLFFAYTC.cjs.map +1 -0
  88. package/dist/chunk-JRM3DWRM.cjs +322 -0
  89. package/dist/chunk-JRM3DWRM.cjs.map +1 -0
  90. package/dist/chunk-K2SXZLA3.cjs +1049 -0
  91. package/dist/chunk-K2SXZLA3.cjs.map +1 -0
  92. package/dist/chunk-K4HSW5ZF.js +77 -0
  93. package/dist/chunk-K4HSW5ZF.js.map +1 -0
  94. package/dist/chunk-LFNP3ACE.js +1009 -0
  95. package/dist/chunk-LFNP3ACE.js.map +1 -0
  96. package/dist/chunk-LFTVDHOD.js +200 -0
  97. package/dist/chunk-LFTVDHOD.js.map +1 -0
  98. package/dist/chunk-LJ6YRVDI.cjs +15 -0
  99. package/dist/chunk-LJ6YRVDI.cjs.map +1 -0
  100. package/dist/chunk-LOA7RQYO.js +2774 -0
  101. package/dist/chunk-LOA7RQYO.js.map +1 -0
  102. package/dist/chunk-MCYD5LW7.cjs +90 -0
  103. package/dist/chunk-MCYD5LW7.cjs.map +1 -0
  104. package/dist/chunk-MZRJNOYJ.cjs +1195 -0
  105. package/dist/chunk-MZRJNOYJ.cjs.map +1 -0
  106. package/dist/chunk-O7I5CWRX.cjs +44 -0
  107. package/dist/chunk-O7I5CWRX.cjs.map +1 -0
  108. package/dist/chunk-ONN5EA7E.js +26 -0
  109. package/dist/chunk-ONN5EA7E.js.map +1 -0
  110. package/dist/chunk-OS7SAIRA.js +250 -0
  111. package/dist/chunk-OS7SAIRA.js.map +1 -0
  112. package/dist/chunk-PR4QN5HX.js +39 -0
  113. package/dist/chunk-PR4QN5HX.js.map +1 -0
  114. package/dist/chunk-PWXUI3OG.cjs +252 -0
  115. package/dist/chunk-PWXUI3OG.cjs.map +1 -0
  116. package/dist/chunk-QOVLJFLX.cjs +680 -0
  117. package/dist/chunk-QOVLJFLX.cjs.map +1 -0
  118. package/dist/chunk-QXDNFBJQ.js +220 -0
  119. package/dist/chunk-QXDNFBJQ.js.map +1 -0
  120. package/dist/chunk-RIX6WEJ2.js +83 -0
  121. package/dist/chunk-RIX6WEJ2.js.map +1 -0
  122. package/dist/chunk-RW66MHXI.js +246 -0
  123. package/dist/chunk-RW66MHXI.js.map +1 -0
  124. package/dist/chunk-S4SLHUJ7.cjs +253 -0
  125. package/dist/chunk-S4SLHUJ7.cjs.map +1 -0
  126. package/dist/chunk-SONAXR2M.cjs +450 -0
  127. package/dist/chunk-SONAXR2M.cjs.map +1 -0
  128. package/dist/chunk-SUKFO7UM.cjs +29 -0
  129. package/dist/chunk-SUKFO7UM.cjs.map +1 -0
  130. package/dist/chunk-T5KH32UA.cjs +47 -0
  131. package/dist/chunk-T5KH32UA.cjs.map +1 -0
  132. package/dist/chunk-TCWPL26W.js +119 -0
  133. package/dist/chunk-TCWPL26W.js.map +1 -0
  134. package/dist/chunk-TGDBGIDA.cjs +623 -0
  135. package/dist/chunk-TGDBGIDA.cjs.map +1 -0
  136. package/dist/chunk-USR6JK77.js +62 -0
  137. package/dist/chunk-USR6JK77.js.map +1 -0
  138. package/dist/chunk-VNHOYZ56.cjs +219 -0
  139. package/dist/chunk-VNHOYZ56.cjs.map +1 -0
  140. package/dist/chunk-VX3VN7FN.cjs +992 -0
  141. package/dist/chunk-VX3VN7FN.cjs.map +1 -0
  142. package/dist/chunk-WHC6S3VY.cjs +345 -0
  143. package/dist/chunk-WHC6S3VY.cjs.map +1 -0
  144. package/dist/chunk-XKLJYRAA.js +77 -0
  145. package/dist/chunk-XKLJYRAA.js.map +1 -0
  146. package/dist/chunk-XUSAKRLX.js +312 -0
  147. package/dist/chunk-XUSAKRLX.js.map +1 -0
  148. package/dist/chunk-ZKMVCV4G.cjs +71 -0
  149. package/dist/chunk-ZKMVCV4G.cjs.map +1 -0
  150. package/dist/dist-7NTDEVLP.cjs +928 -0
  151. package/dist/dist-7NTDEVLP.cjs.map +1 -0
  152. package/dist/dist-B5GMANA6.js +1147 -0
  153. package/dist/dist-B5GMANA6.js.map +1 -0
  154. package/dist/dist-EDO7GEGI.js +3 -0
  155. package/dist/dist-EDO7GEGI.js.map +1 -0
  156. package/dist/dist-OF24ZMHH.cjs +764 -0
  157. package/dist/dist-OF24ZMHH.cjs.map +1 -0
  158. package/dist/dist-P6YSNLL3.cjs +1150 -0
  159. package/dist/dist-P6YSNLL3.cjs.map +1 -0
  160. package/dist/dist-SMBO5KVB.js +937 -0
  161. package/dist/dist-SMBO5KVB.js.map +1 -0
  162. package/dist/dist-THPMW5QR.js +761 -0
  163. package/dist/dist-THPMW5QR.js.map +1 -0
  164. package/dist/dist-VZTG56X2.cjs +940 -0
  165. package/dist/dist-VZTG56X2.cjs.map +1 -0
  166. package/dist/dist-ZLC23RVC.cjs +16 -0
  167. package/dist/dist-ZLC23RVC.cjs.map +1 -0
  168. package/dist/dist-ZOZ6MHJH.js +925 -0
  169. package/dist/dist-ZOZ6MHJH.js.map +1 -0
  170. package/dist/docs/README.md +31 -0
  171. package/dist/docs/SKILL.md +32 -0
  172. package/dist/docs/SOURCE_MAP.json +6 -0
  173. package/dist/docs/server/01-custom-adapters.md +380 -0
  174. package/dist/docs/server/02-reference.md +833 -0
  175. package/dist/index.cjs +6 -0
  176. package/dist/index.cjs.map +1 -0
  177. package/dist/index.d.ts +1 -0
  178. package/dist/index.d.ts.map +1 -0
  179. package/dist/index.js +5 -0
  180. package/dist/index.js.map +1 -0
  181. package/dist/server/a2a/protocol.d.ts +8 -0
  182. package/dist/server/a2a/protocol.d.ts.map +1 -0
  183. package/dist/server/a2a/store.cjs +25 -0
  184. package/dist/server/a2a/store.cjs.map +1 -0
  185. package/dist/server/a2a/store.d.ts +14 -0
  186. package/dist/server/a2a/store.d.ts.map +1 -0
  187. package/dist/server/a2a/store.js +23 -0
  188. package/dist/server/a2a/store.js.map +1 -0
  189. package/dist/server/a2a/tasks.d.ts +20 -0
  190. package/dist/server/a2a/tasks.d.ts.map +1 -0
  191. package/dist/server/auth/defaults.d.ts +3 -0
  192. package/dist/server/auth/defaults.d.ts.map +1 -0
  193. package/dist/server/auth/helpers.d.ts +21 -0
  194. package/dist/server/auth/helpers.d.ts.map +1 -0
  195. package/dist/server/auth/index.cjs +48 -0
  196. package/dist/server/auth/index.cjs.map +1 -0
  197. package/dist/server/auth/index.d.ts +3 -0
  198. package/dist/server/auth/index.d.ts.map +1 -0
  199. package/dist/server/auth/index.js +3 -0
  200. package/dist/server/auth/index.js.map +1 -0
  201. package/dist/server/auth/path-pattern.d.ts +43 -0
  202. package/dist/server/auth/path-pattern.d.ts.map +1 -0
  203. package/dist/server/constants.d.ts +51 -0
  204. package/dist/server/constants.d.ts.map +1 -0
  205. package/dist/server/handlers/a2a.cjs +40 -0
  206. package/dist/server/handlers/a2a.cjs.map +1 -0
  207. package/dist/server/handlers/a2a.d.ts +550 -0
  208. package/dist/server/handlers/a2a.d.ts.map +1 -0
  209. package/dist/server/handlers/a2a.js +3 -0
  210. package/dist/server/handlers/a2a.js.map +1 -0
  211. package/dist/server/handlers/agent-builder.cjs +68 -0
  212. package/dist/server/handlers/agent-builder.cjs.map +1 -0
  213. package/dist/server/handlers/agent-builder.d.ts +632 -0
  214. package/dist/server/handlers/agent-builder.d.ts.map +1 -0
  215. package/dist/server/handlers/agent-builder.js +3 -0
  216. package/dist/server/handlers/agent-builder.js.map +1 -0
  217. package/dist/server/handlers/agent-versions.cjs +60 -0
  218. package/dist/server/handlers/agent-versions.cjs.map +1 -0
  219. package/dist/server/handlers/agent-versions.d.ts +479 -0
  220. package/dist/server/handlers/agent-versions.d.ts.map +1 -0
  221. package/dist/server/handlers/agent-versions.js +3 -0
  222. package/dist/server/handlers/agent-versions.js.map +1 -0
  223. package/dist/server/handlers/agents.cjs +111 -13
  224. package/dist/server/handlers/agents.cjs.map +1 -0
  225. package/dist/server/handlers/agents.d.ts +3440 -6
  226. package/dist/server/handlers/agents.d.ts.map +1 -0
  227. package/dist/server/handlers/agents.js +3 -1
  228. package/dist/server/handlers/agents.js.map +1 -0
  229. package/dist/server/handlers/error.cjs +8 -2
  230. package/dist/server/handlers/error.cjs.map +1 -0
  231. package/dist/server/handlers/error.d.ts +14 -1
  232. package/dist/server/handlers/error.d.ts.map +1 -0
  233. package/dist/server/handlers/error.js +3 -1
  234. package/dist/server/handlers/error.js.map +1 -0
  235. package/dist/server/handlers/logs.cjs +9 -7
  236. package/dist/server/handlers/logs.cjs.map +1 -0
  237. package/dist/server/handlers/logs.d.ts +142 -3
  238. package/dist/server/handlers/logs.d.ts.map +1 -0
  239. package/dist/server/handlers/logs.js +3 -1
  240. package/dist/server/handlers/logs.js.map +1 -0
  241. package/dist/server/handlers/mcp.cjs +40 -0
  242. package/dist/server/handlers/mcp.cjs.map +1 -0
  243. package/dist/server/handlers/mcp.d.ts +132 -0
  244. package/dist/server/handlers/mcp.d.ts.map +1 -0
  245. package/dist/server/handlers/mcp.js +3 -0
  246. package/dist/server/handlers/mcp.js.map +1 -0
  247. package/dist/server/handlers/memory.cjs +83 -17
  248. package/dist/server/handlers/memory.cjs.map +1 -0
  249. package/dist/server/handlers/memory.d.ts +1089 -8
  250. package/dist/server/handlers/memory.d.ts.map +1 -0
  251. package/dist/server/handlers/memory.js +3 -1
  252. package/dist/server/handlers/memory.js.map +1 -0
  253. package/dist/server/handlers/observability.cjs +24 -0
  254. package/dist/server/handlers/observability.cjs.map +1 -0
  255. package/dist/server/handlers/observability.d.ts +154 -0
  256. package/dist/server/handlers/observability.d.ts.map +1 -0
  257. package/dist/server/handlers/observability.js +3 -0
  258. package/dist/server/handlers/observability.js.map +1 -0
  259. package/dist/server/handlers/processors.cjs +20 -0
  260. package/dist/server/handlers/processors.cjs.map +1 -0
  261. package/dist/server/handlers/processors.d.ts +181 -0
  262. package/dist/server/handlers/processors.d.ts.map +1 -0
  263. package/dist/server/handlers/processors.js +3 -0
  264. package/dist/server/handlers/processors.js.map +1 -0
  265. package/dist/server/handlers/scores.cjs +32 -0
  266. package/dist/server/handlers/scores.cjs.map +1 -0
  267. package/dist/server/handlers/scores.d.ts +121 -0
  268. package/dist/server/handlers/scores.d.ts.map +1 -0
  269. package/dist/server/handlers/scores.js +3 -0
  270. package/dist/server/handlers/scores.js.map +1 -0
  271. package/dist/server/handlers/stored-agents.cjs +28 -0
  272. package/dist/server/handlers/stored-agents.cjs.map +1 -0
  273. package/dist/server/handlers/stored-agents.d.ts +317 -0
  274. package/dist/server/handlers/stored-agents.d.ts.map +1 -0
  275. package/dist/server/handlers/stored-agents.js +3 -0
  276. package/dist/server/handlers/stored-agents.js.map +1 -0
  277. package/dist/server/handlers/system.cjs +12 -0
  278. package/dist/server/handlers/system.cjs.map +1 -0
  279. package/dist/server/handlers/system.d.ts +7 -0
  280. package/dist/server/handlers/system.d.ts.map +1 -0
  281. package/dist/server/handlers/system.js +3 -0
  282. package/dist/server/handlers/system.js.map +1 -0
  283. package/dist/server/handlers/test-utils.cjs +15 -0
  284. package/dist/server/handlers/test-utils.cjs.map +1 -0
  285. package/dist/server/handlers/test-utils.d.ts +6 -0
  286. package/dist/server/handlers/test-utils.d.ts.map +1 -0
  287. package/dist/server/handlers/test-utils.js +13 -0
  288. package/dist/server/handlers/test-utils.js.map +1 -0
  289. package/dist/server/handlers/tools.cjs +15 -9
  290. package/dist/server/handlers/tools.cjs.map +1 -0
  291. package/dist/server/handlers/tools.d.ts +71 -4
  292. package/dist/server/handlers/tools.d.ts.map +1 -0
  293. package/dist/server/handlers/tools.js +3 -1
  294. package/dist/server/handlers/tools.js.map +1 -0
  295. package/dist/server/handlers/utils.cjs +32 -2
  296. package/dist/server/handlers/utils.cjs.map +1 -0
  297. package/dist/server/handlers/utils.d.ts +39 -1
  298. package/dist/server/handlers/utils.d.ts.map +1 -0
  299. package/dist/server/handlers/utils.js +3 -1
  300. package/dist/server/handlers/utils.js.map +1 -0
  301. package/dist/server/handlers/vector.cjs +33 -7
  302. package/dist/server/handlers/vector.cjs.map +1 -0
  303. package/dist/server/handlers/vector.d.ts +135 -6
  304. package/dist/server/handlers/vector.d.ts.map +1 -0
  305. package/dist/server/handlers/vector.js +3 -1
  306. package/dist/server/handlers/vector.js.map +1 -0
  307. package/dist/server/handlers/voice.cjs +25 -7
  308. package/dist/server/handlers/voice.cjs.map +1 -0
  309. package/dist/server/handlers/voice.d.ts +82 -3
  310. package/dist/server/handlers/voice.d.ts.map +1 -0
  311. package/dist/server/handlers/voice.js +3 -1
  312. package/dist/server/handlers/voice.js.map +1 -0
  313. package/dist/server/handlers/workflows.cjs +75 -21
  314. package/dist/server/handlers/workflows.cjs.map +1 -0
  315. package/dist/server/handlers/workflows.d.ts +996 -10
  316. package/dist/server/handlers/workflows.d.ts.map +1 -0
  317. package/dist/server/handlers/workflows.js +3 -1
  318. package/dist/server/handlers/workflows.js.map +1 -0
  319. package/dist/server/handlers/workspace.cjs +80 -0
  320. package/dist/server/handlers/workspace.cjs.map +1 -0
  321. package/dist/server/handlers/workspace.d.ts +591 -0
  322. package/dist/server/handlers/workspace.d.ts.map +1 -0
  323. package/dist/server/handlers/workspace.js +3 -0
  324. package/dist/server/handlers/workspace.js.map +1 -0
  325. package/dist/server/handlers.cjs +41 -24
  326. package/dist/server/handlers.cjs.map +1 -0
  327. package/dist/server/handlers.d.ts +13 -9
  328. package/dist/server/handlers.d.ts.map +1 -0
  329. package/dist/server/handlers.js +14 -9
  330. package/dist/server/handlers.js.map +1 -0
  331. package/dist/server/http-exception.d.ts +82 -0
  332. package/dist/server/http-exception.d.ts.map +1 -0
  333. package/dist/server/schemas/a2a.d.ts +786 -0
  334. package/dist/server/schemas/a2a.d.ts.map +1 -0
  335. package/dist/server/schemas/agent-builder.d.ts +225 -0
  336. package/dist/server/schemas/agent-builder.d.ts.map +1 -0
  337. package/dist/server/schemas/agent-versions.d.ts +1646 -0
  338. package/dist/server/schemas/agent-versions.d.ts.map +1 -0
  339. package/dist/server/schemas/agents.d.ts +1815 -0
  340. package/dist/server/schemas/agents.d.ts.map +1 -0
  341. package/dist/server/schemas/common.d.ts +179 -0
  342. package/dist/server/schemas/common.d.ts.map +1 -0
  343. package/dist/server/schemas/logs.d.ts +124 -0
  344. package/dist/server/schemas/logs.d.ts.map +1 -0
  345. package/dist/server/schemas/mcp.d.ts +299 -0
  346. package/dist/server/schemas/mcp.d.ts.map +1 -0
  347. package/dist/server/schemas/memory.d.ts +1216 -0
  348. package/dist/server/schemas/memory.d.ts.map +1 -0
  349. package/dist/server/schemas/processors.d.ts +519 -0
  350. package/dist/server/schemas/processors.d.ts.map +1 -0
  351. package/dist/server/schemas/scores.d.ts +259 -0
  352. package/dist/server/schemas/scores.d.ts.map +1 -0
  353. package/dist/server/schemas/stored-agents.d.ts +850 -0
  354. package/dist/server/schemas/stored-agents.d.ts.map +1 -0
  355. package/dist/server/schemas/system.d.ts +36 -0
  356. package/dist/server/schemas/system.d.ts.map +1 -0
  357. package/dist/server/schemas/vectors.d.ts +107 -0
  358. package/dist/server/schemas/vectors.d.ts.map +1 -0
  359. package/dist/server/schemas/workflows.d.ts +863 -0
  360. package/dist/server/schemas/workflows.d.ts.map +1 -0
  361. package/dist/server/schemas/workspace.d.ts +1107 -0
  362. package/dist/server/schemas/workspace.d.ts.map +1 -0
  363. package/dist/server/server-adapter/index.cjs +661 -0
  364. package/dist/server/server-adapter/index.cjs.map +1 -0
  365. package/dist/server/server-adapter/index.d.ts +163 -0
  366. package/dist/server/server-adapter/index.d.ts.map +1 -0
  367. package/dist/server/server-adapter/index.js +630 -0
  368. package/dist/server/server-adapter/index.js.map +1 -0
  369. package/dist/server/server-adapter/openapi-utils.d.ts +69 -0
  370. package/dist/server/server-adapter/openapi-utils.d.ts.map +1 -0
  371. package/dist/server/server-adapter/redact.d.ts +26 -0
  372. package/dist/server/server-adapter/redact.d.ts.map +1 -0
  373. package/dist/server/server-adapter/routes/a2a.d.ts +3 -0
  374. package/dist/server/server-adapter/routes/a2a.d.ts.map +1 -0
  375. package/dist/server/server-adapter/routes/agent-builder.d.ts +3 -0
  376. package/dist/server/server-adapter/routes/agent-builder.d.ts.map +1 -0
  377. package/dist/server/server-adapter/routes/agents.d.ts +3 -0
  378. package/dist/server/server-adapter/routes/agents.d.ts.map +1 -0
  379. package/dist/server/server-adapter/routes/index.d.ts +52 -0
  380. package/dist/server/server-adapter/routes/index.d.ts.map +1 -0
  381. package/dist/server/server-adapter/routes/legacy.d.ts +7 -0
  382. package/dist/server/server-adapter/routes/legacy.d.ts.map +1 -0
  383. package/dist/server/server-adapter/routes/logs.d.ts +3 -0
  384. package/dist/server/server-adapter/routes/logs.d.ts.map +1 -0
  385. package/dist/server/server-adapter/routes/mcp.d.ts +9 -0
  386. package/dist/server/server-adapter/routes/mcp.d.ts.map +1 -0
  387. package/dist/server/server-adapter/routes/memory.d.ts +3 -0
  388. package/dist/server/server-adapter/routes/memory.d.ts.map +1 -0
  389. package/dist/server/server-adapter/routes/observability.d.ts +3 -0
  390. package/dist/server/server-adapter/routes/observability.d.ts.map +1 -0
  391. package/dist/server/server-adapter/routes/processors.d.ts +3 -0
  392. package/dist/server/server-adapter/routes/processors.d.ts.map +1 -0
  393. package/dist/server/server-adapter/routes/route-builder.d.ts +112 -0
  394. package/dist/server/server-adapter/routes/route-builder.d.ts.map +1 -0
  395. package/dist/server/server-adapter/routes/scorers.d.ts +3 -0
  396. package/dist/server/server-adapter/routes/scorers.d.ts.map +1 -0
  397. package/dist/server/server-adapter/routes/stored-agents.d.ts +8 -0
  398. package/dist/server/server-adapter/routes/stored-agents.d.ts.map +1 -0
  399. package/dist/server/server-adapter/routes/stream-types.d.ts +10 -0
  400. package/dist/server/server-adapter/routes/stream-types.d.ts.map +1 -0
  401. package/dist/server/server-adapter/routes/system.d.ts +12 -0
  402. package/dist/server/server-adapter/routes/system.d.ts.map +1 -0
  403. package/dist/server/server-adapter/routes/tools.d.ts +3 -0
  404. package/dist/server/server-adapter/routes/tools.d.ts.map +1 -0
  405. package/dist/server/server-adapter/routes/vectors.d.ts +3 -0
  406. package/dist/server/server-adapter/routes/vectors.d.ts.map +1 -0
  407. package/dist/server/server-adapter/routes/workflows.d.ts +3 -0
  408. package/dist/server/server-adapter/routes/workflows.d.ts.map +1 -0
  409. package/dist/server/server-adapter/routes/workspace.d.ts +8 -0
  410. package/dist/server/server-adapter/routes/workspace.d.ts.map +1 -0
  411. package/dist/server/types.d.ts +10 -0
  412. package/dist/server/types.d.ts.map +1 -0
  413. package/dist/server/utils.d.ts +58 -0
  414. package/dist/server/utils.d.ts.map +1 -0
  415. package/dist/token-6GSAFR2W-ABXTQD64-MC4IMVOB.cjs +63 -0
  416. package/dist/token-6GSAFR2W-ABXTQD64-MC4IMVOB.cjs.map +1 -0
  417. package/dist/token-6GSAFR2W-ABXTQD64-Z6U2TA2C.js +61 -0
  418. package/dist/token-6GSAFR2W-ABXTQD64-Z6U2TA2C.js.map +1 -0
  419. package/dist/token-6GSAFR2W-F2L44NEJ-B3QIV63M.cjs +63 -0
  420. package/dist/token-6GSAFR2W-F2L44NEJ-B3QIV63M.cjs.map +1 -0
  421. package/dist/token-6GSAFR2W-F2L44NEJ-GFZ37A2V.js +61 -0
  422. package/dist/token-6GSAFR2W-F2L44NEJ-GFZ37A2V.js.map +1 -0
  423. package/dist/token-6GSAFR2W-WGTMOPEU-6HSZQUFZ.cjs +63 -0
  424. package/dist/token-6GSAFR2W-WGTMOPEU-6HSZQUFZ.cjs.map +1 -0
  425. package/dist/token-6GSAFR2W-WGTMOPEU-JKP67ZX4.js +61 -0
  426. package/dist/token-6GSAFR2W-WGTMOPEU-JKP67ZX4.js.map +1 -0
  427. package/dist/token-util-NEHG7TUY-4YJ4EPCL-MBTAVIJ3.js +8 -0
  428. package/dist/token-util-NEHG7TUY-4YJ4EPCL-MBTAVIJ3.js.map +1 -0
  429. package/dist/token-util-NEHG7TUY-4YJ4EPCL-SQ4NADRW.cjs +10 -0
  430. package/dist/token-util-NEHG7TUY-4YJ4EPCL-SQ4NADRW.cjs.map +1 -0
  431. package/dist/token-util-NEHG7TUY-TV2H7N56-GGCGMPDG.js +8 -0
  432. package/dist/token-util-NEHG7TUY-TV2H7N56-GGCGMPDG.js.map +1 -0
  433. package/dist/token-util-NEHG7TUY-TV2H7N56-R7OENTCJ.cjs +10 -0
  434. package/dist/token-util-NEHG7TUY-TV2H7N56-R7OENTCJ.cjs.map +1 -0
  435. package/dist/token-util-NEHG7TUY-XQP3QSPX-BL5O5N7R.cjs +10 -0
  436. package/dist/token-util-NEHG7TUY-XQP3QSPX-BL5O5N7R.cjs.map +1 -0
  437. package/dist/token-util-NEHG7TUY-XQP3QSPX-YCJRRNXO.js +8 -0
  438. package/dist/token-util-NEHG7TUY-XQP3QSPX-YCJRRNXO.js.map +1 -0
  439. package/handlers/server/handlers.d.ts +1 -0
  440. package/handlers.d.ts +1 -0
  441. package/package.json +74 -20
  442. package/server-adapter.d.ts +1 -0
  443. package/dist/_tsup-dts-rollup.d.cts +0 -573
  444. package/dist/_tsup-dts-rollup.d.ts +0 -573
  445. package/dist/chunk-2FJURXCL.cjs +0 -213
  446. package/dist/chunk-3AHQ5RGN.js +0 -11
  447. package/dist/chunk-3EJZQ6TQ.js +0 -49
  448. package/dist/chunk-3RVHWGWO.js +0 -95
  449. package/dist/chunk-4JINXASC.js +0 -120
  450. package/dist/chunk-67WTHYAV.js +0 -156
  451. package/dist/chunk-A7DF4ETD.cjs +0 -100
  452. package/dist/chunk-B64YROKU.cjs +0 -317
  453. package/dist/chunk-CWSDZEZG.cjs +0 -139
  454. package/dist/chunk-DVPP5S6I.js +0 -135
  455. package/dist/chunk-JLDXUWK7.cjs +0 -126
  456. package/dist/chunk-L7XE5QTW.js +0 -16
  457. package/dist/chunk-M56ECCHK.cjs +0 -128
  458. package/dist/chunk-OPP7H5TW.js +0 -305
  459. package/dist/chunk-PDC4ZBQW.cjs +0 -126
  460. package/dist/chunk-QH6XWSXP.cjs +0 -5579
  461. package/dist/chunk-QN4KF3BH.cjs +0 -18
  462. package/dist/chunk-RBQASTUP.js +0 -203
  463. package/dist/chunk-SKBVVI24.cjs +0 -54
  464. package/dist/chunk-UV4WTEH4.js +0 -120
  465. package/dist/chunk-VK6FX47H.js +0 -5576
  466. package/dist/chunk-YANVFOYA.js +0 -120
  467. package/dist/chunk-Z46X3YCB.cjs +0 -164
  468. package/dist/chunk-ZLBRQFDD.cjs +0 -13
  469. package/dist/index.d.cts +0 -1
  470. package/dist/server/handlers/agents.d.cts +0 -6
  471. package/dist/server/handlers/error.d.cts +0 -1
  472. package/dist/server/handlers/logs.d.cts +0 -3
  473. package/dist/server/handlers/memory.d.cts +0 -8
  474. package/dist/server/handlers/network.cjs +0 -22
  475. package/dist/server/handlers/network.d.cts +0 -4
  476. package/dist/server/handlers/network.d.ts +0 -4
  477. package/dist/server/handlers/network.js +0 -1
  478. package/dist/server/handlers/telemetry.cjs +0 -14
  479. package/dist/server/handlers/telemetry.d.cts +0 -2
  480. package/dist/server/handlers/telemetry.d.ts +0 -2
  481. package/dist/server/handlers/telemetry.js +0 -1
  482. package/dist/server/handlers/tools.d.cts +0 -4
  483. package/dist/server/handlers/utils.d.cts +0 -1
  484. package/dist/server/handlers/vector.d.cts +0 -6
  485. package/dist/server/handlers/voice.d.cts +0 -3
  486. package/dist/server/handlers/workflows.d.cts +0 -10
  487. package/dist/server/handlers.d.cts +0 -9
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server/handlers/workspace.ts"],"names":[],"mappings":"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","file":"chunk-3AZY5AWI.js","sourcesContent":["/**\n * Workspace Handlers\n *\n * Unified handlers for workspace operations including:\n * - Filesystem operations (read, write, list, delete, mkdir, stat)\n * - Search operations (search, index)\n * - Skills operations (list, get, search, references)\n */\n\nimport { coreFeatures } from '@mastra/core/features';\nimport type { Workspace, WorkspaceSkills } from '@mastra/core/workspace';\nimport { HTTPException } from '../http-exception';\nimport {\n // Workspace info\n workspaceInfoResponseSchema,\n listWorkspacesResponseSchema,\n workspaceIdPathParams,\n // Filesystem schemas\n fsReadQuerySchema,\n fsListQuerySchema,\n fsStatQuerySchema,\n fsDeleteQuerySchema,\n fsWriteBodySchema,\n fsMkdirBodySchema,\n fsReadResponseSchema,\n fsWriteResponseSchema,\n fsListResponseSchema,\n fsDeleteResponseSchema,\n fsMkdirResponseSchema,\n fsStatResponseSchema,\n // Search schemas\n searchQuerySchema,\n searchResponseSchema,\n indexBodySchema,\n indexResponseSchema,\n // Skills schemas\n skillNamePathParams,\n skillReferencePathParams,\n searchSkillsQuerySchema,\n listSkillsResponseSchema,\n getSkillResponseSchema,\n skillReferenceResponseSchema,\n listReferencesResponseSchema,\n searchSkillsResponseSchema,\n} from '../schemas/workspace';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport { handleError } from './error';\n\n// =============================================================================\n// Helper Functions\n// =============================================================================\n\n/**\n * Throws if workspace v1 is not supported by the current version of @mastra/core.\n */\nfunction requireWorkspaceV1Support(): void {\n if (!coreFeatures.has('workspaces-v1')) {\n throw new HTTPException(501, {\n message: 'Workspace v1 not supported by this version of @mastra/core. Please upgrade to a newer version.',\n });\n }\n}\n\n/**\n * Get a workspace by ID from Mastra or agents.\n * If no workspaceId is provided, returns the global workspace.\n */\nasync function getWorkspaceById(mastra: any, workspaceId?: string): Promise<Workspace | undefined> {\n requireWorkspaceV1Support();\n const globalWorkspace = mastra.getWorkspace?.();\n\n // If no workspaceId specified, return global workspace\n if (!workspaceId) {\n return globalWorkspace;\n }\n\n // Check if it's the global workspace\n if (globalWorkspace?.id === workspaceId) {\n return globalWorkspace;\n }\n\n // Search through agents for the workspace\n const agents = mastra.listAgents?.() ?? {};\n for (const agent of Object.values(agents)) {\n if ((agent as any).hasOwnWorkspace?.()) {\n const agentWorkspace = await (agent as any).getWorkspace?.();\n if (agentWorkspace?.id === workspaceId) {\n return agentWorkspace;\n }\n }\n }\n\n return undefined;\n}\n\n/**\n * Get skills from a specific workspace by ID.\n * If no workspaceId is provided, returns skills from the global workspace.\n * Note: getWorkspaceById already checks for workspace v1 support.\n */\nasync function getSkillsById(mastra: any, workspaceId?: string): Promise<WorkspaceSkills | undefined> {\n const workspace = await getWorkspaceById(mastra, workspaceId);\n return workspace?.skills;\n}\n\n// =============================================================================\n// List All Workspaces Route\n// =============================================================================\n\nexport const LIST_WORKSPACES_ROUTE = createRoute({\n method: 'GET',\n path: '/workspaces',\n responseType: 'json',\n responseSchema: listWorkspacesResponseSchema,\n summary: 'List all workspaces',\n description: 'Returns all workspaces from both Mastra instance and agents',\n tags: ['Workspace'],\n handler: async ({ mastra }) => {\n try {\n requireWorkspaceV1Support();\n\n const workspaces: Array<{\n id: string;\n name: string;\n status: string;\n source: 'mastra' | 'agent';\n agentId?: string;\n agentName?: string;\n capabilities: {\n hasFilesystem: boolean;\n hasSandbox: boolean;\n canBM25: boolean;\n canVector: boolean;\n canHybrid: boolean;\n hasSkills: boolean;\n };\n safety: {\n readOnly: boolean;\n };\n }> = [];\n\n const seenIds = new Set<string>();\n\n // Get workspace from Mastra instance\n const globalWorkspace = mastra.getWorkspace?.();\n if (globalWorkspace) {\n seenIds.add(globalWorkspace.id);\n workspaces.push({\n id: globalWorkspace.id,\n name: globalWorkspace.name,\n status: globalWorkspace.status,\n source: 'mastra',\n capabilities: {\n hasFilesystem: !!globalWorkspace.fs,\n hasSandbox: !!globalWorkspace.sandbox,\n canBM25: globalWorkspace.canBM25,\n canVector: globalWorkspace.canVector,\n canHybrid: globalWorkspace.canHybrid,\n hasSkills: !!globalWorkspace.skills,\n },\n safety: {\n readOnly: globalWorkspace.filesystem?.readOnly ?? false,\n },\n });\n }\n\n // Get workspaces from agents\n const agents = mastra.listAgents?.() ?? {};\n for (const [agentId, agent] of Object.entries(agents)) {\n if (agent.hasOwnWorkspace?.()) {\n try {\n const agentWorkspace = await agent.getWorkspace?.();\n if (agentWorkspace && !seenIds.has(agentWorkspace.id)) {\n seenIds.add(agentWorkspace.id);\n workspaces.push({\n id: agentWorkspace.id,\n name: agentWorkspace.name,\n status: agentWorkspace.status,\n source: 'agent',\n agentId,\n agentName: agent.name,\n capabilities: {\n hasFilesystem: !!agentWorkspace.fs,\n hasSandbox: !!agentWorkspace.sandbox,\n canBM25: agentWorkspace.canBM25,\n canVector: agentWorkspace.canVector,\n canHybrid: agentWorkspace.canHybrid,\n hasSkills: !!agentWorkspace.skills,\n },\n safety: {\n readOnly: agentWorkspace.filesystem?.readOnly ?? false,\n },\n });\n }\n } catch {\n // Skip agents with dynamic workspaces that fail without thread context\n continue;\n }\n }\n }\n\n return { workspaces };\n } catch (error) {\n return handleError(error, 'Error listing workspaces');\n }\n },\n});\n\n// =============================================================================\n// Get Workspace Route\n// =============================================================================\n\nexport const GET_WORKSPACE_ROUTE = createRoute({\n method: 'GET',\n path: '/workspaces/:workspaceId',\n responseType: 'json',\n pathParamSchema: workspaceIdPathParams,\n responseSchema: workspaceInfoResponseSchema,\n summary: 'Get workspace info',\n description: 'Returns information about a specific workspace and its capabilities',\n tags: ['Workspace'],\n handler: async ({ mastra, workspaceId }) => {\n try {\n const workspace = await getWorkspaceById(mastra, workspaceId);\n\n if (!workspace) {\n return {\n isWorkspaceConfigured: false,\n };\n }\n\n return {\n isWorkspaceConfigured: true,\n id: workspace.id,\n name: workspace.name,\n status: workspace.status,\n capabilities: {\n hasFilesystem: !!workspace.fs,\n hasSandbox: !!workspace.sandbox,\n canBM25: workspace.canBM25,\n canVector: workspace.canVector,\n canHybrid: workspace.canHybrid,\n hasSkills: !!workspace.skills,\n },\n safety: {\n readOnly: workspace.filesystem?.readOnly ?? false,\n },\n };\n } catch (error) {\n return handleError(error, 'Error getting workspace info');\n }\n },\n});\n\n// =============================================================================\n// Filesystem Routes\n// =============================================================================\n\nexport const WORKSPACE_FS_READ_ROUTE = createRoute({\n method: 'GET',\n path: '/workspaces/:workspaceId/fs/read',\n responseType: 'json',\n pathParamSchema: workspaceIdPathParams,\n queryParamSchema: fsReadQuerySchema,\n responseSchema: fsReadResponseSchema,\n summary: 'Read file content',\n description: 'Returns the content of a file at the specified path',\n tags: ['Workspace'],\n handler: async ({ mastra, path, encoding, workspaceId }) => {\n try {\n requireWorkspaceV1Support();\n\n if (!path) {\n throw new HTTPException(400, { message: 'Path is required' });\n }\n\n const workspace = await getWorkspaceById(mastra, workspaceId);\n if (!workspace?.fs) {\n throw new HTTPException(404, { message: 'No workspace filesystem configured' });\n }\n\n const decodedPath = decodeURIComponent(path);\n\n // Check if path exists\n if (!(await workspace.fs.exists(decodedPath))) {\n throw new HTTPException(404, { message: `Path \"${decodedPath}\" not found` });\n }\n\n // Read file content\n const content = await workspace.fs.readFile(decodedPath, {\n encoding: (encoding as BufferEncoding) || 'utf-8',\n });\n\n return {\n path: decodedPath,\n content: typeof content === 'string' ? content : content.toString('utf-8'),\n type: 'file' as const,\n };\n } catch (error) {\n return handleError(error, 'Error reading file');\n }\n },\n});\n\nexport const WORKSPACE_FS_WRITE_ROUTE = createRoute({\n method: 'POST',\n path: '/workspaces/:workspaceId/fs/write',\n responseType: 'json',\n pathParamSchema: workspaceIdPathParams,\n bodySchema: fsWriteBodySchema,\n responseSchema: fsWriteResponseSchema,\n summary: 'Write file content',\n description: 'Writes content to a file at the specified path. Supports base64 encoding for binary files.',\n tags: ['Workspace'],\n handler: async ({ mastra, path, content, encoding, recursive, workspaceId }) => {\n try {\n requireWorkspaceV1Support();\n\n if (!path || content === undefined) {\n throw new HTTPException(400, { message: 'Path and content are required' });\n }\n\n const workspace = await getWorkspaceById(mastra, workspaceId);\n if (!workspace?.fs) {\n throw new HTTPException(404, { message: 'No workspace filesystem configured' });\n }\n\n if (workspace.filesystem?.readOnly) {\n throw new HTTPException(403, { message: 'Workspace is in read-only mode' });\n }\n\n const decodedPath = decodeURIComponent(path);\n\n // Handle base64-encoded content for binary files\n let fileContent: string | Buffer = content;\n if (encoding === 'base64') {\n fileContent = Buffer.from(content, 'base64');\n }\n\n await workspace.fs.writeFile(decodedPath, fileContent, { recursive: recursive ?? true });\n\n return {\n success: true,\n path: decodedPath,\n };\n } catch (error) {\n return handleError(error, 'Error writing file');\n }\n },\n});\n\nexport const WORKSPACE_FS_LIST_ROUTE = createRoute({\n method: 'GET',\n path: '/workspaces/:workspaceId/fs/list',\n responseType: 'json',\n pathParamSchema: workspaceIdPathParams,\n queryParamSchema: fsListQuerySchema,\n responseSchema: fsListResponseSchema,\n summary: 'List directory contents',\n description: 'Returns a list of files and directories at the specified path',\n tags: ['Workspace'],\n handler: async ({ mastra, path, recursive, workspaceId }) => {\n try {\n requireWorkspaceV1Support();\n\n if (!path) {\n throw new HTTPException(400, { message: 'Path is required' });\n }\n\n const workspace = await getWorkspaceById(mastra, workspaceId);\n if (!workspace?.fs) {\n return {\n path: decodeURIComponent(path),\n entries: [],\n error: 'No workspace filesystem configured',\n };\n }\n\n const decodedPath = decodeURIComponent(path);\n\n // Check if path exists\n if (!(await workspace.fs.exists(decodedPath))) {\n throw new HTTPException(404, { message: `Path \"${decodedPath}\" not found` });\n }\n\n const entries = await workspace.fs.readdir(decodedPath, { recursive });\n\n return {\n path: decodedPath,\n entries: entries.map(entry => ({\n name: entry.name,\n type: entry.type,\n size: entry.size,\n })),\n };\n } catch (error) {\n return handleError(error, 'Error listing directory');\n }\n },\n});\n\nexport const WORKSPACE_FS_DELETE_ROUTE = createRoute({\n method: 'DELETE',\n path: '/workspaces/:workspaceId/fs/delete',\n responseType: 'json',\n pathParamSchema: workspaceIdPathParams,\n queryParamSchema: fsDeleteQuerySchema,\n responseSchema: fsDeleteResponseSchema,\n summary: 'Delete file or directory',\n description: 'Deletes a file or directory at the specified path',\n tags: ['Workspace'],\n handler: async ({ mastra, path, recursive, force, workspaceId }) => {\n try {\n requireWorkspaceV1Support();\n\n if (!path) {\n throw new HTTPException(400, { message: 'Path is required' });\n }\n\n const workspace = await getWorkspaceById(mastra, workspaceId);\n if (!workspace?.fs) {\n throw new HTTPException(404, { message: 'No workspace filesystem configured' });\n }\n\n if (workspace.filesystem?.readOnly) {\n throw new HTTPException(403, { message: 'Workspace is in read-only mode' });\n }\n\n const decodedPath = decodeURIComponent(path);\n\n // Check if path exists (unless force is true)\n const exists = await workspace.fs.exists(decodedPath);\n if (!exists && !force) {\n throw new HTTPException(404, { message: `Path \"${decodedPath}\" not found` });\n }\n\n if (exists) {\n // Try to delete as file first, then as directory\n try {\n await workspace.fs.deleteFile(decodedPath, { force });\n } catch {\n await workspace.fs.rmdir(decodedPath, { recursive, force });\n }\n }\n\n return {\n success: true,\n path: decodedPath,\n };\n } catch (error) {\n return handleError(error, 'Error deleting path');\n }\n },\n});\n\nexport const WORKSPACE_FS_MKDIR_ROUTE = createRoute({\n method: 'POST',\n path: '/workspaces/:workspaceId/fs/mkdir',\n responseType: 'json',\n pathParamSchema: workspaceIdPathParams,\n bodySchema: fsMkdirBodySchema,\n responseSchema: fsMkdirResponseSchema,\n summary: 'Create directory',\n description: 'Creates a directory at the specified path',\n tags: ['Workspace'],\n handler: async ({ mastra, path, recursive, workspaceId }) => {\n try {\n requireWorkspaceV1Support();\n\n if (!path) {\n throw new HTTPException(400, { message: 'Path is required' });\n }\n\n const workspace = await getWorkspaceById(mastra, workspaceId);\n if (!workspace?.fs) {\n throw new HTTPException(404, { message: 'No workspace filesystem configured' });\n }\n\n if (workspace.filesystem?.readOnly) {\n throw new HTTPException(403, { message: 'Workspace is in read-only mode' });\n }\n\n const decodedPath = decodeURIComponent(path);\n\n await workspace.fs.mkdir(decodedPath, { recursive: recursive ?? true });\n\n return {\n success: true,\n path: decodedPath,\n };\n } catch (error) {\n return handleError(error, 'Error creating directory');\n }\n },\n});\n\nexport const WORKSPACE_FS_STAT_ROUTE = createRoute({\n method: 'GET',\n path: '/workspaces/:workspaceId/fs/stat',\n responseType: 'json',\n pathParamSchema: workspaceIdPathParams,\n queryParamSchema: fsStatQuerySchema,\n responseSchema: fsStatResponseSchema,\n summary: 'Get file/directory info',\n description: 'Returns metadata about a file or directory',\n tags: ['Workspace'],\n handler: async ({ mastra, path, workspaceId }) => {\n try {\n requireWorkspaceV1Support();\n\n if (!path) {\n throw new HTTPException(400, { message: 'Path is required' });\n }\n\n const workspace = await getWorkspaceById(mastra, workspaceId);\n if (!workspace?.fs) {\n throw new HTTPException(404, { message: 'No workspace filesystem configured' });\n }\n\n const decodedPath = decodeURIComponent(path);\n\n // Check if path exists\n if (!(await workspace.fs.exists(decodedPath))) {\n throw new HTTPException(404, { message: `Path \"${decodedPath}\" not found` });\n }\n\n const stat = await workspace.fs.stat(decodedPath);\n\n return {\n path: stat.path,\n type: stat.type,\n size: stat.size,\n createdAt: stat.createdAt?.toISOString(),\n modifiedAt: stat.modifiedAt?.toISOString(),\n mimeType: stat.mimeType,\n };\n } catch (error) {\n return handleError(error, 'Error getting file info');\n }\n },\n});\n\n// =============================================================================\n// Search Routes\n// =============================================================================\n\nexport const WORKSPACE_SEARCH_ROUTE = createRoute({\n method: 'GET',\n path: '/workspaces/:workspaceId/search',\n responseType: 'json',\n pathParamSchema: workspaceIdPathParams,\n queryParamSchema: searchQuerySchema,\n responseSchema: searchResponseSchema,\n summary: 'Search workspace content',\n description: 'Searches across indexed workspace content using BM25, vector, or hybrid search',\n tags: ['Workspace'],\n handler: async ({ mastra, query, topK, mode, minScore, workspaceId }) => {\n try {\n requireWorkspaceV1Support();\n\n if (!query) {\n throw new HTTPException(400, { message: 'Search query is required' });\n }\n\n const workspace = await getWorkspaceById(mastra, workspaceId);\n if (!workspace) {\n return {\n results: [],\n query,\n mode: mode || 'bm25',\n };\n }\n\n // Check search capabilities\n const canSearch = workspace.canBM25 || workspace.canVector;\n if (!canSearch) {\n return {\n results: [],\n query,\n mode: mode || 'bm25',\n };\n }\n\n // Determine search mode based on capabilities\n let searchMode = mode;\n if (!searchMode) {\n if (workspace.canHybrid) {\n searchMode = 'hybrid';\n } else if (workspace.canVector) {\n searchMode = 'vector';\n } else {\n searchMode = 'bm25';\n }\n }\n\n const results = await workspace.search(query, {\n topK: topK || 5,\n mode: searchMode,\n minScore,\n });\n\n return {\n results: results.map(r => ({\n id: r.id,\n content: r.content,\n score: r.score,\n lineRange: r.lineRange,\n scoreDetails: r.scoreDetails,\n })),\n query,\n mode: searchMode,\n };\n } catch (error) {\n return handleError(error, 'Error searching workspace');\n }\n },\n});\n\nexport const WORKSPACE_INDEX_ROUTE = createRoute({\n method: 'POST',\n path: '/workspaces/:workspaceId/index',\n responseType: 'json',\n pathParamSchema: workspaceIdPathParams,\n bodySchema: indexBodySchema,\n responseSchema: indexResponseSchema,\n summary: 'Index content for search',\n description: 'Indexes content for later search operations',\n tags: ['Workspace'],\n handler: async ({ mastra, path, content, metadata, workspaceId }) => {\n try {\n requireWorkspaceV1Support();\n\n if (!path || content === undefined) {\n throw new HTTPException(400, { message: 'Path and content are required' });\n }\n\n const workspace = await getWorkspaceById(mastra, workspaceId);\n if (!workspace) {\n throw new HTTPException(404, { message: 'No workspace configured' });\n }\n\n const canSearch = workspace.canBM25 || workspace.canVector;\n if (!canSearch) {\n throw new HTTPException(400, { message: 'Workspace does not have search configured' });\n }\n\n await workspace.index(path, content, { metadata });\n\n return {\n success: true,\n path,\n };\n } catch (error) {\n return handleError(error, 'Error indexing content');\n }\n },\n});\n\n// =============================================================================\n// Skills Routes (under /workspaces/:workspaceId/skills)\n// =============================================================================\n\nexport const WORKSPACE_LIST_SKILLS_ROUTE = createRoute({\n method: 'GET',\n path: '/workspaces/:workspaceId/skills',\n responseType: 'json',\n pathParamSchema: workspaceIdPathParams,\n responseSchema: listSkillsResponseSchema,\n summary: 'List all skills',\n description: 'Returns a list of all discovered skills with their metadata',\n tags: ['Workspace', 'Skills'],\n handler: async ({ mastra, workspaceId, requestContext }) => {\n try {\n requireWorkspaceV1Support();\n\n const skills = await getSkillsById(mastra, workspaceId);\n if (!skills) {\n return { skills: [], isSkillsConfigured: false };\n }\n\n // Refresh skills with request context (handles dynamic skill resolvers)\n await skills.maybeRefresh({ requestContext });\n\n const skillsList = await skills.list();\n\n return {\n skills: skillsList.map(skill => ({\n name: skill.name,\n description: skill.description,\n license: skill.license,\n compatibility: skill.compatibility,\n metadata: skill.metadata,\n })),\n isSkillsConfigured: true,\n };\n } catch (error) {\n return handleError(error, 'Error listing skills');\n }\n },\n});\n\nexport const WORKSPACE_GET_SKILL_ROUTE = createRoute({\n method: 'GET',\n path: '/workspaces/:workspaceId/skills/:skillName',\n responseType: 'json',\n pathParamSchema: skillNamePathParams,\n responseSchema: getSkillResponseSchema,\n summary: 'Get skill details',\n description: 'Returns the full details of a specific skill including instructions and file lists',\n tags: ['Workspace', 'Skills'],\n handler: async ({ mastra, skillName, workspaceId, requestContext }) => {\n try {\n requireWorkspaceV1Support();\n\n if (!skillName) {\n throw new HTTPException(400, { message: 'Skill name is required' });\n }\n\n const skills = await getSkillsById(mastra, workspaceId);\n if (!skills) {\n throw new HTTPException(404, { message: 'No workspace with skills configured' });\n }\n\n // Refresh skills with request context (handles dynamic skill resolvers)\n await skills.maybeRefresh({ requestContext });\n\n const skill = await skills.get(skillName);\n if (!skill) {\n throw new HTTPException(404, { message: `Skill \"${skillName}\" not found` });\n }\n\n return {\n name: skill.name,\n description: skill.description,\n license: skill.license,\n compatibility: skill.compatibility,\n metadata: skill.metadata,\n path: skill.path,\n instructions: skill.instructions,\n source: skill.source,\n references: skill.references,\n scripts: skill.scripts,\n assets: skill.assets,\n };\n } catch (error) {\n return handleError(error, 'Error getting skill');\n }\n },\n});\n\nexport const WORKSPACE_LIST_SKILL_REFERENCES_ROUTE = createRoute({\n method: 'GET',\n path: '/workspaces/:workspaceId/skills/:skillName/references',\n responseType: 'json',\n pathParamSchema: skillNamePathParams,\n responseSchema: listReferencesResponseSchema,\n summary: 'List skill references',\n description: 'Returns a list of all reference file paths for a skill',\n tags: ['Workspace', 'Skills'],\n handler: async ({ mastra, skillName, workspaceId, requestContext }) => {\n try {\n requireWorkspaceV1Support();\n\n if (!skillName) {\n throw new HTTPException(400, { message: 'Skill name is required' });\n }\n\n const skills = await getSkillsById(mastra, workspaceId);\n if (!skills) {\n throw new HTTPException(404, { message: 'No workspace with skills configured' });\n }\n\n // Refresh skills with request context (handles dynamic skill resolvers)\n await skills.maybeRefresh({ requestContext });\n\n const hasSkill = await skills.has(skillName);\n if (!hasSkill) {\n throw new HTTPException(404, { message: `Skill \"${skillName}\" not found` });\n }\n\n const references = await skills.listReferences(skillName);\n\n return {\n skillName,\n references,\n };\n } catch (error) {\n return handleError(error, 'Error listing skill references');\n }\n },\n});\n\nexport const WORKSPACE_GET_SKILL_REFERENCE_ROUTE = createRoute({\n method: 'GET',\n path: '/workspaces/:workspaceId/skills/:skillName/references/:referencePath',\n responseType: 'json',\n pathParamSchema: skillReferencePathParams,\n responseSchema: skillReferenceResponseSchema,\n summary: 'Get skill reference content',\n description: 'Returns the content of a specific reference file from a skill',\n tags: ['Workspace', 'Skills'],\n handler: async ({ mastra, skillName, referencePath, workspaceId, requestContext }) => {\n try {\n requireWorkspaceV1Support();\n\n if (!skillName || !referencePath) {\n throw new HTTPException(400, { message: 'Skill name and reference path are required' });\n }\n\n const skills = await getSkillsById(mastra, workspaceId);\n if (!skills) {\n throw new HTTPException(404, { message: 'No workspace with skills configured' });\n }\n\n // Refresh skills with request context (handles dynamic skill resolvers)\n await skills.maybeRefresh({ requestContext });\n\n // Decode the reference path (it may be URL encoded)\n const decodedPath = decodeURIComponent(referencePath);\n\n const content = await skills.getReference(skillName, decodedPath);\n if (content === null) {\n throw new HTTPException(404, { message: `Reference \"${decodedPath}\" not found in skill \"${skillName}\"` });\n }\n\n return {\n skillName,\n referencePath: decodedPath,\n content,\n };\n } catch (error) {\n return handleError(error, 'Error getting skill reference');\n }\n },\n});\n\nexport const WORKSPACE_SEARCH_SKILLS_ROUTE = createRoute({\n method: 'GET',\n path: '/workspaces/:workspaceId/skills/search',\n responseType: 'json',\n pathParamSchema: workspaceIdPathParams,\n queryParamSchema: searchSkillsQuerySchema,\n responseSchema: searchSkillsResponseSchema,\n summary: 'Search skills',\n description: 'Searches across all skills content using BM25 keyword search',\n tags: ['Workspace', 'Skills'],\n handler: async ({ mastra, query, topK, minScore, skillNames, includeReferences, workspaceId, requestContext }) => {\n try {\n requireWorkspaceV1Support();\n\n if (!query) {\n throw new HTTPException(400, { message: 'Search query is required' });\n }\n\n const skills = await getSkillsById(mastra, workspaceId);\n if (!skills) {\n return {\n results: [],\n query,\n };\n }\n\n // Refresh skills with request context (handles dynamic skill resolvers)\n await skills.maybeRefresh({ requestContext });\n\n // Parse comma-separated skill names if provided\n const skillNamesList = skillNames ? skillNames.split(',').map((s: string) => s.trim()) : undefined;\n\n const results = await skills.search(query, {\n topK: topK || 5,\n minScore,\n skillNames: skillNamesList,\n includeReferences: includeReferences ?? true,\n });\n\n return {\n results: results.map(r => ({\n skillName: r.skillName,\n source: r.source,\n content: r.content,\n score: r.score,\n lineRange: r.lineRange,\n scoreDetails: r.scoreDetails,\n })),\n query,\n };\n } catch (error) {\n return handleError(error, 'Error searching skills');\n }\n },\n});\n\n// =============================================================================\n// Route Collections\n// =============================================================================\n\nexport const WORKSPACE_FS_ROUTES = [\n WORKSPACE_FS_READ_ROUTE,\n WORKSPACE_FS_WRITE_ROUTE,\n WORKSPACE_FS_LIST_ROUTE,\n WORKSPACE_FS_DELETE_ROUTE,\n WORKSPACE_FS_MKDIR_ROUTE,\n WORKSPACE_FS_STAT_ROUTE,\n];\n\nexport const WORKSPACE_SEARCH_ROUTES = [WORKSPACE_SEARCH_ROUTE, WORKSPACE_INDEX_ROUTE];\n\n// IMPORTANT: Search route must come before the parameterized routes\n// to avoid /api/workspace/skills/search being matched as /api/workspace/skills/:skillName\nexport const WORKSPACE_SKILLS_ROUTES = [\n WORKSPACE_SEARCH_SKILLS_ROUTE,\n WORKSPACE_LIST_SKILLS_ROUTE,\n WORKSPACE_GET_SKILL_ROUTE,\n WORKSPACE_LIST_SKILL_REFERENCES_ROUTE,\n WORKSPACE_GET_SKILL_REFERENCE_ROUTE,\n];\n"]}
@@ -0,0 +1,333 @@
1
+ import { getAgentFromSystem } from './chunk-3QUACCLU.js';
2
+ import { paginationInfoSchema, runIdSchema } from './chunk-HT4LP3BO.js';
3
+ import { handleError } from './chunk-ONN5EA7E.js';
4
+ import { createRoute } from './chunk-D5VCL56B.js';
5
+ import { HTTPException } from './chunk-6QWQZI4Q.js';
6
+ import { __export } from './chunk-PR4QN5HX.js';
7
+ import z from 'zod';
8
+
9
+ // src/server/handlers/scores.ts
10
+ var scores_exports = {};
11
+ __export(scores_exports, {
12
+ GET_SCORER_ROUTE: () => GET_SCORER_ROUTE,
13
+ LIST_SCORERS_ROUTE: () => LIST_SCORERS_ROUTE,
14
+ LIST_SCORES_BY_ENTITY_ID_ROUTE: () => LIST_SCORES_BY_ENTITY_ID_ROUTE,
15
+ LIST_SCORES_BY_RUN_ID_ROUTE: () => LIST_SCORES_BY_RUN_ID_ROUTE,
16
+ LIST_SCORES_BY_SCORER_ID_ROUTE: () => LIST_SCORES_BY_SCORER_ID_ROUTE,
17
+ SAVE_SCORE_ROUTE: () => SAVE_SCORE_ROUTE
18
+ });
19
+ var scoringSamplingConfigSchema = z.object({});
20
+ var mastraScorerConfigSchema = z.object({
21
+ id: z.string(),
22
+ name: z.string().optional(),
23
+ description: z.string(),
24
+ type: z.unknown().optional(),
25
+ judge: z.unknown().optional()
26
+ });
27
+ var mastraScorerSchema = z.object({
28
+ config: mastraScorerConfigSchema
29
+ });
30
+ var scorerEntrySchema = z.object({
31
+ scorer: mastraScorerSchema,
32
+ sampling: scoringSamplingConfigSchema.optional(),
33
+ agentIds: z.array(z.string()),
34
+ agentNames: z.array(z.string()),
35
+ workflowIds: z.array(z.string()),
36
+ isRegistered: z.boolean()
37
+ });
38
+ var listScorersResponseSchema = z.record(z.string(), scorerEntrySchema);
39
+ var scorerIdPathParams = z.object({
40
+ scorerId: z.string().describe("Unique identifier for the scorer")
41
+ });
42
+ var entityPathParams = z.object({
43
+ entityType: z.string().describe("Type of the entity (AGENT or WORKFLOW)"),
44
+ entityId: z.string().describe("Unique identifier for the entity")
45
+ });
46
+ var listScoresByRunIdQuerySchema = z.object({
47
+ page: z.coerce.number().optional().default(0),
48
+ perPage: z.coerce.number().optional().default(10)
49
+ });
50
+ var listScoresByScorerIdQuerySchema = z.object({
51
+ page: z.coerce.number().optional().default(0),
52
+ perPage: z.coerce.number().optional().default(10),
53
+ entityId: z.string().optional(),
54
+ entityType: z.string().optional()
55
+ });
56
+ var listScoresByEntityIdQuerySchema = z.object({
57
+ page: z.coerce.number().optional().default(0),
58
+ perPage: z.coerce.number().optional().default(10)
59
+ });
60
+ var saveScoreBodySchema = z.object({
61
+ score: z.unknown()
62
+ // ScoreRowData - complex type
63
+ });
64
+ var scoresWithPaginationResponseSchema = z.object({
65
+ pagination: paginationInfoSchema,
66
+ scores: z.array(z.unknown())
67
+ // Array of score records
68
+ });
69
+ var saveScoreResponseSchema = z.object({
70
+ score: z.unknown()
71
+ // ScoreRowData
72
+ });
73
+
74
+ // src/server/handlers/scores.ts
75
+ async function listScorersFromSystem({
76
+ mastra,
77
+ requestContext
78
+ }) {
79
+ const agents = mastra.listAgents();
80
+ const workflows = mastra.listWorkflows();
81
+ const scorersMap = /* @__PURE__ */ new Map();
82
+ const processAgentScorers = async (agent) => {
83
+ const scorers = await agent.listScorers({
84
+ requestContext
85
+ }) || {};
86
+ if (Object.keys(scorers).length > 0) {
87
+ for (const [_scorerId, scorer] of Object.entries(scorers)) {
88
+ const scorerId = scorer.scorer.id;
89
+ if (scorersMap.has(scorerId)) {
90
+ scorersMap.get(scorerId)?.agentIds.push(agent.id);
91
+ scorersMap.get(scorerId)?.agentNames.push(agent.name);
92
+ } else {
93
+ scorersMap.set(scorerId, {
94
+ workflowIds: [],
95
+ ...scorer,
96
+ agentNames: [agent.name],
97
+ agentIds: [agent.id],
98
+ isRegistered: false
99
+ });
100
+ }
101
+ }
102
+ }
103
+ };
104
+ for (const [_, agent] of Object.entries(agents)) {
105
+ await processAgentScorers(agent);
106
+ }
107
+ try {
108
+ const storedAgentsResult = await mastra.listStoredAgents();
109
+ if (storedAgentsResult?.agents) {
110
+ for (const storedAgent of storedAgentsResult.agents) {
111
+ await processAgentScorers(storedAgent);
112
+ }
113
+ }
114
+ } catch {
115
+ }
116
+ for (const [workflowId, workflow] of Object.entries(workflows)) {
117
+ const scorers = await workflow.listScorers({
118
+ requestContext
119
+ }) || {};
120
+ if (Object.keys(scorers).length > 0) {
121
+ for (const [_scorerId, scorer] of Object.entries(scorers)) {
122
+ const scorerName = scorer.scorer.name;
123
+ if (scorersMap.has(scorerName)) {
124
+ scorersMap.get(scorerName)?.workflowIds.push(workflowId);
125
+ } else {
126
+ scorersMap.set(scorerName, {
127
+ agentIds: [],
128
+ agentNames: [],
129
+ ...scorer,
130
+ workflowIds: [workflowId],
131
+ isRegistered: false
132
+ });
133
+ }
134
+ }
135
+ }
136
+ }
137
+ const registeredScorers = await mastra.listScorers();
138
+ for (const [_scorerId, scorer] of Object.entries(registeredScorers || {})) {
139
+ const scorerId = scorer.id;
140
+ if (scorersMap.has(scorerId)) {
141
+ scorersMap.get(scorerId).isRegistered = true;
142
+ } else {
143
+ scorersMap.set(scorerId, {
144
+ scorer,
145
+ agentIds: [],
146
+ agentNames: [],
147
+ workflowIds: [],
148
+ isRegistered: true
149
+ });
150
+ }
151
+ }
152
+ return Object.fromEntries(scorersMap.entries());
153
+ }
154
+ function getTraceDetails(traceIdWithSpanId) {
155
+ if (!traceIdWithSpanId) {
156
+ return {};
157
+ }
158
+ const [traceId, spanId] = traceIdWithSpanId.split("-");
159
+ return {
160
+ ...traceId ? { traceId } : {},
161
+ ...spanId ? { spanId } : {}
162
+ };
163
+ }
164
+ var LIST_SCORERS_ROUTE = createRoute({
165
+ method: "GET",
166
+ path: "/scores/scorers",
167
+ responseType: "json",
168
+ responseSchema: listScorersResponseSchema,
169
+ summary: "List all scorers",
170
+ description: "Returns a list of all registered scorers with their configuration and associated agents and workflows",
171
+ tags: ["Scoring"],
172
+ requiresAuth: true,
173
+ handler: async ({ mastra, requestContext }) => {
174
+ const scorers = await listScorersFromSystem({
175
+ mastra,
176
+ requestContext
177
+ });
178
+ return scorers;
179
+ }
180
+ });
181
+ var GET_SCORER_ROUTE = createRoute({
182
+ method: "GET",
183
+ path: "/scores/scorers/:scorerId",
184
+ responseType: "json",
185
+ pathParamSchema: scorerIdPathParams,
186
+ responseSchema: scorerEntrySchema.nullable(),
187
+ summary: "Get scorer by ID",
188
+ description: "Returns details for a specific scorer including its configuration and associations",
189
+ tags: ["Scoring"],
190
+ requiresAuth: true,
191
+ handler: async ({ mastra, scorerId, requestContext }) => {
192
+ const scorers = await listScorersFromSystem({
193
+ mastra,
194
+ requestContext
195
+ });
196
+ const scorer = scorers[scorerId];
197
+ if (!scorer) {
198
+ return null;
199
+ }
200
+ return scorer;
201
+ }
202
+ });
203
+ var LIST_SCORES_BY_RUN_ID_ROUTE = createRoute({
204
+ method: "GET",
205
+ path: "/scores/run/:runId",
206
+ responseType: "json",
207
+ pathParamSchema: runIdSchema,
208
+ queryParamSchema: listScoresByRunIdQuerySchema,
209
+ responseSchema: scoresWithPaginationResponseSchema,
210
+ summary: "List scores by run ID",
211
+ description: "Returns all scores for a specific execution run",
212
+ tags: ["Scoring"],
213
+ requiresAuth: true,
214
+ handler: async ({ mastra, runId, ...params }) => {
215
+ try {
216
+ const { page, perPage } = params;
217
+ const pagination = {
218
+ page: page ?? 0,
219
+ perPage: perPage ?? 10
220
+ };
221
+ const scores = await mastra.getStorage()?.getStore("scores");
222
+ const scoreResults = await scores?.listScoresByRunId?.({
223
+ runId,
224
+ pagination
225
+ }) || { pagination: { total: 0, page: 0, perPage: 0, hasMore: false }, scores: [] };
226
+ return {
227
+ pagination: scoreResults.pagination,
228
+ scores: scoreResults.scores.map((score) => ({ ...score, ...getTraceDetails(score.traceId) }))
229
+ };
230
+ } catch (error) {
231
+ return handleError(error, "Error getting scores by run id");
232
+ }
233
+ }
234
+ });
235
+ var LIST_SCORES_BY_SCORER_ID_ROUTE = createRoute({
236
+ method: "GET",
237
+ path: "/scores/scorer/:scorerId",
238
+ responseType: "json",
239
+ pathParamSchema: scorerIdPathParams,
240
+ queryParamSchema: listScoresByScorerIdQuerySchema,
241
+ responseSchema: scoresWithPaginationResponseSchema,
242
+ summary: "List scores by scorer ID",
243
+ description: "Returns all scores generated by a specific scorer",
244
+ tags: ["Scoring"],
245
+ requiresAuth: true,
246
+ handler: async ({ mastra, scorerId, ...params }) => {
247
+ try {
248
+ const { page, perPage, entityId, entityType } = params;
249
+ const filters = Object.fromEntries(Object.entries({ entityId, entityType }).filter(([_, v]) => v !== void 0));
250
+ const scores = await mastra.getStorage()?.getStore("scores");
251
+ const scoreResults = await scores?.listScoresByScorerId?.({
252
+ scorerId,
253
+ pagination: { page: page ?? 0, perPage: perPage ?? 10 },
254
+ ...filters
255
+ }) || { pagination: { total: 0, page: 0, perPage: 0, hasMore: false }, scores: [] };
256
+ return {
257
+ pagination: scoreResults.pagination,
258
+ scores: scoreResults.scores.map((score) => ({ ...score, ...getTraceDetails(score.traceId) }))
259
+ };
260
+ } catch (error) {
261
+ return handleError(error, "Error getting scores by scorer id");
262
+ }
263
+ }
264
+ });
265
+ var LIST_SCORES_BY_ENTITY_ID_ROUTE = createRoute({
266
+ method: "GET",
267
+ path: "/scores/entity/:entityType/:entityId",
268
+ responseType: "json",
269
+ pathParamSchema: entityPathParams,
270
+ queryParamSchema: listScoresByEntityIdQuerySchema,
271
+ responseSchema: scoresWithPaginationResponseSchema,
272
+ summary: "List scores by entity ID",
273
+ description: "Returns all scores for a specific entity (agent or workflow)",
274
+ tags: ["Scoring"],
275
+ requiresAuth: true,
276
+ handler: async ({ mastra, entityId, entityType, ...params }) => {
277
+ try {
278
+ const { page, perPage } = params;
279
+ let entityIdToUse = entityId;
280
+ if (entityType === "AGENT") {
281
+ const agent = await getAgentFromSystem({ mastra, agentId: entityId });
282
+ entityIdToUse = agent.id;
283
+ } else if (entityType === "WORKFLOW") {
284
+ const workflow = mastra.getWorkflowById(entityId);
285
+ entityIdToUse = workflow.id;
286
+ }
287
+ const pagination = {
288
+ page: page ?? 0,
289
+ perPage: perPage ?? 10
290
+ };
291
+ const scoresStore = await mastra.getStorage()?.getStore("scores");
292
+ const scoreResults = await scoresStore?.listScoresByEntityId?.({
293
+ entityId: entityIdToUse,
294
+ entityType,
295
+ pagination
296
+ }) || { pagination: { total: 0, page: 0, perPage: 0, hasMore: false }, scores: [] };
297
+ return {
298
+ pagination: scoreResults.pagination,
299
+ scores: scoreResults.scores.map((score) => ({ ...score, ...getTraceDetails(score.traceId) }))
300
+ };
301
+ } catch (error) {
302
+ return handleError(error, "Error getting scores by entity id");
303
+ }
304
+ }
305
+ });
306
+ var SAVE_SCORE_ROUTE = createRoute({
307
+ method: "POST",
308
+ path: "/scores",
309
+ responseType: "json",
310
+ bodySchema: saveScoreBodySchema,
311
+ responseSchema: saveScoreResponseSchema,
312
+ summary: "Save score",
313
+ description: "Saves a new score record to storage",
314
+ tags: ["Scoring"],
315
+ requiresAuth: true,
316
+ handler: async ({ mastra, ...params }) => {
317
+ try {
318
+ const { score } = params;
319
+ const scoresStore = await mastra.getStorage()?.getStore("scores");
320
+ const result = await scoresStore?.saveScore?.(score);
321
+ if (!result) {
322
+ throw new HTTPException(500, { message: "Storage not configured" });
323
+ }
324
+ return result;
325
+ } catch (error) {
326
+ return handleError(error, "Error saving score");
327
+ }
328
+ }
329
+ });
330
+
331
+ export { GET_SCORER_ROUTE, LIST_SCORERS_ROUTE, LIST_SCORES_BY_ENTITY_ID_ROUTE, LIST_SCORES_BY_RUN_ID_ROUTE, LIST_SCORES_BY_SCORER_ID_ROUTE, SAVE_SCORE_ROUTE, scores_exports };
332
+ //# sourceMappingURL=chunk-3OIJLD3O.js.map
333
+ //# sourceMappingURL=chunk-3OIJLD3O.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server/handlers/scores.ts","../src/server/schemas/scores.ts"],"names":[],"mappings":"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","file":"chunk-3OIJLD3O.js","sourcesContent":["import type { MastraScorerEntry, ScoreRowData } from '@mastra/core/evals';\nimport type { RequestContext } from '@mastra/core/request-context';\nimport type { StoragePagination } from '@mastra/core/storage';\nimport { HTTPException } from '../http-exception';\nimport { runIdSchema } from '../schemas/common';\nimport {\n listScorersResponseSchema,\n scorerEntrySchema,\n scorerIdPathParams,\n entityPathParams,\n listScoresByRunIdQuerySchema,\n listScoresByScorerIdQuerySchema,\n listScoresByEntityIdQuerySchema,\n saveScoreBodySchema,\n scoresWithPaginationResponseSchema,\n saveScoreResponseSchema,\n} from '../schemas/scores';\nimport { createRoute } from '../server-adapter/routes/route-builder';\nimport type { Context } from '../types';\nimport { getAgentFromSystem } from './agents';\nimport { handleError } from './error';\n\nasync function listScorersFromSystem({\n mastra,\n requestContext,\n}: Context & {\n requestContext: RequestContext;\n}) {\n const agents = mastra.listAgents();\n const workflows = mastra.listWorkflows();\n\n const scorersMap = new Map<\n string,\n MastraScorerEntry & { agentIds: string[]; agentNames: string[]; workflowIds: string[]; isRegistered: boolean }\n >();\n\n // Helper function to process an agent's scorers\n const processAgentScorers = async (agent: {\n id: string;\n name: string;\n listScorers: (typeof agents)[string]['listScorers'];\n }) => {\n const scorers =\n (await agent.listScorers({\n requestContext,\n })) || {};\n\n if (Object.keys(scorers).length > 0) {\n for (const [_scorerId, scorer] of Object.entries(scorers)) {\n const scorerId = scorer.scorer.id;\n if (scorersMap.has(scorerId)) {\n scorersMap.get(scorerId)?.agentIds.push(agent.id);\n scorersMap.get(scorerId)?.agentNames.push(agent.name);\n } else {\n scorersMap.set(scorerId, {\n workflowIds: [],\n ...scorer,\n agentNames: [agent.name],\n agentIds: [agent.id],\n isRegistered: false,\n });\n }\n }\n }\n };\n\n // Process code-defined agents\n for (const [_, agent] of Object.entries(agents)) {\n await processAgentScorers(agent);\n }\n\n // Process stored agents (database-backed agents)\n try {\n const storedAgentsResult = await mastra.listStoredAgents();\n if (storedAgentsResult?.agents) {\n for (const storedAgent of storedAgentsResult.agents) {\n await processAgentScorers(storedAgent);\n }\n }\n } catch {\n // Silently ignore if storage is not configured - not all setups have storage\n }\n\n for (const [workflowId, workflow] of Object.entries(workflows)) {\n const scorers =\n (await workflow.listScorers({\n requestContext,\n })) || {};\n\n if (Object.keys(scorers).length > 0) {\n for (const [_scorerId, scorer] of Object.entries(scorers)) {\n const scorerName = scorer.scorer.name;\n if (scorersMap.has(scorerName)) {\n scorersMap.get(scorerName)?.workflowIds.push(workflowId);\n } else {\n scorersMap.set(scorerName, {\n agentIds: [],\n agentNames: [],\n ...scorer,\n workflowIds: [workflowId],\n isRegistered: false,\n });\n }\n }\n }\n }\n\n const registeredScorers = await mastra.listScorers();\n for (const [_scorerId, scorer] of Object.entries(registeredScorers || {})) {\n const scorerId = scorer.id;\n if (scorersMap.has(scorerId)) {\n scorersMap.get(scorerId)!.isRegistered = true;\n } else {\n scorersMap.set(scorerId, {\n scorer: scorer,\n agentIds: [],\n agentNames: [],\n workflowIds: [],\n isRegistered: true,\n });\n }\n }\n\n return Object.fromEntries(scorersMap.entries());\n}\n\n// Legacy function to get trace and span details\nfunction getTraceDetails(traceIdWithSpanId?: string) {\n if (!traceIdWithSpanId) {\n return {};\n }\n\n const [traceId, spanId] = traceIdWithSpanId.split('-');\n\n return {\n ...(traceId ? { traceId } : {}),\n ...(spanId ? { spanId } : {}),\n };\n}\n\n// ============================================================================\n// Route Definitions (new pattern - handlers defined inline with createRoute)\n// ============================================================================\n\nexport const LIST_SCORERS_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/scorers',\n responseType: 'json',\n responseSchema: listScorersResponseSchema,\n summary: 'List all scorers',\n description: 'Returns a list of all registered scorers with their configuration and associated agents and workflows',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, requestContext }) => {\n const scorers = await listScorersFromSystem({\n mastra,\n requestContext,\n });\n return scorers;\n },\n});\n\nexport const GET_SCORER_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/scorers/:scorerId',\n responseType: 'json',\n pathParamSchema: scorerIdPathParams,\n responseSchema: scorerEntrySchema.nullable(),\n summary: 'Get scorer by ID',\n description: 'Returns details for a specific scorer including its configuration and associations',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, scorerId, requestContext }) => {\n const scorers = await listScorersFromSystem({\n mastra,\n requestContext,\n });\n\n const scorer = scorers[scorerId];\n\n if (!scorer) {\n return null;\n }\n\n return scorer;\n },\n});\n\nexport const LIST_SCORES_BY_RUN_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/run/:runId',\n responseType: 'json',\n pathParamSchema: runIdSchema,\n queryParamSchema: listScoresByRunIdQuerySchema,\n responseSchema: scoresWithPaginationResponseSchema,\n summary: 'List scores by run ID',\n description: 'Returns all scores for a specific execution run',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, runId, ...params }) => {\n try {\n const { page, perPage } = params;\n const pagination: StoragePagination = {\n page: page ?? 0,\n perPage: perPage ?? 10,\n };\n const scores = await mastra.getStorage()?.getStore('scores');\n const scoreResults = (await scores?.listScoresByRunId?.({\n runId,\n pagination,\n })) || { pagination: { total: 0, page: 0, perPage: 0, hasMore: false }, scores: [] };\n return {\n pagination: scoreResults.pagination,\n scores: scoreResults.scores.map((score: ScoreRowData) => ({ ...score, ...getTraceDetails(score.traceId) })),\n };\n } catch (error) {\n return handleError(error, 'Error getting scores by run id');\n }\n },\n});\n\nexport const LIST_SCORES_BY_SCORER_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/scorer/:scorerId',\n responseType: 'json',\n pathParamSchema: scorerIdPathParams,\n queryParamSchema: listScoresByScorerIdQuerySchema,\n responseSchema: scoresWithPaginationResponseSchema,\n summary: 'List scores by scorer ID',\n description: 'Returns all scores generated by a specific scorer',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, scorerId, ...params }) => {\n try {\n const { page, perPage, entityId, entityType } = params;\n const filters = Object.fromEntries(Object.entries({ entityId, entityType }).filter(([_, v]) => v !== undefined));\n const scores = await mastra.getStorage()?.getStore('scores');\n const scoreResults = (await scores?.listScoresByScorerId?.({\n scorerId,\n pagination: { page: page ?? 0, perPage: perPage ?? 10 },\n ...filters,\n })) || { pagination: { total: 0, page: 0, perPage: 0, hasMore: false }, scores: [] };\n return {\n pagination: scoreResults.pagination,\n scores: scoreResults.scores.map((score: ScoreRowData) => ({ ...score, ...getTraceDetails(score.traceId) })),\n };\n } catch (error) {\n return handleError(error, 'Error getting scores by scorer id');\n }\n },\n});\n\nexport const LIST_SCORES_BY_ENTITY_ID_ROUTE = createRoute({\n method: 'GET',\n path: '/scores/entity/:entityType/:entityId',\n responseType: 'json',\n pathParamSchema: entityPathParams,\n queryParamSchema: listScoresByEntityIdQuerySchema,\n responseSchema: scoresWithPaginationResponseSchema,\n summary: 'List scores by entity ID',\n description: 'Returns all scores for a specific entity (agent or workflow)',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, entityId, entityType, ...params }) => {\n try {\n const { page, perPage } = params;\n let entityIdToUse = entityId;\n\n if (entityType === 'AGENT') {\n const agent = await getAgentFromSystem({ mastra, agentId: entityId });\n entityIdToUse = agent.id;\n } else if (entityType === 'WORKFLOW') {\n const workflow = mastra.getWorkflowById(entityId);\n entityIdToUse = workflow.id;\n }\n\n const pagination: StoragePagination = {\n page: page ?? 0,\n perPage: perPage ?? 10,\n };\n\n const scoresStore = await mastra.getStorage()?.getStore('scores');\n const scoreResults = (await scoresStore?.listScoresByEntityId?.({\n entityId: entityIdToUse,\n entityType,\n pagination,\n })) || { pagination: { total: 0, page: 0, perPage: 0, hasMore: false }, scores: [] };\n\n return {\n pagination: scoreResults.pagination,\n scores: scoreResults.scores.map((score: ScoreRowData) => ({ ...score, ...getTraceDetails(score.traceId) })),\n };\n } catch (error) {\n return handleError(error, 'Error getting scores by entity id');\n }\n },\n});\n\nexport const SAVE_SCORE_ROUTE = createRoute({\n method: 'POST',\n path: '/scores',\n responseType: 'json',\n bodySchema: saveScoreBodySchema,\n responseSchema: saveScoreResponseSchema,\n summary: 'Save score',\n description: 'Saves a new score record to storage',\n tags: ['Scoring'],\n requiresAuth: true,\n handler: async ({ mastra, ...params }) => {\n try {\n const { score } = params as { score: ScoreRowData };\n const scoresStore = await mastra.getStorage()?.getStore('scores');\n const result = await scoresStore?.saveScore?.(score);\n if (!result) {\n throw new HTTPException(500, { message: 'Storage not configured' });\n }\n return result;\n } catch (error) {\n return handleError(error, 'Error saving score');\n }\n },\n});\n","import z from 'zod';\nimport { paginationInfoSchema } from './common';\n\n/**\n * Schema for sampling configuration\n * Using passthrough to allow various sampling config shapes\n */\nconst scoringSamplingConfigSchema = z.object({});\n\n/**\n * Schema for MastraScorer config object\n */\nconst mastraScorerConfigSchema = z.object({\n id: z.string(),\n name: z.string().optional(),\n description: z.string(),\n type: z.unknown().optional(),\n judge: z.unknown().optional(),\n});\n\n/**\n * Schema for MastraScorer\n * Only validates public config property, uses passthrough to allow class instance\n */\nconst mastraScorerSchema = z.object({\n config: mastraScorerConfigSchema,\n});\n\n/**\n * Schema for scorer entry with associations to agents and workflows\n */\nexport const scorerEntrySchema = z.object({\n scorer: mastraScorerSchema,\n sampling: scoringSamplingConfigSchema.optional(),\n agentIds: z.array(z.string()),\n agentNames: z.array(z.string()),\n workflowIds: z.array(z.string()),\n isRegistered: z.boolean(),\n});\n\n/**\n * Response schema for list scorers endpoint\n * Returns a record of scorer ID to scorer entry with associations\n */\nexport const listScorersResponseSchema = z.record(z.string(), scorerEntrySchema);\n\n// Path parameter schemas\nexport const scorerIdPathParams = z.object({\n scorerId: z.string().describe('Unique identifier for the scorer'),\n});\n\nexport const entityPathParams = z.object({\n entityType: z.string().describe('Type of the entity (AGENT or WORKFLOW)'),\n entityId: z.string().describe('Unique identifier for the entity'),\n});\n\n// Query parameter schemas\n// HTTP query params must be flat (e.g., ?page=0&perPage=10)\n// Adapters should transform these into nested pagination objects for handlers if needed\n\nexport const listScoresByRunIdQuerySchema = z.object({\n page: z.coerce.number().optional().default(0),\n perPage: z.coerce.number().optional().default(10),\n});\n\nexport const listScoresByScorerIdQuerySchema = z.object({\n page: z.coerce.number().optional().default(0),\n perPage: z.coerce.number().optional().default(10),\n entityId: z.string().optional(),\n entityType: z.string().optional(),\n});\n\nexport const listScoresByEntityIdQuerySchema = z.object({\n page: z.coerce.number().optional().default(0),\n perPage: z.coerce.number().optional().default(10),\n});\n\n// Body schema for saving scores\nexport const saveScoreBodySchema = z.object({\n score: z.unknown(), // ScoreRowData - complex type\n});\n\n// Response schemas\nexport const scoresWithPaginationResponseSchema = z.object({\n pagination: paginationInfoSchema,\n scores: z.array(z.unknown()), // Array of score records\n});\n\nexport const saveScoreResponseSchema = z.object({\n score: z.unknown(), // ScoreRowData\n});\n"]}