@dexto/core 1.2.4 → 1.2.6

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 (551) hide show
  1. package/README.md +60 -0
  2. package/dist/agent/DextoAgent.cjs +579 -345
  3. package/dist/agent/DextoAgent.d.ts +131 -83
  4. package/dist/agent/DextoAgent.d.ts.map +1 -1
  5. package/dist/agent/DextoAgent.js +573 -336
  6. package/dist/agent/agentCard.cjs +4 -2
  7. package/dist/agent/agentCard.d.ts +0 -1
  8. package/dist/agent/agentCard.d.ts.map +1 -1
  9. package/dist/agent/agentCard.js +4 -2
  10. package/dist/agent/index.cjs +3 -7
  11. package/dist/agent/index.d.ts +3 -3
  12. package/dist/agent/index.d.ts.map +1 -1
  13. package/dist/agent/index.js +7 -6
  14. package/dist/agent/schemas.cjs +179 -75
  15. package/dist/agent/schemas.d.ts +2678 -586
  16. package/dist/agent/schemas.d.ts.map +1 -1
  17. package/dist/agent/schemas.js +172 -65
  18. package/dist/agent/state-manager.cjs +28 -23
  19. package/dist/agent/state-manager.d.ts +4 -1
  20. package/dist/agent/state-manager.d.ts.map +1 -1
  21. package/dist/agent/state-manager.js +28 -23
  22. package/dist/{preferences/constants.cjs → agent/types.cjs} +2 -14
  23. package/dist/agent/types.d.ts +54 -0
  24. package/dist/agent/types.d.ts.map +1 -0
  25. package/dist/agent/types.js +0 -0
  26. package/dist/approval/errors.cjs +89 -8
  27. package/dist/approval/errors.d.ts +5 -3
  28. package/dist/approval/errors.d.ts.map +1 -1
  29. package/dist/approval/errors.js +89 -8
  30. package/dist/approval/{providers/factory.d.ts → factory.d.ts} +2 -2
  31. package/dist/approval/factory.d.ts.map +1 -0
  32. package/dist/approval/{providers/factory.js → factory.js} +1 -1
  33. package/dist/approval/index.cjs +4 -6
  34. package/dist/approval/index.d.ts +3 -5
  35. package/dist/approval/index.d.ts.map +1 -1
  36. package/dist/approval/index.js +4 -5
  37. package/dist/approval/manager.cjs +140 -37
  38. package/dist/approval/manager.d.ts +56 -17
  39. package/dist/approval/manager.d.ts.map +1 -1
  40. package/dist/approval/manager.js +141 -38
  41. package/dist/approval/schemas.cjs +9 -1
  42. package/dist/approval/schemas.d.ts +120 -35
  43. package/dist/approval/schemas.d.ts.map +1 -1
  44. package/dist/approval/schemas.js +9 -2
  45. package/dist/approval/types.cjs +14 -2
  46. package/dist/approval/types.d.ts +64 -12
  47. package/dist/approval/types.d.ts.map +1 -1
  48. package/dist/approval/types.js +12 -1
  49. package/dist/context/compression/middle-removal.cjs +11 -11
  50. package/dist/context/compression/middle-removal.d.ts +3 -1
  51. package/dist/context/compression/middle-removal.d.ts.map +1 -1
  52. package/dist/context/compression/middle-removal.js +11 -11
  53. package/dist/context/compression/oldest-removal.cjs +18 -5
  54. package/dist/context/compression/oldest-removal.d.ts +3 -1
  55. package/dist/context/compression/oldest-removal.d.ts.map +1 -1
  56. package/dist/context/compression/oldest-removal.js +18 -5
  57. package/dist/context/manager.cjs +94 -67
  58. package/dist/context/manager.d.ts +13 -10
  59. package/dist/context/manager.d.ts.map +1 -1
  60. package/dist/context/manager.js +94 -67
  61. package/dist/context/utils.cjs +79 -65
  62. package/dist/context/utils.d.ts +15 -12
  63. package/dist/context/utils.d.ts.map +1 -1
  64. package/dist/context/utils.js +45 -31
  65. package/dist/errors/DextoRuntimeError.d.ts +5 -5
  66. package/dist/errors/DextoRuntimeError.d.ts.map +1 -1
  67. package/dist/errors/result-bridge.cjs +2 -3
  68. package/dist/errors/result-bridge.d.ts +5 -3
  69. package/dist/errors/result-bridge.d.ts.map +1 -1
  70. package/dist/errors/result-bridge.js +1 -2
  71. package/dist/errors/types.cjs +1 -2
  72. package/dist/errors/types.d.ts +5 -8
  73. package/dist/errors/types.d.ts.map +1 -1
  74. package/dist/errors/types.js +1 -2
  75. package/dist/events/index.cjs +125 -55
  76. package/dist/events/index.d.ts +204 -97
  77. package/dist/events/index.d.ts.map +1 -1
  78. package/dist/events/index.js +123 -55
  79. package/dist/filesystem/filesystem-service.cjs +40 -30
  80. package/dist/filesystem/filesystem-service.d.ts +9 -1
  81. package/dist/filesystem/filesystem-service.d.ts.map +1 -1
  82. package/dist/filesystem/filesystem-service.js +40 -30
  83. package/dist/filesystem/path-validator.cjs +4 -3
  84. package/dist/filesystem/path-validator.d.ts +3 -1
  85. package/dist/filesystem/path-validator.d.ts.map +1 -1
  86. package/dist/filesystem/path-validator.js +4 -3
  87. package/dist/filesystem/types.d.ts +3 -3
  88. package/dist/filesystem/types.d.ts.map +1 -1
  89. package/dist/index.browser.cjs +7 -0
  90. package/dist/index.browser.d.ts +2 -0
  91. package/dist/index.browser.d.ts.map +1 -1
  92. package/dist/index.browser.js +4 -0
  93. package/dist/index.cjs +0 -7
  94. package/dist/index.d.ts +12 -3
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +0 -4
  97. package/dist/llm/formatters/anthropic.cjs +32 -21
  98. package/dist/llm/formatters/anthropic.d.ts +3 -0
  99. package/dist/llm/formatters/anthropic.d.ts.map +1 -1
  100. package/dist/llm/formatters/anthropic.js +32 -21
  101. package/dist/llm/formatters/factory.cjs +6 -7
  102. package/dist/llm/formatters/factory.d.ts +2 -1
  103. package/dist/llm/formatters/factory.d.ts.map +1 -1
  104. package/dist/llm/formatters/factory.js +4 -5
  105. package/dist/llm/formatters/openai.cjs +38 -9
  106. package/dist/llm/formatters/openai.d.ts +3 -0
  107. package/dist/llm/formatters/openai.d.ts.map +1 -1
  108. package/dist/llm/formatters/openai.js +38 -9
  109. package/dist/llm/formatters/vercel.cjs +49 -8
  110. package/dist/llm/formatters/vercel.d.ts +3 -0
  111. package/dist/llm/formatters/vercel.d.ts.map +1 -1
  112. package/dist/llm/formatters/vercel.js +49 -8
  113. package/dist/llm/registry.cjs +153 -17
  114. package/dist/llm/registry.d.ts +5 -2
  115. package/dist/llm/registry.d.ts.map +1 -1
  116. package/dist/llm/registry.js +143 -7
  117. package/dist/llm/resolver.cjs +4 -4
  118. package/dist/llm/resolver.d.ts +3 -2
  119. package/dist/llm/resolver.d.ts.map +1 -1
  120. package/dist/llm/resolver.js +4 -4
  121. package/dist/llm/schemas.cjs +6 -3
  122. package/dist/llm/schemas.d.ts +51 -17
  123. package/dist/llm/schemas.d.ts.map +1 -1
  124. package/dist/llm/schemas.js +5 -3
  125. package/dist/llm/services/anthropic.cjs +216 -183
  126. package/dist/llm/services/anthropic.d.ts +3 -1
  127. package/dist/llm/services/anthropic.d.ts.map +1 -1
  128. package/dist/llm/services/anthropic.js +217 -184
  129. package/dist/llm/services/factory.cjs +15 -9
  130. package/dist/llm/services/factory.d.ts +2 -1
  131. package/dist/llm/services/factory.d.ts.map +1 -1
  132. package/dist/llm/services/factory.js +15 -9
  133. package/dist/llm/services/openai.cjs +262 -225
  134. package/dist/llm/services/openai.d.ts +3 -1
  135. package/dist/llm/services/openai.d.ts.map +1 -1
  136. package/dist/llm/services/openai.js +263 -226
  137. package/dist/llm/services/test-utils.integration.cjs +58 -12
  138. package/dist/llm/services/test-utils.integration.d.ts.map +1 -1
  139. package/dist/llm/services/test-utils.integration.js +58 -12
  140. package/dist/llm/services/types.d.ts +9 -0
  141. package/dist/llm/services/types.d.ts.map +1 -1
  142. package/dist/llm/services/vercel.cjs +163 -111
  143. package/dist/llm/services/vercel.d.ts +3 -1
  144. package/dist/llm/services/vercel.d.ts.map +1 -1
  145. package/dist/llm/services/vercel.js +157 -105
  146. package/dist/llm/tokenizer/factory.cjs +2 -2
  147. package/dist/llm/tokenizer/factory.d.ts +3 -1
  148. package/dist/llm/tokenizer/factory.d.ts.map +1 -1
  149. package/dist/llm/tokenizer/factory.js +2 -2
  150. package/dist/llm/tokenizer/openai.cjs +16 -9
  151. package/dist/llm/tokenizer/openai.d.ts +4 -1
  152. package/dist/llm/tokenizer/openai.d.ts.map +1 -1
  153. package/dist/llm/tokenizer/openai.js +16 -9
  154. package/dist/llm/validation.cjs +8 -9
  155. package/dist/llm/validation.d.ts +3 -1
  156. package/dist/llm/validation.d.ts.map +1 -1
  157. package/dist/llm/validation.js +5 -6
  158. package/dist/logger/factory.cjs +54 -0
  159. package/dist/logger/factory.d.ts +36 -0
  160. package/dist/logger/factory.d.ts.map +1 -0
  161. package/dist/logger/factory.js +31 -0
  162. package/dist/logger/index.cjs +42 -3
  163. package/dist/logger/index.d.ts +17 -1
  164. package/dist/logger/index.d.ts.map +1 -1
  165. package/dist/logger/index.js +26 -1
  166. package/dist/logger/logger.cjs +30 -17
  167. package/dist/logger/logger.d.ts.map +1 -1
  168. package/dist/logger/logger.js +30 -17
  169. package/dist/logger/v2/dexto-logger.cjs +141 -0
  170. package/dist/logger/v2/dexto-logger.d.ts +54 -0
  171. package/dist/logger/v2/dexto-logger.d.ts.map +1 -0
  172. package/dist/logger/v2/dexto-logger.js +118 -0
  173. package/dist/{preferences → logger/v2}/error-codes.cjs +11 -10
  174. package/dist/logger/v2/error-codes.d.ts +13 -0
  175. package/dist/logger/v2/error-codes.d.ts.map +1 -0
  176. package/dist/logger/v2/error-codes.js +13 -0
  177. package/dist/logger/v2/errors.cjs +107 -0
  178. package/dist/logger/v2/errors.d.ts +32 -0
  179. package/dist/logger/v2/errors.d.ts.map +1 -0
  180. package/dist/logger/v2/errors.js +84 -0
  181. package/dist/logger/v2/schemas.cjs +57 -0
  182. package/dist/logger/v2/schemas.d.ts +147 -0
  183. package/dist/logger/v2/schemas.d.ts.map +1 -0
  184. package/dist/logger/v2/schemas.js +33 -0
  185. package/dist/logger/v2/transport-factory.cjs +53 -0
  186. package/dist/logger/v2/transport-factory.d.ts +21 -0
  187. package/dist/logger/v2/transport-factory.d.ts.map +1 -0
  188. package/dist/logger/v2/transport-factory.js +29 -0
  189. package/dist/logger/v2/transports/console-transport.cjs +79 -0
  190. package/dist/logger/v2/transports/console-transport.d.ts +23 -0
  191. package/dist/logger/v2/transports/console-transport.d.ts.map +1 -0
  192. package/dist/logger/v2/transports/console-transport.js +46 -0
  193. package/dist/logger/v2/transports/file-transport.cjs +161 -0
  194. package/dist/logger/v2/transports/file-transport.d.ts +46 -0
  195. package/dist/logger/v2/transports/file-transport.d.ts.map +1 -0
  196. package/dist/logger/v2/transports/file-transport.js +128 -0
  197. package/dist/logger/v2/types.cjs +49 -0
  198. package/dist/logger/v2/types.d.ts +123 -0
  199. package/dist/logger/v2/types.d.ts.map +1 -0
  200. package/dist/logger/v2/types.js +26 -0
  201. package/dist/mcp/manager.cjs +88 -78
  202. package/dist/mcp/manager.d.ts +3 -1
  203. package/dist/mcp/manager.d.ts.map +1 -1
  204. package/dist/mcp/manager.js +88 -78
  205. package/dist/mcp/mcp-client.cjs +109 -79
  206. package/dist/mcp/mcp-client.d.ts +3 -0
  207. package/dist/mcp/mcp-client.d.ts.map +1 -1
  208. package/dist/mcp/mcp-client.js +102 -72
  209. package/dist/memory/index.cjs +2 -0
  210. package/dist/memory/index.d.ts +1 -1
  211. package/dist/memory/index.d.ts.map +1 -1
  212. package/dist/memory/index.js +3 -1
  213. package/dist/memory/manager.cjs +9 -7
  214. package/dist/memory/manager.d.ts +3 -1
  215. package/dist/memory/manager.d.ts.map +1 -1
  216. package/dist/memory/manager.js +9 -7
  217. package/dist/memory/schemas.cjs +10 -0
  218. package/dist/memory/schemas.d.ts +37 -8
  219. package/dist/memory/schemas.d.ts.map +1 -1
  220. package/dist/memory/schemas.js +9 -0
  221. package/dist/plugins/manager.cjs +21 -19
  222. package/dist/plugins/manager.d.ts +3 -1
  223. package/dist/plugins/manager.d.ts.map +1 -1
  224. package/dist/plugins/manager.js +21 -19
  225. package/dist/plugins/schemas.d.ts +9 -9
  226. package/dist/plugins/types.d.ts +2 -2
  227. package/dist/plugins/types.d.ts.map +1 -1
  228. package/dist/process/command-validator.cjs +30 -20
  229. package/dist/process/command-validator.d.ts +4 -1
  230. package/dist/process/command-validator.d.ts.map +1 -1
  231. package/dist/process/command-validator.js +30 -20
  232. package/dist/process/process-service.cjs +23 -21
  233. package/dist/process/process-service.d.ts +3 -1
  234. package/dist/process/process-service.d.ts.map +1 -1
  235. package/dist/process/process-service.js +23 -21
  236. package/dist/prompts/index.cjs +6 -8
  237. package/dist/prompts/index.d.ts +2 -4
  238. package/dist/prompts/index.d.ts.map +1 -1
  239. package/dist/prompts/index.js +4 -6
  240. package/dist/prompts/prompt-manager.cjs +25 -20
  241. package/dist/prompts/prompt-manager.d.ts +3 -1
  242. package/dist/prompts/prompt-manager.d.ts.map +1 -1
  243. package/dist/prompts/prompt-manager.js +25 -20
  244. package/dist/prompts/providers/config-prompt-provider.cjs +331 -0
  245. package/dist/prompts/providers/config-prompt-provider.d.ts +34 -0
  246. package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -0
  247. package/dist/prompts/providers/config-prompt-provider.js +308 -0
  248. package/dist/prompts/providers/custom-prompt-provider.cjs +11 -7
  249. package/dist/prompts/providers/custom-prompt-provider.d.ts +3 -1
  250. package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -1
  251. package/dist/prompts/providers/custom-prompt-provider.js +11 -7
  252. package/dist/prompts/providers/mcp-prompt-provider.cjs +7 -6
  253. package/dist/prompts/providers/mcp-prompt-provider.d.ts +3 -1
  254. package/dist/prompts/providers/mcp-prompt-provider.d.ts.map +1 -1
  255. package/dist/prompts/providers/mcp-prompt-provider.js +7 -6
  256. package/dist/prompts/schemas.cjs +42 -23
  257. package/dist/prompts/schemas.d.ts +123 -14
  258. package/dist/prompts/schemas.d.ts.map +1 -1
  259. package/dist/prompts/schemas.js +39 -22
  260. package/dist/prompts/types.d.ts +1 -1
  261. package/dist/prompts/types.d.ts.map +1 -1
  262. package/dist/resources/handlers/blob-handler.cjs +15 -11
  263. package/dist/resources/handlers/blob-handler.d.ts +3 -1
  264. package/dist/resources/handlers/blob-handler.d.ts.map +1 -1
  265. package/dist/resources/handlers/blob-handler.js +15 -11
  266. package/dist/resources/handlers/factory.cjs +3 -3
  267. package/dist/resources/handlers/factory.d.ts +2 -1
  268. package/dist/resources/handlers/factory.d.ts.map +1 -1
  269. package/dist/resources/handlers/factory.js +3 -3
  270. package/dist/resources/handlers/filesystem-handler.cjs +10 -8
  271. package/dist/resources/handlers/filesystem-handler.d.ts +3 -1
  272. package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
  273. package/dist/resources/handlers/filesystem-handler.js +10 -8
  274. package/dist/resources/internal-provider.cjs +28 -20
  275. package/dist/resources/internal-provider.d.ts +3 -1
  276. package/dist/resources/internal-provider.d.ts.map +1 -1
  277. package/dist/resources/internal-provider.js +28 -20
  278. package/dist/resources/manager.cjs +34 -25
  279. package/dist/resources/manager.d.ts +3 -1
  280. package/dist/resources/manager.d.ts.map +1 -1
  281. package/dist/resources/manager.js +34 -25
  282. package/dist/resources/schemas.d.ts +6 -6
  283. package/dist/search/search-service.cjs +8 -6
  284. package/dist/search/search-service.d.ts +3 -1
  285. package/dist/search/search-service.d.ts.map +1 -1
  286. package/dist/search/search-service.js +8 -6
  287. package/dist/session/chat-session.cjs +40 -27
  288. package/dist/session/chat-session.d.ts +10 -7
  289. package/dist/session/chat-session.d.ts.map +1 -1
  290. package/dist/session/chat-session.js +40 -27
  291. package/dist/session/history/database.cjs +18 -11
  292. package/dist/session/history/database.d.ts +3 -1
  293. package/dist/session/history/database.d.ts.map +1 -1
  294. package/dist/session/history/database.js +18 -11
  295. package/dist/session/history/factory.cjs +2 -2
  296. package/dist/session/history/factory.d.ts +5 -1
  297. package/dist/session/history/factory.d.ts.map +1 -1
  298. package/dist/session/history/factory.js +2 -2
  299. package/dist/session/session-manager.cjs +37 -53
  300. package/dist/session/session-manager.d.ts +3 -17
  301. package/dist/session/session-manager.d.ts.map +1 -1
  302. package/dist/session/session-manager.js +37 -53
  303. package/dist/session/title-generator.cjs +3 -2
  304. package/dist/session/title-generator.d.ts +2 -1
  305. package/dist/session/title-generator.d.ts.map +1 -1
  306. package/dist/session/title-generator.js +3 -2
  307. package/dist/storage/blob/factory.cjs +9 -18
  308. package/dist/storage/blob/factory.d.ts +5 -4
  309. package/dist/storage/blob/factory.d.ts.map +1 -1
  310. package/dist/storage/blob/factory.js +8 -17
  311. package/dist/storage/blob/local-blob-store.cjs +25 -32
  312. package/dist/storage/blob/local-blob-store.d.ts +3 -2
  313. package/dist/storage/blob/local-blob-store.d.ts.map +1 -1
  314. package/dist/storage/blob/local-blob-store.js +25 -32
  315. package/dist/storage/blob/memory-blob-store.cjs +326 -0
  316. package/dist/storage/blob/memory-blob-store.d.ts +66 -0
  317. package/dist/storage/blob/memory-blob-store.d.ts.map +1 -0
  318. package/dist/storage/blob/memory-blob-store.js +303 -0
  319. package/dist/storage/blob/schemas.cjs +3 -1
  320. package/dist/storage/blob/schemas.d.ts +6 -6
  321. package/dist/storage/blob/schemas.d.ts.map +1 -1
  322. package/dist/storage/blob/schemas.js +3 -1
  323. package/dist/storage/cache/factory.cjs +7 -8
  324. package/dist/storage/cache/factory.d.ts +4 -1
  325. package/dist/storage/cache/factory.d.ts.map +1 -1
  326. package/dist/storage/cache/factory.js +4 -5
  327. package/dist/storage/cache/redis-store.cjs +4 -1
  328. package/dist/storage/cache/redis-store.d.ts +3 -1
  329. package/dist/storage/cache/redis-store.d.ts.map +1 -1
  330. package/dist/storage/cache/redis-store.js +4 -1
  331. package/dist/storage/database/factory.cjs +13 -16
  332. package/dist/storage/database/factory.d.ts +5 -3
  333. package/dist/storage/database/factory.d.ts.map +1 -1
  334. package/dist/storage/database/factory.js +9 -12
  335. package/dist/storage/database/postgres-store.cjs +4 -1
  336. package/dist/storage/database/postgres-store.d.ts +3 -1
  337. package/dist/storage/database/postgres-store.d.ts.map +1 -1
  338. package/dist/storage/database/postgres-store.js +4 -1
  339. package/dist/storage/database/schemas.cjs +3 -4
  340. package/dist/storage/database/schemas.d.ts +8 -16
  341. package/dist/storage/database/schemas.d.ts.map +1 -1
  342. package/dist/storage/database/schemas.js +3 -4
  343. package/dist/storage/database/sqlite-store.cjs +17 -45
  344. package/dist/storage/database/sqlite-store.d.ts +3 -3
  345. package/dist/storage/database/sqlite-store.d.ts.map +1 -1
  346. package/dist/storage/database/sqlite-store.js +17 -45
  347. package/dist/storage/schemas.cjs +3 -1
  348. package/dist/storage/schemas.d.ts +16 -23
  349. package/dist/storage/schemas.d.ts.map +1 -1
  350. package/dist/storage/schemas.js +3 -1
  351. package/dist/storage/storage-manager.cjs +15 -15
  352. package/dist/storage/storage-manager.d.ts +6 -6
  353. package/dist/storage/storage-manager.d.ts.map +1 -1
  354. package/dist/storage/storage-manager.js +15 -15
  355. package/dist/systemPrompt/contributors.cjs +15 -15
  356. package/dist/systemPrompt/contributors.d.ts +5 -3
  357. package/dist/systemPrompt/contributors.d.ts.map +1 -1
  358. package/dist/systemPrompt/contributors.js +15 -15
  359. package/dist/systemPrompt/in-built-prompts.cjs +0 -5
  360. package/dist/systemPrompt/in-built-prompts.d.ts +1 -2
  361. package/dist/systemPrompt/in-built-prompts.d.ts.map +1 -1
  362. package/dist/systemPrompt/in-built-prompts.js +0 -4
  363. package/dist/systemPrompt/manager.cjs +31 -23
  364. package/dist/systemPrompt/manager.d.ts +5 -3
  365. package/dist/systemPrompt/manager.d.ts.map +1 -1
  366. package/dist/systemPrompt/manager.js +31 -23
  367. package/dist/systemPrompt/registry.cjs +1 -2
  368. package/dist/systemPrompt/registry.d.ts +1 -1
  369. package/dist/systemPrompt/registry.d.ts.map +1 -1
  370. package/dist/systemPrompt/registry.js +1 -2
  371. package/dist/systemPrompt/schemas.cjs +24 -18
  372. package/dist/systemPrompt/schemas.d.ts +46 -222
  373. package/dist/systemPrompt/schemas.d.ts.map +1 -1
  374. package/dist/systemPrompt/schemas.js +14 -18
  375. package/dist/telemetry/decorators.cjs +54 -15
  376. package/dist/telemetry/decorators.d.ts.map +1 -1
  377. package/dist/telemetry/decorators.js +54 -15
  378. package/dist/telemetry/utils.cjs +21 -14
  379. package/dist/telemetry/utils.d.ts +7 -3
  380. package/dist/telemetry/utils.d.ts.map +1 -1
  381. package/dist/telemetry/utils.js +21 -14
  382. package/dist/tools/confirmation/allowed-tools-provider/factory.cjs +2 -2
  383. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts +2 -1
  384. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts.map +1 -1
  385. package/dist/tools/confirmation/allowed-tools-provider/factory.js +2 -2
  386. package/dist/tools/confirmation/allowed-tools-provider/storage.cjs +7 -6
  387. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts +3 -1
  388. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts.map +1 -1
  389. package/dist/tools/confirmation/allowed-tools-provider/storage.js +7 -6
  390. package/dist/tools/errors.cjs +2 -1
  391. package/dist/tools/errors.d.ts.map +1 -1
  392. package/dist/tools/errors.js +2 -1
  393. package/dist/tools/internal-tools/constants.cjs +2 -1
  394. package/dist/tools/internal-tools/constants.d.ts +1 -1
  395. package/dist/tools/internal-tools/constants.d.ts.map +1 -1
  396. package/dist/tools/internal-tools/constants.js +2 -1
  397. package/dist/tools/internal-tools/implementations/bash-exec-tool.cjs +1 -1
  398. package/dist/tools/internal-tools/implementations/bash-exec-tool.js +1 -1
  399. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.cjs +192 -0
  400. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts +33 -0
  401. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts.map +1 -0
  402. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.js +169 -0
  403. package/dist/tools/internal-tools/provider.cjs +21 -17
  404. package/dist/tools/internal-tools/provider.d.ts +3 -1
  405. package/dist/tools/internal-tools/provider.d.ts.map +1 -1
  406. package/dist/tools/internal-tools/provider.js +21 -17
  407. package/dist/tools/internal-tools/registry.cjs +5 -0
  408. package/dist/tools/internal-tools/registry.d.ts.map +1 -1
  409. package/dist/tools/internal-tools/registry.js +5 -0
  410. package/dist/tools/schemas.cjs +16 -4
  411. package/dist/tools/schemas.d.ts +21 -9
  412. package/dist/tools/schemas.d.ts.map +1 -1
  413. package/dist/tools/schemas.js +15 -4
  414. package/dist/tools/tool-manager.cjs +64 -47
  415. package/dist/tools/tool-manager.d.ts +4 -2
  416. package/dist/tools/tool-manager.d.ts.map +1 -1
  417. package/dist/tools/tool-manager.js +61 -44
  418. package/dist/tools/types.d.ts +0 -4
  419. package/dist/tools/types.d.ts.map +1 -1
  420. package/dist/utils/env-file.cjs +118 -0
  421. package/dist/utils/env-file.d.ts +5 -0
  422. package/dist/utils/env-file.d.ts.map +1 -0
  423. package/dist/utils/env-file.js +85 -0
  424. package/dist/utils/error-conversion.cjs +23 -1
  425. package/dist/utils/error-conversion.d.ts +2 -1
  426. package/dist/utils/error-conversion.d.ts.map +1 -1
  427. package/dist/utils/error-conversion.js +23 -1
  428. package/dist/utils/execution-context.d.ts.map +1 -1
  429. package/dist/utils/fs-walk.d.ts.map +1 -1
  430. package/dist/utils/index.cjs +7 -9
  431. package/dist/utils/index.d.ts +3 -4
  432. package/dist/utils/index.d.ts.map +1 -1
  433. package/dist/utils/index.js +3 -4
  434. package/dist/utils/path.cjs +22 -57
  435. package/dist/utils/path.d.ts +8 -7
  436. package/dist/utils/path.d.ts.map +1 -1
  437. package/dist/utils/path.js +21 -54
  438. package/dist/utils/result.cjs +37 -14
  439. package/dist/utils/result.d.ts.map +1 -1
  440. package/dist/utils/result.js +37 -14
  441. package/dist/utils/schema.cjs +2 -3
  442. package/dist/utils/schema.d.ts +2 -1
  443. package/dist/utils/schema.d.ts.map +1 -1
  444. package/dist/utils/schema.js +1 -2
  445. package/dist/utils/service-initializer.cjs +88 -61
  446. package/dist/utils/service-initializer.d.ts +4 -2
  447. package/dist/utils/service-initializer.d.ts.map +1 -1
  448. package/dist/utils/service-initializer.js +70 -43
  449. package/package.json +7 -3
  450. package/dist/Dexto.cjs +0 -251
  451. package/dist/Dexto.d.ts +0 -191
  452. package/dist/Dexto.d.ts.map +0 -1
  453. package/dist/Dexto.js +0 -228
  454. package/dist/agent/registry/error-codes.cjs +0 -44
  455. package/dist/agent/registry/error-codes.d.ts +0 -21
  456. package/dist/agent/registry/error-codes.d.ts.map +0 -1
  457. package/dist/agent/registry/error-codes.js +0 -21
  458. package/dist/agent/registry/errors.cjs +0 -188
  459. package/dist/agent/registry/errors.d.ts +0 -63
  460. package/dist/agent/registry/errors.d.ts.map +0 -1
  461. package/dist/agent/registry/errors.js +0 -165
  462. package/dist/agent/registry/registry.cjs +0 -479
  463. package/dist/agent/registry/registry.d.ts +0 -130
  464. package/dist/agent/registry/registry.d.ts.map +0 -1
  465. package/dist/agent/registry/registry.js +0 -453
  466. package/dist/agent/registry/types.cjs +0 -74
  467. package/dist/agent/registry/types.d.ts +0 -142
  468. package/dist/agent/registry/types.d.ts.map +0 -1
  469. package/dist/agent/registry/types.js +0 -48
  470. package/dist/agent/registry/user-registry.cjs +0 -140
  471. package/dist/agent/registry/user-registry.d.ts +0 -34
  472. package/dist/agent/registry/user-registry.d.ts.map +0 -1
  473. package/dist/agent/registry/user-registry.js +0 -105
  474. package/dist/approval/providers/event-based-approval-provider.cjs +0 -156
  475. package/dist/approval/providers/event-based-approval-provider.d.ts +0 -39
  476. package/dist/approval/providers/event-based-approval-provider.d.ts.map +0 -1
  477. package/dist/approval/providers/event-based-approval-provider.js +0 -133
  478. package/dist/approval/providers/factory.d.ts.map +0 -1
  479. package/dist/approval/providers/noop-approval-provider.cjs +0 -54
  480. package/dist/approval/providers/noop-approval-provider.d.ts +0 -18
  481. package/dist/approval/providers/noop-approval-provider.d.ts.map +0 -1
  482. package/dist/approval/providers/noop-approval-provider.js +0 -31
  483. package/dist/config/agent-resolver.cjs +0 -153
  484. package/dist/config/agent-resolver.d.ts +0 -14
  485. package/dist/config/agent-resolver.d.ts.map +0 -1
  486. package/dist/config/agent-resolver.js +0 -123
  487. package/dist/config/error-codes.cjs +0 -39
  488. package/dist/config/error-codes.d.ts +0 -16
  489. package/dist/config/error-codes.d.ts.map +0 -1
  490. package/dist/config/error-codes.js +0 -16
  491. package/dist/config/errors.cjs +0 -126
  492. package/dist/config/errors.d.ts +0 -34
  493. package/dist/config/errors.d.ts.map +0 -1
  494. package/dist/config/errors.js +0 -103
  495. package/dist/config/index.cjs +0 -26
  496. package/dist/config/index.d.ts +0 -4
  497. package/dist/config/index.d.ts.map +0 -1
  498. package/dist/config/index.js +0 -3
  499. package/dist/config/loader.cjs +0 -119
  500. package/dist/config/loader.d.ts +0 -16
  501. package/dist/config/loader.d.ts.map +0 -1
  502. package/dist/config/loader.js +0 -86
  503. package/dist/config/writer.cjs +0 -182
  504. package/dist/config/writer.d.ts +0 -35
  505. package/dist/config/writer.d.ts.map +0 -1
  506. package/dist/config/writer.js +0 -147
  507. package/dist/preferences/constants.d.ts +0 -2
  508. package/dist/preferences/constants.d.ts.map +0 -1
  509. package/dist/preferences/constants.js +0 -5
  510. package/dist/preferences/error-codes.d.ts +0 -8
  511. package/dist/preferences/error-codes.d.ts.map +0 -1
  512. package/dist/preferences/error-codes.js +0 -12
  513. package/dist/preferences/errors.cjs +0 -75
  514. package/dist/preferences/errors.d.ts +0 -18
  515. package/dist/preferences/errors.d.ts.map +0 -1
  516. package/dist/preferences/errors.js +0 -51
  517. package/dist/preferences/index.cjs +0 -55
  518. package/dist/preferences/index.d.ts +0 -6
  519. package/dist/preferences/index.d.ts.map +0 -1
  520. package/dist/preferences/index.js +0 -32
  521. package/dist/preferences/loader.cjs +0 -138
  522. package/dist/preferences/loader.d.ts +0 -51
  523. package/dist/preferences/loader.d.ts.map +0 -1
  524. package/dist/preferences/loader.js +0 -110
  525. package/dist/preferences/schemas.cjs +0 -75
  526. package/dist/preferences/schemas.d.ts +0 -110
  527. package/dist/preferences/schemas.d.ts.map +0 -1
  528. package/dist/preferences/schemas.js +0 -49
  529. package/dist/prompts/providers/file-prompt-provider.cjs +0 -399
  530. package/dist/prompts/providers/file-prompt-provider.d.ts +0 -47
  531. package/dist/prompts/providers/file-prompt-provider.d.ts.map +0 -1
  532. package/dist/prompts/providers/file-prompt-provider.js +0 -376
  533. package/dist/prompts/providers/starter-prompt-provider.cjs +0 -170
  534. package/dist/prompts/providers/starter-prompt-provider.d.ts +0 -45
  535. package/dist/prompts/providers/starter-prompt-provider.d.ts.map +0 -1
  536. package/dist/prompts/providers/starter-prompt-provider.js +0 -147
  537. package/dist/utils/api-key-store.cjs +0 -56
  538. package/dist/utils/api-key-store.d.ts +0 -24
  539. package/dist/utils/api-key-store.d.ts.map +0 -1
  540. package/dist/utils/api-key-store.js +0 -31
  541. package/dist/utils/env.cjs +0 -154
  542. package/dist/utils/env.d.ts +0 -28
  543. package/dist/utils/env.d.ts.map +0 -1
  544. package/dist/utils/env.js +0 -119
  545. package/dist/utils/port-utils.cjs +0 -37
  546. package/dist/utils/port-utils.d.ts +0 -10
  547. package/dist/utils/port-utils.d.ts.map +0 -1
  548. package/dist/utils/port-utils.js +0 -14
  549. package/dist/utils/port-utils.spec.cjs +0 -26
  550. package/dist/utils/port-utils.spec.js +0 -25
  551. /package/dist/approval/{providers/factory.cjs → factory.cjs} +0 -0
@@ -27,11 +27,13 @@ var import_sse = require("@modelcontextprotocol/sdk/client/sse.js");
27
27
  var import_streamableHttp = require("@modelcontextprotocol/sdk/client/streamableHttp.js");
28
28
  var import_events = require("events");
29
29
  var import_zod = require("zod");
30
- var import_logger = require("../logger/index.js");
31
- var import_types = require("../approval/types.js");
32
- var import_path = require("../utils/path.js");
30
+ var import_types = require("../logger/v2/types.js");
31
+ var import_types2 = require("../approval/types.js");
33
32
  var import_errors = require("./errors.js");
34
- var import_types4 = require("@modelcontextprotocol/sdk/types.js");
33
+ var import_types5 = require("@modelcontextprotocol/sdk/types.js");
34
+ var import_api = require("@opentelemetry/api");
35
+ var import_utils = require("../telemetry/utils.js");
36
+ var import_safe_stringify = require("../utils/safe-stringify.js");
35
37
  class MCPClient extends import_events.EventEmitter {
36
38
  client = null;
37
39
  transport = null;
@@ -47,6 +49,11 @@ class MCPClient extends import_events.EventEmitter {
47
49
  // Default timeout value
48
50
  approvalManager = null;
49
51
  // Will be set by MCPManager
52
+ logger;
53
+ constructor(logger) {
54
+ super();
55
+ this.logger = logger.createChild(import_types.DextoLogComponent.MCP);
56
+ }
50
57
  async connect(config, serverName) {
51
58
  this.timeout = config.timeout ?? 3e4;
52
59
  if (config.type === "stdio") {
@@ -80,30 +87,17 @@ class MCPClient extends import_events.EventEmitter {
80
87
  this.resolvedArgs = [...this.originalArgs];
81
88
  this.serverEnv = env || null;
82
89
  this.serverAlias = serverAlias || null;
83
- if (command === "node" && this.resolvedArgs && this.resolvedArgs.length > 0 && this.resolvedArgs[0]?.startsWith("dist/")) {
84
- try {
85
- const scriptRelativePath = this.resolvedArgs[0];
86
- this.resolvedArgs[0] = (0, import_path.resolveBundledScript)(scriptRelativePath);
87
- import_logger.logger.debug(
88
- `Resolved bundled script path: ${scriptRelativePath} -> ${this.resolvedArgs[0]}`
89
- );
90
- } catch (e) {
91
- import_logger.logger.warn(
92
- `Failed to resolve path for bundled script ${this.resolvedArgs[0]}: ${JSON.stringify(e, null, 2)}`
93
- );
94
- }
95
- }
96
- import_logger.logger.info("=======================================");
97
- import_logger.logger.info(`MCP SERVER: ${command} ${this.resolvedArgs.join(" ")}`, null, "magenta");
90
+ this.logger.info("=======================================");
91
+ this.logger.info(`MCP SERVER: ${command} ${this.resolvedArgs.join(" ")}`);
98
92
  if (env) {
99
- import_logger.logger.info("Environment:");
93
+ this.logger.info("Environment:");
100
94
  Object.entries(env).forEach(([key, _]) => {
101
- import_logger.logger.info(` ${key}= [value hidden]`);
95
+ this.logger.info(` ${key}= [value hidden]`);
102
96
  });
103
97
  }
104
- import_logger.logger.info("=======================================\n");
98
+ this.logger.info("=======================================\n");
105
99
  const serverName = this.serverAlias ? `"${this.serverAlias}" (${command} ${this.resolvedArgs.join(" ")})` : `${command} ${this.resolvedArgs.join(" ")}`;
106
- import_logger.logger.info(`Connecting to MCP server: ${serverName}`);
100
+ this.logger.info(`Connecting to MCP server: ${serverName}`);
107
101
  const expandedEnv = {
108
102
  ...process.env,
109
103
  ...env || {}
@@ -127,24 +121,24 @@ class MCPClient extends import_events.EventEmitter {
127
121
  }
128
122
  );
129
123
  try {
130
- import_logger.logger.info("Establishing connection...");
124
+ this.logger.info("Establishing connection...");
131
125
  await this.client.connect(this.transport);
132
126
  this.serverSpawned = true;
133
- import_logger.logger.info(`\u2705 Stdio SERVER ${serverName} SPAWNED`);
134
- import_logger.logger.info("Connection established!\n\n");
127
+ this.logger.info(`\u2705 Stdio SERVER ${serverName} SPAWNED`);
128
+ this.logger.info("Connection established!\n\n");
135
129
  this.isConnected = true;
136
130
  this.setupNotificationHandlers();
137
131
  this.setupElicitationHandler();
138
132
  return this.client;
139
133
  } catch (error) {
140
- import_logger.logger.error(
134
+ this.logger.error(
141
135
  `Failed to connect to MCP server ${serverName}: ${JSON.stringify(error.message, null, 2)}`
142
136
  );
143
137
  throw error;
144
138
  }
145
139
  }
146
140
  async connectViaSSE(url, headers = {}, serverName) {
147
- import_logger.logger.debug(`Connecting to SSE MCP server at url: ${url}`);
141
+ this.logger.debug(`Connecting to SSE MCP server at url: ${url}`);
148
142
  this.transport = new import_sse.SSEClientTransport(new URL(url), {
149
143
  // For regular HTTP requests
150
144
  requestInit: {
@@ -152,7 +146,7 @@ class MCPClient extends import_events.EventEmitter {
152
146
  }
153
147
  // Need to implement eventSourceInit for SSE events.
154
148
  });
155
- import_logger.logger.debug("[connectViaSSE] SSE transport initialized");
149
+ this.logger.debug("[connectViaSSE] SSE transport initialized");
156
150
  this.client = new import_client.Client(
157
151
  {
158
152
  name: "Dexto-sse-mcp-client",
@@ -167,17 +161,17 @@ class MCPClient extends import_events.EventEmitter {
167
161
  }
168
162
  );
169
163
  try {
170
- import_logger.logger.info("Establishing connection...");
164
+ this.logger.info("Establishing connection...");
171
165
  await this.client.connect(this.transport);
172
166
  this.serverSpawned = true;
173
- import_logger.logger.info(`\u2705 ${serverName} SSE SERVER SPAWNED`);
174
- import_logger.logger.info("Connection established!\n\n");
167
+ this.logger.info(`\u2705 ${serverName} SSE SERVER SPAWNED`);
168
+ this.logger.info("Connection established!\n\n");
175
169
  this.isConnected = true;
176
170
  this.setupNotificationHandlers();
177
171
  this.setupElicitationHandler();
178
172
  return this.client;
179
173
  } catch (error) {
180
- import_logger.logger.error(
174
+ this.logger.error(
181
175
  `Failed to connect to SSE MCP server ${url}: ${JSON.stringify(error.message, null, 2)}`
182
176
  );
183
177
  throw error;
@@ -187,9 +181,13 @@ class MCPClient extends import_events.EventEmitter {
187
181
  * Connect to an MCP server via Streamable HTTP transport
188
182
  */
189
183
  async connectViaHttp(url, headers = {}, serverAlias) {
190
- import_logger.logger.info(`Connecting to HTTP MCP server at ${url}`);
184
+ this.logger.info(`Connecting to HTTP MCP server at ${url}`);
185
+ const defaultHeaders = {
186
+ Accept: "application/json, text/event-stream"
187
+ };
188
+ const mergedHeaders = { ...defaultHeaders, ...headers };
191
189
  this.transport = new import_streamableHttp.StreamableHTTPClientTransport(new URL(url), {
192
- requestInit: { headers: headers || {} }
190
+ requestInit: { headers: mergedHeaders }
193
191
  });
194
192
  this.client = new import_client.Client(
195
193
  { name: "Dexto-http-mcp-client", version: "1.0.0" },
@@ -202,15 +200,15 @@ class MCPClient extends import_events.EventEmitter {
202
200
  }
203
201
  );
204
202
  try {
205
- import_logger.logger.info("Establishing HTTP connection...");
203
+ this.logger.info("Establishing HTTP connection...");
206
204
  await this.client.connect(this.transport);
207
205
  this.isConnected = true;
208
- import_logger.logger.info(`\u2705 HTTP SERVER ${serverAlias ?? url} CONNECTED`);
206
+ this.logger.info(`\u2705 HTTP SERVER ${serverAlias ?? url} CONNECTED`);
209
207
  this.setupNotificationHandlers();
210
208
  this.setupElicitationHandler();
211
209
  return this.client;
212
210
  } catch (error) {
213
- import_logger.logger.error(
211
+ this.logger.error(
214
212
  `Failed to connect to HTTP MCP server ${url}: ${JSON.stringify(error.message, null, 2)}`
215
213
  );
216
214
  throw error;
@@ -225,9 +223,9 @@ class MCPClient extends import_events.EventEmitter {
225
223
  await this.transport.close();
226
224
  this.isConnected = false;
227
225
  this.serverSpawned = false;
228
- import_logger.logger.info("Disconnected from MCP server");
226
+ this.logger.info("Disconnected from MCP server");
229
227
  } catch (error) {
230
- import_logger.logger.error(
228
+ this.logger.error(
231
229
  `Error disconnecting from MCP server: ${JSON.stringify(error.message, null, 2)}`
232
230
  );
233
231
  }
@@ -241,8 +239,21 @@ class MCPClient extends import_events.EventEmitter {
241
239
  */
242
240
  async callTool(name, args) {
243
241
  this.ensureConnected();
242
+ const shouldTrace = (0, import_utils.hasActiveTelemetry)();
243
+ const tracer = shouldTrace ? import_api.trace.getTracer("dexto") : null;
244
+ const span = tracer?.startSpan(`mcp.tool.${name}`, {
245
+ kind: import_api.SpanKind.CLIENT
246
+ });
244
247
  try {
245
- import_logger.logger.debug(`Calling tool '${name}' with args: ${JSON.stringify(args, null, 2)}`);
248
+ if (span) {
249
+ const ctx = import_api.trace.setSpan(import_api.context.active(), span);
250
+ (0, import_utils.addBaggageAttributesToSpan)(span, ctx, this.logger);
251
+ span.setAttribute("tool.name", name);
252
+ span.setAttribute("tool.server", this.serverAlias || "unknown");
253
+ span.setAttribute("tool.timeout", this.timeout);
254
+ span.setAttribute("tool.arguments", (0, import_safe_stringify.safeStringify)(args, 4096));
255
+ }
256
+ this.logger.debug(`Calling tool '${name}' with args: ${JSON.stringify(args, null, 2)}`);
246
257
  let toolArgs = args;
247
258
  if (typeof args === "string") {
248
259
  try {
@@ -251,7 +262,7 @@ class MCPClient extends import_events.EventEmitter {
251
262
  toolArgs = { input: args };
252
263
  }
253
264
  }
254
- import_logger.logger.debug(`Using timeout: ${this.timeout}`);
265
+ this.logger.debug(`Using timeout: ${this.timeout}`);
255
266
  const result = await this.client.callTool(
256
267
  { name, arguments: toolArgs },
257
268
  void 0,
@@ -269,14 +280,27 @@ class MCPClient extends import_events.EventEmitter {
269
280
  },
270
281
  2
271
282
  );
272
- import_logger.logger.debug(`Tool '${name}' result: ${logResult}`);
283
+ this.logger.debug(`Tool '${name}' result: ${logResult}`);
284
+ if (span) {
285
+ span.setAttribute("tool.result", (0, import_safe_stringify.safeStringify)(result, 4096));
286
+ span.setStatus({ code: import_api.SpanStatusCode.OK });
287
+ }
273
288
  if (result === null || result === void 0) {
274
289
  return "Tool executed successfully with no result data.";
275
290
  }
276
291
  return result;
277
292
  } catch (error) {
278
- import_logger.logger.error(`Tool call '${name}' failed: ${JSON.stringify(error, null, 2)}`);
293
+ this.logger.error(`Tool call '${name}' failed: ${JSON.stringify(error, null, 2)}`);
294
+ if (span) {
295
+ span.recordException(error);
296
+ span.setStatus({
297
+ code: import_api.SpanStatusCode.ERROR,
298
+ message: error instanceof Error ? error.message : String(error)
299
+ });
300
+ }
279
301
  return `Error executing tool '${name}': ${error instanceof Error ? error.message : String(error)}`;
302
+ } finally {
303
+ span?.end();
280
304
  }
281
305
  }
282
306
  /**
@@ -288,11 +312,11 @@ class MCPClient extends import_events.EventEmitter {
288
312
  const tools = {};
289
313
  try {
290
314
  const listToolResult = await this.client.listTools({});
291
- import_logger.logger.silly(`listTools result: ${JSON.stringify(listToolResult, null, 2)}`);
315
+ this.logger.silly(`listTools result: ${JSON.stringify(listToolResult, null, 2)}`);
292
316
  if (listToolResult && listToolResult.tools) {
293
317
  listToolResult.tools.forEach((tool) => {
294
318
  if (!tool.description) {
295
- import_logger.logger.warn(`Tool '${tool.name}' is missing a description`);
319
+ this.logger.warn(`Tool '${tool.name}' is missing a description`);
296
320
  }
297
321
  if (!tool.inputSchema) {
298
322
  throw import_errors.MCPError.invalidToolSchema(tool.name, "missing input schema");
@@ -308,7 +332,7 @@ class MCPClient extends import_events.EventEmitter {
308
332
  );
309
333
  }
310
334
  } catch (error) {
311
- import_logger.logger.warn(
335
+ this.logger.warn(
312
336
  `Failed to get tools from MCP server, proceeding with zero tools: ${JSON.stringify(error, null, 2)}`
313
337
  );
314
338
  return tools;
@@ -323,10 +347,10 @@ class MCPClient extends import_events.EventEmitter {
323
347
  this.ensureConnected();
324
348
  try {
325
349
  const response = await this.client.listPrompts();
326
- import_logger.logger.debug(`listPrompts response: ${JSON.stringify(response, null, 2)}`);
350
+ this.logger.debug(`listPrompts response: ${JSON.stringify(response, null, 2)}`);
327
351
  return response.prompts;
328
352
  } catch (error) {
329
- import_logger.logger.debug(
353
+ this.logger.debug(
330
354
  `Failed to list prompts from MCP server (optional feature), skipping: ${JSON.stringify(error, null, 2)}`
331
355
  );
332
356
  return [];
@@ -342,15 +366,17 @@ class MCPClient extends import_events.EventEmitter {
342
366
  async getPrompt(name, args) {
343
367
  this.ensureConnected();
344
368
  try {
345
- import_logger.logger.debug(`Getting prompt '${name}' with args: ${JSON.stringify(args, null, 2)}`);
369
+ this.logger.debug(
370
+ `Getting prompt '${name}' with args: ${JSON.stringify(args, null, 2)}`
371
+ );
346
372
  const response = await this.client.getPrompt(
347
373
  { name, arguments: args },
348
374
  { timeout: this.timeout }
349
375
  );
350
- import_logger.logger.debug(`getPrompt '${name}' response: ${JSON.stringify(response, null, 2)}`);
376
+ this.logger.debug(`getPrompt '${name}' response: ${JSON.stringify(response, null, 2)}`);
351
377
  return response;
352
378
  } catch (error) {
353
- import_logger.logger.debug(
379
+ this.logger.debug(
354
380
  `Failed to get prompt '${name}' from MCP server: ${JSON.stringify(error, null, 2)}`
355
381
  );
356
382
  throw import_errors.MCPError.protocolError(
@@ -367,7 +393,7 @@ class MCPClient extends import_events.EventEmitter {
367
393
  this.ensureConnected();
368
394
  try {
369
395
  const response = await this.client.listResources();
370
- import_logger.logger.debug(`listResources response: ${JSON.stringify(response, null, 2)}`);
396
+ this.logger.debug(`listResources response: ${JSON.stringify(response, null, 2)}`);
371
397
  return response.resources.map(
372
398
  (r) => ({
373
399
  uri: r.uri,
@@ -377,7 +403,7 @@ class MCPClient extends import_events.EventEmitter {
377
403
  })
378
404
  );
379
405
  } catch (error) {
380
- import_logger.logger.debug(
406
+ this.logger.debug(
381
407
  `Failed to list resources from MCP server (optional feature), skipping: ${JSON.stringify(error, null, 2)}`
382
408
  );
383
409
  return [];
@@ -391,12 +417,14 @@ class MCPClient extends import_events.EventEmitter {
391
417
  async readResource(uri) {
392
418
  this.ensureConnected();
393
419
  try {
394
- import_logger.logger.debug(`Reading resource '${uri}'`);
420
+ this.logger.debug(`Reading resource '${uri}'`);
395
421
  const response = await this.client.readResource({ uri }, { timeout: this.timeout });
396
- import_logger.logger.debug(`readResource '${uri}' response: ${JSON.stringify(response, null, 2)}`);
422
+ this.logger.debug(
423
+ `readResource '${uri}' response: ${JSON.stringify(response, null, 2)}`
424
+ );
397
425
  return response;
398
426
  } catch (error) {
399
- import_logger.logger.debug(
427
+ this.logger.debug(
400
428
  `Failed to read resource '${uri}' from MCP server: ${JSON.stringify(error, null, 2)}`
401
429
  );
402
430
  throw import_errors.MCPError.protocolError(
@@ -452,7 +480,7 @@ class MCPClient extends import_events.EventEmitter {
452
480
  if (!this.client) return;
453
481
  try {
454
482
  this.client.setNotificationHandler(
455
- import_types4.ResourceUpdatedNotificationSchema,
483
+ import_types5.ResourceUpdatedNotificationSchema,
456
484
  (notification) => {
457
485
  this.handleResourceUpdated({
458
486
  uri: notification.params.uri
@@ -460,43 +488,43 @@ class MCPClient extends import_events.EventEmitter {
460
488
  }
461
489
  );
462
490
  } catch (error) {
463
- import_logger.logger.warn(`Could not set resources/updated notification handler: ${error}`);
491
+ this.logger.warn(`Could not set resources/updated notification handler: ${error}`);
464
492
  }
465
493
  try {
466
- this.client.setNotificationHandler(import_types4.PromptListChangedNotificationSchema, () => {
494
+ this.client.setNotificationHandler(import_types5.PromptListChangedNotificationSchema, () => {
467
495
  this.handlePromptsListChanged();
468
496
  });
469
497
  } catch (error) {
470
- import_logger.logger.warn(`Could not set prompts/list_changed notification handler: ${error}`);
498
+ this.logger.warn(`Could not set prompts/list_changed notification handler: ${error}`);
471
499
  }
472
500
  try {
473
- this.client.setNotificationHandler(import_types4.ToolListChangedNotificationSchema, () => {
501
+ this.client.setNotificationHandler(import_types5.ToolListChangedNotificationSchema, () => {
474
502
  this.handleToolsListChanged();
475
503
  });
476
504
  } catch (error) {
477
- import_logger.logger.warn(`Could not set tools/list_changed notification handler: ${error}`);
505
+ this.logger.warn(`Could not set tools/list_changed notification handler: ${error}`);
478
506
  }
479
- import_logger.logger.debug("MCP notification handlers registered (resources, prompts, tools)");
507
+ this.logger.debug("MCP notification handlers registered (resources, prompts, tools)");
480
508
  }
481
509
  /**
482
510
  * Handle resource updated notification
483
511
  */
484
512
  handleResourceUpdated(params) {
485
- import_logger.logger.debug(`Resource updated: ${params.uri}`);
513
+ this.logger.debug(`Resource updated: ${params.uri}`);
486
514
  this.emit("resourceUpdated", params);
487
515
  }
488
516
  /**
489
517
  * Handle prompts list changed notification
490
518
  */
491
519
  handlePromptsListChanged() {
492
- import_logger.logger.debug("Prompts list changed");
520
+ this.logger.debug("Prompts list changed");
493
521
  this.emit("promptsListChanged");
494
522
  }
495
523
  /**
496
524
  * Handle tools list changed notification
497
525
  */
498
526
  handleToolsListChanged() {
499
- import_logger.logger.debug("Tools list changed");
527
+ this.logger.debug("Tools list changed");
500
528
  this.emit("toolsListChanged");
501
529
  }
502
530
  /**
@@ -513,11 +541,11 @@ class MCPClient extends import_events.EventEmitter {
513
541
  */
514
542
  setupElicitationHandler() {
515
543
  if (!this.client) {
516
- import_logger.logger.warn("Cannot setup elicitation handler: client not initialized");
544
+ this.logger.warn("Cannot setup elicitation handler: client not initialized");
517
545
  return;
518
546
  }
519
547
  if (!this.approvalManager) {
520
- import_logger.logger.warn("Cannot setup elicitation handler: approval manager not set");
548
+ this.logger.warn("Cannot setup elicitation handler: approval manager not set");
521
549
  return;
522
550
  }
523
551
  const ElicitationCreateRequestSchema = import_zod.z.object({
@@ -529,16 +557,16 @@ class MCPClient extends import_events.EventEmitter {
529
557
  }).passthrough();
530
558
  this.client.setRequestHandler(ElicitationCreateRequestSchema, async (request) => {
531
559
  const params = request.params;
532
- import_logger.logger.info(
560
+ this.logger.info(
533
561
  `Elicitation request from MCP server '${this.serverAlias}': ${params.message}`
534
562
  );
535
563
  try {
536
564
  if (!this.approvalManager) {
537
- import_logger.logger.error("Approval manager not available for elicitation request");
565
+ this.logger.error("Approval manager not available for elicitation request");
538
566
  return { action: "decline" };
539
567
  }
540
568
  if (typeof params.requestedSchema !== "object" || params.requestedSchema === null || Array.isArray(params.requestedSchema)) {
541
- import_logger.logger.error(
569
+ this.logger.error(
542
570
  `Invalid elicitation schema from '${this.serverAlias}': expected object, got ${typeof params.requestedSchema}`
543
571
  );
544
572
  return { action: "decline" };
@@ -548,32 +576,34 @@ class MCPClient extends import_events.EventEmitter {
548
576
  prompt: params.message,
549
577
  serverName: this.serverAlias || "unknown"
550
578
  });
551
- if (response.status === import_types.ApprovalStatus.APPROVED && response.data) {
579
+ if (response.status === import_types2.ApprovalStatus.APPROVED && response.data) {
552
580
  const formData = response.data && typeof response.data === "object" && "formData" in response.data ? response.data.formData : {};
553
- import_logger.logger.info(`Elicitation approved for '${this.serverAlias}', returning data`);
581
+ this.logger.info(
582
+ `Elicitation approved for '${this.serverAlias}', returning data`
583
+ );
554
584
  return {
555
585
  action: "accept",
556
586
  content: formData
557
587
  };
558
- } else if (response.status === import_types.ApprovalStatus.DENIED) {
559
- import_logger.logger.info(`Elicitation declined for '${this.serverAlias}'`);
588
+ } else if (response.status === import_types2.ApprovalStatus.DENIED) {
589
+ this.logger.info(`Elicitation declined for '${this.serverAlias}'`);
560
590
  return {
561
591
  action: "decline"
562
592
  };
563
593
  } else {
564
- import_logger.logger.info(`Elicitation cancelled for '${this.serverAlias}'`);
594
+ this.logger.info(`Elicitation cancelled for '${this.serverAlias}'`);
565
595
  return {
566
596
  action: "cancel"
567
597
  };
568
598
  }
569
599
  } catch (error) {
570
- import_logger.logger.error(`Elicitation error for '${this.serverAlias}': ${error}`);
600
+ this.logger.error(`Elicitation error for '${this.serverAlias}': ${error}`);
571
601
  return {
572
602
  action: "decline"
573
603
  };
574
604
  }
575
605
  });
576
- import_logger.logger.debug(`Elicitation handler registered for MCP server '${this.serverAlias}'`);
606
+ this.logger.debug(`Elicitation handler registered for MCP server '${this.serverAlias}'`);
577
607
  }
578
608
  }
579
609
  // Annotate the CommonJS export names for ESM import in node:
@@ -1,5 +1,6 @@
1
1
  import { Client } from '@modelcontextprotocol/sdk/client/index.js';
2
2
  import { EventEmitter } from 'events';
3
+ import type { IDextoLogger } from '../logger/v2/types.js';
3
4
  import type { ApprovalManager } from '../approval/manager.js';
4
5
  import type { ValidatedMcpServerConfig } from './schemas.js';
5
6
  import { ToolSet } from '../tools/types.js';
@@ -21,6 +22,8 @@ export declare class MCPClient extends EventEmitter implements IMCPClient {
21
22
  private serverAlias;
22
23
  private timeout;
23
24
  private approvalManager;
25
+ private logger;
26
+ constructor(logger: IDextoLogger);
24
27
  connect(config: ValidatedMcpServerConfig, serverName: string): Promise<Client>;
25
28
  /**
26
29
  * Connect to an MCP server via stdio
@@ -1 +1 @@
1
- {"version":3,"file":"mcp-client.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mcp-client.d.ts","sourceRoot":"","sources":["../../src/mcp/mcp-client.ts"],"names":[],"mappings":"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"}