@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,37 @@
1
+ import { z } from "zod";
2
+ const SearchHistoryInputSchema = z.object({
3
+ query: z.string().describe("The search query to find in conversation history"),
4
+ mode: z.enum(["messages", "sessions"]).describe(
5
+ 'Search mode: "messages" searches for individual messages, "sessions" finds sessions containing the query'
6
+ ),
7
+ sessionId: z.string().optional().describe('Optional: limit search to a specific session (only for mode="messages")'),
8
+ role: z.enum(["user", "assistant", "system", "tool"]).optional().describe('Optional: filter by message role (only for mode="messages")'),
9
+ limit: z.number().optional().default(20).describe(
10
+ 'Optional: maximum number of results to return (default: 20, only for mode="messages")'
11
+ ),
12
+ offset: z.number().optional().default(0).describe('Optional: offset for pagination (default: 0, only for mode="messages")')
13
+ });
14
+ function createSearchHistoryTool(searchService) {
15
+ return {
16
+ id: "search_history",
17
+ description: 'Search through conversation history across sessions. Use mode="messages" to search for specific messages, or mode="sessions" to find sessions containing the query. For message search, you can filter by sessionId (specific session), role (user/assistant/system/tool), limit results, and set pagination offset.',
18
+ inputSchema: SearchHistoryInputSchema,
19
+ // TODO: Enhance to get SearchService via ToolExecutionContext for better separation of concerns
20
+ execute: async (input, _context) => {
21
+ const { query, mode, sessionId, role, limit, offset } = input;
22
+ if (mode === "messages") {
23
+ const searchOptions = {};
24
+ if (sessionId !== void 0) searchOptions.sessionId = sessionId;
25
+ if (role !== void 0) searchOptions.role = role;
26
+ if (limit !== void 0) searchOptions.limit = limit;
27
+ if (offset !== void 0) searchOptions.offset = offset;
28
+ return await searchService.searchMessages(query, searchOptions);
29
+ } else {
30
+ return await searchService.searchSessions(query);
31
+ }
32
+ }
33
+ };
34
+ }
35
+ export {
36
+ createSearchHistoryTool
37
+ };
@@ -0,0 +1,24 @@
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 __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __reExport = (target, mod, secondTarget) => (__copyProps(target, mod, "default"), secondTarget && __copyProps(secondTarget, mod, "default"));
15
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
16
+ var internal_tools_exports = {};
17
+ module.exports = __toCommonJS(internal_tools_exports);
18
+ __reExport(internal_tools_exports, require("./provider.js"), module.exports);
19
+ __reExport(internal_tools_exports, require("./registry.js"), module.exports);
20
+ // Annotate the CommonJS export names for ESM import in node:
21
+ 0 && (module.exports = {
22
+ ...require("./provider.js"),
23
+ ...require("./registry.js")
24
+ });
@@ -0,0 +1,13 @@
1
+ export { InternalToolsProvider } from './provider.cjs';
2
+ export { INTERNAL_TOOL_NAMES, INTERNAL_TOOL_REGISTRY, InternalToolsServices, KnownInternalTool, getInternalToolInfo } from './registry.cjs';
3
+ import '../types.cjs';
4
+ import 'json-schema';
5
+ import 'zod';
6
+ import '../confirmation/types.cjs';
7
+ import '../confirmation/allowed-tools-provider/types.cjs';
8
+ import '../schemas.cjs';
9
+ import '../../search/search-service.cjs';
10
+ import '../../storage/backend/database-backend.cjs';
11
+ import '../../search/types.cjs';
12
+ import '../../context/types.cjs';
13
+ import '../../llm/types.cjs';
@@ -0,0 +1,13 @@
1
+ export { InternalToolsProvider } from './provider.js';
2
+ export { INTERNAL_TOOL_NAMES, INTERNAL_TOOL_REGISTRY, InternalToolsServices, KnownInternalTool, getInternalToolInfo } from './registry.js';
3
+ import '../types.js';
4
+ import 'json-schema';
5
+ import 'zod';
6
+ import '../confirmation/types.js';
7
+ import '../confirmation/allowed-tools-provider/types.js';
8
+ import '../schemas.js';
9
+ import '../../search/search-service.js';
10
+ import '../../storage/backend/database-backend.js';
11
+ import '../../search/types.js';
12
+ import '../../context/types.js';
13
+ import '../../llm/types.js';
@@ -0,0 +1,2 @@
1
+ export * from "./provider.js";
2
+ export * from "./registry.js";
@@ -0,0 +1,159 @@
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 provider_exports = {};
20
+ __export(provider_exports, {
21
+ InternalToolsProvider: () => InternalToolsProvider
22
+ });
23
+ module.exports = __toCommonJS(provider_exports);
24
+ var import_logger = require("../../logger/index.js");
25
+ var import_errors = require("../errors.js");
26
+ var import_schema = require("../../utils/schema.js");
27
+ var import_registry = require("./registry.js");
28
+ class InternalToolsProvider {
29
+ services;
30
+ tools = /* @__PURE__ */ new Map();
31
+ // ← Store original InternalTool
32
+ confirmationProvider;
33
+ config;
34
+ constructor(services, confirmationProvider, config = []) {
35
+ this.services = services;
36
+ this.confirmationProvider = confirmationProvider;
37
+ this.config = config;
38
+ import_logger.logger.debug("InternalToolsProvider initialized with config:", config);
39
+ }
40
+ /**
41
+ * Initialize the internal tools provider by registering all available internal tools
42
+ */
43
+ async initialize() {
44
+ import_logger.logger.info("Initializing InternalToolsProvider...");
45
+ try {
46
+ if (this.config.length === 0) {
47
+ import_logger.logger.info("No internal tools enabled by configuration");
48
+ return;
49
+ }
50
+ this.registerInternalTools();
51
+ const toolCount = this.tools.size;
52
+ import_logger.logger.info(`InternalToolsProvider initialized with ${toolCount} internal tools`);
53
+ } catch (error) {
54
+ import_logger.logger.error(
55
+ `Failed to initialize InternalToolsProvider: ${error instanceof Error ? error.message : String(error)}`
56
+ );
57
+ throw error;
58
+ }
59
+ }
60
+ /**
61
+ * Register all available internal tools based on available services and configuration
62
+ */
63
+ registerInternalTools() {
64
+ for (const toolName of this.config) {
65
+ const toolInfo = (0, import_registry.getInternalToolInfo)(toolName);
66
+ const missingServices = toolInfo.requiredServices.filter(
67
+ (serviceKey) => !this.services[serviceKey]
68
+ );
69
+ if (missingServices.length > 0) {
70
+ import_logger.logger.debug(
71
+ `Skipping ${toolName} internal tool - missing services: ${missingServices.join(", ")}`
72
+ );
73
+ continue;
74
+ }
75
+ try {
76
+ const tool = toolInfo.factory(this.services);
77
+ this.tools.set(toolName, tool);
78
+ import_logger.logger.debug(`Registered ${toolName} internal tool`);
79
+ } catch (error) {
80
+ import_logger.logger.error(
81
+ `Failed to register ${toolName} internal tool: ${error instanceof Error ? error.message : String(error)}`
82
+ );
83
+ }
84
+ }
85
+ }
86
+ /**
87
+ * Check if a specific tool is enabled by configuration
88
+ */
89
+ isToolEnabled(toolName) {
90
+ return this.config.includes(toolName);
91
+ }
92
+ /**
93
+ * Check if a tool exists
94
+ */
95
+ hasTool(toolName) {
96
+ return this.tools.has(toolName);
97
+ }
98
+ /**
99
+ * Execute an internal tool - confirmation is handled by ToolManager
100
+ */
101
+ async executeTool(toolName, args, sessionId) {
102
+ const tool = this.tools.get(toolName);
103
+ if (!tool) {
104
+ import_logger.logger.error(`\u274C No internal tool found: ${toolName}`);
105
+ import_logger.logger.debug(`Available internal tools: ${Array.from(this.tools.keys()).join(", ")}`);
106
+ throw import_errors.ToolError.notFound(toolName);
107
+ }
108
+ const validationResult = tool.inputSchema.safeParse(args);
109
+ if (!validationResult.success) {
110
+ import_logger.logger.error(
111
+ `\u274C Invalid arguments for tool ${toolName}:`,
112
+ validationResult.error.message
113
+ );
114
+ throw import_errors.ToolError.invalidName(
115
+ toolName,
116
+ `Invalid arguments: ${validationResult.error.message}`
117
+ );
118
+ }
119
+ try {
120
+ const context = { sessionId };
121
+ const result = await tool.execute(validationResult.data, context);
122
+ return result;
123
+ } catch (error) {
124
+ import_logger.logger.error(`\u274C Internal tool execution failed: ${toolName}`, error);
125
+ throw error;
126
+ }
127
+ }
128
+ /**
129
+ * Get all tools in ToolSet format with on-demand JSON Schema conversion
130
+ */
131
+ getAllTools() {
132
+ const toolSet = {};
133
+ for (const [name, tool] of this.tools) {
134
+ toolSet[name] = {
135
+ name: tool.id,
136
+ description: tool.description,
137
+ parameters: (0, import_schema.convertZodSchemaToJsonSchema)(tool.inputSchema)
138
+ // ← Convert on-demand
139
+ };
140
+ }
141
+ return toolSet;
142
+ }
143
+ /**
144
+ * Get tool names
145
+ */
146
+ getToolNames() {
147
+ return Array.from(this.tools.keys());
148
+ }
149
+ /**
150
+ * Get tool count
151
+ */
152
+ getToolCount() {
153
+ return this.tools.size;
154
+ }
155
+ }
156
+ // Annotate the CommonJS export names for ESM import in node:
157
+ 0 && (module.exports = {
158
+ InternalToolsProvider
159
+ });
@@ -0,0 +1,66 @@
1
+ import { ToolSet } from '../types.cjs';
2
+ import { ToolConfirmationProvider } from '../confirmation/types.cjs';
3
+ import { InternalToolsServices } from './registry.cjs';
4
+ import { InternalToolsConfig } from '../schemas.cjs';
5
+ import 'json-schema';
6
+ import 'zod';
7
+ import '../confirmation/allowed-tools-provider/types.cjs';
8
+ import '../../search/search-service.cjs';
9
+ import '../../storage/backend/database-backend.cjs';
10
+ import '../../search/types.cjs';
11
+ import '../../context/types.cjs';
12
+ import '../../llm/types.cjs';
13
+
14
+ /**
15
+ * Provider for built-in internal tools that are part of the core system
16
+ *
17
+ * This provider manages internal tools that are shipped with the core system
18
+ * and need access to core services like SearchService, SessionManager, etc.
19
+ *
20
+ * Benefits:
21
+ * - Clean separation: ToolManager doesn't need to know about specific services
22
+ * - Easy to extend: Just add new tools and services as needed
23
+ * - Lightweight: Direct tool management without complex infrastructure
24
+ * - No unnecessary ProcessedInternalTool wrapper - uses InternalTool directly
25
+ */
26
+ declare class InternalToolsProvider {
27
+ private services;
28
+ private tools;
29
+ private confirmationProvider;
30
+ private config;
31
+ constructor(services: InternalToolsServices, confirmationProvider: ToolConfirmationProvider, config?: InternalToolsConfig);
32
+ /**
33
+ * Initialize the internal tools provider by registering all available internal tools
34
+ */
35
+ initialize(): Promise<void>;
36
+ /**
37
+ * Register all available internal tools based on available services and configuration
38
+ */
39
+ private registerInternalTools;
40
+ /**
41
+ * Check if a specific tool is enabled by configuration
42
+ */
43
+ private isToolEnabled;
44
+ /**
45
+ * Check if a tool exists
46
+ */
47
+ hasTool(toolName: string): boolean;
48
+ /**
49
+ * Execute an internal tool - confirmation is handled by ToolManager
50
+ */
51
+ executeTool(toolName: string, args: Record<string, unknown>, sessionId?: string): Promise<unknown>;
52
+ /**
53
+ * Get all tools in ToolSet format with on-demand JSON Schema conversion
54
+ */
55
+ getAllTools(): ToolSet;
56
+ /**
57
+ * Get tool names
58
+ */
59
+ getToolNames(): string[];
60
+ /**
61
+ * Get tool count
62
+ */
63
+ getToolCount(): number;
64
+ }
65
+
66
+ export { InternalToolsProvider };
@@ -0,0 +1,66 @@
1
+ import { ToolSet } from '../types.js';
2
+ import { ToolConfirmationProvider } from '../confirmation/types.js';
3
+ import { InternalToolsServices } from './registry.js';
4
+ import { InternalToolsConfig } from '../schemas.js';
5
+ import 'json-schema';
6
+ import 'zod';
7
+ import '../confirmation/allowed-tools-provider/types.js';
8
+ import '../../search/search-service.js';
9
+ import '../../storage/backend/database-backend.js';
10
+ import '../../search/types.js';
11
+ import '../../context/types.js';
12
+ import '../../llm/types.js';
13
+
14
+ /**
15
+ * Provider for built-in internal tools that are part of the core system
16
+ *
17
+ * This provider manages internal tools that are shipped with the core system
18
+ * and need access to core services like SearchService, SessionManager, etc.
19
+ *
20
+ * Benefits:
21
+ * - Clean separation: ToolManager doesn't need to know about specific services
22
+ * - Easy to extend: Just add new tools and services as needed
23
+ * - Lightweight: Direct tool management without complex infrastructure
24
+ * - No unnecessary ProcessedInternalTool wrapper - uses InternalTool directly
25
+ */
26
+ declare class InternalToolsProvider {
27
+ private services;
28
+ private tools;
29
+ private confirmationProvider;
30
+ private config;
31
+ constructor(services: InternalToolsServices, confirmationProvider: ToolConfirmationProvider, config?: InternalToolsConfig);
32
+ /**
33
+ * Initialize the internal tools provider by registering all available internal tools
34
+ */
35
+ initialize(): Promise<void>;
36
+ /**
37
+ * Register all available internal tools based on available services and configuration
38
+ */
39
+ private registerInternalTools;
40
+ /**
41
+ * Check if a specific tool is enabled by configuration
42
+ */
43
+ private isToolEnabled;
44
+ /**
45
+ * Check if a tool exists
46
+ */
47
+ hasTool(toolName: string): boolean;
48
+ /**
49
+ * Execute an internal tool - confirmation is handled by ToolManager
50
+ */
51
+ executeTool(toolName: string, args: Record<string, unknown>, sessionId?: string): Promise<unknown>;
52
+ /**
53
+ * Get all tools in ToolSet format with on-demand JSON Schema conversion
54
+ */
55
+ getAllTools(): ToolSet;
56
+ /**
57
+ * Get tool names
58
+ */
59
+ getToolNames(): string[];
60
+ /**
61
+ * Get tool count
62
+ */
63
+ getToolCount(): number;
64
+ }
65
+
66
+ export { InternalToolsProvider };
@@ -0,0 +1,135 @@
1
+ import { logger } from "../../logger/index.js";
2
+ import { ToolError } from "../errors.js";
3
+ import { convertZodSchemaToJsonSchema } from "../../utils/schema.js";
4
+ import { getInternalToolInfo } from "./registry.js";
5
+ class InternalToolsProvider {
6
+ services;
7
+ tools = /* @__PURE__ */ new Map();
8
+ // ← Store original InternalTool
9
+ confirmationProvider;
10
+ config;
11
+ constructor(services, confirmationProvider, config = []) {
12
+ this.services = services;
13
+ this.confirmationProvider = confirmationProvider;
14
+ this.config = config;
15
+ logger.debug("InternalToolsProvider initialized with config:", config);
16
+ }
17
+ /**
18
+ * Initialize the internal tools provider by registering all available internal tools
19
+ */
20
+ async initialize() {
21
+ logger.info("Initializing InternalToolsProvider...");
22
+ try {
23
+ if (this.config.length === 0) {
24
+ logger.info("No internal tools enabled by configuration");
25
+ return;
26
+ }
27
+ this.registerInternalTools();
28
+ const toolCount = this.tools.size;
29
+ logger.info(`InternalToolsProvider initialized with ${toolCount} internal tools`);
30
+ } catch (error) {
31
+ logger.error(
32
+ `Failed to initialize InternalToolsProvider: ${error instanceof Error ? error.message : String(error)}`
33
+ );
34
+ throw error;
35
+ }
36
+ }
37
+ /**
38
+ * Register all available internal tools based on available services and configuration
39
+ */
40
+ registerInternalTools() {
41
+ for (const toolName of this.config) {
42
+ const toolInfo = getInternalToolInfo(toolName);
43
+ const missingServices = toolInfo.requiredServices.filter(
44
+ (serviceKey) => !this.services[serviceKey]
45
+ );
46
+ if (missingServices.length > 0) {
47
+ logger.debug(
48
+ `Skipping ${toolName} internal tool - missing services: ${missingServices.join(", ")}`
49
+ );
50
+ continue;
51
+ }
52
+ try {
53
+ const tool = toolInfo.factory(this.services);
54
+ this.tools.set(toolName, tool);
55
+ logger.debug(`Registered ${toolName} internal tool`);
56
+ } catch (error) {
57
+ logger.error(
58
+ `Failed to register ${toolName} internal tool: ${error instanceof Error ? error.message : String(error)}`
59
+ );
60
+ }
61
+ }
62
+ }
63
+ /**
64
+ * Check if a specific tool is enabled by configuration
65
+ */
66
+ isToolEnabled(toolName) {
67
+ return this.config.includes(toolName);
68
+ }
69
+ /**
70
+ * Check if a tool exists
71
+ */
72
+ hasTool(toolName) {
73
+ return this.tools.has(toolName);
74
+ }
75
+ /**
76
+ * Execute an internal tool - confirmation is handled by ToolManager
77
+ */
78
+ async executeTool(toolName, args, sessionId) {
79
+ const tool = this.tools.get(toolName);
80
+ if (!tool) {
81
+ logger.error(`\u274C No internal tool found: ${toolName}`);
82
+ logger.debug(`Available internal tools: ${Array.from(this.tools.keys()).join(", ")}`);
83
+ throw ToolError.notFound(toolName);
84
+ }
85
+ const validationResult = tool.inputSchema.safeParse(args);
86
+ if (!validationResult.success) {
87
+ logger.error(
88
+ `\u274C Invalid arguments for tool ${toolName}:`,
89
+ validationResult.error.message
90
+ );
91
+ throw ToolError.invalidName(
92
+ toolName,
93
+ `Invalid arguments: ${validationResult.error.message}`
94
+ );
95
+ }
96
+ try {
97
+ const context = { sessionId };
98
+ const result = await tool.execute(validationResult.data, context);
99
+ return result;
100
+ } catch (error) {
101
+ logger.error(`\u274C Internal tool execution failed: ${toolName}`, error);
102
+ throw error;
103
+ }
104
+ }
105
+ /**
106
+ * Get all tools in ToolSet format with on-demand JSON Schema conversion
107
+ */
108
+ getAllTools() {
109
+ const toolSet = {};
110
+ for (const [name, tool] of this.tools) {
111
+ toolSet[name] = {
112
+ name: tool.id,
113
+ description: tool.description,
114
+ parameters: convertZodSchemaToJsonSchema(tool.inputSchema)
115
+ // ← Convert on-demand
116
+ };
117
+ }
118
+ return toolSet;
119
+ }
120
+ /**
121
+ * Get tool names
122
+ */
123
+ getToolNames() {
124
+ return Array.from(this.tools.keys());
125
+ }
126
+ /**
127
+ * Get tool count
128
+ */
129
+ getToolCount() {
130
+ return this.tools.size;
131
+ }
132
+ }
133
+ export {
134
+ InternalToolsProvider
135
+ };
@@ -0,0 +1,43 @@
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
+ INTERNAL_TOOL_NAMES: () => INTERNAL_TOOL_NAMES,
22
+ INTERNAL_TOOL_REGISTRY: () => INTERNAL_TOOL_REGISTRY,
23
+ getInternalToolInfo: () => getInternalToolInfo
24
+ });
25
+ module.exports = __toCommonJS(registry_exports);
26
+ var import_search_history_tool = require("./implementations/search-history-tool.js");
27
+ const INTERNAL_TOOL_NAMES = ["search_history"];
28
+ const INTERNAL_TOOL_REGISTRY = {
29
+ search_history: {
30
+ factory: (services) => (0, import_search_history_tool.createSearchHistoryTool)(services.searchService),
31
+ requiredServices: ["searchService"]
32
+ }
33
+ // Add new tools here - must match INTERNAL_TOOL_NAMES array above
34
+ };
35
+ function getInternalToolInfo(toolName) {
36
+ return INTERNAL_TOOL_REGISTRY[toolName];
37
+ }
38
+ // Annotate the CommonJS export names for ESM import in node:
39
+ 0 && (module.exports = {
40
+ INTERNAL_TOOL_NAMES,
41
+ INTERNAL_TOOL_REGISTRY,
42
+ getInternalToolInfo
43
+ });
@@ -0,0 +1,45 @@
1
+ import { InternalTool } from '../types.cjs';
2
+ import { SearchService } from '../../search/search-service.cjs';
3
+ import 'json-schema';
4
+ import 'zod';
5
+ import '../../storage/backend/database-backend.cjs';
6
+ import '../../search/types.cjs';
7
+ import '../../context/types.cjs';
8
+ import '../../llm/types.cjs';
9
+
10
+ /**
11
+ * Services available to internal tools
12
+ * Add new services here as needed for internal tools
13
+ */
14
+ interface InternalToolsServices {
15
+ searchService?: SearchService;
16
+ }
17
+ /**
18
+ * Internal tool factory function type
19
+ */
20
+ type InternalToolFactory = (services: InternalToolsServices) => InternalTool;
21
+ /**
22
+ * Internal tool names - Manual array preserves literal types for z.enum()
23
+ * Add new tool names here first, then implement in registry below
24
+ */
25
+ declare const INTERNAL_TOOL_NAMES: readonly ["search_history"];
26
+ /**
27
+ * Derive type from names array - preserves literal union
28
+ */
29
+ type KnownInternalTool = (typeof INTERNAL_TOOL_NAMES)[number];
30
+ /**
31
+ * Internal tool registry - Must match names array exactly (TypeScript enforces this)
32
+ */
33
+ declare const INTERNAL_TOOL_REGISTRY: Record<KnownInternalTool, {
34
+ factory: InternalToolFactory;
35
+ requiredServices: readonly (keyof InternalToolsServices)[];
36
+ }>;
37
+ /**
38
+ * Type-safe registry access
39
+ */
40
+ declare function getInternalToolInfo(toolName: KnownInternalTool): {
41
+ factory: InternalToolFactory;
42
+ requiredServices: readonly (keyof InternalToolsServices)[];
43
+ };
44
+
45
+ export { INTERNAL_TOOL_NAMES, INTERNAL_TOOL_REGISTRY, type InternalToolsServices, type KnownInternalTool, getInternalToolInfo };
@@ -0,0 +1,45 @@
1
+ import { InternalTool } from '../types.js';
2
+ import { SearchService } from '../../search/search-service.js';
3
+ import 'json-schema';
4
+ import 'zod';
5
+ import '../../storage/backend/database-backend.js';
6
+ import '../../search/types.js';
7
+ import '../../context/types.js';
8
+ import '../../llm/types.js';
9
+
10
+ /**
11
+ * Services available to internal tools
12
+ * Add new services here as needed for internal tools
13
+ */
14
+ interface InternalToolsServices {
15
+ searchService?: SearchService;
16
+ }
17
+ /**
18
+ * Internal tool factory function type
19
+ */
20
+ type InternalToolFactory = (services: InternalToolsServices) => InternalTool;
21
+ /**
22
+ * Internal tool names - Manual array preserves literal types for z.enum()
23
+ * Add new tool names here first, then implement in registry below
24
+ */
25
+ declare const INTERNAL_TOOL_NAMES: readonly ["search_history"];
26
+ /**
27
+ * Derive type from names array - preserves literal union
28
+ */
29
+ type KnownInternalTool = (typeof INTERNAL_TOOL_NAMES)[number];
30
+ /**
31
+ * Internal tool registry - Must match names array exactly (TypeScript enforces this)
32
+ */
33
+ declare const INTERNAL_TOOL_REGISTRY: Record<KnownInternalTool, {
34
+ factory: InternalToolFactory;
35
+ requiredServices: readonly (keyof InternalToolsServices)[];
36
+ }>;
37
+ /**
38
+ * Type-safe registry access
39
+ */
40
+ declare function getInternalToolInfo(toolName: KnownInternalTool): {
41
+ factory: InternalToolFactory;
42
+ requiredServices: readonly (keyof InternalToolsServices)[];
43
+ };
44
+
45
+ export { INTERNAL_TOOL_NAMES, INTERNAL_TOOL_REGISTRY, type InternalToolsServices, type KnownInternalTool, getInternalToolInfo };
@@ -0,0 +1,17 @@
1
+ import { createSearchHistoryTool } from "./implementations/search-history-tool.js";
2
+ const INTERNAL_TOOL_NAMES = ["search_history"];
3
+ const INTERNAL_TOOL_REGISTRY = {
4
+ search_history: {
5
+ factory: (services) => createSearchHistoryTool(services.searchService),
6
+ requiredServices: ["searchService"]
7
+ }
8
+ // Add new tools here - must match INTERNAL_TOOL_NAMES array above
9
+ };
10
+ function getInternalToolInfo(toolName) {
11
+ return INTERNAL_TOOL_REGISTRY[toolName];
12
+ }
13
+ export {
14
+ INTERNAL_TOOL_NAMES,
15
+ INTERNAL_TOOL_REGISTRY,
16
+ getInternalToolInfo
17
+ };