@dexto/core 1.2.4 → 1.2.5

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 (523) 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 +164 -64
  15. package/dist/agent/schemas.d.ts +2605 -517
  16. package/dist/agent/schemas.d.ts.map +1 -1
  17. package/dist/agent/schemas.js +167 -64
  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/manager.cjs +9 -7
  210. package/dist/memory/manager.d.ts +3 -1
  211. package/dist/memory/manager.d.ts.map +1 -1
  212. package/dist/memory/manager.js +9 -7
  213. package/dist/memory/schemas.d.ts +6 -6
  214. package/dist/plugins/manager.cjs +21 -19
  215. package/dist/plugins/manager.d.ts +3 -1
  216. package/dist/plugins/manager.d.ts.map +1 -1
  217. package/dist/plugins/manager.js +21 -19
  218. package/dist/plugins/schemas.d.ts +9 -9
  219. package/dist/plugins/types.d.ts +2 -2
  220. package/dist/plugins/types.d.ts.map +1 -1
  221. package/dist/process/command-validator.cjs +30 -20
  222. package/dist/process/command-validator.d.ts +4 -1
  223. package/dist/process/command-validator.d.ts.map +1 -1
  224. package/dist/process/command-validator.js +30 -20
  225. package/dist/process/process-service.cjs +23 -21
  226. package/dist/process/process-service.d.ts +3 -1
  227. package/dist/process/process-service.d.ts.map +1 -1
  228. package/dist/process/process-service.js +23 -21
  229. package/dist/prompts/prompt-manager.cjs +25 -18
  230. package/dist/prompts/prompt-manager.d.ts +3 -1
  231. package/dist/prompts/prompt-manager.d.ts.map +1 -1
  232. package/dist/prompts/prompt-manager.js +25 -18
  233. package/dist/prompts/providers/custom-prompt-provider.cjs +11 -7
  234. package/dist/prompts/providers/custom-prompt-provider.d.ts +3 -1
  235. package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -1
  236. package/dist/prompts/providers/custom-prompt-provider.js +11 -7
  237. package/dist/prompts/providers/file-prompt-provider.cjs +14 -12
  238. package/dist/prompts/providers/file-prompt-provider.d.ts +3 -1
  239. package/dist/prompts/providers/file-prompt-provider.d.ts.map +1 -1
  240. package/dist/prompts/providers/file-prompt-provider.js +14 -12
  241. package/dist/prompts/providers/mcp-prompt-provider.cjs +7 -6
  242. package/dist/prompts/providers/mcp-prompt-provider.d.ts +3 -1
  243. package/dist/prompts/providers/mcp-prompt-provider.d.ts.map +1 -1
  244. package/dist/prompts/providers/mcp-prompt-provider.js +7 -6
  245. package/dist/prompts/providers/starter-prompt-provider.cjs +7 -5
  246. package/dist/prompts/providers/starter-prompt-provider.d.ts +3 -1
  247. package/dist/prompts/providers/starter-prompt-provider.d.ts.map +1 -1
  248. package/dist/prompts/providers/starter-prompt-provider.js +7 -5
  249. package/dist/prompts/schemas.d.ts +3 -3
  250. package/dist/resources/handlers/blob-handler.cjs +15 -11
  251. package/dist/resources/handlers/blob-handler.d.ts +3 -1
  252. package/dist/resources/handlers/blob-handler.d.ts.map +1 -1
  253. package/dist/resources/handlers/blob-handler.js +15 -11
  254. package/dist/resources/handlers/factory.cjs +3 -3
  255. package/dist/resources/handlers/factory.d.ts +2 -1
  256. package/dist/resources/handlers/factory.d.ts.map +1 -1
  257. package/dist/resources/handlers/factory.js +3 -3
  258. package/dist/resources/handlers/filesystem-handler.cjs +10 -8
  259. package/dist/resources/handlers/filesystem-handler.d.ts +3 -1
  260. package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
  261. package/dist/resources/handlers/filesystem-handler.js +10 -8
  262. package/dist/resources/internal-provider.cjs +28 -20
  263. package/dist/resources/internal-provider.d.ts +3 -1
  264. package/dist/resources/internal-provider.d.ts.map +1 -1
  265. package/dist/resources/internal-provider.js +28 -20
  266. package/dist/resources/manager.cjs +34 -25
  267. package/dist/resources/manager.d.ts +3 -1
  268. package/dist/resources/manager.d.ts.map +1 -1
  269. package/dist/resources/manager.js +34 -25
  270. package/dist/resources/schemas.d.ts +6 -6
  271. package/dist/search/search-service.cjs +8 -6
  272. package/dist/search/search-service.d.ts +3 -1
  273. package/dist/search/search-service.d.ts.map +1 -1
  274. package/dist/search/search-service.js +8 -6
  275. package/dist/session/chat-session.cjs +40 -27
  276. package/dist/session/chat-session.d.ts +10 -7
  277. package/dist/session/chat-session.d.ts.map +1 -1
  278. package/dist/session/chat-session.js +40 -27
  279. package/dist/session/history/database.cjs +18 -11
  280. package/dist/session/history/database.d.ts +3 -1
  281. package/dist/session/history/database.d.ts.map +1 -1
  282. package/dist/session/history/database.js +18 -11
  283. package/dist/session/history/factory.cjs +2 -2
  284. package/dist/session/history/factory.d.ts +5 -1
  285. package/dist/session/history/factory.d.ts.map +1 -1
  286. package/dist/session/history/factory.js +2 -2
  287. package/dist/session/session-manager.cjs +37 -53
  288. package/dist/session/session-manager.d.ts +3 -17
  289. package/dist/session/session-manager.d.ts.map +1 -1
  290. package/dist/session/session-manager.js +37 -53
  291. package/dist/session/title-generator.cjs +3 -2
  292. package/dist/session/title-generator.d.ts +2 -1
  293. package/dist/session/title-generator.d.ts.map +1 -1
  294. package/dist/session/title-generator.js +3 -2
  295. package/dist/storage/blob/factory.cjs +9 -18
  296. package/dist/storage/blob/factory.d.ts +5 -4
  297. package/dist/storage/blob/factory.d.ts.map +1 -1
  298. package/dist/storage/blob/factory.js +8 -17
  299. package/dist/storage/blob/local-blob-store.cjs +25 -32
  300. package/dist/storage/blob/local-blob-store.d.ts +3 -2
  301. package/dist/storage/blob/local-blob-store.d.ts.map +1 -1
  302. package/dist/storage/blob/local-blob-store.js +25 -32
  303. package/dist/storage/blob/memory-blob-store.cjs +326 -0
  304. package/dist/storage/blob/memory-blob-store.d.ts +66 -0
  305. package/dist/storage/blob/memory-blob-store.d.ts.map +1 -0
  306. package/dist/storage/blob/memory-blob-store.js +303 -0
  307. package/dist/storage/blob/schemas.cjs +3 -1
  308. package/dist/storage/blob/schemas.d.ts +6 -6
  309. package/dist/storage/blob/schemas.d.ts.map +1 -1
  310. package/dist/storage/blob/schemas.js +3 -1
  311. package/dist/storage/cache/factory.cjs +7 -8
  312. package/dist/storage/cache/factory.d.ts +4 -1
  313. package/dist/storage/cache/factory.d.ts.map +1 -1
  314. package/dist/storage/cache/factory.js +4 -5
  315. package/dist/storage/cache/redis-store.cjs +4 -1
  316. package/dist/storage/cache/redis-store.d.ts +3 -1
  317. package/dist/storage/cache/redis-store.d.ts.map +1 -1
  318. package/dist/storage/cache/redis-store.js +4 -1
  319. package/dist/storage/database/factory.cjs +13 -16
  320. package/dist/storage/database/factory.d.ts +5 -3
  321. package/dist/storage/database/factory.d.ts.map +1 -1
  322. package/dist/storage/database/factory.js +9 -12
  323. package/dist/storage/database/postgres-store.cjs +4 -1
  324. package/dist/storage/database/postgres-store.d.ts +3 -1
  325. package/dist/storage/database/postgres-store.d.ts.map +1 -1
  326. package/dist/storage/database/postgres-store.js +4 -1
  327. package/dist/storage/database/schemas.cjs +3 -4
  328. package/dist/storage/database/schemas.d.ts +8 -16
  329. package/dist/storage/database/schemas.d.ts.map +1 -1
  330. package/dist/storage/database/schemas.js +3 -4
  331. package/dist/storage/database/sqlite-store.cjs +17 -45
  332. package/dist/storage/database/sqlite-store.d.ts +3 -3
  333. package/dist/storage/database/sqlite-store.d.ts.map +1 -1
  334. package/dist/storage/database/sqlite-store.js +17 -45
  335. package/dist/storage/schemas.cjs +3 -1
  336. package/dist/storage/schemas.d.ts +16 -23
  337. package/dist/storage/schemas.d.ts.map +1 -1
  338. package/dist/storage/schemas.js +3 -1
  339. package/dist/storage/storage-manager.cjs +15 -15
  340. package/dist/storage/storage-manager.d.ts +6 -6
  341. package/dist/storage/storage-manager.d.ts.map +1 -1
  342. package/dist/storage/storage-manager.js +15 -15
  343. package/dist/systemPrompt/contributors.cjs +15 -15
  344. package/dist/systemPrompt/contributors.d.ts +5 -3
  345. package/dist/systemPrompt/contributors.d.ts.map +1 -1
  346. package/dist/systemPrompt/contributors.js +15 -15
  347. package/dist/systemPrompt/manager.cjs +11 -8
  348. package/dist/systemPrompt/manager.d.ts +4 -2
  349. package/dist/systemPrompt/manager.d.ts.map +1 -1
  350. package/dist/systemPrompt/manager.js +11 -8
  351. package/dist/systemPrompt/schemas.cjs +21 -1
  352. package/dist/systemPrompt/schemas.d.ts +53 -53
  353. package/dist/systemPrompt/schemas.d.ts.map +1 -1
  354. package/dist/systemPrompt/schemas.js +11 -1
  355. package/dist/telemetry/decorators.cjs +54 -15
  356. package/dist/telemetry/decorators.d.ts.map +1 -1
  357. package/dist/telemetry/decorators.js +54 -15
  358. package/dist/telemetry/utils.cjs +21 -14
  359. package/dist/telemetry/utils.d.ts +7 -3
  360. package/dist/telemetry/utils.d.ts.map +1 -1
  361. package/dist/telemetry/utils.js +21 -14
  362. package/dist/tools/confirmation/allowed-tools-provider/factory.cjs +2 -2
  363. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts +2 -1
  364. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts.map +1 -1
  365. package/dist/tools/confirmation/allowed-tools-provider/factory.js +2 -2
  366. package/dist/tools/confirmation/allowed-tools-provider/storage.cjs +7 -6
  367. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts +3 -1
  368. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts.map +1 -1
  369. package/dist/tools/confirmation/allowed-tools-provider/storage.js +7 -6
  370. package/dist/tools/errors.cjs +2 -1
  371. package/dist/tools/errors.d.ts.map +1 -1
  372. package/dist/tools/errors.js +2 -1
  373. package/dist/tools/internal-tools/constants.cjs +2 -1
  374. package/dist/tools/internal-tools/constants.d.ts +1 -1
  375. package/dist/tools/internal-tools/constants.d.ts.map +1 -1
  376. package/dist/tools/internal-tools/constants.js +2 -1
  377. package/dist/tools/internal-tools/implementations/bash-exec-tool.cjs +1 -1
  378. package/dist/tools/internal-tools/implementations/bash-exec-tool.js +1 -1
  379. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.cjs +192 -0
  380. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts +33 -0
  381. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts.map +1 -0
  382. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.js +169 -0
  383. package/dist/tools/internal-tools/provider.cjs +21 -17
  384. package/dist/tools/internal-tools/provider.d.ts +3 -1
  385. package/dist/tools/internal-tools/provider.d.ts.map +1 -1
  386. package/dist/tools/internal-tools/provider.js +21 -17
  387. package/dist/tools/internal-tools/registry.cjs +5 -0
  388. package/dist/tools/internal-tools/registry.d.ts.map +1 -1
  389. package/dist/tools/internal-tools/registry.js +5 -0
  390. package/dist/tools/schemas.cjs +16 -4
  391. package/dist/tools/schemas.d.ts +21 -9
  392. package/dist/tools/schemas.d.ts.map +1 -1
  393. package/dist/tools/schemas.js +15 -4
  394. package/dist/tools/tool-manager.cjs +64 -47
  395. package/dist/tools/tool-manager.d.ts +4 -2
  396. package/dist/tools/tool-manager.d.ts.map +1 -1
  397. package/dist/tools/tool-manager.js +61 -44
  398. package/dist/tools/types.d.ts +0 -4
  399. package/dist/tools/types.d.ts.map +1 -1
  400. package/dist/utils/env-file.cjs +118 -0
  401. package/dist/utils/env-file.d.ts +5 -0
  402. package/dist/utils/env-file.d.ts.map +1 -0
  403. package/dist/utils/env-file.js +85 -0
  404. package/dist/utils/error-conversion.cjs +23 -1
  405. package/dist/utils/error-conversion.d.ts +2 -1
  406. package/dist/utils/error-conversion.d.ts.map +1 -1
  407. package/dist/utils/error-conversion.js +23 -1
  408. package/dist/utils/execution-context.d.ts.map +1 -1
  409. package/dist/utils/fs-walk.d.ts.map +1 -1
  410. package/dist/utils/index.cjs +7 -9
  411. package/dist/utils/index.d.ts +3 -4
  412. package/dist/utils/index.d.ts.map +1 -1
  413. package/dist/utils/index.js +3 -4
  414. package/dist/utils/path.cjs +22 -57
  415. package/dist/utils/path.d.ts +8 -7
  416. package/dist/utils/path.d.ts.map +1 -1
  417. package/dist/utils/path.js +21 -54
  418. package/dist/utils/result.cjs +37 -14
  419. package/dist/utils/result.d.ts.map +1 -1
  420. package/dist/utils/result.js +37 -14
  421. package/dist/utils/schema.cjs +2 -3
  422. package/dist/utils/schema.d.ts +2 -1
  423. package/dist/utils/schema.d.ts.map +1 -1
  424. package/dist/utils/schema.js +1 -2
  425. package/dist/utils/service-initializer.cjs +87 -61
  426. package/dist/utils/service-initializer.d.ts +4 -2
  427. package/dist/utils/service-initializer.d.ts.map +1 -1
  428. package/dist/utils/service-initializer.js +69 -43
  429. package/package.json +7 -3
  430. package/dist/Dexto.cjs +0 -251
  431. package/dist/Dexto.d.ts +0 -191
  432. package/dist/Dexto.d.ts.map +0 -1
  433. package/dist/Dexto.js +0 -228
  434. package/dist/agent/registry/error-codes.cjs +0 -44
  435. package/dist/agent/registry/error-codes.d.ts +0 -21
  436. package/dist/agent/registry/error-codes.d.ts.map +0 -1
  437. package/dist/agent/registry/error-codes.js +0 -21
  438. package/dist/agent/registry/errors.cjs +0 -188
  439. package/dist/agent/registry/errors.d.ts +0 -63
  440. package/dist/agent/registry/errors.d.ts.map +0 -1
  441. package/dist/agent/registry/errors.js +0 -165
  442. package/dist/agent/registry/registry.cjs +0 -479
  443. package/dist/agent/registry/registry.d.ts +0 -130
  444. package/dist/agent/registry/registry.d.ts.map +0 -1
  445. package/dist/agent/registry/registry.js +0 -453
  446. package/dist/agent/registry/types.cjs +0 -74
  447. package/dist/agent/registry/types.d.ts +0 -142
  448. package/dist/agent/registry/types.d.ts.map +0 -1
  449. package/dist/agent/registry/types.js +0 -48
  450. package/dist/agent/registry/user-registry.cjs +0 -140
  451. package/dist/agent/registry/user-registry.d.ts +0 -34
  452. package/dist/agent/registry/user-registry.d.ts.map +0 -1
  453. package/dist/agent/registry/user-registry.js +0 -105
  454. package/dist/approval/providers/event-based-approval-provider.cjs +0 -156
  455. package/dist/approval/providers/event-based-approval-provider.d.ts +0 -39
  456. package/dist/approval/providers/event-based-approval-provider.d.ts.map +0 -1
  457. package/dist/approval/providers/event-based-approval-provider.js +0 -133
  458. package/dist/approval/providers/factory.d.ts.map +0 -1
  459. package/dist/approval/providers/noop-approval-provider.cjs +0 -54
  460. package/dist/approval/providers/noop-approval-provider.d.ts +0 -18
  461. package/dist/approval/providers/noop-approval-provider.d.ts.map +0 -1
  462. package/dist/approval/providers/noop-approval-provider.js +0 -31
  463. package/dist/config/agent-resolver.cjs +0 -153
  464. package/dist/config/agent-resolver.d.ts +0 -14
  465. package/dist/config/agent-resolver.d.ts.map +0 -1
  466. package/dist/config/agent-resolver.js +0 -123
  467. package/dist/config/error-codes.cjs +0 -39
  468. package/dist/config/error-codes.d.ts +0 -16
  469. package/dist/config/error-codes.d.ts.map +0 -1
  470. package/dist/config/error-codes.js +0 -16
  471. package/dist/config/errors.cjs +0 -126
  472. package/dist/config/errors.d.ts +0 -34
  473. package/dist/config/errors.d.ts.map +0 -1
  474. package/dist/config/errors.js +0 -103
  475. package/dist/config/index.cjs +0 -26
  476. package/dist/config/index.d.ts +0 -4
  477. package/dist/config/index.d.ts.map +0 -1
  478. package/dist/config/index.js +0 -3
  479. package/dist/config/loader.cjs +0 -119
  480. package/dist/config/loader.d.ts +0 -16
  481. package/dist/config/loader.d.ts.map +0 -1
  482. package/dist/config/loader.js +0 -86
  483. package/dist/config/writer.cjs +0 -182
  484. package/dist/config/writer.d.ts +0 -35
  485. package/dist/config/writer.d.ts.map +0 -1
  486. package/dist/config/writer.js +0 -147
  487. package/dist/preferences/constants.d.ts +0 -2
  488. package/dist/preferences/constants.d.ts.map +0 -1
  489. package/dist/preferences/constants.js +0 -5
  490. package/dist/preferences/error-codes.d.ts +0 -8
  491. package/dist/preferences/error-codes.d.ts.map +0 -1
  492. package/dist/preferences/error-codes.js +0 -12
  493. package/dist/preferences/errors.cjs +0 -75
  494. package/dist/preferences/errors.d.ts +0 -18
  495. package/dist/preferences/errors.d.ts.map +0 -1
  496. package/dist/preferences/errors.js +0 -51
  497. package/dist/preferences/index.cjs +0 -55
  498. package/dist/preferences/index.d.ts +0 -6
  499. package/dist/preferences/index.d.ts.map +0 -1
  500. package/dist/preferences/index.js +0 -32
  501. package/dist/preferences/loader.cjs +0 -138
  502. package/dist/preferences/loader.d.ts +0 -51
  503. package/dist/preferences/loader.d.ts.map +0 -1
  504. package/dist/preferences/loader.js +0 -110
  505. package/dist/preferences/schemas.cjs +0 -75
  506. package/dist/preferences/schemas.d.ts +0 -110
  507. package/dist/preferences/schemas.d.ts.map +0 -1
  508. package/dist/preferences/schemas.js +0 -49
  509. package/dist/utils/api-key-store.cjs +0 -56
  510. package/dist/utils/api-key-store.d.ts +0 -24
  511. package/dist/utils/api-key-store.d.ts.map +0 -1
  512. package/dist/utils/api-key-store.js +0 -31
  513. package/dist/utils/env.cjs +0 -154
  514. package/dist/utils/env.d.ts +0 -28
  515. package/dist/utils/env.d.ts.map +0 -1
  516. package/dist/utils/env.js +0 -119
  517. package/dist/utils/port-utils.cjs +0 -37
  518. package/dist/utils/port-utils.d.ts +0 -10
  519. package/dist/utils/port-utils.d.ts.map +0 -1
  520. package/dist/utils/port-utils.js +0 -14
  521. package/dist/utils/port-utils.spec.cjs +0 -26
  522. package/dist/utils/port-utils.spec.js +0 -25
  523. /package/dist/approval/{providers/factory.cjs → factory.cjs} +0 -0
@@ -1,6 +1,6 @@
1
1
  import "../chunk-C6A6W6XS.js";
2
2
  import { MCPClient } from "./mcp-client.js";
3
- import { logger } from "../logger/index.js";
3
+ import { DextoLogComponent } from "../logger/v2/types.js";
4
4
  import { MCPError } from "./errors.js";
5
5
  import { eventBus } from "../events/index.js";
6
6
  class MCPManager {
@@ -16,10 +16,12 @@ class MCPManager {
16
16
  sanitizedNameToServerMap = /* @__PURE__ */ new Map();
17
17
  approvalManager = null;
18
18
  // Will be set by service initializer
19
+ logger;
19
20
  // Use a distinctive delimiter that won't appear in normal server/tool names
20
21
  // Using double hyphen as it's allowed in LLM tool name patterns (^[a-zA-Z0-9_-]+$)
21
22
  static SERVER_DELIMITER = "--";
22
- constructor() {
23
+ constructor(logger) {
24
+ this.logger = logger.createChild(DextoLogComponent.MCP);
23
25
  }
24
26
  /**
25
27
  * Set the approval manager for handling elicitation requests from MCP servers
@@ -76,7 +78,7 @@ class MCPManager {
76
78
  */
77
79
  registerClient(name, client) {
78
80
  if (this.clients.has(name)) {
79
- logger.warn(`Client '${name}' already registered. Overwriting.`);
81
+ this.logger.warn(`Client '${name}' already registered. Overwriting.`);
80
82
  }
81
83
  this.clearClientCache(name);
82
84
  const sanitizedName = this.sanitizeServerName(name);
@@ -87,7 +89,7 @@ class MCPManager {
87
89
  this.clients.set(name, client);
88
90
  this.sanitizedNameToServerMap.set(sanitizedName, name);
89
91
  this.setupClientNotifications(name, client);
90
- logger.info(`Registered client: ${name}`);
92
+ this.logger.info(`Registered client: ${name}`);
91
93
  delete this.connectionErrors[name];
92
94
  }
93
95
  /**
@@ -131,7 +133,9 @@ class MCPManager {
131
133
  this.toolCache.delete(qualifiedKey);
132
134
  this.toolCache.set(baseName, entry);
133
135
  this.toolConflicts.delete(baseName);
134
- logger.debug(`Restored tool '${baseName}' to simple name (conflict resolved)`);
136
+ this.logger.debug(
137
+ `Restored tool '${baseName}' to simple name (conflict resolved)`
138
+ );
135
139
  }
136
140
  }
137
141
  }
@@ -145,7 +149,7 @@ class MCPManager {
145
149
  this.resourceCache.delete(key);
146
150
  }
147
151
  }
148
- logger.debug(`Cleared cache for client: ${clientName}`);
152
+ this.logger.debug(`Cleared cache for client: ${clientName}`);
149
153
  }
150
154
  /**
151
155
  * Sanitize server name for use in tool prefixing.
@@ -190,7 +194,7 @@ class MCPManager {
190
194
  async updateClientCache(clientName, client) {
191
195
  try {
192
196
  const tools = await client.getTools();
193
- logger.debug(
197
+ this.logger.debug(
194
198
  `\u{1F527} Discovered ${Object.keys(tools).length} tools from server '${clientName}': [${Object.keys(tools).join(", ")}]`
195
199
  );
196
200
  for (const toolName in tools) {
@@ -210,7 +214,7 @@ class MCPManager {
210
214
  client,
211
215
  definition: toolDef
212
216
  });
213
- logger.warn(
217
+ this.logger.warn(
214
218
  `\u26A0\uFE0F Tool conflict detected for '${toolName}' - using server prefixes: ${existingQualified}, ${newQualified}`
215
219
  );
216
220
  } else if (this.toolConflicts.has(toolName)) {
@@ -221,21 +225,21 @@ class MCPManager {
221
225
  client,
222
226
  definition: toolDef
223
227
  });
224
- logger.debug(`\u2705 Tool '${qualifiedName}' cached (known conflict)`);
228
+ this.logger.debug(`\u2705 Tool '${qualifiedName}' cached (known conflict)`);
225
229
  } else {
226
230
  this.toolCache.set(toolName, {
227
231
  serverName: clientName,
228
232
  client,
229
233
  definition: toolDef
230
234
  });
231
- logger.debug(`\u2705 Tool '${toolName}' mapped to ${clientName}`);
235
+ this.logger.debug(`\u2705 Tool '${toolName}' mapped to ${clientName}`);
232
236
  }
233
237
  }
234
- logger.debug(
238
+ this.logger.debug(
235
239
  `\u2705 Successfully cached ${Object.keys(tools).length} tools for client: ${clientName}`
236
240
  );
237
241
  } catch (error) {
238
- logger.error(
242
+ this.logger.error(
239
243
  `\u274C Error retrieving tools for client ${clientName}: ${error instanceof Error ? error.message : String(error)}`
240
244
  );
241
245
  return;
@@ -255,9 +259,9 @@ class MCPManager {
255
259
  definition
256
260
  });
257
261
  }
258
- logger.debug(`Cached ${prompts.length} prompts for client: ${clientName}`);
262
+ this.logger.debug(`Cached ${prompts.length} prompts for client: ${clientName}`);
259
263
  } catch (error) {
260
- logger.debug(`Skipping prompts for client ${clientName}: ${error}`);
264
+ this.logger.debug(`Skipping prompts for client ${clientName}: ${error}`);
261
265
  }
262
266
  try {
263
267
  this.removeServerResources(clientName);
@@ -270,9 +274,9 @@ class MCPManager {
270
274
  summary
271
275
  });
272
276
  });
273
- logger.debug(`Cached resources for client: ${clientName}`);
277
+ this.logger.debug(`Cached resources for client: ${clientName}`);
274
278
  } catch (error) {
275
- logger.debug(`Skipping resources for client ${clientName}: ${error}`);
279
+ this.logger.debug(`Skipping resources for client ${clientName}: ${error}`);
276
280
  }
277
281
  }
278
282
  /**
@@ -296,19 +300,17 @@ class MCPManager {
296
300
  const serverNames = Array.from(
297
301
  new Set(Array.from(this.toolCache.values()).map((e) => e.serverName))
298
302
  );
299
- logger.debug(
303
+ this.logger.debug(
300
304
  `\u{1F527} MCP tools from cache: ${Object.keys(allTools).length} total tools, ${this.toolConflicts.size} conflicts, connected servers: ${serverNames.join(", ")}`
301
305
  );
302
- if (logger.getLevel() === "debug") {
303
- Object.keys(allTools).forEach((toolName) => {
304
- if (toolName.includes(MCPManager.SERVER_DELIMITER)) {
305
- logger.debug(` - ${toolName} (qualified)`);
306
- } else {
307
- logger.debug(` - ${toolName}`);
308
- }
309
- });
310
- }
311
- logger.silly(`MCP tools: ${JSON.stringify(allTools, null, 2)}`);
306
+ Object.keys(allTools).forEach((toolName) => {
307
+ if (toolName.includes(MCPManager.SERVER_DELIMITER)) {
308
+ this.logger.debug(` - ${toolName} (qualified)`);
309
+ } else {
310
+ this.logger.debug(` - ${toolName}`);
311
+ }
312
+ });
313
+ this.logger.silly(`MCP tools: ${JSON.stringify(allTools, null, 2)}`);
312
314
  return allTools;
313
315
  }
314
316
  /**
@@ -349,20 +351,24 @@ class MCPManager {
349
351
  async executeTool(toolName, args, _sessionId) {
350
352
  const client = this.getToolClient(toolName);
351
353
  if (!client) {
352
- logger.error(`\u274C No MCP tool found: ${toolName}`);
353
- logger.debug(`Available MCP tools: ${Array.from(this.toolCache.keys()).join(", ")}`);
354
- logger.debug(`Conflicted tools: ${Array.from(this.toolConflicts).join(", ")}`);
354
+ this.logger.error(`\u274C No MCP tool found: ${toolName}`);
355
+ this.logger.debug(
356
+ `Available MCP tools: ${Array.from(this.toolCache.keys()).join(", ")}`
357
+ );
358
+ this.logger.debug(`Conflicted tools: ${Array.from(this.toolConflicts).join(", ")}`);
355
359
  throw MCPError.toolNotFound(toolName);
356
360
  }
357
361
  const parsed = this.parseQualifiedToolName(toolName);
358
362
  const actualToolName = parsed ? parsed.toolName : toolName;
359
363
  const serverName = parsed ? parsed.serverName : "direct";
360
- logger.debug(`\u25B6\uFE0F Executing MCP tool '${actualToolName}' on server '${serverName}'...`);
364
+ this.logger.debug(
365
+ `\u25B6\uFE0F Executing MCP tool '${actualToolName}' on server '${serverName}'...`
366
+ );
361
367
  try {
362
368
  const result = await client.callTool(actualToolName, args);
363
369
  return result;
364
370
  } catch (error) {
365
- logger.error(
371
+ this.logger.error(
366
372
  `\u274C MCP tool execution failed: '${actualToolName}' - ${error instanceof Error ? error.message : String(error)}`
367
373
  );
368
374
  throw error;
@@ -463,7 +469,7 @@ class MCPManager {
463
469
  */
464
470
  async initializeFromConfig(serverConfigs) {
465
471
  if (Object.keys(serverConfigs).length === 0) {
466
- logger.info("No MCP servers configured - running without external tools");
472
+ this.logger.info("No MCP servers configured - running without external tools");
467
473
  return;
468
474
  }
469
475
  const successfulConnections = [];
@@ -480,7 +486,7 @@ class MCPManager {
480
486
  const connectPromise = this.connectServer(name, config).then(() => {
481
487
  successfulConnections.push(name);
482
488
  }).catch((error) => {
483
- logger.debug(
489
+ this.logger.debug(
484
490
  `Handled connection error for '${name}' during initialization: ${error.message}`
485
491
  );
486
492
  });
@@ -504,12 +510,12 @@ class MCPManager {
504
510
  */
505
511
  async connectServer(name, config) {
506
512
  if (this.clients.has(name)) {
507
- logger.warn(`Client '${name}' is already connected or registered.`);
513
+ this.logger.warn(`Client '${name}' is already connected or registered.`);
508
514
  return;
509
515
  }
510
- const client = new MCPClient();
516
+ const client = new MCPClient(this.logger);
511
517
  try {
512
- logger.info(`Attempting to connect to new server '${name}'...`);
518
+ this.logger.info(`Attempting to connect to new server '${name}'...`);
513
519
  await client.connect(config, name);
514
520
  if (this.approvalManager) {
515
521
  client.setApprovalManager(this.approvalManager);
@@ -517,11 +523,11 @@ class MCPManager {
517
523
  this.registerClient(name, client);
518
524
  await this.updateClientCache(name, client);
519
525
  this.configCache.set(name, config);
520
- logger.info(`Successfully connected and cached new server '${name}'`);
526
+ this.logger.info(`Successfully connected and cached new server '${name}'`);
521
527
  } catch (error) {
522
528
  const errorMsg = error instanceof Error ? error.message : String(error);
523
529
  this.connectionErrors[name] = errorMsg;
524
- logger.error(`Failed to connect to new server '${name}': ${errorMsg}`);
530
+ this.logger.error(`Failed to connect to new server '${name}': ${errorMsg}`);
525
531
  this.clients.delete(name);
526
532
  throw MCPError.connectionFailed(name, errorMsg);
527
533
  }
@@ -546,13 +552,15 @@ class MCPManager {
546
552
  * In normal operation, caches are automatically kept fresh via server notifications
547
553
  */
548
554
  async refresh() {
549
- logger.debug("Refreshing all MCPManager caches...");
555
+ this.logger.debug("Refreshing all MCPManager caches...");
550
556
  const refreshPromises = [];
551
557
  for (const [clientName, client] of this.clients.entries()) {
552
558
  refreshPromises.push(this.updateClientCache(clientName, client));
553
559
  }
554
560
  await Promise.all(refreshPromises);
555
- logger.debug(`\u2705 MCPManager cache refresh complete for ${this.clients.size} client(s)`);
561
+ this.logger.debug(
562
+ `\u2705 MCPManager cache refresh complete for ${this.clients.size} client(s)`
563
+ );
556
564
  }
557
565
  /**
558
566
  * Disconnect and remove a specific client by name.
@@ -563,20 +571,20 @@ class MCPManager {
563
571
  if (client) {
564
572
  try {
565
573
  await client.disconnect();
566
- logger.info(`Successfully disconnected client: ${name}`);
574
+ this.logger.info(`Successfully disconnected client: ${name}`);
567
575
  } catch (error) {
568
- logger.error(
576
+ this.logger.error(
569
577
  `Error disconnecting client '${name}': ${error instanceof Error ? error.message : String(error)}`
570
578
  );
571
579
  }
572
580
  this.clearClientCache(name);
573
581
  this.clients.delete(name);
574
582
  this.configCache.delete(name);
575
- logger.info(`Removed client from manager: ${name}`);
583
+ this.logger.info(`Removed client from manager: ${name}`);
576
584
  }
577
585
  if (this.connectionErrors[name]) {
578
586
  delete this.connectionErrors[name];
579
- logger.info(`Cleared connection error for removed client: ${name}`);
587
+ this.logger.info(`Cleared connection error for removed client: ${name}`);
580
588
  }
581
589
  }
582
590
  /**
@@ -593,18 +601,18 @@ class MCPManager {
593
601
  );
594
602
  }
595
603
  const client = this.clients.get(name);
596
- logger.info(`Restarting MCP server '${name}'...`);
604
+ this.logger.info(`Restarting MCP server '${name}'...`);
597
605
  if (client) {
598
606
  try {
599
607
  await client.disconnect();
600
- logger.info(`Disconnected server '${name}' for restart`);
608
+ this.logger.info(`Disconnected server '${name}' for restart`);
601
609
  } catch (error) {
602
- logger.warn(
610
+ this.logger.warn(
603
611
  `Error disconnecting server '${name}' during restart (continuing): ${error instanceof Error ? error.message : String(error)}`
604
612
  );
605
613
  }
606
614
  } else {
607
- logger.info(
615
+ this.logger.info(
608
616
  `No active client found for '${name}' during restart; attempting fresh connection`
609
617
  );
610
618
  }
@@ -612,19 +620,19 @@ class MCPManager {
612
620
  this.clients.delete(name);
613
621
  delete this.connectionErrors[name];
614
622
  try {
615
- const newClient = new MCPClient();
623
+ const newClient = new MCPClient(this.logger);
616
624
  await newClient.connect(config, name);
617
625
  if (this.approvalManager) {
618
626
  newClient.setApprovalManager(this.approvalManager);
619
627
  }
620
628
  this.registerClient(name, newClient);
621
629
  await this.updateClientCache(name, newClient);
622
- logger.info(`Successfully restarted server '${name}'`);
623
- eventBus.emit("dexto:mcpServerRestarted", { serverName: name });
630
+ this.logger.info(`Successfully restarted server '${name}'`);
631
+ eventBus.emit("mcp:server-restarted", { serverName: name });
624
632
  } catch (error) {
625
633
  const errorMsg = error instanceof Error ? error.message : String(error);
626
634
  this.connectionErrors[name] = errorMsg;
627
- logger.error(`Failed to restart server '${name}': ${errorMsg}`);
635
+ this.logger.error(`Failed to restart server '${name}': ${errorMsg}`);
628
636
  throw MCPError.connectionFailed(name, errorMsg);
629
637
  }
630
638
  }
@@ -635,8 +643,8 @@ class MCPManager {
635
643
  const disconnectPromises = [];
636
644
  for (const [name, client] of Array.from(this.clients.entries())) {
637
645
  disconnectPromises.push(
638
- client.disconnect().then(() => logger.info(`Disconnected client: ${name}`)).catch(
639
- (error) => logger.error(`Failed to disconnect client '${name}': ${error}`)
646
+ client.disconnect().then(() => this.logger.info(`Disconnected client: ${name}`)).catch(
647
+ (error) => this.logger.error(`Failed to disconnect client '${name}': ${error}`)
640
648
  )
641
649
  );
642
650
  }
@@ -649,7 +657,7 @@ class MCPManager {
649
657
  this.promptCache.clear();
650
658
  this.resourceCache.clear();
651
659
  this.sanitizedNameToServerMap.clear();
652
- logger.info("Disconnected all clients and cleared caches.");
660
+ this.logger.info("Disconnected all clients and cleared caches.");
653
661
  }
654
662
  /**
655
663
  * Set up notification listeners for a specific client
@@ -657,22 +665,22 @@ class MCPManager {
657
665
  setupClientNotifications(clientName, client) {
658
666
  try {
659
667
  client.on("resourceUpdated", async (params) => {
660
- logger.debug(
668
+ this.logger.debug(
661
669
  `Received resource update notification from ${clientName}: ${params.uri}`
662
670
  );
663
671
  await this.handleResourceUpdated(clientName, params);
664
672
  });
665
673
  client.on("promptsListChanged", async () => {
666
- logger.debug(`Received prompts list change notification from ${clientName}`);
674
+ this.logger.debug(`Received prompts list change notification from ${clientName}`);
667
675
  await this.handlePromptsListChanged(clientName, client);
668
676
  });
669
677
  client.on("toolsListChanged", async () => {
670
- logger.debug(`Received tools list change notification from ${clientName}`);
678
+ this.logger.debug(`Received tools list change notification from ${clientName}`);
671
679
  await this.handleToolsListChanged(clientName, client);
672
680
  });
673
- logger.debug(`Set up notification listeners for client: ${clientName}`);
681
+ this.logger.debug(`Set up notification listeners for client: ${clientName}`);
674
682
  } catch (error) {
675
- logger.warn(`Failed to set up notification listeners for ${clientName}: ${error}`);
683
+ this.logger.warn(`Failed to set up notification listeners for ${clientName}: ${error}`);
676
684
  }
677
685
  }
678
686
  /**
@@ -692,18 +700,18 @@ class MCPManager {
692
700
  client,
693
701
  summary: updatedResource
694
702
  });
695
- logger.debug(`Updated resource cache for: ${params.uri}`);
703
+ this.logger.debug(`Updated resource cache for: ${params.uri}`);
696
704
  }
697
705
  } catch (error) {
698
- logger.warn(`Failed to refresh resource ${params.uri}: ${error}`);
706
+ this.logger.warn(`Failed to refresh resource ${params.uri}: ${error}`);
699
707
  }
700
708
  }
701
- eventBus.emit("dexto:mcpResourceUpdated", {
709
+ eventBus.emit("mcp:resource-updated", {
702
710
  serverName,
703
711
  resourceUri: params.uri
704
712
  });
705
713
  } catch (error) {
706
- logger.error(`Error handling resource update: ${error}`);
714
+ this.logger.error(`Error handling resource update: ${error}`);
707
715
  }
708
716
  }
709
717
  /**
@@ -731,18 +739,18 @@ class MCPManager {
731
739
  });
732
740
  }
733
741
  const promptNames = newPrompts.map((p) => p.name);
734
- logger.debug(
742
+ this.logger.debug(
735
743
  `Updated prompts cache for ${serverName}: [${promptNames.join(", ")}]`
736
744
  );
737
- eventBus.emit("dexto:mcpPromptsListChanged", {
745
+ eventBus.emit("mcp:prompts-list-changed", {
738
746
  serverName,
739
747
  prompts: promptNames
740
748
  });
741
749
  } catch (error) {
742
- logger.warn(`Failed to refresh prompts for ${serverName}: ${error}`);
750
+ this.logger.warn(`Failed to refresh prompts for ${serverName}: ${error}`);
743
751
  }
744
752
  } catch (error) {
745
- logger.error(`Error handling prompts list change: ${error}`);
753
+ this.logger.error(`Error handling prompts list change: ${error}`);
746
754
  }
747
755
  }
748
756
  /**
@@ -764,7 +772,7 @@ class MCPManager {
764
772
  try {
765
773
  const tools = await client.getTools();
766
774
  const toolNames = Object.keys(tools);
767
- logger.debug(
775
+ this.logger.debug(
768
776
  `\u{1F527} Refreshing tools from server '${serverName}': [${toolNames.join(", ")}]`
769
777
  );
770
778
  for (const toolName in tools) {
@@ -784,7 +792,7 @@ class MCPManager {
784
792
  client,
785
793
  definition: toolDef
786
794
  });
787
- logger.warn(
795
+ this.logger.warn(
788
796
  `\u26A0\uFE0F Tool conflict detected for '${toolName}' - using server prefixes: ${existingQualified}, ${newQualified}`
789
797
  );
790
798
  } else if (this.toolConflicts.has(toolName)) {
@@ -795,14 +803,14 @@ class MCPManager {
795
803
  client,
796
804
  definition: toolDef
797
805
  });
798
- logger.debug(`\u2705 Tool '${qualifiedName}' cached (known conflict)`);
806
+ this.logger.debug(`\u2705 Tool '${qualifiedName}' cached (known conflict)`);
799
807
  } else {
800
808
  this.toolCache.set(toolName, {
801
809
  serverName,
802
810
  client,
803
811
  definition: toolDef
804
812
  });
805
- logger.debug(`\u2705 Tool '${toolName}' mapped to ${serverName}`);
813
+ this.logger.debug(`\u2705 Tool '${toolName}' mapped to ${serverName}`);
806
814
  }
807
815
  }
808
816
  for (const baseName of removedToolBaseNames) {
@@ -824,22 +832,24 @@ class MCPManager {
824
832
  this.toolCache.delete(qualifiedKey);
825
833
  this.toolCache.set(baseName, entry);
826
834
  this.toolConflicts.delete(baseName);
827
- logger.debug(
835
+ this.logger.debug(
828
836
  `Restored tool '${baseName}' to simple name (conflict resolved)`
829
837
  );
830
838
  }
831
839
  }
832
840
  }
833
- logger.debug(`Updated tools cache for ${serverName}: [${toolNames.join(", ")}]`);
834
- eventBus.emit("dexto:mcpToolsListChanged", {
841
+ this.logger.debug(
842
+ `Updated tools cache for ${serverName}: [${toolNames.join(", ")}]`
843
+ );
844
+ eventBus.emit("mcp:tools-list-changed", {
835
845
  serverName,
836
846
  tools: toolNames
837
847
  });
838
848
  } catch (error) {
839
- logger.warn(`Failed to refresh tools for ${serverName}: ${error}`);
849
+ this.logger.warn(`Failed to refresh tools for ${serverName}: ${error}`);
840
850
  }
841
851
  } catch (error) {
842
- logger.error(`Error handling tools list change: ${error}`);
852
+ this.logger.error(`Error handling tools list change: ${error}`);
843
853
  }
844
854
  }
845
855
  }