@dexto/core 1.5.8 → 1.6.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 (658) hide show
  1. package/README.md +19 -8
  2. package/dist/agent/DextoAgent.cjs +318 -159
  3. package/dist/agent/DextoAgent.d.ts +94 -56
  4. package/dist/agent/DextoAgent.d.ts.map +1 -1
  5. package/dist/agent/DextoAgent.js +315 -156
  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 +8 -9197
  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 +163 -83
  38. package/dist/approval/manager.d.ts +50 -43
  39. package/dist/approval/manager.d.ts.map +1 -1
  40. package/dist/approval/manager.js +161 -81
  41. package/dist/approval/schemas.cjs +47 -32
  42. package/dist/approval/schemas.d.ts +291 -97
  43. package/dist/approval/schemas.d.ts.map +1 -1
  44. package/dist/approval/schemas.js +43 -28
  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 +5 -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 +3 -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 +48 -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 +26 -45
  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 +8 -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 +12 -12
  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 +10 -149
  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 +8 -15
  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 +8 -15
  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.cjs +35 -0
  166. package/dist/logger/v2/dexto-logger.d.ts +22 -3
  167. package/dist/logger/v2/dexto-logger.d.ts.map +1 -1
  168. package/dist/logger/v2/dexto-logger.js +35 -0
  169. package/dist/logger/v2/schemas.d.ts +6 -6
  170. package/dist/logger/v2/test-utils.cjs +2 -0
  171. package/dist/logger/v2/test-utils.d.ts +5 -5
  172. package/dist/logger/v2/test-utils.d.ts.map +1 -1
  173. package/dist/logger/v2/test-utils.js +2 -0
  174. package/dist/logger/v2/transport-factory.d.ts +3 -3
  175. package/dist/logger/v2/transport-factory.d.ts.map +1 -1
  176. package/dist/logger/v2/transports/console-transport.d.ts +2 -2
  177. package/dist/logger/v2/transports/console-transport.d.ts.map +1 -1
  178. package/dist/logger/v2/transports/file-transport.d.ts +2 -2
  179. package/dist/logger/v2/transports/file-transport.d.ts.map +1 -1
  180. package/dist/logger/v2/transports/silent-transport.d.ts +2 -2
  181. package/dist/logger/v2/transports/silent-transport.d.ts.map +1 -1
  182. package/dist/logger/v2/types.cjs +1 -1
  183. package/dist/logger/v2/types.d.ts +22 -9
  184. package/dist/logger/v2/types.d.ts.map +1 -1
  185. package/dist/logger/v2/types.js +1 -1
  186. package/dist/mcp/errors.cjs +2 -2
  187. package/dist/mcp/errors.d.ts.map +1 -1
  188. package/dist/mcp/manager.cjs +16 -11
  189. package/dist/mcp/manager.d.ts +16 -13
  190. package/dist/mcp/manager.d.ts.map +1 -1
  191. package/dist/mcp/manager.js +17 -12
  192. package/dist/mcp/mcp-client.cjs +25 -20
  193. package/dist/mcp/mcp-client.d.ts +5 -5
  194. package/dist/mcp/mcp-client.d.ts.map +1 -1
  195. package/dist/mcp/mcp-client.js +20 -15
  196. package/dist/mcp/resolver.cjs +1 -1
  197. package/dist/mcp/schemas.cjs +5 -5
  198. package/dist/mcp/schemas.d.ts +19 -19
  199. package/dist/mcp/schemas.js +2 -2
  200. package/dist/mcp/types.d.ts +7 -7
  201. package/dist/mcp/types.d.ts.map +1 -1
  202. package/dist/memory/manager.d.ts +2 -2
  203. package/dist/memory/manager.d.ts.map +1 -1
  204. package/dist/memory/schemas.d.ts +2 -2
  205. package/dist/prompts/errors.cjs +3 -3
  206. package/dist/prompts/errors.d.ts.map +1 -1
  207. package/dist/prompts/prompt-manager.d.ts +3 -3
  208. package/dist/prompts/prompt-manager.d.ts.map +1 -1
  209. package/dist/prompts/providers/config-prompt-provider.cjs +15 -29
  210. package/dist/prompts/providers/config-prompt-provider.d.ts +3 -3
  211. package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -1
  212. package/dist/prompts/providers/config-prompt-provider.js +15 -29
  213. package/dist/prompts/providers/custom-prompt-provider.d.ts +2 -2
  214. package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -1
  215. package/dist/prompts/providers/mcp-prompt-provider.d.ts +2 -2
  216. package/dist/prompts/providers/mcp-prompt-provider.d.ts.map +1 -1
  217. package/dist/prompts/schemas.d.ts +7 -7
  218. package/dist/resources/{internal-provider.cjs → agent-resources-provider.cjs} +16 -16
  219. package/dist/resources/{internal-provider.d.ts → agent-resources-provider.d.ts} +6 -6
  220. package/dist/resources/agent-resources-provider.d.ts.map +1 -0
  221. package/dist/resources/{internal-provider.js → agent-resources-provider.js} +13 -13
  222. package/dist/resources/errors.cjs +2 -2
  223. package/dist/resources/errors.d.ts.map +1 -1
  224. package/dist/resources/handlers/blob-handler.d.ts +2 -2
  225. package/dist/resources/handlers/blob-handler.d.ts.map +1 -1
  226. package/dist/resources/handlers/factory.d.ts +3 -3
  227. package/dist/resources/handlers/factory.d.ts.map +1 -1
  228. package/dist/resources/handlers/filesystem-handler.d.ts +2 -2
  229. package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
  230. package/dist/resources/index.cjs +7 -9
  231. package/dist/resources/index.d.ts +3 -3
  232. package/dist/resources/index.d.ts.map +1 -1
  233. package/dist/resources/index.js +5 -10
  234. package/dist/resources/manager.cjs +77 -74
  235. package/dist/resources/manager.d.ts +16 -7
  236. package/dist/resources/manager.d.ts.map +1 -1
  237. package/dist/resources/manager.js +77 -74
  238. package/dist/resources/schemas.cjs +6 -26
  239. package/dist/resources/schemas.d.ts +8 -100
  240. package/dist/resources/schemas.d.ts.map +1 -1
  241. package/dist/resources/schemas.js +4 -23
  242. package/dist/search/search-service.d.ts +2 -2
  243. package/dist/search/search-service.d.ts.map +1 -1
  244. package/dist/session/chat-session.cjs +15 -25
  245. package/dist/session/chat-session.d.ts +7 -5
  246. package/dist/session/chat-session.d.ts.map +1 -1
  247. package/dist/session/chat-session.js +16 -26
  248. package/dist/session/errors.cjs +2 -2
  249. package/dist/session/errors.d.ts.map +1 -1
  250. package/dist/session/history/database.cjs +1 -1
  251. package/dist/session/history/database.d.ts +4 -4
  252. package/dist/session/history/database.d.ts.map +1 -1
  253. package/dist/session/history/factory.d.ts +3 -3
  254. package/dist/session/history/factory.d.ts.map +1 -1
  255. package/dist/session/history/memory.d.ts +4 -4
  256. package/dist/session/history/memory.d.ts.map +1 -1
  257. package/dist/session/history/types.d.ts +2 -2
  258. package/dist/session/history/types.d.ts.map +1 -1
  259. package/dist/session/index.cjs +3 -0
  260. package/dist/session/index.d.ts +2 -0
  261. package/dist/session/index.d.ts.map +1 -1
  262. package/dist/session/index.js +2 -0
  263. package/dist/session/message-queue.d.ts +2 -2
  264. package/dist/session/message-queue.d.ts.map +1 -1
  265. package/dist/session/session-manager.cjs +67 -9
  266. package/dist/session/session-manager.d.ts +46 -7
  267. package/dist/session/session-manager.d.ts.map +1 -1
  268. package/dist/session/session-manager.js +67 -9
  269. package/dist/session/title-generator.cjs +2 -2
  270. package/dist/session/title-generator.d.ts +2 -2
  271. package/dist/session/title-generator.d.ts.map +1 -1
  272. package/dist/storage/blob/index.cjs +0 -40
  273. package/dist/storage/blob/index.d.ts +2 -44
  274. package/dist/storage/blob/index.d.ts.map +1 -1
  275. package/dist/storage/blob/index.js +0 -30
  276. package/dist/storage/cache/index.cjs +0 -37
  277. package/dist/storage/cache/index.d.ts +0 -42
  278. package/dist/storage/cache/index.d.ts.map +1 -1
  279. package/dist/storage/cache/index.js +0 -28
  280. package/dist/storage/database/index.cjs +0 -42
  281. package/dist/storage/database/index.d.ts +0 -43
  282. package/dist/storage/database/index.d.ts.map +1 -1
  283. package/dist/storage/database/index.js +0 -37
  284. package/dist/storage/error-codes.cjs +1 -6
  285. package/dist/storage/error-codes.d.ts +2 -7
  286. package/dist/storage/error-codes.d.ts.map +1 -1
  287. package/dist/storage/error-codes.js +1 -6
  288. package/dist/storage/errors.cjs +18 -82
  289. package/dist/storage/errors.d.ts +4 -24
  290. package/dist/storage/errors.d.ts.map +1 -1
  291. package/dist/storage/errors.js +16 -80
  292. package/dist/storage/index.cjs +8 -69
  293. package/dist/storage/index.d.ts +11 -66
  294. package/dist/storage/index.d.ts.map +1 -1
  295. package/dist/storage/index.js +6 -50
  296. package/dist/storage/storage-manager.cjs +9 -25
  297. package/dist/storage/storage-manager.d.ts +11 -15
  298. package/dist/storage/storage-manager.d.ts.map +1 -1
  299. package/dist/storage/storage-manager.js +8 -23
  300. package/dist/storage/types.d.ts +0 -1
  301. package/dist/storage/types.d.ts.map +1 -1
  302. package/dist/systemPrompt/contributors.d.ts +4 -4
  303. package/dist/systemPrompt/contributors.d.ts.map +1 -1
  304. package/dist/systemPrompt/errors.cjs +2 -2
  305. package/dist/systemPrompt/errors.d.ts.map +1 -1
  306. package/dist/systemPrompt/in-built-prompts.cjs +5 -5
  307. package/dist/systemPrompt/in-built-prompts.d.ts +1 -1
  308. package/dist/systemPrompt/in-built-prompts.d.ts.map +1 -1
  309. package/dist/systemPrompt/in-built-prompts.js +5 -5
  310. package/dist/systemPrompt/manager.cjs +1 -5
  311. package/dist/systemPrompt/manager.d.ts +2 -3
  312. package/dist/systemPrompt/manager.d.ts.map +1 -1
  313. package/dist/systemPrompt/manager.js +1 -5
  314. package/dist/systemPrompt/schemas.d.ts +5 -5
  315. package/dist/systemPrompt/types.d.ts +11 -0
  316. package/dist/systemPrompt/types.d.ts.map +1 -1
  317. package/dist/telemetry/index.cjs +3 -0
  318. package/dist/telemetry/index.d.ts +2 -0
  319. package/dist/telemetry/index.d.ts.map +1 -1
  320. package/dist/telemetry/index.js +2 -0
  321. package/dist/telemetry/utils.d.ts +4 -4
  322. package/dist/telemetry/utils.d.ts.map +1 -1
  323. package/dist/test-utils/in-memory-storage.cjs +288 -0
  324. package/dist/test-utils/in-memory-storage.js +252 -0
  325. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts +3 -3
  326. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts.map +1 -1
  327. package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.ts +2 -2
  328. package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.ts.map +1 -1
  329. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts +4 -4
  330. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts.map +1 -1
  331. package/dist/tools/confirmation/allowed-tools-provider/types.d.ts +2 -2
  332. package/dist/tools/confirmation/allowed-tools-provider/types.d.ts.map +1 -1
  333. package/dist/tools/{internal-tools/constants.cjs → define-tool.cjs} +8 -13
  334. package/dist/tools/define-tool.d.ts +11 -0
  335. package/dist/tools/define-tool.d.ts.map +1 -0
  336. package/dist/tools/define-tool.js +7 -0
  337. package/dist/tools/display-types.d.ts +10 -0
  338. package/dist/tools/display-types.d.ts.map +1 -1
  339. package/dist/tools/error-codes.cjs +2 -2
  340. package/dist/tools/error-codes.d.ts +2 -2
  341. package/dist/tools/error-codes.d.ts.map +1 -1
  342. package/dist/tools/error-codes.js +2 -2
  343. package/dist/tools/errors.cjs +11 -23
  344. package/dist/tools/errors.d.ts +4 -10
  345. package/dist/tools/errors.d.ts.map +1 -1
  346. package/dist/tools/errors.js +9 -21
  347. package/dist/tools/index.cjs +6 -9
  348. package/dist/tools/index.d.ts +3 -4
  349. package/dist/tools/index.d.ts.map +1 -1
  350. package/dist/tools/index.js +3 -7
  351. package/dist/{storage/blob/providers/index.cjs → tools/pattern-utils.cjs} +11 -9
  352. package/dist/tools/pattern-utils.d.ts +20 -0
  353. package/dist/tools/pattern-utils.d.ts.map +1 -0
  354. package/dist/tools/pattern-utils.js +10 -0
  355. package/dist/{storage/cache/factory.cjs → tools/presentation.cjs} +26 -15
  356. package/dist/tools/presentation.d.ts +11 -0
  357. package/dist/tools/presentation.d.ts.map +1 -0
  358. package/dist/tools/presentation.js +24 -0
  359. package/dist/tools/schemas.cjs +14 -40
  360. package/dist/tools/schemas.d.ts +6 -50
  361. package/dist/tools/schemas.d.ts.map +1 -1
  362. package/dist/tools/schemas.js +11 -32
  363. package/dist/tools/tool-call-metadata.cjs +3 -3
  364. package/dist/tools/tool-call-metadata.d.ts +1 -1
  365. package/dist/tools/tool-call-metadata.d.ts.map +1 -1
  366. package/dist/tools/tool-call-metadata.js +3 -3
  367. package/dist/tools/tool-manager.cjs +608 -392
  368. package/dist/tools/tool-manager.d.ts +79 -98
  369. package/dist/tools/tool-manager.d.ts.map +1 -1
  370. package/dist/tools/tool-manager.js +608 -396
  371. package/dist/tools/types.d.ts +223 -45
  372. package/dist/tools/types.d.ts.map +1 -1
  373. package/dist/utils/error-conversion.d.ts +2 -2
  374. package/dist/utils/error-conversion.d.ts.map +1 -1
  375. package/dist/utils/path.cjs +10 -1
  376. package/dist/utils/path.d.ts +7 -4
  377. package/dist/utils/path.d.ts.map +1 -1
  378. package/dist/utils/path.js +10 -1
  379. package/dist/utils/result.cjs +1 -1
  380. package/dist/utils/result.d.ts.map +1 -1
  381. package/dist/utils/schema.cjs +9 -5
  382. package/dist/utils/schema.d.ts +4 -2
  383. package/dist/utils/schema.d.ts.map +1 -1
  384. package/dist/utils/schema.js +9 -5
  385. package/dist/utils/service-initializer.cjs +51 -56
  386. package/dist/utils/service-initializer.d.ts +17 -14
  387. package/dist/utils/service-initializer.d.ts.map +1 -1
  388. package/dist/utils/service-initializer.js +51 -56
  389. package/dist/{storage/cache/providers/index.cjs → workspace/error-codes.cjs} +8 -9
  390. package/dist/workspace/error-codes.d.ts +5 -0
  391. package/dist/workspace/error-codes.d.ts.map +1 -0
  392. package/dist/workspace/error-codes.js +7 -0
  393. package/dist/{storage/blob/factory.cjs → workspace/errors.cjs} +20 -14
  394. package/dist/workspace/errors.d.ts +5 -0
  395. package/dist/workspace/errors.d.ts.map +1 -0
  396. package/dist/workspace/errors.js +21 -0
  397. package/dist/{image → workspace}/index.cjs +12 -10
  398. package/dist/workspace/index.d.ts +5 -0
  399. package/dist/workspace/index.d.ts.map +1 -0
  400. package/dist/workspace/index.js +9 -0
  401. package/dist/workspace/manager.cjs +113 -0
  402. package/dist/workspace/manager.d.ts +18 -0
  403. package/dist/workspace/manager.d.ts.map +1 -0
  404. package/dist/workspace/manager.js +90 -0
  405. package/dist/workspace/types.d.ts +14 -0
  406. package/dist/workspace/types.d.ts.map +1 -0
  407. package/package.json +2 -2
  408. package/dist/context/compaction/factory.cjs +0 -57
  409. package/dist/context/compaction/factory.d.ts +0 -17
  410. package/dist/context/compaction/factory.d.ts.map +0 -1
  411. package/dist/context/compaction/factory.js +0 -34
  412. package/dist/context/compaction/provider.d.ts +0 -48
  413. package/dist/context/compaction/provider.d.ts.map +0 -1
  414. package/dist/context/compaction/providers/noop-provider.d.ts +0 -24
  415. package/dist/context/compaction/providers/noop-provider.d.ts.map +0 -1
  416. package/dist/context/compaction/providers/noop-provider.js +0 -24
  417. package/dist/context/compaction/providers/reactive-overflow-provider.cjs +0 -76
  418. package/dist/context/compaction/providers/reactive-overflow-provider.d.ts +0 -51
  419. package/dist/context/compaction/providers/reactive-overflow-provider.d.ts.map +0 -1
  420. package/dist/context/compaction/providers/reactive-overflow-provider.js +0 -52
  421. package/dist/context/compaction/registry.cjs +0 -39
  422. package/dist/context/compaction/registry.d.ts +0 -19
  423. package/dist/context/compaction/registry.d.ts.map +0 -1
  424. package/dist/context/compaction/registry.js +0 -16
  425. package/dist/context/compaction/schemas.cjs +0 -58
  426. package/dist/context/compaction/schemas.d.ts +0 -69
  427. package/dist/context/compaction/schemas.d.ts.map +0 -1
  428. package/dist/context/compaction/schemas.js +0 -34
  429. package/dist/context/compaction/strategies/reactive-overflow.d.ts.map +0 -1
  430. package/dist/image/define-image.cjs +0 -146
  431. package/dist/image/define-image.d.ts +0 -71
  432. package/dist/image/define-image.d.ts.map +0 -1
  433. package/dist/image/define-image.js +0 -121
  434. package/dist/image/index.d.ts +0 -53
  435. package/dist/image/index.d.ts.map +0 -1
  436. package/dist/image/index.js +0 -7
  437. package/dist/image/types.d.ts +0 -246
  438. package/dist/image/types.d.ts.map +0 -1
  439. package/dist/llm/services/test-utils.integration.cjs +0 -237
  440. package/dist/llm/services/test-utils.integration.d.ts +0 -48
  441. package/dist/llm/services/test-utils.integration.d.ts.map +0 -1
  442. package/dist/llm/services/test-utils.integration.js +0 -214
  443. package/dist/plugins/builtins/content-policy.d.ts +0 -26
  444. package/dist/plugins/builtins/content-policy.d.ts.map +0 -1
  445. package/dist/plugins/builtins/response-sanitizer.d.ts +0 -25
  446. package/dist/plugins/builtins/response-sanitizer.d.ts.map +0 -1
  447. package/dist/plugins/error-codes.cjs +0 -43
  448. package/dist/plugins/error-codes.d.ts +0 -34
  449. package/dist/plugins/error-codes.d.ts.map +0 -1
  450. package/dist/plugins/error-codes.js +0 -20
  451. package/dist/plugins/index.cjs +0 -61
  452. package/dist/plugins/index.d.ts +0 -21
  453. package/dist/plugins/index.d.ts.map +0 -1
  454. package/dist/plugins/index.js +0 -30
  455. package/dist/plugins/loader.cjs +0 -171
  456. package/dist/plugins/loader.d.ts +0 -30
  457. package/dist/plugins/loader.d.ts.map +0 -1
  458. package/dist/plugins/loader.js +0 -145
  459. package/dist/plugins/manager.cjs +0 -473
  460. package/dist/plugins/manager.d.ts +0 -106
  461. package/dist/plugins/manager.d.ts.map +0 -1
  462. package/dist/plugins/manager.js +0 -450
  463. package/dist/plugins/registrations/builtins.cjs +0 -51
  464. package/dist/plugins/registrations/builtins.d.ts +0 -17
  465. package/dist/plugins/registrations/builtins.d.ts.map +0 -1
  466. package/dist/plugins/registrations/builtins.js +0 -28
  467. package/dist/plugins/registry.cjs +0 -63
  468. package/dist/plugins/registry.d.ts +0 -101
  469. package/dist/plugins/registry.d.ts.map +0 -1
  470. package/dist/plugins/registry.js +0 -39
  471. package/dist/plugins/schemas.cjs +0 -73
  472. package/dist/plugins/schemas.d.ts +0 -195
  473. package/dist/plugins/schemas.d.ts.map +0 -1
  474. package/dist/plugins/schemas.js +0 -47
  475. package/dist/plugins/types.d.ts.map +0 -1
  476. package/dist/providers/base-registry.cjs +0 -147
  477. package/dist/providers/base-registry.d.ts +0 -147
  478. package/dist/providers/base-registry.d.ts.map +0 -1
  479. package/dist/providers/base-registry.js +0 -123
  480. package/dist/providers/discovery.cjs +0 -109
  481. package/dist/providers/discovery.d.ts +0 -96
  482. package/dist/providers/discovery.d.ts.map +0 -1
  483. package/dist/providers/discovery.js +0 -84
  484. package/dist/providers/index.cjs +0 -24
  485. package/dist/providers/index.d.ts +0 -32
  486. package/dist/providers/index.d.ts.map +0 -1
  487. package/dist/providers/index.js +0 -2
  488. package/dist/resources/internal-provider.d.ts.map +0 -1
  489. package/dist/storage/blob/factory.d.ts +0 -37
  490. package/dist/storage/blob/factory.d.ts.map +0 -1
  491. package/dist/storage/blob/factory.js +0 -15
  492. package/dist/storage/blob/local-blob-store.cjs +0 -496
  493. package/dist/storage/blob/local-blob-store.d.ts +0 -58
  494. package/dist/storage/blob/local-blob-store.d.ts.map +0 -1
  495. package/dist/storage/blob/local-blob-store.js +0 -463
  496. package/dist/storage/blob/memory-blob-store.cjs +0 -326
  497. package/dist/storage/blob/memory-blob-store.d.ts +0 -66
  498. package/dist/storage/blob/memory-blob-store.d.ts.map +0 -1
  499. package/dist/storage/blob/memory-blob-store.js +0 -303
  500. package/dist/storage/blob/provider.d.ts +0 -50
  501. package/dist/storage/blob/provider.d.ts.map +0 -1
  502. package/dist/storage/blob/providers/index.d.ts +0 -8
  503. package/dist/storage/blob/providers/index.d.ts.map +0 -1
  504. package/dist/storage/blob/providers/index.js +0 -7
  505. package/dist/storage/blob/providers/local.cjs +0 -39
  506. package/dist/storage/blob/providers/local.d.ts +0 -17
  507. package/dist/storage/blob/providers/local.d.ts.map +0 -1
  508. package/dist/storage/blob/providers/local.js +0 -16
  509. package/dist/storage/blob/providers/memory.cjs +0 -39
  510. package/dist/storage/blob/providers/memory.d.ts +0 -17
  511. package/dist/storage/blob/providers/memory.d.ts.map +0 -1
  512. package/dist/storage/blob/providers/memory.js +0 -16
  513. package/dist/storage/blob/registry.cjs +0 -50
  514. package/dist/storage/blob/registry.d.ts +0 -42
  515. package/dist/storage/blob/registry.d.ts.map +0 -1
  516. package/dist/storage/blob/registry.js +0 -26
  517. package/dist/storage/blob/schemas.cjs +0 -52
  518. package/dist/storage/blob/schemas.d.ts +0 -85
  519. package/dist/storage/blob/schemas.d.ts.map +0 -1
  520. package/dist/storage/blob/schemas.js +0 -26
  521. package/dist/storage/cache/factory.d.ts +0 -37
  522. package/dist/storage/cache/factory.d.ts.map +0 -1
  523. package/dist/storage/cache/factory.js +0 -15
  524. package/dist/storage/cache/memory-cache-store.cjs +0 -107
  525. package/dist/storage/cache/memory-cache-store.d.ts +0 -26
  526. package/dist/storage/cache/memory-cache-store.d.ts.map +0 -1
  527. package/dist/storage/cache/memory-cache-store.js +0 -84
  528. package/dist/storage/cache/provider.cjs +0 -16
  529. package/dist/storage/cache/provider.d.ts +0 -56
  530. package/dist/storage/cache/provider.d.ts.map +0 -1
  531. package/dist/storage/cache/provider.js +0 -0
  532. package/dist/storage/cache/providers/index.d.ts +0 -8
  533. package/dist/storage/cache/providers/index.d.ts.map +0 -1
  534. package/dist/storage/cache/providers/index.js +0 -7
  535. package/dist/storage/cache/providers/memory.d.ts +0 -17
  536. package/dist/storage/cache/providers/memory.d.ts.map +0 -1
  537. package/dist/storage/cache/providers/memory.js +0 -17
  538. package/dist/storage/cache/providers/redis.cjs +0 -66
  539. package/dist/storage/cache/providers/redis.d.ts +0 -20
  540. package/dist/storage/cache/providers/redis.d.ts.map +0 -1
  541. package/dist/storage/cache/providers/redis.js +0 -33
  542. package/dist/storage/cache/redis-store.cjs +0 -173
  543. package/dist/storage/cache/redis-store.d.ts +0 -32
  544. package/dist/storage/cache/redis-store.d.ts.map +0 -1
  545. package/dist/storage/cache/redis-store.js +0 -150
  546. package/dist/storage/cache/registry.cjs +0 -50
  547. package/dist/storage/cache/registry.d.ts +0 -42
  548. package/dist/storage/cache/registry.d.ts.map +0 -1
  549. package/dist/storage/cache/registry.js +0 -26
  550. package/dist/storage/cache/schemas.cjs +0 -81
  551. package/dist/storage/cache/schemas.d.ts +0 -150
  552. package/dist/storage/cache/schemas.d.ts.map +0 -1
  553. package/dist/storage/cache/schemas.js +0 -55
  554. package/dist/storage/database/factory.cjs +0 -38
  555. package/dist/storage/database/factory.d.ts +0 -39
  556. package/dist/storage/database/factory.d.ts.map +0 -1
  557. package/dist/storage/database/factory.js +0 -15
  558. package/dist/storage/database/memory-database-store.cjs +0 -122
  559. package/dist/storage/database/memory-database-store.d.ts +0 -29
  560. package/dist/storage/database/memory-database-store.d.ts.map +0 -1
  561. package/dist/storage/database/memory-database-store.js +0 -99
  562. package/dist/storage/database/postgres-store.cjs +0 -342
  563. package/dist/storage/database/postgres-store.d.ts +0 -55
  564. package/dist/storage/database/postgres-store.d.ts.map +0 -1
  565. package/dist/storage/database/postgres-store.js +0 -319
  566. package/dist/storage/database/provider.cjs +0 -16
  567. package/dist/storage/database/provider.d.ts +0 -56
  568. package/dist/storage/database/provider.d.ts.map +0 -1
  569. package/dist/storage/database/provider.js +0 -0
  570. package/dist/storage/database/providers/index.cjs +0 -34
  571. package/dist/storage/database/providers/index.d.ts +0 -9
  572. package/dist/storage/database/providers/index.d.ts.map +0 -1
  573. package/dist/storage/database/providers/index.js +0 -9
  574. package/dist/storage/database/providers/memory.cjs +0 -40
  575. package/dist/storage/database/providers/memory.d.ts +0 -16
  576. package/dist/storage/database/providers/memory.d.ts.map +0 -1
  577. package/dist/storage/database/providers/memory.js +0 -17
  578. package/dist/storage/database/providers/postgres.cjs +0 -62
  579. package/dist/storage/database/providers/postgres.d.ts +0 -19
  580. package/dist/storage/database/providers/postgres.d.ts.map +0 -1
  581. package/dist/storage/database/providers/postgres.js +0 -29
  582. package/dist/storage/database/providers/sqlite.cjs +0 -66
  583. package/dist/storage/database/providers/sqlite.d.ts +0 -20
  584. package/dist/storage/database/providers/sqlite.d.ts.map +0 -1
  585. package/dist/storage/database/providers/sqlite.js +0 -33
  586. package/dist/storage/database/registry.cjs +0 -50
  587. package/dist/storage/database/registry.d.ts +0 -42
  588. package/dist/storage/database/registry.d.ts.map +0 -1
  589. package/dist/storage/database/registry.js +0 -26
  590. package/dist/storage/database/schemas.cjs +0 -97
  591. package/dist/storage/database/schemas.d.ts +0 -226
  592. package/dist/storage/database/schemas.d.ts.map +0 -1
  593. package/dist/storage/database/schemas.js +0 -70
  594. package/dist/storage/database/sqlite-store.cjs +0 -270
  595. package/dist/storage/database/sqlite-store.d.ts +0 -33
  596. package/dist/storage/database/sqlite-store.d.ts.map +0 -1
  597. package/dist/storage/database/sqlite-store.js +0 -237
  598. package/dist/storage/schemas.cjs +0 -57
  599. package/dist/storage/schemas.d.ts +0 -347
  600. package/dist/storage/schemas.d.ts.map +0 -1
  601. package/dist/storage/schemas.js +0 -37
  602. package/dist/tools/bash-pattern-utils.cjs +0 -91
  603. package/dist/tools/bash-pattern-utils.d.ts +0 -58
  604. package/dist/tools/bash-pattern-utils.d.ts.map +0 -1
  605. package/dist/tools/bash-pattern-utils.js +0 -64
  606. package/dist/tools/custom-tool-registry.cjs +0 -64
  607. package/dist/tools/custom-tool-registry.d.ts +0 -126
  608. package/dist/tools/custom-tool-registry.d.ts.map +0 -1
  609. package/dist/tools/custom-tool-registry.js +0 -40
  610. package/dist/tools/custom-tool-schema-registry.cjs +0 -164
  611. package/dist/tools/custom-tool-schema-registry.d.ts +0 -86
  612. package/dist/tools/custom-tool-schema-registry.d.ts.map +0 -1
  613. package/dist/tools/custom-tool-schema-registry.js +0 -140
  614. package/dist/tools/internal-tools/constants.d.ts +0 -12
  615. package/dist/tools/internal-tools/constants.d.ts.map +0 -1
  616. package/dist/tools/internal-tools/constants.js +0 -12
  617. package/dist/tools/internal-tools/implementations/ask-user-tool.cjs +0 -57
  618. package/dist/tools/internal-tools/implementations/ask-user-tool.d.ts +0 -18
  619. package/dist/tools/internal-tools/implementations/ask-user-tool.d.ts.map +0 -1
  620. package/dist/tools/internal-tools/implementations/ask-user-tool.js +0 -34
  621. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.cjs +0 -192
  622. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts +0 -33
  623. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts.map +0 -1
  624. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.js +0 -169
  625. package/dist/tools/internal-tools/implementations/get-resource-tool.cjs +0 -113
  626. package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts +0 -30
  627. package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts.map +0 -1
  628. package/dist/tools/internal-tools/implementations/get-resource-tool.js +0 -90
  629. package/dist/tools/internal-tools/implementations/invoke-skill-tool.cjs +0 -140
  630. package/dist/tools/internal-tools/implementations/invoke-skill-tool.d.ts +0 -24
  631. package/dist/tools/internal-tools/implementations/invoke-skill-tool.d.ts.map +0 -1
  632. package/dist/tools/internal-tools/implementations/invoke-skill-tool.js +0 -117
  633. package/dist/tools/internal-tools/implementations/list-resources-tool.cjs +0 -91
  634. package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts +0 -24
  635. package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts.map +0 -1
  636. package/dist/tools/internal-tools/implementations/list-resources-tool.js +0 -68
  637. package/dist/tools/internal-tools/implementations/search-history-tool.cjs +0 -61
  638. package/dist/tools/internal-tools/implementations/search-history-tool.d.ts +0 -7
  639. package/dist/tools/internal-tools/implementations/search-history-tool.d.ts.map +0 -1
  640. package/dist/tools/internal-tools/implementations/search-history-tool.js +0 -38
  641. package/dist/tools/internal-tools/index.cjs +0 -26
  642. package/dist/tools/internal-tools/index.d.ts +0 -4
  643. package/dist/tools/internal-tools/index.d.ts.map +0 -1
  644. package/dist/tools/internal-tools/index.js +0 -3
  645. package/dist/tools/internal-tools/provider.cjs +0 -324
  646. package/dist/tools/internal-tools/provider.d.ts +0 -116
  647. package/dist/tools/internal-tools/provider.d.ts.map +0 -1
  648. package/dist/tools/internal-tools/provider.js +0 -301
  649. package/dist/tools/internal-tools/registry.cjs +0 -71
  650. package/dist/tools/internal-tools/registry.d.ts +0 -91
  651. package/dist/tools/internal-tools/registry.d.ts.map +0 -1
  652. package/dist/tools/internal-tools/registry.js +0 -47
  653. /package/dist/{context/compaction/provider.js → agent/agent-options.js} +0 -0
  654. /package/dist/{image/types.js → agent/runtime-config.js} +0 -0
  655. /package/dist/{image → hooks}/types.cjs +0 -0
  656. /package/dist/{plugins → hooks}/types.js +0 -0
  657. /package/dist/{plugins → workspace}/types.cjs +0 -0
  658. /package/dist/{storage/blob/provider.js → workspace/types.js} +0 -0
@@ -0,0 +1,331 @@
1
+ import "../chunk-PTJYTZNU.js";
2
+ import { DextoRuntimeError, ErrorScope, ErrorType } from "../errors/index.js";
3
+ import { HookErrorCode } from "./error-codes.js";
4
+ import { getContext } from "../utils/async-context.js";
5
+ import { DextoLogComponent } from "../logger/v2/types.js";
6
+ class HookManager {
7
+ hooks = [];
8
+ hooksByExtensionPoint = /* @__PURE__ */ new Map();
9
+ hookNameByInstance = /* @__PURE__ */ new WeakMap();
10
+ options;
11
+ initialized = false;
12
+ logger;
13
+ /** Default timeout for hook execution (milliseconds) */
14
+ static DEFAULT_TIMEOUT = 5e3;
15
+ constructor(options, hooks, logger) {
16
+ this.options = options;
17
+ this.logger = logger.createChild(DextoLogComponent.HOOK);
18
+ this.setHooks(hooks);
19
+ this.logger.debug("HookManager created");
20
+ }
21
+ /**
22
+ * Provide the concrete hooks this manager should orchestrate.
23
+ * Hooks must be fully resolved and initialized before calling `initialize()`.
24
+ */
25
+ setHooks(hooks) {
26
+ if (this.initialized) {
27
+ throw new DextoRuntimeError(
28
+ HookErrorCode.HOOK_CONFIGURATION_INVALID,
29
+ ErrorScope.HOOK,
30
+ ErrorType.SYSTEM,
31
+ "Cannot set hooks after initialization"
32
+ );
33
+ }
34
+ this.hooks = [...hooks];
35
+ this.hooksByExtensionPoint.clear();
36
+ this.hookNameByInstance = /* @__PURE__ */ new WeakMap();
37
+ for (const [index, hook] of this.hooks.entries()) {
38
+ this.hookNameByInstance.set(hook, this.deriveHookName(hook, index));
39
+ }
40
+ }
41
+ /**
42
+ * Initialize hook orchestration.
43
+ * Validates hook shapes and registers them to extension points.
44
+ * @throws {DextoRuntimeError} If any hook fails validation (fail-fast)
45
+ */
46
+ async initialize() {
47
+ if (this.initialized) {
48
+ throw new DextoRuntimeError(
49
+ HookErrorCode.HOOK_CONFIGURATION_INVALID,
50
+ ErrorScope.HOOK,
51
+ ErrorType.SYSTEM,
52
+ "HookManager already initialized"
53
+ );
54
+ }
55
+ for (const [index, hook] of this.hooks.entries()) {
56
+ this.assertValidHookShape(hook, index);
57
+ this.registerToExtensionPoints(hook);
58
+ }
59
+ for (const [extensionPoint, hooks] of this.hooksByExtensionPoint.entries()) {
60
+ this.logger.debug(
61
+ `Extension point '${extensionPoint}': ${hooks.length} hook(s) registered`
62
+ );
63
+ }
64
+ this.initialized = true;
65
+ this.logger.info(`HookManager initialized with ${this.hooks.length} hook(s)`);
66
+ }
67
+ /**
68
+ * Register a hook to the extension points it implements.
69
+ */
70
+ registerToExtensionPoints(hook) {
71
+ const extensionPoints = [
72
+ "beforeLLMRequest",
73
+ "beforeToolCall",
74
+ "afterToolResult",
75
+ "beforeResponse"
76
+ ];
77
+ for (const point of extensionPoints) {
78
+ if (typeof hook[point] === "function") {
79
+ if (!this.hooksByExtensionPoint.has(point)) {
80
+ this.hooksByExtensionPoint.set(point, []);
81
+ }
82
+ this.hooksByExtensionPoint.get(point).push(hook);
83
+ }
84
+ }
85
+ }
86
+ /**
87
+ * Execute all hooks at a specific extension point.
88
+ * Hooks execute sequentially in the order they were provided.
89
+ *
90
+ * @param extensionPoint - Which extension point to execute
91
+ * @param payload - Payload for this extension point (must be an object)
92
+ * @param options - Options for building execution context
93
+ * @returns Modified payload after all hooks execute
94
+ * @throws {DextoRuntimeError} If a hook cancels execution or payload is not an object
95
+ */
96
+ async executeHooks(extensionPoint, payload, options) {
97
+ const hooks = this.hooksByExtensionPoint.get(extensionPoint) || [];
98
+ if (hooks.length === 0) {
99
+ return payload;
100
+ }
101
+ if (payload === null || typeof payload !== "object") {
102
+ throw new DextoRuntimeError(
103
+ HookErrorCode.HOOK_INVALID_SHAPE,
104
+ ErrorScope.HOOK,
105
+ ErrorType.USER,
106
+ `Payload for ${extensionPoint} must be an object (got ${payload === null ? "null" : typeof payload})`,
107
+ { extensionPoint, payloadType: typeof payload }
108
+ );
109
+ }
110
+ let currentPayload = { ...payload };
111
+ const asyncCtx = getContext();
112
+ const llmConfig = options.stateManager.getLLMConfig(options.sessionId);
113
+ const context = {
114
+ sessionId: options.sessionId ?? void 0,
115
+ userId: asyncCtx?.userId ?? void 0,
116
+ tenantId: asyncCtx?.tenantId ?? void 0,
117
+ llmConfig,
118
+ logger: this.logger,
119
+ abortSignal: options.abortSignal ?? void 0,
120
+ agent: {
121
+ sessionManager: options.sessionManager,
122
+ mcpManager: options.mcpManager,
123
+ toolManager: options.toolManager,
124
+ stateManager: options.stateManager,
125
+ agentEventBus: this.options.agentEventBus,
126
+ storageManager: this.options.storageManager
127
+ }
128
+ };
129
+ for (const [index, hook] of hooks.entries()) {
130
+ const method = hook[extensionPoint];
131
+ if (!method) continue;
132
+ const hookName = this.hookNameByInstance.get(hook) ?? this.deriveHookName(hook, index);
133
+ const startTime = Date.now();
134
+ try {
135
+ const result = await this.executeWithTimeout(
136
+ method.call(hook, currentPayload, context),
137
+ hookName,
138
+ HookManager.DEFAULT_TIMEOUT
139
+ );
140
+ const duration = Date.now() - startTime;
141
+ this.logger.debug(`Hook '${hookName}' executed at ${extensionPoint}`, {
142
+ ok: result.ok,
143
+ cancelled: result.cancel,
144
+ duration,
145
+ hasModifications: !!result.modify
146
+ });
147
+ if (result.notices && result.notices.length > 0) {
148
+ for (const notice of result.notices) {
149
+ const level = notice.kind === "block" || notice.kind === "warn" ? "warn" : "info";
150
+ this.logger[level](`Hook notice (${notice.kind}): ${notice.message}`, {
151
+ hook: hookName,
152
+ code: notice.code,
153
+ details: notice.details
154
+ });
155
+ }
156
+ }
157
+ if (!result.ok) {
158
+ this.logger.warn(`Hook '${hookName}' returned error`, {
159
+ message: result.message
160
+ });
161
+ if (result.cancel) {
162
+ throw new DextoRuntimeError(
163
+ HookErrorCode.HOOK_BLOCKED_EXECUTION,
164
+ ErrorScope.HOOK,
165
+ ErrorType.FORBIDDEN,
166
+ result.message || `Operation blocked by hook '${hookName}'`,
167
+ {
168
+ hook: hookName,
169
+ extensionPoint,
170
+ notices: result.notices
171
+ }
172
+ );
173
+ }
174
+ continue;
175
+ }
176
+ if (result.modify) {
177
+ currentPayload = {
178
+ ...currentPayload,
179
+ ...result.modify
180
+ };
181
+ this.logger.debug(`Hook '${hookName}' modified payload`, {
182
+ keys: Object.keys(result.modify)
183
+ });
184
+ }
185
+ if (result.cancel) {
186
+ throw new DextoRuntimeError(
187
+ HookErrorCode.HOOK_BLOCKED_EXECUTION,
188
+ ErrorScope.HOOK,
189
+ ErrorType.FORBIDDEN,
190
+ result.message || `Operation cancelled by hook '${hookName}'`,
191
+ {
192
+ hook: hookName,
193
+ extensionPoint,
194
+ notices: result.notices
195
+ }
196
+ );
197
+ }
198
+ } catch (error) {
199
+ const duration = Date.now() - startTime;
200
+ if (error instanceof DextoRuntimeError) {
201
+ throw error;
202
+ }
203
+ this.logger.error(`Hook '${hookName}' threw error`, {
204
+ error: error instanceof Error ? error.message : String(error),
205
+ duration
206
+ });
207
+ throw new DextoRuntimeError(
208
+ HookErrorCode.HOOK_EXECUTION_FAILED,
209
+ ErrorScope.HOOK,
210
+ ErrorType.SYSTEM,
211
+ `Hook '${hookName}' failed: ${error instanceof Error ? error.message : String(error)}`,
212
+ {
213
+ hook: hookName,
214
+ extensionPoint
215
+ }
216
+ );
217
+ }
218
+ }
219
+ return currentPayload;
220
+ }
221
+ /**
222
+ * Execute a promise with timeout, properly clearing timer on completion
223
+ * Prevents timer leaks and unhandled rejections from Promise.race
224
+ */
225
+ async executeWithTimeout(promise, hookName, ms) {
226
+ let timer;
227
+ return await new Promise((resolve, reject) => {
228
+ timer = setTimeout(() => {
229
+ reject(
230
+ new DextoRuntimeError(
231
+ HookErrorCode.HOOK_EXECUTION_TIMEOUT,
232
+ ErrorScope.HOOK,
233
+ ErrorType.TIMEOUT,
234
+ `Hook '${hookName}' execution timed out after ${ms}ms`
235
+ )
236
+ );
237
+ }, ms);
238
+ promise.then(
239
+ (val) => {
240
+ if (timer) clearTimeout(timer);
241
+ resolve(val);
242
+ },
243
+ (err) => {
244
+ if (timer) clearTimeout(timer);
245
+ reject(err);
246
+ }
247
+ );
248
+ });
249
+ }
250
+ /**
251
+ * Cleanup all hooks.
252
+ * Called when agent shuts down
253
+ */
254
+ async cleanup() {
255
+ for (const [index, hook] of this.hooks.entries()) {
256
+ const hookName = this.hookNameByInstance.get(hook) ?? this.deriveHookName(hook, index);
257
+ if (hook.cleanup) {
258
+ try {
259
+ await hook.cleanup();
260
+ this.logger.debug(`Hook cleaned up: ${hookName}`);
261
+ } catch (error) {
262
+ this.logger.error(`Hook cleanup failed: ${hookName}`, {
263
+ error: error instanceof Error ? error.message : String(error)
264
+ });
265
+ }
266
+ }
267
+ }
268
+ this.logger.info("HookManager cleanup complete");
269
+ }
270
+ /**
271
+ * Get hook statistics.
272
+ */
273
+ getStats() {
274
+ const byExtensionPoint = {};
275
+ for (const [point, hooks] of this.hooksByExtensionPoint.entries()) {
276
+ byExtensionPoint[point] = hooks.length;
277
+ }
278
+ return {
279
+ total: this.hooks.length,
280
+ enabled: this.hooks.length,
281
+ byExtensionPoint
282
+ };
283
+ }
284
+ /**
285
+ * List hook display names in execution order.
286
+ *
287
+ * Names are derived from:
288
+ * - `hook.name` (if present)
289
+ * - constructor/class name (if available)
290
+ * - fallback `hook#N`
291
+ */
292
+ getHookNames() {
293
+ return this.hooks.map((hook, index) => {
294
+ return this.hookNameByInstance.get(hook) ?? this.deriveHookName(hook, index);
295
+ });
296
+ }
297
+ deriveHookName(hook, index) {
298
+ const maybeNamed = hook;
299
+ if (typeof maybeNamed.name === "string" && maybeNamed.name.trim().length > 0) {
300
+ return maybeNamed.name;
301
+ }
302
+ const ctorName = hook.constructor?.name;
303
+ if (typeof ctorName === "string" && ctorName !== "Object" && ctorName.trim().length > 0) {
304
+ return ctorName;
305
+ }
306
+ return `hook#${index + 1}`;
307
+ }
308
+ assertValidHookShape(hook, index) {
309
+ const extensionPoints = [
310
+ "beforeLLMRequest",
311
+ "beforeToolCall",
312
+ "afterToolResult",
313
+ "beforeResponse"
314
+ ];
315
+ const hasExtensionPoint = extensionPoints.some(
316
+ (point) => typeof hook[point] === "function"
317
+ );
318
+ if (!hasExtensionPoint) {
319
+ throw new DextoRuntimeError(
320
+ HookErrorCode.HOOK_INVALID_SHAPE,
321
+ ErrorScope.HOOK,
322
+ ErrorType.USER,
323
+ `Hook '${this.deriveHookName(hook, index)}' must implement at least one extension point method`,
324
+ { availableExtensionPoints: extensionPoints }
325
+ );
326
+ }
327
+ }
328
+ }
329
+ export {
330
+ HookManager
331
+ };
@@ -1,5 +1,5 @@
1
1
  import type { ValidatedLLMConfig } from '../llm/schemas.js';
2
- import type { IDextoLogger } from '../logger/v2/types.js';
2
+ import type { Logger } from '../logger/v2/types.js';
3
3
  import type { SessionManager } from '../session/index.js';
4
4
  import type { MCPManager } from '../mcp/manager.js';
5
5
  import type { ToolManager } from '../tools/tool-manager.js';
@@ -8,38 +8,38 @@ import type { AgentEventBus } from '../events/index.js';
8
8
  import type { StorageManager } from '../storage/index.js';
9
9
  /**
10
10
  * Extension point names - fixed for MVP
11
- * These are the 4 hook sites from PR #385 converted to generic plugin extension points
11
+ * These are the 4 hook sites from PR #385 converted to generic hook extension points.
12
12
  */
13
13
  export type ExtensionPoint = 'beforeLLMRequest' | 'beforeToolCall' | 'afterToolResult' | 'beforeResponse';
14
14
  /**
15
- * Plugin result - what plugins return from extension point methods
15
+ * Hook result - what hooks return from extension point methods.
16
16
  */
17
- export interface PluginResult {
18
- /** Did plugin execute successfully? */
17
+ export interface HookResult {
18
+ /** Did hook execute successfully? */
19
19
  ok: boolean;
20
20
  /** Partial modifications to apply to payload */
21
- modify?: Record<string, any>;
22
- /** Should execution stop? (Only respected if plugin is blocking) */
21
+ modify?: Record<string, unknown>;
22
+ /** Should execution stop immediately? When true, HookManager aborts execution regardless of ok. */
23
23
  cancel?: boolean;
24
24
  /** User-facing message (shown when cancelled) */
25
25
  message?: string;
26
26
  /** Notices for logging/events */
27
- notices?: PluginNotice[];
27
+ notices?: HookNotice[];
28
28
  }
29
29
  /**
30
- * Plugin notice - for logging and user feedback
30
+ * Hook notice - for logging and user feedback.
31
31
  */
32
- export interface PluginNotice {
32
+ export interface HookNotice {
33
33
  kind: 'allow' | 'block' | 'warn' | 'info';
34
34
  code?: string;
35
35
  message: string;
36
36
  details?: Record<string, unknown>;
37
37
  }
38
38
  /**
39
- * Execution context passed to every plugin method
39
+ * Execution context passed to every hook method.
40
40
  * Contains runtime state and read-only access to agent services
41
41
  */
42
- export interface PluginExecutionContext {
42
+ export interface HookExecutionContext {
43
43
  /** Current session ID */
44
44
  sessionId?: string | undefined;
45
45
  /** User ID (set by application layer via AsyncLocalStorage) */
@@ -48,8 +48,8 @@ export interface PluginExecutionContext {
48
48
  tenantId?: string | undefined;
49
49
  /** Current LLM configuration */
50
50
  llmConfig: ValidatedLLMConfig;
51
- /** Logger scoped to this plugin execution */
52
- logger: IDextoLogger;
51
+ /** Logger scoped to this hook execution */
52
+ logger: Logger;
53
53
  /** Abort signal for cancellation */
54
54
  abortSignal?: AbortSignal | undefined;
55
55
  /** Reference to agent services (read-only access) */
@@ -83,7 +83,7 @@ export interface BeforeLLMRequestPayload {
83
83
  */
84
84
  export interface BeforeToolCallPayload {
85
85
  toolName: string;
86
- args: any;
86
+ args: Record<string, unknown>;
87
87
  sessionId?: string;
88
88
  callId?: string;
89
89
  }
@@ -92,7 +92,7 @@ export interface BeforeToolCallPayload {
92
92
  */
93
93
  export interface AfterToolResultPayload {
94
94
  toolName: string;
95
- result: any;
95
+ result: unknown;
96
96
  success: boolean;
97
97
  sessionId?: string;
98
98
  callId?: string;
@@ -112,40 +112,21 @@ export interface BeforeResponsePayload {
112
112
  sessionId?: string;
113
113
  }
114
114
  /**
115
- * Main plugin interface - implement any subset of these methods
116
- * All methods are optional - plugin must implement at least one extension point
115
+ * Main hook type - implement any subset of these methods.
116
+ * All methods are optional - a hook must implement at least one extension point.
117
117
  */
118
- export interface DextoPlugin {
119
- /** Called once at plugin initialization (before agent starts) */
120
- initialize?(config: Record<string, any>): Promise<void>;
118
+ export type Hook = {
119
+ /** Called once at hook initialization (before agent starts). */
120
+ initialize?(config: Record<string, unknown>): Promise<void>;
121
121
  /** Extension point: before LLM request */
122
- beforeLLMRequest?(payload: BeforeLLMRequestPayload, context: PluginExecutionContext): Promise<PluginResult>;
122
+ beforeLLMRequest?(payload: BeforeLLMRequestPayload, context: HookExecutionContext): Promise<HookResult>;
123
123
  /** Extension point: before tool call */
124
- beforeToolCall?(payload: BeforeToolCallPayload, context: PluginExecutionContext): Promise<PluginResult>;
124
+ beforeToolCall?(payload: BeforeToolCallPayload, context: HookExecutionContext): Promise<HookResult>;
125
125
  /** Extension point: after tool result */
126
- afterToolResult?(payload: AfterToolResultPayload, context: PluginExecutionContext): Promise<PluginResult>;
126
+ afterToolResult?(payload: AfterToolResultPayload, context: HookExecutionContext): Promise<HookResult>;
127
127
  /** Extension point: before response */
128
- beforeResponse?(payload: BeforeResponsePayload, context: PluginExecutionContext): Promise<PluginResult>;
128
+ beforeResponse?(payload: BeforeResponsePayload, context: HookExecutionContext): Promise<HookResult>;
129
129
  /** Called when agent shuts down (cleanup) */
130
130
  cleanup?(): Promise<void>;
131
- }
132
- /**
133
- * Plugin configuration from YAML (custom plugins)
134
- */
135
- export interface PluginConfig {
136
- name: string;
137
- module: string;
138
- enabled: boolean;
139
- blocking: boolean;
140
- priority: number;
141
- config?: Record<string, any> | undefined;
142
- }
143
- /**
144
- * Loaded plugin with its configuration
145
- * Internal type used by PluginManager
146
- */
147
- export interface LoadedPlugin {
148
- plugin: DextoPlugin;
149
- config: PluginConfig;
150
- }
131
+ };
151
132
  //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/hooks/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC5D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE1D;;;GAGG;AACH,MAAM,MAAM,cAAc,GACpB,kBAAkB,GAClB,gBAAgB,GAChB,iBAAiB,GACjB,gBAAgB,CAAC;AAEvB;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB,qCAAqC;IACrC,EAAE,EAAE,OAAO,CAAC;IAEZ,gDAAgD;IAChD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAEjC,mGAAmG;IACnG,MAAM,CAAC,EAAE,OAAO,CAAC;IAEjB,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,iCAAiC;IACjC,OAAO,CAAC,EAAE,UAAU,EAAE,CAAC;CAC1B;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,CAAC;IAC1C,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACjC,yBAAyB;IACzB,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE/B,+DAA+D;IAC/D,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE5B,8FAA8F;IAC9F,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAE9B,gCAAgC;IAChC,SAAS,EAAE,kBAAkB,CAAC;IAE9B,2CAA2C;IAC3C,MAAM,EAAE,MAAM,CAAC;IAEf,oCAAoC;IACpC,WAAW,CAAC,EAAE,WAAW,GAAG,SAAS,CAAC;IAEtC,qDAAqD;IACrD,KAAK,EAAE;QACH,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;QACxC,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;QAChC,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;QAClC,QAAQ,CAAC,YAAY,EAAE,iBAAiB,CAAC;QACzC,QAAQ,CAAC,aAAa,EAAE,aAAa,CAAC;QACtC,QAAQ,CAAC,cAAc,EAAE,cAAc,CAAC;KAC3C,CAAC;CACL;AAED;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;IAChD,QAAQ,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjE,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,sBAAsB;IACnC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,OAAO,CAAC;IAChB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/C,SAAS,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;GAGG;AACH,MAAM,MAAM,IAAI,GAAG;IACf,gEAAgE;IAChE,UAAU,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAE5D,0CAA0C;IAC1C,gBAAgB,CAAC,CACb,OAAO,EAAE,uBAAuB,EAChC,OAAO,EAAE,oBAAoB,GAC9B,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvB,wCAAwC;IACxC,cAAc,CAAC,CACX,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,oBAAoB,GAC9B,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvB,yCAAyC;IACzC,eAAe,CAAC,CACZ,OAAO,EAAE,sBAAsB,EAC/B,OAAO,EAAE,oBAAoB,GAC9B,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvB,uCAAuC;IACvC,cAAc,CAAC,CACX,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,oBAAoB,GAC9B,OAAO,CAAC,UAAU,CAAC,CAAC;IAEvB,6CAA6C;IAC7C,OAAO,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;CAC7B,CAAC"}
@@ -18,22 +18,22 @@ var __copyProps = (to, from, except, desc) => {
18
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
19
  var index_browser_exports = {};
20
20
  __export(index_browser_exports, {
21
- ALLOWED_TOOLS_STORAGE_TYPES: () => import_schemas3.ALLOWED_TOOLS_STORAGE_TYPES,
21
+ ALLOWED_TOOLS_STORAGE_TYPES: () => import_schemas2.ALLOWED_TOOLS_STORAGE_TYPES,
22
22
  ApprovalStatus: () => import_types4.ApprovalStatus,
23
23
  ApprovalType: () => import_types4.ApprovalType,
24
- CACHE_TYPES: () => import_schemas2.CACHE_TYPES,
25
- DATABASE_TYPES: () => import_schemas2.DATABASE_TYPES,
26
- DEFAULT_ALLOWED_TOOLS_STORAGE: () => import_schemas3.DEFAULT_ALLOWED_TOOLS_STORAGE,
24
+ DEFAULT_ALLOWED_TOOLS_STORAGE: () => import_schemas2.DEFAULT_ALLOWED_TOOLS_STORAGE,
27
25
  DEFAULT_MCP_CONNECTION_MODE: () => import_schemas.DEFAULT_MCP_CONNECTION_MODE,
28
- DEFAULT_TOOL_CONFIRMATION_MODE: () => import_schemas3.DEFAULT_TOOL_CONFIRMATION_MODE,
26
+ DEFAULT_PERMISSIONS_MODE: () => import_schemas2.DEFAULT_PERMISSIONS_MODE,
29
27
  DenialReason: () => import_types4.DenialReason,
28
+ EnvExpandedString: () => import_result2.EnvExpandedString,
30
29
  ErrorScope: () => import_types.ErrorScope,
31
30
  ErrorType: () => import_types.ErrorType,
32
31
  LLM_PROVIDERS: () => import_types3.LLM_PROVIDERS,
33
32
  MCP_CONNECTION_MODES: () => import_schemas.MCP_CONNECTION_MODES,
34
33
  MCP_SERVER_TYPES: () => import_schemas.MCP_SERVER_TYPES,
34
+ PERMISSIONS_MODES: () => import_schemas2.PERMISSIONS_MODES,
35
35
  PROMPT_GENERATOR_SOURCES: () => import_registry.PROMPT_GENERATOR_SOURCES,
36
- TOOL_CONFIRMATION_MODES: () => import_schemas3.TOOL_CONFIRMATION_MODES,
36
+ StorageErrorCode: () => import_error_codes.StorageErrorCode,
37
37
  getFileMediaKind: () => import_media_helpers.getFileMediaKind,
38
38
  getResourceKind: () => import_media_helpers.getResourceKind,
39
39
  isAssistantMessage: () => import_types2.isAssistantMessage,
@@ -52,13 +52,14 @@ __export(index_browser_exports, {
52
52
  module.exports = __toCommonJS(index_browser_exports);
53
53
  var import_error_conversion = require("./utils/error-conversion.js");
54
54
  var import_result = require("./utils/result.js");
55
+ var import_result2 = require("./utils/result.js");
55
56
  var import_types = require("./errors/types.js");
56
57
  var import_types2 = require("./context/types.js");
57
58
  var import_media_helpers = require("./context/media-helpers.js");
58
59
  var import_types3 = require("./llm/types.js");
59
60
  var import_schemas = require("./mcp/schemas.js");
60
- var import_schemas2 = require("./storage/schemas.js");
61
- var import_schemas3 = require("./tools/schemas.js");
61
+ var import_error_codes = require("./storage/error-codes.js");
62
+ var import_schemas2 = require("./tools/schemas.js");
62
63
  var import_types4 = require("./approval/types.js");
63
64
  var import_registry = require("./systemPrompt/registry.js");
64
65
  var import_reference_parser = require("./resources/reference-parser.js");
@@ -67,19 +68,19 @@ var import_reference_parser = require("./resources/reference-parser.js");
67
68
  ALLOWED_TOOLS_STORAGE_TYPES,
68
69
  ApprovalStatus,
69
70
  ApprovalType,
70
- CACHE_TYPES,
71
- DATABASE_TYPES,
72
71
  DEFAULT_ALLOWED_TOOLS_STORAGE,
73
72
  DEFAULT_MCP_CONNECTION_MODE,
74
- DEFAULT_TOOL_CONFIRMATION_MODE,
73
+ DEFAULT_PERMISSIONS_MODE,
75
74
  DenialReason,
75
+ EnvExpandedString,
76
76
  ErrorScope,
77
77
  ErrorType,
78
78
  LLM_PROVIDERS,
79
79
  MCP_CONNECTION_MODES,
80
80
  MCP_SERVER_TYPES,
81
+ PERMISSIONS_MODES,
81
82
  PROMPT_GENERATOR_SOURCES,
82
- TOOL_CONFIRMATION_MODES,
83
+ StorageErrorCode,
83
84
  getFileMediaKind,
84
85
  getResourceKind,
85
86
  isAssistantMessage,
@@ -1,5 +1,6 @@
1
1
  export { toError } from './utils/error-conversion.js';
2
2
  export { zodToIssues } from './utils/result.js';
3
+ export { EnvExpandedString } from './utils/result.js';
3
4
  export { ErrorScope, ErrorType } from './errors/types.js';
4
5
  export type { Issue, Severity, DextoErrorCode } from './errors/types.js';
5
6
  export type { InternalMessage, SystemMessage, UserMessage, AssistantMessage, ToolMessage, TextPart, FilePart, ImageData, FileData, UIResourcePart, ContentPart, ToolCall, ToolApprovalStatus, } from './context/types.js';
@@ -9,14 +10,13 @@ export type { LLMProvider } from './llm/types.js';
9
10
  export { LLM_PROVIDERS } from './llm/types.js';
10
11
  export type { McpServerType, McpConnectionMode } from './mcp/schemas.js';
11
12
  export { MCP_SERVER_TYPES, MCP_CONNECTION_MODES, DEFAULT_MCP_CONNECTION_MODE, } from './mcp/schemas.js';
12
- export type { CacheType, DatabaseType } from './storage/schemas.js';
13
- export { CACHE_TYPES, DATABASE_TYPES } from './storage/schemas.js';
14
- export type { ToolConfirmationMode, AllowedToolsStorageType } from './tools/schemas.js';
15
- export { TOOL_CONFIRMATION_MODES, ALLOWED_TOOLS_STORAGE_TYPES, DEFAULT_TOOL_CONFIRMATION_MODE, DEFAULT_ALLOWED_TOOLS_STORAGE, } from './tools/schemas.js';
13
+ export { StorageErrorCode } from './storage/error-codes.js';
14
+ export type { PermissionsMode, AllowedToolsStorageType } from './tools/schemas.js';
15
+ export { PERMISSIONS_MODES, ALLOWED_TOOLS_STORAGE_TYPES, DEFAULT_PERMISSIONS_MODE, DEFAULT_ALLOWED_TOOLS_STORAGE, } from './tools/schemas.js';
16
16
  export { ApprovalStatus, ApprovalType, DenialReason } from './approval/types.js';
17
17
  export type { ApprovalRequest, ApprovalResponse } from './approval/types.js';
18
18
  export type { SessionMetadata } from './session/session-manager.js';
19
- export type { AgentConfig, ValidatedAgentConfig } from './agent/schemas.js';
19
+ export type { WorkspaceContext, SetWorkspaceInput } from './workspace/types.js';
20
20
  export { PROMPT_GENERATOR_SOURCES } from './systemPrompt/registry.js';
21
21
  export type { ContributorConfig, SystemPromptConfig } from './systemPrompt/schemas.js';
22
22
  export type { SearchOptions, SearchResult, SessionSearchResult, SearchResponse, SessionSearchResponse, } from './search/types.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.browser.d.ts","sourceRoot":"","sources":["../src/index.browser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG1D,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGzE,YAAY,EACR,eAAe,EACf,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,cAAc,EACd,WAAW,EACX,QAAQ,EACR,kBAAkB,GACrB,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EACH,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,WAAW,EACX,UAAU,EACV,gBAAgB,GACnB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG/E,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG/C,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EACH,gBAAgB,EAChB,oBAAoB,EACpB,2BAA2B,GAC9B,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGnE,YAAY,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AACxF,OAAO,EACH,uBAAuB,EACvB,2BAA2B,EAC3B,8BAA8B,EAC9B,6BAA6B,GAChC,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACjF,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG7E,YAAY,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGpE,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAG5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGvF,YAAY,EACR,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,qBAAqB,GACxB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGxE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvE,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAKxD,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,YAAY,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EACH,uBAAuB,EACvB,yBAAyB,GAC5B,MAAM,iCAAiC,CAAC"}
1
+ {"version":3,"file":"index.browser.d.ts","sourceRoot":"","sources":["../src/index.browser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG1D,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGzE,YAAY,EACR,eAAe,EACf,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,cAAc,EACd,WAAW,EACX,QAAQ,EACR,kBAAkB,GACrB,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EACH,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,WAAW,EACX,UAAU,EACV,gBAAgB,GACnB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG/E,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG/C,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EACH,gBAAgB,EAChB,oBAAoB,EACpB,2BAA2B,GAC9B,MAAM,kBAAkB,CAAC;AAG1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,YAAY,EAAE,eAAe,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AACnF,OAAO,EACH,iBAAiB,EACjB,2BAA2B,EAC3B,wBAAwB,EACxB,6BAA6B,GAChC,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACjF,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG7E,YAAY,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGpE,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAGhF,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGvF,YAAY,EACR,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,qBAAqB,GACxB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGxE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvE,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAKxD,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,YAAY,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EACH,uBAAuB,EACvB,yBAAyB,GAC5B,MAAM,iCAAiC,CAAC"}
@@ -1,6 +1,7 @@
1
1
  import "./chunk-PTJYTZNU.js";
2
2
  import { toError } from "./utils/error-conversion.js";
3
3
  import { zodToIssues } from "./utils/result.js";
4
+ import { EnvExpandedString } from "./utils/result.js";
4
5
  import { ErrorScope, ErrorType } from "./errors/types.js";
5
6
  import {
6
7
  isSystemMessage,
@@ -19,11 +20,11 @@ import {
19
20
  MCP_CONNECTION_MODES,
20
21
  DEFAULT_MCP_CONNECTION_MODE
21
22
  } from "./mcp/schemas.js";
22
- import { CACHE_TYPES, DATABASE_TYPES } from "./storage/schemas.js";
23
+ import { StorageErrorCode } from "./storage/error-codes.js";
23
24
  import {
24
- TOOL_CONFIRMATION_MODES,
25
+ PERMISSIONS_MODES,
25
26
  ALLOWED_TOOLS_STORAGE_TYPES,
26
- DEFAULT_TOOL_CONFIRMATION_MODE,
27
+ DEFAULT_PERMISSIONS_MODE,
27
28
  DEFAULT_ALLOWED_TOOLS_STORAGE
28
29
  } from "./tools/schemas.js";
29
30
  import { ApprovalStatus, ApprovalType, DenialReason } from "./approval/types.js";
@@ -36,19 +37,19 @@ export {
36
37
  ALLOWED_TOOLS_STORAGE_TYPES,
37
38
  ApprovalStatus,
38
39
  ApprovalType,
39
- CACHE_TYPES,
40
- DATABASE_TYPES,
41
40
  DEFAULT_ALLOWED_TOOLS_STORAGE,
42
41
  DEFAULT_MCP_CONNECTION_MODE,
43
- DEFAULT_TOOL_CONFIRMATION_MODE,
42
+ DEFAULT_PERMISSIONS_MODE,
44
43
  DenialReason,
44
+ EnvExpandedString,
45
45
  ErrorScope,
46
46
  ErrorType,
47
47
  LLM_PROVIDERS,
48
48
  MCP_CONNECTION_MODES,
49
49
  MCP_SERVER_TYPES,
50
+ PERMISSIONS_MODES,
50
51
  PROMPT_GENERATOR_SOURCES,
51
- TOOL_CONFIRMATION_MODES,
52
+ StorageErrorCode,
52
53
  getFileMediaKind,
53
54
  getResourceKind,
54
55
  isAssistantMessage,
package/dist/index.cjs CHANGED
@@ -41,10 +41,9 @@ __reExport(index_exports, require("./utils/index.js"), module.exports);
41
41
  __reExport(index_exports, require("./resources/index.js"), module.exports);
42
42
  __reExport(index_exports, require("./approval/index.js"), module.exports);
43
43
  __reExport(index_exports, require("./memory/index.js"), module.exports);
44
- __reExport(index_exports, require("./plugins/index.js"), module.exports);
44
+ __reExport(index_exports, require("./hooks/index.js"), module.exports);
45
+ __reExport(index_exports, require("./workspace/index.js"), module.exports);
45
46
  __reExport(index_exports, require("./telemetry/index.js"), module.exports);
46
- __reExport(index_exports, require("./providers/index.js"), module.exports);
47
- __reExport(index_exports, require("./image/index.js"), module.exports);
48
47
  // Annotate the CommonJS export names for ESM import in node:
49
48
  0 && (module.exports = {
50
49
  getFileMediaKind,
@@ -66,8 +65,7 @@ __reExport(index_exports, require("./image/index.js"), module.exports);
66
65
  ...require("./resources/index.js"),
67
66
  ...require("./approval/index.js"),
68
67
  ...require("./memory/index.js"),
69
- ...require("./plugins/index.js"),
70
- ...require("./telemetry/index.js"),
71
- ...require("./providers/index.js"),
72
- ...require("./image/index.js")
68
+ ...require("./hooks/index.js"),
69
+ ...require("./workspace/index.js"),
70
+ ...require("./telemetry/index.js")
73
71
  });
package/dist/index.d.ts CHANGED
@@ -38,8 +38,7 @@ export * from './utils/index.js';
38
38
  export * from './resources/index.js';
39
39
  export * from './approval/index.js';
40
40
  export * from './memory/index.js';
41
- export * from './plugins/index.js';
41
+ export * from './hooks/index.js';
42
+ export * from './workspace/index.js';
42
43
  export * from './telemetry/index.js';
43
- export * from './providers/index.js';
44
- export * from './image/index.js';
45
44
  //# sourceMappingURL=index.d.ts.map