@dexto/core 1.5.8 → 1.6.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 (640) hide show
  1. package/README.md +19 -8
  2. package/dist/agent/DextoAgent.cjs +293 -154
  3. package/dist/agent/DextoAgent.d.ts +83 -56
  4. package/dist/agent/DextoAgent.d.ts.map +1 -1
  5. package/dist/agent/DextoAgent.js +290 -151
  6. package/dist/{context/compaction/provider.cjs → agent/agent-options.cjs} +2 -2
  7. package/dist/agent/agent-options.d.ts +53 -0
  8. package/dist/agent/agent-options.d.ts.map +1 -0
  9. package/dist/agent/agentCard.cjs +1 -1
  10. package/dist/agent/errors.cjs +2 -2
  11. package/dist/agent/errors.d.ts.map +1 -1
  12. package/dist/agent/index.cjs +1 -6
  13. package/dist/agent/index.d.ts +3 -2
  14. package/dist/agent/index.d.ts.map +1 -1
  15. package/dist/agent/index.js +1 -7
  16. package/dist/{storage/blob/provider.cjs → agent/runtime-config.cjs} +2 -2
  17. package/dist/agent/runtime-config.d.ts +53 -0
  18. package/dist/agent/runtime-config.d.ts.map +1 -0
  19. package/dist/agent/schemas.cjs +2 -104
  20. package/dist/agent/schemas.d.ts +10 -9199
  21. package/dist/agent/schemas.d.ts.map +1 -1
  22. package/dist/agent/schemas.js +1 -109
  23. package/dist/agent/state-manager.d.ts +5 -5
  24. package/dist/agent/state-manager.d.ts.map +1 -1
  25. package/dist/approval/error-codes.cjs +1 -1
  26. package/dist/approval/error-codes.d.ts +1 -1
  27. package/dist/approval/error-codes.d.ts.map +1 -1
  28. package/dist/approval/error-codes.js +1 -1
  29. package/dist/approval/errors.cjs +5 -5
  30. package/dist/approval/errors.d.ts +2 -2
  31. package/dist/approval/errors.d.ts.map +1 -1
  32. package/dist/approval/errors.js +5 -5
  33. package/dist/approval/index.cjs +8 -8
  34. package/dist/approval/index.d.ts +2 -2
  35. package/dist/approval/index.d.ts.map +1 -1
  36. package/dist/approval/index.js +8 -8
  37. package/dist/approval/manager.cjs +77 -57
  38. package/dist/approval/manager.d.ts +41 -43
  39. package/dist/approval/manager.d.ts.map +1 -1
  40. package/dist/approval/manager.js +75 -55
  41. package/dist/approval/schemas.cjs +26 -25
  42. package/dist/approval/schemas.d.ts +35 -15
  43. package/dist/approval/schemas.d.ts.map +1 -1
  44. package/dist/approval/schemas.js +22 -21
  45. package/dist/approval/types.cjs +1 -1
  46. package/dist/approval/types.d.ts +14 -14
  47. package/dist/approval/types.d.ts.map +1 -1
  48. package/dist/approval/types.js +1 -1
  49. package/dist/context/compaction/index.cjs +2 -23
  50. package/dist/context/compaction/index.d.ts +1 -7
  51. package/dist/context/compaction/index.d.ts.map +1 -1
  52. package/dist/context/compaction/index.js +1 -16
  53. package/dist/context/compaction/strategies/noop.cjs +19 -1
  54. package/dist/context/compaction/strategies/noop.d.ts +13 -3
  55. package/dist/context/compaction/strategies/noop.d.ts.map +1 -1
  56. package/dist/context/compaction/strategies/noop.js +19 -1
  57. package/dist/context/compaction/strategies/{reactive-overflow.cjs → reactive-overflow-compaction.cjs} +67 -64
  58. package/dist/context/compaction/strategies/{reactive-overflow.d.ts → reactive-overflow-compaction.d.ts} +19 -36
  59. package/dist/context/compaction/strategies/reactive-overflow-compaction.d.ts.map +1 -0
  60. package/dist/context/compaction/strategies/{reactive-overflow.js → reactive-overflow-compaction.js} +63 -60
  61. package/dist/context/compaction/types.d.ts +40 -8
  62. package/dist/context/compaction/types.d.ts.map +1 -1
  63. package/dist/context/manager.cjs +4 -2
  64. package/dist/context/manager.d.ts +4 -3
  65. package/dist/context/manager.d.ts.map +1 -1
  66. package/dist/context/manager.js +4 -2
  67. package/dist/context/types.d.ts +2 -0
  68. package/dist/context/types.d.ts.map +1 -1
  69. package/dist/context/utils.cjs +2 -2
  70. package/dist/context/utils.d.ts +14 -14
  71. package/dist/context/utils.d.ts.map +1 -1
  72. package/dist/errors/result-bridge.d.ts +2 -2
  73. package/dist/errors/result-bridge.d.ts.map +1 -1
  74. package/dist/errors/types.cjs +1 -1
  75. package/dist/errors/types.d.ts +3 -3
  76. package/dist/errors/types.d.ts.map +1 -1
  77. package/dist/errors/types.js +1 -1
  78. package/dist/events/index.cjs +11 -1
  79. package/dist/events/index.d.ts +43 -7
  80. package/dist/events/index.d.ts.map +1 -1
  81. package/dist/events/index.js +11 -1
  82. package/dist/{plugins → hooks}/builtins/content-policy.cjs +7 -6
  83. package/dist/hooks/builtins/content-policy.d.ts +24 -0
  84. package/dist/hooks/builtins/content-policy.d.ts.map +1 -0
  85. package/dist/{plugins → hooks}/builtins/content-policy.js +6 -5
  86. package/dist/{plugins → hooks}/builtins/response-sanitizer.cjs +3 -3
  87. package/dist/hooks/builtins/response-sanitizer.d.ts +22 -0
  88. package/dist/hooks/builtins/response-sanitizer.d.ts.map +1 -0
  89. package/dist/{plugins → hooks}/builtins/response-sanitizer.js +2 -2
  90. package/dist/hooks/error-codes.cjs +43 -0
  91. package/dist/hooks/error-codes.d.ts +34 -0
  92. package/dist/hooks/error-codes.d.ts.map +1 -0
  93. package/dist/hooks/error-codes.js +20 -0
  94. package/dist/{storage/cache/providers/memory.cjs → hooks/index.cjs} +15 -18
  95. package/dist/hooks/index.d.ts +14 -0
  96. package/dist/hooks/index.d.ts.map +1 -0
  97. package/dist/hooks/index.js +11 -0
  98. package/dist/hooks/manager.cjs +354 -0
  99. package/dist/hooks/manager.d.ts +103 -0
  100. package/dist/hooks/manager.d.ts.map +1 -0
  101. package/dist/hooks/manager.js +331 -0
  102. package/dist/{plugins → hooks}/types.d.ts +36 -34
  103. package/dist/hooks/types.d.ts.map +1 -0
  104. package/dist/index.browser.cjs +13 -12
  105. package/dist/index.browser.d.ts +5 -5
  106. package/dist/index.browser.d.ts.map +1 -1
  107. package/dist/index.browser.js +8 -7
  108. package/dist/index.cjs +5 -7
  109. package/dist/index.d.ts +2 -3
  110. package/dist/index.d.ts.map +1 -1
  111. package/dist/index.js +2 -3
  112. package/dist/llm/errors.cjs +1 -1
  113. package/dist/llm/executor/stream-processor.cjs +131 -11
  114. package/dist/llm/executor/stream-processor.d.ts +7 -5
  115. package/dist/llm/executor/stream-processor.d.ts.map +1 -1
  116. package/dist/llm/executor/stream-processor.js +131 -11
  117. package/dist/llm/executor/turn-executor.cjs +49 -54
  118. package/dist/llm/executor/turn-executor.d.ts +7 -8
  119. package/dist/llm/executor/turn-executor.d.ts.map +1 -1
  120. package/dist/llm/executor/turn-executor.js +49 -54
  121. package/dist/llm/formatters/vercel.cjs +2 -2
  122. package/dist/llm/formatters/vercel.d.ts +2 -2
  123. package/dist/llm/formatters/vercel.d.ts.map +1 -1
  124. package/dist/llm/providers/local/schemas.d.ts +10 -10
  125. package/dist/llm/registry/auto-update.d.ts +2 -2
  126. package/dist/llm/registry/auto-update.d.ts.map +1 -1
  127. package/dist/llm/registry/index.d.ts +3 -3
  128. package/dist/llm/registry/index.d.ts.map +1 -1
  129. package/dist/llm/resolver.cjs +2 -2
  130. package/dist/llm/resolver.d.ts +4 -4
  131. package/dist/llm/resolver.d.ts.map +1 -1
  132. package/dist/llm/schemas.cjs +67 -104
  133. package/dist/llm/schemas.d.ts +6 -145
  134. package/dist/llm/schemas.d.ts.map +1 -1
  135. package/dist/llm/schemas.js +64 -101
  136. package/dist/llm/services/factory.cjs +2 -3
  137. package/dist/llm/services/factory.d.ts +3 -4
  138. package/dist/llm/services/factory.d.ts.map +1 -1
  139. package/dist/llm/services/factory.js +2 -3
  140. package/dist/llm/services/vercel.cjs +7 -14
  141. package/dist/llm/services/vercel.d.ts +6 -7
  142. package/dist/llm/services/vercel.d.ts.map +1 -1
  143. package/dist/llm/services/vercel.js +7 -14
  144. package/dist/llm/validation.cjs +1 -1
  145. package/dist/llm/validation.d.ts +2 -2
  146. package/dist/llm/validation.d.ts.map +1 -1
  147. package/dist/logger/browser.cjs +4 -4
  148. package/dist/logger/browser.d.ts +4 -4
  149. package/dist/logger/browser.d.ts.map +1 -1
  150. package/dist/logger/browser.js +3 -3
  151. package/dist/{context/compaction/providers/noop-provider.cjs → logger/default-logger-factory.cjs} +16 -22
  152. package/dist/logger/default-logger-factory.d.ts +301 -0
  153. package/dist/logger/default-logger-factory.d.ts.map +1 -0
  154. package/dist/logger/default-logger-factory.js +18 -0
  155. package/dist/logger/factory.d.ts +2 -2
  156. package/dist/logger/factory.d.ts.map +1 -1
  157. package/dist/logger/index.cjs +7 -2
  158. package/dist/logger/index.d.ts +5 -3
  159. package/dist/logger/index.d.ts.map +1 -1
  160. package/dist/logger/index.js +8 -2
  161. package/dist/logger/logger.cjs +4 -4
  162. package/dist/logger/logger.d.ts +4 -4
  163. package/dist/logger/logger.d.ts.map +1 -1
  164. package/dist/logger/logger.js +3 -3
  165. package/dist/logger/v2/dexto-logger.d.ts +3 -3
  166. package/dist/logger/v2/dexto-logger.d.ts.map +1 -1
  167. package/dist/logger/v2/schemas.d.ts +12 -12
  168. package/dist/logger/v2/test-utils.d.ts +5 -5
  169. package/dist/logger/v2/test-utils.d.ts.map +1 -1
  170. package/dist/logger/v2/transport-factory.d.ts +3 -3
  171. package/dist/logger/v2/transport-factory.d.ts.map +1 -1
  172. package/dist/logger/v2/transports/console-transport.d.ts +2 -2
  173. package/dist/logger/v2/transports/console-transport.d.ts.map +1 -1
  174. package/dist/logger/v2/transports/file-transport.d.ts +2 -2
  175. package/dist/logger/v2/transports/file-transport.d.ts.map +1 -1
  176. package/dist/logger/v2/transports/silent-transport.d.ts +2 -2
  177. package/dist/logger/v2/transports/silent-transport.d.ts.map +1 -1
  178. package/dist/logger/v2/types.cjs +1 -1
  179. package/dist/logger/v2/types.d.ts +8 -8
  180. package/dist/logger/v2/types.d.ts.map +1 -1
  181. package/dist/logger/v2/types.js +1 -1
  182. package/dist/mcp/errors.cjs +2 -2
  183. package/dist/mcp/errors.d.ts.map +1 -1
  184. package/dist/mcp/manager.cjs +16 -11
  185. package/dist/mcp/manager.d.ts +16 -13
  186. package/dist/mcp/manager.d.ts.map +1 -1
  187. package/dist/mcp/manager.js +17 -12
  188. package/dist/mcp/mcp-client.cjs +25 -20
  189. package/dist/mcp/mcp-client.d.ts +5 -5
  190. package/dist/mcp/mcp-client.d.ts.map +1 -1
  191. package/dist/mcp/mcp-client.js +20 -15
  192. package/dist/mcp/resolver.cjs +1 -1
  193. package/dist/mcp/schemas.cjs +5 -5
  194. package/dist/mcp/schemas.d.ts +4 -4
  195. package/dist/mcp/schemas.js +2 -2
  196. package/dist/mcp/types.d.ts +7 -7
  197. package/dist/mcp/types.d.ts.map +1 -1
  198. package/dist/memory/manager.d.ts +2 -2
  199. package/dist/memory/manager.d.ts.map +1 -1
  200. package/dist/memory/schemas.d.ts +2 -2
  201. package/dist/prompts/errors.cjs +3 -3
  202. package/dist/prompts/errors.d.ts.map +1 -1
  203. package/dist/prompts/prompt-manager.d.ts +3 -3
  204. package/dist/prompts/prompt-manager.d.ts.map +1 -1
  205. package/dist/prompts/providers/config-prompt-provider.cjs +15 -29
  206. package/dist/prompts/providers/config-prompt-provider.d.ts +3 -3
  207. package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -1
  208. package/dist/prompts/providers/config-prompt-provider.js +15 -29
  209. package/dist/prompts/providers/custom-prompt-provider.d.ts +2 -2
  210. package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -1
  211. package/dist/prompts/providers/mcp-prompt-provider.d.ts +2 -2
  212. package/dist/prompts/providers/mcp-prompt-provider.d.ts.map +1 -1
  213. package/dist/prompts/schemas.d.ts +4 -4
  214. package/dist/resources/{internal-provider.cjs → agent-resources-provider.cjs} +16 -16
  215. package/dist/resources/{internal-provider.d.ts → agent-resources-provider.d.ts} +6 -6
  216. package/dist/resources/agent-resources-provider.d.ts.map +1 -0
  217. package/dist/resources/{internal-provider.js → agent-resources-provider.js} +13 -13
  218. package/dist/resources/errors.cjs +2 -2
  219. package/dist/resources/errors.d.ts.map +1 -1
  220. package/dist/resources/handlers/blob-handler.d.ts +2 -2
  221. package/dist/resources/handlers/blob-handler.d.ts.map +1 -1
  222. package/dist/resources/handlers/factory.d.ts +3 -3
  223. package/dist/resources/handlers/factory.d.ts.map +1 -1
  224. package/dist/resources/handlers/filesystem-handler.d.ts +2 -2
  225. package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
  226. package/dist/resources/index.cjs +7 -9
  227. package/dist/resources/index.d.ts +3 -3
  228. package/dist/resources/index.d.ts.map +1 -1
  229. package/dist/resources/index.js +5 -10
  230. package/dist/resources/manager.cjs +77 -74
  231. package/dist/resources/manager.d.ts +16 -7
  232. package/dist/resources/manager.d.ts.map +1 -1
  233. package/dist/resources/manager.js +77 -74
  234. package/dist/resources/schemas.cjs +6 -26
  235. package/dist/resources/schemas.d.ts +8 -100
  236. package/dist/resources/schemas.d.ts.map +1 -1
  237. package/dist/resources/schemas.js +4 -23
  238. package/dist/search/search-service.d.ts +2 -2
  239. package/dist/search/search-service.d.ts.map +1 -1
  240. package/dist/session/chat-session.cjs +15 -25
  241. package/dist/session/chat-session.d.ts +7 -5
  242. package/dist/session/chat-session.d.ts.map +1 -1
  243. package/dist/session/chat-session.js +16 -26
  244. package/dist/session/errors.cjs +2 -2
  245. package/dist/session/errors.d.ts.map +1 -1
  246. package/dist/session/history/database.cjs +1 -1
  247. package/dist/session/history/database.d.ts +4 -4
  248. package/dist/session/history/database.d.ts.map +1 -1
  249. package/dist/session/history/factory.d.ts +3 -3
  250. package/dist/session/history/factory.d.ts.map +1 -1
  251. package/dist/session/history/memory.d.ts +4 -4
  252. package/dist/session/history/memory.d.ts.map +1 -1
  253. package/dist/session/history/types.d.ts +2 -2
  254. package/dist/session/history/types.d.ts.map +1 -1
  255. package/dist/session/index.cjs +3 -0
  256. package/dist/session/index.d.ts +2 -0
  257. package/dist/session/index.d.ts.map +1 -1
  258. package/dist/session/index.js +2 -0
  259. package/dist/session/message-queue.d.ts +2 -2
  260. package/dist/session/message-queue.d.ts.map +1 -1
  261. package/dist/session/session-manager.cjs +67 -9
  262. package/dist/session/session-manager.d.ts +46 -7
  263. package/dist/session/session-manager.d.ts.map +1 -1
  264. package/dist/session/session-manager.js +67 -9
  265. package/dist/session/title-generator.cjs +2 -2
  266. package/dist/session/title-generator.d.ts +2 -2
  267. package/dist/session/title-generator.d.ts.map +1 -1
  268. package/dist/storage/blob/index.cjs +0 -40
  269. package/dist/storage/blob/index.d.ts +2 -44
  270. package/dist/storage/blob/index.d.ts.map +1 -1
  271. package/dist/storage/blob/index.js +0 -30
  272. package/dist/storage/cache/index.cjs +0 -37
  273. package/dist/storage/cache/index.d.ts +0 -42
  274. package/dist/storage/cache/index.d.ts.map +1 -1
  275. package/dist/storage/cache/index.js +0 -28
  276. package/dist/storage/database/index.cjs +0 -42
  277. package/dist/storage/database/index.d.ts +0 -43
  278. package/dist/storage/database/index.d.ts.map +1 -1
  279. package/dist/storage/database/index.js +0 -37
  280. package/dist/storage/error-codes.cjs +1 -6
  281. package/dist/storage/error-codes.d.ts +2 -7
  282. package/dist/storage/error-codes.d.ts.map +1 -1
  283. package/dist/storage/error-codes.js +1 -6
  284. package/dist/storage/errors.cjs +18 -82
  285. package/dist/storage/errors.d.ts +4 -24
  286. package/dist/storage/errors.d.ts.map +1 -1
  287. package/dist/storage/errors.js +16 -80
  288. package/dist/storage/index.cjs +8 -69
  289. package/dist/storage/index.d.ts +11 -66
  290. package/dist/storage/index.d.ts.map +1 -1
  291. package/dist/storage/index.js +6 -50
  292. package/dist/storage/storage-manager.cjs +9 -25
  293. package/dist/storage/storage-manager.d.ts +11 -15
  294. package/dist/storage/storage-manager.d.ts.map +1 -1
  295. package/dist/storage/storage-manager.js +8 -23
  296. package/dist/storage/types.d.ts +0 -1
  297. package/dist/storage/types.d.ts.map +1 -1
  298. package/dist/systemPrompt/contributors.d.ts +4 -4
  299. package/dist/systemPrompt/contributors.d.ts.map +1 -1
  300. package/dist/systemPrompt/errors.cjs +2 -2
  301. package/dist/systemPrompt/errors.d.ts.map +1 -1
  302. package/dist/systemPrompt/manager.cjs +1 -5
  303. package/dist/systemPrompt/manager.d.ts +2 -3
  304. package/dist/systemPrompt/manager.d.ts.map +1 -1
  305. package/dist/systemPrompt/manager.js +1 -5
  306. package/dist/telemetry/index.cjs +3 -0
  307. package/dist/telemetry/index.d.ts +2 -0
  308. package/dist/telemetry/index.d.ts.map +1 -1
  309. package/dist/telemetry/index.js +2 -0
  310. package/dist/telemetry/utils.d.ts +4 -4
  311. package/dist/telemetry/utils.d.ts.map +1 -1
  312. package/dist/test-utils/in-memory-storage.cjs +288 -0
  313. package/dist/test-utils/in-memory-storage.js +252 -0
  314. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts +3 -3
  315. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts.map +1 -1
  316. package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.ts +2 -2
  317. package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.ts.map +1 -1
  318. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts +4 -4
  319. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts.map +1 -1
  320. package/dist/tools/confirmation/allowed-tools-provider/types.d.ts +2 -2
  321. package/dist/tools/confirmation/allowed-tools-provider/types.d.ts.map +1 -1
  322. package/dist/tools/{internal-tools/constants.cjs → define-tool.cjs} +8 -13
  323. package/dist/tools/define-tool.d.ts +11 -0
  324. package/dist/tools/define-tool.d.ts.map +1 -0
  325. package/dist/tools/define-tool.js +7 -0
  326. package/dist/tools/error-codes.cjs +2 -2
  327. package/dist/tools/error-codes.d.ts +2 -2
  328. package/dist/tools/error-codes.d.ts.map +1 -1
  329. package/dist/tools/error-codes.js +2 -2
  330. package/dist/tools/errors.cjs +11 -23
  331. package/dist/tools/errors.d.ts +4 -10
  332. package/dist/tools/errors.d.ts.map +1 -1
  333. package/dist/tools/errors.js +9 -21
  334. package/dist/tools/index.cjs +3 -8
  335. package/dist/tools/index.d.ts +2 -4
  336. package/dist/tools/index.d.ts.map +1 -1
  337. package/dist/tools/index.js +2 -7
  338. package/dist/{storage/blob/providers/index.cjs → tools/pattern-utils.cjs} +11 -9
  339. package/dist/tools/pattern-utils.d.ts +20 -0
  340. package/dist/tools/pattern-utils.d.ts.map +1 -0
  341. package/dist/tools/pattern-utils.js +10 -0
  342. package/dist/tools/schemas.cjs +14 -40
  343. package/dist/tools/schemas.d.ts +6 -50
  344. package/dist/tools/schemas.d.ts.map +1 -1
  345. package/dist/tools/schemas.js +11 -32
  346. package/dist/tools/tool-call-metadata.cjs +3 -3
  347. package/dist/tools/tool-call-metadata.d.ts +1 -1
  348. package/dist/tools/tool-call-metadata.d.ts.map +1 -1
  349. package/dist/tools/tool-call-metadata.js +3 -3
  350. package/dist/tools/tool-manager.cjs +376 -327
  351. package/dist/tools/tool-manager.d.ts +63 -80
  352. package/dist/tools/tool-manager.d.ts.map +1 -1
  353. package/dist/tools/tool-manager.js +376 -331
  354. package/dist/tools/types.d.ts +112 -13
  355. package/dist/tools/types.d.ts.map +1 -1
  356. package/dist/utils/error-conversion.d.ts +2 -2
  357. package/dist/utils/error-conversion.d.ts.map +1 -1
  358. package/dist/utils/path.d.ts +2 -2
  359. package/dist/utils/path.d.ts.map +1 -1
  360. package/dist/utils/result.cjs +1 -1
  361. package/dist/utils/result.d.ts.map +1 -1
  362. package/dist/utils/schema.cjs +9 -5
  363. package/dist/utils/schema.d.ts +4 -2
  364. package/dist/utils/schema.d.ts.map +1 -1
  365. package/dist/utils/schema.js +9 -5
  366. package/dist/utils/service-initializer.cjs +51 -56
  367. package/dist/utils/service-initializer.d.ts +17 -14
  368. package/dist/utils/service-initializer.d.ts.map +1 -1
  369. package/dist/utils/service-initializer.js +51 -56
  370. package/dist/{storage/cache/providers/index.cjs → workspace/error-codes.cjs} +8 -9
  371. package/dist/workspace/error-codes.d.ts +5 -0
  372. package/dist/workspace/error-codes.d.ts.map +1 -0
  373. package/dist/workspace/error-codes.js +7 -0
  374. package/dist/{storage/blob/factory.cjs → workspace/errors.cjs} +20 -14
  375. package/dist/workspace/errors.d.ts +5 -0
  376. package/dist/workspace/errors.d.ts.map +1 -0
  377. package/dist/workspace/errors.js +21 -0
  378. package/dist/{image → workspace}/index.cjs +12 -10
  379. package/dist/workspace/index.d.ts +5 -0
  380. package/dist/workspace/index.d.ts.map +1 -0
  381. package/dist/workspace/index.js +9 -0
  382. package/dist/workspace/manager.cjs +113 -0
  383. package/dist/workspace/manager.d.ts +18 -0
  384. package/dist/workspace/manager.d.ts.map +1 -0
  385. package/dist/workspace/manager.js +90 -0
  386. package/dist/workspace/types.d.ts +14 -0
  387. package/dist/workspace/types.d.ts.map +1 -0
  388. package/package.json +2 -2
  389. package/dist/context/compaction/factory.cjs +0 -57
  390. package/dist/context/compaction/factory.d.ts +0 -17
  391. package/dist/context/compaction/factory.d.ts.map +0 -1
  392. package/dist/context/compaction/factory.js +0 -34
  393. package/dist/context/compaction/provider.d.ts +0 -48
  394. package/dist/context/compaction/provider.d.ts.map +0 -1
  395. package/dist/context/compaction/providers/noop-provider.d.ts +0 -24
  396. package/dist/context/compaction/providers/noop-provider.d.ts.map +0 -1
  397. package/dist/context/compaction/providers/noop-provider.js +0 -24
  398. package/dist/context/compaction/providers/reactive-overflow-provider.cjs +0 -76
  399. package/dist/context/compaction/providers/reactive-overflow-provider.d.ts +0 -51
  400. package/dist/context/compaction/providers/reactive-overflow-provider.d.ts.map +0 -1
  401. package/dist/context/compaction/providers/reactive-overflow-provider.js +0 -52
  402. package/dist/context/compaction/registry.cjs +0 -39
  403. package/dist/context/compaction/registry.d.ts +0 -19
  404. package/dist/context/compaction/registry.d.ts.map +0 -1
  405. package/dist/context/compaction/registry.js +0 -16
  406. package/dist/context/compaction/schemas.cjs +0 -58
  407. package/dist/context/compaction/schemas.d.ts +0 -69
  408. package/dist/context/compaction/schemas.d.ts.map +0 -1
  409. package/dist/context/compaction/schemas.js +0 -34
  410. package/dist/context/compaction/strategies/reactive-overflow.d.ts.map +0 -1
  411. package/dist/image/define-image.cjs +0 -146
  412. package/dist/image/define-image.d.ts +0 -71
  413. package/dist/image/define-image.d.ts.map +0 -1
  414. package/dist/image/define-image.js +0 -121
  415. package/dist/image/index.d.ts +0 -53
  416. package/dist/image/index.d.ts.map +0 -1
  417. package/dist/image/index.js +0 -7
  418. package/dist/image/types.d.ts +0 -246
  419. package/dist/image/types.d.ts.map +0 -1
  420. package/dist/llm/services/test-utils.integration.cjs +0 -237
  421. package/dist/llm/services/test-utils.integration.d.ts +0 -48
  422. package/dist/llm/services/test-utils.integration.d.ts.map +0 -1
  423. package/dist/llm/services/test-utils.integration.js +0 -214
  424. package/dist/plugins/builtins/content-policy.d.ts +0 -26
  425. package/dist/plugins/builtins/content-policy.d.ts.map +0 -1
  426. package/dist/plugins/builtins/response-sanitizer.d.ts +0 -25
  427. package/dist/plugins/builtins/response-sanitizer.d.ts.map +0 -1
  428. package/dist/plugins/error-codes.cjs +0 -43
  429. package/dist/plugins/error-codes.d.ts +0 -34
  430. package/dist/plugins/error-codes.d.ts.map +0 -1
  431. package/dist/plugins/error-codes.js +0 -20
  432. package/dist/plugins/index.cjs +0 -61
  433. package/dist/plugins/index.d.ts +0 -21
  434. package/dist/plugins/index.d.ts.map +0 -1
  435. package/dist/plugins/index.js +0 -30
  436. package/dist/plugins/loader.cjs +0 -171
  437. package/dist/plugins/loader.d.ts +0 -30
  438. package/dist/plugins/loader.d.ts.map +0 -1
  439. package/dist/plugins/loader.js +0 -145
  440. package/dist/plugins/manager.cjs +0 -473
  441. package/dist/plugins/manager.d.ts +0 -106
  442. package/dist/plugins/manager.d.ts.map +0 -1
  443. package/dist/plugins/manager.js +0 -450
  444. package/dist/plugins/registrations/builtins.cjs +0 -51
  445. package/dist/plugins/registrations/builtins.d.ts +0 -17
  446. package/dist/plugins/registrations/builtins.d.ts.map +0 -1
  447. package/dist/plugins/registrations/builtins.js +0 -28
  448. package/dist/plugins/registry.cjs +0 -63
  449. package/dist/plugins/registry.d.ts +0 -101
  450. package/dist/plugins/registry.d.ts.map +0 -1
  451. package/dist/plugins/registry.js +0 -39
  452. package/dist/plugins/schemas.cjs +0 -73
  453. package/dist/plugins/schemas.d.ts +0 -195
  454. package/dist/plugins/schemas.d.ts.map +0 -1
  455. package/dist/plugins/schemas.js +0 -47
  456. package/dist/plugins/types.d.ts.map +0 -1
  457. package/dist/providers/base-registry.cjs +0 -147
  458. package/dist/providers/base-registry.d.ts +0 -147
  459. package/dist/providers/base-registry.d.ts.map +0 -1
  460. package/dist/providers/base-registry.js +0 -123
  461. package/dist/providers/discovery.cjs +0 -109
  462. package/dist/providers/discovery.d.ts +0 -96
  463. package/dist/providers/discovery.d.ts.map +0 -1
  464. package/dist/providers/discovery.js +0 -84
  465. package/dist/providers/index.cjs +0 -24
  466. package/dist/providers/index.d.ts +0 -32
  467. package/dist/providers/index.d.ts.map +0 -1
  468. package/dist/providers/index.js +0 -2
  469. package/dist/resources/internal-provider.d.ts.map +0 -1
  470. package/dist/storage/blob/factory.d.ts +0 -37
  471. package/dist/storage/blob/factory.d.ts.map +0 -1
  472. package/dist/storage/blob/factory.js +0 -15
  473. package/dist/storage/blob/local-blob-store.cjs +0 -496
  474. package/dist/storage/blob/local-blob-store.d.ts +0 -58
  475. package/dist/storage/blob/local-blob-store.d.ts.map +0 -1
  476. package/dist/storage/blob/local-blob-store.js +0 -463
  477. package/dist/storage/blob/memory-blob-store.cjs +0 -326
  478. package/dist/storage/blob/memory-blob-store.d.ts +0 -66
  479. package/dist/storage/blob/memory-blob-store.d.ts.map +0 -1
  480. package/dist/storage/blob/memory-blob-store.js +0 -303
  481. package/dist/storage/blob/provider.d.ts +0 -50
  482. package/dist/storage/blob/provider.d.ts.map +0 -1
  483. package/dist/storage/blob/providers/index.d.ts +0 -8
  484. package/dist/storage/blob/providers/index.d.ts.map +0 -1
  485. package/dist/storage/blob/providers/index.js +0 -7
  486. package/dist/storage/blob/providers/local.cjs +0 -39
  487. package/dist/storage/blob/providers/local.d.ts +0 -17
  488. package/dist/storage/blob/providers/local.d.ts.map +0 -1
  489. package/dist/storage/blob/providers/local.js +0 -16
  490. package/dist/storage/blob/providers/memory.cjs +0 -39
  491. package/dist/storage/blob/providers/memory.d.ts +0 -17
  492. package/dist/storage/blob/providers/memory.d.ts.map +0 -1
  493. package/dist/storage/blob/providers/memory.js +0 -16
  494. package/dist/storage/blob/registry.cjs +0 -50
  495. package/dist/storage/blob/registry.d.ts +0 -42
  496. package/dist/storage/blob/registry.d.ts.map +0 -1
  497. package/dist/storage/blob/registry.js +0 -26
  498. package/dist/storage/blob/schemas.cjs +0 -52
  499. package/dist/storage/blob/schemas.d.ts +0 -85
  500. package/dist/storage/blob/schemas.d.ts.map +0 -1
  501. package/dist/storage/blob/schemas.js +0 -26
  502. package/dist/storage/cache/factory.cjs +0 -38
  503. package/dist/storage/cache/factory.d.ts +0 -37
  504. package/dist/storage/cache/factory.d.ts.map +0 -1
  505. package/dist/storage/cache/factory.js +0 -15
  506. package/dist/storage/cache/memory-cache-store.cjs +0 -107
  507. package/dist/storage/cache/memory-cache-store.d.ts +0 -26
  508. package/dist/storage/cache/memory-cache-store.d.ts.map +0 -1
  509. package/dist/storage/cache/memory-cache-store.js +0 -84
  510. package/dist/storage/cache/provider.cjs +0 -16
  511. package/dist/storage/cache/provider.d.ts +0 -56
  512. package/dist/storage/cache/provider.d.ts.map +0 -1
  513. package/dist/storage/cache/provider.js +0 -0
  514. package/dist/storage/cache/providers/index.d.ts +0 -8
  515. package/dist/storage/cache/providers/index.d.ts.map +0 -1
  516. package/dist/storage/cache/providers/index.js +0 -7
  517. package/dist/storage/cache/providers/memory.d.ts +0 -17
  518. package/dist/storage/cache/providers/memory.d.ts.map +0 -1
  519. package/dist/storage/cache/providers/memory.js +0 -17
  520. package/dist/storage/cache/providers/redis.cjs +0 -66
  521. package/dist/storage/cache/providers/redis.d.ts +0 -20
  522. package/dist/storage/cache/providers/redis.d.ts.map +0 -1
  523. package/dist/storage/cache/providers/redis.js +0 -33
  524. package/dist/storage/cache/redis-store.cjs +0 -173
  525. package/dist/storage/cache/redis-store.d.ts +0 -32
  526. package/dist/storage/cache/redis-store.d.ts.map +0 -1
  527. package/dist/storage/cache/redis-store.js +0 -150
  528. package/dist/storage/cache/registry.cjs +0 -50
  529. package/dist/storage/cache/registry.d.ts +0 -42
  530. package/dist/storage/cache/registry.d.ts.map +0 -1
  531. package/dist/storage/cache/registry.js +0 -26
  532. package/dist/storage/cache/schemas.cjs +0 -81
  533. package/dist/storage/cache/schemas.d.ts +0 -150
  534. package/dist/storage/cache/schemas.d.ts.map +0 -1
  535. package/dist/storage/cache/schemas.js +0 -55
  536. package/dist/storage/database/factory.cjs +0 -38
  537. package/dist/storage/database/factory.d.ts +0 -39
  538. package/dist/storage/database/factory.d.ts.map +0 -1
  539. package/dist/storage/database/factory.js +0 -15
  540. package/dist/storage/database/memory-database-store.cjs +0 -122
  541. package/dist/storage/database/memory-database-store.d.ts +0 -29
  542. package/dist/storage/database/memory-database-store.d.ts.map +0 -1
  543. package/dist/storage/database/memory-database-store.js +0 -99
  544. package/dist/storage/database/postgres-store.cjs +0 -342
  545. package/dist/storage/database/postgres-store.d.ts +0 -55
  546. package/dist/storage/database/postgres-store.d.ts.map +0 -1
  547. package/dist/storage/database/postgres-store.js +0 -319
  548. package/dist/storage/database/provider.cjs +0 -16
  549. package/dist/storage/database/provider.d.ts +0 -56
  550. package/dist/storage/database/provider.d.ts.map +0 -1
  551. package/dist/storage/database/provider.js +0 -0
  552. package/dist/storage/database/providers/index.cjs +0 -34
  553. package/dist/storage/database/providers/index.d.ts +0 -9
  554. package/dist/storage/database/providers/index.d.ts.map +0 -1
  555. package/dist/storage/database/providers/index.js +0 -9
  556. package/dist/storage/database/providers/memory.cjs +0 -40
  557. package/dist/storage/database/providers/memory.d.ts +0 -16
  558. package/dist/storage/database/providers/memory.d.ts.map +0 -1
  559. package/dist/storage/database/providers/memory.js +0 -17
  560. package/dist/storage/database/providers/postgres.cjs +0 -62
  561. package/dist/storage/database/providers/postgres.d.ts +0 -19
  562. package/dist/storage/database/providers/postgres.d.ts.map +0 -1
  563. package/dist/storage/database/providers/postgres.js +0 -29
  564. package/dist/storage/database/providers/sqlite.cjs +0 -66
  565. package/dist/storage/database/providers/sqlite.d.ts +0 -20
  566. package/dist/storage/database/providers/sqlite.d.ts.map +0 -1
  567. package/dist/storage/database/providers/sqlite.js +0 -33
  568. package/dist/storage/database/registry.cjs +0 -50
  569. package/dist/storage/database/registry.d.ts +0 -42
  570. package/dist/storage/database/registry.d.ts.map +0 -1
  571. package/dist/storage/database/registry.js +0 -26
  572. package/dist/storage/database/schemas.cjs +0 -97
  573. package/dist/storage/database/schemas.d.ts +0 -226
  574. package/dist/storage/database/schemas.d.ts.map +0 -1
  575. package/dist/storage/database/schemas.js +0 -70
  576. package/dist/storage/database/sqlite-store.cjs +0 -270
  577. package/dist/storage/database/sqlite-store.d.ts +0 -33
  578. package/dist/storage/database/sqlite-store.d.ts.map +0 -1
  579. package/dist/storage/database/sqlite-store.js +0 -237
  580. package/dist/storage/schemas.cjs +0 -57
  581. package/dist/storage/schemas.d.ts +0 -347
  582. package/dist/storage/schemas.d.ts.map +0 -1
  583. package/dist/storage/schemas.js +0 -37
  584. package/dist/tools/bash-pattern-utils.cjs +0 -91
  585. package/dist/tools/bash-pattern-utils.d.ts +0 -58
  586. package/dist/tools/bash-pattern-utils.d.ts.map +0 -1
  587. package/dist/tools/bash-pattern-utils.js +0 -64
  588. package/dist/tools/custom-tool-registry.cjs +0 -64
  589. package/dist/tools/custom-tool-registry.d.ts +0 -126
  590. package/dist/tools/custom-tool-registry.d.ts.map +0 -1
  591. package/dist/tools/custom-tool-registry.js +0 -40
  592. package/dist/tools/custom-tool-schema-registry.cjs +0 -164
  593. package/dist/tools/custom-tool-schema-registry.d.ts +0 -86
  594. package/dist/tools/custom-tool-schema-registry.d.ts.map +0 -1
  595. package/dist/tools/custom-tool-schema-registry.js +0 -140
  596. package/dist/tools/internal-tools/constants.d.ts +0 -12
  597. package/dist/tools/internal-tools/constants.d.ts.map +0 -1
  598. package/dist/tools/internal-tools/constants.js +0 -12
  599. package/dist/tools/internal-tools/implementations/ask-user-tool.cjs +0 -57
  600. package/dist/tools/internal-tools/implementations/ask-user-tool.d.ts +0 -18
  601. package/dist/tools/internal-tools/implementations/ask-user-tool.d.ts.map +0 -1
  602. package/dist/tools/internal-tools/implementations/ask-user-tool.js +0 -34
  603. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.cjs +0 -192
  604. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts +0 -33
  605. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts.map +0 -1
  606. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.js +0 -169
  607. package/dist/tools/internal-tools/implementations/get-resource-tool.cjs +0 -113
  608. package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts +0 -30
  609. package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts.map +0 -1
  610. package/dist/tools/internal-tools/implementations/get-resource-tool.js +0 -90
  611. package/dist/tools/internal-tools/implementations/invoke-skill-tool.cjs +0 -140
  612. package/dist/tools/internal-tools/implementations/invoke-skill-tool.d.ts +0 -24
  613. package/dist/tools/internal-tools/implementations/invoke-skill-tool.d.ts.map +0 -1
  614. package/dist/tools/internal-tools/implementations/invoke-skill-tool.js +0 -117
  615. package/dist/tools/internal-tools/implementations/list-resources-tool.cjs +0 -91
  616. package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts +0 -24
  617. package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts.map +0 -1
  618. package/dist/tools/internal-tools/implementations/list-resources-tool.js +0 -68
  619. package/dist/tools/internal-tools/implementations/search-history-tool.cjs +0 -61
  620. package/dist/tools/internal-tools/implementations/search-history-tool.d.ts +0 -7
  621. package/dist/tools/internal-tools/implementations/search-history-tool.d.ts.map +0 -1
  622. package/dist/tools/internal-tools/implementations/search-history-tool.js +0 -38
  623. package/dist/tools/internal-tools/index.cjs +0 -26
  624. package/dist/tools/internal-tools/index.d.ts +0 -4
  625. package/dist/tools/internal-tools/index.d.ts.map +0 -1
  626. package/dist/tools/internal-tools/index.js +0 -3
  627. package/dist/tools/internal-tools/provider.cjs +0 -324
  628. package/dist/tools/internal-tools/provider.d.ts +0 -116
  629. package/dist/tools/internal-tools/provider.d.ts.map +0 -1
  630. package/dist/tools/internal-tools/provider.js +0 -301
  631. package/dist/tools/internal-tools/registry.cjs +0 -71
  632. package/dist/tools/internal-tools/registry.d.ts +0 -91
  633. package/dist/tools/internal-tools/registry.d.ts.map +0 -1
  634. package/dist/tools/internal-tools/registry.js +0 -47
  635. /package/dist/{context/compaction/provider.js → agent/agent-options.js} +0 -0
  636. /package/dist/{image/types.js → agent/runtime-config.js} +0 -0
  637. /package/dist/{image → hooks}/types.cjs +0 -0
  638. /package/dist/{plugins → hooks}/types.js +0 -0
  639. /package/dist/{plugins → workspace}/types.cjs +0 -0
  640. /package/dist/{storage/blob/provider.js → workspace/types.js} +0 -0
@@ -1,17 +1,84 @@
1
1
  import type { JSONSchema7 } from 'json-schema';
2
- import type { ZodSchema } from 'zod';
2
+ import type { z, ZodTypeAny } from 'zod';
3
3
  import type { ToolDisplayData } from './display-types.js';
4
+ import type { WorkspaceContext } from '../workspace/types.js';
4
5
  import type { ApprovalRequestDetails, ApprovalResponse } from '../approval/types.js';
6
+ import type { ApprovalManager } from '../approval/manager.js';
7
+ import type { DextoAgent } from '../agent/DextoAgent.js';
8
+ import type { Cache } from '../storage/cache/types.js';
9
+ import type { BlobStore } from '../storage/blob/types.js';
10
+ import type { Database } from '../storage/database/types.js';
11
+ import type { MCPManager } from '../mcp/manager.js';
12
+ import type { PromptManager } from '../prompts/prompt-manager.js';
13
+ import type { ResourceManager } from '../resources/manager.js';
14
+ import type { SearchService } from '../search/search-service.js';
15
+ import type { Logger } from '../logger/v2/types.js';
16
+ /**
17
+ * Interface for forking execution to an isolated sub-agent context.
18
+ *
19
+ * Implemented by AgentSpawnerRuntime in `@dexto/agent-management` and surfaced to tools
20
+ * via {@link ToolExecutionContext.services}.
21
+ */
22
+ export interface TaskForker {
23
+ fork(options: {
24
+ task: string;
25
+ instructions: string;
26
+ agentId?: string;
27
+ autoApprove?: boolean;
28
+ toolCallId?: string;
29
+ sessionId?: string;
30
+ }): Promise<{
31
+ success: boolean;
32
+ response?: string;
33
+ error?: string;
34
+ }>;
35
+ }
36
+ export type TaskForkOptions = Parameters<TaskForker['fork']>[0];
37
+ export interface ToolServices {
38
+ approval: ApprovalManager;
39
+ search: SearchService;
40
+ resources: ResourceManager;
41
+ prompts: PromptManager;
42
+ mcp: MCPManager;
43
+ taskForker: TaskForker | null;
44
+ }
5
45
  /**
6
46
  * Context passed to tool execution
7
47
  */
8
- export interface ToolExecutionContext {
48
+ export interface ToolExecutionContextBase {
9
49
  /** Session ID if available */
10
50
  sessionId?: string | undefined;
51
+ /** Workspace ID if available */
52
+ workspaceId?: string | undefined;
53
+ /** Workspace context if available */
54
+ workspace?: WorkspaceContext | undefined;
11
55
  /** Abort signal for cancellation support */
12
56
  abortSignal?: AbortSignal | undefined;
13
57
  /** Unique tool call ID for tracking parallel tool calls */
14
58
  toolCallId?: string | undefined;
59
+ /**
60
+ * Logger scoped to the tool execution.
61
+ */
62
+ logger: Logger;
63
+ }
64
+ export interface ToolExecutionContext extends ToolExecutionContextBase {
65
+ /**
66
+ * Runtime agent reference (DI refactor: provided by ToolManager on each execute()).
67
+ */
68
+ agent?: DextoAgent | undefined;
69
+ /**
70
+ * Concrete storage backends (DI-first).
71
+ */
72
+ storage?: {
73
+ blob: BlobStore;
74
+ database: Database;
75
+ cache: Cache;
76
+ } | undefined;
77
+ /**
78
+ * Runtime services available to tools. These are injected at execution time (not factory time)
79
+ * to avoid init ordering cycles.
80
+ */
81
+ services?: ToolServices | undefined;
15
82
  }
16
83
  /**
17
84
  * Result of tool execution, including approval metadata
@@ -19,43 +86,74 @@ export interface ToolExecutionContext {
19
86
  export interface ToolExecutionResult {
20
87
  /** The actual result data from tool execution */
21
88
  result: unknown;
89
+ /** Optional display name for the tool (UI convenience) */
90
+ toolDisplayName?: string;
22
91
  /** Whether this tool required user approval before execution */
23
92
  requireApproval?: boolean;
24
93
  /** The approval status (only present if requireApproval is true) */
25
94
  approvalStatus?: 'approved' | 'rejected';
26
95
  }
27
96
  /**
28
- * Internal tool interface - for tools implemented within Dexto
97
+ * Tool interface - for tools implemented within Dexto
29
98
  */
30
- export interface InternalTool {
99
+ export interface Tool<TSchema extends ZodTypeAny = ZodTypeAny> {
31
100
  /** Unique identifier for the tool */
32
101
  id: string;
102
+ /**
103
+ * Short, user-facing name for this tool (UI convenience).
104
+ * Defaults to a title-cased version of {@link id} when omitted.
105
+ */
106
+ displayName?: string | undefined;
33
107
  /** Human-readable description of what the tool does */
34
108
  description: string;
35
109
  /** Zod schema defining the input parameters */
36
- inputSchema: ZodSchema;
110
+ inputSchema: TSchema;
37
111
  /** The actual function that executes the tool - input is validated by Zod before execution */
38
- execute: (input: unknown, context?: ToolExecutionContext) => Promise<unknown> | unknown;
112
+ execute(input: z.output<TSchema>, context: ToolExecutionContext): Promise<unknown> | unknown;
39
113
  /**
40
114
  * Optional preview generator for approval UI.
41
115
  * Called before requesting user approval to generate display data (e.g., diff preview).
42
116
  * Returns null if no preview is available.
43
117
  */
44
- generatePreview?: (input: unknown, context?: ToolExecutionContext) => Promise<ToolDisplayData | null>;
118
+ generatePreview?(input: z.output<TSchema>, context: ToolExecutionContext): Promise<ToolDisplayData | null>;
119
+ /**
120
+ * Optional aliases for this tool id.
121
+ *
122
+ * Used to support external prompt/skill ecosystems that refer to tools by short names
123
+ * (e.g. Claude Code "bash", "read", "grep" in allowed-tools). Aliases are resolved
124
+ * by {@link ToolManager} when applying session auto-approve lists.
125
+ */
126
+ aliases?: string[] | undefined;
127
+ /**
128
+ * Optional pattern key generator for approval memory.
129
+ *
130
+ * If provided, ToolManager will:
131
+ * - Skip confirmation when the pattern key is covered by previously approved patterns.
132
+ * - Offer suggested patterns (if {@link suggestApprovalPatterns} is provided) in the approval UI.
133
+ *
134
+ * Return null to disable pattern approvals for the given input (e.g. dangerous commands).
135
+ */
136
+ getApprovalPatternKey?(input: z.output<TSchema>): string | null;
137
+ /**
138
+ * Optional pattern suggestions for the approval UI.
139
+ *
140
+ * Returned patterns are shown as quick "remember pattern" options.
141
+ */
142
+ suggestApprovalPatterns?(input: z.output<TSchema>): string[];
45
143
  /**
46
144
  * Optional custom approval override.
47
145
  * If present and returns non-null, this approval request is used instead of
48
146
  * the default tool confirmation. Allows tools to request specialized approval
49
147
  * flows (e.g., directory access approval for file tools).
50
148
  *
51
- * @param args The validated input arguments for the tool
149
+ * @param input The validated input arguments for the tool
52
150
  * @returns ApprovalRequestDetails for custom approval, or null to use default tool confirmation
53
151
  *
54
152
  * @example
55
153
  * ```typescript
56
154
  * // File tool requesting directory access approval for external paths
57
- * getApprovalOverride: async (args) => {
58
- * const filePath = (args as {file_path: string}).file_path;
155
+ * getApprovalOverride: async (input) => {
156
+ * const filePath = (input as {file_path: string}).file_path;
59
157
  * if (!await isPathWithinAllowed(filePath)) {
60
158
  * return {
61
159
  * type: ApprovalType.DIRECTORY_ACCESS,
@@ -66,7 +164,7 @@ export interface InternalTool {
66
164
  * }
67
165
  * ```
68
166
  */
69
- getApprovalOverride?: (args: unknown) => Promise<ApprovalRequestDetails | null> | ApprovalRequestDetails | null;
167
+ getApprovalOverride?(input: z.output<TSchema>, context: ToolExecutionContext): Promise<ApprovalRequestDetails | null> | ApprovalRequestDetails | null;
70
168
  /**
71
169
  * Optional callback invoked when custom approval is granted.
72
170
  * Allows tools to handle approval responses (e.g., remember approved directories).
@@ -83,7 +181,7 @@ export interface InternalTool {
83
181
  * }
84
182
  * ```
85
183
  */
86
- onApprovalGranted?: (response: ApprovalResponse) => void;
184
+ onApprovalGranted?(response: ApprovalResponse, context: ToolExecutionContext, approvalRequest: ApprovalRequestDetails): void;
87
185
  }
88
186
  /**
89
187
  * Standard tool set interface - used by AI/LLM services
@@ -94,6 +192,7 @@ export interface ToolSet {
94
192
  name?: string;
95
193
  description?: string;
96
194
  parameters: JSONSchema7;
195
+ _meta?: Record<string, unknown>;
97
196
  };
98
197
  }
99
198
  /**
@@ -101,7 +200,7 @@ export interface ToolSet {
101
200
  */
102
201
  export interface ToolResult {
103
202
  success: boolean;
104
- data?: any;
203
+ data?: unknown;
105
204
  error?: string;
106
205
  }
107
206
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAErF;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,8BAA8B;IAC9B,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC/B,4CAA4C;IAC5C,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IACtC,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,iDAAiD;IACjD,MAAM,EAAE,OAAO,CAAC;IAChB,gEAAgE;IAChE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,oEAAoE;IACpE,cAAc,CAAC,EAAE,UAAU,GAAG,UAAU,CAAC;CAC5C;AAMD;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,qCAAqC;IACrC,EAAE,EAAE,MAAM,CAAC;IAEX,uDAAuD;IACvD,WAAW,EAAE,MAAM,CAAC;IAEpB,+CAA+C;IAC/C,WAAW,EAAE,SAAS,CAAC;IAEvB,8FAA8F;IAC9F,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,oBAAoB,KAAK,OAAO,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;IAExF;;;;OAIG;IACH,eAAe,CAAC,EAAE,CACd,KAAK,EAAE,OAAO,EACd,OAAO,CAAC,EAAE,oBAAoB,KAC7B,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC,CAAC;IAErC;;;;;;;;;;;;;;;;;;;;;;;OAuBG;IACH,mBAAmB,CAAC,EAAE,CAClB,IAAI,EAAE,OAAO,KACZ,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC,GAAG,sBAAsB,GAAG,IAAI,CAAC;IAE5E;;;;;;;;;;;;;;;OAeG;IACH,iBAAiB,CAAC,EAAE,CAAC,QAAQ,EAAE,gBAAgB,KAAK,IAAI,CAAC;CAC5D;AAED;;;GAGG;AACH,MAAM,WAAW,OAAO;IACpB,CAAC,GAAG,EAAE,MAAM,GAAG;QACX,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,WAAW,CAAC;KAC3B,CAAC;CACL;AAMD;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,GAAG,CAAC;IACX,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,QAAQ,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CAC/E"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/tools/types.ts"],"names":[],"mappings":"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"}
@@ -2,12 +2,12 @@
2
2
  * Utility functions for converting various error types to proper Error instances
3
3
  * with meaningful messages instead of "[object Object]"
4
4
  */
5
- import type { IDextoLogger } from '../logger/v2/types.js';
5
+ import type { Logger } from '../logger/v2/types.js';
6
6
  /**
7
7
  * Converts any error value to an Error instance with a meaningful message
8
8
  *
9
9
  * @param error - The error value to convert (can be Error, object, string, etc.)
10
10
  * @returns Error instance with extracted or serialized message
11
11
  */
12
- export declare function toError(error: unknown, logger: IDextoLogger): Error;
12
+ export declare function toError(error: unknown, logger: Logger): Error;
13
13
  //# sourceMappingURL=error-conversion.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"error-conversion.d.ts","sourceRoot":"","sources":["../../src/utils/error-conversion.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,YAAY,GAAG,KAAK,CAkEnE"}
1
+ {"version":3,"file":"error-conversion.d.ts","sourceRoot":"","sources":["../../src/utils/error-conversion.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;;;GAKG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAkE7D"}
@@ -1,4 +1,4 @@
1
- import type { IDextoLogger } from '../logger/v2/types.js';
1
+ import type { Logger } from '../logger/v2/types.js';
2
2
  /**
3
3
  * Standard path resolver for logs/db/config/anything in dexto projects
4
4
  * Context-aware with dev mode support:
@@ -50,5 +50,5 @@ export declare function ensureDextoGlobalDirectory(): Promise<void>;
50
50
  * @param logger Optional logger instance for logging
51
51
  * @returns Absolute path to .env file for saving
52
52
  */
53
- export declare function getDextoEnvPath(startPath?: string, logger?: IDextoLogger): string;
53
+ export declare function getDextoEnvPath(startPath?: string, logger?: Logger): string;
54
54
  //# sourceMappingURL=path.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/utils/path.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAuCxF;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAI1E;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAe5E;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAW3C;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,SAAS,GAAE,MAAsB,GAAG,MAAM,GAAG,IAAI,CAKhF;AAMD;;GAEG;AACH,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAUhE;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,SAAS,GAAE,MAAsB,EAAE,MAAM,CAAC,EAAE,YAAY,GAAG,MAAM,CAkChG"}
1
+ {"version":3,"file":"path.d.ts","sourceRoot":"","sources":["../../src/utils/path.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;;;;;;;;;GAWG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,CAuCxF;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAI1E;AAED;;;;GAIG;AACH,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAe5E;AAED;;;;GAIG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAW3C;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,SAAS,GAAE,MAAsB,GAAG,MAAM,GAAG,IAAI,CAKhF;AAMD;;GAEG;AACH,wBAAsB,0BAA0B,IAAI,OAAO,CAAC,IAAI,CAAC,CAUhE;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,SAAS,GAAE,MAAsB,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAkC1F"}
@@ -31,7 +31,7 @@ __export(result_exports, {
31
31
  });
32
32
  module.exports = __toCommonJS(result_exports);
33
33
  var import_zod = require("zod");
34
- var import_types = require("../errors/types.cjs");
34
+ var import_types = require("../errors/types.js");
35
35
  const NonEmptyTrimmed = import_zod.z.string().transform((s) => s.trim()).refine((s) => s.length > 0, { message: "Required" });
36
36
  function isValidUrl(s) {
37
37
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../src/utils/result.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,KAAK,QAAQ,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,KAAK,EAAkB,KAAK,EAAE,MAAM,uBAAuB,CAAC;AAGnE,4CAA4C;AAC5C,eAAO,MAAM,eAAe,yEAG6B,CAAC;AAa1D,eAAO,MAAM,WAAW,kIAKT,CAAC;AAGhB,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,8CAUpE,CAAC;AAGP,eAAO,MAAM,yBAAyB,GAAI,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,4EAG5E,CAAC;AAGP,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,4EAWlE,CAAC;AAEN;;;;;GAKG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,IAC3B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;CAAE,GACzC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;CAAE,CAAC;AAExC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,EAAE,GAAI,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,MAAM,CAAC,EAAE,SAAQ,KAAK,CAAC,CAAC,CAAC,EAAO,KAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAI/E,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,OAAO,EAAE,QAAQ,KAAK,CAAC,CAAC,CAAC,EAAE,KAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAG3E,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,WAE9C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE;;;EAKhD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,WAAW,CAAC,CAAC,GAAG,OAAO,EACnC,GAAG,EAAE,QAAQ,EACb,QAAQ,GAAE,OAAO,GAAG,SAAmB,GACxC,KAAK,CAAC,CAAC,CAAC,EAAE,CA8CZ"}
1
+ {"version":3,"file":"result.d.ts","sourceRoot":"","sources":["../../src/utils/result.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,CAAC,EAAE,KAAK,QAAQ,EAAE,MAAM,KAAK,CAAC;AACvC,OAAO,KAAK,EAAkB,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAGhE,4CAA4C;AAC5C,eAAO,MAAM,eAAe,yEAG6B,CAAC;AAa1D,eAAO,MAAM,WAAW,kIAKT,CAAC;AAGhB,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,8CAUpE,CAAC;AAGP,eAAO,MAAM,yBAAyB,GAAI,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,4EAG5E,CAAC;AAGP,eAAO,MAAM,cAAc,GAAI,MAAM,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,4EAWlE,CAAC;AAEN;;;;;GAKG;AACH,MAAM,MAAM,MAAM,CAAC,CAAC,EAAE,CAAC,GAAG,OAAO,IAC3B;IAAE,EAAE,EAAE,IAAI,CAAC;IAAC,IAAI,EAAE,CAAC,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;CAAE,GACzC;IAAE,EAAE,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,CAAA;CAAE,CAAC;AAExC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,EAAE,GAAI,CAAC,EAAE,CAAC,GAAG,OAAO,EAAE,MAAM,CAAC,EAAE,SAAQ,KAAK,CAAC,CAAC,CAAC,EAAO,KAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAI/E,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,eAAO,MAAM,IAAI,GAAI,CAAC,GAAG,KAAK,EAAE,CAAC,GAAG,OAAO,EAAE,QAAQ,KAAK,CAAC,CAAC,CAAC,EAAE,KAAG,MAAM,CAAC,CAAC,EAAE,CAAC,CAG3E,CAAC;AAEH;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,WAE9C;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE;;;EAKhD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,WAAW,CAAC,CAAC,GAAG,OAAO,EACnC,GAAG,EAAE,QAAQ,EACb,QAAQ,GAAE,OAAO,GAAG,SAAmB,GACxC,KAAK,CAAC,CAAC,CAAC,EAAE,CA8CZ"}
@@ -24,16 +24,20 @@ module.exports = __toCommonJS(schema_exports);
24
24
  var import_zod_to_json_schema = require("zod-to-json-schema");
25
25
  function convertZodSchemaToJsonSchema(zodSchema, logger) {
26
26
  try {
27
- return (0, import_zod_to_json_schema.zodToJsonSchema)(zodSchema);
27
+ const converted = (0, import_zod_to_json_schema.zodToJsonSchema)(zodSchema);
28
+ if (converted && typeof converted === "object") {
29
+ return converted;
30
+ }
31
+ logger.warn("Failed to convert Zod schema to JSON Schema: conversion returned non-object");
28
32
  } catch (error) {
29
33
  logger.warn(
30
34
  `Failed to convert Zod schema to JSON Schema: ${error instanceof Error ? error.message : String(error)}`
31
35
  );
32
- return {
33
- type: "object",
34
- properties: {}
35
- };
36
36
  }
37
+ return {
38
+ type: "object",
39
+ properties: {}
40
+ };
37
41
  }
38
42
  // Annotate the CommonJS export names for ESM import in node:
39
43
  0 && (module.exports = {
@@ -1,4 +1,6 @@
1
- import type { IDextoLogger } from '../logger/v2/types.js';
1
+ import type { JSONSchema7 } from 'json-schema';
2
+ import type { ZodSchema } from 'zod';
3
+ import type { Logger } from '../logger/v2/types.js';
2
4
  /**
3
5
  * Convert Zod schema to JSON Schema format for tool parameters
4
6
  *
@@ -8,5 +10,5 @@ import type { IDextoLogger } from '../logger/v2/types.js';
8
10
  * Zod v4 has native toJsonSchema() support - migrate when upgrading to Zod v4.
9
11
  * See: https://github.com/StefanTerdell/zod-to-json-schema
10
12
  */
11
- export declare function convertZodSchemaToJsonSchema(zodSchema: any, logger: IDextoLogger): any;
13
+ export declare function convertZodSchemaToJsonSchema(zodSchema: ZodSchema, logger: Logger): JSONSchema7;
12
14
  //# sourceMappingURL=schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/utils/schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAE1D;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,GAAG,GAAG,CActF"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/utils/schema.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,KAAK,CAAC;AACrC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAEpD;;;;;;;;GAQG;AACH,wBAAgB,4BAA4B,CAAC,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,WAAW,CAoB9F"}
@@ -2,16 +2,20 @@ import "../chunk-PTJYTZNU.js";
2
2
  import { zodToJsonSchema } from "zod-to-json-schema";
3
3
  function convertZodSchemaToJsonSchema(zodSchema, logger) {
4
4
  try {
5
- return zodToJsonSchema(zodSchema);
5
+ const converted = zodToJsonSchema(zodSchema);
6
+ if (converted && typeof converted === "object") {
7
+ return converted;
8
+ }
9
+ logger.warn("Failed to convert Zod schema to JSON Schema: conversion returned non-object");
6
10
  } catch (error) {
7
11
  logger.warn(
8
12
  `Failed to convert Zod schema to JSON Schema: ${error instanceof Error ? error.message : String(error)}`
9
13
  );
10
- return {
11
- type: "object",
12
- properties: {}
13
- };
14
14
  }
15
+ return {
16
+ type: "object",
17
+ properties: {}
18
+ };
15
19
  }
16
20
  export {
17
21
  convertZodSchemaToJsonSchema
@@ -37,15 +37,14 @@ var import_manager2 = require("../systemPrompt/manager.js");
37
37
  var import_state_manager = require("../agent/state-manager.js");
38
38
  var import_session = require("../session/index.js");
39
39
  var import_search = require("../search/index.js");
40
- var import_path = require("path");
41
- var import_storage = require("../storage/index.js");
40
+ var import_errors = require("../agent/errors.js");
41
+ var import_workspace = require("../workspace/index.js");
42
42
  var import_factory = require("../tools/confirmation/allowed-tools-provider/factory.js");
43
43
  var import_manager3 = require("../resources/manager.js");
44
44
  var import_manager4 = require("../approval/manager.js");
45
45
  var import_memory = require("../memory/index.js");
46
- var import_manager5 = require("../plugins/manager.js");
47
- var import_builtins = require("../plugins/registrations/builtins.js");
48
- async function createAgentServices(config, configPath, logger, agentEventBus, overrides) {
46
+ var import_manager5 = require("../hooks/manager.js");
47
+ async function createAgentServices(config, logger, agentEventBus, overrides, compactionStrategy) {
49
48
  if (config.telemetry?.enabled) {
50
49
  const { Telemetry } = await import("../telemetry/telemetry.js");
51
50
  await Telemetry.init(config.telemetry);
@@ -53,18 +52,29 @@ async function createAgentServices(config, configPath, logger, agentEventBus, ov
53
52
  }
54
53
  logger.debug("Using pre-created agent event bus");
55
54
  logger.debug("Initializing storage manager");
56
- const storageManager = await (0, import_storage.createStorageManager)(config.storage, logger);
57
- logger.debug("Storage manager initialized", {
58
- cache: config.storage.cache.type,
59
- database: config.storage.database.type
60
- });
55
+ const storageManager = overrides?.storageManager ?? (() => {
56
+ throw import_errors.AgentError.initializationFailed(
57
+ "StorageManager must be provided via overrides.storageManager during the DI refactor"
58
+ );
59
+ })();
60
+ if (!storageManager.isConnected()) {
61
+ await storageManager.initialize();
62
+ await storageManager.connect();
63
+ }
64
+ logger.debug("Storage manager initialized", await storageManager.getInfo());
65
+ const workspaceManager = new import_workspace.WorkspaceManager(
66
+ storageManager.getDatabase(),
67
+ agentEventBus,
68
+ logger
69
+ );
70
+ logger.debug("Workspace manager initialized");
61
71
  logger.debug("Initializing approval manager");
62
72
  const approvalManager = new import_manager4.ApprovalManager(
63
73
  {
64
- toolConfirmation: {
65
- mode: config.toolConfirmation.mode,
66
- ...config.toolConfirmation.timeout !== void 0 && {
67
- timeout: config.toolConfirmation.timeout
74
+ permissions: {
75
+ mode: config.permissions.mode,
76
+ ...config.permissions.timeout !== void 0 && {
77
+ timeout: config.permissions.timeout
68
78
  }
69
79
  },
70
80
  elicitation: {
@@ -77,7 +87,7 @@ async function createAgentServices(config, configPath, logger, agentEventBus, ov
77
87
  logger
78
88
  );
79
89
  logger.debug("Approval system initialized");
80
- const mcpManager = new import_manager.MCPManager(logger);
90
+ const mcpManager = new import_manager.MCPManager(logger, agentEventBus);
81
91
  if (overrides?.mcpAuthProviderFactory) {
82
92
  mcpManager.setAuthProviderFactory(overrides.mcpAuthProviderFactory);
83
93
  }
@@ -87,81 +97,62 @@ async function createAgentServices(config, configPath, logger, agentEventBus, ov
87
97
  const searchService = new import_search.SearchService(storageManager.getDatabase(), logger);
88
98
  const memoryManager = new import_memory.MemoryManager(storageManager.getDatabase(), logger);
89
99
  logger.debug("Memory manager initialized");
90
- const configDir = configPath ? (0, import_path.dirname)((0, import_path.resolve)(configPath)) : process.cwd();
91
- const pluginManager = new import_manager5.PluginManager(
100
+ const hooks = overrides?.hooks ?? [];
101
+ const hookManager = new import_manager5.HookManager(
92
102
  {
93
103
  agentEventBus,
94
- storageManager,
95
- configDir
104
+ storageManager
96
105
  },
106
+ hooks,
97
107
  logger
98
108
  );
99
- (0, import_builtins.registerBuiltInPlugins)({ pluginManager, config });
100
- logger.debug("Built-in plugins registered");
101
- await pluginManager.initialize(config.plugins.custom, config.plugins.registry);
102
- logger.info("Plugin manager initialized");
109
+ await hookManager.initialize();
110
+ logger.info("Hook manager initialized");
103
111
  const resourceManager = new import_manager3.ResourceManager(
104
112
  mcpManager,
105
113
  {
106
- internalResourcesConfig: config.internalResources,
114
+ resourcesConfig: config.resources,
107
115
  blobStore: storageManager.getBlobStore()
108
116
  },
117
+ agentEventBus,
109
118
  logger
110
119
  );
111
120
  await resourceManager.initialize();
112
121
  const allowedToolsProvider = (0, import_factory.createAllowedToolsProvider)(
113
122
  {
114
- type: config.toolConfirmation.allowedToolsStorage,
123
+ type: config.permissions.allowedToolsStorage,
115
124
  storageManager
116
125
  },
117
126
  logger
118
127
  );
119
- const internalToolsServices = {
120
- searchService,
121
- resourceManager
122
- };
123
128
  const toolManager = overrides?.toolManager ?? overrides?.toolManagerFactory?.({
124
129
  mcpManager,
125
130
  approvalManager,
126
131
  allowedToolsProvider,
127
- approvalMode: config.toolConfirmation.mode,
132
+ approvalMode: config.permissions.mode,
128
133
  agentEventBus,
129
- toolPolicies: config.toolConfirmation.toolPolicies,
130
- internalToolsConfig: config.internalTools,
131
- customToolsConfig: config.customTools,
132
- internalToolsServices,
134
+ toolPolicies: config.permissions.toolPolicies,
135
+ tools: [],
133
136
  logger
134
137
  }) ?? new import_tool_manager.ToolManager(
135
138
  mcpManager,
136
139
  approvalManager,
137
140
  allowedToolsProvider,
138
- config.toolConfirmation.mode,
141
+ config.permissions.mode,
139
142
  agentEventBus,
140
- config.toolConfirmation.toolPolicies,
141
- {
142
- internalToolsServices,
143
- internalToolsConfig: config.internalTools,
144
- customToolsConfig: config.customTools
145
- },
143
+ config.permissions.toolPolicies,
144
+ [],
146
145
  logger
147
146
  );
147
+ toolManager.setWorkspaceManager(workspaceManager);
148
148
  const mcpServerCount = Object.keys(config.mcpServers).length;
149
149
  if (mcpServerCount === 0) {
150
150
  logger.info("Agent initialized without MCP servers - only built-in capabilities available");
151
151
  } else {
152
152
  logger.debug(`MCPManager initialized with ${mcpServerCount} MCP server(s)`);
153
153
  }
154
- if (config.internalTools.length === 0) {
155
- logger.info("No internal tools enabled by configuration");
156
- } else {
157
- logger.info(`Internal tools enabled: ${config.internalTools.join(", ")}`);
158
- }
159
- logger.debug(
160
- `[ServiceInitializer] Creating SystemPromptManager with configPath: ${configPath} \u2192 configDir: ${configDir}`
161
- );
162
154
  const systemPromptManager = new import_manager2.SystemPromptManager(
163
155
  config.systemPrompt,
164
- configDir,
165
156
  memoryManager,
166
157
  config.memories,
167
158
  logger
@@ -178,10 +169,13 @@ async function createAgentServices(config, configPath, logger, agentEventBus, ov
178
169
  // Add storage manager to session services
179
170
  resourceManager,
180
171
  // Add resource manager for blob storage
181
- pluginManager,
182
- // Add plugin manager for plugin execution
183
- mcpManager
172
+ hookManager,
173
+ // Add hook manager for hook execution
174
+ mcpManager,
184
175
  // Add MCP manager for ChatSession
176
+ compactionStrategy: compactionStrategy ?? null,
177
+ workspaceManager
178
+ // Workspace context propagation
185
179
  },
186
180
  {
187
181
  maxSessions: config.sessions?.maxSessions,
@@ -194,8 +188,8 @@ async function createAgentServices(config, configPath, logger, agentEventBus, ov
194
188
  );
195
189
  await sessionManager.init();
196
190
  logger.debug("Session manager initialized with storage support");
197
- toolManager.setPluginSupport(pluginManager, sessionManager, stateManager);
198
- logger.debug("Plugin support connected to ToolManager");
191
+ toolManager.setHookSupport(hookManager, sessionManager, stateManager);
192
+ logger.debug("Hook support connected to ToolManager");
199
193
  return {
200
194
  mcpManager,
201
195
  toolManager,
@@ -203,12 +197,13 @@ async function createAgentServices(config, configPath, logger, agentEventBus, ov
203
197
  agentEventBus,
204
198
  stateManager,
205
199
  sessionManager,
200
+ workspaceManager,
206
201
  searchService,
207
202
  storageManager,
208
203
  resourceManager,
209
204
  approvalManager,
210
205
  memoryManager,
211
- pluginManager
206
+ hookManager
212
207
  };
213
208
  }
214
209
  // Annotate the CommonJS export names for ESM import in node:
@@ -1,20 +1,23 @@
1
1
  import { MCPManager } from '../mcp/manager.js';
2
2
  import { ToolManager } from '../tools/tool-manager.js';
3
- import type { InternalToolsServices } from '../tools/internal-tools/registry.js';
4
- import type { InternalToolsConfig, CustomToolsConfig, ToolPolicies } from '../tools/schemas.js';
5
- import type { IAllowedToolsProvider } from '../tools/confirmation/allowed-tools-provider/types.js';
3
+ import type { ToolPolicies } from '../tools/schemas.js';
4
+ import type { Tool } from '../tools/types.js';
5
+ import type { AllowedToolsProvider } from '../tools/confirmation/allowed-tools-provider/types.js';
6
6
  import { SystemPromptManager } from '../systemPrompt/manager.js';
7
7
  import { AgentStateManager } from '../agent/state-manager.js';
8
8
  import { SessionManager } from '../session/index.js';
9
9
  import { SearchService } from '../search/index.js';
10
10
  import { StorageManager } from '../storage/index.js';
11
- import type { IDextoLogger } from '../logger/v2/types.js';
12
- import type { ValidatedAgentConfig } from '../agent/schemas.js';
11
+ import { WorkspaceManager } from '../workspace/index.js';
12
+ import type { Logger } from '../logger/v2/types.js';
13
+ import type { AgentRuntimeSettings } from '../agent/runtime-config.js';
13
14
  import { AgentEventBus } from '../events/index.js';
14
15
  import { ResourceManager } from '../resources/manager.js';
15
16
  import { ApprovalManager } from '../approval/manager.js';
16
17
  import { MemoryManager } from '../memory/index.js';
17
- import { PluginManager } from '../plugins/manager.js';
18
+ import { HookManager } from '../hooks/manager.js';
19
+ import type { Hook } from '../hooks/types.js';
20
+ import type { CompactionStrategy } from '../context/compaction/types.js';
18
21
  /**
19
22
  * Type for the core agent services returned by createAgentServices
20
23
  */
@@ -25,24 +28,23 @@ export type AgentServices = {
25
28
  agentEventBus: AgentEventBus;
26
29
  stateManager: AgentStateManager;
27
30
  sessionManager: SessionManager;
31
+ workspaceManager: WorkspaceManager;
28
32
  searchService: SearchService;
29
33
  storageManager: StorageManager;
30
34
  resourceManager: ResourceManager;
31
35
  approvalManager: ApprovalManager;
32
36
  memoryManager: MemoryManager;
33
- pluginManager: PluginManager;
37
+ hookManager: HookManager;
34
38
  };
35
39
  export type ToolManagerFactoryOptions = {
36
40
  mcpManager: MCPManager;
37
41
  approvalManager: ApprovalManager;
38
- allowedToolsProvider: IAllowedToolsProvider;
42
+ allowedToolsProvider: AllowedToolsProvider;
39
43
  approvalMode: 'manual' | 'auto-approve' | 'auto-deny';
40
44
  agentEventBus: AgentEventBus;
41
45
  toolPolicies: ToolPolicies;
42
- internalToolsConfig: InternalToolsConfig;
43
- customToolsConfig: CustomToolsConfig;
44
- internalToolsServices: InternalToolsServices & Record<string, unknown>;
45
- logger: IDextoLogger;
46
+ tools: Tool[];
47
+ logger: Logger;
46
48
  };
47
49
  export type ToolManagerFactory = (options: ToolManagerFactoryOptions) => ToolManager;
48
50
  export type InitializeServicesOptions = {
@@ -50,15 +52,16 @@ export type InitializeServicesOptions = {
50
52
  mcpAuthProviderFactory?: import('../mcp/types.js').McpAuthProviderFactory | null;
51
53
  toolManager?: ToolManager;
52
54
  toolManagerFactory?: ToolManagerFactory;
55
+ storageManager?: StorageManager;
56
+ hooks?: Hook[] | undefined;
53
57
  };
54
58
  /**
55
59
  * Initializes all agent services from a validated configuration.
56
60
  * @param config The validated agent configuration object
57
- * @param configPath Optional path to the config file (for relative path resolution)
58
61
  * @param logger Logger instance for this agent (dependency injection)
59
62
  * @param agentEventBus Pre-created event bus from DextoAgent constructor
60
63
  * @param overrides Optional service overrides for customization (e.g., sessionLoggerFactory)
61
64
  * @returns All the initialized services required for a Dexto agent
62
65
  */
63
- export declare function createAgentServices(config: ValidatedAgentConfig, configPath: string | undefined, logger: IDextoLogger, agentEventBus: AgentEventBus, overrides?: InitializeServicesOptions): Promise<AgentServices>;
66
+ export declare function createAgentServices(config: AgentRuntimeSettings, logger: Logger, agentEventBus: AgentEventBus, overrides?: InitializeServicesOptions, compactionStrategy?: CompactionStrategy | null | undefined): Promise<AgentServices>;
64
67
  //# sourceMappingURL=service-initializer.d.ts.map