@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
@@ -1,214 +0,0 @@
1
- import "../../chunk-PTJYTZNU.js";
2
- import { DextoAgent } from "../../agent/DextoAgent.js";
3
- import {
4
- resolveApiKeyForProvider,
5
- getPrimaryApiKeyEnvVar,
6
- PROVIDER_API_KEY_MAP
7
- } from "../../utils/api-key-resolver.js";
8
- async function createTestEnvironment(config, sessionId = "test-session") {
9
- const agent = new DextoAgent(config);
10
- await agent.start();
11
- return {
12
- agent,
13
- sessionId,
14
- cleanup: async () => {
15
- if (agent.isStarted()) {
16
- await agent.stop();
17
- }
18
- }
19
- };
20
- }
21
- const TestConfigs = {
22
- /**
23
- * Creates OpenAI test config
24
- */
25
- createOpenAIConfig() {
26
- const provider = "openai";
27
- const apiKey = resolveApiKeyForProvider(provider);
28
- if (!apiKey) {
29
- throw new Error(
30
- `${getPrimaryApiKeyEnvVar(provider)} environment variable is required for OpenAI integration tests`
31
- );
32
- }
33
- return {
34
- systemPrompt: "You are a helpful assistant for testing purposes.",
35
- llm: {
36
- provider,
37
- model: "gpt-4o-mini",
38
- // Use cheapest non-reasoning model for testing
39
- apiKey,
40
- maxOutputTokens: 1e3,
41
- // Enough for reasoning models (reasoning + answer)
42
- temperature: 0,
43
- // Deterministic responses
44
- maxIterations: 1
45
- // Minimal tool iterations
46
- },
47
- mcpServers: {},
48
- storage: {
49
- cache: { type: "in-memory" },
50
- database: { type: "in-memory" },
51
- blob: { type: "local", storePath: "/tmp/test-blobs" }
52
- },
53
- sessions: {
54
- maxSessions: 10,
55
- sessionTTL: 6e4
56
- // 60s for tests
57
- },
58
- logger: {
59
- level: "info",
60
- transports: [{ type: "console" }]
61
- },
62
- toolConfirmation: {
63
- mode: "auto-approve",
64
- // Tests don't have interactive approval
65
- timeout: 12e4
66
- },
67
- elicitation: {
68
- enabled: false,
69
- // Tests don't handle elicitation
70
- timeout: 12e4
71
- }
72
- };
73
- },
74
- /**
75
- * Creates Anthropic test config
76
- */
77
- createAnthropicConfig() {
78
- const provider = "anthropic";
79
- const apiKey = resolveApiKeyForProvider(provider);
80
- if (!apiKey) {
81
- throw new Error(
82
- `${getPrimaryApiKeyEnvVar(provider)} environment variable is required for Anthropic integration tests`
83
- );
84
- }
85
- return {
86
- systemPrompt: "You are a helpful assistant for testing purposes.",
87
- llm: {
88
- provider,
89
- model: "claude-haiku-4-5-20251001",
90
- // Use cheapest model for testing
91
- apiKey,
92
- maxOutputTokens: 1e3,
93
- // Enough for reasoning models (reasoning + answer)
94
- temperature: 0,
95
- maxIterations: 1
96
- },
97
- mcpServers: {},
98
- storage: {
99
- cache: { type: "in-memory" },
100
- database: { type: "in-memory" },
101
- blob: { type: "local", storePath: "/tmp/test-blobs" }
102
- },
103
- sessions: {
104
- maxSessions: 10,
105
- sessionTTL: 6e4
106
- },
107
- logger: {
108
- level: "info",
109
- transports: [{ type: "console" }]
110
- },
111
- toolConfirmation: {
112
- mode: "auto-approve",
113
- // Tests don't have interactive approval
114
- timeout: 12e4
115
- },
116
- elicitation: {
117
- enabled: false,
118
- // Tests don't handle elicitation
119
- timeout: 12e4
120
- }
121
- };
122
- },
123
- /**
124
- * Creates Vercel test config - parametric for different providers/models
125
- */
126
- createVercelConfig(provider = "openai", model) {
127
- const apiKey = resolveApiKeyForProvider(provider);
128
- if (!apiKey && providerRequiresApiKey(provider)) {
129
- throw new Error(
130
- `${getPrimaryApiKeyEnvVar(provider)} environment variable is required for Vercel integration tests with ${provider}`
131
- );
132
- }
133
- const defaultModels = {
134
- openai: "gpt-4o-mini",
135
- anthropic: "claude-haiku-4-5-20251001",
136
- google: "gemini-2.0-flash",
137
- groq: "llama-3.1-8b-instant",
138
- xai: "grok-beta",
139
- cohere: "command-r",
140
- minimax: "MiniMax-M2.1",
141
- glm: "glm-4.7",
142
- "openai-compatible": "gpt-5-mini",
143
- openrouter: "anthropic/claude-3.5-haiku",
144
- // OpenRouter model format: provider/model
145
- litellm: "gpt-4",
146
- // LiteLLM model names follow the provider's convention
147
- glama: "openai/gpt-4o",
148
- // Glama model format: provider/model
149
- vertex: "gemini-2.5-pro",
150
- // Vertex AI uses ADC auth, not API keys
151
- bedrock: "anthropic.claude-3-5-haiku-20241022-v1:0",
152
- // Bedrock uses AWS credentials, not API keys
153
- local: "llama-3.2-3b-q4",
154
- // Native node-llama-cpp GGUF models
155
- ollama: "llama3.2",
156
- // Ollama server models
157
- "dexto-nova": "anthropic/claude-4.5-sonnet"
158
- // Dexto gateway (OpenRouter model format)
159
- };
160
- return {
161
- systemPrompt: "You are a helpful assistant for testing purposes.",
162
- llm: {
163
- provider,
164
- model: model || defaultModels[provider],
165
- apiKey,
166
- maxOutputTokens: 1e3,
167
- // Enough for reasoning models (reasoning + answer)
168
- temperature: 0,
169
- maxIterations: 1
170
- },
171
- mcpServers: {},
172
- storage: {
173
- cache: { type: "in-memory" },
174
- database: { type: "in-memory" },
175
- blob: { type: "local", storePath: "/tmp/test-blobs" }
176
- },
177
- sessions: {
178
- maxSessions: 10,
179
- sessionTTL: 6e4
180
- },
181
- logger: {
182
- level: "info",
183
- transports: [{ type: "console" }]
184
- },
185
- toolConfirmation: {
186
- mode: "auto-approve",
187
- // Tests don't have interactive approval
188
- timeout: 12e4
189
- },
190
- elicitation: {
191
- enabled: false,
192
- // Tests don't handle elicitation
193
- timeout: 12e4
194
- }
195
- };
196
- }
197
- };
198
- function providerRequiresApiKey(provider) {
199
- const envVars = PROVIDER_API_KEY_MAP[provider];
200
- return envVars && envVars.length > 0;
201
- }
202
- function requiresApiKey(provider) {
203
- return !!resolveApiKeyForProvider(provider);
204
- }
205
- async function cleanupTestEnvironment(_env) {
206
- await _env.cleanup();
207
- }
208
- export {
209
- TestConfigs,
210
- cleanupTestEnvironment,
211
- createTestEnvironment,
212
- providerRequiresApiKey,
213
- requiresApiKey
214
- };
@@ -1,26 +0,0 @@
1
- import type { DextoPlugin, PluginResult, BeforeLLMRequestPayload, PluginExecutionContext } from '../types.js';
2
- /**
3
- * Configuration options for the ContentPolicy plugin
4
- */
5
- export interface ContentPolicyConfig {
6
- maxInputChars?: number;
7
- redactEmails?: boolean;
8
- redactApiKeys?: boolean;
9
- }
10
- /**
11
- * ContentPolicy Plugin
12
- *
13
- * Enforces content policies on LLM requests including:
14
- * - Abusive language detection (blocking)
15
- * - Input length limits
16
- * - Email address redaction
17
- * - API key redaction
18
- *
19
- * Ported from feat/hooks content-policy hook implementation
20
- */
21
- export declare class ContentPolicyPlugin implements DextoPlugin {
22
- private config;
23
- initialize(config: Record<string, any>): Promise<void>;
24
- beforeLLMRequest(payload: BeforeLLMRequestPayload, _context: PluginExecutionContext): Promise<PluginResult>;
25
- }
26
- //# sourceMappingURL=content-policy.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"content-policy.d.ts","sourceRoot":"","sources":["../../../src/plugins/builtins/content-policy.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,WAAW,EACX,YAAY,EAEZ,uBAAuB,EACvB,sBAAsB,EACzB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAChC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;CAC3B;AAgBD;;;;;;;;;;GAUG;AACH,qBAAa,mBAAoB,YAAW,WAAW;IACnD,OAAO,CAAC,MAAM,CAA2C;IAEnD,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAQtD,gBAAgB,CAClB,OAAO,EAAE,uBAAuB,EAChC,QAAQ,EAAE,sBAAsB,GACjC,OAAO,CAAC,YAAY,CAAC;CA6E3B"}
@@ -1,25 +0,0 @@
1
- import type { DextoPlugin, BeforeResponsePayload, PluginExecutionContext, PluginResult } from '../types.js';
2
- export interface ResponseSanitizerConfig {
3
- redactEmails?: boolean;
4
- redactApiKeys?: boolean;
5
- maxResponseLength?: number;
6
- }
7
- /**
8
- * Response sanitizer built-in plugin
9
- *
10
- * This plugin redacts sensitive information from LLM responses to prevent accidental leakage:
11
- * - Email addresses
12
- * - API keys and tokens
13
- * - Optional: Truncates responses that exceed length limits
14
- *
15
- * This demonstrates how plugins can modify response content before it's sent to users,
16
- * using the beforeResponse extension point.
17
- */
18
- export declare class ResponseSanitizerPlugin implements DextoPlugin {
19
- private redactEmails;
20
- private redactApiKeys;
21
- private maxResponseLength;
22
- initialize(config: Record<string, any>): Promise<void>;
23
- beforeResponse(payload: BeforeResponsePayload, _context: PluginExecutionContext): Promise<PluginResult>;
24
- }
25
- //# sourceMappingURL=response-sanitizer.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"response-sanitizer.d.ts","sourceRoot":"","sources":["../../../src/plugins/builtins/response-sanitizer.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,WAAW,EACX,qBAAqB,EACrB,sBAAsB,EACtB,YAAY,EAEf,MAAM,aAAa,CAAC;AAErB,MAAM,WAAW,uBAAuB;IACpC,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC9B;AAQD;;;;;;;;;;GAUG;AACH,qBAAa,uBAAwB,YAAW,WAAW;IACvD,OAAO,CAAC,YAAY,CAAkC;IACtD,OAAO,CAAC,aAAa,CAAmC;IACxD,OAAO,CAAC,iBAAiB,CAAsC;IAEzD,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAOtD,cAAc,CAChB,OAAO,EAAE,qBAAqB,EAC9B,QAAQ,EAAE,sBAAsB,GACjC,OAAO,CAAC,YAAY,CAAC;CAyE3B"}
@@ -1,43 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var error_codes_exports = {};
20
- __export(error_codes_exports, {
21
- PluginErrorCode: () => PluginErrorCode
22
- });
23
- module.exports = __toCommonJS(error_codes_exports);
24
- var PluginErrorCode = /* @__PURE__ */ ((PluginErrorCode2) => {
25
- PluginErrorCode2["PLUGIN_LOAD_FAILED"] = "PLUGIN_LOAD_FAILED";
26
- PluginErrorCode2["PLUGIN_INVALID_SHAPE"] = "PLUGIN_INVALID_SHAPE";
27
- PluginErrorCode2["PLUGIN_INSTANTIATION_FAILED"] = "PLUGIN_INSTANTIATION_FAILED";
28
- PluginErrorCode2["PLUGIN_INITIALIZATION_FAILED"] = "PLUGIN_INITIALIZATION_FAILED";
29
- PluginErrorCode2["PLUGIN_CONFIGURATION_INVALID"] = "PLUGIN_CONFIGURATION_INVALID";
30
- PluginErrorCode2["PLUGIN_EXECUTION_FAILED"] = "PLUGIN_EXECUTION_FAILED";
31
- PluginErrorCode2["PLUGIN_EXECUTION_TIMEOUT"] = "PLUGIN_EXECUTION_TIMEOUT";
32
- PluginErrorCode2["PLUGIN_BLOCKED_EXECUTION"] = "PLUGIN_BLOCKED_EXECUTION";
33
- PluginErrorCode2["PLUGIN_DUPLICATE_PRIORITY"] = "PLUGIN_DUPLICATE_PRIORITY";
34
- PluginErrorCode2["PLUGIN_DEPENDENCY_NOT_INSTALLED"] = "PLUGIN_DEPENDENCY_NOT_INSTALLED";
35
- PluginErrorCode2["PLUGIN_PROVIDER_ALREADY_REGISTERED"] = "PLUGIN_PROVIDER_ALREADY_REGISTERED";
36
- PluginErrorCode2["PLUGIN_PROVIDER_NOT_FOUND"] = "PLUGIN_PROVIDER_NOT_FOUND";
37
- PluginErrorCode2["PLUGIN_PROVIDER_VALIDATION_FAILED"] = "PLUGIN_PROVIDER_VALIDATION_FAILED";
38
- return PluginErrorCode2;
39
- })(PluginErrorCode || {});
40
- // Annotate the CommonJS export names for ESM import in node:
41
- 0 && (module.exports = {
42
- PluginErrorCode
43
- });
@@ -1,34 +0,0 @@
1
- /**
2
- * Plugin-specific error codes
3
- * Used for plugin loading, validation, and execution errors
4
- */
5
- export declare enum PluginErrorCode {
6
- /** Plugin file not found or cannot be loaded */
7
- PLUGIN_LOAD_FAILED = "PLUGIN_LOAD_FAILED",
8
- /** Plugin does not implement required interface */
9
- PLUGIN_INVALID_SHAPE = "PLUGIN_INVALID_SHAPE",
10
- /** Plugin constructor threw an error */
11
- PLUGIN_INSTANTIATION_FAILED = "PLUGIN_INSTANTIATION_FAILED",
12
- /** Plugin initialization failed */
13
- PLUGIN_INITIALIZATION_FAILED = "PLUGIN_INITIALIZATION_FAILED",
14
- /** Plugin configuration is invalid */
15
- PLUGIN_CONFIGURATION_INVALID = "PLUGIN_CONFIGURATION_INVALID",
16
- /** Plugin execution failed */
17
- PLUGIN_EXECUTION_FAILED = "PLUGIN_EXECUTION_FAILED",
18
- /** Plugin execution timed out */
19
- PLUGIN_EXECUTION_TIMEOUT = "PLUGIN_EXECUTION_TIMEOUT",
20
- /** Plugin blocked execution */
21
- PLUGIN_BLOCKED_EXECUTION = "PLUGIN_BLOCKED_EXECUTION",
22
- /** Duplicate plugin priority */
23
- PLUGIN_DUPLICATE_PRIORITY = "PLUGIN_DUPLICATE_PRIORITY",
24
- /** Required dependency not installed for plugin loading */
25
- PLUGIN_DEPENDENCY_NOT_INSTALLED = "PLUGIN_DEPENDENCY_NOT_INSTALLED",
26
- /** Plugin provider already registered in registry */
27
- PLUGIN_PROVIDER_ALREADY_REGISTERED = "PLUGIN_PROVIDER_ALREADY_REGISTERED",
28
- /** Plugin provider not found in registry */
29
- PLUGIN_PROVIDER_NOT_FOUND = "PLUGIN_PROVIDER_NOT_FOUND",
30
- /** Plugin provider configuration validation failed */
31
- PLUGIN_PROVIDER_VALIDATION_FAILED = "PLUGIN_PROVIDER_VALIDATION_FAILED"
32
- }
33
- export type { PluginErrorCode as default };
34
- //# sourceMappingURL=error-codes.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../src/plugins/error-codes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,oBAAY,eAAe;IACvB,gDAAgD;IAChD,kBAAkB,uBAAuB;IAEzC,mDAAmD;IACnD,oBAAoB,yBAAyB;IAE7C,wCAAwC;IACxC,2BAA2B,gCAAgC;IAE3D,mCAAmC;IACnC,4BAA4B,iCAAiC;IAE7D,sCAAsC;IACtC,4BAA4B,iCAAiC;IAE7D,8BAA8B;IAC9B,uBAAuB,4BAA4B;IAEnD,iCAAiC;IACjC,wBAAwB,6BAA6B;IAErD,+BAA+B;IAC/B,wBAAwB,6BAA6B;IAErD,gCAAgC;IAChC,yBAAyB,8BAA8B;IAEvD,2DAA2D;IAC3D,+BAA+B,oCAAoC;IAEnE,qDAAqD;IACrD,kCAAkC,uCAAuC;IAEzE,4CAA4C;IAC5C,yBAAyB,8BAA8B;IAEvD,sDAAsD;IACtD,iCAAiC,sCAAsC;CAC1E;AAED,YAAY,EAAE,eAAe,IAAI,OAAO,EAAE,CAAC"}
@@ -1,20 +0,0 @@
1
- import "../chunk-PTJYTZNU.js";
2
- var PluginErrorCode = /* @__PURE__ */ ((PluginErrorCode2) => {
3
- PluginErrorCode2["PLUGIN_LOAD_FAILED"] = "PLUGIN_LOAD_FAILED";
4
- PluginErrorCode2["PLUGIN_INVALID_SHAPE"] = "PLUGIN_INVALID_SHAPE";
5
- PluginErrorCode2["PLUGIN_INSTANTIATION_FAILED"] = "PLUGIN_INSTANTIATION_FAILED";
6
- PluginErrorCode2["PLUGIN_INITIALIZATION_FAILED"] = "PLUGIN_INITIALIZATION_FAILED";
7
- PluginErrorCode2["PLUGIN_CONFIGURATION_INVALID"] = "PLUGIN_CONFIGURATION_INVALID";
8
- PluginErrorCode2["PLUGIN_EXECUTION_FAILED"] = "PLUGIN_EXECUTION_FAILED";
9
- PluginErrorCode2["PLUGIN_EXECUTION_TIMEOUT"] = "PLUGIN_EXECUTION_TIMEOUT";
10
- PluginErrorCode2["PLUGIN_BLOCKED_EXECUTION"] = "PLUGIN_BLOCKED_EXECUTION";
11
- PluginErrorCode2["PLUGIN_DUPLICATE_PRIORITY"] = "PLUGIN_DUPLICATE_PRIORITY";
12
- PluginErrorCode2["PLUGIN_DEPENDENCY_NOT_INSTALLED"] = "PLUGIN_DEPENDENCY_NOT_INSTALLED";
13
- PluginErrorCode2["PLUGIN_PROVIDER_ALREADY_REGISTERED"] = "PLUGIN_PROVIDER_ALREADY_REGISTERED";
14
- PluginErrorCode2["PLUGIN_PROVIDER_NOT_FOUND"] = "PLUGIN_PROVIDER_NOT_FOUND";
15
- PluginErrorCode2["PLUGIN_PROVIDER_VALIDATION_FAILED"] = "PLUGIN_PROVIDER_VALIDATION_FAILED";
16
- return PluginErrorCode2;
17
- })(PluginErrorCode || {});
18
- export {
19
- PluginErrorCode
20
- };
@@ -1,61 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var plugins_exports = {};
20
- __export(plugins_exports, {
21
- BuiltInPluginConfigSchema: () => import_schemas.BuiltInPluginConfigSchema,
22
- ContentPolicyPlugin: () => import_content_policy.ContentPolicyPlugin,
23
- CustomPluginConfigSchema: () => import_schemas.CustomPluginConfigSchema,
24
- PluginErrorCode: () => import_error_codes.PluginErrorCode,
25
- PluginManager: () => import_manager.PluginManager,
26
- PluginRegistry: () => import_registry.PluginRegistry,
27
- PluginsConfigSchema: () => import_schemas.PluginsConfigSchema,
28
- RegistryPluginConfigSchema: () => import_schemas.RegistryPluginConfigSchema,
29
- ResponseSanitizerPlugin: () => import_response_sanitizer.ResponseSanitizerPlugin,
30
- loadPluginModule: () => import_loader.loadPluginModule,
31
- pluginRegistry: () => import_registry.pluginRegistry,
32
- registerBuiltInPlugins: () => import_builtins.registerBuiltInPlugins,
33
- resolvePluginPath: () => import_loader.resolvePluginPath,
34
- validatePluginShape: () => import_loader.validatePluginShape
35
- });
36
- module.exports = __toCommonJS(plugins_exports);
37
- var import_manager = require("./manager.js");
38
- var import_schemas = require("./schemas.js");
39
- var import_registry = require("./registry.js");
40
- var import_error_codes = require("./error-codes.js");
41
- var import_loader = require("./loader.js");
42
- var import_builtins = require("./registrations/builtins.js");
43
- var import_content_policy = require("./builtins/content-policy.js");
44
- var import_response_sanitizer = require("./builtins/response-sanitizer.js");
45
- // Annotate the CommonJS export names for ESM import in node:
46
- 0 && (module.exports = {
47
- BuiltInPluginConfigSchema,
48
- ContentPolicyPlugin,
49
- CustomPluginConfigSchema,
50
- PluginErrorCode,
51
- PluginManager,
52
- PluginRegistry,
53
- PluginsConfigSchema,
54
- RegistryPluginConfigSchema,
55
- ResponseSanitizerPlugin,
56
- loadPluginModule,
57
- pluginRegistry,
58
- registerBuiltInPlugins,
59
- resolvePluginPath,
60
- validatePluginShape
61
- });
@@ -1,21 +0,0 @@
1
- /**
2
- * Plugin System
3
- *
4
- * Unified plugin architecture for extending agent behavior at key extension points.
5
- * Replaces the hooks system from PR #385 with a more flexible plugin model.
6
- */
7
- export type { DextoPlugin, PluginConfig, PluginExecutionContext, PluginResult, PluginNotice, ExtensionPoint, BeforeLLMRequestPayload, BeforeToolCallPayload, AfterToolResultPayload, BeforeResponsePayload, } from './types.js';
8
- export { PluginManager } from './manager.js';
9
- export type { PluginManagerOptions, ExecutionContextOptions } from './manager.js';
10
- export { CustomPluginConfigSchema, BuiltInPluginConfigSchema, PluginsConfigSchema, RegistryPluginConfigSchema, } from './schemas.js';
11
- export type { PluginsConfig, ValidatedPluginsConfig, RegistryPluginConfig } from './schemas.js';
12
- export { PluginRegistry, pluginRegistry } from './registry.js';
13
- export type { PluginProvider, PluginCreationContext } from './registry.js';
14
- export { PluginErrorCode } from './error-codes.js';
15
- export { loadPluginModule, resolvePluginPath, validatePluginShape } from './loader.js';
16
- export { registerBuiltInPlugins } from './registrations/builtins.js';
17
- export { ContentPolicyPlugin } from './builtins/content-policy.js';
18
- export type { ContentPolicyConfig } from './builtins/content-policy.js';
19
- export { ResponseSanitizerPlugin } from './builtins/response-sanitizer.js';
20
- export type { ResponseSanitizerConfig } from './builtins/response-sanitizer.js';
21
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/plugins/index.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,YAAY,EACR,WAAW,EACX,YAAY,EACZ,sBAAsB,EACtB,YAAY,EACZ,YAAY,EACZ,cAAc,EACd,uBAAuB,EACvB,qBAAqB,EACrB,sBAAsB,EACtB,qBAAqB,GACxB,MAAM,YAAY,CAAC;AAGpB,OAAO,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAC7C,YAAY,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,cAAc,CAAC;AAGlF,OAAO,EACH,wBAAwB,EACxB,yBAAyB,EACzB,mBAAmB,EACnB,0BAA0B,GAC7B,MAAM,cAAc,CAAC;AACtB,YAAY,EAAE,aAAa,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,MAAM,cAAc,CAAC;AAGhG,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/D,YAAY,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAG3E,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGnD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGvF,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAGrE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,YAAY,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC3E,YAAY,EAAE,uBAAuB,EAAE,MAAM,kCAAkC,CAAC"}
@@ -1,30 +0,0 @@
1
- import "../chunk-PTJYTZNU.js";
2
- import { PluginManager } from "./manager.js";
3
- import {
4
- CustomPluginConfigSchema,
5
- BuiltInPluginConfigSchema,
6
- PluginsConfigSchema,
7
- RegistryPluginConfigSchema
8
- } from "./schemas.js";
9
- import { PluginRegistry, pluginRegistry } from "./registry.js";
10
- import { PluginErrorCode } from "./error-codes.js";
11
- import { loadPluginModule, resolvePluginPath, validatePluginShape } from "./loader.js";
12
- import { registerBuiltInPlugins } from "./registrations/builtins.js";
13
- import { ContentPolicyPlugin } from "./builtins/content-policy.js";
14
- import { ResponseSanitizerPlugin } from "./builtins/response-sanitizer.js";
15
- export {
16
- BuiltInPluginConfigSchema,
17
- ContentPolicyPlugin,
18
- CustomPluginConfigSchema,
19
- PluginErrorCode,
20
- PluginManager,
21
- PluginRegistry,
22
- PluginsConfigSchema,
23
- RegistryPluginConfigSchema,
24
- ResponseSanitizerPlugin,
25
- loadPluginModule,
26
- pluginRegistry,
27
- registerBuiltInPlugins,
28
- resolvePluginPath,
29
- validatePluginShape
30
- };
@@ -1,171 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var loader_exports = {};
20
- __export(loader_exports, {
21
- loadPluginModule: () => loadPluginModule,
22
- resolvePluginPath: () => resolvePluginPath,
23
- validatePluginShape: () => validatePluginShape
24
- });
25
- module.exports = __toCommonJS(loader_exports);
26
- var import_path = require("path");
27
- var import_url = require("url");
28
- var import_errors = require("../errors/index.js");
29
- var import_error_codes = require("./error-codes.js");
30
- const import_meta = {};
31
- function validatePluginShape(PluginClass, pluginName) {
32
- if (typeof PluginClass !== "function" || !PluginClass.prototype) {
33
- throw new import_errors.DextoRuntimeError(
34
- import_error_codes.PluginErrorCode.PLUGIN_INVALID_SHAPE,
35
- import_errors.ErrorScope.PLUGIN,
36
- import_errors.ErrorType.USER,
37
- `Plugin '${pluginName}' default export must be a class or constructor function`
38
- );
39
- }
40
- const proto = PluginClass.prototype;
41
- const extensionPoints = [
42
- "beforeLLMRequest",
43
- "beforeToolCall",
44
- "afterToolResult",
45
- "beforeResponse"
46
- ];
47
- const hasExtensionPoint = extensionPoints.some((point) => typeof proto[point] === "function");
48
- if (!hasExtensionPoint) {
49
- throw new import_errors.DextoRuntimeError(
50
- import_error_codes.PluginErrorCode.PLUGIN_INVALID_SHAPE,
51
- import_errors.ErrorScope.PLUGIN,
52
- import_errors.ErrorType.USER,
53
- `Plugin '${pluginName}' must implement at least one extension point method`,
54
- { availableExtensionPoints: extensionPoints }
55
- );
56
- }
57
- if ("initialize" in proto && typeof proto.initialize !== "function") {
58
- throw new import_errors.DextoRuntimeError(
59
- import_error_codes.PluginErrorCode.PLUGIN_INVALID_SHAPE,
60
- import_errors.ErrorScope.PLUGIN,
61
- import_errors.ErrorType.USER,
62
- `Plugin '${pluginName}' initialize property must be a function (found ${typeof proto.initialize})`
63
- );
64
- }
65
- if ("cleanup" in proto && typeof proto.cleanup !== "function") {
66
- throw new import_errors.DextoRuntimeError(
67
- import_error_codes.PluginErrorCode.PLUGIN_INVALID_SHAPE,
68
- import_errors.ErrorScope.PLUGIN,
69
- import_errors.ErrorType.USER,
70
- `Plugin '${pluginName}' cleanup property must be a function (found ${typeof proto.cleanup})`
71
- );
72
- }
73
- }
74
- function resolvePluginPath(modulePath, configDir) {
75
- if (!(0, import_path.isAbsolute)(modulePath)) {
76
- throw new import_errors.DextoRuntimeError(
77
- import_error_codes.PluginErrorCode.PLUGIN_CONFIGURATION_INVALID,
78
- import_errors.ErrorScope.PLUGIN,
79
- import_errors.ErrorType.USER,
80
- "Plugin module path must be absolute (got '" + modulePath + "'). Use ${{dexto.agent_dir}} template variable for agent-relative paths.",
81
- {
82
- modulePath,
83
- configDir,
84
- hint: 'Example: module: "${{dexto.agent_dir}}/plugins/my-plugin.ts"'
85
- }
86
- );
87
- }
88
- return modulePath;
89
- }
90
- async function loadPluginModule(modulePath, pluginName) {
91
- try {
92
- let pluginModule;
93
- if (modulePath.endsWith(".ts") || modulePath.endsWith(".tsx")) {
94
- if (typeof process === "undefined" || !process.versions?.node) {
95
- throw new import_errors.DextoRuntimeError(
96
- import_error_codes.PluginErrorCode.PLUGIN_LOAD_FAILED,
97
- import_errors.ErrorScope.PLUGIN,
98
- import_errors.ErrorType.SYSTEM,
99
- `Cannot load TypeScript plugin '${pluginName}' in browser environment. Plugins with .ts extension require Node.js runtime.`,
100
- { modulePath, pluginName }
101
- );
102
- }
103
- const tsxPackage = "tsx/esm/api";
104
- let tsx;
105
- try {
106
- tsx = await import(
107
- /* webpackIgnore: true */
108
- tsxPackage
109
- );
110
- } catch (importError) {
111
- const err = importError;
112
- if (err.code === "ERR_MODULE_NOT_FOUND") {
113
- throw new import_errors.DextoRuntimeError(
114
- import_error_codes.PluginErrorCode.PLUGIN_DEPENDENCY_NOT_INSTALLED,
115
- import_errors.ErrorScope.PLUGIN,
116
- import_errors.ErrorType.USER,
117
- `Cannot load TypeScript plugin '${pluginName}': tsx package is not installed.
118
- Install with: npm install tsx
119
- Or pre-compile your plugin to .js for production use.`,
120
- { modulePath, pluginName, packageName: "tsx" }
121
- );
122
- }
123
- throw importError;
124
- }
125
- const moduleUrl = (0, import_url.pathToFileURL)(modulePath).href;
126
- pluginModule = await tsx.tsImport(moduleUrl, import_meta.url);
127
- } else {
128
- const moduleUrl = (0, import_url.pathToFileURL)(modulePath).href;
129
- pluginModule = await import(
130
- /* webpackIgnore: true */
131
- moduleUrl
132
- );
133
- }
134
- let PluginClass = pluginModule.default;
135
- if (PluginClass && typeof PluginClass === "object" && "default" in PluginClass) {
136
- PluginClass = PluginClass.default;
137
- }
138
- if (!PluginClass) {
139
- throw new import_errors.DextoRuntimeError(
140
- import_error_codes.PluginErrorCode.PLUGIN_INVALID_SHAPE,
141
- import_errors.ErrorScope.PLUGIN,
142
- import_errors.ErrorType.USER,
143
- `Plugin '${pluginName}' at '${modulePath}' has no default export. Ensure your plugin exports a class as default.`,
144
- { modulePath, pluginName }
145
- );
146
- }
147
- validatePluginShape(PluginClass, pluginName);
148
- return PluginClass;
149
- } catch (error) {
150
- if (error instanceof import_errors.DextoRuntimeError) {
151
- throw error;
152
- }
153
- throw new import_errors.DextoRuntimeError(
154
- import_error_codes.PluginErrorCode.PLUGIN_LOAD_FAILED,
155
- import_errors.ErrorScope.PLUGIN,
156
- import_errors.ErrorType.SYSTEM,
157
- `Failed to load plugin '${pluginName}' from '${modulePath}': ${error instanceof Error ? error.message : String(error)}`,
158
- {
159
- modulePath,
160
- pluginName,
161
- originalError: error instanceof Error ? error.message : String(error)
162
- }
163
- );
164
- }
165
- }
166
- // Annotate the CommonJS export names for ESM import in node:
167
- 0 && (module.exports = {
168
- loadPluginModule,
169
- resolvePluginPath,
170
- validatePluginShape
171
- });