@dexto/core 1.4.0 → 1.5.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 (514) hide show
  1. package/README.md +36 -0
  2. package/dist/agent/DextoAgent.cjs +22 -3
  3. package/dist/agent/DextoAgent.d.ts +19 -2
  4. package/dist/agent/DextoAgent.d.ts.map +1 -1
  5. package/dist/agent/DextoAgent.js +23 -4
  6. package/dist/agent/index.cjs +4 -1
  7. package/dist/agent/index.d.ts +1 -1
  8. package/dist/agent/index.d.ts.map +1 -1
  9. package/dist/agent/index.js +5 -1
  10. package/dist/agent/schemas.cjs +90 -71
  11. package/dist/agent/schemas.d.ts +5959 -96
  12. package/dist/agent/schemas.d.ts.map +1 -1
  13. package/dist/agent/schemas.js +87 -66
  14. package/dist/approval/manager.cjs +165 -1
  15. package/dist/approval/manager.d.ts +91 -2
  16. package/dist/approval/manager.d.ts.map +1 -1
  17. package/dist/approval/manager.js +155 -1
  18. package/dist/approval/schemas.cjs +39 -3
  19. package/dist/approval/schemas.d.ts +238 -1
  20. package/dist/approval/schemas.d.ts.map +1 -1
  21. package/dist/approval/schemas.js +35 -3
  22. package/dist/approval/types.cjs +1 -0
  23. package/dist/approval/types.d.ts +26 -1
  24. package/dist/approval/types.d.ts.map +1 -1
  25. package/dist/approval/types.js +1 -0
  26. package/dist/context/compaction/factory.cjs +57 -0
  27. package/dist/context/compaction/factory.d.ts +17 -0
  28. package/dist/context/compaction/factory.d.ts.map +1 -0
  29. package/dist/context/compaction/factory.js +34 -0
  30. package/dist/context/compaction/index.cjs +49 -0
  31. package/dist/context/compaction/index.d.ts +11 -0
  32. package/dist/context/compaction/index.d.ts.map +1 -0
  33. package/dist/context/compaction/index.js +19 -0
  34. package/dist/context/{compression → compaction}/overflow.cjs +3 -3
  35. package/dist/context/{compression → compaction}/overflow.d.ts +4 -4
  36. package/dist/context/compaction/overflow.d.ts.map +1 -0
  37. package/dist/context/{compression → compaction}/overflow.js +2 -2
  38. package/dist/context/compaction/provider.cjs +16 -0
  39. package/dist/context/compaction/provider.d.ts +48 -0
  40. package/dist/context/compaction/provider.d.ts.map +1 -0
  41. package/dist/context/compaction/providers/noop-provider.cjs +48 -0
  42. package/dist/context/compaction/providers/noop-provider.d.ts +24 -0
  43. package/dist/context/compaction/providers/noop-provider.d.ts.map +1 -0
  44. package/dist/context/compaction/providers/noop-provider.js +24 -0
  45. package/dist/context/compaction/providers/reactive-overflow-provider.cjs +61 -0
  46. package/dist/context/compaction/providers/reactive-overflow-provider.d.ts +36 -0
  47. package/dist/context/compaction/providers/reactive-overflow-provider.d.ts.map +1 -0
  48. package/dist/context/compaction/providers/reactive-overflow-provider.js +37 -0
  49. package/dist/context/compaction/registry.cjs +39 -0
  50. package/dist/context/compaction/registry.d.ts +19 -0
  51. package/dist/context/compaction/registry.d.ts.map +1 -0
  52. package/dist/context/compaction/registry.js +16 -0
  53. package/dist/context/compaction/schemas.cjs +38 -0
  54. package/dist/context/compaction/schemas.d.ts +24 -0
  55. package/dist/context/compaction/schemas.d.ts.map +1 -0
  56. package/dist/context/compaction/schemas.js +14 -0
  57. package/dist/context/compaction/strategies/noop.cjs +36 -0
  58. package/dist/context/compaction/strategies/noop.d.ts +18 -0
  59. package/dist/context/compaction/strategies/noop.d.ts.map +1 -0
  60. package/dist/context/compaction/strategies/noop.js +13 -0
  61. package/dist/context/{compression → compaction/strategies}/reactive-overflow.cjs +3 -3
  62. package/dist/context/{compression → compaction/strategies}/reactive-overflow.d.ts +6 -6
  63. package/dist/context/compaction/strategies/reactive-overflow.d.ts.map +1 -0
  64. package/dist/context/{compression → compaction/strategies}/reactive-overflow.js +4 -4
  65. package/dist/context/{compression → compaction}/types.d.ts +4 -4
  66. package/dist/context/compaction/types.d.ts.map +1 -0
  67. package/dist/context/compaction/types.js +0 -0
  68. package/dist/context/error-codes.cjs +4 -0
  69. package/dist/context/error-codes.d.ts +4 -0
  70. package/dist/context/error-codes.d.ts.map +1 -1
  71. package/dist/context/error-codes.js +4 -0
  72. package/dist/context/errors.cjs +40 -0
  73. package/dist/context/errors.d.ts +14 -0
  74. package/dist/context/errors.d.ts.map +1 -1
  75. package/dist/context/errors.js +40 -0
  76. package/dist/context/index.cjs +3 -1
  77. package/dist/context/index.d.ts +1 -0
  78. package/dist/context/index.d.ts.map +1 -1
  79. package/dist/context/index.js +1 -0
  80. package/dist/context/types.d.ts +6 -0
  81. package/dist/context/types.d.ts.map +1 -1
  82. package/dist/context/utils.cjs +27 -7
  83. package/dist/context/utils.d.ts.map +1 -1
  84. package/dist/context/utils.js +27 -7
  85. package/dist/errors/result-bridge.cjs +2 -3
  86. package/dist/errors/result-bridge.d.ts.map +1 -1
  87. package/dist/errors/result-bridge.js +2 -3
  88. package/dist/events/index.cjs +6 -3
  89. package/dist/events/index.d.ts +35 -19
  90. package/dist/events/index.d.ts.map +1 -1
  91. package/dist/events/index.js +5 -3
  92. package/dist/filesystem/filesystem-service.cjs +39 -0
  93. package/dist/filesystem/filesystem-service.d.ts +32 -0
  94. package/dist/filesystem/filesystem-service.d.ts.map +1 -1
  95. package/dist/filesystem/filesystem-service.js +39 -0
  96. package/dist/filesystem/index.d.ts +1 -1
  97. package/dist/filesystem/index.d.ts.map +1 -1
  98. package/dist/filesystem/path-validator.cjs +69 -1
  99. package/dist/filesystem/path-validator.d.ts +43 -2
  100. package/dist/filesystem/path-validator.d.ts.map +1 -1
  101. package/dist/filesystem/path-validator.js +69 -1
  102. package/dist/image/define-image.cjs +146 -0
  103. package/dist/image/define-image.d.ts +71 -0
  104. package/dist/image/define-image.d.ts.map +1 -0
  105. package/dist/image/define-image.js +121 -0
  106. package/dist/image/index.cjs +32 -0
  107. package/dist/image/index.d.ts +53 -0
  108. package/dist/image/index.d.ts.map +1 -0
  109. package/dist/image/index.js +7 -0
  110. package/dist/image/types.cjs +16 -0
  111. package/dist/image/types.d.ts +231 -0
  112. package/dist/image/types.d.ts.map +1 -0
  113. package/dist/image/types.js +0 -0
  114. package/dist/index.cjs +5 -1
  115. package/dist/index.d.ts +2 -0
  116. package/dist/index.d.ts.map +1 -1
  117. package/dist/index.js +2 -0
  118. package/dist/llm/error-codes.cjs +1 -0
  119. package/dist/llm/error-codes.d.ts +1 -0
  120. package/dist/llm/error-codes.d.ts.map +1 -1
  121. package/dist/llm/error-codes.js +1 -0
  122. package/dist/llm/errors.cjs +24 -0
  123. package/dist/llm/errors.d.ts +19 -6
  124. package/dist/llm/errors.d.ts.map +1 -1
  125. package/dist/llm/errors.js +24 -0
  126. package/dist/llm/executor/provider-options.cjs +87 -0
  127. package/dist/llm/executor/provider-options.d.ts +49 -0
  128. package/dist/llm/executor/provider-options.d.ts.map +1 -0
  129. package/dist/llm/executor/provider-options.js +63 -0
  130. package/dist/llm/executor/stream-processor.cjs +22 -11
  131. package/dist/llm/executor/stream-processor.d.ts.map +1 -1
  132. package/dist/llm/executor/stream-processor.js +22 -11
  133. package/dist/llm/executor/turn-executor.cjs +60 -23
  134. package/dist/llm/executor/turn-executor.d.ts +7 -5
  135. package/dist/llm/executor/turn-executor.d.ts.map +1 -1
  136. package/dist/llm/executor/turn-executor.js +60 -23
  137. package/dist/llm/formatters/vercel.cjs +15 -3
  138. package/dist/llm/formatters/vercel.d.ts.map +1 -1
  139. package/dist/llm/formatters/vercel.js +15 -3
  140. package/dist/llm/index.cjs +18 -1
  141. package/dist/llm/index.d.ts +2 -0
  142. package/dist/llm/index.d.ts.map +1 -1
  143. package/dist/llm/index.js +14 -0
  144. package/dist/llm/providers/local/ai-sdk-adapter.cjs +308 -0
  145. package/dist/llm/providers/local/ai-sdk-adapter.d.ts +29 -0
  146. package/dist/llm/providers/local/ai-sdk-adapter.d.ts.map +1 -0
  147. package/dist/llm/providers/local/ai-sdk-adapter.js +278 -0
  148. package/dist/llm/providers/local/downloader.cjs +291 -0
  149. package/dist/llm/providers/local/downloader.d.ts +82 -0
  150. package/dist/llm/providers/local/downloader.d.ts.map +1 -0
  151. package/dist/llm/providers/local/downloader.js +251 -0
  152. package/dist/llm/providers/local/error-codes.cjs +57 -0
  153. package/dist/llm/providers/local/error-codes.d.ts +66 -0
  154. package/dist/llm/providers/local/error-codes.d.ts.map +1 -0
  155. package/dist/llm/providers/local/error-codes.js +34 -0
  156. package/dist/llm/providers/local/errors.cjs +240 -0
  157. package/dist/llm/providers/local/errors.d.ts +31 -0
  158. package/dist/llm/providers/local/errors.d.ts.map +1 -0
  159. package/dist/llm/providers/local/errors.js +217 -0
  160. package/dist/llm/providers/local/gpu-detector.cjs +214 -0
  161. package/dist/llm/providers/local/gpu-detector.d.ts +28 -0
  162. package/dist/llm/providers/local/gpu-detector.d.ts.map +1 -0
  163. package/dist/llm/providers/local/gpu-detector.js +178 -0
  164. package/dist/llm/providers/local/index.cjs +147 -0
  165. package/dist/llm/providers/local/index.d.ts +21 -0
  166. package/dist/llm/providers/local/index.d.ts.map +1 -0
  167. package/dist/llm/providers/local/index.js +126 -0
  168. package/dist/llm/providers/local/node-llama-provider.cjs +216 -0
  169. package/dist/llm/providers/local/node-llama-provider.d.ts +90 -0
  170. package/dist/llm/providers/local/node-llama-provider.d.ts.map +1 -0
  171. package/dist/llm/providers/local/node-llama-provider.js +176 -0
  172. package/dist/llm/providers/local/ollama-provider.cjs +230 -0
  173. package/dist/llm/providers/local/ollama-provider.d.ts +70 -0
  174. package/dist/llm/providers/local/ollama-provider.d.ts.map +1 -0
  175. package/dist/llm/providers/local/ollama-provider.js +198 -0
  176. package/dist/llm/providers/local/registry.cjs +343 -0
  177. package/dist/llm/providers/local/registry.d.ts +51 -0
  178. package/dist/llm/providers/local/registry.d.ts.map +1 -0
  179. package/dist/llm/providers/local/registry.js +312 -0
  180. package/dist/llm/providers/local/schemas.cjs +169 -0
  181. package/dist/llm/providers/local/schemas.d.ts +395 -0
  182. package/dist/llm/providers/local/schemas.d.ts.map +1 -0
  183. package/dist/llm/providers/local/schemas.js +133 -0
  184. package/dist/llm/providers/local/types.cjs +16 -0
  185. package/dist/llm/providers/local/types.d.ts +219 -0
  186. package/dist/llm/providers/local/types.d.ts.map +1 -0
  187. package/dist/llm/providers/local/types.js +0 -0
  188. package/dist/llm/providers/openrouter-model-registry.cjs +350 -0
  189. package/dist/llm/providers/openrouter-model-registry.d.ts +120 -0
  190. package/dist/llm/providers/openrouter-model-registry.d.ts.map +1 -0
  191. package/dist/llm/providers/openrouter-model-registry.js +309 -0
  192. package/dist/llm/registry.cjs +604 -9
  193. package/dist/llm/registry.d.ts +35 -0
  194. package/dist/llm/registry.d.ts.map +1 -1
  195. package/dist/llm/registry.js +600 -9
  196. package/dist/llm/resolver.cjs +63 -5
  197. package/dist/llm/resolver.d.ts +3 -3
  198. package/dist/llm/resolver.d.ts.map +1 -1
  199. package/dist/llm/resolver.js +69 -6
  200. package/dist/llm/schemas.cjs +107 -81
  201. package/dist/llm/schemas.d.ts +181 -22
  202. package/dist/llm/schemas.d.ts.map +1 -1
  203. package/dist/llm/schemas.js +107 -81
  204. package/dist/llm/services/factory.cjs +87 -13
  205. package/dist/llm/services/factory.d.ts +4 -1
  206. package/dist/llm/services/factory.d.ts.map +1 -1
  207. package/dist/llm/services/factory.js +85 -12
  208. package/dist/llm/services/test-utils.integration.cjs +22 -2
  209. package/dist/llm/services/test-utils.integration.d.ts +7 -1
  210. package/dist/llm/services/test-utils.integration.d.ts.map +1 -1
  211. package/dist/llm/services/test-utils.integration.js +26 -3
  212. package/dist/llm/services/vercel.cjs +8 -3
  213. package/dist/llm/services/vercel.d.ts +3 -2
  214. package/dist/llm/services/vercel.d.ts.map +1 -1
  215. package/dist/llm/services/vercel.js +8 -3
  216. package/dist/llm/types.cjs +11 -1
  217. package/dist/llm/types.d.ts +1 -1
  218. package/dist/llm/types.d.ts.map +1 -1
  219. package/dist/llm/types.js +11 -1
  220. package/dist/logger/logger.cjs +7 -3
  221. package/dist/logger/logger.d.ts.map +1 -1
  222. package/dist/logger/logger.js +7 -3
  223. package/dist/mcp/manager.cjs +8 -0
  224. package/dist/mcp/manager.d.ts +17 -0
  225. package/dist/mcp/manager.d.ts.map +1 -1
  226. package/dist/mcp/manager.js +8 -0
  227. package/dist/mcp/mcp-client.cjs +0 -3
  228. package/dist/mcp/mcp-client.d.ts.map +1 -1
  229. package/dist/mcp/mcp-client.js +0 -3
  230. package/dist/memory/schemas.d.ts +3 -3
  231. package/dist/plugins/error-codes.cjs +3 -0
  232. package/dist/plugins/error-codes.d.ts +7 -1
  233. package/dist/plugins/error-codes.d.ts.map +1 -1
  234. package/dist/plugins/error-codes.js +3 -0
  235. package/dist/plugins/index.cjs +7 -0
  236. package/dist/plugins/index.d.ts +4 -2
  237. package/dist/plugins/index.d.ts.map +1 -1
  238. package/dist/plugins/index.js +6 -1
  239. package/dist/plugins/manager.cjs +92 -7
  240. package/dist/plugins/manager.d.ts +10 -3
  241. package/dist/plugins/manager.d.ts.map +1 -1
  242. package/dist/plugins/manager.js +92 -7
  243. package/dist/plugins/registry.cjs +63 -0
  244. package/dist/plugins/registry.d.ts +101 -0
  245. package/dist/plugins/registry.d.ts.map +1 -0
  246. package/dist/plugins/registry.js +39 -0
  247. package/dist/plugins/schemas.cjs +17 -5
  248. package/dist/plugins/schemas.d.ts +62 -5
  249. package/dist/plugins/schemas.d.ts.map +1 -1
  250. package/dist/plugins/schemas.js +15 -4
  251. package/dist/providers/base-registry.cjs +147 -0
  252. package/dist/providers/base-registry.d.ts +147 -0
  253. package/dist/providers/base-registry.d.ts.map +1 -0
  254. package/dist/providers/base-registry.js +123 -0
  255. package/dist/providers/discovery.cjs +109 -0
  256. package/dist/providers/discovery.d.ts +96 -0
  257. package/dist/providers/discovery.d.ts.map +1 -0
  258. package/dist/providers/discovery.js +84 -0
  259. package/dist/providers/index.cjs +24 -0
  260. package/dist/providers/index.d.ts +32 -0
  261. package/dist/providers/index.d.ts.map +1 -0
  262. package/dist/providers/index.js +2 -0
  263. package/dist/resources/reference-parser.cjs +3 -3
  264. package/dist/resources/reference-parser.d.ts.map +1 -1
  265. package/dist/resources/reference-parser.js +3 -3
  266. package/dist/session/chat-session.cjs +20 -3
  267. package/dist/session/chat-session.d.ts.map +1 -1
  268. package/dist/session/chat-session.js +21 -4
  269. package/dist/session/history/database.cjs +49 -15
  270. package/dist/session/history/database.d.ts.map +1 -1
  271. package/dist/session/history/database.js +49 -15
  272. package/dist/session/session-manager.cjs +2 -1
  273. package/dist/session/session-manager.d.ts.map +1 -1
  274. package/dist/session/session-manager.js +2 -1
  275. package/dist/storage/blob/factory.cjs +8 -11
  276. package/dist/storage/blob/factory.d.ts +32 -6
  277. package/dist/storage/blob/factory.d.ts.map +1 -1
  278. package/dist/storage/blob/factory.js +8 -11
  279. package/dist/storage/blob/index.cjs +56 -0
  280. package/dist/storage/blob/index.d.ts +45 -0
  281. package/dist/storage/blob/index.d.ts.map +1 -0
  282. package/dist/storage/blob/index.js +30 -0
  283. package/dist/storage/blob/provider.cjs +16 -0
  284. package/dist/storage/blob/provider.d.ts +50 -0
  285. package/dist/storage/blob/provider.d.ts.map +1 -0
  286. package/dist/storage/blob/provider.js +0 -0
  287. package/dist/storage/blob/providers/index.cjs +31 -0
  288. package/dist/storage/blob/providers/index.d.ts +8 -0
  289. package/dist/storage/blob/providers/index.d.ts.map +1 -0
  290. package/dist/storage/blob/providers/index.js +7 -0
  291. package/dist/storage/blob/providers/local.cjs +39 -0
  292. package/dist/storage/blob/providers/local.d.ts +17 -0
  293. package/dist/storage/blob/providers/local.d.ts.map +1 -0
  294. package/dist/storage/blob/providers/local.js +16 -0
  295. package/dist/storage/blob/providers/memory.cjs +39 -0
  296. package/dist/storage/blob/providers/memory.d.ts +17 -0
  297. package/dist/storage/blob/providers/memory.d.ts.map +1 -0
  298. package/dist/storage/blob/providers/memory.js +16 -0
  299. package/dist/storage/blob/registry.cjs +50 -0
  300. package/dist/storage/blob/registry.d.ts +42 -0
  301. package/dist/storage/blob/registry.d.ts.map +1 -0
  302. package/dist/storage/blob/registry.js +26 -0
  303. package/dist/storage/blob/schemas.cjs +9 -12
  304. package/dist/storage/blob/schemas.d.ts +39 -34
  305. package/dist/storage/blob/schemas.d.ts.map +1 -1
  306. package/dist/storage/blob/schemas.js +6 -11
  307. package/dist/storage/cache/factory.cjs +8 -36
  308. package/dist/storage/cache/factory.d.ts +32 -7
  309. package/dist/storage/cache/factory.d.ts.map +1 -1
  310. package/dist/storage/cache/factory.js +8 -26
  311. package/dist/storage/cache/index.cjs +53 -0
  312. package/dist/storage/cache/index.d.ts +44 -0
  313. package/dist/storage/cache/index.d.ts.map +1 -0
  314. package/dist/storage/cache/index.js +28 -0
  315. package/dist/storage/cache/provider.cjs +16 -0
  316. package/dist/storage/cache/provider.d.ts +56 -0
  317. package/dist/storage/cache/provider.d.ts.map +1 -0
  318. package/dist/storage/cache/provider.js +0 -0
  319. package/dist/storage/cache/providers/index.cjs +31 -0
  320. package/dist/storage/cache/providers/index.d.ts +8 -0
  321. package/dist/storage/cache/providers/index.d.ts.map +1 -0
  322. package/dist/storage/cache/providers/index.js +7 -0
  323. package/dist/storage/cache/providers/memory.cjs +40 -0
  324. package/dist/storage/cache/providers/memory.d.ts +17 -0
  325. package/dist/storage/cache/providers/memory.d.ts.map +1 -0
  326. package/dist/storage/cache/providers/memory.js +17 -0
  327. package/dist/storage/cache/providers/redis.cjs +66 -0
  328. package/dist/storage/cache/providers/redis.d.ts +20 -0
  329. package/dist/storage/cache/providers/redis.d.ts.map +1 -0
  330. package/dist/storage/cache/providers/redis.js +33 -0
  331. package/dist/storage/cache/registry.cjs +50 -0
  332. package/dist/storage/cache/registry.d.ts +42 -0
  333. package/dist/storage/cache/registry.d.ts.map +1 -0
  334. package/dist/storage/cache/registry.js +26 -0
  335. package/dist/storage/cache/schemas.cjs +6 -2
  336. package/dist/storage/cache/schemas.d.ts +2 -3
  337. package/dist/storage/cache/schemas.d.ts.map +1 -1
  338. package/dist/storage/cache/schemas.js +3 -1
  339. package/dist/storage/database/factory.cjs +8 -47
  340. package/dist/storage/database/factory.d.ts +34 -8
  341. package/dist/storage/database/factory.d.ts.map +1 -1
  342. package/dist/storage/database/factory.js +8 -37
  343. package/dist/storage/database/index.cjs +58 -0
  344. package/dist/storage/database/index.d.ts +45 -0
  345. package/dist/storage/database/index.d.ts.map +1 -0
  346. package/dist/storage/database/index.js +37 -0
  347. package/dist/storage/database/postgres-store.cjs +174 -78
  348. package/dist/storage/database/postgres-store.d.ts +19 -0
  349. package/dist/storage/database/postgres-store.d.ts.map +1 -1
  350. package/dist/storage/database/postgres-store.js +174 -78
  351. package/dist/storage/database/provider.cjs +16 -0
  352. package/dist/storage/database/provider.d.ts +56 -0
  353. package/dist/storage/database/provider.d.ts.map +1 -0
  354. package/dist/storage/database/provider.js +0 -0
  355. package/dist/storage/database/providers/index.cjs +34 -0
  356. package/dist/storage/database/providers/index.d.ts +9 -0
  357. package/dist/storage/database/providers/index.d.ts.map +1 -0
  358. package/dist/storage/database/providers/index.js +9 -0
  359. package/dist/storage/database/providers/memory.cjs +40 -0
  360. package/dist/storage/database/providers/memory.d.ts +16 -0
  361. package/dist/storage/database/providers/memory.d.ts.map +1 -0
  362. package/dist/storage/database/providers/memory.js +17 -0
  363. package/dist/storage/database/providers/postgres.cjs +62 -0
  364. package/dist/storage/database/providers/postgres.d.ts +19 -0
  365. package/dist/storage/database/providers/postgres.d.ts.map +1 -0
  366. package/dist/storage/database/providers/postgres.js +29 -0
  367. package/dist/storage/database/providers/sqlite.cjs +66 -0
  368. package/dist/storage/database/providers/sqlite.d.ts +20 -0
  369. package/dist/storage/database/providers/sqlite.d.ts.map +1 -0
  370. package/dist/storage/database/providers/sqlite.js +33 -0
  371. package/dist/storage/database/registry.cjs +50 -0
  372. package/dist/storage/database/registry.d.ts +42 -0
  373. package/dist/storage/database/registry.d.ts.map +1 -0
  374. package/dist/storage/database/registry.js +26 -0
  375. package/dist/storage/database/schemas.cjs +12 -3
  376. package/dist/storage/database/schemas.d.ts +11 -4
  377. package/dist/storage/database/schemas.d.ts.map +1 -1
  378. package/dist/storage/database/schemas.js +8 -2
  379. package/dist/storage/error-codes.cjs +6 -0
  380. package/dist/storage/error-codes.d.ts +7 -1
  381. package/dist/storage/error-codes.d.ts.map +1 -1
  382. package/dist/storage/error-codes.js +6 -0
  383. package/dist/storage/errors.cjs +80 -0
  384. package/dist/storage/errors.d.ts +24 -0
  385. package/dist/storage/errors.d.ts.map +1 -1
  386. package/dist/storage/errors.js +80 -0
  387. package/dist/storage/index.cjs +47 -4
  388. package/dist/storage/index.d.ts +34 -8
  389. package/dist/storage/index.d.ts.map +1 -1
  390. package/dist/storage/index.js +32 -3
  391. package/dist/storage/schemas.cjs +4 -0
  392. package/dist/storage/schemas.d.ts +24 -50
  393. package/dist/storage/schemas.d.ts.map +1 -1
  394. package/dist/storage/schemas.js +5 -1
  395. package/dist/storage/storage-manager.cjs +6 -6
  396. package/dist/storage/storage-manager.d.ts.map +1 -1
  397. package/dist/storage/storage-manager.js +3 -3
  398. package/dist/systemPrompt/in-built-prompts.cjs +7 -6
  399. package/dist/systemPrompt/in-built-prompts.d.ts +2 -2
  400. package/dist/systemPrompt/in-built-prompts.d.ts.map +1 -1
  401. package/dist/systemPrompt/in-built-prompts.js +6 -5
  402. package/dist/systemPrompt/registry.cjs +2 -2
  403. package/dist/systemPrompt/registry.d.ts +1 -1
  404. package/dist/systemPrompt/registry.d.ts.map +1 -1
  405. package/dist/systemPrompt/registry.js +2 -2
  406. package/dist/systemPrompt/schemas.cjs +2 -2
  407. package/dist/systemPrompt/schemas.d.ts +13 -13
  408. package/dist/systemPrompt/schemas.js +2 -2
  409. package/dist/tools/custom-tool-registry.cjs +64 -0
  410. package/dist/tools/custom-tool-registry.d.ts +126 -0
  411. package/dist/tools/custom-tool-registry.d.ts.map +1 -0
  412. package/dist/tools/custom-tool-registry.js +40 -0
  413. package/dist/tools/custom-tool-schema-registry.cjs +164 -0
  414. package/dist/tools/custom-tool-schema-registry.d.ts +86 -0
  415. package/dist/tools/custom-tool-schema-registry.d.ts.map +1 -0
  416. package/dist/tools/custom-tool-schema-registry.js +140 -0
  417. package/dist/tools/error-codes.cjs +3 -0
  418. package/dist/tools/error-codes.d.ts +4 -1
  419. package/dist/tools/error-codes.d.ts.map +1 -1
  420. package/dist/tools/error-codes.js +3 -0
  421. package/dist/tools/errors.cjs +41 -0
  422. package/dist/tools/errors.d.ts +17 -0
  423. package/dist/tools/errors.d.ts.map +1 -1
  424. package/dist/tools/errors.js +41 -0
  425. package/dist/tools/index.cjs +13 -1
  426. package/dist/tools/index.d.ts +4 -0
  427. package/dist/tools/index.d.ts.map +1 -1
  428. package/dist/tools/index.js +11 -1
  429. package/dist/tools/internal-tools/constants.cjs +3 -9
  430. package/dist/tools/internal-tools/constants.d.ts +1 -1
  431. package/dist/tools/internal-tools/constants.d.ts.map +1 -1
  432. package/dist/tools/internal-tools/constants.js +3 -9
  433. package/dist/tools/internal-tools/implementations/get-resource-tool.cjs +113 -0
  434. package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts +30 -0
  435. package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts.map +1 -0
  436. package/dist/tools/internal-tools/implementations/get-resource-tool.js +90 -0
  437. package/dist/tools/internal-tools/implementations/list-resources-tool.cjs +91 -0
  438. package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts +24 -0
  439. package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts.map +1 -0
  440. package/dist/tools/internal-tools/implementations/list-resources-tool.js +68 -0
  441. package/dist/tools/internal-tools/provider.cjs +153 -23
  442. package/dist/tools/internal-tools/provider.d.ts +55 -10
  443. package/dist/tools/internal-tools/provider.d.ts.map +1 -1
  444. package/dist/tools/internal-tools/provider.js +153 -23
  445. package/dist/tools/internal-tools/registry.cjs +18 -43
  446. package/dist/tools/internal-tools/registry.d.ts +4 -4
  447. package/dist/tools/internal-tools/registry.d.ts.map +1 -1
  448. package/dist/tools/internal-tools/registry.js +18 -43
  449. package/dist/tools/schemas.cjs +20 -0
  450. package/dist/tools/schemas.d.ts +43 -1
  451. package/dist/tools/schemas.d.ts.map +1 -1
  452. package/dist/tools/schemas.js +16 -0
  453. package/dist/tools/tool-manager.cjs +140 -13
  454. package/dist/tools/tool-manager.d.ts +22 -3
  455. package/dist/tools/tool-manager.d.ts.map +1 -1
  456. package/dist/tools/tool-manager.js +140 -13
  457. package/dist/tools/types.d.ts +43 -0
  458. package/dist/tools/types.d.ts.map +1 -1
  459. package/dist/utils/api-key-resolver.cjs +19 -1
  460. package/dist/utils/api-key-resolver.d.ts.map +1 -1
  461. package/dist/utils/api-key-resolver.js +19 -1
  462. package/dist/utils/index.cjs +0 -2
  463. package/dist/utils/index.d.ts +0 -1
  464. package/dist/utils/index.d.ts.map +1 -1
  465. package/dist/utils/index.js +0 -1
  466. package/dist/utils/redactor.cjs +18 -3
  467. package/dist/utils/redactor.d.ts +0 -7
  468. package/dist/utils/redactor.d.ts.map +1 -1
  469. package/dist/utils/redactor.js +18 -3
  470. package/dist/utils/service-initializer.cjs +9 -35
  471. package/dist/utils/service-initializer.d.ts.map +1 -1
  472. package/dist/utils/service-initializer.js +9 -35
  473. package/package.json +5 -2
  474. package/dist/context/compression/overflow.d.ts.map +0 -1
  475. package/dist/context/compression/reactive-overflow.d.ts.map +0 -1
  476. package/dist/context/compression/types.d.ts.map +0 -1
  477. package/dist/tools/internal-tools/implementations/bash-exec-tool.cjs +0 -130
  478. package/dist/tools/internal-tools/implementations/bash-exec-tool.d.ts +0 -13
  479. package/dist/tools/internal-tools/implementations/bash-exec-tool.d.ts.map +0 -1
  480. package/dist/tools/internal-tools/implementations/bash-exec-tool.js +0 -97
  481. package/dist/tools/internal-tools/implementations/bash-output-tool.cjs +0 -49
  482. package/dist/tools/internal-tools/implementations/bash-output-tool.d.ts +0 -12
  483. package/dist/tools/internal-tools/implementations/bash-output-tool.d.ts.map +0 -1
  484. package/dist/tools/internal-tools/implementations/bash-output-tool.js +0 -26
  485. package/dist/tools/internal-tools/implementations/edit-file-tool.cjs +0 -127
  486. package/dist/tools/internal-tools/implementations/edit-file-tool.d.ts +0 -12
  487. package/dist/tools/internal-tools/implementations/edit-file-tool.d.ts.map +0 -1
  488. package/dist/tools/internal-tools/implementations/edit-file-tool.js +0 -104
  489. package/dist/tools/internal-tools/implementations/glob-files-tool.cjs +0 -70
  490. package/dist/tools/internal-tools/implementations/glob-files-tool.d.ts +0 -12
  491. package/dist/tools/internal-tools/implementations/glob-files-tool.d.ts.map +0 -1
  492. package/dist/tools/internal-tools/implementations/glob-files-tool.js +0 -47
  493. package/dist/tools/internal-tools/implementations/grep-content-tool.cjs +0 -86
  494. package/dist/tools/internal-tools/implementations/grep-content-tool.d.ts +0 -12
  495. package/dist/tools/internal-tools/implementations/grep-content-tool.d.ts.map +0 -1
  496. package/dist/tools/internal-tools/implementations/grep-content-tool.js +0 -63
  497. package/dist/tools/internal-tools/implementations/kill-process-tool.cjs +0 -47
  498. package/dist/tools/internal-tools/implementations/kill-process-tool.d.ts +0 -12
  499. package/dist/tools/internal-tools/implementations/kill-process-tool.d.ts.map +0 -1
  500. package/dist/tools/internal-tools/implementations/kill-process-tool.js +0 -24
  501. package/dist/tools/internal-tools/implementations/read-file-tool.cjs +0 -63
  502. package/dist/tools/internal-tools/implementations/read-file-tool.d.ts +0 -12
  503. package/dist/tools/internal-tools/implementations/read-file-tool.d.ts.map +0 -1
  504. package/dist/tools/internal-tools/implementations/read-file-tool.js +0 -40
  505. package/dist/tools/internal-tools/implementations/write-file-tool.cjs +0 -124
  506. package/dist/tools/internal-tools/implementations/write-file-tool.d.ts +0 -12
  507. package/dist/tools/internal-tools/implementations/write-file-tool.d.ts.map +0 -1
  508. package/dist/tools/internal-tools/implementations/write-file-tool.js +0 -103
  509. package/dist/utils/env-file.cjs +0 -118
  510. package/dist/utils/env-file.d.ts +0 -5
  511. package/dist/utils/env-file.d.ts.map +0 -1
  512. package/dist/utils/env-file.js +0 -85
  513. /package/dist/context/{compression/types.js → compaction/provider.js} +0 -0
  514. /package/dist/context/{compression → compaction}/types.cjs +0 -0
@@ -2,31 +2,59 @@ import "../../chunk-PTJYTZNU.js";
2
2
  import { ToolError } from "../errors.js";
3
3
  import { convertZodSchemaToJsonSchema } from "../../utils/schema.js";
4
4
  import { getInternalToolInfo } from "./registry.js";
5
+ import { customToolRegistry } from "../custom-tool-registry.js";
6
+ import { DextoRuntimeError } from "../../errors/DextoRuntimeError.js";
7
+ import { ToolErrorCode } from "../error-codes.js";
5
8
  class InternalToolsProvider {
6
9
  services;
7
- tools = /* @__PURE__ */ new Map();
8
- // Store original InternalTool
10
+ internalTools = /* @__PURE__ */ new Map();
11
+ // Built-in internal tools
12
+ customTools = /* @__PURE__ */ new Map();
13
+ // Custom tool provider tools
9
14
  config;
15
+ customToolConfigs;
10
16
  logger;
11
- constructor(services, config = [], logger) {
17
+ agent;
18
+ // Set after construction to avoid circular dependency
19
+ constructor(services, config = [], customToolConfigs = [], logger) {
12
20
  this.services = services;
13
21
  this.config = config;
22
+ this.customToolConfigs = customToolConfigs;
14
23
  this.logger = logger;
15
- this.logger.debug("InternalToolsProvider initialized with config:", { config });
24
+ this.logger.debug("InternalToolsProvider initialized with config:", {
25
+ config,
26
+ customToolConfigs
27
+ });
28
+ }
29
+ /**
30
+ * Set agent reference after construction (avoids circular dependency)
31
+ * Must be called before initialize() if custom tools need agent access
32
+ */
33
+ setAgent(agent) {
34
+ this.agent = agent;
16
35
  }
17
36
  /**
18
37
  * Initialize the internal tools provider by registering all available internal tools
38
+ * and custom tools from the registry
19
39
  */
20
40
  async initialize() {
21
41
  this.logger.info("Initializing InternalToolsProvider...");
22
42
  try {
23
- if (this.config.length === 0) {
43
+ if (this.config.length > 0) {
44
+ this.registerInternalTools();
45
+ } else {
24
46
  this.logger.info("No internal tools enabled by configuration");
25
- return;
26
47
  }
27
- this.registerInternalTools();
28
- const toolCount = this.tools.size;
29
- this.logger.info(`InternalToolsProvider initialized with ${toolCount} internal tools`);
48
+ if (this.customToolConfigs.length > 0) {
49
+ this.registerCustomTools();
50
+ } else {
51
+ this.logger.debug("No custom tool providers configured");
52
+ }
53
+ const internalCount = this.internalTools.size;
54
+ const customCount = this.customTools.size;
55
+ this.logger.info(
56
+ `InternalToolsProvider initialized with ${internalCount + customCount} tools (${internalCount} internal, ${customCount} custom)`
57
+ );
30
58
  } catch (error) {
31
59
  this.logger.error(
32
60
  `Failed to initialize InternalToolsProvider: ${error instanceof Error ? error.message : String(error)}`
@@ -64,7 +92,7 @@ class InternalToolsProvider {
64
92
  }
65
93
  try {
66
94
  const tool = toolInfo.factory(this.services);
67
- this.tools.set(toolName, tool);
95
+ this.internalTools.set(toolName, tool);
68
96
  this.logger.debug(`Registered ${toolName} internal tool`);
69
97
  } catch (error) {
70
98
  this.logger.error(
@@ -74,27 +102,92 @@ class InternalToolsProvider {
74
102
  }
75
103
  }
76
104
  /**
77
- * Check if a tool exists
105
+ * Register custom tools from the custom tool registry.
106
+ * Tools are stored by their original ID - prefixing is handled by ToolManager.
107
+ */
108
+ registerCustomTools() {
109
+ if (!this.agent) {
110
+ throw ToolError.configInvalid(
111
+ "Agent reference not set. Call setAgent() before initialize() when using custom tools."
112
+ );
113
+ }
114
+ const context = {
115
+ logger: this.logger,
116
+ agent: this.agent,
117
+ services: {
118
+ ...this.services,
119
+ // Include storageManager from agent services for custom tools that need persistence
120
+ storageManager: this.agent.services?.storageManager
121
+ }
122
+ };
123
+ for (const toolConfig of this.customToolConfigs) {
124
+ try {
125
+ const validatedConfig = customToolRegistry.validateConfig(toolConfig);
126
+ const provider = customToolRegistry.get(validatedConfig.type);
127
+ if (!provider) {
128
+ const availableTypes = customToolRegistry.getTypes();
129
+ throw ToolError.unknownCustomToolProvider(validatedConfig.type, availableTypes);
130
+ }
131
+ const tools = provider.create(validatedConfig, context);
132
+ for (const tool of tools) {
133
+ if (this.customTools.has(tool.id)) {
134
+ this.logger.warn(
135
+ `Custom tool '${tool.id}' conflicts with existing custom tool. Skipping.`
136
+ );
137
+ continue;
138
+ }
139
+ this.customTools.set(tool.id, tool);
140
+ this.logger.debug(
141
+ `Registered custom tool: ${tool.id} from provider '${provider.metadata?.displayName || validatedConfig.type}'`
142
+ );
143
+ }
144
+ } catch (error) {
145
+ if (error instanceof DextoRuntimeError && error.code === ToolErrorCode.CUSTOM_TOOL_PROVIDER_UNKNOWN) {
146
+ throw error;
147
+ }
148
+ this.logger.error(
149
+ `Failed to register custom tool provider: ${error instanceof Error ? error.message : String(error)}`
150
+ );
151
+ }
152
+ }
153
+ }
154
+ /**
155
+ * Check if a tool exists (checks both internal and custom tools)
78
156
  */
79
157
  hasTool(toolName) {
80
- return this.tools.has(toolName);
158
+ return this.internalTools.has(toolName) || this.customTools.has(toolName);
159
+ }
160
+ /**
161
+ * Check if an internal tool exists
162
+ */
163
+ hasInternalTool(toolName) {
164
+ return this.internalTools.has(toolName);
165
+ }
166
+ /**
167
+ * Check if a custom tool exists
168
+ */
169
+ hasCustomTool(toolName) {
170
+ return this.customTools.has(toolName);
81
171
  }
82
172
  /**
83
173
  * Get an internal tool by name
84
174
  * Returns undefined if tool doesn't exist
85
175
  */
86
176
  getTool(toolName) {
87
- return this.tools.get(toolName);
177
+ return this.internalTools.get(toolName) || this.customTools.get(toolName);
88
178
  }
89
179
  /**
90
180
  * Execute an internal tool - confirmation is handled by ToolManager
91
181
  */
92
182
  async executeTool(toolName, args, sessionId, abortSignal) {
93
- const tool = this.tools.get(toolName);
183
+ const tool = this.internalTools.get(toolName) || this.customTools.get(toolName);
94
184
  if (!tool) {
95
- this.logger.error(`\u274C No internal tool found: ${toolName}`);
185
+ this.logger.error(`\u274C No tool found: ${toolName}`);
96
186
  this.logger.debug(
97
- `Available internal tools: ${Array.from(this.tools.keys()).join(", ")}`
187
+ `Available internal tools: ${Array.from(this.internalTools.keys()).join(", ")}`
188
+ );
189
+ this.logger.debug(
190
+ `Available custom tools: ${Array.from(this.customTools.keys()).join(", ")}`
98
191
  );
99
192
  throw ToolError.notFound(toolName);
100
193
  }
@@ -123,31 +216,68 @@ class InternalToolsProvider {
123
216
  }
124
217
  }
125
218
  /**
126
- * Get all tools in ToolSet format with on-demand JSON Schema conversion
219
+ * Get internal tools in ToolSet format (excludes custom tools)
220
+ */
221
+ getInternalTools() {
222
+ const toolSet = {};
223
+ for (const [name, tool] of this.internalTools) {
224
+ toolSet[name] = {
225
+ name: tool.id,
226
+ description: tool.description,
227
+ parameters: convertZodSchemaToJsonSchema(tool.inputSchema, this.logger)
228
+ };
229
+ }
230
+ return toolSet;
231
+ }
232
+ /**
233
+ * Get custom tools in ToolSet format (excludes internal tools)
127
234
  */
128
- getAllTools() {
235
+ getCustomTools() {
129
236
  const toolSet = {};
130
- for (const [name, tool] of this.tools) {
237
+ for (const [name, tool] of this.customTools) {
131
238
  toolSet[name] = {
132
239
  name: tool.id,
133
240
  description: tool.description,
134
241
  parameters: convertZodSchemaToJsonSchema(tool.inputSchema, this.logger)
135
- // ← Convert on-demand
136
242
  };
137
243
  }
138
244
  return toolSet;
139
245
  }
140
246
  /**
141
- * Get tool names
247
+ * Get internal tool names
248
+ */
249
+ getInternalToolNames() {
250
+ return Array.from(this.internalTools.keys());
251
+ }
252
+ /**
253
+ * Get custom tool names
254
+ */
255
+ getCustomToolNames() {
256
+ return Array.from(this.customTools.keys());
257
+ }
258
+ /**
259
+ * Get all tool names (internal + custom)
142
260
  */
143
261
  getToolNames() {
144
- return Array.from(this.tools.keys());
262
+ return [...this.internalTools.keys(), ...this.customTools.keys()];
145
263
  }
146
264
  /**
147
265
  * Get tool count
148
266
  */
149
267
  getToolCount() {
150
- return this.tools.size;
268
+ return this.internalTools.size + this.customTools.size;
269
+ }
270
+ /**
271
+ * Get internal tool count
272
+ */
273
+ getInternalToolCount() {
274
+ return this.internalTools.size;
275
+ }
276
+ /**
277
+ * Get custom tool count
278
+ */
279
+ getCustomToolCount() {
280
+ return this.customTools.size;
151
281
  }
152
282
  }
153
283
  export {
@@ -24,60 +24,35 @@ __export(registry_exports, {
24
24
  module.exports = __toCommonJS(registry_exports);
25
25
  var import_search_history_tool = require("./implementations/search-history-tool.js");
26
26
  var import_ask_user_tool = require("./implementations/ask-user-tool.js");
27
- var import_read_file_tool = require("./implementations/read-file-tool.js");
28
- var import_glob_files_tool = require("./implementations/glob-files-tool.js");
29
- var import_grep_content_tool = require("./implementations/grep-content-tool.js");
30
- var import_write_file_tool = require("./implementations/write-file-tool.js");
31
- var import_edit_file_tool = require("./implementations/edit-file-tool.js");
32
- var import_bash_exec_tool = require("./implementations/bash-exec-tool.js");
33
- var import_bash_output_tool = require("./implementations/bash-output-tool.js");
34
- var import_kill_process_tool = require("./implementations/kill-process-tool.js");
35
27
  var import_delegate_to_url_tool = require("./implementations/delegate-to-url-tool.js");
28
+ var import_list_resources_tool = require("./implementations/list-resources-tool.js");
29
+ var import_get_resource_tool = require("./implementations/get-resource-tool.js");
36
30
  const INTERNAL_TOOL_REGISTRY = {
37
31
  search_history: {
38
32
  factory: (services) => (0, import_search_history_tool.createSearchHistoryTool)(services.searchService),
39
- requiredServices: ["searchService"]
33
+ requiredServices: ["searchService"],
34
+ description: "Search through conversation history across sessions"
40
35
  },
41
36
  ask_user: {
42
37
  factory: (services) => (0, import_ask_user_tool.createAskUserTool)(services.approvalManager),
43
38
  requiredServices: ["approvalManager"],
44
- requiredFeatures: ["elicitation"]
45
- },
46
- read_file: {
47
- factory: (services) => (0, import_read_file_tool.createReadFileTool)(services.fileSystemService),
48
- requiredServices: ["fileSystemService"]
49
- },
50
- glob_files: {
51
- factory: (services) => (0, import_glob_files_tool.createGlobFilesTool)(services.fileSystemService),
52
- requiredServices: ["fileSystemService"]
53
- },
54
- grep_content: {
55
- factory: (services) => (0, import_grep_content_tool.createGrepContentTool)(services.fileSystemService),
56
- requiredServices: ["fileSystemService"]
57
- },
58
- write_file: {
59
- factory: (services) => (0, import_write_file_tool.createWriteFileTool)(services.fileSystemService),
60
- requiredServices: ["fileSystemService"]
61
- },
62
- edit_file: {
63
- factory: (services) => (0, import_edit_file_tool.createEditFileTool)(services.fileSystemService),
64
- requiredServices: ["fileSystemService"]
65
- },
66
- bash_exec: {
67
- factory: (services) => (0, import_bash_exec_tool.createBashExecTool)(services.processService),
68
- requiredServices: ["processService"]
69
- },
70
- bash_output: {
71
- factory: (services) => (0, import_bash_output_tool.createBashOutputTool)(services.processService),
72
- requiredServices: ["processService"]
73
- },
74
- kill_process: {
75
- factory: (services) => (0, import_kill_process_tool.createKillProcessTool)(services.processService),
76
- requiredServices: ["processService"]
39
+ requiredFeatures: ["elicitation"],
40
+ description: "Collect structured input from the user through a form interface"
77
41
  },
78
42
  delegate_to_url: {
79
43
  factory: (_services) => (0, import_delegate_to_url_tool.createDelegateToUrlTool)(),
80
- requiredServices: []
44
+ requiredServices: [],
45
+ description: "Delegate tasks to another A2A-compliant agent via URL"
46
+ },
47
+ list_resources: {
48
+ factory: (services) => (0, import_list_resources_tool.createListResourcesTool)(services.resourceManager),
49
+ requiredServices: ["resourceManager"],
50
+ description: "List available resources (images, files, etc.)"
51
+ },
52
+ get_resource: {
53
+ factory: (services) => (0, import_get_resource_tool.createGetResourceTool)(services.resourceManager),
54
+ requiredServices: ["resourceManager"],
55
+ description: "Access a stored resource to get URLs or metadata"
81
56
  }
82
57
  };
83
58
  function getInternalToolInfo(toolName) {
@@ -1,8 +1,7 @@
1
1
  import { InternalTool } from '../types.js';
2
2
  import { SearchService } from '../../search/index.js';
3
3
  import { ApprovalManager } from '../../approval/manager.js';
4
- import { FileSystemService } from '../../filesystem/index.js';
5
- import { ProcessService } from '../../process/index.js';
4
+ import { ResourceManager } from '../../resources/manager.js';
6
5
  import type { KnownInternalTool } from './constants.js';
7
6
  /**
8
7
  * Agent features that tools can depend on.
@@ -30,8 +29,7 @@ export type AgentFeature = 'elicitation';
30
29
  export interface InternalToolsServices {
31
30
  searchService?: SearchService;
32
31
  approvalManager?: ApprovalManager;
33
- fileSystemService?: FileSystemService;
34
- processService?: ProcessService;
32
+ resourceManager?: ResourceManager;
35
33
  }
36
34
  /**
37
35
  * Internal tool factory function type
@@ -44,6 +42,8 @@ export interface InternalToolRegistryEntry {
44
42
  factory: InternalToolFactory;
45
43
  requiredServices: readonly (keyof InternalToolsServices)[];
46
44
  requiredFeatures?: readonly AgentFeature[];
45
+ /** Short description for discovery/UI purposes */
46
+ description: string;
47
47
  }
48
48
  /**
49
49
  * Internal tool registry - Must match names array exactly (TypeScript enforces this)
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/tools/internal-tools/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAYxD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,YAAY,GAAG,aAAa,CAAC;AAEzC;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IAClC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IACtC,cAAc,CAAC,EAAE,cAAc,CAAC;CAKnC;AAED;;GAEG;AACH,KAAK,mBAAmB,GAAG,CAAC,QAAQ,EAAE,qBAAqB,KAAK,YAAY,CAAC;AAE7E;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC,OAAO,EAAE,mBAAmB,CAAC;IAC7B,gBAAgB,EAAE,SAAS,CAAC,MAAM,qBAAqB,CAAC,EAAE,CAAC;IAC3D,gBAAgB,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;CAC9C;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,iBAAiB,EAAE,yBAAyB,CAsDvF,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,yBAAyB,CAE1F"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/tools/internal-tools/registry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,OAAO,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAM7D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAExD;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,MAAM,YAAY,GAAG,aAAa,CAAC;AAEzC;;;GAGG;AACH,MAAM,WAAW,qBAAqB;IAClC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,eAAe,CAAC,EAAE,eAAe,CAAC;CACrC;AAED;;GAEG;AACH,KAAK,mBAAmB,GAAG,CAAC,QAAQ,EAAE,qBAAqB,KAAK,YAAY,CAAC;AAE7E;;GAEG;AACH,MAAM,WAAW,yBAAyB;IACtC,OAAO,EAAE,mBAAmB,CAAC;IAC7B,gBAAgB,EAAE,SAAS,CAAC,MAAM,qBAAqB,CAAC,EAAE,CAAC;IAC3D,gBAAgB,CAAC,EAAE,SAAS,YAAY,EAAE,CAAC;IAC3C,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAC;CACvB;AAED;;GAEG;AACH,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,iBAAiB,EAAE,yBAAyB,CA8BvF,CAAC;AAEF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,yBAAyB,CAE1F"}
@@ -1,60 +1,35 @@
1
1
  import "../../chunk-PTJYTZNU.js";
2
2
  import { createSearchHistoryTool } from "./implementations/search-history-tool.js";
3
3
  import { createAskUserTool } from "./implementations/ask-user-tool.js";
4
- import { createReadFileTool } from "./implementations/read-file-tool.js";
5
- import { createGlobFilesTool } from "./implementations/glob-files-tool.js";
6
- import { createGrepContentTool } from "./implementations/grep-content-tool.js";
7
- import { createWriteFileTool } from "./implementations/write-file-tool.js";
8
- import { createEditFileTool } from "./implementations/edit-file-tool.js";
9
- import { createBashExecTool } from "./implementations/bash-exec-tool.js";
10
- import { createBashOutputTool } from "./implementations/bash-output-tool.js";
11
- import { createKillProcessTool } from "./implementations/kill-process-tool.js";
12
4
  import { createDelegateToUrlTool } from "./implementations/delegate-to-url-tool.js";
5
+ import { createListResourcesTool } from "./implementations/list-resources-tool.js";
6
+ import { createGetResourceTool } from "./implementations/get-resource-tool.js";
13
7
  const INTERNAL_TOOL_REGISTRY = {
14
8
  search_history: {
15
9
  factory: (services) => createSearchHistoryTool(services.searchService),
16
- requiredServices: ["searchService"]
10
+ requiredServices: ["searchService"],
11
+ description: "Search through conversation history across sessions"
17
12
  },
18
13
  ask_user: {
19
14
  factory: (services) => createAskUserTool(services.approvalManager),
20
15
  requiredServices: ["approvalManager"],
21
- requiredFeatures: ["elicitation"]
22
- },
23
- read_file: {
24
- factory: (services) => createReadFileTool(services.fileSystemService),
25
- requiredServices: ["fileSystemService"]
26
- },
27
- glob_files: {
28
- factory: (services) => createGlobFilesTool(services.fileSystemService),
29
- requiredServices: ["fileSystemService"]
30
- },
31
- grep_content: {
32
- factory: (services) => createGrepContentTool(services.fileSystemService),
33
- requiredServices: ["fileSystemService"]
34
- },
35
- write_file: {
36
- factory: (services) => createWriteFileTool(services.fileSystemService),
37
- requiredServices: ["fileSystemService"]
38
- },
39
- edit_file: {
40
- factory: (services) => createEditFileTool(services.fileSystemService),
41
- requiredServices: ["fileSystemService"]
42
- },
43
- bash_exec: {
44
- factory: (services) => createBashExecTool(services.processService),
45
- requiredServices: ["processService"]
46
- },
47
- bash_output: {
48
- factory: (services) => createBashOutputTool(services.processService),
49
- requiredServices: ["processService"]
50
- },
51
- kill_process: {
52
- factory: (services) => createKillProcessTool(services.processService),
53
- requiredServices: ["processService"]
16
+ requiredFeatures: ["elicitation"],
17
+ description: "Collect structured input from the user through a form interface"
54
18
  },
55
19
  delegate_to_url: {
56
20
  factory: (_services) => createDelegateToUrlTool(),
57
- requiredServices: []
21
+ requiredServices: [],
22
+ description: "Delegate tasks to another A2A-compliant agent via URL"
23
+ },
24
+ list_resources: {
25
+ factory: (services) => createListResourcesTool(services.resourceManager),
26
+ requiredServices: ["resourceManager"],
27
+ description: "List available resources (images, files, etc.)"
28
+ },
29
+ get_resource: {
30
+ factory: (services) => createGetResourceTool(services.resourceManager),
31
+ requiredServices: ["resourceManager"],
32
+ description: "Access a stored resource to get URLs or metadata"
58
33
  }
59
34
  };
60
35
  function getInternalToolInfo(toolName) {
@@ -19,6 +19,10 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
19
19
  var schemas_exports = {};
20
20
  __export(schemas_exports, {
21
21
  ALLOWED_TOOLS_STORAGE_TYPES: () => ALLOWED_TOOLS_STORAGE_TYPES,
22
+ CustomToolConfigSchema: () => CustomToolConfigSchema,
23
+ CustomToolConfigSchemaForOpenAPI: () => CustomToolConfigSchemaForOpenAPI,
24
+ CustomToolsSchema: () => CustomToolsSchema,
25
+ CustomToolsSchemaForOpenAPI: () => CustomToolsSchemaForOpenAPI,
22
26
  DEFAULT_ALLOWED_TOOLS_STORAGE: () => DEFAULT_ALLOWED_TOOLS_STORAGE,
23
27
  DEFAULT_TOOL_CONFIRMATION_MODE: () => DEFAULT_TOOL_CONFIRMATION_MODE,
24
28
  ElicitationConfigSchema: () => ElicitationConfigSchema,
@@ -32,6 +36,7 @@ __export(schemas_exports, {
32
36
  module.exports = __toCommonJS(schemas_exports);
33
37
  var import_zod = require("zod");
34
38
  var import_constants = require("./internal-tools/constants.js");
39
+ var import_custom_tool_schema_registry = require("./custom-tool-schema-registry.js");
35
40
  const TOOL_CONFIRMATION_MODES = ["manual", "auto-approve", "auto-deny"];
36
41
  const ALLOWED_TOOLS_STORAGE_TYPES = ["memory", "storage"];
37
42
  const DEFAULT_TOOL_CONFIRMATION_MODE = "auto-approve";
@@ -39,6 +44,17 @@ const DEFAULT_ALLOWED_TOOLS_STORAGE = "storage";
39
44
  const InternalToolsSchema = import_zod.z.array(import_zod.z.enum(import_constants.INTERNAL_TOOL_NAMES).describe("Available internal tool names")).default([]).describe(
40
45
  `Array of internal tool names to enable. Empty array = disabled. Available tools: ${import_constants.INTERNAL_TOOL_NAMES.join(", ")}`
41
46
  );
47
+ function getCustomToolConfigSchema() {
48
+ return import_custom_tool_schema_registry.customToolSchemaRegistry.createUnionSchema();
49
+ }
50
+ const CustomToolConfigSchema = import_zod.z.lazy(() => getCustomToolConfigSchema());
51
+ const CustomToolConfigSchemaForOpenAPI = import_zod.z.object({
52
+ type: import_zod.z.string().describe("Tool provider type identifier")
53
+ }).passthrough().describe("Custom tool provider configuration (generic representation for OpenAPI docs)");
54
+ const CustomToolsSchema = import_zod.z.array(CustomToolConfigSchema).default([]).describe(
55
+ "Array of custom tool provider configurations. Providers are validated against registered schemas."
56
+ );
57
+ const CustomToolsSchemaForOpenAPI = import_zod.z.array(CustomToolConfigSchemaForOpenAPI).default([]).describe("Array of custom tool provider configurations");
42
58
  const ToolPoliciesSchema = import_zod.z.object({
43
59
  alwaysAllow: import_zod.z.array(import_zod.z.string()).default([]).describe(
44
60
  'Tools that never require approval (low-risk). Use full qualified names (e.g., "internal--ask_user", "mcp--filesystem--read_file")'
@@ -80,6 +96,10 @@ const ToolsConfigSchema = import_zod.z.record(ToolLimitsSchema).describe("Per-to
80
96
  // Annotate the CommonJS export names for ESM import in node:
81
97
  0 && (module.exports = {
82
98
  ALLOWED_TOOLS_STORAGE_TYPES,
99
+ CustomToolConfigSchema,
100
+ CustomToolConfigSchemaForOpenAPI,
101
+ CustomToolsSchema,
102
+ CustomToolsSchemaForOpenAPI,
83
103
  DEFAULT_ALLOWED_TOOLS_STORAGE,
84
104
  DEFAULT_TOOL_CONFIRMATION_MODE,
85
105
  ElicitationConfigSchema,
@@ -5,8 +5,50 @@ export declare const ALLOWED_TOOLS_STORAGE_TYPES: readonly ["memory", "storage"]
5
5
  export type AllowedToolsStorageType = (typeof ALLOWED_TOOLS_STORAGE_TYPES)[number];
6
6
  export declare const DEFAULT_TOOL_CONFIRMATION_MODE: ToolConfirmationMode;
7
7
  export declare const DEFAULT_ALLOWED_TOOLS_STORAGE: AllowedToolsStorageType;
8
- export declare const InternalToolsSchema: z.ZodDefault<z.ZodArray<z.ZodEnum<["search_history", "ask_user", "read_file", "glob_files", "grep_content", "write_file", "edit_file", "bash_exec", "bash_output", "kill_process", "delegate_to_url"]>, "many">>;
8
+ export declare const InternalToolsSchema: z.ZodDefault<z.ZodArray<z.ZodEnum<["search_history", "ask_user", "delegate_to_url", "list_resources", "get_resource"]>, "many">>;
9
9
  export type InternalToolsConfig = z.output<typeof InternalToolsSchema>;
10
+ /**
11
+ * Custom tool configuration schema.
12
+ *
13
+ * This schema is built dynamically from registered providers:
14
+ * - If providers are registered → discriminated union with full validation
15
+ * - If no providers registered → passthrough schema (backward compatible)
16
+ *
17
+ * Provider-specific fields are validated based on their registered schemas.
18
+ */
19
+ export declare const CustomToolConfigSchema: z.ZodLazy<z.ZodType<any, z.ZodTypeDef, any>>;
20
+ export type CustomToolConfig = z.output<typeof CustomToolConfigSchema>;
21
+ /**
22
+ * OpenAPI-safe version of CustomToolConfigSchema.
23
+ * Uses a generic object schema instead of lazy loading for OpenAPI compatibility.
24
+ */
25
+ export declare const CustomToolConfigSchemaForOpenAPI: z.ZodObject<{
26
+ type: z.ZodString;
27
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
28
+ type: z.ZodString;
29
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
30
+ type: z.ZodString;
31
+ }, z.ZodTypeAny, "passthrough">>;
32
+ /**
33
+ * Array of custom tool provider configurations.
34
+ *
35
+ * Custom tools must be registered via customToolRegistry before loading agent config
36
+ * for early validation to work. If providers are not registered, validation will
37
+ * fall back to runtime validation by the provider.
38
+ */
39
+ export declare const CustomToolsSchema: z.ZodDefault<z.ZodArray<z.ZodLazy<z.ZodType<any, z.ZodTypeDef, any>>, "many">>;
40
+ export type CustomToolsConfig = z.output<typeof CustomToolsSchema>;
41
+ /**
42
+ * OpenAPI-safe version of CustomToolsSchema.
43
+ * Uses generic object schema for OpenAPI compatibility.
44
+ */
45
+ export declare const CustomToolsSchemaForOpenAPI: z.ZodDefault<z.ZodArray<z.ZodObject<{
46
+ type: z.ZodString;
47
+ }, "passthrough", z.ZodTypeAny, z.objectOutputType<{
48
+ type: z.ZodString;
49
+ }, z.ZodTypeAny, "passthrough">, z.objectInputType<{
50
+ type: z.ZodString;
51
+ }, z.ZodTypeAny, "passthrough">>, "many">>;
10
52
  export declare const ToolPoliciesSchema: z.ZodDefault<z.ZodObject<{
11
53
  alwaysAllow: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
12
54
  alwaysDeny: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
@@ -1 +1 @@
1
- {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/tools/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,eAAO,MAAM,uBAAuB,kDAAmD,CAAC;AACxF,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,eAAO,MAAM,2BAA2B,gCAAiC,CAAC;AAC1E,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnF,eAAO,MAAM,8BAA8B,EAAE,oBAAqC,CAAC;AACnF,eAAO,MAAM,6BAA6B,EAAE,uBAAmC,CAAC;AAIhF,eAAO,MAAM,mBAAmB,kNAK3B,CAAC;AAEN,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAGvE,eAAO,MAAM,kBAAkB;;;;;;;;;GAiB2B,CAAC;AAE3D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE/D,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BoB,CAAC;AAE9D,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAG5F,eAAO,MAAM,uBAAuB;;;;;;;;;EAoB/B,CAAC;AAEN,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAGlF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;EAShB,CAAC;AAEd,eAAO,MAAM,iBAAiB;;;;;;;;;;;;GAEgB,CAAC;AAE/C,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
1
+ {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../src/tools/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,eAAO,MAAM,uBAAuB,kDAAmD,CAAC;AACxF,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,uBAAuB,CAAC,CAAC,MAAM,CAAC,CAAC;AAE5E,eAAO,MAAM,2BAA2B,gCAAiC,CAAC;AAC1E,MAAM,MAAM,uBAAuB,GAAG,CAAC,OAAO,2BAA2B,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnF,eAAO,MAAM,8BAA8B,EAAE,oBAAqC,CAAC;AACnF,eAAO,MAAM,6BAA6B,EAAE,uBAAmC,CAAC;AAIhF,eAAO,MAAM,mBAAmB,kIAK3B,CAAC;AAEN,MAAM,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAkBvE;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,8CAA4C,CAAC;AAEhF,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEvE;;;GAGG;AACH,eAAO,MAAM,gCAAgC;;;;;;gCAKgD,CAAC;AAE9F;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,gFAKzB,CAAC;AAEN,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAEnE;;;GAGG;AACH,eAAO,MAAM,2BAA2B;;;;;;0CAGqB,CAAC;AAG9D,eAAO,MAAM,kBAAkB;;;;;;;;;GAiB2B,CAAC;AAE3D,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE/D,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2BoB,CAAC;AAE9D,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAClF,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,4BAA4B,CAAC,CAAC;AAG5F,eAAO,MAAM,uBAAuB;;;;;;;;;EAoB/B,CAAC;AAEN,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAGlF,eAAO,MAAM,gBAAgB;;;;;;;;;;;;EAShB,CAAC;AAEd,eAAO,MAAM,iBAAiB;;;;;;;;;;;;GAEgB,CAAC;AAE/C,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,iBAAiB,CAAC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import "../chunk-PTJYTZNU.js";
2
2
  import { z } from "zod";
3
3
  import { INTERNAL_TOOL_NAMES } from "./internal-tools/constants.js";
4
+ import { customToolSchemaRegistry } from "./custom-tool-schema-registry.js";
4
5
  const TOOL_CONFIRMATION_MODES = ["manual", "auto-approve", "auto-deny"];
5
6
  const ALLOWED_TOOLS_STORAGE_TYPES = ["memory", "storage"];
6
7
  const DEFAULT_TOOL_CONFIRMATION_MODE = "auto-approve";
@@ -8,6 +9,17 @@ const DEFAULT_ALLOWED_TOOLS_STORAGE = "storage";
8
9
  const InternalToolsSchema = z.array(z.enum(INTERNAL_TOOL_NAMES).describe("Available internal tool names")).default([]).describe(
9
10
  `Array of internal tool names to enable. Empty array = disabled. Available tools: ${INTERNAL_TOOL_NAMES.join(", ")}`
10
11
  );
12
+ function getCustomToolConfigSchema() {
13
+ return customToolSchemaRegistry.createUnionSchema();
14
+ }
15
+ const CustomToolConfigSchema = z.lazy(() => getCustomToolConfigSchema());
16
+ const CustomToolConfigSchemaForOpenAPI = z.object({
17
+ type: z.string().describe("Tool provider type identifier")
18
+ }).passthrough().describe("Custom tool provider configuration (generic representation for OpenAPI docs)");
19
+ const CustomToolsSchema = z.array(CustomToolConfigSchema).default([]).describe(
20
+ "Array of custom tool provider configurations. Providers are validated against registered schemas."
21
+ );
22
+ const CustomToolsSchemaForOpenAPI = z.array(CustomToolConfigSchemaForOpenAPI).default([]).describe("Array of custom tool provider configurations");
11
23
  const ToolPoliciesSchema = z.object({
12
24
  alwaysAllow: z.array(z.string()).default([]).describe(
13
25
  'Tools that never require approval (low-risk). Use full qualified names (e.g., "internal--ask_user", "mcp--filesystem--read_file")'
@@ -48,6 +60,10 @@ const ToolLimitsSchema = z.object({
48
60
  const ToolsConfigSchema = z.record(ToolLimitsSchema).describe("Per-tool configuration limits");
49
61
  export {
50
62
  ALLOWED_TOOLS_STORAGE_TYPES,
63
+ CustomToolConfigSchema,
64
+ CustomToolConfigSchemaForOpenAPI,
65
+ CustomToolsSchema,
66
+ CustomToolsSchemaForOpenAPI,
51
67
  DEFAULT_ALLOWED_TOOLS_STORAGE,
52
68
  DEFAULT_TOOL_CONFIRMATION_MODE,
53
69
  ElicitationConfigSchema,