@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
@@ -24,7 +24,7 @@ module.exports = __toCommonJS(chat_session_exports);
24
24
  var import_factory = require("./history/factory.js");
25
25
  var import_factory2 = require("../llm/services/factory.js");
26
26
  var import_events = require("../events/index.js");
27
- var import_logger = require("../logger/index.js");
27
+ var import_types = require("../logger/v2/types.js");
28
28
  var import_errors = require("../errors/index.js");
29
29
  var import_error_codes = require("../plugins/error-codes.js");
30
30
  class ChatSession {
@@ -38,13 +38,15 @@ class ChatSession {
38
38
  *
39
39
  * @param services - The shared services from the agent (state manager, prompt, client managers, etc.)
40
40
  * @param id - Unique identifier for this session
41
+ * @param logger - Logger instance for dependency injection
41
42
  */
42
- constructor(services, id) {
43
+ constructor(services, id, logger) {
43
44
  this.services = services;
44
45
  this.id = id;
46
+ this.logger = logger.createChild(import_types.DextoLogComponent.SESSION);
45
47
  this.eventBus = new import_events.SessionEventBus();
46
48
  this.setupEventForwarding();
47
- import_logger.logger.debug(`ChatSession ${this.id}: Created, awaiting initialization`);
49
+ this.logger.debug(`ChatSession ${this.id}: Created, awaiting initialization`);
48
50
  }
49
51
  /**
50
52
  * Session-scoped event emitter for handling conversation events.
@@ -53,9 +55,9 @@ class ChatSession {
53
55
  * to the global agent event bus.
54
56
  *
55
57
  * Events emitted include:
56
- * - `llmservice:thinking` - AI model is processing
57
- * - `llmservice:toolCall` - Tool execution requested
58
- * - `llmservice:response` - Final response generated
58
+ * - `llm:thinking` - AI model is processing
59
+ * - `llm:tool-call` - Tool execution requested
60
+ * - `llm:response` - Final response generated
59
61
  */
60
62
  eventBus;
61
63
  /**
@@ -80,6 +82,7 @@ class ChatSession {
80
82
  * Calling cancel() aborts the in-flight LLM request and tool execution checks.
81
83
  */
82
84
  currentRunController = null;
85
+ logger;
83
86
  /**
84
87
  * Initialize the session services asynchronously.
85
88
  * This must be called after construction to set up the storage-backed services.
@@ -99,14 +102,14 @@ class ChatSession {
99
102
  import_events.SessionEventNames.forEach((eventName) => {
100
103
  const forwarder = (payload) => {
101
104
  const payloadWithSession = payload && typeof payload === "object" ? { ...payload, sessionId: this.id } : { sessionId: this.id };
102
- import_logger.logger.silly(
103
- `Forwarding session event ${eventName} to agent bus with session context: ${JSON.stringify(payloadWithSession, null, 2)}`
104
- );
105
105
  this.services.agentEventBus.emit(eventName, payloadWithSession);
106
106
  };
107
107
  this.forwarders.set(eventName, forwarder);
108
108
  this.eventBus.on(eventName, forwarder);
109
109
  });
110
+ this.logger.debug(
111
+ `[setupEventForwarding] Event forwarding setup complete for session=${this.id}`
112
+ );
110
113
  }
111
114
  /**
112
115
  * Initializes session-specific services.
@@ -115,7 +118,8 @@ class ChatSession {
115
118
  const llmConfig = this.services.stateManager.getLLMConfig(this.id);
116
119
  this.historyProvider = (0, import_factory.createDatabaseHistoryProvider)(
117
120
  this.services.storageManager.getDatabase(),
118
- this.id
121
+ this.id,
122
+ this.logger
119
123
  );
120
124
  this.llmService = (0, import_factory2.createLLMService)(
121
125
  llmConfig,
@@ -127,10 +131,12 @@ class ChatSession {
127
131
  this.eventBus,
128
132
  // Use session event bus
129
133
  this.id,
130
- this.services.resourceManager
134
+ this.services.resourceManager,
131
135
  // Pass ResourceManager for blob storage
136
+ this.logger
137
+ // Pass logger for dependency injection
132
138
  );
133
- import_logger.logger.debug(`ChatSession ${this.id}: Services initialized with storage`);
139
+ this.logger.debug(`ChatSession ${this.id}: Services initialized with storage`);
134
140
  }
135
141
  /**
136
142
  * Saves a blocked interaction to history when a plugin blocks execution.
@@ -156,7 +162,7 @@ class ChatSession {
156
162
  await this.historyProvider.saveMessage(userMessage);
157
163
  await this.historyProvider.saveMessage(assistantMessage);
158
164
  const llmConfig = this.services.stateManager.getLLMConfig(this.id);
159
- this.eventBus.emit("llmservice:response", {
165
+ this.eventBus.emit("llm:response", {
160
166
  content: errorContent,
161
167
  provider: llmConfig.provider,
162
168
  model: llmConfig.model,
@@ -187,7 +193,7 @@ class ChatSession {
187
193
  * ```
188
194
  */
189
195
  async run(input, imageDataInput, fileDataInput, stream) {
190
- import_logger.logger.debug(
196
+ this.logger.debug(
191
197
  `Running session ${this.id} | input.len=${input?.length ?? 0} | image=${imageDataInput ? imageDataInput.mimeType : "none"} | file=${fileDataInput ? `${fileDataInput.mimeType}:${fileDataInput.filename ?? "unknown"}` : "none"}`
192
198
  );
193
199
  this.currentRunController = new AbortController();
@@ -245,7 +251,7 @@ class ChatSession {
245
251
  } catch (error) {
246
252
  const aborted = error instanceof Error && error.name === "AbortError" || typeof error === "object" && error !== null && error.aborted === true;
247
253
  if (aborted) {
248
- this.eventBus.emit("llmservice:error", {
254
+ this.eventBus.emit("llm:error", {
249
255
  error: new Error("Run cancelled"),
250
256
  context: "user_cancelled",
251
257
  recoverable: true
@@ -260,14 +266,20 @@ class ChatSession {
260
266
  imageDataInput,
261
267
  fileDataInput
262
268
  );
263
- import_logger.logger.debug(`ChatSession ${this.id}: Saved blocked interaction to history`);
269
+ this.logger.debug(
270
+ `ChatSession ${this.id}: Saved blocked interaction to history`
271
+ );
264
272
  } catch (saveError) {
265
- import_logger.logger.warn(
273
+ this.logger.warn(
266
274
  `Failed to save blocked interaction to history: ${saveError instanceof Error ? saveError.message : String(saveError)}`
267
275
  );
268
276
  }
269
277
  return error.message;
270
278
  }
279
+ const errortype = error instanceof Error ? "object" : "string";
280
+ this.logger.error(
281
+ `Error in ChatSession.run: errortype=${errortype}: ${error instanceof Error ? error.message : String(error)}`
282
+ );
271
283
  throw error;
272
284
  } finally {
273
285
  this.currentRunController = null;
@@ -303,7 +315,7 @@ class ChatSession {
303
315
  * This method:
304
316
  * 1. Clears all messages from the session's conversation history
305
317
  * 2. Removes persisted history from the storage provider
306
- * 3. Emits a `dexto:conversationReset` event with session context
318
+ * 3. Emits a `session:reset` event with session context
307
319
  *
308
320
  * The system prompt and session configuration remain unchanged.
309
321
  * Only the conversation messages are cleared.
@@ -320,7 +332,7 @@ class ChatSession {
320
332
  */
321
333
  async reset() {
322
334
  await this.historyProvider.clearHistory();
323
- this.services.agentEventBus.emit("dexto:conversationReset", {
335
+ this.services.agentEventBus.emit("session:reset", {
324
336
  sessionId: this.id
325
337
  });
326
338
  }
@@ -373,19 +385,20 @@ class ChatSession {
373
385
  this.eventBus,
374
386
  // Use session event bus
375
387
  this.id,
376
- this.services.resourceManager
388
+ this.services.resourceManager,
389
+ this.logger
377
390
  );
378
391
  this.llmService = newLLMService;
379
- import_logger.logger.info(
392
+ this.logger.info(
380
393
  `ChatSession ${this.id}: LLM switched to ${newLLMConfig.provider}/${newLLMConfig.model}`
381
394
  );
382
- this.eventBus.emit("llmservice:switched", {
395
+ this.eventBus.emit("llm:switched", {
383
396
  newConfig: newLLMConfig,
384
397
  router,
385
398
  historyRetained: true
386
399
  });
387
400
  } catch (error) {
388
- import_logger.logger.error(
401
+ this.logger.error(
389
402
  `Error during ChatSession.switchLLM for session ${this.id}: ${error instanceof Error ? error.message : String(error)}`
390
403
  );
391
404
  throw error;
@@ -399,11 +412,11 @@ class ChatSession {
399
412
  async cleanup() {
400
413
  try {
401
414
  this.dispose();
402
- import_logger.logger.debug(
415
+ this.logger.debug(
403
416
  `ChatSession ${this.id}: Memory cleanup completed (chat history preserved)`
404
417
  );
405
418
  } catch (error) {
406
- import_logger.logger.error(
419
+ this.logger.error(
407
420
  `Error during ChatSession cleanup for session ${this.id}: ${error instanceof Error ? error.message : String(error)}`
408
421
  );
409
422
  throw error;
@@ -417,12 +430,12 @@ class ChatSession {
417
430
  * Without this cleanup, sessions would remain in memory due to listener references.
418
431
  */
419
432
  dispose() {
420
- import_logger.logger.debug(`Disposing session ${this.id} - cleaning up event listeners`);
433
+ this.logger.debug(`Disposing session ${this.id} - cleaning up event listeners`);
421
434
  this.forwarders.forEach((forwarder, eventName) => {
422
435
  this.eventBus.off(eventName, forwarder);
423
436
  });
424
437
  this.forwarders.clear();
425
- import_logger.logger.debug(`Session ${this.id} disposed successfully`);
438
+ this.logger.debug(`Session ${this.id} disposed successfully`);
426
439
  }
427
440
  /**
428
441
  * Cancel the currently running turn for this session, if any.
@@ -8,6 +8,7 @@ import type { StorageManager } from '../storage/index.js';
8
8
  import type { PluginManager } from '../plugins/manager.js';
9
9
  import type { MCPManager } from '../mcp/manager.js';
10
10
  import { SessionEventBus, AgentEventBus } from '../events/index.js';
11
+ import type { IDextoLogger } from '../logger/v2/types.js';
11
12
  import type { InternalMessage } from '../context/types.js';
12
13
  /**
13
14
  * Represents an isolated conversation session within a Dexto agent.
@@ -27,7 +28,7 @@ import type { InternalMessage } from '../context/types.js';
27
28
  * ## Event Handling
28
29
  *
29
30
  * Each session has its own event bus that emits standard Dexto events:
30
- * - `llmservice:*` events (thinking, toolCall, response, etc.)
31
+ * - `llm:*` events (thinking, toolCall, response, etc.)
31
32
  *
32
33
  * Session events are forwarded to the global agent event bus with session prefixes.
33
34
  *
@@ -38,7 +39,7 @@ import type { InternalMessage } from '../context/types.js';
38
39
  * const session = agent.createSession('user-123');
39
40
  *
40
41
  * // Listen for session events
41
- * session.eventBus.on('llmservice:response', (payload) => {
42
+ * session.eventBus.on('llm:response', (payload) => {
42
43
  * console.log('Session response:', payload.content);
43
44
  * });
44
45
  *
@@ -63,9 +64,9 @@ export declare class ChatSession {
63
64
  * to the global agent event bus.
64
65
  *
65
66
  * Events emitted include:
66
- * - `llmservice:thinking` - AI model is processing
67
- * - `llmservice:toolCall` - Tool execution requested
68
- * - `llmservice:response` - Final response generated
67
+ * - `llm:thinking` - AI model is processing
68
+ * - `llm:tool-call` - Tool execution requested
69
+ * - `llm:response` - Final response generated
69
70
  */
70
71
  readonly eventBus: SessionEventBus;
71
72
  /**
@@ -90,6 +91,7 @@ export declare class ChatSession {
90
91
  * Calling cancel() aborts the in-flight LLM request and tool execution checks.
91
92
  */
92
93
  private currentRunController;
94
+ private logger;
93
95
  /**
94
96
  * Creates a new ChatSession instance.
95
97
  *
@@ -100,6 +102,7 @@ export declare class ChatSession {
100
102
  *
101
103
  * @param services - The shared services from the agent (state manager, prompt, client managers, etc.)
102
104
  * @param id - Unique identifier for this session
105
+ * @param logger - Logger instance for dependency injection
103
106
  */
104
107
  constructor(services: {
105
108
  stateManager: AgentStateManager;
@@ -111,7 +114,7 @@ export declare class ChatSession {
111
114
  pluginManager: PluginManager;
112
115
  mcpManager: MCPManager;
113
116
  sessionManager: import('./session-manager.js').SessionManager;
114
- }, id: string);
117
+ }, id: string, logger: IDextoLogger);
115
118
  /**
116
119
  * Initialize the session services asynchronously.
117
120
  * This must be called after construction to set up the storage-backed services.
@@ -201,7 +204,7 @@ export declare class ChatSession {
201
204
  * This method:
202
205
  * 1. Clears all messages from the session's conversation history
203
206
  * 2. Removes persisted history from the storage provider
204
- * 3. Emits a `dexto:conversationReset` event with session context
207
+ * 3. Emits a `session:reset` event with session context
205
208
  *
206
209
  * The system prompt and session configuration remain unchanged.
207
210
  * Only the conversation messages are cleared.
@@ -1 +1 @@
1
- {"version":3,"file":"chat-session.d.ts","sourceRoot":"","sources":["../../src/session/chat-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-session.d.ts","sourceRoot":"","sources":["../../src/session/chat-session.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import {
5
5
  SessionEventBus,
6
6
  SessionEventNames
7
7
  } from "../events/index.js";
8
- import { logger } from "../logger/index.js";
8
+ import { DextoLogComponent } from "../logger/v2/types.js";
9
9
  import { DextoRuntimeError, ErrorScope, ErrorType } from "../errors/index.js";
10
10
  import { PluginErrorCode } from "../plugins/error-codes.js";
11
11
  class ChatSession {
@@ -19,13 +19,15 @@ class ChatSession {
19
19
  *
20
20
  * @param services - The shared services from the agent (state manager, prompt, client managers, etc.)
21
21
  * @param id - Unique identifier for this session
22
+ * @param logger - Logger instance for dependency injection
22
23
  */
23
- constructor(services, id) {
24
+ constructor(services, id, logger) {
24
25
  this.services = services;
25
26
  this.id = id;
27
+ this.logger = logger.createChild(DextoLogComponent.SESSION);
26
28
  this.eventBus = new SessionEventBus();
27
29
  this.setupEventForwarding();
28
- logger.debug(`ChatSession ${this.id}: Created, awaiting initialization`);
30
+ this.logger.debug(`ChatSession ${this.id}: Created, awaiting initialization`);
29
31
  }
30
32
  /**
31
33
  * Session-scoped event emitter for handling conversation events.
@@ -34,9 +36,9 @@ class ChatSession {
34
36
  * to the global agent event bus.
35
37
  *
36
38
  * Events emitted include:
37
- * - `llmservice:thinking` - AI model is processing
38
- * - `llmservice:toolCall` - Tool execution requested
39
- * - `llmservice:response` - Final response generated
39
+ * - `llm:thinking` - AI model is processing
40
+ * - `llm:tool-call` - Tool execution requested
41
+ * - `llm:response` - Final response generated
40
42
  */
41
43
  eventBus;
42
44
  /**
@@ -61,6 +63,7 @@ class ChatSession {
61
63
  * Calling cancel() aborts the in-flight LLM request and tool execution checks.
62
64
  */
63
65
  currentRunController = null;
66
+ logger;
64
67
  /**
65
68
  * Initialize the session services asynchronously.
66
69
  * This must be called after construction to set up the storage-backed services.
@@ -80,14 +83,14 @@ class ChatSession {
80
83
  SessionEventNames.forEach((eventName) => {
81
84
  const forwarder = (payload) => {
82
85
  const payloadWithSession = payload && typeof payload === "object" ? { ...payload, sessionId: this.id } : { sessionId: this.id };
83
- logger.silly(
84
- `Forwarding session event ${eventName} to agent bus with session context: ${JSON.stringify(payloadWithSession, null, 2)}`
85
- );
86
86
  this.services.agentEventBus.emit(eventName, payloadWithSession);
87
87
  };
88
88
  this.forwarders.set(eventName, forwarder);
89
89
  this.eventBus.on(eventName, forwarder);
90
90
  });
91
+ this.logger.debug(
92
+ `[setupEventForwarding] Event forwarding setup complete for session=${this.id}`
93
+ );
91
94
  }
92
95
  /**
93
96
  * Initializes session-specific services.
@@ -96,7 +99,8 @@ class ChatSession {
96
99
  const llmConfig = this.services.stateManager.getLLMConfig(this.id);
97
100
  this.historyProvider = createDatabaseHistoryProvider(
98
101
  this.services.storageManager.getDatabase(),
99
- this.id
102
+ this.id,
103
+ this.logger
100
104
  );
101
105
  this.llmService = createLLMService(
102
106
  llmConfig,
@@ -108,10 +112,12 @@ class ChatSession {
108
112
  this.eventBus,
109
113
  // Use session event bus
110
114
  this.id,
111
- this.services.resourceManager
115
+ this.services.resourceManager,
112
116
  // Pass ResourceManager for blob storage
117
+ this.logger
118
+ // Pass logger for dependency injection
113
119
  );
114
- logger.debug(`ChatSession ${this.id}: Services initialized with storage`);
120
+ this.logger.debug(`ChatSession ${this.id}: Services initialized with storage`);
115
121
  }
116
122
  /**
117
123
  * Saves a blocked interaction to history when a plugin blocks execution.
@@ -137,7 +143,7 @@ class ChatSession {
137
143
  await this.historyProvider.saveMessage(userMessage);
138
144
  await this.historyProvider.saveMessage(assistantMessage);
139
145
  const llmConfig = this.services.stateManager.getLLMConfig(this.id);
140
- this.eventBus.emit("llmservice:response", {
146
+ this.eventBus.emit("llm:response", {
141
147
  content: errorContent,
142
148
  provider: llmConfig.provider,
143
149
  model: llmConfig.model,
@@ -168,7 +174,7 @@ class ChatSession {
168
174
  * ```
169
175
  */
170
176
  async run(input, imageDataInput, fileDataInput, stream) {
171
- logger.debug(
177
+ this.logger.debug(
172
178
  `Running session ${this.id} | input.len=${input?.length ?? 0} | image=${imageDataInput ? imageDataInput.mimeType : "none"} | file=${fileDataInput ? `${fileDataInput.mimeType}:${fileDataInput.filename ?? "unknown"}` : "none"}`
173
179
  );
174
180
  this.currentRunController = new AbortController();
@@ -226,7 +232,7 @@ class ChatSession {
226
232
  } catch (error) {
227
233
  const aborted = error instanceof Error && error.name === "AbortError" || typeof error === "object" && error !== null && error.aborted === true;
228
234
  if (aborted) {
229
- this.eventBus.emit("llmservice:error", {
235
+ this.eventBus.emit("llm:error", {
230
236
  error: new Error("Run cancelled"),
231
237
  context: "user_cancelled",
232
238
  recoverable: true
@@ -241,14 +247,20 @@ class ChatSession {
241
247
  imageDataInput,
242
248
  fileDataInput
243
249
  );
244
- logger.debug(`ChatSession ${this.id}: Saved blocked interaction to history`);
250
+ this.logger.debug(
251
+ `ChatSession ${this.id}: Saved blocked interaction to history`
252
+ );
245
253
  } catch (saveError) {
246
- logger.warn(
254
+ this.logger.warn(
247
255
  `Failed to save blocked interaction to history: ${saveError instanceof Error ? saveError.message : String(saveError)}`
248
256
  );
249
257
  }
250
258
  return error.message;
251
259
  }
260
+ const errortype = error instanceof Error ? "object" : "string";
261
+ this.logger.error(
262
+ `Error in ChatSession.run: errortype=${errortype}: ${error instanceof Error ? error.message : String(error)}`
263
+ );
252
264
  throw error;
253
265
  } finally {
254
266
  this.currentRunController = null;
@@ -284,7 +296,7 @@ class ChatSession {
284
296
  * This method:
285
297
  * 1. Clears all messages from the session's conversation history
286
298
  * 2. Removes persisted history from the storage provider
287
- * 3. Emits a `dexto:conversationReset` event with session context
299
+ * 3. Emits a `session:reset` event with session context
288
300
  *
289
301
  * The system prompt and session configuration remain unchanged.
290
302
  * Only the conversation messages are cleared.
@@ -301,7 +313,7 @@ class ChatSession {
301
313
  */
302
314
  async reset() {
303
315
  await this.historyProvider.clearHistory();
304
- this.services.agentEventBus.emit("dexto:conversationReset", {
316
+ this.services.agentEventBus.emit("session:reset", {
305
317
  sessionId: this.id
306
318
  });
307
319
  }
@@ -354,19 +366,20 @@ class ChatSession {
354
366
  this.eventBus,
355
367
  // Use session event bus
356
368
  this.id,
357
- this.services.resourceManager
369
+ this.services.resourceManager,
370
+ this.logger
358
371
  );
359
372
  this.llmService = newLLMService;
360
- logger.info(
373
+ this.logger.info(
361
374
  `ChatSession ${this.id}: LLM switched to ${newLLMConfig.provider}/${newLLMConfig.model}`
362
375
  );
363
- this.eventBus.emit("llmservice:switched", {
376
+ this.eventBus.emit("llm:switched", {
364
377
  newConfig: newLLMConfig,
365
378
  router,
366
379
  historyRetained: true
367
380
  });
368
381
  } catch (error) {
369
- logger.error(
382
+ this.logger.error(
370
383
  `Error during ChatSession.switchLLM for session ${this.id}: ${error instanceof Error ? error.message : String(error)}`
371
384
  );
372
385
  throw error;
@@ -380,11 +393,11 @@ class ChatSession {
380
393
  async cleanup() {
381
394
  try {
382
395
  this.dispose();
383
- logger.debug(
396
+ this.logger.debug(
384
397
  `ChatSession ${this.id}: Memory cleanup completed (chat history preserved)`
385
398
  );
386
399
  } catch (error) {
387
- logger.error(
400
+ this.logger.error(
388
401
  `Error during ChatSession cleanup for session ${this.id}: ${error instanceof Error ? error.message : String(error)}`
389
402
  );
390
403
  throw error;
@@ -398,12 +411,12 @@ class ChatSession {
398
411
  * Without this cleanup, sessions would remain in memory due to listener references.
399
412
  */
400
413
  dispose() {
401
- logger.debug(`Disposing session ${this.id} - cleaning up event listeners`);
414
+ this.logger.debug(`Disposing session ${this.id} - cleaning up event listeners`);
402
415
  this.forwarders.forEach((forwarder, eventName) => {
403
416
  this.eventBus.off(eventName, forwarder);
404
417
  });
405
418
  this.forwarders.clear();
406
- logger.debug(`Session ${this.id} disposed successfully`);
419
+ this.logger.debug(`Session ${this.id} disposed successfully`);
407
420
  }
408
421
  /**
409
422
  * Cancel the currently running turn for this session, if any.
@@ -21,23 +21,25 @@ __export(database_exports, {
21
21
  DatabaseHistoryProvider: () => DatabaseHistoryProvider
22
22
  });
23
23
  module.exports = __toCommonJS(database_exports);
24
- var import_logger = require("../../logger/index.cjs");
24
+ var import_types = require("../../logger/v2/types.cjs");
25
25
  var import_errors = require("../errors.js");
26
26
  class DatabaseHistoryProvider {
27
- constructor(sessionId, database) {
27
+ constructor(sessionId, database, logger) {
28
28
  this.sessionId = sessionId;
29
29
  this.database = database;
30
+ this.logger = logger.createChild(import_types.DextoLogComponent.SESSION);
30
31
  }
32
+ logger;
31
33
  async getHistory() {
32
34
  const key = this.getMessagesKey();
33
35
  try {
34
36
  const messages = await this.database.getRange(key, 0, 1e3);
35
- import_logger.logger.debug(
37
+ this.logger.debug(
36
38
  `DatabaseHistoryProvider: Retrieved ${messages.length} messages for session ${this.sessionId}`
37
39
  );
38
40
  return messages;
39
41
  } catch (error) {
40
- import_logger.logger.error(
42
+ this.logger.error(
41
43
  `DatabaseHistoryProvider: Error retrieving messages for session ${this.sessionId}: ${error instanceof Error ? error.message : String(error)}`
42
44
  );
43
45
  return [];
@@ -55,12 +57,15 @@ class DatabaseHistoryProvider {
55
57
  contentPreview = `[${message.content.length} parts]`;
56
58
  }
57
59
  }
58
- import_logger.logger.debug(`DatabaseHistoryProvider: Saved message for session ${this.sessionId}`, {
59
- role: message.role,
60
- content: contentPreview
61
- });
60
+ this.logger.debug(
61
+ `DatabaseHistoryProvider: Saved message for session ${this.sessionId}`,
62
+ {
63
+ role: message.role,
64
+ content: contentPreview
65
+ }
66
+ );
62
67
  } catch (error) {
63
- import_logger.logger.error(
68
+ this.logger.error(
64
69
  `DatabaseHistoryProvider: Error saving message for session ${this.sessionId}: ${error instanceof Error ? error.message : String(error)}`
65
70
  );
66
71
  throw import_errors.SessionError.storageFailed(
@@ -74,9 +79,11 @@ class DatabaseHistoryProvider {
74
79
  const key = this.getMessagesKey();
75
80
  try {
76
81
  await this.database.delete(key);
77
- import_logger.logger.debug(`DatabaseHistoryProvider: Cleared history for session ${this.sessionId}`);
82
+ this.logger.debug(
83
+ `DatabaseHistoryProvider: Cleared history for session ${this.sessionId}`
84
+ );
78
85
  } catch (error) {
79
- import_logger.logger.error(
86
+ this.logger.error(
80
87
  `DatabaseHistoryProvider: Error clearing session ${this.sessionId}: ${error instanceof Error ? error.message : String(error)}`
81
88
  );
82
89
  throw import_errors.SessionError.resetFailed(
@@ -1,3 +1,4 @@
1
+ import type { IDextoLogger } from '../../logger/v2/types.js';
1
2
  import type { Database } from '../../storage/types.js';
2
3
  import type { InternalMessage } from '../../context/types.js';
3
4
  import type { IConversationHistoryProvider } from './types.js';
@@ -16,7 +17,8 @@ import type { IConversationHistoryProvider } from './types.js';
16
17
  export declare class DatabaseHistoryProvider implements IConversationHistoryProvider {
17
18
  private sessionId;
18
19
  private database;
19
- constructor(sessionId: string, database: Database);
20
+ private logger;
21
+ constructor(sessionId: string, database: Database, logger: IDextoLogger);
20
22
  getHistory(): Promise<InternalMessage[]>;
21
23
  saveMessage(message: InternalMessage): Promise<void>;
22
24
  clearHistory(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../../src/session/history/database.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAE/D;;;;;;;;;;;GAWG;AACH,qBAAa,uBAAwB,YAAW,4BAA4B;IAEpE,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,QAAQ;gBADR,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,QAAQ;IAGxB,UAAU,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAmBxC,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAkCpD,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAgBnC,OAAO,CAAC,cAAc;CAGzB"}
1
+ {"version":3,"file":"database.d.ts","sourceRoot":"","sources":["../../../src/session/history/database.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAE7D,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wBAAwB,CAAC;AAEvD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,YAAY,CAAC;AAE/D;;;;;;;;;;;GAWG;AACH,qBAAa,uBAAwB,YAAW,4BAA4B;IAIpE,OAAO,CAAC,SAAS;IACjB,OAAO,CAAC,QAAQ;IAJpB,OAAO,CAAC,MAAM,CAAe;gBAGjB,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,QAAQ,EAC1B,MAAM,EAAE,YAAY;IAKlB,UAAU,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAmBxC,WAAW,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,IAAI,CAAC;IAqCpD,YAAY,IAAI,OAAO,CAAC,IAAI,CAAC;IAkBnC,OAAO,CAAC,cAAc;CAGzB"}
@@ -1,21 +1,23 @@
1
1
  import "../../chunk-C6A6W6XS.js";
2
- import { logger } from "../../logger/index.js";
2
+ import { DextoLogComponent } from "../../logger/v2/types.js";
3
3
  import { SessionError } from "../errors.js";
4
4
  class DatabaseHistoryProvider {
5
- constructor(sessionId, database) {
5
+ constructor(sessionId, database, logger) {
6
6
  this.sessionId = sessionId;
7
7
  this.database = database;
8
+ this.logger = logger.createChild(DextoLogComponent.SESSION);
8
9
  }
10
+ logger;
9
11
  async getHistory() {
10
12
  const key = this.getMessagesKey();
11
13
  try {
12
14
  const messages = await this.database.getRange(key, 0, 1e3);
13
- logger.debug(
15
+ this.logger.debug(
14
16
  `DatabaseHistoryProvider: Retrieved ${messages.length} messages for session ${this.sessionId}`
15
17
  );
16
18
  return messages;
17
19
  } catch (error) {
18
- logger.error(
20
+ this.logger.error(
19
21
  `DatabaseHistoryProvider: Error retrieving messages for session ${this.sessionId}: ${error instanceof Error ? error.message : String(error)}`
20
22
  );
21
23
  return [];
@@ -33,12 +35,15 @@ class DatabaseHistoryProvider {
33
35
  contentPreview = `[${message.content.length} parts]`;
34
36
  }
35
37
  }
36
- logger.debug(`DatabaseHistoryProvider: Saved message for session ${this.sessionId}`, {
37
- role: message.role,
38
- content: contentPreview
39
- });
38
+ this.logger.debug(
39
+ `DatabaseHistoryProvider: Saved message for session ${this.sessionId}`,
40
+ {
41
+ role: message.role,
42
+ content: contentPreview
43
+ }
44
+ );
40
45
  } catch (error) {
41
- logger.error(
46
+ this.logger.error(
42
47
  `DatabaseHistoryProvider: Error saving message for session ${this.sessionId}: ${error instanceof Error ? error.message : String(error)}`
43
48
  );
44
49
  throw SessionError.storageFailed(
@@ -52,9 +57,11 @@ class DatabaseHistoryProvider {
52
57
  const key = this.getMessagesKey();
53
58
  try {
54
59
  await this.database.delete(key);
55
- logger.debug(`DatabaseHistoryProvider: Cleared history for session ${this.sessionId}`);
60
+ this.logger.debug(
61
+ `DatabaseHistoryProvider: Cleared history for session ${this.sessionId}`
62
+ );
56
63
  } catch (error) {
57
- logger.error(
64
+ this.logger.error(
58
65
  `DatabaseHistoryProvider: Error clearing session ${this.sessionId}: ${error instanceof Error ? error.message : String(error)}`
59
66
  );
60
67
  throw SessionError.resetFailed(
@@ -22,8 +22,8 @@ __export(factory_exports, {
22
22
  });
23
23
  module.exports = __toCommonJS(factory_exports);
24
24
  var import_database = require("./database.js");
25
- function createDatabaseHistoryProvider(database, sessionId) {
26
- return new import_database.DatabaseHistoryProvider(sessionId, database);
25
+ function createDatabaseHistoryProvider(database, sessionId, logger) {
26
+ return new import_database.DatabaseHistoryProvider(sessionId, database, logger);
27
27
  }
28
28
  // Annotate the CommonJS export names for ESM import in node:
29
29
  0 && (module.exports = {