@dexto/core 1.7.1 → 1.8.0

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 (533) hide show
  1. package/dist/agent/DextoAgent.cjs +157 -62
  2. package/dist/agent/DextoAgent.d.ts +71 -17
  3. package/dist/agent/DextoAgent.d.ts.map +1 -1
  4. package/dist/agent/DextoAgent.js +161 -63
  5. package/dist/agent/agent-options.d.ts +6 -10
  6. package/dist/agent/agent-options.d.ts.map +1 -1
  7. package/dist/agent/agentCard.js +1 -1
  8. package/dist/agent/error-codes.js +1 -1
  9. package/dist/agent/errors.js +1 -1
  10. package/dist/agent/index.d.ts +1 -0
  11. package/dist/agent/index.d.ts.map +1 -1
  12. package/dist/agent/index.js +1 -1
  13. package/dist/agent/schemas.d.ts +2 -2
  14. package/dist/agent/schemas.js +1 -1
  15. package/dist/agent/state-manager.js +1 -1
  16. package/dist/approval/error-codes.cjs +1 -1
  17. package/dist/approval/error-codes.d.ts +1 -1
  18. package/dist/approval/error-codes.d.ts.map +1 -1
  19. package/dist/approval/error-codes.js +2 -2
  20. package/dist/approval/errors.cjs +2 -5
  21. package/dist/approval/errors.d.ts.map +1 -1
  22. package/dist/approval/errors.js +3 -6
  23. package/dist/approval/factory.cjs +19 -4
  24. package/dist/approval/factory.d.ts +4 -1
  25. package/dist/approval/factory.d.ts.map +1 -1
  26. package/dist/approval/factory.js +19 -5
  27. package/dist/approval/index.d.ts +1 -1
  28. package/dist/approval/index.d.ts.map +1 -1
  29. package/dist/approval/index.js +1 -1
  30. package/dist/approval/manager.cjs +168 -26
  31. package/dist/approval/manager.d.ts +46 -12
  32. package/dist/approval/manager.d.ts.map +1 -1
  33. package/dist/approval/manager.js +177 -29
  34. package/dist/approval/schemas.cjs +26 -26
  35. package/dist/approval/schemas.d.ts +29 -29
  36. package/dist/approval/schemas.d.ts.map +1 -1
  37. package/dist/approval/schemas.js +23 -23
  38. package/dist/approval/types.cjs +5 -5
  39. package/dist/approval/types.d.ts +18 -18
  40. package/dist/approval/types.d.ts.map +1 -1
  41. package/dist/approval/types.js +6 -6
  42. package/dist/{chunk-PTJYTZNU.js → chunk-C6A6W6XS.js} +1 -44
  43. package/dist/config/index.cjs +75 -0
  44. package/dist/config/index.d.ts +15 -0
  45. package/dist/config/index.d.ts.map +1 -0
  46. package/dist/config/index.js +50 -0
  47. package/dist/context/compaction/overflow.js +1 -1
  48. package/dist/context/compaction/strategies/noop.js +1 -1
  49. package/dist/context/compaction/strategies/reactive-overflow-compaction.js +1 -1
  50. package/dist/context/content-clone.cjs +131 -0
  51. package/dist/context/content-clone.d.ts +7 -0
  52. package/dist/context/content-clone.d.ts.map +1 -0
  53. package/dist/context/content-clone.js +104 -0
  54. package/dist/context/error-codes.js +1 -1
  55. package/dist/context/errors.js +1 -1
  56. package/dist/context/index.cjs +2 -0
  57. package/dist/context/index.d.ts +1 -0
  58. package/dist/context/index.d.ts.map +1 -1
  59. package/dist/context/index.js +2 -1
  60. package/dist/context/manager.cjs +47 -35
  61. package/dist/context/manager.d.ts +7 -7
  62. package/dist/context/manager.d.ts.map +1 -1
  63. package/dist/context/manager.js +48 -36
  64. package/dist/context/media-helpers.js +1 -1
  65. package/dist/context/schemas.cjs +77 -0
  66. package/dist/context/schemas.d.ts +5 -0
  67. package/dist/context/schemas.d.ts.map +1 -0
  68. package/dist/context/schemas.js +53 -0
  69. package/dist/context/types.js +1 -1
  70. package/dist/context/utils.cjs +70 -69
  71. package/dist/context/utils.d.ts +3 -3
  72. package/dist/context/utils.d.ts.map +1 -1
  73. package/dist/context/utils.js +71 -70
  74. package/dist/errors/DextoBaseError.js +1 -1
  75. package/dist/errors/DextoRuntimeError.js +1 -1
  76. package/dist/errors/DextoValidationError.js +1 -1
  77. package/dist/errors/index.js +1 -1
  78. package/dist/errors/result-bridge.js +1 -1
  79. package/dist/errors/types.js +1 -1
  80. package/dist/events/index.cjs +9 -1
  81. package/dist/events/index.d.ts +20 -8
  82. package/dist/events/index.d.ts.map +1 -1
  83. package/dist/events/index.js +10 -2
  84. package/dist/hooks/builtins/content-policy.js +1 -1
  85. package/dist/hooks/builtins/response-sanitizer.js +1 -1
  86. package/dist/hooks/error-codes.js +1 -1
  87. package/dist/hooks/index.js +1 -1
  88. package/dist/hooks/manager.cjs +1 -1
  89. package/dist/hooks/manager.d.ts +2 -2
  90. package/dist/hooks/manager.d.ts.map +1 -1
  91. package/dist/hooks/manager.js +2 -2
  92. package/dist/hooks/types.d.ts +2 -2
  93. package/dist/hooks/types.d.ts.map +1 -1
  94. package/dist/index.browser.js +1 -1
  95. package/dist/index.cjs +2 -0
  96. package/dist/index.d.ts +1 -0
  97. package/dist/index.d.ts.map +1 -1
  98. package/dist/index.js +2 -1
  99. package/dist/llm/curation-config.js +1 -1
  100. package/dist/llm/curation.js +1 -1
  101. package/dist/llm/error-codes.js +1 -1
  102. package/dist/llm/errors.js +1 -1
  103. package/dist/llm/executor/index.cjs +32 -0
  104. package/dist/llm/executor/index.d.ts +2 -0
  105. package/dist/llm/executor/index.d.ts.map +1 -0
  106. package/dist/llm/executor/index.js +11 -0
  107. package/dist/llm/executor/provider-options.js +1 -1
  108. package/dist/llm/executor/stream-processor.cjs +28 -139
  109. package/dist/llm/executor/stream-processor.d.ts +2 -13
  110. package/dist/llm/executor/stream-processor.d.ts.map +1 -1
  111. package/dist/llm/executor/stream-processor.js +29 -140
  112. package/dist/{session/history/memory.cjs → llm/executor/tool-definitions.cjs} +21 -33
  113. package/dist/llm/executor/tool-definitions.d.ts +4 -0
  114. package/dist/llm/executor/tool-definitions.d.ts.map +1 -0
  115. package/dist/llm/executor/tool-definitions.js +22 -0
  116. package/dist/llm/executor/tool-output-truncator.js +1 -1
  117. package/dist/llm/executor/turn-executor.cjs +1093 -458
  118. package/dist/llm/executor/turn-executor.d.ts +269 -43
  119. package/dist/llm/executor/turn-executor.d.ts.map +1 -1
  120. package/dist/llm/executor/turn-executor.js +1079 -405
  121. package/dist/llm/executor/types.d.ts +6 -0
  122. package/dist/llm/executor/types.d.ts.map +1 -1
  123. package/dist/llm/formatters/vercel.js +1 -1
  124. package/dist/llm/index.cjs +2 -0
  125. package/dist/llm/index.d.ts +1 -0
  126. package/dist/llm/index.d.ts.map +1 -1
  127. package/dist/llm/index.js +2 -1
  128. package/dist/llm/providers/codex-app-server.cjs +22 -2
  129. package/dist/llm/providers/codex-app-server.d.ts.map +1 -1
  130. package/dist/llm/providers/codex-app-server.js +23 -3
  131. package/dist/llm/providers/codex-base-url.js +1 -1
  132. package/dist/llm/providers/local/ai-sdk-adapter.js +1 -1
  133. package/dist/llm/providers/local/downloader.js +1 -1
  134. package/dist/llm/providers/local/error-codes.js +1 -1
  135. package/dist/llm/providers/local/errors.js +1 -1
  136. package/dist/llm/providers/local/gpu-detector.js +1 -1
  137. package/dist/llm/providers/local/index.js +1 -1
  138. package/dist/llm/providers/local/node-llama-provider.js +1 -1
  139. package/dist/llm/providers/local/ollama-provider.js +1 -1
  140. package/dist/llm/providers/local/registry.js +1 -1
  141. package/dist/llm/providers/local/schemas.js +1 -1
  142. package/dist/llm/providers/openrouter-model-registry.js +1 -1
  143. package/dist/llm/reasoning/anthropic-betas.js +1 -1
  144. package/dist/llm/reasoning/anthropic-thinking.js +1 -1
  145. package/dist/llm/reasoning/openai-reasoning-effort.js +1 -1
  146. package/dist/llm/reasoning/profile.js +1 -1
  147. package/dist/llm/reasoning/profiles/anthropic.js +1 -1
  148. package/dist/llm/reasoning/profiles/bedrock.js +1 -1
  149. package/dist/llm/reasoning/profiles/google.js +1 -1
  150. package/dist/llm/reasoning/profiles/openai-compatible.js +1 -1
  151. package/dist/llm/reasoning/profiles/openai.js +1 -1
  152. package/dist/llm/reasoning/profiles/openrouter.js +1 -1
  153. package/dist/llm/reasoning/profiles/shared.js +1 -1
  154. package/dist/llm/reasoning/profiles/vertex.js +1 -1
  155. package/dist/llm/registry/auto-update.js +1 -1
  156. package/dist/llm/registry/index.js +1 -1
  157. package/dist/llm/registry/models.generated.js +1 -1
  158. package/dist/llm/registry/models.manual.js +1 -1
  159. package/dist/llm/registry/sync.js +1 -1
  160. package/dist/llm/resolver.js +1 -1
  161. package/dist/llm/schemas.js +1 -1
  162. package/dist/llm/services/factory.cjs +5 -4
  163. package/dist/llm/services/factory.d.ts +3 -3
  164. package/dist/llm/services/factory.d.ts.map +1 -1
  165. package/dist/llm/services/factory.js +6 -5
  166. package/dist/llm/services/types.d.ts +10 -1
  167. package/dist/llm/services/types.d.ts.map +1 -1
  168. package/dist/llm/services/vercel.cjs +23 -8
  169. package/dist/llm/services/vercel.d.ts +11 -7
  170. package/dist/llm/services/vercel.d.ts.map +1 -1
  171. package/dist/llm/services/vercel.js +24 -9
  172. package/dist/llm/types.js +1 -1
  173. package/dist/llm/usage-metadata.cjs +20 -3
  174. package/dist/llm/usage-metadata.d.ts +1 -0
  175. package/dist/llm/usage-metadata.d.ts.map +1 -1
  176. package/dist/llm/usage-metadata.js +19 -3
  177. package/dist/llm/usage-scope.js +1 -1
  178. package/dist/llm/usage-summary.js +1 -1
  179. package/dist/llm/validation.js +1 -1
  180. package/dist/logger/browser.js +1 -1
  181. package/dist/logger/default-logger-factory.js +1 -1
  182. package/dist/logger/factory.js +1 -1
  183. package/dist/logger/index.js +1 -1
  184. package/dist/logger/logger.js +1 -1
  185. package/dist/logger/v2/dexto-logger.js +1 -1
  186. package/dist/logger/v2/error-codes.js +1 -1
  187. package/dist/logger/v2/errors.js +1 -1
  188. package/dist/logger/v2/schemas.js +1 -1
  189. package/dist/logger/v2/test-utils.js +1 -1
  190. package/dist/logger/v2/transport-factory.js +1 -1
  191. package/dist/logger/v2/transports/console-transport.js +1 -1
  192. package/dist/logger/v2/transports/file-transport.js +1 -1
  193. package/dist/logger/v2/transports/silent-transport.js +1 -1
  194. package/dist/logger/v2/types.js +1 -1
  195. package/dist/mcp/bundled-config.js +1 -1
  196. package/dist/mcp/error-codes.js +1 -1
  197. package/dist/mcp/errors.js +1 -1
  198. package/dist/mcp/index.js +1 -1
  199. package/dist/mcp/manager.js +1 -1
  200. package/dist/mcp/mcp-client.js +1 -1
  201. package/dist/mcp/resolver.js +1 -1
  202. package/dist/mcp/schemas.js +1 -1
  203. package/dist/memory/error-codes.js +1 -1
  204. package/dist/memory/errors.js +1 -1
  205. package/dist/memory/index.js +1 -1
  206. package/dist/memory/manager.cjs +7 -27
  207. package/dist/memory/manager.d.ts +4 -12
  208. package/dist/memory/manager.d.ts.map +1 -1
  209. package/dist/memory/manager.js +8 -28
  210. package/dist/memory/schemas.js +1 -1
  211. package/dist/prompts/error-codes.js +1 -1
  212. package/dist/prompts/errors.js +1 -1
  213. package/dist/prompts/index.js +1 -1
  214. package/dist/prompts/name-validation.js +1 -1
  215. package/dist/prompts/prompt-manager.cjs +9 -38
  216. package/dist/prompts/prompt-manager.d.ts +2 -10
  217. package/dist/prompts/prompt-manager.d.ts.map +1 -1
  218. package/dist/prompts/prompt-manager.js +10 -39
  219. package/dist/prompts/providers/config-prompt-provider.cjs +8 -87
  220. package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -1
  221. package/dist/prompts/providers/config-prompt-provider.js +9 -88
  222. package/dist/prompts/providers/custom-prompt-provider.cjs +21 -22
  223. package/dist/prompts/providers/custom-prompt-provider.d.ts +19 -4
  224. package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -1
  225. package/dist/prompts/providers/custom-prompt-provider.js +22 -23
  226. package/dist/prompts/providers/mcp-prompt-provider.js +1 -1
  227. package/dist/prompts/schemas.cjs +2 -24
  228. package/dist/prompts/schemas.d.ts +0 -52
  229. package/dist/prompts/schemas.d.ts.map +1 -1
  230. package/dist/prompts/schemas.js +3 -25
  231. package/dist/prompts/types.d.ts +5 -32
  232. package/dist/prompts/types.d.ts.map +1 -1
  233. package/dist/prompts/utils.js +1 -1
  234. package/dist/resources/agent-resources-provider.js +1 -1
  235. package/dist/resources/error-codes.js +1 -1
  236. package/dist/resources/errors.js +1 -1
  237. package/dist/resources/handlers/blob-handler.cjs +14 -11
  238. package/dist/resources/handlers/blob-handler.d.ts +4 -4
  239. package/dist/resources/handlers/blob-handler.d.ts.map +1 -1
  240. package/dist/resources/handlers/blob-handler.js +15 -12
  241. package/dist/resources/handlers/factory.cjs +3 -3
  242. package/dist/resources/handlers/factory.js +4 -4
  243. package/dist/resources/handlers/filesystem-handler.js +1 -1
  244. package/dist/resources/handlers/types.d.ts +2 -2
  245. package/dist/resources/handlers/types.d.ts.map +1 -1
  246. package/dist/resources/index.js +1 -1
  247. package/dist/resources/manager.cjs +10 -7
  248. package/dist/resources/manager.d.ts +4 -4
  249. package/dist/resources/manager.d.ts.map +1 -1
  250. package/dist/resources/manager.js +11 -8
  251. package/dist/resources/reference-parser.js +1 -1
  252. package/dist/resources/schemas.cjs +1 -1
  253. package/dist/resources/schemas.d.ts +2 -2
  254. package/dist/resources/schemas.js +2 -2
  255. package/dist/runtime/host-runtime.js +1 -1
  256. package/dist/runtime/index.cjs +3 -0
  257. package/dist/runtime/index.d.ts +2 -0
  258. package/dist/runtime/index.d.ts.map +1 -1
  259. package/dist/runtime/index.js +3 -1
  260. package/dist/runtime/run-context.js +1 -1
  261. package/dist/search/index.js +1 -1
  262. package/dist/search/search-service.cjs +6 -13
  263. package/dist/search/search-service.d.ts +5 -3
  264. package/dist/search/search-service.d.ts.map +1 -1
  265. package/dist/search/search-service.js +7 -14
  266. package/dist/session/chat-session.cjs +264 -108
  267. package/dist/session/chat-session.d.ts +75 -21
  268. package/dist/session/chat-session.d.ts.map +1 -1
  269. package/dist/session/chat-session.js +268 -108
  270. package/dist/session/error-codes.js +1 -1
  271. package/dist/session/errors.js +1 -1
  272. package/dist/session/index.cjs +19 -2
  273. package/dist/session/index.d.ts +4 -3
  274. package/dist/session/index.d.ts.map +1 -1
  275. package/dist/session/index.js +19 -3
  276. package/dist/session/message-queue.cjs +82 -51
  277. package/dist/session/message-queue.d.ts +13 -8
  278. package/dist/session/message-queue.d.ts.map +1 -1
  279. package/dist/session/message-queue.js +83 -52
  280. package/dist/session/queue-clone.cjs +50 -0
  281. package/dist/session/queue-clone.d.ts +5 -0
  282. package/dist/session/queue-clone.d.ts.map +1 -0
  283. package/dist/session/queue-clone.js +25 -0
  284. package/dist/session/schemas.cjs +74 -2
  285. package/dist/session/schemas.d.ts +94 -0
  286. package/dist/session/schemas.d.ts.map +1 -1
  287. package/dist/session/schemas.js +69 -2
  288. package/dist/session/session-manager.cjs +107 -123
  289. package/dist/session/session-manager.d.ts +7 -6
  290. package/dist/session/session-manager.d.ts.map +1 -1
  291. package/dist/session/session-manager.js +108 -124
  292. package/dist/session/title-generator.cjs +14 -26
  293. package/dist/session/title-generator.d.ts +4 -6
  294. package/dist/session/title-generator.d.ts.map +1 -1
  295. package/dist/session/title-generator.js +16 -28
  296. package/dist/session/types.cjs +28 -0
  297. package/dist/session/types.d.ts +5 -1
  298. package/dist/session/types.d.ts.map +1 -1
  299. package/dist/session/types.js +19 -0
  300. package/dist/{session/history/factory.cjs → skills/index.cjs} +9 -9
  301. package/dist/skills/index.d.ts +4 -0
  302. package/dist/skills/index.d.ts.map +1 -0
  303. package/dist/skills/index.js +7 -0
  304. package/dist/skills/skill-manager.cjs +76 -0
  305. package/dist/skills/skill-manager.d.ts +13 -0
  306. package/dist/skills/skill-manager.d.ts.map +1 -0
  307. package/dist/skills/skill-manager.js +53 -0
  308. package/dist/skills/types.d.ts +24 -0
  309. package/dist/skills/types.d.ts.map +1 -0
  310. package/dist/skills/workspace-skill-source.cjs +120 -0
  311. package/dist/skills/workspace-skill-source.d.ts +16 -0
  312. package/dist/skills/workspace-skill-source.d.ts.map +1 -0
  313. package/dist/skills/workspace-skill-source.js +97 -0
  314. package/dist/storage/approvals/types.cjs +38 -0
  315. package/dist/storage/approvals/types.d.ts +54 -0
  316. package/dist/storage/approvals/types.d.ts.map +1 -0
  317. package/dist/storage/approvals/types.js +14 -0
  318. package/dist/storage/artifacts/types.d.ts +73 -0
  319. package/dist/storage/artifacts/types.d.ts.map +1 -0
  320. package/dist/storage/conversation/database.cjs +233 -0
  321. package/dist/storage/conversation/database.d.ts +38 -0
  322. package/dist/storage/conversation/database.d.ts.map +1 -0
  323. package/dist/storage/conversation/database.js +210 -0
  324. package/dist/storage/conversation/types.cjs +16 -0
  325. package/dist/storage/conversation/types.d.ts +21 -0
  326. package/dist/storage/conversation/types.d.ts.map +1 -0
  327. package/dist/storage/conversation/types.js +0 -0
  328. package/dist/storage/database/types.d.ts +4 -0
  329. package/dist/storage/database/types.d.ts.map +1 -1
  330. package/dist/storage/error-codes.js +1 -1
  331. package/dist/storage/errors.cjs +6 -6
  332. package/dist/storage/errors.d.ts +2 -2
  333. package/dist/storage/errors.js +7 -7
  334. package/dist/storage/index.cjs +42 -5
  335. package/dist/storage/index.d.ts +19 -8
  336. package/dist/storage/index.d.ts.map +1 -1
  337. package/dist/storage/index.js +39 -4
  338. package/dist/storage/memories/types.cjs +16 -0
  339. package/dist/storage/memories/types.d.ts +17 -0
  340. package/dist/storage/memories/types.d.ts.map +1 -0
  341. package/dist/storage/memories/types.js +0 -0
  342. package/dist/storage/message-queue/types.cjs +16 -0
  343. package/dist/storage/message-queue/types.d.ts +15 -0
  344. package/dist/storage/message-queue/types.d.ts.map +1 -0
  345. package/dist/storage/message-queue/types.js +0 -0
  346. package/dist/storage/prompts/types.cjs +16 -0
  347. package/dist/storage/prompts/types.d.ts +14 -0
  348. package/dist/storage/prompts/types.d.ts.map +1 -0
  349. package/dist/storage/prompts/types.js +0 -0
  350. package/dist/storage/runtime-events/types.cjs +16 -0
  351. package/dist/storage/runtime-events/types.d.ts +19 -0
  352. package/dist/storage/runtime-events/types.d.ts.map +1 -0
  353. package/dist/storage/runtime-events/types.js +0 -0
  354. package/dist/storage/sessions/types.cjs +16 -0
  355. package/dist/storage/sessions/types.d.ts +19 -0
  356. package/dist/storage/sessions/types.d.ts.map +1 -0
  357. package/dist/storage/sessions/types.js +0 -0
  358. package/dist/storage/stores/backend.cjs +702 -0
  359. package/dist/storage/stores/backend.d.ts +303 -0
  360. package/dist/storage/stores/backend.d.ts.map +1 -0
  361. package/dist/storage/stores/backend.js +677 -0
  362. package/dist/storage/stores/in-memory.cjs +510 -0
  363. package/dist/storage/stores/in-memory.d.ts +11 -0
  364. package/dist/storage/stores/in-memory.d.ts.map +1 -0
  365. package/dist/storage/stores/in-memory.js +487 -0
  366. package/dist/storage/stores/types.cjs +16 -0
  367. package/dist/storage/stores/types.d.ts +36 -0
  368. package/dist/storage/stores/types.d.ts.map +1 -0
  369. package/dist/storage/stores/types.js +0 -0
  370. package/dist/storage/tool-executions/types.cjs +127 -0
  371. package/dist/storage/tool-executions/types.d.ts +193 -0
  372. package/dist/storage/tool-executions/types.d.ts.map +1 -0
  373. package/dist/storage/tool-executions/types.js +96 -0
  374. package/dist/storage/tool-preferences/types.cjs +16 -0
  375. package/dist/storage/tool-preferences/types.d.ts +29 -0
  376. package/dist/storage/tool-preferences/types.d.ts.map +1 -0
  377. package/dist/storage/tool-preferences/types.js +0 -0
  378. package/dist/storage/tool-state/types.cjs +16 -0
  379. package/dist/storage/tool-state/types.d.ts +20 -0
  380. package/dist/storage/tool-state/types.d.ts.map +1 -0
  381. package/dist/storage/tool-state/types.js +0 -0
  382. package/dist/storage/workspaces/types.cjs +16 -0
  383. package/dist/storage/workspaces/types.d.ts +19 -0
  384. package/dist/storage/workspaces/types.d.ts.map +1 -0
  385. package/dist/storage/workspaces/types.js +0 -0
  386. package/dist/systemPrompt/contributors.cjs +10 -14
  387. package/dist/systemPrompt/contributors.d.ts +3 -3
  388. package/dist/systemPrompt/contributors.d.ts.map +1 -1
  389. package/dist/systemPrompt/contributors.js +11 -15
  390. package/dist/systemPrompt/error-codes.js +1 -1
  391. package/dist/systemPrompt/errors.js +1 -1
  392. package/dist/systemPrompt/in-built-prompts.js +1 -1
  393. package/dist/systemPrompt/index.js +1 -1
  394. package/dist/systemPrompt/manager.js +1 -1
  395. package/dist/systemPrompt/registry.js +1 -1
  396. package/dist/systemPrompt/schemas.js +1 -1
  397. package/dist/telemetry/decorators.js +1 -1
  398. package/dist/telemetry/error-codes.js +1 -1
  399. package/dist/telemetry/errors.js +1 -1
  400. package/dist/telemetry/exporters.js +1 -1
  401. package/dist/telemetry/index.js +1 -1
  402. package/dist/telemetry/schemas.js +1 -1
  403. package/dist/telemetry/telemetry.js +1 -1
  404. package/dist/telemetry/utils.js +1 -1
  405. package/dist/test-utils/in-memory-storage.cjs +9 -17
  406. package/dist/test-utils/in-memory-storage.js +9 -16
  407. package/dist/test-utils/session-state-stores.cjs +21 -24
  408. package/dist/test-utils/session-state-stores.js +22 -24
  409. package/dist/tools/{confirmation → approval}/allowed-tools-provider/factory.cjs +1 -1
  410. package/dist/tools/{confirmation → approval}/allowed-tools-provider/factory.d.ts +2 -2
  411. package/dist/tools/approval/allowed-tools-provider/factory.d.ts.map +1 -0
  412. package/dist/tools/{confirmation → approval}/allowed-tools-provider/factory.js +2 -2
  413. package/dist/tools/approval/allowed-tools-provider/in-memory.d.ts.map +1 -0
  414. package/dist/tools/{confirmation → approval}/allowed-tools-provider/in-memory.js +1 -1
  415. package/dist/tools/approval/allowed-tools-provider/storage.cjs +66 -0
  416. package/dist/tools/{confirmation → approval}/allowed-tools-provider/storage.d.ts +4 -10
  417. package/dist/tools/approval/allowed-tools-provider/storage.d.ts.map +1 -0
  418. package/dist/tools/approval/allowed-tools-provider/storage.js +43 -0
  419. package/dist/tools/approval/allowed-tools-provider/types.cjs +16 -0
  420. package/dist/tools/approval/allowed-tools-provider/types.d.ts.map +1 -0
  421. package/dist/tools/approval/allowed-tools-provider/types.js +0 -0
  422. package/dist/tools/approval/session-tool-policy.cjs +269 -0
  423. package/dist/tools/approval/session-tool-policy.d.ts +43 -0
  424. package/dist/tools/approval/session-tool-policy.d.ts.map +1 -0
  425. package/dist/tools/approval/session-tool-policy.js +245 -0
  426. package/dist/tools/define-tool.js +1 -1
  427. package/dist/tools/display-types.js +1 -1
  428. package/dist/tools/error-codes.cjs +3 -3
  429. package/dist/tools/error-codes.d.ts +4 -4
  430. package/dist/tools/error-codes.d.ts.map +1 -1
  431. package/dist/tools/error-codes.js +4 -4
  432. package/dist/tools/errors.cjs +12 -12
  433. package/dist/tools/errors.d.ts +6 -6
  434. package/dist/tools/errors.d.ts.map +1 -1
  435. package/dist/tools/errors.js +13 -13
  436. package/dist/tools/index.cjs +3 -0
  437. package/dist/tools/index.d.ts +3 -0
  438. package/dist/tools/index.d.ts.map +1 -1
  439. package/dist/tools/index.js +3 -1
  440. package/dist/tools/pattern-utils.js +1 -1
  441. package/dist/tools/presentation/tool-presentation.cjs +182 -0
  442. package/dist/tools/presentation/tool-presentation.d.ts +51 -0
  443. package/dist/tools/presentation/tool-presentation.d.ts.map +1 -0
  444. package/dist/tools/presentation/tool-presentation.js +159 -0
  445. package/dist/tools/presentation.js +1 -1
  446. package/dist/tools/schemas.cjs +5 -10
  447. package/dist/tools/schemas.d.ts +1 -4
  448. package/dist/tools/schemas.d.ts.map +1 -1
  449. package/dist/tools/schemas.js +6 -11
  450. package/dist/tools/session-tool-preferences-store.cjs +12 -28
  451. package/dist/tools/session-tool-preferences-store.d.ts +4 -7
  452. package/dist/tools/session-tool-preferences-store.d.ts.map +1 -1
  453. package/dist/tools/session-tool-preferences-store.js +12 -29
  454. package/dist/tools/tool-call-metadata.js +1 -1
  455. package/dist/tools/tool-manager.cjs +871 -834
  456. package/dist/tools/tool-manager.d.ts +94 -96
  457. package/dist/tools/tool-manager.d.ts.map +1 -1
  458. package/dist/tools/tool-manager.js +876 -833
  459. package/dist/tools/types.d.ts +10 -14
  460. package/dist/tools/types.d.ts.map +1 -1
  461. package/dist/utils/api-key-resolver.js +1 -1
  462. package/dist/utils/async-context.js +1 -1
  463. package/dist/utils/debug.js +1 -1
  464. package/dist/utils/defer.js +1 -1
  465. package/dist/utils/env.js +1 -1
  466. package/dist/utils/error-conversion.js +1 -1
  467. package/dist/utils/execution-context.js +1 -1
  468. package/dist/utils/fs-walk.js +1 -1
  469. package/dist/utils/path.js +1 -1
  470. package/dist/utils/redactor.js +1 -1
  471. package/dist/utils/result.js +1 -1
  472. package/dist/utils/safe-stringify.js +1 -1
  473. package/dist/utils/schema.js +1 -1
  474. package/dist/utils/service-initializer.cjs +37 -33
  475. package/dist/utils/service-initializer.d.ts +9 -5
  476. package/dist/utils/service-initializer.d.ts.map +1 -1
  477. package/dist/utils/service-initializer.js +38 -34
  478. package/dist/utils/zod-schema-converter.js +1 -1
  479. package/dist/workspace/error-codes.cjs +5 -1
  480. package/dist/workspace/error-codes.d.ts +4 -0
  481. package/dist/workspace/error-codes.d.ts.map +1 -1
  482. package/dist/workspace/error-codes.js +6 -2
  483. package/dist/workspace/errors.cjs +43 -0
  484. package/dist/workspace/errors.d.ts +9 -0
  485. package/dist/workspace/errors.d.ts.map +1 -1
  486. package/dist/workspace/errors.js +44 -1
  487. package/dist/workspace/index.d.ts +1 -1
  488. package/dist/workspace/index.d.ts.map +1 -1
  489. package/dist/workspace/index.js +1 -1
  490. package/dist/workspace/manager.cjs +21 -29
  491. package/dist/workspace/manager.d.ts +6 -6
  492. package/dist/workspace/manager.d.ts.map +1 -1
  493. package/dist/workspace/manager.js +22 -30
  494. package/dist/workspace/types.d.ts +47 -0
  495. package/dist/workspace/types.d.ts.map +1 -1
  496. package/package.json +114 -2
  497. package/dist/approval/session-approval-store.cjs +0 -91
  498. package/dist/approval/session-approval-store.d.ts +0 -37
  499. package/dist/approval/session-approval-store.d.ts.map +0 -1
  500. package/dist/approval/session-approval-store.js +0 -68
  501. package/dist/session/history/database.cjs +0 -232
  502. package/dist/session/history/database.d.ts +0 -41
  503. package/dist/session/history/database.d.ts.map +0 -1
  504. package/dist/session/history/database.js +0 -209
  505. package/dist/session/history/factory.d.ts +0 -11
  506. package/dist/session/history/factory.d.ts.map +0 -1
  507. package/dist/session/history/factory.js +0 -8
  508. package/dist/session/history/memory.d.ts +0 -22
  509. package/dist/session/history/memory.d.ts.map +0 -1
  510. package/dist/session/history/memory.js +0 -34
  511. package/dist/session/history/types.d.ts +0 -26
  512. package/dist/session/history/types.d.ts.map +0 -1
  513. package/dist/session/message-queue-store.cjs +0 -75
  514. package/dist/session/message-queue-store.d.ts +0 -16
  515. package/dist/session/message-queue-store.d.ts.map +0 -1
  516. package/dist/session/message-queue-store.js +0 -52
  517. package/dist/storage/storage-manager.cjs +0 -209
  518. package/dist/storage/storage-manager.d.ts +0 -77
  519. package/dist/storage/storage-manager.d.ts.map +0 -1
  520. package/dist/storage/storage-manager.js +0 -186
  521. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts.map +0 -1
  522. package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.ts.map +0 -1
  523. package/dist/tools/confirmation/allowed-tools-provider/storage.cjs +0 -69
  524. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts.map +0 -1
  525. package/dist/tools/confirmation/allowed-tools-provider/storage.js +0 -46
  526. package/dist/tools/confirmation/allowed-tools-provider/types.d.ts.map +0 -1
  527. /package/dist/{session/history → skills}/types.cjs +0 -0
  528. /package/dist/{session/history → skills}/types.js +0 -0
  529. /package/dist/{tools/confirmation/allowed-tools-provider → storage/artifacts}/types.cjs +0 -0
  530. /package/dist/{tools/confirmation/allowed-tools-provider → storage/artifacts}/types.js +0 -0
  531. /package/dist/tools/{confirmation → approval}/allowed-tools-provider/in-memory.cjs +0 -0
  532. /package/dist/tools/{confirmation → approval}/allowed-tools-provider/in-memory.d.ts +0 -0
  533. /package/dist/tools/{confirmation → approval}/allowed-tools-provider/types.d.ts +0 -0
@@ -0,0 +1,15 @@
1
+ export { AgentCardSchema, type AgentCard, type ValidatedAgentCard } from '../agent/schemas.js';
2
+ export { EnvExpandedString, NonEmptyEnvExpandedString, RequiredEnvURL } from '../utils/result.js';
3
+ export { ErrorScope, ErrorType } from '../errors/types.js';
4
+ export { StorageErrorCode } from '../storage/error-codes.js';
5
+ export { LLMConfigSchema, type LLMConfig, type ValidatedLLMConfig } from '../llm/schemas.js';
6
+ export { LoggerConfigSchema, type LoggerConfig } from '../logger/v2/schemas.js';
7
+ export { ServersConfigSchema, type ServersConfig, type ValidatedServersConfig, } from '../mcp/schemas.js';
8
+ export { MemoriesConfigSchema, type MemoriesConfig, type ValidatedMemoriesConfig, } from '../memory/schemas.js';
9
+ export { PromptsSchema, type PromptsConfig, type ValidatedPromptsConfig, } from '../prompts/schemas.js';
10
+ export { ResourcesConfigSchema, type ResourcesConfig, type ValidatedResourcesConfig, } from '../resources/schemas.js';
11
+ export { SessionConfigSchema, type SessionConfig, type ValidatedSessionConfig, } from '../session/schemas.js';
12
+ export { SystemPromptConfigSchema, type SystemPromptConfig, type ValidatedSystemPromptConfig, } from '../systemPrompt/schemas.js';
13
+ export { ElicitationConfigSchema, PermissionsConfigSchema, type ElicitationConfig, type PermissionsConfig, type ValidatedElicitationConfig, type ValidatedPermissionsConfig, } from '../tools/schemas.js';
14
+ export { OtelConfigurationSchema, type OtelConfiguration } from '../telemetry/schemas.js';
15
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/config/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,KAAK,SAAS,EAAE,KAAK,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAC/F,OAAO,EAAE,iBAAiB,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAClG,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,KAAK,SAAS,EAAE,KAAK,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAC7F,OAAO,EAAE,kBAAkB,EAAE,KAAK,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAChF,OAAO,EACH,mBAAmB,EACnB,KAAK,aAAa,EAClB,KAAK,sBAAsB,GAC9B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EACH,oBAAoB,EACpB,KAAK,cAAc,EACnB,KAAK,uBAAuB,GAC/B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACH,aAAa,EACb,KAAK,aAAa,EAClB,KAAK,sBAAsB,GAC9B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACH,qBAAqB,EACrB,KAAK,eAAe,EACpB,KAAK,wBAAwB,GAChC,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACH,mBAAmB,EACnB,KAAK,aAAa,EAClB,KAAK,sBAAsB,GAC9B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACH,wBAAwB,EACxB,KAAK,kBAAkB,EACvB,KAAK,2BAA2B,GACnC,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACH,uBAAuB,EACvB,uBAAuB,EACvB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,0BAA0B,EAC/B,KAAK,0BAA0B,GAClC,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,uBAAuB,EAAE,KAAK,iBAAiB,EAAE,MAAM,yBAAyB,CAAC"}
@@ -0,0 +1,50 @@
1
+ import "../chunk-C6A6W6XS.js";
2
+ import { AgentCardSchema } from "../agent/schemas.js";
3
+ import { EnvExpandedString, NonEmptyEnvExpandedString, RequiredEnvURL } from "../utils/result.js";
4
+ import { ErrorScope, ErrorType } from "../errors/types.js";
5
+ import { StorageErrorCode } from "../storage/error-codes.js";
6
+ import { LLMConfigSchema } from "../llm/schemas.js";
7
+ import { LoggerConfigSchema } from "../logger/v2/schemas.js";
8
+ import {
9
+ ServersConfigSchema
10
+ } from "../mcp/schemas.js";
11
+ import {
12
+ MemoriesConfigSchema
13
+ } from "../memory/schemas.js";
14
+ import {
15
+ PromptsSchema
16
+ } from "../prompts/schemas.js";
17
+ import {
18
+ ResourcesConfigSchema
19
+ } from "../resources/schemas.js";
20
+ import {
21
+ SessionConfigSchema
22
+ } from "../session/schemas.js";
23
+ import {
24
+ SystemPromptConfigSchema
25
+ } from "../systemPrompt/schemas.js";
26
+ import {
27
+ ElicitationConfigSchema,
28
+ PermissionsConfigSchema
29
+ } from "../tools/schemas.js";
30
+ import { OtelConfigurationSchema } from "../telemetry/schemas.js";
31
+ export {
32
+ AgentCardSchema,
33
+ ElicitationConfigSchema,
34
+ EnvExpandedString,
35
+ ErrorScope,
36
+ ErrorType,
37
+ LLMConfigSchema,
38
+ LoggerConfigSchema,
39
+ MemoriesConfigSchema,
40
+ NonEmptyEnvExpandedString,
41
+ OtelConfigurationSchema,
42
+ PermissionsConfigSchema,
43
+ PromptsSchema,
44
+ RequiredEnvURL,
45
+ ResourcesConfigSchema,
46
+ ServersConfigSchema,
47
+ SessionConfigSchema,
48
+ StorageErrorCode,
49
+ SystemPromptConfigSchema
50
+ };
@@ -1,4 +1,4 @@
1
- import "../../chunk-PTJYTZNU.js";
1
+ import "../../chunk-C6A6W6XS.js";
2
2
  function isOverflow(tokens, modelLimits, thresholdPercent = 0.9) {
3
3
  const { contextWindow } = modelLimits;
4
4
  const effectiveLimit = Math.floor(contextWindow * thresholdPercent);
@@ -1,4 +1,4 @@
1
- import "../../../chunk-PTJYTZNU.js";
1
+ import "../../../chunk-C6A6W6XS.js";
2
2
  class NoOpCompactionStrategy {
3
3
  name = "noop";
4
4
  settings;
@@ -1,4 +1,4 @@
1
- import "../../../chunk-PTJYTZNU.js";
1
+ import "../../../chunk-C6A6W6XS.js";
2
2
  import { generateText } from "ai";
3
3
  import { isAssistantMessage, isToolMessage } from "../../types.js";
4
4
  import { isOverflow } from "../overflow.js";
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var content_clone_exports = {};
20
+ __export(content_clone_exports, {
21
+ cloneContentPart: () => cloneContentPart,
22
+ cloneContentParts: () => cloneContentParts,
23
+ cloneInternalMessage: () => cloneInternalMessage,
24
+ cloneInternalMessages: () => cloneInternalMessages,
25
+ clonePromptContentPart: () => clonePromptContentPart
26
+ });
27
+ module.exports = __toCommonJS(content_clone_exports);
28
+ function cloneBinaryData(data) {
29
+ if (typeof data === "string") return data;
30
+ if (data instanceof URL) return new URL(data.href);
31
+ if (data instanceof ArrayBuffer) return data.slice(0);
32
+ if (typeof Buffer !== "undefined" && Buffer.isBuffer(data)) return Buffer.from(data);
33
+ return new Uint8Array(data);
34
+ }
35
+ function cloneImagePart(part) {
36
+ const cloned = {
37
+ type: "image",
38
+ image: cloneBinaryData(part.image)
39
+ };
40
+ if (part.mimeType) {
41
+ cloned.mimeType = part.mimeType;
42
+ }
43
+ return cloned;
44
+ }
45
+ function cloneFilePart(part) {
46
+ const cloned = {
47
+ type: "file",
48
+ data: cloneBinaryData(part.data),
49
+ mimeType: part.mimeType
50
+ };
51
+ if (part.filename) {
52
+ cloned.filename = part.filename;
53
+ }
54
+ return cloned;
55
+ }
56
+ function cloneContentPart(part) {
57
+ switch (part.type) {
58
+ case "text":
59
+ return { type: "text", text: part.text };
60
+ case "image":
61
+ return cloneImagePart(part);
62
+ case "file":
63
+ return cloneFilePart(part);
64
+ case "resource":
65
+ return {
66
+ type: "resource",
67
+ uri: part.uri,
68
+ name: part.name,
69
+ mimeType: part.mimeType,
70
+ kind: part.kind,
71
+ ...part.size !== void 0 ? { size: part.size } : {},
72
+ ...part.metadata !== void 0 ? { metadata: structuredClone(part.metadata) } : {}
73
+ };
74
+ case "ui-resource":
75
+ return {
76
+ type: "ui-resource",
77
+ uri: part.uri,
78
+ mimeType: part.mimeType,
79
+ ...part.content !== void 0 ? { content: part.content } : {},
80
+ ...part.blob !== void 0 ? { blob: part.blob } : {},
81
+ ...part.metadata !== void 0 ? { metadata: structuredClone(part.metadata) } : {}
82
+ };
83
+ }
84
+ }
85
+ function cloneContentParts(content) {
86
+ return content.map((part) => cloneContentPart(part));
87
+ }
88
+ function clonePromptContentPart(part) {
89
+ switch (part.type) {
90
+ case "text":
91
+ return { type: "text", text: part.text };
92
+ case "image":
93
+ return cloneImagePart(part);
94
+ case "file":
95
+ return cloneFilePart(part);
96
+ }
97
+ }
98
+ function cloneInternalMessage(message) {
99
+ switch (message.role) {
100
+ case "assistant": {
101
+ const cloned = structuredClone(message);
102
+ return {
103
+ ...cloned,
104
+ content: message.content === null ? null : cloneContentParts(message.content)
105
+ };
106
+ }
107
+ case "system": {
108
+ const cloned = structuredClone(message);
109
+ return { ...cloned, content: cloneContentParts(message.content) };
110
+ }
111
+ case "user": {
112
+ const cloned = structuredClone(message);
113
+ return { ...cloned, content: cloneContentParts(message.content) };
114
+ }
115
+ case "tool": {
116
+ const cloned = structuredClone(message);
117
+ return { ...cloned, content: cloneContentParts(message.content) };
118
+ }
119
+ }
120
+ }
121
+ function cloneInternalMessages(messages) {
122
+ return messages.map((message) => cloneInternalMessage(message));
123
+ }
124
+ // Annotate the CommonJS export names for ESM import in node:
125
+ 0 && (module.exports = {
126
+ cloneContentPart,
127
+ cloneContentParts,
128
+ cloneInternalMessage,
129
+ cloneInternalMessages,
130
+ clonePromptContentPart
131
+ });
@@ -0,0 +1,7 @@
1
+ import type { ContentPart, FilePart, ImagePart, InternalMessage, TextPart } from './types.js';
2
+ export declare function cloneContentPart(part: ContentPart): ContentPart;
3
+ export declare function cloneContentParts(content: ContentPart[]): ContentPart[];
4
+ export declare function clonePromptContentPart(part: TextPart | ImagePart | FilePart): TextPart | ImagePart | FilePart;
5
+ export declare function cloneInternalMessage(message: InternalMessage): InternalMessage;
6
+ export declare function cloneInternalMessages(messages: InternalMessage[]): InternalMessage[];
7
+ //# sourceMappingURL=content-clone.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-clone.d.ts","sourceRoot":"","sources":["../../src/context/content-clone.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,QAAQ,EAAE,SAAS,EAAE,eAAe,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAmC9F,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,WAAW,GAAG,WAAW,CAgC/D;AAED,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,CAEvE;AAED,wBAAgB,sBAAsB,CAClC,IAAI,EAAE,QAAQ,GAAG,SAAS,GAAG,QAAQ,GACtC,QAAQ,GAAG,SAAS,GAAG,QAAQ,CASjC;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,eAAe,GAAG,eAAe,CAsB9E;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,eAAe,EAAE,GAAG,eAAe,EAAE,CAEpF"}
@@ -0,0 +1,104 @@
1
+ import "../chunk-C6A6W6XS.js";
2
+ function cloneBinaryData(data) {
3
+ if (typeof data === "string") return data;
4
+ if (data instanceof URL) return new URL(data.href);
5
+ if (data instanceof ArrayBuffer) return data.slice(0);
6
+ if (typeof Buffer !== "undefined" && Buffer.isBuffer(data)) return Buffer.from(data);
7
+ return new Uint8Array(data);
8
+ }
9
+ function cloneImagePart(part) {
10
+ const cloned = {
11
+ type: "image",
12
+ image: cloneBinaryData(part.image)
13
+ };
14
+ if (part.mimeType) {
15
+ cloned.mimeType = part.mimeType;
16
+ }
17
+ return cloned;
18
+ }
19
+ function cloneFilePart(part) {
20
+ const cloned = {
21
+ type: "file",
22
+ data: cloneBinaryData(part.data),
23
+ mimeType: part.mimeType
24
+ };
25
+ if (part.filename) {
26
+ cloned.filename = part.filename;
27
+ }
28
+ return cloned;
29
+ }
30
+ function cloneContentPart(part) {
31
+ switch (part.type) {
32
+ case "text":
33
+ return { type: "text", text: part.text };
34
+ case "image":
35
+ return cloneImagePart(part);
36
+ case "file":
37
+ return cloneFilePart(part);
38
+ case "resource":
39
+ return {
40
+ type: "resource",
41
+ uri: part.uri,
42
+ name: part.name,
43
+ mimeType: part.mimeType,
44
+ kind: part.kind,
45
+ ...part.size !== void 0 ? { size: part.size } : {},
46
+ ...part.metadata !== void 0 ? { metadata: structuredClone(part.metadata) } : {}
47
+ };
48
+ case "ui-resource":
49
+ return {
50
+ type: "ui-resource",
51
+ uri: part.uri,
52
+ mimeType: part.mimeType,
53
+ ...part.content !== void 0 ? { content: part.content } : {},
54
+ ...part.blob !== void 0 ? { blob: part.blob } : {},
55
+ ...part.metadata !== void 0 ? { metadata: structuredClone(part.metadata) } : {}
56
+ };
57
+ }
58
+ }
59
+ function cloneContentParts(content) {
60
+ return content.map((part) => cloneContentPart(part));
61
+ }
62
+ function clonePromptContentPart(part) {
63
+ switch (part.type) {
64
+ case "text":
65
+ return { type: "text", text: part.text };
66
+ case "image":
67
+ return cloneImagePart(part);
68
+ case "file":
69
+ return cloneFilePart(part);
70
+ }
71
+ }
72
+ function cloneInternalMessage(message) {
73
+ switch (message.role) {
74
+ case "assistant": {
75
+ const cloned = structuredClone(message);
76
+ return {
77
+ ...cloned,
78
+ content: message.content === null ? null : cloneContentParts(message.content)
79
+ };
80
+ }
81
+ case "system": {
82
+ const cloned = structuredClone(message);
83
+ return { ...cloned, content: cloneContentParts(message.content) };
84
+ }
85
+ case "user": {
86
+ const cloned = structuredClone(message);
87
+ return { ...cloned, content: cloneContentParts(message.content) };
88
+ }
89
+ case "tool": {
90
+ const cloned = structuredClone(message);
91
+ return { ...cloned, content: cloneContentParts(message.content) };
92
+ }
93
+ }
94
+ }
95
+ function cloneInternalMessages(messages) {
96
+ return messages.map((message) => cloneInternalMessage(message));
97
+ }
98
+ export {
99
+ cloneContentPart,
100
+ cloneContentParts,
101
+ cloneInternalMessage,
102
+ cloneInternalMessages,
103
+ clonePromptContentPart
104
+ };
@@ -1,4 +1,4 @@
1
- import "../chunk-PTJYTZNU.js";
1
+ import "../chunk-C6A6W6XS.js";
2
2
  var ContextErrorCode = /* @__PURE__ */ ((ContextErrorCode2) => {
3
3
  ContextErrorCode2["MESSAGE_ROLE_MISSING"] = "context_message_role_missing";
4
4
  ContextErrorCode2["MESSAGE_CONTENT_EMPTY"] = "context_message_content_empty";
@@ -1,4 +1,4 @@
1
- import "../chunk-PTJYTZNU.js";
1
+ import "../chunk-C6A6W6XS.js";
2
2
  import { DextoRuntimeError } from "../errors/index.js";
3
3
  import { ErrorScope, ErrorType } from "../errors/types.js";
4
4
  import { ContextErrorCode } from "./error-codes.js";
@@ -24,6 +24,7 @@ __export(context_exports, {
24
24
  });
25
25
  module.exports = __toCommonJS(context_exports);
26
26
  __reExport(context_exports, require("./manager.js"), module.exports);
27
+ __reExport(context_exports, require("./schemas.js"), module.exports);
27
28
  __reExport(context_exports, require("./types.js"), module.exports);
28
29
  var import_media_helpers = require("./media-helpers.js");
29
30
  __reExport(context_exports, require("./compaction/index.js"), module.exports);
@@ -32,6 +33,7 @@ __reExport(context_exports, require("./compaction/index.js"), module.exports);
32
33
  getFileMediaKind,
33
34
  getResourceKind,
34
35
  ...require("./manager.js"),
36
+ ...require("./schemas.js"),
35
37
  ...require("./types.js"),
36
38
  ...require("./compaction/index.js")
37
39
  });
@@ -1,4 +1,5 @@
1
1
  export * from './manager.js';
2
+ export * from './schemas.js';
2
3
  export * from './types.js';
3
4
  export { getFileMediaKind, getResourceKind } from './media-helpers.js';
4
5
  export * from './compaction/index.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACvE,cAAc,uBAAuB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/context/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACvE,cAAc,uBAAuB,CAAC"}
@@ -1,5 +1,6 @@
1
- import "../chunk-PTJYTZNU.js";
1
+ import "../chunk-C6A6W6XS.js";
2
2
  export * from "./manager.js";
3
+ export * from "./schemas.js";
3
4
  export * from "./types.js";
4
5
  import { getFileMediaKind, getResourceKind } from "./media-helpers.js";
5
6
  export * from "./compaction/index.js";
@@ -72,7 +72,7 @@ class ContextManager {
72
72
  * Messages after this index are estimated with length/4 heuristic.
73
73
  */
74
74
  lastCallMessageCount = null;
75
- historyProvider;
75
+ conversationStore;
76
76
  sessionId;
77
77
  /**
78
78
  * ResourceManager for resolving blob references in message content.
@@ -195,22 +195,22 @@ class ContextManager {
195
195
  * @param formatter Formatter implementation for the target LLM provider
196
196
  * @param systemPromptManager SystemPromptManager instance for the conversation
197
197
  * @param maxInputTokens Maximum token limit for the conversation history.
198
- * @param historyProvider Session-scoped ConversationHistoryProvider instance for managing conversation history
198
+ * @param conversationStore Store for managing conversation history
199
199
  * @param sessionId Unique identifier for the conversation session (readonly, for debugging)
200
200
  * @param resourceManager ResourceManager for resolving blob references in messages
201
201
  * @param logger Logger instance for logging
202
202
  */
203
- constructor(llmConfig, formatter, systemPromptManager, maxInputTokens, historyProvider, sessionId, resourceManager, logger) {
203
+ constructor(llmConfig, formatter, systemPromptManager, maxInputTokens, conversationStore, sessionId, resourceManager, logger) {
204
204
  this.llmConfig = llmConfig;
205
205
  this.formatter = formatter;
206
206
  this.systemPromptManager = systemPromptManager;
207
207
  this.maxInputTokens = maxInputTokens;
208
- this.historyProvider = historyProvider;
208
+ this.conversationStore = conversationStore;
209
209
  this.sessionId = sessionId;
210
210
  this.resourceManager = resourceManager;
211
211
  this.logger = logger.createChild(import_types3.DextoLogComponent.CONTEXT);
212
212
  this.logger.debug(
213
- `ContextManager: Initialized for session ${sessionId} - history will be managed by ${historyProvider.constructor.name}`
213
+ `ContextManager: Initialized for session ${sessionId} - history will be managed by ${conversationStore.constructor.name}`
214
214
  );
215
215
  }
216
216
  /**
@@ -224,7 +224,7 @@ class ContextManager {
224
224
  * Returns either the original data or a blob reference (@blob:id).
225
225
  */
226
226
  async processUserInput(data, metadata) {
227
- const blobService = this.resourceManager.getBlobStore();
227
+ const artifactStore = this.resourceManager.getArtifactStore();
228
228
  let shouldStoreAsBlob = false;
229
229
  let estimatedSize = 0;
230
230
  if (typeof data === "string") {
@@ -251,20 +251,25 @@ class ContextManager {
251
251
  if (shouldStoreAsBlob) {
252
252
  try {
253
253
  const blobInput = typeof data === "string" && !data.startsWith("data:") && !(0, import_utils.isLikelyBase64String)(data) && !isLikelyBinary ? Buffer.from(data, "utf-8") : data;
254
- const blobRef = await blobService.store(blobInput, {
255
- mimeType: metadata.mimeType,
256
- originalName: metadata.originalName,
257
- source: metadata.source || "user"
254
+ const artifactRef = await artifactStore.store({
255
+ data: blobInput,
256
+ metadata: {
257
+ mimeType: metadata.mimeType,
258
+ ...metadata.originalName !== void 0 && {
259
+ originalName: metadata.originalName
260
+ },
261
+ source: metadata.source || "user"
262
+ }
258
263
  });
259
264
  this.logger.info(
260
- `Stored user input as blob: ${blobRef.uri} (${estimatedSize} bytes, ${metadata.mimeType})`
265
+ `Stored user input as artifact: ${artifactRef.uri} (${estimatedSize} bytes, ${metadata.mimeType})`
261
266
  );
262
267
  this.resourceManager.emitCacheInvalidated({
263
- resourceUri: blobRef.uri,
268
+ resourceUri: artifactRef.uri,
264
269
  serverName: "internal",
265
270
  action: "blob_stored"
266
271
  });
267
- return `@${blobRef.uri}`;
272
+ return `@${artifactRef.uri}`;
268
273
  } catch (error) {
269
274
  this.logger.warn(`Failed to store user input as blob: ${String(error)}`);
270
275
  return data;
@@ -320,7 +325,7 @@ class ContextManager {
320
325
  * This marks the boundary for "new messages" calculation.
321
326
  */
322
327
  async recordLastCallMessageCount() {
323
- const history = await this.historyProvider.getHistory();
328
+ const history = await this.conversationStore.listMessages({ sessionId: this.sessionId });
324
329
  this.lastCallMessageCount = history.length;
325
330
  this.logger.debug(`Recorded lastCallMessageCount: ${this.lastCallMessageCount}`);
326
331
  }
@@ -355,7 +360,9 @@ class ContextManager {
355
360
  * @returns Prepared history and statistics about the transformations
356
361
  */
357
362
  async prepareHistory() {
358
- const fullHistory = await this.historyProvider.getHistory();
363
+ const fullHistory = await this.conversationStore.listMessages({
364
+ sessionId: this.sessionId
365
+ });
359
366
  const originalCount = fullHistory.length;
360
367
  let history = (0, import_utils.filterCompacted)(fullHistory);
361
368
  const filteredCount = history.length;
@@ -407,7 +414,7 @@ ${prompt}`);
407
414
  * @returns Promise that resolves to a read-only copy of the conversation history
408
415
  */
409
416
  async getHistory() {
410
- const history = await this.historyProvider.getHistory();
417
+ const history = await this.conversationStore.listMessages({ sessionId: this.sessionId });
411
418
  return [...history];
412
419
  }
413
420
  /**
@@ -416,7 +423,7 @@ ${prompt}`);
416
423
  * This ensures all message updates are persisted before returning control to the caller.
417
424
  */
418
425
  async flush() {
419
- await this.historyProvider.flush();
426
+ await this.conversationStore.flush({ sessionId: this.sessionId });
420
427
  }
421
428
  /**
422
429
  * Clears the context window without deleting history.
@@ -447,7 +454,7 @@ ${prompt}`);
447
454
  * Used for streaming responses.
448
455
  */
449
456
  async appendAssistantText(messageId, text) {
450
- const history = await this.historyProvider.getHistory();
457
+ const history = await this.conversationStore.listMessages({ sessionId: this.sessionId });
451
458
  const messageIndex = history.findIndex((m) => m.id === messageId);
452
459
  if (messageIndex === -1) {
453
460
  throw import_errors.ContextError.messageNotFound(messageId);
@@ -469,14 +476,14 @@ ${prompt}`);
469
476
  message.content.push({ type: "text", text });
470
477
  }
471
478
  }
472
- await this.historyProvider.updateMessage(message);
479
+ await this.conversationStore.updateMessage({ sessionId: this.sessionId, message });
473
480
  }
474
481
  /**
475
482
  * Adds a tool call to an existing assistant message.
476
483
  * Used for streaming responses.
477
484
  */
478
485
  async addToolCall(messageId, toolCall) {
479
- const history = await this.historyProvider.getHistory();
486
+ const history = await this.conversationStore.listMessages({ sessionId: this.sessionId });
480
487
  const messageIndex = history.findIndex((m) => m.id === messageId);
481
488
  if (messageIndex === -1) {
482
489
  throw import_errors.ContextError.messageNotFound(messageId);
@@ -492,14 +499,14 @@ ${prompt}`);
492
499
  message.toolCalls = [];
493
500
  }
494
501
  message.toolCalls.push(toolCall);
495
- await this.historyProvider.updateMessage(message);
502
+ await this.conversationStore.updateMessage({ sessionId: this.sessionId, message });
496
503
  }
497
504
  /**
498
505
  * Updates an existing assistant message with new properties.
499
506
  * Used for finalizing streaming responses (e.g. adding token usage).
500
507
  */
501
508
  async updateAssistantMessage(messageId, updates) {
502
- const history = await this.historyProvider.getHistory();
509
+ const history = await this.conversationStore.listMessages({ sessionId: this.sessionId });
503
510
  const messageIndex = history.findIndex((m) => m.id === messageId);
504
511
  if (messageIndex === -1) {
505
512
  throw import_errors.ContextError.messageNotFound(messageId);
@@ -512,7 +519,7 @@ ${prompt}`);
512
519
  throw import_errors.ContextError.messageNotAssistant(messageId);
513
520
  }
514
521
  Object.assign(message, updates);
515
- await this.historyProvider.updateMessage(message);
522
+ await this.conversationStore.updateMessage({ sessionId: this.sessionId, message });
516
523
  }
517
524
  /**
518
525
  * Marks tool messages as compacted (pruned).
@@ -530,7 +537,7 @@ ${prompt}`);
530
537
  if (messageIds.length === 0) {
531
538
  return 0;
532
539
  }
533
- const history = await this.historyProvider.getHistory();
540
+ const history = await this.conversationStore.listMessages({ sessionId: this.sessionId });
534
541
  const timestamp = Date.now();
535
542
  let markedCount = 0;
536
543
  for (const messageId of messageIds) {
@@ -549,7 +556,7 @@ ${prompt}`);
549
556
  continue;
550
557
  }
551
558
  message.compactedAt = timestamp;
552
- await this.historyProvider.updateMessage(message);
559
+ await this.conversationStore.updateMessage({ sessionId: this.sessionId, message });
553
560
  markedCount++;
554
561
  }
555
562
  if (markedCount > 0) {
@@ -611,10 +618,10 @@ ${prompt}`);
611
618
  message.timestamp = Date.now();
612
619
  }
613
620
  this.logger.debug(
614
- `ContextManager: Adding message to history provider: ${JSON.stringify(message, null, 2)}`
621
+ `ContextManager: Adding message to conversation store: ${JSON.stringify(message, null, 2)}`
615
622
  );
616
- await this.historyProvider.saveMessage(message);
617
- const history = await this.historyProvider.getHistory();
623
+ await this.conversationStore.saveMessage({ sessionId: this.sessionId, message });
624
+ const history = await this.conversationStore.listMessages({ sessionId: this.sessionId });
618
625
  this.logger.debug(`ContextManager: History now contains ${history.length} messages`);
619
626
  }
620
627
  /**
@@ -744,12 +751,12 @@ ${prompt}`);
744
751
  * @param contributorContext The DynamicContributorContext for system prompt contributors and formatting
745
752
  * @param llmContext The llmContext for the formatter to decide which messages to include based on the model's capabilities
746
753
  * @param systemPrompt (Optional) Precomputed system prompt string. If provided, it will be used instead of recomputing the system prompt. Useful for avoiding duplicate computation when both the formatted messages and the raw system prompt are needed in the same request.
747
- * @param history (Optional) Pre-fetched and potentially compressed history. If not provided, will fetch from history provider.
754
+ * @param history (Optional) Pre-fetched and potentially compressed history. If not provided, will fetch from the conversation store.
748
755
  * @returns Formatted messages ready to send to the LLM provider API
749
756
  * @throws Error if formatting or compression fails critically
750
757
  */
751
758
  async getFormattedMessages(contributorContext, llmContext, systemPrompt, history) {
752
- let messageHistory = history ?? await this.historyProvider.getHistory();
759
+ let messageHistory = history ?? await this.conversationStore.listMessages({ sessionId: this.sessionId });
753
760
  let allowedMediaTypes = this.llmConfig.allowedMediaTypes;
754
761
  if (!allowedMediaTypes) {
755
762
  try {
@@ -781,7 +788,8 @@ ${prompt}`);
781
788
  if (retainedMediaMessages >= ContextManager.PROMPT_MEDIA_RETENTION_MESSAGES) {
782
789
  break;
783
790
  }
784
- if (ContextManager.hasRetainableMedia(messageHistory[index])) {
791
+ const message = messageHistory[index];
792
+ if ((0, import_types2.isUserMessage)(message) && ContextManager.hasRetainableMedia(message)) {
785
793
  retainedMediaMessageIndexes.add(index);
786
794
  retainedMediaMessages += 1;
787
795
  }
@@ -808,7 +816,7 @@ ${prompt}`);
808
816
  this.resourceManager,
809
817
  this.logger,
810
818
  allowedMediaTypes,
811
- expandMatchingMedia
819
+ false
812
820
  );
813
821
  return { ...message, content: expandedContent };
814
822
  }
@@ -867,7 +875,9 @@ ${prompt}`);
867
875
  const lastInput = this.lastActualInputTokens;
868
876
  const lastOutput = this.lastActualOutputTokens;
869
877
  const lastMsgCount = this.lastCallMessageCount;
870
- const currentHistory = await this.historyProvider.getHistory();
878
+ const currentHistory = await this.conversationStore.listMessages({
879
+ sessionId: this.sessionId
880
+ });
871
881
  const pureEstimate = (0, import_utils.estimateContextTokens)(systemPrompt, preparedHistory, tools);
872
882
  let total;
873
883
  let calculationBasis;
@@ -967,7 +977,9 @@ ${prompt}`);
967
977
  const lastInput = this.lastActualInputTokens;
968
978
  const lastOutput = this.lastActualOutputTokens;
969
979
  const lastMsgCount = this.lastCallMessageCount;
970
- const currentHistory = await this.historyProvider.getHistory();
980
+ const currentHistory = await this.conversationStore.listMessages({
981
+ sessionId: this.sessionId
982
+ });
971
983
  if (lastInput !== null && lastOutput !== null && lastMsgCount !== null) {
972
984
  const newMessages = currentHistory.slice(lastMsgCount);
973
985
  const newMessagesEstimate = (0, import_utils.estimateMessagesTokens)(newMessages);
@@ -996,7 +1008,7 @@ ${prompt}`);
996
1008
  * Does not reset the system prompt
997
1009
  */
998
1010
  async resetConversation() {
999
- await this.historyProvider.clearHistory();
1011
+ await this.conversationStore.clearMessages({ sessionId: this.sessionId });
1000
1012
  this.resetActualTokenTracking();
1001
1013
  this.logger.debug(
1002
1014
  `ContextManager: Conversation history cleared for session ${this.sessionId}`