@dexto/core 1.5.8 → 1.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (658) hide show
  1. package/README.md +19 -8
  2. package/dist/agent/DextoAgent.cjs +318 -159
  3. package/dist/agent/DextoAgent.d.ts +94 -56
  4. package/dist/agent/DextoAgent.d.ts.map +1 -1
  5. package/dist/agent/DextoAgent.js +315 -156
  6. package/dist/{context/compaction/provider.cjs → agent/agent-options.cjs} +2 -2
  7. package/dist/agent/agent-options.d.ts +53 -0
  8. package/dist/agent/agent-options.d.ts.map +1 -0
  9. package/dist/agent/agentCard.cjs +1 -1
  10. package/dist/agent/errors.cjs +2 -2
  11. package/dist/agent/errors.d.ts.map +1 -1
  12. package/dist/agent/index.cjs +1 -6
  13. package/dist/agent/index.d.ts +3 -2
  14. package/dist/agent/index.d.ts.map +1 -1
  15. package/dist/agent/index.js +1 -7
  16. package/dist/{storage/blob/provider.cjs → agent/runtime-config.cjs} +2 -2
  17. package/dist/agent/runtime-config.d.ts +53 -0
  18. package/dist/agent/runtime-config.d.ts.map +1 -0
  19. package/dist/agent/schemas.cjs +2 -104
  20. package/dist/agent/schemas.d.ts +8 -9197
  21. package/dist/agent/schemas.d.ts.map +1 -1
  22. package/dist/agent/schemas.js +1 -109
  23. package/dist/agent/state-manager.d.ts +5 -5
  24. package/dist/agent/state-manager.d.ts.map +1 -1
  25. package/dist/approval/error-codes.cjs +1 -1
  26. package/dist/approval/error-codes.d.ts +1 -1
  27. package/dist/approval/error-codes.d.ts.map +1 -1
  28. package/dist/approval/error-codes.js +1 -1
  29. package/dist/approval/errors.cjs +5 -5
  30. package/dist/approval/errors.d.ts +2 -2
  31. package/dist/approval/errors.d.ts.map +1 -1
  32. package/dist/approval/errors.js +5 -5
  33. package/dist/approval/index.cjs +8 -8
  34. package/dist/approval/index.d.ts +2 -2
  35. package/dist/approval/index.d.ts.map +1 -1
  36. package/dist/approval/index.js +8 -8
  37. package/dist/approval/manager.cjs +163 -83
  38. package/dist/approval/manager.d.ts +50 -43
  39. package/dist/approval/manager.d.ts.map +1 -1
  40. package/dist/approval/manager.js +161 -81
  41. package/dist/approval/schemas.cjs +47 -32
  42. package/dist/approval/schemas.d.ts +291 -97
  43. package/dist/approval/schemas.d.ts.map +1 -1
  44. package/dist/approval/schemas.js +43 -28
  45. package/dist/approval/types.cjs +1 -1
  46. package/dist/approval/types.d.ts +14 -14
  47. package/dist/approval/types.d.ts.map +1 -1
  48. package/dist/approval/types.js +1 -1
  49. package/dist/context/compaction/index.cjs +2 -23
  50. package/dist/context/compaction/index.d.ts +1 -7
  51. package/dist/context/compaction/index.d.ts.map +1 -1
  52. package/dist/context/compaction/index.js +1 -16
  53. package/dist/context/compaction/strategies/noop.cjs +19 -1
  54. package/dist/context/compaction/strategies/noop.d.ts +13 -3
  55. package/dist/context/compaction/strategies/noop.d.ts.map +1 -1
  56. package/dist/context/compaction/strategies/noop.js +19 -1
  57. package/dist/context/compaction/strategies/{reactive-overflow.cjs → reactive-overflow-compaction.cjs} +67 -64
  58. package/dist/context/compaction/strategies/{reactive-overflow.d.ts → reactive-overflow-compaction.d.ts} +19 -36
  59. package/dist/context/compaction/strategies/reactive-overflow-compaction.d.ts.map +1 -0
  60. package/dist/context/compaction/strategies/{reactive-overflow.js → reactive-overflow-compaction.js} +63 -60
  61. package/dist/context/compaction/types.d.ts +40 -8
  62. package/dist/context/compaction/types.d.ts.map +1 -1
  63. package/dist/context/manager.cjs +4 -2
  64. package/dist/context/manager.d.ts +5 -3
  65. package/dist/context/manager.d.ts.map +1 -1
  66. package/dist/context/manager.js +4 -2
  67. package/dist/context/types.d.ts +3 -0
  68. package/dist/context/types.d.ts.map +1 -1
  69. package/dist/context/utils.cjs +2 -2
  70. package/dist/context/utils.d.ts +14 -14
  71. package/dist/context/utils.d.ts.map +1 -1
  72. package/dist/errors/result-bridge.d.ts +2 -2
  73. package/dist/errors/result-bridge.d.ts.map +1 -1
  74. package/dist/errors/types.cjs +1 -1
  75. package/dist/errors/types.d.ts +3 -3
  76. package/dist/errors/types.d.ts.map +1 -1
  77. package/dist/errors/types.js +1 -1
  78. package/dist/events/index.cjs +11 -1
  79. package/dist/events/index.d.ts +48 -7
  80. package/dist/events/index.d.ts.map +1 -1
  81. package/dist/events/index.js +11 -1
  82. package/dist/{plugins → hooks}/builtins/content-policy.cjs +7 -6
  83. package/dist/hooks/builtins/content-policy.d.ts +24 -0
  84. package/dist/hooks/builtins/content-policy.d.ts.map +1 -0
  85. package/dist/{plugins → hooks}/builtins/content-policy.js +6 -5
  86. package/dist/{plugins → hooks}/builtins/response-sanitizer.cjs +3 -3
  87. package/dist/hooks/builtins/response-sanitizer.d.ts +22 -0
  88. package/dist/hooks/builtins/response-sanitizer.d.ts.map +1 -0
  89. package/dist/{plugins → hooks}/builtins/response-sanitizer.js +2 -2
  90. package/dist/hooks/error-codes.cjs +43 -0
  91. package/dist/hooks/error-codes.d.ts +34 -0
  92. package/dist/hooks/error-codes.d.ts.map +1 -0
  93. package/dist/hooks/error-codes.js +20 -0
  94. package/dist/{storage/cache/providers/memory.cjs → hooks/index.cjs} +15 -18
  95. package/dist/hooks/index.d.ts +14 -0
  96. package/dist/hooks/index.d.ts.map +1 -0
  97. package/dist/hooks/index.js +11 -0
  98. package/dist/hooks/manager.cjs +354 -0
  99. package/dist/hooks/manager.d.ts +103 -0
  100. package/dist/hooks/manager.d.ts.map +1 -0
  101. package/dist/hooks/manager.js +331 -0
  102. package/dist/{plugins → hooks}/types.d.ts +26 -45
  103. package/dist/hooks/types.d.ts.map +1 -0
  104. package/dist/index.browser.cjs +13 -12
  105. package/dist/index.browser.d.ts +5 -5
  106. package/dist/index.browser.d.ts.map +1 -1
  107. package/dist/index.browser.js +8 -7
  108. package/dist/index.cjs +5 -7
  109. package/dist/index.d.ts +2 -3
  110. package/dist/index.d.ts.map +1 -1
  111. package/dist/index.js +2 -3
  112. package/dist/llm/errors.cjs +1 -1
  113. package/dist/llm/executor/stream-processor.cjs +131 -11
  114. package/dist/llm/executor/stream-processor.d.ts +8 -5
  115. package/dist/llm/executor/stream-processor.d.ts.map +1 -1
  116. package/dist/llm/executor/stream-processor.js +131 -11
  117. package/dist/llm/executor/turn-executor.cjs +49 -54
  118. package/dist/llm/executor/turn-executor.d.ts +7 -8
  119. package/dist/llm/executor/turn-executor.d.ts.map +1 -1
  120. package/dist/llm/executor/turn-executor.js +49 -54
  121. package/dist/llm/formatters/vercel.cjs +2 -2
  122. package/dist/llm/formatters/vercel.d.ts +2 -2
  123. package/dist/llm/formatters/vercel.d.ts.map +1 -1
  124. package/dist/llm/providers/local/schemas.d.ts +12 -12
  125. package/dist/llm/registry/auto-update.d.ts +2 -2
  126. package/dist/llm/registry/auto-update.d.ts.map +1 -1
  127. package/dist/llm/registry/index.d.ts +3 -3
  128. package/dist/llm/registry/index.d.ts.map +1 -1
  129. package/dist/llm/resolver.cjs +2 -2
  130. package/dist/llm/resolver.d.ts +4 -4
  131. package/dist/llm/resolver.d.ts.map +1 -1
  132. package/dist/llm/schemas.cjs +67 -104
  133. package/dist/llm/schemas.d.ts +10 -149
  134. package/dist/llm/schemas.d.ts.map +1 -1
  135. package/dist/llm/schemas.js +64 -101
  136. package/dist/llm/services/factory.cjs +2 -3
  137. package/dist/llm/services/factory.d.ts +3 -4
  138. package/dist/llm/services/factory.d.ts.map +1 -1
  139. package/dist/llm/services/factory.js +2 -3
  140. package/dist/llm/services/vercel.cjs +8 -15
  141. package/dist/llm/services/vercel.d.ts +6 -7
  142. package/dist/llm/services/vercel.d.ts.map +1 -1
  143. package/dist/llm/services/vercel.js +8 -15
  144. package/dist/llm/validation.cjs +1 -1
  145. package/dist/llm/validation.d.ts +2 -2
  146. package/dist/llm/validation.d.ts.map +1 -1
  147. package/dist/logger/browser.cjs +4 -4
  148. package/dist/logger/browser.d.ts +4 -4
  149. package/dist/logger/browser.d.ts.map +1 -1
  150. package/dist/logger/browser.js +3 -3
  151. package/dist/{context/compaction/providers/noop-provider.cjs → logger/default-logger-factory.cjs} +16 -22
  152. package/dist/logger/default-logger-factory.d.ts +301 -0
  153. package/dist/logger/default-logger-factory.d.ts.map +1 -0
  154. package/dist/logger/default-logger-factory.js +18 -0
  155. package/dist/logger/factory.d.ts +2 -2
  156. package/dist/logger/factory.d.ts.map +1 -1
  157. package/dist/logger/index.cjs +7 -2
  158. package/dist/logger/index.d.ts +5 -3
  159. package/dist/logger/index.d.ts.map +1 -1
  160. package/dist/logger/index.js +8 -2
  161. package/dist/logger/logger.cjs +4 -4
  162. package/dist/logger/logger.d.ts +4 -4
  163. package/dist/logger/logger.d.ts.map +1 -1
  164. package/dist/logger/logger.js +3 -3
  165. package/dist/logger/v2/dexto-logger.cjs +35 -0
  166. package/dist/logger/v2/dexto-logger.d.ts +22 -3
  167. package/dist/logger/v2/dexto-logger.d.ts.map +1 -1
  168. package/dist/logger/v2/dexto-logger.js +35 -0
  169. package/dist/logger/v2/schemas.d.ts +6 -6
  170. package/dist/logger/v2/test-utils.cjs +2 -0
  171. package/dist/logger/v2/test-utils.d.ts +5 -5
  172. package/dist/logger/v2/test-utils.d.ts.map +1 -1
  173. package/dist/logger/v2/test-utils.js +2 -0
  174. package/dist/logger/v2/transport-factory.d.ts +3 -3
  175. package/dist/logger/v2/transport-factory.d.ts.map +1 -1
  176. package/dist/logger/v2/transports/console-transport.d.ts +2 -2
  177. package/dist/logger/v2/transports/console-transport.d.ts.map +1 -1
  178. package/dist/logger/v2/transports/file-transport.d.ts +2 -2
  179. package/dist/logger/v2/transports/file-transport.d.ts.map +1 -1
  180. package/dist/logger/v2/transports/silent-transport.d.ts +2 -2
  181. package/dist/logger/v2/transports/silent-transport.d.ts.map +1 -1
  182. package/dist/logger/v2/types.cjs +1 -1
  183. package/dist/logger/v2/types.d.ts +22 -9
  184. package/dist/logger/v2/types.d.ts.map +1 -1
  185. package/dist/logger/v2/types.js +1 -1
  186. package/dist/mcp/errors.cjs +2 -2
  187. package/dist/mcp/errors.d.ts.map +1 -1
  188. package/dist/mcp/manager.cjs +16 -11
  189. package/dist/mcp/manager.d.ts +16 -13
  190. package/dist/mcp/manager.d.ts.map +1 -1
  191. package/dist/mcp/manager.js +17 -12
  192. package/dist/mcp/mcp-client.cjs +25 -20
  193. package/dist/mcp/mcp-client.d.ts +5 -5
  194. package/dist/mcp/mcp-client.d.ts.map +1 -1
  195. package/dist/mcp/mcp-client.js +20 -15
  196. package/dist/mcp/resolver.cjs +1 -1
  197. package/dist/mcp/schemas.cjs +5 -5
  198. package/dist/mcp/schemas.d.ts +19 -19
  199. package/dist/mcp/schemas.js +2 -2
  200. package/dist/mcp/types.d.ts +7 -7
  201. package/dist/mcp/types.d.ts.map +1 -1
  202. package/dist/memory/manager.d.ts +2 -2
  203. package/dist/memory/manager.d.ts.map +1 -1
  204. package/dist/memory/schemas.d.ts +2 -2
  205. package/dist/prompts/errors.cjs +3 -3
  206. package/dist/prompts/errors.d.ts.map +1 -1
  207. package/dist/prompts/prompt-manager.d.ts +3 -3
  208. package/dist/prompts/prompt-manager.d.ts.map +1 -1
  209. package/dist/prompts/providers/config-prompt-provider.cjs +15 -29
  210. package/dist/prompts/providers/config-prompt-provider.d.ts +3 -3
  211. package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -1
  212. package/dist/prompts/providers/config-prompt-provider.js +15 -29
  213. package/dist/prompts/providers/custom-prompt-provider.d.ts +2 -2
  214. package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -1
  215. package/dist/prompts/providers/mcp-prompt-provider.d.ts +2 -2
  216. package/dist/prompts/providers/mcp-prompt-provider.d.ts.map +1 -1
  217. package/dist/prompts/schemas.d.ts +7 -7
  218. package/dist/resources/{internal-provider.cjs → agent-resources-provider.cjs} +16 -16
  219. package/dist/resources/{internal-provider.d.ts → agent-resources-provider.d.ts} +6 -6
  220. package/dist/resources/agent-resources-provider.d.ts.map +1 -0
  221. package/dist/resources/{internal-provider.js → agent-resources-provider.js} +13 -13
  222. package/dist/resources/errors.cjs +2 -2
  223. package/dist/resources/errors.d.ts.map +1 -1
  224. package/dist/resources/handlers/blob-handler.d.ts +2 -2
  225. package/dist/resources/handlers/blob-handler.d.ts.map +1 -1
  226. package/dist/resources/handlers/factory.d.ts +3 -3
  227. package/dist/resources/handlers/factory.d.ts.map +1 -1
  228. package/dist/resources/handlers/filesystem-handler.d.ts +2 -2
  229. package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
  230. package/dist/resources/index.cjs +7 -9
  231. package/dist/resources/index.d.ts +3 -3
  232. package/dist/resources/index.d.ts.map +1 -1
  233. package/dist/resources/index.js +5 -10
  234. package/dist/resources/manager.cjs +77 -74
  235. package/dist/resources/manager.d.ts +16 -7
  236. package/dist/resources/manager.d.ts.map +1 -1
  237. package/dist/resources/manager.js +77 -74
  238. package/dist/resources/schemas.cjs +6 -26
  239. package/dist/resources/schemas.d.ts +8 -100
  240. package/dist/resources/schemas.d.ts.map +1 -1
  241. package/dist/resources/schemas.js +4 -23
  242. package/dist/search/search-service.d.ts +2 -2
  243. package/dist/search/search-service.d.ts.map +1 -1
  244. package/dist/session/chat-session.cjs +15 -25
  245. package/dist/session/chat-session.d.ts +7 -5
  246. package/dist/session/chat-session.d.ts.map +1 -1
  247. package/dist/session/chat-session.js +16 -26
  248. package/dist/session/errors.cjs +2 -2
  249. package/dist/session/errors.d.ts.map +1 -1
  250. package/dist/session/history/database.cjs +1 -1
  251. package/dist/session/history/database.d.ts +4 -4
  252. package/dist/session/history/database.d.ts.map +1 -1
  253. package/dist/session/history/factory.d.ts +3 -3
  254. package/dist/session/history/factory.d.ts.map +1 -1
  255. package/dist/session/history/memory.d.ts +4 -4
  256. package/dist/session/history/memory.d.ts.map +1 -1
  257. package/dist/session/history/types.d.ts +2 -2
  258. package/dist/session/history/types.d.ts.map +1 -1
  259. package/dist/session/index.cjs +3 -0
  260. package/dist/session/index.d.ts +2 -0
  261. package/dist/session/index.d.ts.map +1 -1
  262. package/dist/session/index.js +2 -0
  263. package/dist/session/message-queue.d.ts +2 -2
  264. package/dist/session/message-queue.d.ts.map +1 -1
  265. package/dist/session/session-manager.cjs +67 -9
  266. package/dist/session/session-manager.d.ts +46 -7
  267. package/dist/session/session-manager.d.ts.map +1 -1
  268. package/dist/session/session-manager.js +67 -9
  269. package/dist/session/title-generator.cjs +2 -2
  270. package/dist/session/title-generator.d.ts +2 -2
  271. package/dist/session/title-generator.d.ts.map +1 -1
  272. package/dist/storage/blob/index.cjs +0 -40
  273. package/dist/storage/blob/index.d.ts +2 -44
  274. package/dist/storage/blob/index.d.ts.map +1 -1
  275. package/dist/storage/blob/index.js +0 -30
  276. package/dist/storage/cache/index.cjs +0 -37
  277. package/dist/storage/cache/index.d.ts +0 -42
  278. package/dist/storage/cache/index.d.ts.map +1 -1
  279. package/dist/storage/cache/index.js +0 -28
  280. package/dist/storage/database/index.cjs +0 -42
  281. package/dist/storage/database/index.d.ts +0 -43
  282. package/dist/storage/database/index.d.ts.map +1 -1
  283. package/dist/storage/database/index.js +0 -37
  284. package/dist/storage/error-codes.cjs +1 -6
  285. package/dist/storage/error-codes.d.ts +2 -7
  286. package/dist/storage/error-codes.d.ts.map +1 -1
  287. package/dist/storage/error-codes.js +1 -6
  288. package/dist/storage/errors.cjs +18 -82
  289. package/dist/storage/errors.d.ts +4 -24
  290. package/dist/storage/errors.d.ts.map +1 -1
  291. package/dist/storage/errors.js +16 -80
  292. package/dist/storage/index.cjs +8 -69
  293. package/dist/storage/index.d.ts +11 -66
  294. package/dist/storage/index.d.ts.map +1 -1
  295. package/dist/storage/index.js +6 -50
  296. package/dist/storage/storage-manager.cjs +9 -25
  297. package/dist/storage/storage-manager.d.ts +11 -15
  298. package/dist/storage/storage-manager.d.ts.map +1 -1
  299. package/dist/storage/storage-manager.js +8 -23
  300. package/dist/storage/types.d.ts +0 -1
  301. package/dist/storage/types.d.ts.map +1 -1
  302. package/dist/systemPrompt/contributors.d.ts +4 -4
  303. package/dist/systemPrompt/contributors.d.ts.map +1 -1
  304. package/dist/systemPrompt/errors.cjs +2 -2
  305. package/dist/systemPrompt/errors.d.ts.map +1 -1
  306. package/dist/systemPrompt/in-built-prompts.cjs +5 -5
  307. package/dist/systemPrompt/in-built-prompts.d.ts +1 -1
  308. package/dist/systemPrompt/in-built-prompts.d.ts.map +1 -1
  309. package/dist/systemPrompt/in-built-prompts.js +5 -5
  310. package/dist/systemPrompt/manager.cjs +1 -5
  311. package/dist/systemPrompt/manager.d.ts +2 -3
  312. package/dist/systemPrompt/manager.d.ts.map +1 -1
  313. package/dist/systemPrompt/manager.js +1 -5
  314. package/dist/systemPrompt/schemas.d.ts +5 -5
  315. package/dist/systemPrompt/types.d.ts +11 -0
  316. package/dist/systemPrompt/types.d.ts.map +1 -1
  317. package/dist/telemetry/index.cjs +3 -0
  318. package/dist/telemetry/index.d.ts +2 -0
  319. package/dist/telemetry/index.d.ts.map +1 -1
  320. package/dist/telemetry/index.js +2 -0
  321. package/dist/telemetry/utils.d.ts +4 -4
  322. package/dist/telemetry/utils.d.ts.map +1 -1
  323. package/dist/test-utils/in-memory-storage.cjs +288 -0
  324. package/dist/test-utils/in-memory-storage.js +252 -0
  325. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts +3 -3
  326. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts.map +1 -1
  327. package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.ts +2 -2
  328. package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.ts.map +1 -1
  329. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts +4 -4
  330. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts.map +1 -1
  331. package/dist/tools/confirmation/allowed-tools-provider/types.d.ts +2 -2
  332. package/dist/tools/confirmation/allowed-tools-provider/types.d.ts.map +1 -1
  333. package/dist/tools/{internal-tools/constants.cjs → define-tool.cjs} +8 -13
  334. package/dist/tools/define-tool.d.ts +11 -0
  335. package/dist/tools/define-tool.d.ts.map +1 -0
  336. package/dist/tools/define-tool.js +7 -0
  337. package/dist/tools/display-types.d.ts +10 -0
  338. package/dist/tools/display-types.d.ts.map +1 -1
  339. package/dist/tools/error-codes.cjs +2 -2
  340. package/dist/tools/error-codes.d.ts +2 -2
  341. package/dist/tools/error-codes.d.ts.map +1 -1
  342. package/dist/tools/error-codes.js +2 -2
  343. package/dist/tools/errors.cjs +11 -23
  344. package/dist/tools/errors.d.ts +4 -10
  345. package/dist/tools/errors.d.ts.map +1 -1
  346. package/dist/tools/errors.js +9 -21
  347. package/dist/tools/index.cjs +6 -9
  348. package/dist/tools/index.d.ts +3 -4
  349. package/dist/tools/index.d.ts.map +1 -1
  350. package/dist/tools/index.js +3 -7
  351. package/dist/{storage/blob/providers/index.cjs → tools/pattern-utils.cjs} +11 -9
  352. package/dist/tools/pattern-utils.d.ts +20 -0
  353. package/dist/tools/pattern-utils.d.ts.map +1 -0
  354. package/dist/tools/pattern-utils.js +10 -0
  355. package/dist/{storage/cache/factory.cjs → tools/presentation.cjs} +26 -15
  356. package/dist/tools/presentation.d.ts +11 -0
  357. package/dist/tools/presentation.d.ts.map +1 -0
  358. package/dist/tools/presentation.js +24 -0
  359. package/dist/tools/schemas.cjs +14 -40
  360. package/dist/tools/schemas.d.ts +6 -50
  361. package/dist/tools/schemas.d.ts.map +1 -1
  362. package/dist/tools/schemas.js +11 -32
  363. package/dist/tools/tool-call-metadata.cjs +3 -3
  364. package/dist/tools/tool-call-metadata.d.ts +1 -1
  365. package/dist/tools/tool-call-metadata.d.ts.map +1 -1
  366. package/dist/tools/tool-call-metadata.js +3 -3
  367. package/dist/tools/tool-manager.cjs +608 -392
  368. package/dist/tools/tool-manager.d.ts +79 -98
  369. package/dist/tools/tool-manager.d.ts.map +1 -1
  370. package/dist/tools/tool-manager.js +608 -396
  371. package/dist/tools/types.d.ts +223 -45
  372. package/dist/tools/types.d.ts.map +1 -1
  373. package/dist/utils/error-conversion.d.ts +2 -2
  374. package/dist/utils/error-conversion.d.ts.map +1 -1
  375. package/dist/utils/path.cjs +10 -1
  376. package/dist/utils/path.d.ts +7 -4
  377. package/dist/utils/path.d.ts.map +1 -1
  378. package/dist/utils/path.js +10 -1
  379. package/dist/utils/result.cjs +1 -1
  380. package/dist/utils/result.d.ts.map +1 -1
  381. package/dist/utils/schema.cjs +9 -5
  382. package/dist/utils/schema.d.ts +4 -2
  383. package/dist/utils/schema.d.ts.map +1 -1
  384. package/dist/utils/schema.js +9 -5
  385. package/dist/utils/service-initializer.cjs +51 -56
  386. package/dist/utils/service-initializer.d.ts +17 -14
  387. package/dist/utils/service-initializer.d.ts.map +1 -1
  388. package/dist/utils/service-initializer.js +51 -56
  389. package/dist/{storage/cache/providers/index.cjs → workspace/error-codes.cjs} +8 -9
  390. package/dist/workspace/error-codes.d.ts +5 -0
  391. package/dist/workspace/error-codes.d.ts.map +1 -0
  392. package/dist/workspace/error-codes.js +7 -0
  393. package/dist/{storage/blob/factory.cjs → workspace/errors.cjs} +20 -14
  394. package/dist/workspace/errors.d.ts +5 -0
  395. package/dist/workspace/errors.d.ts.map +1 -0
  396. package/dist/workspace/errors.js +21 -0
  397. package/dist/{image → workspace}/index.cjs +12 -10
  398. package/dist/workspace/index.d.ts +5 -0
  399. package/dist/workspace/index.d.ts.map +1 -0
  400. package/dist/workspace/index.js +9 -0
  401. package/dist/workspace/manager.cjs +113 -0
  402. package/dist/workspace/manager.d.ts +18 -0
  403. package/dist/workspace/manager.d.ts.map +1 -0
  404. package/dist/workspace/manager.js +90 -0
  405. package/dist/workspace/types.d.ts +14 -0
  406. package/dist/workspace/types.d.ts.map +1 -0
  407. package/package.json +2 -2
  408. package/dist/context/compaction/factory.cjs +0 -57
  409. package/dist/context/compaction/factory.d.ts +0 -17
  410. package/dist/context/compaction/factory.d.ts.map +0 -1
  411. package/dist/context/compaction/factory.js +0 -34
  412. package/dist/context/compaction/provider.d.ts +0 -48
  413. package/dist/context/compaction/provider.d.ts.map +0 -1
  414. package/dist/context/compaction/providers/noop-provider.d.ts +0 -24
  415. package/dist/context/compaction/providers/noop-provider.d.ts.map +0 -1
  416. package/dist/context/compaction/providers/noop-provider.js +0 -24
  417. package/dist/context/compaction/providers/reactive-overflow-provider.cjs +0 -76
  418. package/dist/context/compaction/providers/reactive-overflow-provider.d.ts +0 -51
  419. package/dist/context/compaction/providers/reactive-overflow-provider.d.ts.map +0 -1
  420. package/dist/context/compaction/providers/reactive-overflow-provider.js +0 -52
  421. package/dist/context/compaction/registry.cjs +0 -39
  422. package/dist/context/compaction/registry.d.ts +0 -19
  423. package/dist/context/compaction/registry.d.ts.map +0 -1
  424. package/dist/context/compaction/registry.js +0 -16
  425. package/dist/context/compaction/schemas.cjs +0 -58
  426. package/dist/context/compaction/schemas.d.ts +0 -69
  427. package/dist/context/compaction/schemas.d.ts.map +0 -1
  428. package/dist/context/compaction/schemas.js +0 -34
  429. package/dist/context/compaction/strategies/reactive-overflow.d.ts.map +0 -1
  430. package/dist/image/define-image.cjs +0 -146
  431. package/dist/image/define-image.d.ts +0 -71
  432. package/dist/image/define-image.d.ts.map +0 -1
  433. package/dist/image/define-image.js +0 -121
  434. package/dist/image/index.d.ts +0 -53
  435. package/dist/image/index.d.ts.map +0 -1
  436. package/dist/image/index.js +0 -7
  437. package/dist/image/types.d.ts +0 -246
  438. package/dist/image/types.d.ts.map +0 -1
  439. package/dist/llm/services/test-utils.integration.cjs +0 -237
  440. package/dist/llm/services/test-utils.integration.d.ts +0 -48
  441. package/dist/llm/services/test-utils.integration.d.ts.map +0 -1
  442. package/dist/llm/services/test-utils.integration.js +0 -214
  443. package/dist/plugins/builtins/content-policy.d.ts +0 -26
  444. package/dist/plugins/builtins/content-policy.d.ts.map +0 -1
  445. package/dist/plugins/builtins/response-sanitizer.d.ts +0 -25
  446. package/dist/plugins/builtins/response-sanitizer.d.ts.map +0 -1
  447. package/dist/plugins/error-codes.cjs +0 -43
  448. package/dist/plugins/error-codes.d.ts +0 -34
  449. package/dist/plugins/error-codes.d.ts.map +0 -1
  450. package/dist/plugins/error-codes.js +0 -20
  451. package/dist/plugins/index.cjs +0 -61
  452. package/dist/plugins/index.d.ts +0 -21
  453. package/dist/plugins/index.d.ts.map +0 -1
  454. package/dist/plugins/index.js +0 -30
  455. package/dist/plugins/loader.cjs +0 -171
  456. package/dist/plugins/loader.d.ts +0 -30
  457. package/dist/plugins/loader.d.ts.map +0 -1
  458. package/dist/plugins/loader.js +0 -145
  459. package/dist/plugins/manager.cjs +0 -473
  460. package/dist/plugins/manager.d.ts +0 -106
  461. package/dist/plugins/manager.d.ts.map +0 -1
  462. package/dist/plugins/manager.js +0 -450
  463. package/dist/plugins/registrations/builtins.cjs +0 -51
  464. package/dist/plugins/registrations/builtins.d.ts +0 -17
  465. package/dist/plugins/registrations/builtins.d.ts.map +0 -1
  466. package/dist/plugins/registrations/builtins.js +0 -28
  467. package/dist/plugins/registry.cjs +0 -63
  468. package/dist/plugins/registry.d.ts +0 -101
  469. package/dist/plugins/registry.d.ts.map +0 -1
  470. package/dist/plugins/registry.js +0 -39
  471. package/dist/plugins/schemas.cjs +0 -73
  472. package/dist/plugins/schemas.d.ts +0 -195
  473. package/dist/plugins/schemas.d.ts.map +0 -1
  474. package/dist/plugins/schemas.js +0 -47
  475. package/dist/plugins/types.d.ts.map +0 -1
  476. package/dist/providers/base-registry.cjs +0 -147
  477. package/dist/providers/base-registry.d.ts +0 -147
  478. package/dist/providers/base-registry.d.ts.map +0 -1
  479. package/dist/providers/base-registry.js +0 -123
  480. package/dist/providers/discovery.cjs +0 -109
  481. package/dist/providers/discovery.d.ts +0 -96
  482. package/dist/providers/discovery.d.ts.map +0 -1
  483. package/dist/providers/discovery.js +0 -84
  484. package/dist/providers/index.cjs +0 -24
  485. package/dist/providers/index.d.ts +0 -32
  486. package/dist/providers/index.d.ts.map +0 -1
  487. package/dist/providers/index.js +0 -2
  488. package/dist/resources/internal-provider.d.ts.map +0 -1
  489. package/dist/storage/blob/factory.d.ts +0 -37
  490. package/dist/storage/blob/factory.d.ts.map +0 -1
  491. package/dist/storage/blob/factory.js +0 -15
  492. package/dist/storage/blob/local-blob-store.cjs +0 -496
  493. package/dist/storage/blob/local-blob-store.d.ts +0 -58
  494. package/dist/storage/blob/local-blob-store.d.ts.map +0 -1
  495. package/dist/storage/blob/local-blob-store.js +0 -463
  496. package/dist/storage/blob/memory-blob-store.cjs +0 -326
  497. package/dist/storage/blob/memory-blob-store.d.ts +0 -66
  498. package/dist/storage/blob/memory-blob-store.d.ts.map +0 -1
  499. package/dist/storage/blob/memory-blob-store.js +0 -303
  500. package/dist/storage/blob/provider.d.ts +0 -50
  501. package/dist/storage/blob/provider.d.ts.map +0 -1
  502. package/dist/storage/blob/providers/index.d.ts +0 -8
  503. package/dist/storage/blob/providers/index.d.ts.map +0 -1
  504. package/dist/storage/blob/providers/index.js +0 -7
  505. package/dist/storage/blob/providers/local.cjs +0 -39
  506. package/dist/storage/blob/providers/local.d.ts +0 -17
  507. package/dist/storage/blob/providers/local.d.ts.map +0 -1
  508. package/dist/storage/blob/providers/local.js +0 -16
  509. package/dist/storage/blob/providers/memory.cjs +0 -39
  510. package/dist/storage/blob/providers/memory.d.ts +0 -17
  511. package/dist/storage/blob/providers/memory.d.ts.map +0 -1
  512. package/dist/storage/blob/providers/memory.js +0 -16
  513. package/dist/storage/blob/registry.cjs +0 -50
  514. package/dist/storage/blob/registry.d.ts +0 -42
  515. package/dist/storage/blob/registry.d.ts.map +0 -1
  516. package/dist/storage/blob/registry.js +0 -26
  517. package/dist/storage/blob/schemas.cjs +0 -52
  518. package/dist/storage/blob/schemas.d.ts +0 -85
  519. package/dist/storage/blob/schemas.d.ts.map +0 -1
  520. package/dist/storage/blob/schemas.js +0 -26
  521. package/dist/storage/cache/factory.d.ts +0 -37
  522. package/dist/storage/cache/factory.d.ts.map +0 -1
  523. package/dist/storage/cache/factory.js +0 -15
  524. package/dist/storage/cache/memory-cache-store.cjs +0 -107
  525. package/dist/storage/cache/memory-cache-store.d.ts +0 -26
  526. package/dist/storage/cache/memory-cache-store.d.ts.map +0 -1
  527. package/dist/storage/cache/memory-cache-store.js +0 -84
  528. package/dist/storage/cache/provider.cjs +0 -16
  529. package/dist/storage/cache/provider.d.ts +0 -56
  530. package/dist/storage/cache/provider.d.ts.map +0 -1
  531. package/dist/storage/cache/provider.js +0 -0
  532. package/dist/storage/cache/providers/index.d.ts +0 -8
  533. package/dist/storage/cache/providers/index.d.ts.map +0 -1
  534. package/dist/storage/cache/providers/index.js +0 -7
  535. package/dist/storage/cache/providers/memory.d.ts +0 -17
  536. package/dist/storage/cache/providers/memory.d.ts.map +0 -1
  537. package/dist/storage/cache/providers/memory.js +0 -17
  538. package/dist/storage/cache/providers/redis.cjs +0 -66
  539. package/dist/storage/cache/providers/redis.d.ts +0 -20
  540. package/dist/storage/cache/providers/redis.d.ts.map +0 -1
  541. package/dist/storage/cache/providers/redis.js +0 -33
  542. package/dist/storage/cache/redis-store.cjs +0 -173
  543. package/dist/storage/cache/redis-store.d.ts +0 -32
  544. package/dist/storage/cache/redis-store.d.ts.map +0 -1
  545. package/dist/storage/cache/redis-store.js +0 -150
  546. package/dist/storage/cache/registry.cjs +0 -50
  547. package/dist/storage/cache/registry.d.ts +0 -42
  548. package/dist/storage/cache/registry.d.ts.map +0 -1
  549. package/dist/storage/cache/registry.js +0 -26
  550. package/dist/storage/cache/schemas.cjs +0 -81
  551. package/dist/storage/cache/schemas.d.ts +0 -150
  552. package/dist/storage/cache/schemas.d.ts.map +0 -1
  553. package/dist/storage/cache/schemas.js +0 -55
  554. package/dist/storage/database/factory.cjs +0 -38
  555. package/dist/storage/database/factory.d.ts +0 -39
  556. package/dist/storage/database/factory.d.ts.map +0 -1
  557. package/dist/storage/database/factory.js +0 -15
  558. package/dist/storage/database/memory-database-store.cjs +0 -122
  559. package/dist/storage/database/memory-database-store.d.ts +0 -29
  560. package/dist/storage/database/memory-database-store.d.ts.map +0 -1
  561. package/dist/storage/database/memory-database-store.js +0 -99
  562. package/dist/storage/database/postgres-store.cjs +0 -342
  563. package/dist/storage/database/postgres-store.d.ts +0 -55
  564. package/dist/storage/database/postgres-store.d.ts.map +0 -1
  565. package/dist/storage/database/postgres-store.js +0 -319
  566. package/dist/storage/database/provider.cjs +0 -16
  567. package/dist/storage/database/provider.d.ts +0 -56
  568. package/dist/storage/database/provider.d.ts.map +0 -1
  569. package/dist/storage/database/provider.js +0 -0
  570. package/dist/storage/database/providers/index.cjs +0 -34
  571. package/dist/storage/database/providers/index.d.ts +0 -9
  572. package/dist/storage/database/providers/index.d.ts.map +0 -1
  573. package/dist/storage/database/providers/index.js +0 -9
  574. package/dist/storage/database/providers/memory.cjs +0 -40
  575. package/dist/storage/database/providers/memory.d.ts +0 -16
  576. package/dist/storage/database/providers/memory.d.ts.map +0 -1
  577. package/dist/storage/database/providers/memory.js +0 -17
  578. package/dist/storage/database/providers/postgres.cjs +0 -62
  579. package/dist/storage/database/providers/postgres.d.ts +0 -19
  580. package/dist/storage/database/providers/postgres.d.ts.map +0 -1
  581. package/dist/storage/database/providers/postgres.js +0 -29
  582. package/dist/storage/database/providers/sqlite.cjs +0 -66
  583. package/dist/storage/database/providers/sqlite.d.ts +0 -20
  584. package/dist/storage/database/providers/sqlite.d.ts.map +0 -1
  585. package/dist/storage/database/providers/sqlite.js +0 -33
  586. package/dist/storage/database/registry.cjs +0 -50
  587. package/dist/storage/database/registry.d.ts +0 -42
  588. package/dist/storage/database/registry.d.ts.map +0 -1
  589. package/dist/storage/database/registry.js +0 -26
  590. package/dist/storage/database/schemas.cjs +0 -97
  591. package/dist/storage/database/schemas.d.ts +0 -226
  592. package/dist/storage/database/schemas.d.ts.map +0 -1
  593. package/dist/storage/database/schemas.js +0 -70
  594. package/dist/storage/database/sqlite-store.cjs +0 -270
  595. package/dist/storage/database/sqlite-store.d.ts +0 -33
  596. package/dist/storage/database/sqlite-store.d.ts.map +0 -1
  597. package/dist/storage/database/sqlite-store.js +0 -237
  598. package/dist/storage/schemas.cjs +0 -57
  599. package/dist/storage/schemas.d.ts +0 -347
  600. package/dist/storage/schemas.d.ts.map +0 -1
  601. package/dist/storage/schemas.js +0 -37
  602. package/dist/tools/bash-pattern-utils.cjs +0 -91
  603. package/dist/tools/bash-pattern-utils.d.ts +0 -58
  604. package/dist/tools/bash-pattern-utils.d.ts.map +0 -1
  605. package/dist/tools/bash-pattern-utils.js +0 -64
  606. package/dist/tools/custom-tool-registry.cjs +0 -64
  607. package/dist/tools/custom-tool-registry.d.ts +0 -126
  608. package/dist/tools/custom-tool-registry.d.ts.map +0 -1
  609. package/dist/tools/custom-tool-registry.js +0 -40
  610. package/dist/tools/custom-tool-schema-registry.cjs +0 -164
  611. package/dist/tools/custom-tool-schema-registry.d.ts +0 -86
  612. package/dist/tools/custom-tool-schema-registry.d.ts.map +0 -1
  613. package/dist/tools/custom-tool-schema-registry.js +0 -140
  614. package/dist/tools/internal-tools/constants.d.ts +0 -12
  615. package/dist/tools/internal-tools/constants.d.ts.map +0 -1
  616. package/dist/tools/internal-tools/constants.js +0 -12
  617. package/dist/tools/internal-tools/implementations/ask-user-tool.cjs +0 -57
  618. package/dist/tools/internal-tools/implementations/ask-user-tool.d.ts +0 -18
  619. package/dist/tools/internal-tools/implementations/ask-user-tool.d.ts.map +0 -1
  620. package/dist/tools/internal-tools/implementations/ask-user-tool.js +0 -34
  621. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.cjs +0 -192
  622. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts +0 -33
  623. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts.map +0 -1
  624. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.js +0 -169
  625. package/dist/tools/internal-tools/implementations/get-resource-tool.cjs +0 -113
  626. package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts +0 -30
  627. package/dist/tools/internal-tools/implementations/get-resource-tool.d.ts.map +0 -1
  628. package/dist/tools/internal-tools/implementations/get-resource-tool.js +0 -90
  629. package/dist/tools/internal-tools/implementations/invoke-skill-tool.cjs +0 -140
  630. package/dist/tools/internal-tools/implementations/invoke-skill-tool.d.ts +0 -24
  631. package/dist/tools/internal-tools/implementations/invoke-skill-tool.d.ts.map +0 -1
  632. package/dist/tools/internal-tools/implementations/invoke-skill-tool.js +0 -117
  633. package/dist/tools/internal-tools/implementations/list-resources-tool.cjs +0 -91
  634. package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts +0 -24
  635. package/dist/tools/internal-tools/implementations/list-resources-tool.d.ts.map +0 -1
  636. package/dist/tools/internal-tools/implementations/list-resources-tool.js +0 -68
  637. package/dist/tools/internal-tools/implementations/search-history-tool.cjs +0 -61
  638. package/dist/tools/internal-tools/implementations/search-history-tool.d.ts +0 -7
  639. package/dist/tools/internal-tools/implementations/search-history-tool.d.ts.map +0 -1
  640. package/dist/tools/internal-tools/implementations/search-history-tool.js +0 -38
  641. package/dist/tools/internal-tools/index.cjs +0 -26
  642. package/dist/tools/internal-tools/index.d.ts +0 -4
  643. package/dist/tools/internal-tools/index.d.ts.map +0 -1
  644. package/dist/tools/internal-tools/index.js +0 -3
  645. package/dist/tools/internal-tools/provider.cjs +0 -324
  646. package/dist/tools/internal-tools/provider.d.ts +0 -116
  647. package/dist/tools/internal-tools/provider.d.ts.map +0 -1
  648. package/dist/tools/internal-tools/provider.js +0 -301
  649. package/dist/tools/internal-tools/registry.cjs +0 -71
  650. package/dist/tools/internal-tools/registry.d.ts +0 -91
  651. package/dist/tools/internal-tools/registry.d.ts.map +0 -1
  652. package/dist/tools/internal-tools/registry.js +0 -47
  653. /package/dist/{context/compaction/provider.js → agent/agent-options.js} +0 -0
  654. /package/dist/{image/types.js → agent/runtime-config.js} +0 -0
  655. /package/dist/{image → hooks}/types.cjs +0 -0
  656. /package/dist/{plugins → hooks}/types.js +0 -0
  657. /package/dist/{plugins → workspace}/types.cjs +0 -0
  658. /package/dist/{storage/blob/provider.js → workspace/types.js} +0 -0
@@ -1,66 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var sqlite_exports = {};
30
- __export(sqlite_exports, {
31
- sqliteDatabaseProvider: () => sqliteDatabaseProvider
32
- });
33
- module.exports = __toCommonJS(sqlite_exports);
34
- var import_schemas = require("../schemas.js");
35
- var import_errors = require("../../errors.js");
36
- const sqliteDatabaseProvider = {
37
- type: "sqlite",
38
- configSchema: import_schemas.SqliteDatabaseSchema,
39
- create: async (config, logger) => {
40
- try {
41
- const module2 = await import("../sqlite-store.js");
42
- logger.info(`Creating SQLite database store: ${config.path}`);
43
- return new module2.SQLiteStore(config, logger);
44
- } catch (error) {
45
- const err = error;
46
- if (err.code === "ERR_MODULE_NOT_FOUND" && typeof err.message === "string" && err.message.includes("better-sqlite3")) {
47
- throw import_errors.StorageError.dependencyNotInstalled(
48
- "SQLite",
49
- "better-sqlite3",
50
- "npm install better-sqlite3"
51
- );
52
- }
53
- throw error;
54
- }
55
- },
56
- metadata: {
57
- displayName: "SQLite",
58
- description: "Local SQLite database for persistent storage",
59
- requiresNetwork: false,
60
- supportsListOperations: true
61
- }
62
- };
63
- // Annotate the CommonJS export names for ESM import in node:
64
- 0 && (module.exports = {
65
- sqliteDatabaseProvider
66
- });
@@ -1,20 +0,0 @@
1
- import type { DatabaseProvider } from '../provider.js';
2
- import type { SqliteDatabaseConfig } from '../schemas.js';
3
- /**
4
- * Provider for SQLite database storage.
5
- *
6
- * This provider stores data in a local SQLite database file using better-sqlite3.
7
- * It's ideal for single-machine deployments and development scenarios where
8
- * persistence is required without the overhead of a database server.
9
- *
10
- * Features:
11
- * - Uses better-sqlite3 for synchronous, fast operations
12
- * - WAL mode enabled for better concurrency
13
- * - No external server required
14
- * - Persistent storage survives restarts
15
- *
16
- * Note: better-sqlite3 is an optional dependency. Install it with:
17
- * npm install better-sqlite3
18
- */
19
- export declare const sqliteDatabaseProvider: DatabaseProvider<'sqlite', SqliteDatabaseConfig>;
20
- //# sourceMappingURL=sqlite.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sqlite.d.ts","sourceRoot":"","sources":["../../../../src/storage/database/providers/sqlite.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACvD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAC;AAI1D;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,sBAAsB,EAAE,gBAAgB,CAAC,QAAQ,EAAE,oBAAoB,CA8BnF,CAAC"}
@@ -1,33 +0,0 @@
1
- import "../../../chunk-PTJYTZNU.js";
2
- import { SqliteDatabaseSchema } from "../schemas.js";
3
- import { StorageError } from "../../errors.js";
4
- const sqliteDatabaseProvider = {
5
- type: "sqlite",
6
- configSchema: SqliteDatabaseSchema,
7
- create: async (config, logger) => {
8
- try {
9
- const module = await import("../sqlite-store.js");
10
- logger.info(`Creating SQLite database store: ${config.path}`);
11
- return new module.SQLiteStore(config, logger);
12
- } catch (error) {
13
- const err = error;
14
- if (err.code === "ERR_MODULE_NOT_FOUND" && typeof err.message === "string" && err.message.includes("better-sqlite3")) {
15
- throw StorageError.dependencyNotInstalled(
16
- "SQLite",
17
- "better-sqlite3",
18
- "npm install better-sqlite3"
19
- );
20
- }
21
- throw error;
22
- }
23
- },
24
- metadata: {
25
- displayName: "SQLite",
26
- description: "Local SQLite database for persistent storage",
27
- requiresNetwork: false,
28
- supportsListOperations: true
29
- }
30
- };
31
- export {
32
- sqliteDatabaseProvider
33
- };
@@ -1,50 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var registry_exports = {};
20
- __export(registry_exports, {
21
- DatabaseRegistry: () => DatabaseRegistry,
22
- databaseRegistry: () => databaseRegistry
23
- });
24
- module.exports = __toCommonJS(registry_exports);
25
- var import_errors = require("../errors.js");
26
- var import_base_registry = require("../../providers/base-registry.js");
27
- const databaseErrorFactory = {
28
- alreadyRegistered: (type) => import_errors.StorageError.databaseProviderAlreadyRegistered(type),
29
- notFound: (type, availableTypes) => import_errors.StorageError.unknownDatabaseProvider(type, availableTypes)
30
- };
31
- class DatabaseRegistry extends import_base_registry.BaseRegistry {
32
- constructor() {
33
- super(databaseErrorFactory);
34
- }
35
- /**
36
- * Get all registered providers.
37
- * Alias for getAll() for backward compatibility.
38
- *
39
- * @returns Array of providers
40
- */
41
- getProviders() {
42
- return this.getAll();
43
- }
44
- }
45
- const databaseRegistry = new DatabaseRegistry();
46
- // Annotate the CommonJS export names for ESM import in node:
47
- 0 && (module.exports = {
48
- DatabaseRegistry,
49
- databaseRegistry
50
- });
@@ -1,42 +0,0 @@
1
- import type { DatabaseProvider } from './provider.js';
2
- import { BaseRegistry } from '../../providers/base-registry.js';
3
- /**
4
- * Registry for database providers.
5
- *
6
- * This registry manages available database implementations and provides
7
- * runtime validation for configurations. Providers can be registered from
8
- * both core (built-in) and application layers (custom).
9
- *
10
- * The registry follows a global singleton pattern to allow registration
11
- * before configuration loading, while maintaining type safety through
12
- * provider interfaces.
13
- *
14
- * Extends BaseRegistry for common registry functionality.
15
- */
16
- export declare class DatabaseRegistry extends BaseRegistry<DatabaseProvider<any, any>> {
17
- constructor();
18
- /**
19
- * Get all registered providers.
20
- * Alias for getAll() for backward compatibility.
21
- *
22
- * @returns Array of providers
23
- */
24
- getProviders(): DatabaseProvider<any, any>[];
25
- }
26
- /**
27
- * Global singleton registry for database providers.
28
- *
29
- * This registry is used by the createDatabase factory and can be extended
30
- * with custom providers before configuration loading.
31
- *
32
- * Example usage in CLI/server layer:
33
- * ```typescript
34
- * import { databaseRegistry } from '@dexto/core';
35
- * import { mongoProvider } from './storage/mongo-provider.js';
36
- *
37
- * // Register custom provider before loading config
38
- * databaseRegistry.register(mongoProvider);
39
- * ```
40
- */
41
- export declare const databaseRegistry: DatabaseRegistry;
42
- //# sourceMappingURL=registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/storage/database/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD,OAAO,EAAE,YAAY,EAA6B,MAAM,kCAAkC,CAAC;AAY3F;;;;;;;;;;;;GAYG;AACH,qBAAa,gBAAiB,SAAQ,YAAY,CAAC,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;;IAK1E;;;;;OAKG;IACH,YAAY,IAAI,gBAAgB,CAAC,GAAG,EAAE,GAAG,CAAC,EAAE;CAG/C;AAED;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,gBAAgB,kBAAyB,CAAC"}
@@ -1,26 +0,0 @@
1
- import "../../chunk-PTJYTZNU.js";
2
- import { StorageError } from "../errors.js";
3
- import { BaseRegistry } from "../../providers/base-registry.js";
4
- const databaseErrorFactory = {
5
- alreadyRegistered: (type) => StorageError.databaseProviderAlreadyRegistered(type),
6
- notFound: (type, availableTypes) => StorageError.unknownDatabaseProvider(type, availableTypes)
7
- };
8
- class DatabaseRegistry extends BaseRegistry {
9
- constructor() {
10
- super(databaseErrorFactory);
11
- }
12
- /**
13
- * Get all registered providers.
14
- * Alias for getAll() for backward compatibility.
15
- *
16
- * @returns Array of providers
17
- */
18
- getProviders() {
19
- return this.getAll();
20
- }
21
- }
22
- const databaseRegistry = new DatabaseRegistry();
23
- export {
24
- DatabaseRegistry,
25
- databaseRegistry
26
- };
@@ -1,97 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var schemas_exports = {};
20
- __export(schemas_exports, {
21
- DATABASE_TYPES: () => DATABASE_TYPES,
22
- DatabaseConfigSchema: () => DatabaseConfigSchema,
23
- InMemoryDatabaseSchema: () => InMemoryDatabaseSchema,
24
- PostgresDatabaseSchema: () => PostgresDatabaseSchema,
25
- SqliteDatabaseSchema: () => SqliteDatabaseSchema
26
- });
27
- module.exports = __toCommonJS(schemas_exports);
28
- var import_zod = require("zod");
29
- var import_result = require("../../utils/result.cjs");
30
- var import_error_codes = require("../error-codes.js");
31
- var import_types = require("../../errors/types.cjs");
32
- const DATABASE_TYPES = ["in-memory", "sqlite", "postgres"];
33
- const BaseDatabaseSchema = import_zod.z.object({
34
- maxConnections: import_zod.z.number().int().positive().optional().describe("Maximum connections"),
35
- idleTimeoutMillis: import_zod.z.number().int().positive().optional().describe("Idle timeout in milliseconds"),
36
- connectionTimeoutMillis: import_zod.z.number().int().positive().optional().describe("Connection timeout in milliseconds"),
37
- options: import_zod.z.record(import_zod.z.any()).optional().describe("Backend-specific options")
38
- });
39
- const InMemoryDatabaseSchema = BaseDatabaseSchema.extend({
40
- type: import_zod.z.literal("in-memory")
41
- // In-memory database doesn't need connection options, but inherits pool options for consistency
42
- }).strict();
43
- const SqliteDatabaseSchema = BaseDatabaseSchema.extend({
44
- type: import_zod.z.literal("sqlite"),
45
- path: import_zod.z.string().describe(
46
- "SQLite database file path (required for SQLite - CLI enrichment provides per-agent path)"
47
- )
48
- }).strict();
49
- const PostgresDatabaseSchema = BaseDatabaseSchema.extend({
50
- type: import_zod.z.literal("postgres"),
51
- url: (0, import_result.EnvExpandedString)().optional().describe("PostgreSQL connection URL (postgresql://...)"),
52
- connectionString: (0, import_result.EnvExpandedString)().optional().describe("PostgreSQL connection string"),
53
- host: import_zod.z.string().optional().describe("PostgreSQL host"),
54
- port: import_zod.z.number().int().positive().optional().describe("PostgreSQL port"),
55
- database: import_zod.z.string().optional().describe("PostgreSQL database name"),
56
- password: import_zod.z.string().optional().describe("PostgreSQL password"),
57
- // TODO: keyPrefix is reserved for future use - allows namespacing keys when multiple
58
- // agents or environments share the same database (e.g., "dev:agent1:" vs "prod:agent2:")
59
- keyPrefix: import_zod.z.string().optional().describe('Optional key prefix for namespacing (e.g., "dev:myagent:")')
60
- }).strict();
61
- const DatabaseConfigSchema = import_zod.z.discriminatedUnion(
62
- "type",
63
- [InMemoryDatabaseSchema, SqliteDatabaseSchema, PostgresDatabaseSchema],
64
- {
65
- errorMap: (issue, ctx) => {
66
- if (issue.code === import_zod.z.ZodIssueCode.invalid_union_discriminator) {
67
- return {
68
- message: `Invalid database type. Expected 'in-memory', 'sqlite', or 'postgres'.`
69
- };
70
- }
71
- return { message: ctx.defaultError };
72
- }
73
- }
74
- ).describe("Database configuration").superRefine((data, ctx) => {
75
- if (data.type === "postgres") {
76
- if (!data.url && !data.connectionString && !data.host) {
77
- ctx.addIssue({
78
- code: import_zod.z.ZodIssueCode.custom,
79
- message: "PostgreSQL database requires one of 'url', 'connectionString', or 'host' to be specified",
80
- path: ["url"],
81
- params: {
82
- code: import_error_codes.StorageErrorCode.CONNECTION_CONFIG_MISSING,
83
- scope: import_types.ErrorScope.STORAGE,
84
- type: import_types.ErrorType.USER
85
- }
86
- });
87
- }
88
- }
89
- });
90
- // Annotate the CommonJS export names for ESM import in node:
91
- 0 && (module.exports = {
92
- DATABASE_TYPES,
93
- DatabaseConfigSchema,
94
- InMemoryDatabaseSchema,
95
- PostgresDatabaseSchema,
96
- SqliteDatabaseSchema
97
- });
@@ -1,226 +0,0 @@
1
- import { z } from 'zod';
2
- export declare const DATABASE_TYPES: readonly ["in-memory", "sqlite", "postgres"];
3
- export type DatabaseType = (typeof DATABASE_TYPES)[number];
4
- export declare const InMemoryDatabaseSchema: z.ZodObject<{
5
- maxConnections: z.ZodOptional<z.ZodNumber>;
6
- idleTimeoutMillis: z.ZodOptional<z.ZodNumber>;
7
- connectionTimeoutMillis: z.ZodOptional<z.ZodNumber>;
8
- options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
9
- } & {
10
- type: z.ZodLiteral<"in-memory">;
11
- }, "strict", z.ZodTypeAny, {
12
- type: "in-memory";
13
- options?: Record<string, any> | undefined;
14
- maxConnections?: number | undefined;
15
- idleTimeoutMillis?: number | undefined;
16
- connectionTimeoutMillis?: number | undefined;
17
- }, {
18
- type: "in-memory";
19
- options?: Record<string, any> | undefined;
20
- maxConnections?: number | undefined;
21
- idleTimeoutMillis?: number | undefined;
22
- connectionTimeoutMillis?: number | undefined;
23
- }>;
24
- export type InMemoryDatabaseConfig = z.output<typeof InMemoryDatabaseSchema>;
25
- export declare const SqliteDatabaseSchema: z.ZodObject<{
26
- maxConnections: z.ZodOptional<z.ZodNumber>;
27
- idleTimeoutMillis: z.ZodOptional<z.ZodNumber>;
28
- connectionTimeoutMillis: z.ZodOptional<z.ZodNumber>;
29
- options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
30
- } & {
31
- type: z.ZodLiteral<"sqlite">;
32
- path: z.ZodString;
33
- }, "strict", z.ZodTypeAny, {
34
- path: string;
35
- type: "sqlite";
36
- options?: Record<string, any> | undefined;
37
- maxConnections?: number | undefined;
38
- idleTimeoutMillis?: number | undefined;
39
- connectionTimeoutMillis?: number | undefined;
40
- }, {
41
- path: string;
42
- type: "sqlite";
43
- options?: Record<string, any> | undefined;
44
- maxConnections?: number | undefined;
45
- idleTimeoutMillis?: number | undefined;
46
- connectionTimeoutMillis?: number | undefined;
47
- }>;
48
- export type SqliteDatabaseConfig = z.output<typeof SqliteDatabaseSchema>;
49
- export declare const PostgresDatabaseSchema: z.ZodObject<{
50
- maxConnections: z.ZodOptional<z.ZodNumber>;
51
- idleTimeoutMillis: z.ZodOptional<z.ZodNumber>;
52
- connectionTimeoutMillis: z.ZodOptional<z.ZodNumber>;
53
- options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
54
- } & {
55
- type: z.ZodLiteral<"postgres">;
56
- url: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
57
- connectionString: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
58
- host: z.ZodOptional<z.ZodString>;
59
- port: z.ZodOptional<z.ZodNumber>;
60
- database: z.ZodOptional<z.ZodString>;
61
- password: z.ZodOptional<z.ZodString>;
62
- keyPrefix: z.ZodOptional<z.ZodString>;
63
- }, "strict", z.ZodTypeAny, {
64
- type: "postgres";
65
- password?: string | undefined;
66
- options?: Record<string, any> | undefined;
67
- url?: string | undefined;
68
- maxConnections?: number | undefined;
69
- idleTimeoutMillis?: number | undefined;
70
- connectionTimeoutMillis?: number | undefined;
71
- host?: string | undefined;
72
- port?: number | undefined;
73
- database?: string | undefined;
74
- connectionString?: string | undefined;
75
- keyPrefix?: string | undefined;
76
- }, {
77
- type: "postgres";
78
- password?: string | undefined;
79
- options?: Record<string, any> | undefined;
80
- url?: string | undefined;
81
- maxConnections?: number | undefined;
82
- idleTimeoutMillis?: number | undefined;
83
- connectionTimeoutMillis?: number | undefined;
84
- host?: string | undefined;
85
- port?: number | undefined;
86
- database?: string | undefined;
87
- connectionString?: string | undefined;
88
- keyPrefix?: string | undefined;
89
- }>;
90
- export type PostgresDatabaseConfig = z.output<typeof PostgresDatabaseSchema>;
91
- export declare const DatabaseConfigSchema: z.ZodEffects<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
92
- maxConnections: z.ZodOptional<z.ZodNumber>;
93
- idleTimeoutMillis: z.ZodOptional<z.ZodNumber>;
94
- connectionTimeoutMillis: z.ZodOptional<z.ZodNumber>;
95
- options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
96
- } & {
97
- type: z.ZodLiteral<"in-memory">;
98
- }, "strict", z.ZodTypeAny, {
99
- type: "in-memory";
100
- options?: Record<string, any> | undefined;
101
- maxConnections?: number | undefined;
102
- idleTimeoutMillis?: number | undefined;
103
- connectionTimeoutMillis?: number | undefined;
104
- }, {
105
- type: "in-memory";
106
- options?: Record<string, any> | undefined;
107
- maxConnections?: number | undefined;
108
- idleTimeoutMillis?: number | undefined;
109
- connectionTimeoutMillis?: number | undefined;
110
- }>, z.ZodObject<{
111
- maxConnections: z.ZodOptional<z.ZodNumber>;
112
- idleTimeoutMillis: z.ZodOptional<z.ZodNumber>;
113
- connectionTimeoutMillis: z.ZodOptional<z.ZodNumber>;
114
- options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
115
- } & {
116
- type: z.ZodLiteral<"sqlite">;
117
- path: z.ZodString;
118
- }, "strict", z.ZodTypeAny, {
119
- path: string;
120
- type: "sqlite";
121
- options?: Record<string, any> | undefined;
122
- maxConnections?: number | undefined;
123
- idleTimeoutMillis?: number | undefined;
124
- connectionTimeoutMillis?: number | undefined;
125
- }, {
126
- path: string;
127
- type: "sqlite";
128
- options?: Record<string, any> | undefined;
129
- maxConnections?: number | undefined;
130
- idleTimeoutMillis?: number | undefined;
131
- connectionTimeoutMillis?: number | undefined;
132
- }>, z.ZodObject<{
133
- maxConnections: z.ZodOptional<z.ZodNumber>;
134
- idleTimeoutMillis: z.ZodOptional<z.ZodNumber>;
135
- connectionTimeoutMillis: z.ZodOptional<z.ZodNumber>;
136
- options: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
137
- } & {
138
- type: z.ZodLiteral<"postgres">;
139
- url: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
140
- connectionString: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
141
- host: z.ZodOptional<z.ZodString>;
142
- port: z.ZodOptional<z.ZodNumber>;
143
- database: z.ZodOptional<z.ZodString>;
144
- password: z.ZodOptional<z.ZodString>;
145
- keyPrefix: z.ZodOptional<z.ZodString>;
146
- }, "strict", z.ZodTypeAny, {
147
- type: "postgres";
148
- password?: string | undefined;
149
- options?: Record<string, any> | undefined;
150
- url?: string | undefined;
151
- maxConnections?: number | undefined;
152
- idleTimeoutMillis?: number | undefined;
153
- connectionTimeoutMillis?: number | undefined;
154
- host?: string | undefined;
155
- port?: number | undefined;
156
- database?: string | undefined;
157
- connectionString?: string | undefined;
158
- keyPrefix?: string | undefined;
159
- }, {
160
- type: "postgres";
161
- password?: string | undefined;
162
- options?: Record<string, any> | undefined;
163
- url?: string | undefined;
164
- maxConnections?: number | undefined;
165
- idleTimeoutMillis?: number | undefined;
166
- connectionTimeoutMillis?: number | undefined;
167
- host?: string | undefined;
168
- port?: number | undefined;
169
- database?: string | undefined;
170
- connectionString?: string | undefined;
171
- keyPrefix?: string | undefined;
172
- }>]>, {
173
- type: "in-memory";
174
- options?: Record<string, any> | undefined;
175
- maxConnections?: number | undefined;
176
- idleTimeoutMillis?: number | undefined;
177
- connectionTimeoutMillis?: number | undefined;
178
- } | {
179
- path: string;
180
- type: "sqlite";
181
- options?: Record<string, any> | undefined;
182
- maxConnections?: number | undefined;
183
- idleTimeoutMillis?: number | undefined;
184
- connectionTimeoutMillis?: number | undefined;
185
- } | {
186
- type: "postgres";
187
- password?: string | undefined;
188
- options?: Record<string, any> | undefined;
189
- url?: string | undefined;
190
- maxConnections?: number | undefined;
191
- idleTimeoutMillis?: number | undefined;
192
- connectionTimeoutMillis?: number | undefined;
193
- host?: string | undefined;
194
- port?: number | undefined;
195
- database?: string | undefined;
196
- connectionString?: string | undefined;
197
- keyPrefix?: string | undefined;
198
- }, {
199
- type: "in-memory";
200
- options?: Record<string, any> | undefined;
201
- maxConnections?: number | undefined;
202
- idleTimeoutMillis?: number | undefined;
203
- connectionTimeoutMillis?: number | undefined;
204
- } | {
205
- path: string;
206
- type: "sqlite";
207
- options?: Record<string, any> | undefined;
208
- maxConnections?: number | undefined;
209
- idleTimeoutMillis?: number | undefined;
210
- connectionTimeoutMillis?: number | undefined;
211
- } | {
212
- type: "postgres";
213
- password?: string | undefined;
214
- options?: Record<string, any> | undefined;
215
- url?: string | undefined;
216
- maxConnections?: number | undefined;
217
- idleTimeoutMillis?: number | undefined;
218
- connectionTimeoutMillis?: number | undefined;
219
- host?: string | undefined;
220
- port?: number | undefined;
221
- database?: string | undefined;
222
- connectionString?: string | undefined;
223
- keyPrefix?: string | undefined;
224
- }>;
225
- export type DatabaseConfig = z.output<typeof DatabaseConfigSchema>;
226
- //# sourceMappingURL=schemas.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"schemas.d.ts","sourceRoot":"","sources":["../../../src/storage/database/schemas.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,eAAO,MAAM,cAAc,8CAA+C,CAAC;AAC3E,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAoB3D,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;EAGxB,CAAC;AAEZ,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAG7E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;EAOtB,CAAC;AAEZ,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAGzE,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAcxB,CAAC;AAEZ,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAG7E,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAiC3B,CAAC;AAEP,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAC"}
@@ -1,70 +0,0 @@
1
- import "../../chunk-PTJYTZNU.js";
2
- import { z } from "zod";
3
- import { EnvExpandedString } from "../../utils/result.js";
4
- import { StorageErrorCode } from "../error-codes.js";
5
- import { ErrorScope, ErrorType } from "../../errors/types.js";
6
- const DATABASE_TYPES = ["in-memory", "sqlite", "postgres"];
7
- const BaseDatabaseSchema = z.object({
8
- maxConnections: z.number().int().positive().optional().describe("Maximum connections"),
9
- idleTimeoutMillis: z.number().int().positive().optional().describe("Idle timeout in milliseconds"),
10
- connectionTimeoutMillis: z.number().int().positive().optional().describe("Connection timeout in milliseconds"),
11
- options: z.record(z.any()).optional().describe("Backend-specific options")
12
- });
13
- const InMemoryDatabaseSchema = BaseDatabaseSchema.extend({
14
- type: z.literal("in-memory")
15
- // In-memory database doesn't need connection options, but inherits pool options for consistency
16
- }).strict();
17
- const SqliteDatabaseSchema = BaseDatabaseSchema.extend({
18
- type: z.literal("sqlite"),
19
- path: z.string().describe(
20
- "SQLite database file path (required for SQLite - CLI enrichment provides per-agent path)"
21
- )
22
- }).strict();
23
- const PostgresDatabaseSchema = BaseDatabaseSchema.extend({
24
- type: z.literal("postgres"),
25
- url: EnvExpandedString().optional().describe("PostgreSQL connection URL (postgresql://...)"),
26
- connectionString: EnvExpandedString().optional().describe("PostgreSQL connection string"),
27
- host: z.string().optional().describe("PostgreSQL host"),
28
- port: z.number().int().positive().optional().describe("PostgreSQL port"),
29
- database: z.string().optional().describe("PostgreSQL database name"),
30
- password: z.string().optional().describe("PostgreSQL password"),
31
- // TODO: keyPrefix is reserved for future use - allows namespacing keys when multiple
32
- // agents or environments share the same database (e.g., "dev:agent1:" vs "prod:agent2:")
33
- keyPrefix: z.string().optional().describe('Optional key prefix for namespacing (e.g., "dev:myagent:")')
34
- }).strict();
35
- const DatabaseConfigSchema = z.discriminatedUnion(
36
- "type",
37
- [InMemoryDatabaseSchema, SqliteDatabaseSchema, PostgresDatabaseSchema],
38
- {
39
- errorMap: (issue, ctx) => {
40
- if (issue.code === z.ZodIssueCode.invalid_union_discriminator) {
41
- return {
42
- message: `Invalid database type. Expected 'in-memory', 'sqlite', or 'postgres'.`
43
- };
44
- }
45
- return { message: ctx.defaultError };
46
- }
47
- }
48
- ).describe("Database configuration").superRefine((data, ctx) => {
49
- if (data.type === "postgres") {
50
- if (!data.url && !data.connectionString && !data.host) {
51
- ctx.addIssue({
52
- code: z.ZodIssueCode.custom,
53
- message: "PostgreSQL database requires one of 'url', 'connectionString', or 'host' to be specified",
54
- path: ["url"],
55
- params: {
56
- code: StorageErrorCode.CONNECTION_CONFIG_MISSING,
57
- scope: ErrorScope.STORAGE,
58
- type: ErrorType.USER
59
- }
60
- });
61
- }
62
- }
63
- });
64
- export {
65
- DATABASE_TYPES,
66
- DatabaseConfigSchema,
67
- InMemoryDatabaseSchema,
68
- PostgresDatabaseSchema,
69
- SqliteDatabaseSchema
70
- };