@dexto/core 1.1.4 → 1.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (597) hide show
  1. package/README.md +125 -0
  2. package/dist/agent/DextoAgent.cjs +793 -0
  3. package/dist/agent/DextoAgent.d.cts +473 -0
  4. package/dist/agent/DextoAgent.d.ts +473 -0
  5. package/dist/agent/DextoAgent.js +774 -0
  6. package/dist/agent/agentCard.cjs +44 -0
  7. package/dist/agent/agentCard.d.cts +20 -0
  8. package/dist/agent/agentCard.d.ts +20 -0
  9. package/dist/agent/agentCard.js +20 -0
  10. package/dist/agent/error-codes.cjs +35 -0
  11. package/dist/agent/error-codes.d.cts +14 -0
  12. package/dist/agent/error-codes.d.ts +14 -0
  13. package/dist/agent/error-codes.js +11 -0
  14. package/dist/agent/errors.cjs +84 -0
  15. package/dist/agent/errors.d.cts +40 -0
  16. package/dist/agent/errors.d.ts +40 -0
  17. package/dist/agent/errors.js +60 -0
  18. package/dist/agent/index.cjs +44 -0
  19. package/dist/agent/index.d.cts +60 -0
  20. package/dist/agent/index.d.ts +60 -0
  21. package/dist/agent/index.js +13 -0
  22. package/dist/agent/registry/error-codes.cjs +42 -0
  23. package/dist/agent/registry/error-codes.d.cts +20 -0
  24. package/dist/agent/registry/error-codes.d.ts +20 -0
  25. package/dist/agent/registry/error-codes.js +18 -0
  26. package/dist/agent/registry/errors.cjs +158 -0
  27. package/dist/agent/registry/errors.d.cts +67 -0
  28. package/dist/agent/registry/errors.d.ts +67 -0
  29. package/dist/{chunk-PI6XFMEW.js → agent/registry/errors.js} +43 -50
  30. package/dist/agent/registry/registry.cjs +291 -0
  31. package/dist/agent/registry/registry.d.cts +67 -0
  32. package/dist/agent/registry/registry.d.ts +67 -0
  33. package/dist/agent/registry/registry.js +256 -0
  34. package/dist/agent/registry/types.cjs +41 -0
  35. package/dist/agent/registry/types.d.cts +100 -0
  36. package/dist/agent/registry/types.d.ts +100 -0
  37. package/dist/agent/registry/types.js +16 -0
  38. package/dist/agent/schemas.cjs +113 -0
  39. package/dist/agent/schemas.d.cts +1502 -0
  40. package/dist/agent/schemas.d.ts +1502 -0
  41. package/dist/agent/schemas.js +88 -0
  42. package/dist/agent/state-manager.cjs +214 -0
  43. package/dist/agent/state-manager.d.cts +97 -0
  44. package/dist/agent/state-manager.d.ts +97 -0
  45. package/dist/agent/state-manager.js +190 -0
  46. package/dist/config/agent-resolver.cjs +153 -0
  47. package/dist/config/agent-resolver.d.cts +15 -0
  48. package/dist/config/agent-resolver.d.ts +15 -0
  49. package/dist/config/agent-resolver.js +122 -0
  50. package/dist/config/error-codes.cjs +39 -0
  51. package/dist/config/error-codes.d.cts +17 -0
  52. package/dist/config/error-codes.d.ts +17 -0
  53. package/dist/config/error-codes.js +15 -0
  54. package/dist/config/errors.cjs +126 -0
  55. package/dist/config/errors.d.cts +49 -0
  56. package/dist/config/errors.d.ts +49 -0
  57. package/dist/config/errors.js +102 -0
  58. package/dist/config/index.cjs +26 -0
  59. package/dist/config/index.d.cts +7 -0
  60. package/dist/config/index.d.ts +7 -0
  61. package/dist/config/index.js +3 -0
  62. package/dist/config/loader.cjs +119 -0
  63. package/dist/config/loader.d.cts +19 -0
  64. package/dist/config/loader.d.ts +19 -0
  65. package/dist/config/loader.js +85 -0
  66. package/dist/config/writer.cjs +182 -0
  67. package/dist/config/writer.d.cts +38 -0
  68. package/dist/config/writer.d.ts +38 -0
  69. package/dist/config/writer.js +146 -0
  70. package/dist/context/compression/middle-removal.cjs +95 -0
  71. package/dist/context/compression/middle-removal.d.cts +48 -0
  72. package/dist/context/compression/middle-removal.d.ts +48 -0
  73. package/dist/context/compression/middle-removal.js +71 -0
  74. package/dist/context/compression/oldest-removal.cjs +70 -0
  75. package/dist/context/compression/oldest-removal.d.cts +43 -0
  76. package/dist/context/compression/oldest-removal.d.ts +43 -0
  77. package/dist/context/compression/oldest-removal.js +46 -0
  78. package/dist/context/compression/types.cjs +16 -0
  79. package/dist/context/compression/types.d.cts +21 -0
  80. package/dist/context/compression/types.d.ts +21 -0
  81. package/dist/context/compression/types.js +0 -0
  82. package/dist/context/error-codes.cjs +41 -0
  83. package/dist/context/error-codes.d.cts +19 -0
  84. package/dist/context/error-codes.d.ts +19 -0
  85. package/dist/context/error-codes.js +17 -0
  86. package/dist/context/errors.cjs +146 -0
  87. package/dist/context/errors.d.cts +36 -0
  88. package/dist/context/errors.d.ts +36 -0
  89. package/dist/context/errors.js +122 -0
  90. package/dist/context/index.cjs +24 -0
  91. package/dist/context/index.d.cts +19 -0
  92. package/dist/context/index.d.ts +19 -0
  93. package/dist/context/index.js +2 -0
  94. package/dist/context/manager.cjs +516 -0
  95. package/dist/context/manager.d.cts +254 -0
  96. package/dist/context/manager.d.ts +254 -0
  97. package/dist/context/manager.js +492 -0
  98. package/dist/context/types.cjs +16 -0
  99. package/dist/context/types.d.cts +113 -0
  100. package/dist/context/types.d.ts +113 -0
  101. package/dist/context/types.js +0 -0
  102. package/dist/context/utils.cjs +406 -0
  103. package/dist/context/utils.d.cts +79 -0
  104. package/dist/context/utils.d.ts +79 -0
  105. package/dist/context/utils.js +374 -0
  106. package/dist/errors/DextoBaseError.cjs +36 -0
  107. package/dist/errors/DextoBaseError.d.cts +15 -0
  108. package/dist/errors/DextoBaseError.d.ts +15 -0
  109. package/dist/errors/DextoBaseError.js +12 -0
  110. package/dist/errors/DextoRuntimeError.cjs +50 -0
  111. package/dist/errors/DextoRuntimeError.d.cts +37 -0
  112. package/dist/errors/DextoRuntimeError.d.ts +37 -0
  113. package/dist/errors/DextoRuntimeError.js +26 -0
  114. package/dist/errors/DextoValidationError.cjs +118 -0
  115. package/dist/errors/DextoValidationError.d.cts +65 -0
  116. package/dist/errors/DextoValidationError.d.ts +65 -0
  117. package/dist/{chunk-XFQLRBHE.js → errors/DextoValidationError.js} +4 -32
  118. package/dist/errors/index.cjs +42 -0
  119. package/dist/errors/index.d.cts +18 -0
  120. package/dist/errors/index.d.ts +18 -0
  121. package/dist/errors/index.js +13 -0
  122. package/dist/errors/result-bridge.cjs +38 -0
  123. package/dist/errors/result-bridge.d.cts +39 -0
  124. package/dist/errors/result-bridge.d.ts +39 -0
  125. package/dist/errors/result-bridge.js +14 -0
  126. package/dist/errors/types.cjs +54 -0
  127. package/dist/errors/types.d.cts +62 -0
  128. package/dist/errors/types.d.ts +62 -0
  129. package/dist/errors/types.js +29 -0
  130. package/dist/events/index.cjs +169 -0
  131. package/dist/events/index.d.cts +272 -0
  132. package/dist/events/index.d.ts +272 -0
  133. package/dist/events/index.js +136 -0
  134. package/dist/index.browser.cjs +9 -220
  135. package/dist/index.browser.d.cts +53 -379
  136. package/dist/index.browser.d.ts +53 -379
  137. package/dist/index.browser.js +4 -210
  138. package/dist/index.cjs +31 -15266
  139. package/dist/index.d.cts +89 -6842
  140. package/dist/index.d.ts +89 -6842
  141. package/dist/index.js +14 -9914
  142. package/dist/llm/error-codes.cjs +48 -0
  143. package/dist/llm/error-codes.d.cts +26 -0
  144. package/dist/llm/error-codes.d.ts +26 -0
  145. package/dist/llm/error-codes.js +24 -0
  146. package/dist/llm/errors.cjs +108 -0
  147. package/dist/llm/errors.d.cts +58 -0
  148. package/dist/llm/errors.d.ts +58 -0
  149. package/dist/llm/errors.js +84 -0
  150. package/dist/llm/formatters/anthropic.cjs +246 -0
  151. package/dist/llm/formatters/anthropic.d.cts +45 -0
  152. package/dist/llm/formatters/anthropic.d.ts +45 -0
  153. package/dist/llm/formatters/anthropic.js +227 -0
  154. package/dist/llm/formatters/factory.cjs +51 -0
  155. package/dist/llm/formatters/factory.d.cts +12 -0
  156. package/dist/llm/formatters/factory.d.ts +12 -0
  157. package/dist/llm/formatters/factory.js +27 -0
  158. package/dist/llm/formatters/openai.cjs +167 -0
  159. package/dist/llm/formatters/openai.d.cts +38 -0
  160. package/dist/llm/formatters/openai.d.ts +38 -0
  161. package/dist/llm/formatters/openai.js +147 -0
  162. package/dist/llm/formatters/types.cjs +16 -0
  163. package/dist/llm/formatters/types.d.cts +43 -0
  164. package/dist/llm/formatters/types.d.ts +43 -0
  165. package/dist/llm/formatters/types.js +0 -0
  166. package/dist/llm/formatters/vercel.cjs +411 -0
  167. package/dist/llm/formatters/vercel.d.cts +48 -0
  168. package/dist/llm/formatters/vercel.d.ts +48 -0
  169. package/dist/llm/formatters/vercel.js +387 -0
  170. package/dist/llm/index.cjs +34 -0
  171. package/dist/llm/index.d.cts +39 -0
  172. package/dist/llm/index.d.ts +39 -0
  173. package/dist/llm/index.js +7 -0
  174. package/dist/llm/registry.cjs +881 -0
  175. package/dist/llm/registry.d.cts +176 -0
  176. package/dist/llm/registry.d.ts +176 -0
  177. package/dist/{chunk-J6AXCN3H.js → llm/registry.js} +25 -455
  178. package/dist/llm/resolver.cjs +154 -0
  179. package/dist/llm/resolver.d.cts +34 -0
  180. package/dist/llm/resolver.d.ts +34 -0
  181. package/dist/llm/resolver.js +136 -0
  182. package/dist/llm/schemas.cjs +188 -0
  183. package/dist/llm/schemas.d.cts +111 -0
  184. package/dist/llm/schemas.d.ts +111 -0
  185. package/dist/llm/schemas.js +172 -0
  186. package/dist/llm/services/anthropic.cjs +398 -0
  187. package/dist/llm/services/anthropic.d.cts +65 -0
  188. package/dist/llm/services/anthropic.d.ts +65 -0
  189. package/dist/llm/services/anthropic.js +374 -0
  190. package/dist/llm/services/factory.cjs +164 -0
  191. package/dist/llm/services/factory.d.cts +39 -0
  192. package/dist/llm/services/factory.d.ts +39 -0
  193. package/dist/llm/services/factory.js +130 -0
  194. package/dist/llm/services/index.cjs +22 -0
  195. package/dist/llm/services/index.d.cts +21 -0
  196. package/dist/llm/services/index.d.ts +21 -0
  197. package/dist/llm/services/index.js +1 -0
  198. package/dist/llm/services/openai.cjs +470 -0
  199. package/dist/llm/services/openai.d.cts +65 -0
  200. package/dist/llm/services/openai.d.ts +65 -0
  201. package/dist/llm/services/openai.js +446 -0
  202. package/dist/llm/services/test-utils.integration.cjs +169 -0
  203. package/dist/llm/services/test-utils.integration.d.cts +83 -0
  204. package/dist/llm/services/test-utils.integration.d.ts +83 -0
  205. package/dist/llm/services/test-utils.integration.js +142 -0
  206. package/dist/llm/services/types.cjs +16 -0
  207. package/dist/llm/services/types.d.cts +56 -0
  208. package/dist/llm/services/types.d.ts +56 -0
  209. package/dist/llm/services/types.js +0 -0
  210. package/dist/llm/services/vercel.cjs +525 -0
  211. package/dist/llm/services/vercel.d.cts +72 -0
  212. package/dist/llm/services/vercel.d.ts +72 -0
  213. package/dist/llm/services/vercel.js +506 -0
  214. package/dist/llm/tokenizer/anthropic.cjs +43 -0
  215. package/dist/llm/tokenizer/anthropic.d.cts +21 -0
  216. package/dist/llm/tokenizer/anthropic.d.ts +21 -0
  217. package/dist/llm/tokenizer/anthropic.js +19 -0
  218. package/dist/llm/tokenizer/default.cjs +41 -0
  219. package/dist/llm/tokenizer/default.d.cts +16 -0
  220. package/dist/llm/tokenizer/default.d.ts +16 -0
  221. package/dist/llm/tokenizer/default.js +17 -0
  222. package/dist/llm/tokenizer/factory.cjs +44 -0
  223. package/dist/llm/tokenizer/factory.d.cts +12 -0
  224. package/dist/llm/tokenizer/factory.d.ts +12 -0
  225. package/dist/llm/tokenizer/factory.js +20 -0
  226. package/dist/llm/tokenizer/google.cjs +52 -0
  227. package/dist/llm/tokenizer/google.d.cts +31 -0
  228. package/dist/llm/tokenizer/google.d.ts +31 -0
  229. package/dist/llm/tokenizer/google.js +28 -0
  230. package/dist/llm/tokenizer/openai.cjs +108 -0
  231. package/dist/llm/tokenizer/openai.d.cts +32 -0
  232. package/dist/llm/tokenizer/openai.d.ts +32 -0
  233. package/dist/llm/tokenizer/openai.js +83 -0
  234. package/dist/llm/tokenizer/types.cjs +33 -0
  235. package/dist/llm/tokenizer/types.d.cts +19 -0
  236. package/dist/llm/tokenizer/types.d.ts +19 -0
  237. package/dist/llm/tokenizer/types.js +9 -0
  238. package/dist/llm/types.cjs +42 -0
  239. package/dist/llm/types.d.cts +29 -0
  240. package/dist/llm/types.d.ts +29 -0
  241. package/dist/llm/types.js +16 -0
  242. package/dist/llm/validation.cjs +162 -0
  243. package/dist/llm/validation.d.cts +60 -0
  244. package/dist/llm/validation.d.ts +60 -0
  245. package/dist/llm/validation.js +138 -0
  246. package/dist/logger/browser.cjs +86 -0
  247. package/dist/logger/browser.d.cts +29 -0
  248. package/dist/logger/browser.d.ts +29 -0
  249. package/dist/logger/browser.js +61 -0
  250. package/dist/logger/index.cjs +22 -0
  251. package/dist/logger/index.d.cts +1 -0
  252. package/dist/logger/index.d.ts +1 -0
  253. package/dist/logger/index.js +1 -0
  254. package/dist/logger/logger.cjs +362 -0
  255. package/dist/logger/logger.d.cts +52 -0
  256. package/dist/logger/logger.d.ts +52 -0
  257. package/dist/logger/logger.js +327 -0
  258. package/dist/mcp/error-codes.cjs +38 -0
  259. package/dist/mcp/error-codes.d.cts +16 -0
  260. package/dist/mcp/error-codes.d.ts +16 -0
  261. package/dist/mcp/error-codes.js +14 -0
  262. package/dist/mcp/errors.cjs +131 -0
  263. package/dist/mcp/errors.d.cts +72 -0
  264. package/dist/mcp/errors.d.ts +72 -0
  265. package/dist/mcp/errors.js +107 -0
  266. package/dist/mcp/index.cjs +34 -0
  267. package/dist/mcp/index.d.cts +26 -0
  268. package/dist/mcp/index.d.ts +26 -0
  269. package/dist/mcp/index.js +7 -0
  270. package/dist/mcp/manager.cjs +473 -0
  271. package/dist/mcp/manager.d.cts +163 -0
  272. package/dist/mcp/manager.d.ts +163 -0
  273. package/dist/mcp/manager.js +449 -0
  274. package/dist/mcp/mcp-client.cjs +420 -0
  275. package/dist/mcp/mcp-client.d.cts +108 -0
  276. package/dist/mcp/mcp-client.d.ts +108 -0
  277. package/dist/mcp/mcp-client.js +396 -0
  278. package/dist/mcp/resolver.cjs +78 -0
  279. package/dist/mcp/resolver.d.cts +22 -0
  280. package/dist/mcp/resolver.d.ts +22 -0
  281. package/dist/mcp/resolver.js +56 -0
  282. package/dist/mcp/schemas.cjs +82 -0
  283. package/dist/mcp/schemas.d.cts +266 -0
  284. package/dist/mcp/schemas.d.ts +266 -0
  285. package/dist/mcp/schemas.js +54 -0
  286. package/dist/mcp/types.cjs +16 -0
  287. package/dist/mcp/types.d.cts +21 -0
  288. package/dist/mcp/types.d.ts +21 -0
  289. package/dist/mcp/types.js +0 -0
  290. package/dist/preferences/constants.cjs +28 -0
  291. package/dist/preferences/constants.d.cts +3 -0
  292. package/dist/preferences/constants.d.ts +3 -0
  293. package/dist/preferences/constants.js +4 -0
  294. package/dist/preferences/error-codes.cjs +35 -0
  295. package/dist/preferences/error-codes.d.cts +9 -0
  296. package/dist/preferences/error-codes.d.ts +9 -0
  297. package/dist/preferences/error-codes.js +11 -0
  298. package/dist/preferences/errors.cjs +75 -0
  299. package/dist/preferences/errors.d.cts +33 -0
  300. package/dist/preferences/errors.d.ts +33 -0
  301. package/dist/preferences/errors.js +50 -0
  302. package/dist/preferences/index.cjs +55 -0
  303. package/dist/preferences/index.d.cts +21 -0
  304. package/dist/preferences/index.d.ts +21 -0
  305. package/dist/preferences/index.js +31 -0
  306. package/dist/preferences/loader.cjs +136 -0
  307. package/dist/preferences/loader.d.cts +45 -0
  308. package/dist/preferences/loader.d.ts +45 -0
  309. package/dist/preferences/loader.js +107 -0
  310. package/dist/preferences/schemas.cjs +74 -0
  311. package/dist/preferences/schemas.d.cts +104 -0
  312. package/dist/preferences/schemas.d.ts +104 -0
  313. package/dist/preferences/schemas.js +47 -0
  314. package/dist/search/index.cjs +28 -0
  315. package/dist/search/index.d.cts +5 -0
  316. package/dist/search/index.d.ts +5 -0
  317. package/dist/search/index.js +4 -0
  318. package/dist/search/search-service.cjs +245 -0
  319. package/dist/search/search-service.d.cts +47 -0
  320. package/dist/search/search-service.d.ts +47 -0
  321. package/dist/search/search-service.js +221 -0
  322. package/dist/search/types.cjs +16 -0
  323. package/dist/search/types.d.cts +78 -0
  324. package/dist/search/types.d.ts +78 -0
  325. package/dist/search/types.js +0 -0
  326. package/dist/session/chat-session.cjs +354 -0
  327. package/dist/session/chat-session.d.cts +284 -0
  328. package/dist/session/chat-session.d.ts +284 -0
  329. package/dist/session/chat-session.js +333 -0
  330. package/dist/session/error-codes.cjs +35 -0
  331. package/dist/session/error-codes.d.cts +13 -0
  332. package/dist/session/error-codes.d.ts +13 -0
  333. package/dist/session/error-codes.js +11 -0
  334. package/dist/session/errors.cjs +93 -0
  335. package/dist/session/errors.d.cts +58 -0
  336. package/dist/session/errors.d.ts +58 -0
  337. package/dist/session/errors.js +69 -0
  338. package/dist/session/history/database.cjs +95 -0
  339. package/dist/session/history/database.d.cts +28 -0
  340. package/dist/session/history/database.d.ts +28 -0
  341. package/dist/session/history/database.js +71 -0
  342. package/dist/session/history/factory.cjs +31 -0
  343. package/dist/session/history/factory.d.cts +11 -0
  344. package/dist/session/history/factory.d.ts +11 -0
  345. package/dist/session/history/factory.js +7 -0
  346. package/dist/session/history/types.cjs +16 -0
  347. package/dist/session/history/types.d.cts +17 -0
  348. package/dist/session/history/types.d.ts +17 -0
  349. package/dist/session/history/types.js +0 -0
  350. package/dist/session/index.cjs +37 -0
  351. package/dist/session/index.d.cts +53 -0
  352. package/dist/session/index.d.ts +53 -0
  353. package/dist/session/index.js +10 -0
  354. package/dist/session/schemas.cjs +32 -0
  355. package/dist/session/schemas.d.cts +16 -0
  356. package/dist/session/schemas.d.ts +16 -0
  357. package/dist/session/schemas.js +8 -0
  358. package/dist/session/session-manager.cjs +481 -0
  359. package/dist/session/session-manager.d.cts +219 -0
  360. package/dist/session/session-manager.d.ts +219 -0
  361. package/dist/session/session-manager.js +457 -0
  362. package/dist/storage/backend/cache-backend.cjs +16 -0
  363. package/dist/storage/backend/cache-backend.d.cts +15 -0
  364. package/dist/storage/backend/cache-backend.d.ts +15 -0
  365. package/dist/storage/backend/cache-backend.js +0 -0
  366. package/dist/storage/backend/database-backend.cjs +16 -0
  367. package/dist/storage/backend/database-backend.d.cts +19 -0
  368. package/dist/storage/backend/database-backend.d.ts +19 -0
  369. package/dist/storage/backend/database-backend.js +0 -0
  370. package/dist/storage/backend/memory-backend.cjs +140 -0
  371. package/dist/storage/backend/memory-backend.d.cts +34 -0
  372. package/dist/storage/backend/memory-backend.d.ts +34 -0
  373. package/dist/storage/backend/memory-backend.js +116 -0
  374. package/dist/storage/backend/postgres-backend.cjs +231 -0
  375. package/dist/storage/backend/postgres-backend.d.cts +37 -0
  376. package/dist/storage/backend/postgres-backend.d.ts +37 -0
  377. package/dist/{postgres-backend-WMWS7RAT.js → storage/backend/postgres-backend.js} +3 -12
  378. package/dist/storage/backend/redis-backend.cjs +184 -0
  379. package/dist/storage/backend/redis-backend.d.cts +36 -0
  380. package/dist/storage/backend/redis-backend.d.ts +36 -0
  381. package/dist/{redis-backend-BNLN3XHX.js → storage/backend/redis-backend.js} +3 -12
  382. package/dist/storage/backend/sqlite-backend.cjs +271 -0
  383. package/dist/storage/backend/sqlite-backend.d.cts +35 -0
  384. package/dist/storage/backend/sqlite-backend.d.ts +35 -0
  385. package/dist/{sqlite-backend-AR6XNK2Q.js → storage/backend/sqlite-backend.js} +6 -17
  386. package/dist/storage/backend/types.cjs +16 -0
  387. package/dist/storage/backend/types.d.cts +14 -0
  388. package/dist/storage/backend/types.d.ts +14 -0
  389. package/dist/storage/backend/types.js +0 -0
  390. package/dist/storage/error-codes.cjs +36 -0
  391. package/dist/storage/error-codes.d.cts +14 -0
  392. package/dist/storage/error-codes.d.ts +14 -0
  393. package/dist/storage/error-codes.js +12 -0
  394. package/dist/storage/errors.cjs +104 -0
  395. package/dist/storage/errors.d.cts +63 -0
  396. package/dist/storage/errors.d.ts +63 -0
  397. package/dist/{chunk-F2QFAECT.js → storage/errors.js} +23 -30
  398. package/dist/storage/index.cjs +33 -0
  399. package/dist/storage/index.d.cts +7 -0
  400. package/dist/storage/index.d.ts +7 -0
  401. package/dist/storage/index.js +7 -0
  402. package/dist/storage/schemas.cjs +113 -0
  403. package/dist/storage/schemas.d.cts +856 -0
  404. package/dist/storage/schemas.d.ts +856 -0
  405. package/dist/storage/schemas.js +89 -0
  406. package/dist/storage/storage-manager.cjs +208 -0
  407. package/dist/storage/storage-manager.d.cts +52 -0
  408. package/dist/storage/storage-manager.d.ts +52 -0
  409. package/dist/storage/storage-manager.js +173 -0
  410. package/dist/storage/types.cjs +16 -0
  411. package/dist/storage/types.d.cts +5 -0
  412. package/dist/storage/types.d.ts +5 -0
  413. package/dist/storage/types.js +0 -0
  414. package/dist/systemPrompt/contributors.cjs +146 -0
  415. package/dist/systemPrompt/contributors.d.cts +44 -0
  416. package/dist/systemPrompt/contributors.d.ts +44 -0
  417. package/dist/systemPrompt/contributors.js +120 -0
  418. package/dist/systemPrompt/error-codes.cjs +35 -0
  419. package/dist/systemPrompt/error-codes.d.cts +13 -0
  420. package/dist/systemPrompt/error-codes.d.ts +13 -0
  421. package/dist/systemPrompt/error-codes.js +11 -0
  422. package/dist/systemPrompt/errors.cjs +93 -0
  423. package/dist/systemPrompt/errors.d.cts +55 -0
  424. package/dist/systemPrompt/errors.d.ts +55 -0
  425. package/dist/systemPrompt/errors.js +69 -0
  426. package/dist/systemPrompt/in-built-prompts.cjs +68 -0
  427. package/dist/systemPrompt/in-built-prompts.d.cts +28 -0
  428. package/dist/systemPrompt/in-built-prompts.d.ts +28 -0
  429. package/dist/systemPrompt/in-built-prompts.js +42 -0
  430. package/dist/systemPrompt/index.cjs +30 -0
  431. package/dist/systemPrompt/index.d.cts +14 -0
  432. package/dist/systemPrompt/index.d.ts +14 -0
  433. package/dist/systemPrompt/index.js +5 -0
  434. package/dist/systemPrompt/manager.cjs +93 -0
  435. package/dist/systemPrompt/manager.d.cts +31 -0
  436. package/dist/systemPrompt/manager.d.ts +31 -0
  437. package/dist/systemPrompt/manager.js +69 -0
  438. package/dist/systemPrompt/registry.cjs +51 -0
  439. package/dist/systemPrompt/registry.d.cts +20 -0
  440. package/dist/systemPrompt/registry.d.ts +20 -0
  441. package/dist/systemPrompt/registry.js +15 -0
  442. package/dist/systemPrompt/schemas.cjs +107 -0
  443. package/dist/systemPrompt/schemas.d.cts +401 -0
  444. package/dist/systemPrompt/schemas.d.ts +401 -0
  445. package/dist/systemPrompt/schemas.js +81 -0
  446. package/dist/systemPrompt/types.cjs +16 -0
  447. package/dist/systemPrompt/types.d.cts +19 -0
  448. package/dist/systemPrompt/types.d.ts +19 -0
  449. package/dist/systemPrompt/types.js +0 -0
  450. package/dist/tools/confirmation/allowed-tools-provider/factory.cjs +44 -0
  451. package/dist/tools/confirmation/allowed-tools-provider/factory.d.cts +19 -0
  452. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts +19 -0
  453. package/dist/tools/confirmation/allowed-tools-provider/factory.js +20 -0
  454. package/dist/tools/confirmation/allowed-tools-provider/in-memory.cjs +62 -0
  455. package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.cts +17 -0
  456. package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.ts +17 -0
  457. package/dist/tools/confirmation/allowed-tools-provider/in-memory.js +38 -0
  458. package/dist/tools/confirmation/allowed-tools-provider/storage.cjs +68 -0
  459. package/dist/tools/confirmation/allowed-tools-provider/storage.d.cts +26 -0
  460. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts +26 -0
  461. package/dist/tools/confirmation/allowed-tools-provider/storage.js +44 -0
  462. package/dist/tools/confirmation/allowed-tools-provider/types.cjs +16 -0
  463. package/dist/tools/confirmation/allowed-tools-provider/types.d.cts +35 -0
  464. package/dist/tools/confirmation/allowed-tools-provider/types.d.ts +35 -0
  465. package/dist/tools/confirmation/allowed-tools-provider/types.js +0 -0
  466. package/dist/tools/confirmation/event-based-confirmation-provider.cjs +158 -0
  467. package/dist/tools/confirmation/event-based-confirmation-provider.d.cts +41 -0
  468. package/dist/tools/confirmation/event-based-confirmation-provider.d.ts +41 -0
  469. package/dist/tools/confirmation/event-based-confirmation-provider.js +134 -0
  470. package/dist/tools/confirmation/factory.cjs +52 -0
  471. package/dist/tools/confirmation/factory.d.cts +37 -0
  472. package/dist/tools/confirmation/factory.d.ts +37 -0
  473. package/dist/tools/confirmation/factory.js +28 -0
  474. package/dist/tools/confirmation/noop-confirmation-provider.cjs +49 -0
  475. package/dist/tools/confirmation/noop-confirmation-provider.d.cts +22 -0
  476. package/dist/tools/confirmation/noop-confirmation-provider.d.ts +22 -0
  477. package/dist/tools/confirmation/noop-confirmation-provider.js +25 -0
  478. package/dist/tools/confirmation/types.cjs +16 -0
  479. package/dist/tools/confirmation/types.d.cts +46 -0
  480. package/dist/tools/confirmation/types.d.ts +46 -0
  481. package/dist/tools/confirmation/types.js +0 -0
  482. package/dist/tools/error-codes.cjs +40 -0
  483. package/dist/tools/error-codes.d.cts +18 -0
  484. package/dist/tools/error-codes.d.ts +18 -0
  485. package/dist/tools/error-codes.js +16 -0
  486. package/dist/tools/errors.cjs +164 -0
  487. package/dist/tools/errors.d.cts +97 -0
  488. package/dist/tools/errors.d.ts +97 -0
  489. package/dist/tools/errors.js +140 -0
  490. package/dist/tools/index.cjs +37 -0
  491. package/dist/tools/index.d.cts +19 -0
  492. package/dist/tools/index.d.ts +19 -0
  493. package/dist/tools/index.js +8 -0
  494. package/dist/tools/internal-tools/implementations/search-history-tool.cjs +61 -0
  495. package/dist/tools/internal-tools/implementations/search-history-tool.d.cts +15 -0
  496. package/dist/tools/internal-tools/implementations/search-history-tool.d.ts +15 -0
  497. package/dist/tools/internal-tools/implementations/search-history-tool.js +37 -0
  498. package/dist/tools/internal-tools/index.cjs +24 -0
  499. package/dist/tools/internal-tools/index.d.cts +13 -0
  500. package/dist/tools/internal-tools/index.d.ts +13 -0
  501. package/dist/tools/internal-tools/index.js +2 -0
  502. package/dist/tools/internal-tools/provider.cjs +159 -0
  503. package/dist/tools/internal-tools/provider.d.cts +66 -0
  504. package/dist/tools/internal-tools/provider.d.ts +66 -0
  505. package/dist/tools/internal-tools/provider.js +135 -0
  506. package/dist/tools/internal-tools/registry.cjs +43 -0
  507. package/dist/tools/internal-tools/registry.d.cts +45 -0
  508. package/dist/tools/internal-tools/registry.d.ts +45 -0
  509. package/dist/tools/internal-tools/registry.js +17 -0
  510. package/dist/tools/schemas.cjs +45 -0
  511. package/dist/tools/schemas.d.cts +21 -0
  512. package/dist/tools/schemas.d.ts +21 -0
  513. package/dist/tools/schemas.js +20 -0
  514. package/dist/tools/tool-manager.cjs +275 -0
  515. package/dist/tools/tool-manager.d.cts +106 -0
  516. package/dist/tools/tool-manager.d.ts +106 -0
  517. package/dist/tools/tool-manager.js +251 -0
  518. package/dist/tools/types.cjs +16 -0
  519. package/dist/tools/types.d.cts +66 -0
  520. package/dist/tools/types.d.ts +66 -0
  521. package/dist/tools/types.js +0 -0
  522. package/dist/utils/api-key-resolver.cjs +62 -0
  523. package/dist/utils/api-key-resolver.d.cts +23 -0
  524. package/dist/utils/api-key-resolver.d.ts +23 -0
  525. package/dist/utils/api-key-resolver.js +36 -0
  526. package/dist/utils/api-key-store.cjs +56 -0
  527. package/dist/utils/api-key-store.d.cts +26 -0
  528. package/dist/utils/api-key-store.d.ts +26 -0
  529. package/dist/utils/api-key-store.js +30 -0
  530. package/dist/utils/env.cjs +154 -0
  531. package/dist/utils/env.d.cts +29 -0
  532. package/dist/utils/env.d.ts +29 -0
  533. package/dist/utils/env.js +118 -0
  534. package/dist/utils/error-conversion.cjs +53 -0
  535. package/dist/utils/error-conversion.d.cts +13 -0
  536. package/dist/utils/error-conversion.d.ts +13 -0
  537. package/dist/utils/error-conversion.js +29 -0
  538. package/dist/utils/execution-context.cjs +85 -0
  539. package/dist/utils/execution-context.d.cts +21 -0
  540. package/dist/utils/execution-context.d.ts +21 -0
  541. package/dist/utils/execution-context.js +49 -0
  542. package/dist/{chunk-MVKLS3LM.js → utils/fs-walk.cjs} +27 -18
  543. package/dist/utils/fs-walk.d.cts +9 -0
  544. package/dist/utils/fs-walk.d.ts +9 -0
  545. package/dist/utils/fs-walk.js +18 -0
  546. package/dist/utils/index.cjs +44 -0
  547. package/dist/utils/index.d.cts +63 -0
  548. package/dist/utils/index.d.ts +63 -0
  549. package/dist/utils/index.js +12 -0
  550. package/dist/utils/path.cjs +197 -0
  551. package/dist/utils/path.d.cts +54 -0
  552. package/dist/utils/path.d.ts +54 -0
  553. package/dist/utils/path.js +159 -0
  554. package/dist/utils/port-utils.cjs +37 -0
  555. package/dist/utils/port-utils.d.cts +11 -0
  556. package/dist/utils/port-utils.d.ts +11 -0
  557. package/dist/utils/port-utils.js +13 -0
  558. package/dist/utils/port-utils.spec.cjs +26 -0
  559. package/dist/utils/port-utils.spec.d.cts +2 -0
  560. package/dist/utils/port-utils.spec.d.ts +2 -0
  561. package/dist/utils/port-utils.spec.js +25 -0
  562. package/dist/utils/redactor.cjs +105 -0
  563. package/dist/utils/redactor.d.cts +18 -0
  564. package/dist/utils/redactor.d.ts +18 -0
  565. package/dist/utils/redactor.js +81 -0
  566. package/dist/utils/result.cjs +115 -0
  567. package/dist/utils/result.d.cts +180 -0
  568. package/dist/utils/result.d.ts +180 -0
  569. package/dist/utils/result.js +82 -0
  570. package/dist/utils/safe-stringify.cjs +57 -0
  571. package/dist/utils/safe-stringify.d.cts +7 -0
  572. package/dist/utils/safe-stringify.d.ts +7 -0
  573. package/dist/utils/safe-stringify.js +33 -0
  574. package/dist/utils/schema.cjs +42 -0
  575. package/dist/utils/schema.d.cts +6 -0
  576. package/dist/utils/schema.d.ts +6 -0
  577. package/dist/utils/schema.js +18 -0
  578. package/dist/utils/service-initializer.cjs +119 -0
  579. package/dist/utils/service-initializer.d.cts +63 -0
  580. package/dist/utils/service-initializer.d.ts +63 -0
  581. package/dist/utils/service-initializer.js +95 -0
  582. package/dist/utils/user-info.cjs +30 -0
  583. package/dist/utils/user-info.d.cts +3 -0
  584. package/dist/utils/user-info.d.ts +3 -0
  585. package/dist/utils/user-info.js +6 -0
  586. package/dist/utils/zod-schema-converter.cjs +112 -0
  587. package/dist/utils/zod-schema-converter.d.cts +13 -0
  588. package/dist/utils/zod-schema-converter.d.ts +13 -0
  589. package/dist/utils/zod-schema-converter.js +87 -0
  590. package/package.json +2 -2
  591. package/dist/chunk-D62MHQBE.js +0 -2203
  592. package/dist/chunk-FCJVTIBV.js +0 -535
  593. package/dist/chunk-TPERKLLN.js +0 -75
  594. package/dist/errors-ZZ4Z3FKB.js +0 -10
  595. package/dist/loader-HBNEYPQZ.js +0 -20
  596. package/dist/path-TP7WBDED.js +0 -21
  597. package/dist/registry-Z4DFXODW.js +0 -14
@@ -0,0 +1,180 @@
1
+ import { ZodError, z } from 'zod';
2
+ import { Issue } from '../errors/types.cjs';
3
+ import '../agent/error-codes.cjs';
4
+ import '../config/error-codes.cjs';
5
+ import '../context/error-codes.cjs';
6
+ import '../llm/error-codes.cjs';
7
+ import '../mcp/error-codes.cjs';
8
+ import '../session/error-codes.cjs';
9
+ import '../storage/error-codes.cjs';
10
+ import '../systemPrompt/error-codes.cjs';
11
+ import '../tools/error-codes.cjs';
12
+ import '../preferences/error-codes.cjs';
13
+ import '../agent/registry/error-codes.cjs';
14
+
15
+ /** Trim and require non-empty after trim */
16
+ declare const NonEmptyTrimmed: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
17
+ declare const OptionalURL: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string | undefined, string>>;
18
+ declare const EnvExpandedString: (env?: Record<string, string | undefined>) => z.ZodEffects<z.ZodString, string, string>;
19
+ declare const NonEmptyEnvExpandedString: (env?: Record<string, string | undefined>) => z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
20
+ declare const RequiredEnvURL: (env?: Record<string, string | undefined>) => z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
21
+ /**
22
+ * A discriminated union result type that can be either successful or failed
23
+ * Provides type safety by ensuring data is only available on success
24
+ * @param T - The type of the data on success
25
+ * @param C - The type of the context for issues
26
+ */
27
+ type Result<T, C = unknown> = {
28
+ ok: true;
29
+ data: T;
30
+ issues: Issue<C>[];
31
+ } | {
32
+ ok: false;
33
+ issues: Issue<C>[];
34
+ };
35
+ /**
36
+ * Create a successful result with validated data and optional warnings.
37
+ *
38
+ * **Usage Guidelines:**
39
+ * - Use for operations that completed successfully, even with warnings
40
+ * - Include warnings for non-blocking issues (API key too short, fallback model used, etc.)
41
+ * - DextoAgent methods should prefer this over throwing exceptions
42
+ * - API layer maps this to 2xx status codes
43
+ *
44
+ * @param data - The successfully validated/processed data
45
+ * @param issues - Optional warnings or informational issues (defaults to empty array)
46
+ * @returns A successful Result with ok: true
47
+ *
48
+ * @example
49
+ * ```typescript
50
+ * // Success with no warnings
51
+ * return ok(validatedConfig);
52
+ *
53
+ * // Success with warnings
54
+ * return ok(validatedConfig, [
55
+ * { code: 'llm_short_api_key', message: 'API key seems short', severity: 'warning', context: {} }
56
+ * ]);
57
+ * ```
58
+ */
59
+ declare const ok: <T, C = unknown>(data: T, issues?: Issue<C>[]) => Result<T, C>;
60
+ /**
61
+ * Create a failed result with blocking errors that prevent operation completion.
62
+ *
63
+ * **Usage Guidelines:**
64
+ * - Use for validation failures, business rule violations, or any error that should stop execution
65
+ * - Do NOT mix with exceptions - choose Result pattern OR throwing, not both
66
+ * - API layer maps this to 4xx status codes (user/validation errors)
67
+ * - Issues should have severity: 'error' for blocking problems
68
+ *
69
+ * @param issues - Array of error issues that caused the failure (must not be empty)
70
+ * @returns A failed Result with ok: false and no data
71
+ *
72
+ * @example
73
+ * ```typescript
74
+ * // Validation failure
75
+ * return fail([
76
+ * {
77
+ * code: LLMErrorCode.SWITCH_INPUT_MISSING,
78
+ * message: 'At least model or provider must be specified',
79
+ * severity: 'error',
80
+ * context: {}
81
+ * }
82
+ * ]);
83
+ *
84
+ * // Multiple validation errors
85
+ * return fail([
86
+ * { code: 'missing_api_key', message: 'API key required', severity: 'error', context: {} },
87
+ * { code: 'invalid_model', message: 'Model not supported', severity: 'error', context: {} }
88
+ * ]);
89
+ * ```
90
+ */
91
+ declare const fail: <T = never, C = unknown>(issues: Issue<C>[]) => Result<T, C>;
92
+ /**
93
+ * Check if a list of issues contains any blocking errors (non-warning severity).
94
+ *
95
+ * **Usage Guidelines:**
96
+ * - Use to determine if a Result should be ok: false
97
+ * - Warnings don't count as errors - operations can succeed with warnings
98
+ * - Useful in validation functions to decide success vs failure
99
+ *
100
+ * @param issues - Array of issues to check
101
+ * @returns true if any issue has severity other than 'warning', false otherwise
102
+ *
103
+ * @example
104
+ * ```typescript
105
+ * const issues = [
106
+ * { severity: 'warning', message: 'API key seems short' },
107
+ * { severity: 'error', message: 'Model not found' }
108
+ * ];
109
+ *
110
+ * if (hasErrors(issues)) {
111
+ * return fail(issues); // Contains errors, operation fails
112
+ * } else {
113
+ * return ok(data, issues); // Only warnings, operation succeeds
114
+ * }
115
+ * ```
116
+ */
117
+ declare function hasErrors<C>(issues: Issue<C>[]): boolean;
118
+ /**
119
+ * Separate issues into errors (blocking) and warnings (non-blocking) for different handling.
120
+ *
121
+ * **Usage Guidelines:**
122
+ * - Use when you need to handle errors and warnings differently
123
+ * - Errors should block operation, warnings should be logged/reported but allow success
124
+ * - Useful in API responses to show both what failed and what succeeded with caveats
125
+ *
126
+ * @param issues - Array of mixed issues to categorize
127
+ * @returns Object with separate arrays for errors and warnings
128
+ *
129
+ * @example
130
+ * ```typescript
131
+ * const { errors, warnings } = splitIssues(allIssues);
132
+ *
133
+ * if (errors.length > 0) {
134
+ * logger.error('Validation failed:', errors);
135
+ * return fail(errors);
136
+ * }
137
+ *
138
+ * if (warnings.length > 0) {
139
+ * logger.warn('Validation succeeded with warnings:', warnings);
140
+ * }
141
+ *
142
+ * return ok(data, warnings);
143
+ * ```
144
+ */
145
+ declare function splitIssues<C>(issues: Issue<C>[]): {
146
+ errors: Issue<C>[];
147
+ warnings: Issue<C>[];
148
+ };
149
+ /**
150
+ * Convert Zod validation errors to standardized Issue format for Result pattern.
151
+ *
152
+ * **Usage Guidelines:**
153
+ * - Use in schema validation functions to convert Zod errors to our Issue format
154
+ * - Allows custom error codes via Zod's params.code field in custom refinements
155
+ * - Falls back to SCHEMA_VALIDATION code for standard Zod validation errors
156
+ * - Typically used with severity: 'error' for blocking validation failures
157
+ *
158
+ * @param err - ZodError from failed schema validation
159
+ * @param severity - Issue severity level (defaults to 'error')
160
+ * @returns Array of Issues in our standardized format
161
+ *
162
+ * @example
163
+ * ```typescript
164
+ * // In a validation function
165
+ * const result = MySchema.safeParse(data);
166
+ * if (!result.success) {
167
+ * const issues = zodToIssues(result.error);
168
+ * return fail(issues);
169
+ * }
170
+ *
171
+ * // Custom error codes in Zod schema
172
+ * const schema = z.string().refine(val => val.length > 0, {
173
+ * message: 'Field is required',
174
+ * params: { code: LLMErrorCode.API_KEY_MISSING }
175
+ * });
176
+ * ```
177
+ */
178
+ declare function zodToIssues<C = unknown>(err: ZodError, severity?: 'error' | 'warning'): Issue<C>[];
179
+
180
+ export { EnvExpandedString, NonEmptyEnvExpandedString, NonEmptyTrimmed, OptionalURL, RequiredEnvURL, type Result, fail, hasErrors, ok, splitIssues, zodToIssues };
@@ -0,0 +1,180 @@
1
+ import { ZodError, z } from 'zod';
2
+ import { Issue } from '../errors/types.js';
3
+ import '../agent/error-codes.js';
4
+ import '../config/error-codes.js';
5
+ import '../context/error-codes.js';
6
+ import '../llm/error-codes.js';
7
+ import '../mcp/error-codes.js';
8
+ import '../session/error-codes.js';
9
+ import '../storage/error-codes.js';
10
+ import '../systemPrompt/error-codes.js';
11
+ import '../tools/error-codes.js';
12
+ import '../preferences/error-codes.js';
13
+ import '../agent/registry/error-codes.js';
14
+
15
+ /** Trim and require non-empty after trim */
16
+ declare const NonEmptyTrimmed: z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
17
+ declare const OptionalURL: z.ZodOptional<z.ZodEffects<z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>, string | undefined, string>>;
18
+ declare const EnvExpandedString: (env?: Record<string, string | undefined>) => z.ZodEffects<z.ZodString, string, string>;
19
+ declare const NonEmptyEnvExpandedString: (env?: Record<string, string | undefined>) => z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
20
+ declare const RequiredEnvURL: (env?: Record<string, string | undefined>) => z.ZodEffects<z.ZodEffects<z.ZodString, string, string>, string, string>;
21
+ /**
22
+ * A discriminated union result type that can be either successful or failed
23
+ * Provides type safety by ensuring data is only available on success
24
+ * @param T - The type of the data on success
25
+ * @param C - The type of the context for issues
26
+ */
27
+ type Result<T, C = unknown> = {
28
+ ok: true;
29
+ data: T;
30
+ issues: Issue<C>[];
31
+ } | {
32
+ ok: false;
33
+ issues: Issue<C>[];
34
+ };
35
+ /**
36
+ * Create a successful result with validated data and optional warnings.
37
+ *
38
+ * **Usage Guidelines:**
39
+ * - Use for operations that completed successfully, even with warnings
40
+ * - Include warnings for non-blocking issues (API key too short, fallback model used, etc.)
41
+ * - DextoAgent methods should prefer this over throwing exceptions
42
+ * - API layer maps this to 2xx status codes
43
+ *
44
+ * @param data - The successfully validated/processed data
45
+ * @param issues - Optional warnings or informational issues (defaults to empty array)
46
+ * @returns A successful Result with ok: true
47
+ *
48
+ * @example
49
+ * ```typescript
50
+ * // Success with no warnings
51
+ * return ok(validatedConfig);
52
+ *
53
+ * // Success with warnings
54
+ * return ok(validatedConfig, [
55
+ * { code: 'llm_short_api_key', message: 'API key seems short', severity: 'warning', context: {} }
56
+ * ]);
57
+ * ```
58
+ */
59
+ declare const ok: <T, C = unknown>(data: T, issues?: Issue<C>[]) => Result<T, C>;
60
+ /**
61
+ * Create a failed result with blocking errors that prevent operation completion.
62
+ *
63
+ * **Usage Guidelines:**
64
+ * - Use for validation failures, business rule violations, or any error that should stop execution
65
+ * - Do NOT mix with exceptions - choose Result pattern OR throwing, not both
66
+ * - API layer maps this to 4xx status codes (user/validation errors)
67
+ * - Issues should have severity: 'error' for blocking problems
68
+ *
69
+ * @param issues - Array of error issues that caused the failure (must not be empty)
70
+ * @returns A failed Result with ok: false and no data
71
+ *
72
+ * @example
73
+ * ```typescript
74
+ * // Validation failure
75
+ * return fail([
76
+ * {
77
+ * code: LLMErrorCode.SWITCH_INPUT_MISSING,
78
+ * message: 'At least model or provider must be specified',
79
+ * severity: 'error',
80
+ * context: {}
81
+ * }
82
+ * ]);
83
+ *
84
+ * // Multiple validation errors
85
+ * return fail([
86
+ * { code: 'missing_api_key', message: 'API key required', severity: 'error', context: {} },
87
+ * { code: 'invalid_model', message: 'Model not supported', severity: 'error', context: {} }
88
+ * ]);
89
+ * ```
90
+ */
91
+ declare const fail: <T = never, C = unknown>(issues: Issue<C>[]) => Result<T, C>;
92
+ /**
93
+ * Check if a list of issues contains any blocking errors (non-warning severity).
94
+ *
95
+ * **Usage Guidelines:**
96
+ * - Use to determine if a Result should be ok: false
97
+ * - Warnings don't count as errors - operations can succeed with warnings
98
+ * - Useful in validation functions to decide success vs failure
99
+ *
100
+ * @param issues - Array of issues to check
101
+ * @returns true if any issue has severity other than 'warning', false otherwise
102
+ *
103
+ * @example
104
+ * ```typescript
105
+ * const issues = [
106
+ * { severity: 'warning', message: 'API key seems short' },
107
+ * { severity: 'error', message: 'Model not found' }
108
+ * ];
109
+ *
110
+ * if (hasErrors(issues)) {
111
+ * return fail(issues); // Contains errors, operation fails
112
+ * } else {
113
+ * return ok(data, issues); // Only warnings, operation succeeds
114
+ * }
115
+ * ```
116
+ */
117
+ declare function hasErrors<C>(issues: Issue<C>[]): boolean;
118
+ /**
119
+ * Separate issues into errors (blocking) and warnings (non-blocking) for different handling.
120
+ *
121
+ * **Usage Guidelines:**
122
+ * - Use when you need to handle errors and warnings differently
123
+ * - Errors should block operation, warnings should be logged/reported but allow success
124
+ * - Useful in API responses to show both what failed and what succeeded with caveats
125
+ *
126
+ * @param issues - Array of mixed issues to categorize
127
+ * @returns Object with separate arrays for errors and warnings
128
+ *
129
+ * @example
130
+ * ```typescript
131
+ * const { errors, warnings } = splitIssues(allIssues);
132
+ *
133
+ * if (errors.length > 0) {
134
+ * logger.error('Validation failed:', errors);
135
+ * return fail(errors);
136
+ * }
137
+ *
138
+ * if (warnings.length > 0) {
139
+ * logger.warn('Validation succeeded with warnings:', warnings);
140
+ * }
141
+ *
142
+ * return ok(data, warnings);
143
+ * ```
144
+ */
145
+ declare function splitIssues<C>(issues: Issue<C>[]): {
146
+ errors: Issue<C>[];
147
+ warnings: Issue<C>[];
148
+ };
149
+ /**
150
+ * Convert Zod validation errors to standardized Issue format for Result pattern.
151
+ *
152
+ * **Usage Guidelines:**
153
+ * - Use in schema validation functions to convert Zod errors to our Issue format
154
+ * - Allows custom error codes via Zod's params.code field in custom refinements
155
+ * - Falls back to SCHEMA_VALIDATION code for standard Zod validation errors
156
+ * - Typically used with severity: 'error' for blocking validation failures
157
+ *
158
+ * @param err - ZodError from failed schema validation
159
+ * @param severity - Issue severity level (defaults to 'error')
160
+ * @returns Array of Issues in our standardized format
161
+ *
162
+ * @example
163
+ * ```typescript
164
+ * // In a validation function
165
+ * const result = MySchema.safeParse(data);
166
+ * if (!result.success) {
167
+ * const issues = zodToIssues(result.error);
168
+ * return fail(issues);
169
+ * }
170
+ *
171
+ * // Custom error codes in Zod schema
172
+ * const schema = z.string().refine(val => val.length > 0, {
173
+ * message: 'Field is required',
174
+ * params: { code: LLMErrorCode.API_KEY_MISSING }
175
+ * });
176
+ * ```
177
+ */
178
+ declare function zodToIssues<C = unknown>(err: ZodError, severity?: 'error' | 'warning'): Issue<C>[];
179
+
180
+ export { EnvExpandedString, NonEmptyEnvExpandedString, NonEmptyTrimmed, OptionalURL, RequiredEnvURL, type Result, fail, hasErrors, ok, splitIssues, zodToIssues };
@@ -0,0 +1,82 @@
1
+ import { z } from "zod";
2
+ import { ErrorScope, ErrorType } from "../errors/types.js";
3
+ const NonEmptyTrimmed = z.string().transform((s) => s.trim()).refine((s) => s.length > 0, { message: "Required" });
4
+ function isValidUrl(s) {
5
+ try {
6
+ const u = new URL(s);
7
+ return u.protocol === "http:" || u.protocol === "https:";
8
+ } catch {
9
+ return false;
10
+ }
11
+ }
12
+ const OptionalURL = z.string().transform((s) => s.trim()).refine((s) => s === "" || isValidUrl(s), { message: "Invalid URL" }).transform((s) => s === "" ? void 0 : s).optional();
13
+ const EnvExpandedString = (env) => z.string().transform((input) => {
14
+ if (typeof input !== "string") return "";
15
+ const envToUse = env ?? process.env;
16
+ const out = input.replace(
17
+ /\$([A-Z_][A-Z0-9_]*)|\${([A-Z_][A-Z0-9_]*)}/gi,
18
+ (_, a, b) => envToUse[a || b] ?? ""
19
+ );
20
+ return out.trim();
21
+ });
22
+ const NonEmptyEnvExpandedString = (env) => EnvExpandedString(env).refine((s) => s.length > 0, {
23
+ message: "Value is required"
24
+ });
25
+ const RequiredEnvURL = (env) => EnvExpandedString(env).refine(
26
+ (s) => {
27
+ try {
28
+ const u = new URL(s);
29
+ return u.protocol === "http:" || u.protocol === "https:";
30
+ } catch {
31
+ return false;
32
+ }
33
+ },
34
+ { message: "Invalid URL" }
35
+ );
36
+ const ok = (data, issues = []) => ({
37
+ ok: true,
38
+ data,
39
+ issues
40
+ // warnings live alongside errors here
41
+ });
42
+ const fail = (issues) => ({
43
+ ok: false,
44
+ issues
45
+ });
46
+ function hasErrors(issues) {
47
+ return issues.some((i) => i.severity !== "warning");
48
+ }
49
+ function splitIssues(issues) {
50
+ return {
51
+ errors: issues.filter((i) => i.severity !== "warning"),
52
+ warnings: issues.filter((i) => i.severity === "warning")
53
+ };
54
+ }
55
+ function zodToIssues(err, severity = "error") {
56
+ return err.errors.map((e) => {
57
+ const params = e.params || {};
58
+ return {
59
+ code: params.code ?? "schema_validation",
60
+ message: e.message,
61
+ scope: params.scope ?? ErrorScope.AGENT,
62
+ // Fallback for non-custom Zod errors
63
+ // Treat plain Zod schema failures as USER errors by default
64
+ type: params.type ?? ErrorType.USER,
65
+ path: e.path,
66
+ severity,
67
+ context: params
68
+ };
69
+ });
70
+ }
71
+ export {
72
+ EnvExpandedString,
73
+ NonEmptyEnvExpandedString,
74
+ NonEmptyTrimmed,
75
+ OptionalURL,
76
+ RequiredEnvURL,
77
+ fail,
78
+ hasErrors,
79
+ ok,
80
+ splitIssues,
81
+ zodToIssues
82
+ };
@@ -0,0 +1,57 @@
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 safe_stringify_exports = {};
20
+ __export(safe_stringify_exports, {
21
+ safeStringify: () => safeStringify
22
+ });
23
+ module.exports = __toCommonJS(safe_stringify_exports);
24
+ var import_redactor = require("./redactor.js");
25
+ function safeStringify(value, maxLen = 1e3) {
26
+ try {
27
+ if (typeof value === "bigint") {
28
+ return value.toString();
29
+ }
30
+ const redacted = (0, import_redactor.redactSensitiveData)(value);
31
+ const str = JSON.stringify(redacted, (_, v) => {
32
+ if (v instanceof Error) {
33
+ return { name: v.name, message: v.message, stack: v.stack };
34
+ }
35
+ if (typeof v === "bigint") return v.toString();
36
+ return v;
37
+ });
38
+ const indicator = "\u2026(truncated)";
39
+ const limit = Number.isFinite(maxLen) && maxLen > 0 ? Math.floor(maxLen) : 1e3;
40
+ if (typeof str === "string") {
41
+ if (str.length <= limit) return str;
42
+ const sliceLen = Math.max(0, limit - indicator.length);
43
+ return `${str.slice(0, sliceLen)}${indicator}`;
44
+ }
45
+ return String(value);
46
+ } catch {
47
+ try {
48
+ return String(value);
49
+ } catch {
50
+ return "[Unserializable value]";
51
+ }
52
+ }
53
+ }
54
+ // Annotate the CommonJS export names for ESM import in node:
55
+ 0 && (module.exports = {
56
+ safeStringify
57
+ });
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Safe stringify that handles circular references, BigInt, and limits output size
3
+ * Also redacts sensitive data to prevent PII leaks in error messages
4
+ */
5
+ declare function safeStringify(value: unknown, maxLen?: number): string;
6
+
7
+ export { safeStringify };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Safe stringify that handles circular references, BigInt, and limits output size
3
+ * Also redacts sensitive data to prevent PII leaks in error messages
4
+ */
5
+ declare function safeStringify(value: unknown, maxLen?: number): string;
6
+
7
+ export { safeStringify };
@@ -0,0 +1,33 @@
1
+ import { redactSensitiveData } from "./redactor.js";
2
+ function safeStringify(value, maxLen = 1e3) {
3
+ try {
4
+ if (typeof value === "bigint") {
5
+ return value.toString();
6
+ }
7
+ const redacted = redactSensitiveData(value);
8
+ const str = JSON.stringify(redacted, (_, v) => {
9
+ if (v instanceof Error) {
10
+ return { name: v.name, message: v.message, stack: v.stack };
11
+ }
12
+ if (typeof v === "bigint") return v.toString();
13
+ return v;
14
+ });
15
+ const indicator = "\u2026(truncated)";
16
+ const limit = Number.isFinite(maxLen) && maxLen > 0 ? Math.floor(maxLen) : 1e3;
17
+ if (typeof str === "string") {
18
+ if (str.length <= limit) return str;
19
+ const sliceLen = Math.max(0, limit - indicator.length);
20
+ return `${str.slice(0, sliceLen)}${indicator}`;
21
+ }
22
+ return String(value);
23
+ } catch {
24
+ try {
25
+ return String(value);
26
+ } catch {
27
+ return "[Unserializable value]";
28
+ }
29
+ }
30
+ }
31
+ export {
32
+ safeStringify
33
+ };
@@ -0,0 +1,42 @@
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 schema_exports = {};
20
+ __export(schema_exports, {
21
+ convertZodSchemaToJsonSchema: () => convertZodSchemaToJsonSchema
22
+ });
23
+ module.exports = __toCommonJS(schema_exports);
24
+ var import_zod_to_json_schema = require("zod-to-json-schema");
25
+ var import_logger = require("../logger/index.js");
26
+ function convertZodSchemaToJsonSchema(zodSchema) {
27
+ try {
28
+ return (0, import_zod_to_json_schema.zodToJsonSchema)(zodSchema);
29
+ } catch (error) {
30
+ import_logger.logger.warn(
31
+ `Failed to convert Zod schema to JSON Schema: ${error instanceof Error ? error.message : String(error)}`
32
+ );
33
+ return {
34
+ type: "object",
35
+ properties: {}
36
+ };
37
+ }
38
+ }
39
+ // Annotate the CommonJS export names for ESM import in node:
40
+ 0 && (module.exports = {
41
+ convertZodSchemaToJsonSchema
42
+ });
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Convert Zod schema to JSON Schema format for tool parameters
3
+ */
4
+ declare function convertZodSchemaToJsonSchema(zodSchema: any): any;
5
+
6
+ export { convertZodSchemaToJsonSchema };
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Convert Zod schema to JSON Schema format for tool parameters
3
+ */
4
+ declare function convertZodSchemaToJsonSchema(zodSchema: any): any;
5
+
6
+ export { convertZodSchemaToJsonSchema };
@@ -0,0 +1,18 @@
1
+ import { zodToJsonSchema } from "zod-to-json-schema";
2
+ import { logger } from "../logger/index.js";
3
+ function convertZodSchemaToJsonSchema(zodSchema) {
4
+ try {
5
+ return zodToJsonSchema(zodSchema);
6
+ } catch (error) {
7
+ logger.warn(
8
+ `Failed to convert Zod schema to JSON Schema: ${error instanceof Error ? error.message : String(error)}`
9
+ );
10
+ return {
11
+ type: "object",
12
+ properties: {}
13
+ };
14
+ }
15
+ }
16
+ export {
17
+ convertZodSchemaToJsonSchema
18
+ };