@dexto/core 1.1.10 → 1.1.11

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 (812) hide show
  1. package/dist/Dexto.cjs +261 -0
  2. package/dist/Dexto.d.ts +212 -0
  3. package/dist/Dexto.d.ts.map +1 -0
  4. package/dist/Dexto.js +236 -0
  5. package/dist/agent/DextoAgent.cjs +428 -123
  6. package/dist/agent/DextoAgent.d.ts +170 -102
  7. package/dist/agent/DextoAgent.d.ts.map +1 -0
  8. package/dist/agent/DextoAgent.js +428 -123
  9. package/dist/agent/agentCard.d.ts +4 -7
  10. package/dist/agent/agentCard.d.ts.map +1 -0
  11. package/dist/agent/error-codes.cjs +2 -0
  12. package/dist/agent/error-codes.d.ts +4 -3
  13. package/dist/agent/error-codes.d.ts.map +1 -0
  14. package/dist/agent/error-codes.js +2 -0
  15. package/dist/agent/errors.cjs +13 -0
  16. package/dist/agent/errors.d.ts +6 -17
  17. package/dist/agent/errors.d.ts.map +1 -0
  18. package/dist/agent/errors.js +13 -0
  19. package/dist/agent/index.cjs +3 -0
  20. package/dist/agent/index.d.ts +6 -57
  21. package/dist/agent/index.d.ts.map +1 -0
  22. package/dist/agent/index.js +2 -0
  23. package/dist/agent/registry/error-codes.cjs +2 -0
  24. package/dist/agent/registry/error-codes.d.ts +4 -3
  25. package/dist/agent/registry/error-codes.d.ts.map +1 -0
  26. package/dist/agent/registry/error-codes.js +2 -0
  27. package/dist/agent/registry/errors.cjs +58 -28
  28. package/dist/agent/registry/errors.d.ts +32 -36
  29. package/dist/agent/registry/errors.d.ts.map +1 -0
  30. package/dist/agent/registry/errors.js +58 -28
  31. package/dist/agent/registry/registry.cjs +242 -54
  32. package/dist/agent/registry/registry.d.ts +84 -21
  33. package/dist/agent/registry/registry.d.ts.map +1 -0
  34. package/dist/agent/registry/registry.js +251 -55
  35. package/dist/agent/registry/types.cjs +36 -3
  36. package/dist/agent/registry/types.d.ts +66 -24
  37. package/dist/agent/registry/types.d.ts.map +1 -0
  38. package/dist/agent/registry/types.js +33 -2
  39. package/dist/agent/registry/user-registry.cjs +140 -0
  40. package/dist/agent/registry/user-registry.d.ts +34 -0
  41. package/dist/agent/registry/user-registry.d.ts.map +1 -0
  42. package/dist/agent/registry/user-registry.js +104 -0
  43. package/dist/agent/schemas.cjs +17 -3
  44. package/dist/agent/schemas.d.ts +685 -463
  45. package/dist/agent/schemas.d.ts.map +1 -0
  46. package/dist/agent/schemas.js +17 -3
  47. package/dist/agent/state-manager.d.ts +7 -12
  48. package/dist/agent/state-manager.d.ts.map +1 -0
  49. package/dist/approval/error-codes.cjs +44 -0
  50. package/dist/approval/error-codes.d.ts +21 -0
  51. package/dist/approval/error-codes.d.ts.map +1 -0
  52. package/dist/approval/error-codes.js +20 -0
  53. package/dist/approval/errors.cjs +251 -0
  54. package/dist/approval/errors.d.ts +110 -0
  55. package/dist/approval/errors.d.ts.map +1 -0
  56. package/dist/approval/errors.js +227 -0
  57. package/dist/approval/index.cjs +84 -0
  58. package/dist/approval/index.d.ts +12 -0
  59. package/dist/approval/index.d.ts.map +1 -0
  60. package/dist/approval/index.js +55 -0
  61. package/dist/approval/manager.cjs +159 -0
  62. package/dist/approval/manager.d.ts +109 -0
  63. package/dist/approval/manager.d.ts.map +1 -0
  64. package/dist/approval/manager.js +135 -0
  65. package/dist/approval/providers/event-based-approval-provider.cjs +156 -0
  66. package/dist/approval/providers/event-based-approval-provider.d.ts +39 -0
  67. package/dist/approval/providers/event-based-approval-provider.d.ts.map +1 -0
  68. package/dist/approval/providers/event-based-approval-provider.js +132 -0
  69. package/dist/approval/providers/factory.cjs +38 -0
  70. package/dist/approval/providers/factory.d.ts +12 -0
  71. package/dist/approval/providers/factory.d.ts.map +1 -0
  72. package/dist/approval/providers/factory.js +14 -0
  73. package/dist/approval/providers/noop-approval-provider.cjs +54 -0
  74. package/dist/approval/providers/noop-approval-provider.d.ts +18 -0
  75. package/dist/approval/providers/noop-approval-provider.d.ts.map +1 -0
  76. package/dist/approval/providers/noop-approval-provider.js +30 -0
  77. package/dist/approval/schemas.cjs +168 -0
  78. package/dist/approval/schemas.d.ts +602 -0
  79. package/dist/approval/schemas.d.ts.map +1 -0
  80. package/dist/approval/schemas.js +126 -0
  81. package/dist/approval/types.cjs +41 -0
  82. package/dist/approval/types.d.ts +140 -0
  83. package/dist/approval/types.d.ts.map +1 -0
  84. package/dist/approval/types.js +16 -0
  85. package/dist/config/agent-resolver.d.ts +3 -4
  86. package/dist/config/agent-resolver.d.ts.map +1 -0
  87. package/dist/config/error-codes.d.ts +2 -3
  88. package/dist/config/error-codes.d.ts.map +1 -0
  89. package/dist/config/errors.d.ts +3 -18
  90. package/dist/config/errors.d.ts.map +1 -0
  91. package/dist/config/index.d.ts +4 -7
  92. package/dist/config/index.d.ts.map +1 -0
  93. package/dist/config/loader.d.ts +2 -5
  94. package/dist/config/loader.d.ts.map +1 -0
  95. package/dist/config/writer.d.ts +8 -11
  96. package/dist/config/writer.d.ts.map +1 -0
  97. package/dist/context/compression/middle-removal.d.ts +3 -6
  98. package/dist/context/compression/middle-removal.d.ts.map +1 -0
  99. package/dist/context/compression/oldest-removal.d.ts +3 -6
  100. package/dist/context/compression/oldest-removal.d.ts.map +1 -0
  101. package/dist/context/compression/types.d.ts +2 -5
  102. package/dist/context/compression/types.d.ts.map +1 -0
  103. package/dist/context/error-codes.d.ts +2 -3
  104. package/dist/context/error-codes.d.ts.map +1 -0
  105. package/dist/context/errors.d.ts +3 -18
  106. package/dist/context/errors.d.ts.map +1 -0
  107. package/dist/context/index.cjs +11 -0
  108. package/dist/context/index.d.ts +4 -19
  109. package/dist/context/index.d.ts.map +1 -0
  110. package/dist/context/index.js +5 -0
  111. package/dist/context/manager.cjs +121 -24
  112. package/dist/context/manager.d.ts +28 -20
  113. package/dist/context/manager.d.ts.map +1 -0
  114. package/dist/context/manager.js +127 -25
  115. package/dist/context/media-helpers.cjs +40 -0
  116. package/dist/context/media-helpers.d.ts +15 -0
  117. package/dist/context/media-helpers.d.ts.map +1 -0
  118. package/dist/context/media-helpers.js +15 -0
  119. package/dist/context/types.d.ts +27 -10
  120. package/dist/context/types.d.ts.map +1 -0
  121. package/dist/context/utils.cjs +811 -71
  122. package/dist/context/utils.d.ts +78 -15
  123. package/dist/context/utils.d.ts.map +1 -0
  124. package/dist/context/utils.js +802 -70
  125. package/dist/errors/DextoBaseError.d.ts +2 -3
  126. package/dist/errors/DextoBaseError.d.ts.map +1 -0
  127. package/dist/errors/DextoRuntimeError.d.ts +5 -16
  128. package/dist/errors/DextoRuntimeError.d.ts.map +1 -0
  129. package/dist/errors/DextoValidationError.d.ts +3 -16
  130. package/dist/errors/DextoValidationError.d.ts.map +1 -0
  131. package/dist/errors/index.d.ts +7 -14
  132. package/dist/errors/index.d.ts.map +1 -0
  133. package/dist/errors/result-bridge.d.ts +3 -18
  134. package/dist/errors/result-bridge.d.ts.map +1 -0
  135. package/dist/errors/types.cjs +4 -0
  136. package/dist/errors/types.d.ts +27 -20
  137. package/dist/errors/types.d.ts.map +1 -0
  138. package/dist/errors/types.js +4 -0
  139. package/dist/events/index.cjs +8 -3
  140. package/dist/events/index.d.ts +63 -35
  141. package/dist/events/index.d.ts.map +1 -0
  142. package/dist/events/index.js +8 -3
  143. package/dist/index.browser.cjs +36 -0
  144. package/dist/index.browser.d.ts +24 -51
  145. package/dist/index.browser.d.ts.map +1 -0
  146. package/dist/index.browser.js +34 -1
  147. package/dist/index.cjs +29 -1
  148. package/dist/index.d.ts +33 -89
  149. package/dist/index.d.ts.map +1 -0
  150. package/dist/index.js +14 -0
  151. package/dist/llm/error-codes.d.ts +2 -3
  152. package/dist/llm/error-codes.d.ts.map +1 -0
  153. package/dist/llm/errors.d.ts +3 -18
  154. package/dist/llm/errors.d.ts.map +1 -0
  155. package/dist/llm/formatters/anthropic.d.ts +2 -4
  156. package/dist/llm/formatters/anthropic.d.ts.map +1 -0
  157. package/dist/llm/formatters/factory.d.ts +3 -6
  158. package/dist/llm/formatters/factory.d.ts.map +1 -0
  159. package/dist/llm/formatters/openai.d.ts +2 -4
  160. package/dist/llm/formatters/openai.d.ts.map +1 -0
  161. package/dist/llm/formatters/types.d.ts +2 -4
  162. package/dist/llm/formatters/types.d.ts.map +1 -0
  163. package/dist/llm/formatters/vercel.d.ts +6 -7
  164. package/dist/llm/formatters/vercel.d.ts.map +1 -0
  165. package/dist/llm/index.d.ts +8 -39
  166. package/dist/llm/index.d.ts.map +1 -0
  167. package/dist/llm/registry.cjs +15 -1
  168. package/dist/llm/registry.d.ts +26 -29
  169. package/dist/llm/registry.d.ts.map +1 -0
  170. package/dist/llm/registry.js +15 -1
  171. package/dist/llm/resolver.d.ts +6 -20
  172. package/dist/llm/resolver.d.ts.map +1 -0
  173. package/dist/llm/schemas.d.ts +15 -17
  174. package/dist/llm/schemas.d.ts.map +1 -0
  175. package/dist/llm/services/anthropic.cjs +24 -11
  176. package/dist/llm/services/anthropic.d.ts +7 -32
  177. package/dist/llm/services/anthropic.d.ts.map +1 -0
  178. package/dist/llm/services/anthropic.js +24 -11
  179. package/dist/llm/services/factory.cjs +21 -15
  180. package/dist/llm/services/factory.d.ts +5 -32
  181. package/dist/llm/services/factory.d.ts.map +1 -0
  182. package/dist/llm/services/factory.js +21 -15
  183. package/dist/llm/services/index.d.ts +2 -21
  184. package/dist/llm/services/index.d.ts.map +1 -0
  185. package/dist/llm/services/openai.cjs +33 -16
  186. package/dist/llm/services/openai.d.ts +7 -32
  187. package/dist/llm/services/openai.d.ts.map +1 -0
  188. package/dist/llm/services/openai.js +33 -16
  189. package/dist/llm/services/test-utils.integration.cjs +2 -2
  190. package/dist/llm/services/test-utils.integration.d.ts +8 -49
  191. package/dist/llm/services/test-utils.integration.d.ts.map +1 -0
  192. package/dist/llm/services/test-utils.integration.js +2 -2
  193. package/dist/llm/services/types.d.ts +5 -22
  194. package/dist/llm/services/types.d.ts.map +1 -0
  195. package/dist/llm/services/vercel.cjs +52 -21
  196. package/dist/llm/services/vercel.d.ts +12 -35
  197. package/dist/llm/services/vercel.d.ts.map +1 -0
  198. package/dist/llm/services/vercel.js +53 -22
  199. package/dist/llm/tokenizer/anthropic.d.ts +2 -4
  200. package/dist/llm/tokenizer/anthropic.d.ts.map +1 -0
  201. package/dist/llm/tokenizer/default.d.ts +2 -4
  202. package/dist/llm/tokenizer/default.d.ts.map +1 -0
  203. package/dist/llm/tokenizer/factory.d.ts +3 -5
  204. package/dist/llm/tokenizer/factory.d.ts.map +1 -0
  205. package/dist/llm/tokenizer/google.d.ts +2 -4
  206. package/dist/llm/tokenizer/google.d.ts.map +1 -0
  207. package/dist/llm/tokenizer/openai.d.ts +2 -4
  208. package/dist/llm/tokenizer/openai.d.ts.map +1 -0
  209. package/dist/llm/tokenizer/types.d.ts +3 -4
  210. package/dist/llm/tokenizer/types.d.ts.map +1 -0
  211. package/dist/llm/types.d.ts +9 -10
  212. package/dist/llm/types.d.ts.map +1 -0
  213. package/dist/llm/validation.d.ts +8 -23
  214. package/dist/llm/validation.d.ts.map +1 -0
  215. package/dist/logger/browser.d.ts +4 -5
  216. package/dist/logger/browser.d.ts.map +1 -0
  217. package/dist/logger/index.d.ts +2 -1
  218. package/dist/logger/index.d.ts.map +1 -0
  219. package/dist/logger/logger.cjs +35 -7
  220. package/dist/logger/logger.d.ts +5 -5
  221. package/dist/logger/logger.d.ts.map +1 -0
  222. package/dist/logger/logger.js +35 -7
  223. package/dist/mcp/error-codes.d.ts +2 -3
  224. package/dist/mcp/error-codes.d.ts.map +1 -0
  225. package/dist/mcp/errors.d.ts +2 -17
  226. package/dist/mcp/errors.d.ts.map +1 -0
  227. package/dist/mcp/index.d.ts +8 -26
  228. package/dist/mcp/index.d.ts.map +1 -0
  229. package/dist/mcp/manager.cjs +462 -114
  230. package/dist/mcp/manager.d.ts +117 -58
  231. package/dist/mcp/manager.d.ts.map +1 -0
  232. package/dist/mcp/manager.js +462 -114
  233. package/dist/mcp/mcp-client.cjs +172 -10
  234. package/dist/mcp/mcp-client.d.ts +36 -14
  235. package/dist/mcp/mcp-client.d.ts.map +1 -0
  236. package/dist/mcp/mcp-client.js +176 -10
  237. package/dist/mcp/resolver.d.ts +5 -20
  238. package/dist/mcp/resolver.d.ts.map +1 -0
  239. package/dist/mcp/schemas.cjs +13 -5
  240. package/dist/mcp/schemas.d.ts +31 -28
  241. package/dist/mcp/schemas.d.ts.map +1 -0
  242. package/dist/mcp/schemas.js +10 -5
  243. package/dist/mcp/types.d.ts +18 -10
  244. package/dist/mcp/types.d.ts.map +1 -0
  245. package/dist/memory/error-codes.cjs +39 -0
  246. package/dist/memory/error-codes.d.ts +15 -0
  247. package/dist/memory/error-codes.d.ts.map +1 -0
  248. package/dist/memory/error-codes.js +15 -0
  249. package/dist/memory/errors.cjs +112 -0
  250. package/dist/memory/errors.d.ts +16 -0
  251. package/dist/memory/errors.d.ts.map +1 -0
  252. package/dist/memory/errors.js +88 -0
  253. package/dist/memory/index.cjs +43 -0
  254. package/dist/memory/index.d.ts +6 -0
  255. package/dist/memory/index.d.ts.map +1 -0
  256. package/dist/memory/index.js +18 -0
  257. package/dist/memory/manager.cjs +214 -0
  258. package/dist/memory/manager.d.ts +56 -0
  259. package/dist/memory/manager.d.ts.map +1 -0
  260. package/dist/memory/manager.js +195 -0
  261. package/dist/memory/schemas.cjs +82 -0
  262. package/dist/memory/schemas.d.ts +129 -0
  263. package/dist/memory/schemas.d.ts.map +1 -0
  264. package/dist/memory/schemas.js +53 -0
  265. package/dist/memory/types.d.ts +76 -0
  266. package/dist/memory/types.d.ts.map +1 -0
  267. package/dist/plugins/builtins/content-policy.cjs +112 -0
  268. package/dist/plugins/builtins/content-policy.d.ts +26 -0
  269. package/dist/plugins/builtins/content-policy.d.ts.map +1 -0
  270. package/dist/plugins/builtins/content-policy.js +88 -0
  271. package/dist/plugins/builtins/response-sanitizer.cjs +102 -0
  272. package/dist/plugins/builtins/response-sanitizer.d.ts +25 -0
  273. package/dist/plugins/builtins/response-sanitizer.d.ts.map +1 -0
  274. package/dist/plugins/builtins/response-sanitizer.js +78 -0
  275. package/dist/plugins/error-codes.cjs +39 -0
  276. package/dist/plugins/error-codes.d.ts +26 -0
  277. package/dist/plugins/error-codes.d.ts.map +1 -0
  278. package/dist/plugins/error-codes.js +15 -0
  279. package/dist/plugins/index.cjs +54 -0
  280. package/dist/plugins/index.d.ts +19 -0
  281. package/dist/plugins/index.d.ts.map +1 -0
  282. package/dist/plugins/index.js +24 -0
  283. package/dist/plugins/loader.cjs +151 -0
  284. package/dist/plugins/loader.d.ts +30 -0
  285. package/dist/plugins/loader.d.ts.map +1 -0
  286. package/dist/plugins/loader.js +124 -0
  287. package/dist/plugins/manager.cjs +386 -0
  288. package/dist/plugins/manager.d.ts +97 -0
  289. package/dist/plugins/manager.d.ts.map +1 -0
  290. package/dist/plugins/manager.js +362 -0
  291. package/dist/plugins/registrations/builtins.cjs +51 -0
  292. package/dist/plugins/registrations/builtins.d.ts +17 -0
  293. package/dist/plugins/registrations/builtins.d.ts.map +1 -0
  294. package/dist/plugins/registrations/builtins.js +27 -0
  295. package/dist/plugins/schemas.cjs +61 -0
  296. package/dist/plugins/schemas.d.ts +138 -0
  297. package/dist/plugins/schemas.d.ts.map +1 -0
  298. package/dist/plugins/schemas.js +35 -0
  299. package/dist/plugins/types.d.ts +152 -0
  300. package/dist/plugins/types.d.ts.map +1 -0
  301. package/dist/preferences/constants.d.ts +2 -3
  302. package/dist/preferences/constants.d.ts.map +1 -0
  303. package/dist/preferences/error-codes.d.ts +2 -3
  304. package/dist/preferences/error-codes.d.ts.map +1 -0
  305. package/dist/preferences/errors.d.ts +4 -19
  306. package/dist/preferences/errors.d.ts.map +1 -0
  307. package/dist/preferences/index.d.ts +5 -20
  308. package/dist/preferences/index.d.ts.map +1 -0
  309. package/dist/preferences/loader.d.ts +9 -12
  310. package/dist/preferences/loader.d.ts.map +1 -0
  311. package/dist/preferences/schemas.d.ts +19 -21
  312. package/dist/preferences/schemas.d.ts.map +1 -0
  313. package/dist/prompts/error-codes.cjs +38 -0
  314. package/dist/prompts/error-codes.d.ts +15 -0
  315. package/dist/prompts/error-codes.d.ts.map +1 -0
  316. package/dist/prompts/error-codes.js +14 -0
  317. package/dist/prompts/errors.cjs +144 -0
  318. package/dist/prompts/errors.d.ts +45 -0
  319. package/dist/prompts/errors.d.ts.map +1 -0
  320. package/dist/prompts/errors.js +120 -0
  321. package/dist/prompts/index.cjs +53 -0
  322. package/dist/prompts/index.d.ts +13 -0
  323. package/dist/prompts/index.d.ts.map +1 -0
  324. package/dist/prompts/index.js +20 -0
  325. package/dist/prompts/name-validation.cjs +45 -0
  326. package/dist/prompts/name-validation.d.ts +9 -0
  327. package/dist/prompts/name-validation.d.ts.map +1 -0
  328. package/dist/prompts/name-validation.js +18 -0
  329. package/dist/prompts/prompt-manager.cjs +374 -0
  330. package/dist/prompts/prompt-manager.d.ts +74 -0
  331. package/dist/prompts/prompt-manager.d.ts.map +1 -0
  332. package/dist/prompts/prompt-manager.js +352 -0
  333. package/dist/prompts/providers/custom-prompt-provider.cjs +283 -0
  334. package/dist/prompts/providers/custom-prompt-provider.d.ts +36 -0
  335. package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -0
  336. package/dist/prompts/providers/custom-prompt-provider.js +259 -0
  337. package/dist/prompts/providers/file-prompt-provider.cjs +399 -0
  338. package/dist/prompts/providers/file-prompt-provider.d.ts +47 -0
  339. package/dist/prompts/providers/file-prompt-provider.d.ts.map +1 -0
  340. package/dist/prompts/providers/file-prompt-provider.js +375 -0
  341. package/dist/prompts/providers/mcp-prompt-provider.cjs +102 -0
  342. package/dist/prompts/providers/mcp-prompt-provider.d.ts +35 -0
  343. package/dist/prompts/providers/mcp-prompt-provider.d.ts.map +1 -0
  344. package/dist/prompts/providers/mcp-prompt-provider.js +78 -0
  345. package/dist/prompts/providers/starter-prompt-provider.cjs +170 -0
  346. package/dist/prompts/providers/starter-prompt-provider.d.ts +45 -0
  347. package/dist/prompts/providers/starter-prompt-provider.d.ts.map +1 -0
  348. package/dist/prompts/providers/starter-prompt-provider.js +146 -0
  349. package/dist/prompts/schemas.cjs +54 -0
  350. package/dist/prompts/schemas.d.ts +65 -0
  351. package/dist/prompts/schemas.d.ts.map +1 -0
  352. package/dist/prompts/schemas.js +30 -0
  353. package/dist/{storage/backend/cache-backend.cjs → prompts/types.cjs} +2 -2
  354. package/dist/prompts/types.d.ts +64 -0
  355. package/dist/prompts/types.d.ts.map +1 -0
  356. package/dist/prompts/utils.cjs +176 -0
  357. package/dist/prompts/utils.d.ts +32 -0
  358. package/dist/prompts/utils.d.ts.map +1 -0
  359. package/dist/prompts/utils.js +149 -0
  360. package/dist/resources/error-codes.cjs +38 -0
  361. package/dist/resources/error-codes.d.ts +13 -0
  362. package/dist/resources/error-codes.d.ts.map +1 -0
  363. package/dist/resources/error-codes.js +14 -0
  364. package/dist/resources/errors.cjs +155 -0
  365. package/dist/resources/errors.d.ts +48 -0
  366. package/dist/resources/errors.d.ts.map +1 -0
  367. package/dist/resources/errors.js +131 -0
  368. package/dist/resources/handlers/blob-handler.cjs +230 -0
  369. package/dist/resources/handlers/blob-handler.d.ts +38 -0
  370. package/dist/resources/handlers/blob-handler.d.ts.map +1 -0
  371. package/dist/resources/handlers/blob-handler.js +206 -0
  372. package/dist/resources/handlers/factory.cjs +50 -0
  373. package/dist/resources/handlers/factory.d.ts +11 -0
  374. package/dist/resources/handlers/factory.d.ts.map +1 -0
  375. package/dist/resources/handlers/factory.js +25 -0
  376. package/dist/resources/handlers/filesystem-handler.cjs +385 -0
  377. package/dist/resources/handlers/filesystem-handler.d.ts +35 -0
  378. package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -0
  379. package/dist/resources/handlers/filesystem-handler.js +351 -0
  380. package/dist/{storage/backend/database-backend.cjs → resources/handlers/types.cjs} +2 -2
  381. package/dist/resources/handlers/types.d.ts +15 -0
  382. package/dist/resources/handlers/types.d.ts.map +1 -0
  383. package/dist/resources/index.cjs +58 -0
  384. package/dist/resources/index.d.ts +39 -0
  385. package/dist/resources/index.d.ts.map +1 -0
  386. package/dist/resources/index.js +34 -0
  387. package/dist/resources/internal-provider.cjs +141 -0
  388. package/dist/resources/internal-provider.d.ts +19 -0
  389. package/dist/resources/internal-provider.d.ts.map +1 -0
  390. package/dist/resources/internal-provider.js +117 -0
  391. package/dist/resources/manager.cjs +221 -0
  392. package/dist/resources/manager.d.ts +29 -0
  393. package/dist/resources/manager.d.ts.map +1 -0
  394. package/dist/resources/manager.js +197 -0
  395. package/dist/resources/reference-parser.cjs +217 -0
  396. package/dist/resources/reference-parser.d.ts +33 -0
  397. package/dist/resources/reference-parser.d.ts.map +1 -0
  398. package/dist/resources/reference-parser.js +190 -0
  399. package/dist/resources/schemas.cjs +98 -0
  400. package/dist/resources/schemas.d.ts +212 -0
  401. package/dist/resources/schemas.d.ts.map +1 -0
  402. package/dist/resources/schemas.js +72 -0
  403. package/dist/resources/types.cjs +16 -0
  404. package/dist/resources/types.d.ts +57 -0
  405. package/dist/resources/types.d.ts.map +1 -0
  406. package/dist/resources/types.js +0 -0
  407. package/dist/search/index.d.ts +2 -4
  408. package/dist/search/index.d.ts.map +1 -0
  409. package/dist/search/search-service.d.ts +5 -9
  410. package/dist/search/search-service.d.ts.map +1 -0
  411. package/dist/search/types.d.ts +7 -10
  412. package/dist/search/types.d.ts.map +1 -0
  413. package/dist/session/chat-session.cjs +103 -10
  414. package/dist/session/chat-session.d.ts +30 -41
  415. package/dist/session/chat-session.d.ts.map +1 -0
  416. package/dist/session/chat-session.js +103 -10
  417. package/dist/session/error-codes.d.ts +2 -3
  418. package/dist/session/error-codes.d.ts.map +1 -0
  419. package/dist/session/errors.d.ts +2 -17
  420. package/dist/session/errors.d.ts.map +1 -0
  421. package/dist/session/history/database.d.ts +6 -9
  422. package/dist/session/history/database.d.ts.map +1 -0
  423. package/dist/session/history/factory.d.ts +4 -8
  424. package/dist/session/history/factory.d.ts.map +1 -0
  425. package/dist/session/history/memory.cjs +39 -0
  426. package/dist/session/history/memory.d.ts +14 -0
  427. package/dist/session/history/memory.d.ts.map +1 -0
  428. package/dist/session/history/memory.js +15 -0
  429. package/dist/session/history/types.d.ts +3 -6
  430. package/dist/session/history/types.d.ts.map +1 -0
  431. package/dist/session/index.d.ts +3 -50
  432. package/dist/session/index.d.ts.map +1 -0
  433. package/dist/session/schemas.d.ts +4 -6
  434. package/dist/session/schemas.d.ts.map +1 -0
  435. package/dist/session/session-manager.cjs +63 -29
  436. package/dist/session/session-manager.d.ts +27 -43
  437. package/dist/session/session-manager.d.ts.map +1 -0
  438. package/dist/session/session-manager.js +63 -29
  439. package/dist/session/title-generator.cjs +140 -0
  440. package/dist/session/title-generator.d.ts +22 -0
  441. package/dist/session/title-generator.d.ts.map +1 -0
  442. package/dist/session/title-generator.js +115 -0
  443. package/dist/storage/blob/factory.cjs +50 -0
  444. package/dist/storage/blob/factory.d.ts +8 -0
  445. package/dist/storage/blob/factory.d.ts.map +1 -0
  446. package/dist/storage/blob/factory.js +26 -0
  447. package/dist/storage/blob/local-blob-store.cjs +487 -0
  448. package/dist/storage/blob/local-blob-store.d.ts +56 -0
  449. package/dist/storage/blob/local-blob-store.d.ts.map +1 -0
  450. package/dist/storage/blob/local-blob-store.js +453 -0
  451. package/dist/storage/blob/schemas.cjs +53 -0
  452. package/dist/storage/blob/schemas.d.ts +80 -0
  453. package/dist/storage/blob/schemas.d.ts.map +1 -0
  454. package/dist/storage/blob/schemas.js +28 -0
  455. package/dist/storage/blob/types.cjs +16 -0
  456. package/dist/storage/blob/types.d.ts +154 -0
  457. package/dist/storage/blob/types.d.ts.map +1 -0
  458. package/dist/storage/blob/types.js +0 -0
  459. package/dist/storage/cache/factory.cjs +63 -0
  460. package/dist/storage/cache/factory.d.ts +8 -0
  461. package/dist/storage/cache/factory.d.ts.map +1 -0
  462. package/dist/storage/cache/factory.js +29 -0
  463. package/dist/storage/cache/memory-cache-store.cjs +107 -0
  464. package/dist/storage/cache/memory-cache-store.d.ts +26 -0
  465. package/dist/storage/cache/memory-cache-store.d.ts.map +1 -0
  466. package/dist/storage/cache/memory-cache-store.js +83 -0
  467. package/dist/storage/{backend/redis-backend.cjs → cache/redis-store.cjs} +8 -22
  468. package/dist/storage/{backend/redis-backend.d.ts → cache/redis-store.d.ts} +8 -14
  469. package/dist/storage/cache/redis-store.d.ts.map +1 -0
  470. package/dist/storage/{backend/redis-backend.js → cache/redis-store.js} +4 -18
  471. package/dist/storage/cache/schemas.cjs +77 -0
  472. package/dist/storage/cache/schemas.d.ts +151 -0
  473. package/dist/storage/cache/schemas.d.ts.map +1 -0
  474. package/dist/storage/cache/schemas.js +52 -0
  475. package/dist/storage/cache/types.cjs +16 -0
  476. package/dist/storage/{backend/cache-backend.d.cts → cache/types.d.ts} +3 -4
  477. package/dist/storage/cache/types.d.ts.map +1 -0
  478. package/dist/storage/cache/types.js +0 -0
  479. package/dist/storage/database/factory.cjs +84 -0
  480. package/dist/storage/database/factory.d.ts +8 -0
  481. package/dist/storage/database/factory.d.ts.map +1 -0
  482. package/dist/storage/database/factory.js +50 -0
  483. package/dist/storage/{backend/memory-backend.cjs → database/memory-database-store.cjs} +10 -28
  484. package/dist/storage/{backend/memory-backend.d.ts → database/memory-database-store.d.ts} +7 -12
  485. package/dist/storage/database/memory-database-store.d.ts.map +1 -0
  486. package/dist/storage/{backend/memory-backend.js → database/memory-database-store.js} +6 -24
  487. package/dist/storage/{backend/postgres-backend.cjs → database/postgres-store.cjs} +11 -11
  488. package/dist/storage/{backend/postgres-backend.d.ts → database/postgres-store.d.ts} +8 -11
  489. package/dist/storage/database/postgres-store.d.ts.map +1 -0
  490. package/dist/storage/{backend/postgres-backend.js → database/postgres-store.js} +7 -7
  491. package/dist/storage/database/schemas.cjs +89 -0
  492. package/dist/storage/database/schemas.d.ts +227 -0
  493. package/dist/storage/database/schemas.d.ts.map +1 -0
  494. package/dist/storage/database/schemas.js +64 -0
  495. package/dist/storage/{backend/sqlite-backend.cjs → database/sqlite-store.cjs} +15 -14
  496. package/dist/storage/{backend/sqlite-backend.d.ts → database/sqlite-store.d.ts} +8 -11
  497. package/dist/storage/database/sqlite-store.d.ts.map +1 -0
  498. package/dist/storage/{backend/sqlite-backend.js → database/sqlite-store.js} +11 -10
  499. package/dist/storage/database/types.cjs +16 -0
  500. package/dist/storage/{backend/database-backend.d.cts → database/types.d.ts} +3 -4
  501. package/dist/storage/database/types.d.ts.map +1 -0
  502. package/dist/storage/database/types.js +0 -0
  503. package/dist/storage/error-codes.cjs +15 -0
  504. package/dist/storage/error-codes.d.ts +19 -5
  505. package/dist/storage/error-codes.d.ts.map +1 -0
  506. package/dist/storage/error-codes.js +15 -0
  507. package/dist/storage/errors.cjs +195 -7
  508. package/dist/storage/errors.d.ts +71 -19
  509. package/dist/storage/errors.d.ts.map +1 -0
  510. package/dist/storage/errors.js +189 -1
  511. package/dist/storage/index.cjs +24 -5
  512. package/dist/storage/index.d.ts +48 -7
  513. package/dist/storage/index.d.ts.map +1 -0
  514. package/dist/storage/index.js +20 -4
  515. package/dist/storage/schemas.cjs +22 -84
  516. package/dist/storage/schemas.d.ts +98 -574
  517. package/dist/storage/schemas.d.ts.map +1 -0
  518. package/dist/storage/schemas.js +25 -84
  519. package/dist/storage/storage-manager.cjs +131 -116
  520. package/dist/storage/storage-manager.d.ts +51 -25
  521. package/dist/storage/storage-manager.d.ts.map +1 -0
  522. package/dist/storage/storage-manager.js +130 -105
  523. package/dist/storage/types.d.ts +7 -5
  524. package/dist/storage/types.d.ts.map +1 -0
  525. package/dist/systemPrompt/contributors.cjs +54 -0
  526. package/dist/systemPrompt/contributors.d.ts +30 -15
  527. package/dist/systemPrompt/contributors.d.ts.map +1 -0
  528. package/dist/systemPrompt/contributors.js +53 -0
  529. package/dist/systemPrompt/error-codes.d.ts +2 -3
  530. package/dist/systemPrompt/error-codes.d.ts.map +1 -0
  531. package/dist/systemPrompt/errors.d.ts +2 -17
  532. package/dist/systemPrompt/errors.d.ts.map +1 -0
  533. package/dist/systemPrompt/in-built-prompts.cjs +13 -15
  534. package/dist/systemPrompt/in-built-prompts.d.ts +4 -14
  535. package/dist/systemPrompt/in-built-prompts.d.ts.map +1 -0
  536. package/dist/systemPrompt/in-built-prompts.js +13 -15
  537. package/dist/systemPrompt/index.cjs +11 -0
  538. package/dist/systemPrompt/index.d.ts +7 -14
  539. package/dist/systemPrompt/index.d.ts.map +1 -0
  540. package/dist/systemPrompt/index.js +8 -0
  541. package/dist/systemPrompt/manager.cjs +24 -6
  542. package/dist/systemPrompt/manager.d.ts +8 -16
  543. package/dist/systemPrompt/manager.d.ts.map +1 -0
  544. package/dist/systemPrompt/manager.js +24 -6
  545. package/dist/systemPrompt/registry.d.ts +6 -16
  546. package/dist/systemPrompt/registry.d.ts.map +1 -0
  547. package/dist/systemPrompt/schemas.cjs +17 -3
  548. package/dist/systemPrompt/schemas.d.ts +204 -30
  549. package/dist/systemPrompt/schemas.d.ts.map +1 -0
  550. package/dist/systemPrompt/schemas.js +17 -3
  551. package/dist/systemPrompt/types.d.ts +3 -12
  552. package/dist/systemPrompt/types.d.ts.map +1 -0
  553. package/dist/tools/confirmation/allowed-tools-provider/factory.cjs +1 -1
  554. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts +6 -12
  555. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts.map +1 -0
  556. package/dist/tools/confirmation/allowed-tools-provider/factory.js +1 -1
  557. package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.ts +3 -5
  558. package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.ts.map +1 -0
  559. package/dist/tools/confirmation/allowed-tools-provider/storage.cjs +9 -9
  560. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts +7 -13
  561. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts.map +1 -0
  562. package/dist/tools/confirmation/allowed-tools-provider/storage.js +9 -9
  563. package/dist/tools/confirmation/allowed-tools-provider/types.d.ts +2 -3
  564. package/dist/tools/confirmation/allowed-tools-provider/types.d.ts.map +1 -0
  565. package/dist/tools/error-codes.d.ts +2 -3
  566. package/dist/tools/error-codes.d.ts.map +1 -0
  567. package/dist/tools/errors.d.ts +2 -17
  568. package/dist/tools/errors.d.ts.map +1 -0
  569. package/dist/tools/index.cjs +0 -2
  570. package/dist/tools/index.d.ts +11 -19
  571. package/dist/tools/index.d.ts.map +1 -0
  572. package/dist/tools/index.js +0 -1
  573. package/dist/tools/internal-tools/implementations/ask-user-tool.cjs +57 -0
  574. package/dist/tools/internal-tools/implementations/ask-user-tool.d.ts +18 -0
  575. package/dist/tools/internal-tools/implementations/ask-user-tool.d.ts.map +1 -0
  576. package/dist/tools/internal-tools/implementations/ask-user-tool.js +33 -0
  577. package/dist/tools/internal-tools/implementations/search-history-tool.d.ts +3 -11
  578. package/dist/tools/internal-tools/implementations/search-history-tool.d.ts.map +1 -0
  579. package/dist/tools/internal-tools/index.d.ts +3 -13
  580. package/dist/tools/internal-tools/index.d.ts.map +1 -0
  581. package/dist/tools/internal-tools/provider.cjs +9 -11
  582. package/dist/tools/internal-tools/provider.d.ts +6 -20
  583. package/dist/tools/internal-tools/provider.d.ts.map +1 -0
  584. package/dist/tools/internal-tools/provider.js +9 -11
  585. package/dist/tools/internal-tools/registry.cjs +6 -1
  586. package/dist/tools/internal-tools/registry.d.ts +10 -15
  587. package/dist/tools/internal-tools/registry.d.ts.map +1 -0
  588. package/dist/tools/internal-tools/registry.js +6 -1
  589. package/dist/tools/schemas.cjs +14 -2
  590. package/dist/tools/schemas.d.ts +12 -8
  591. package/dist/tools/schemas.d.ts.map +1 -0
  592. package/dist/tools/schemas.js +10 -2
  593. package/dist/tools/tool-manager.cjs +174 -14
  594. package/dist/tools/tool-manager.d.ts +48 -22
  595. package/dist/tools/tool-manager.d.ts.map +1 -0
  596. package/dist/tools/tool-manager.js +174 -14
  597. package/dist/tools/types.d.ts +9 -11
  598. package/dist/tools/types.d.ts.map +1 -0
  599. package/dist/utils/api-key-resolver.d.ts +5 -7
  600. package/dist/utils/api-key-resolver.d.ts.map +1 -0
  601. package/dist/utils/api-key-store.d.ts +5 -7
  602. package/dist/utils/api-key-store.d.ts.map +1 -0
  603. package/dist/utils/async-context.cjs +51 -0
  604. package/dist/utils/async-context.d.ts +68 -0
  605. package/dist/utils/async-context.d.ts.map +1 -0
  606. package/dist/utils/async-context.js +24 -0
  607. package/dist/utils/debug.cjs +40 -0
  608. package/dist/utils/debug.d.ts +2 -0
  609. package/dist/utils/debug.d.ts.map +1 -0
  610. package/dist/utils/debug.js +16 -0
  611. package/dist/utils/env.d.ts +4 -5
  612. package/dist/utils/env.d.ts.map +1 -0
  613. package/dist/utils/error-conversion.d.ts +2 -3
  614. package/dist/utils/error-conversion.d.ts.map +1 -0
  615. package/dist/utils/execution-context.d.ts +5 -6
  616. package/dist/utils/execution-context.d.ts.map +1 -0
  617. package/dist/utils/fs-walk.d.ts +2 -3
  618. package/dist/utils/fs-walk.d.ts.map +1 -0
  619. package/dist/utils/index.cjs +3 -1
  620. package/dist/utils/index.d.ts +14 -63
  621. package/dist/utils/index.d.ts.map +1 -0
  622. package/dist/utils/index.js +1 -0
  623. package/dist/utils/path.d.ts +9 -10
  624. package/dist/utils/path.d.ts.map +1 -0
  625. package/dist/utils/port-utils.d.ts +2 -3
  626. package/dist/utils/port-utils.d.ts.map +1 -0
  627. package/dist/utils/redactor.d.ts +2 -3
  628. package/dist/utils/redactor.d.ts.map +1 -0
  629. package/dist/utils/result.d.ts +14 -27
  630. package/dist/utils/result.d.ts.map +1 -0
  631. package/dist/utils/safe-stringify.d.ts +2 -3
  632. package/dist/utils/safe-stringify.d.ts.map +1 -0
  633. package/dist/utils/schema-metadata.cjs +235 -0
  634. package/dist/utils/schema-metadata.d.ts +82 -0
  635. package/dist/utils/schema-metadata.d.ts.map +1 -0
  636. package/dist/utils/schema-metadata.js +207 -0
  637. package/dist/utils/schema.d.ts +2 -3
  638. package/dist/utils/schema.d.ts.map +1 -0
  639. package/dist/utils/service-initializer.cjs +71 -34
  640. package/dist/utils/service-initializer.d.ts +18 -43
  641. package/dist/utils/service-initializer.d.ts.map +1 -0
  642. package/dist/utils/service-initializer.js +71 -34
  643. package/dist/utils/user-info.d.ts +2 -3
  644. package/dist/utils/user-info.d.ts.map +1 -0
  645. package/dist/utils/zod-schema-converter.d.ts +3 -5
  646. package/dist/utils/zod-schema-converter.d.ts.map +1 -0
  647. package/package.json +6 -4
  648. package/dist/agent/DextoAgent.d.cts +0 -541
  649. package/dist/agent/agentCard.d.cts +0 -20
  650. package/dist/agent/error-codes.d.cts +0 -14
  651. package/dist/agent/errors.d.cts +0 -44
  652. package/dist/agent/index.d.cts +0 -60
  653. package/dist/agent/registry/error-codes.d.cts +0 -20
  654. package/dist/agent/registry/errors.d.cts +0 -67
  655. package/dist/agent/registry/registry.d.cts +0 -67
  656. package/dist/agent/registry/types.d.cts +0 -100
  657. package/dist/agent/schemas.d.cts +0 -1502
  658. package/dist/agent/state-manager.d.cts +0 -97
  659. package/dist/config/agent-resolver.d.cts +0 -15
  660. package/dist/config/error-codes.d.cts +0 -17
  661. package/dist/config/errors.d.cts +0 -49
  662. package/dist/config/index.d.cts +0 -7
  663. package/dist/config/loader.d.cts +0 -19
  664. package/dist/config/writer.d.cts +0 -38
  665. package/dist/context/compression/middle-removal.d.cts +0 -48
  666. package/dist/context/compression/oldest-removal.d.cts +0 -43
  667. package/dist/context/compression/types.d.cts +0 -21
  668. package/dist/context/error-codes.d.cts +0 -19
  669. package/dist/context/errors.d.cts +0 -36
  670. package/dist/context/index.d.cts +0 -19
  671. package/dist/context/manager.d.cts +0 -254
  672. package/dist/context/types.d.cts +0 -113
  673. package/dist/context/utils.d.cts +0 -79
  674. package/dist/errors/DextoBaseError.d.cts +0 -15
  675. package/dist/errors/DextoRuntimeError.d.cts +0 -37
  676. package/dist/errors/DextoValidationError.d.cts +0 -65
  677. package/dist/errors/index.d.cts +0 -18
  678. package/dist/errors/result-bridge.d.cts +0 -39
  679. package/dist/errors/types.d.cts +0 -62
  680. package/dist/events/index.d.cts +0 -272
  681. package/dist/index.browser.d.cts +0 -53
  682. package/dist/index.d.cts +0 -89
  683. package/dist/llm/error-codes.d.cts +0 -26
  684. package/dist/llm/errors.d.cts +0 -58
  685. package/dist/llm/formatters/anthropic.d.cts +0 -45
  686. package/dist/llm/formatters/factory.d.cts +0 -12
  687. package/dist/llm/formatters/openai.d.cts +0 -38
  688. package/dist/llm/formatters/types.d.cts +0 -43
  689. package/dist/llm/formatters/vercel.d.cts +0 -48
  690. package/dist/llm/index.d.cts +0 -39
  691. package/dist/llm/registry.d.cts +0 -176
  692. package/dist/llm/resolver.d.cts +0 -34
  693. package/dist/llm/schemas.d.cts +0 -111
  694. package/dist/llm/services/anthropic.d.cts +0 -65
  695. package/dist/llm/services/factory.d.cts +0 -39
  696. package/dist/llm/services/index.d.cts +0 -21
  697. package/dist/llm/services/openai.d.cts +0 -65
  698. package/dist/llm/services/test-utils.integration.d.cts +0 -83
  699. package/dist/llm/services/types.d.cts +0 -56
  700. package/dist/llm/services/vercel.d.cts +0 -72
  701. package/dist/llm/tokenizer/anthropic.d.cts +0 -21
  702. package/dist/llm/tokenizer/default.d.cts +0 -16
  703. package/dist/llm/tokenizer/factory.d.cts +0 -12
  704. package/dist/llm/tokenizer/google.d.cts +0 -31
  705. package/dist/llm/tokenizer/openai.d.cts +0 -32
  706. package/dist/llm/tokenizer/types.d.cts +0 -19
  707. package/dist/llm/types.d.cts +0 -29
  708. package/dist/llm/validation.d.cts +0 -60
  709. package/dist/logger/browser.d.cts +0 -29
  710. package/dist/logger/index.d.cts +0 -1
  711. package/dist/logger/logger.d.cts +0 -52
  712. package/dist/mcp/error-codes.d.cts +0 -16
  713. package/dist/mcp/errors.d.cts +0 -72
  714. package/dist/mcp/index.d.cts +0 -26
  715. package/dist/mcp/manager.d.cts +0 -163
  716. package/dist/mcp/mcp-client.d.cts +0 -108
  717. package/dist/mcp/resolver.d.cts +0 -22
  718. package/dist/mcp/schemas.d.cts +0 -266
  719. package/dist/mcp/types.d.cts +0 -21
  720. package/dist/preferences/constants.d.cts +0 -3
  721. package/dist/preferences/error-codes.d.cts +0 -9
  722. package/dist/preferences/errors.d.cts +0 -33
  723. package/dist/preferences/index.d.cts +0 -21
  724. package/dist/preferences/loader.d.cts +0 -45
  725. package/dist/preferences/schemas.d.cts +0 -104
  726. package/dist/search/index.d.cts +0 -5
  727. package/dist/search/search-service.d.cts +0 -47
  728. package/dist/search/types.d.cts +0 -78
  729. package/dist/session/chat-session.d.cts +0 -284
  730. package/dist/session/error-codes.d.cts +0 -13
  731. package/dist/session/errors.d.cts +0 -58
  732. package/dist/session/history/database.d.cts +0 -28
  733. package/dist/session/history/factory.d.cts +0 -11
  734. package/dist/session/history/types.d.cts +0 -17
  735. package/dist/session/index.d.cts +0 -53
  736. package/dist/session/schemas.d.cts +0 -16
  737. package/dist/session/session-manager.d.cts +0 -219
  738. package/dist/storage/backend/cache-backend.d.ts +0 -15
  739. package/dist/storage/backend/database-backend.d.ts +0 -19
  740. package/dist/storage/backend/memory-backend.d.cts +0 -34
  741. package/dist/storage/backend/postgres-backend.d.cts +0 -37
  742. package/dist/storage/backend/redis-backend.d.cts +0 -36
  743. package/dist/storage/backend/sqlite-backend.d.cts +0 -35
  744. package/dist/storage/backend/types.d.cts +0 -14
  745. package/dist/storage/backend/types.d.ts +0 -14
  746. package/dist/storage/error-codes.d.cts +0 -14
  747. package/dist/storage/errors.d.cts +0 -63
  748. package/dist/storage/index.d.cts +0 -7
  749. package/dist/storage/schemas.d.cts +0 -856
  750. package/dist/storage/storage-manager.d.cts +0 -52
  751. package/dist/storage/types.d.cts +0 -5
  752. package/dist/systemPrompt/contributors.d.cts +0 -44
  753. package/dist/systemPrompt/error-codes.d.cts +0 -13
  754. package/dist/systemPrompt/errors.d.cts +0 -55
  755. package/dist/systemPrompt/in-built-prompts.d.cts +0 -28
  756. package/dist/systemPrompt/index.d.cts +0 -14
  757. package/dist/systemPrompt/manager.d.cts +0 -31
  758. package/dist/systemPrompt/registry.d.cts +0 -20
  759. package/dist/systemPrompt/schemas.d.cts +0 -401
  760. package/dist/systemPrompt/types.d.cts +0 -19
  761. package/dist/tools/confirmation/allowed-tools-provider/factory.d.cts +0 -19
  762. package/dist/tools/confirmation/allowed-tools-provider/in-memory.d.cts +0 -17
  763. package/dist/tools/confirmation/allowed-tools-provider/storage.d.cts +0 -26
  764. package/dist/tools/confirmation/allowed-tools-provider/types.d.cts +0 -35
  765. package/dist/tools/confirmation/event-based-confirmation-provider.cjs +0 -158
  766. package/dist/tools/confirmation/event-based-confirmation-provider.d.cts +0 -41
  767. package/dist/tools/confirmation/event-based-confirmation-provider.d.ts +0 -41
  768. package/dist/tools/confirmation/event-based-confirmation-provider.js +0 -134
  769. package/dist/tools/confirmation/factory.cjs +0 -52
  770. package/dist/tools/confirmation/factory.d.cts +0 -37
  771. package/dist/tools/confirmation/factory.d.ts +0 -37
  772. package/dist/tools/confirmation/factory.js +0 -28
  773. package/dist/tools/confirmation/noop-confirmation-provider.cjs +0 -49
  774. package/dist/tools/confirmation/noop-confirmation-provider.d.cts +0 -22
  775. package/dist/tools/confirmation/noop-confirmation-provider.d.ts +0 -22
  776. package/dist/tools/confirmation/noop-confirmation-provider.js +0 -25
  777. package/dist/tools/confirmation/types.d.cts +0 -46
  778. package/dist/tools/confirmation/types.d.ts +0 -46
  779. package/dist/tools/error-codes.d.cts +0 -18
  780. package/dist/tools/errors.d.cts +0 -97
  781. package/dist/tools/index.d.cts +0 -19
  782. package/dist/tools/internal-tools/implementations/search-history-tool.d.cts +0 -15
  783. package/dist/tools/internal-tools/index.d.cts +0 -13
  784. package/dist/tools/internal-tools/provider.d.cts +0 -66
  785. package/dist/tools/internal-tools/registry.d.cts +0 -45
  786. package/dist/tools/schemas.d.cts +0 -21
  787. package/dist/tools/tool-manager.d.cts +0 -106
  788. package/dist/tools/types.d.cts +0 -66
  789. package/dist/utils/api-key-resolver.d.cts +0 -23
  790. package/dist/utils/api-key-store.d.cts +0 -26
  791. package/dist/utils/env.d.cts +0 -29
  792. package/dist/utils/error-conversion.d.cts +0 -13
  793. package/dist/utils/execution-context.d.cts +0 -21
  794. package/dist/utils/fs-walk.d.cts +0 -9
  795. package/dist/utils/index.d.cts +0 -63
  796. package/dist/utils/path.d.cts +0 -54
  797. package/dist/utils/port-utils.d.cts +0 -11
  798. package/dist/utils/port-utils.spec.d.cts +0 -2
  799. package/dist/utils/port-utils.spec.d.ts +0 -2
  800. package/dist/utils/redactor.d.cts +0 -18
  801. package/dist/utils/result.d.cts +0 -180
  802. package/dist/utils/safe-stringify.d.cts +0 -7
  803. package/dist/utils/schema.d.cts +0 -6
  804. package/dist/utils/service-initializer.d.cts +0 -63
  805. package/dist/utils/user-info.d.cts +0 -3
  806. package/dist/utils/zod-schema-converter.d.cts +0 -13
  807. /package/dist/{storage/backend → memory}/types.cjs +0 -0
  808. /package/dist/{storage/backend → memory}/types.js +0 -0
  809. /package/dist/{tools/confirmation → plugins}/types.cjs +0 -0
  810. /package/dist/{tools/confirmation → plugins}/types.js +0 -0
  811. /package/dist/{storage/backend/cache-backend.js → prompts/types.js} +0 -0
  812. /package/dist/{storage/backend/database-backend.js → resources/handlers/types.js} +0 -0
@@ -0,0 +1,352 @@
1
+ import { MCPPromptProvider } from "./providers/mcp-prompt-provider.js";
2
+ import { FilePromptProvider } from "./providers/file-prompt-provider.js";
3
+ import { StarterPromptProvider } from "./providers/starter-prompt-provider.js";
4
+ import {
5
+ CustomPromptProvider
6
+ } from "./providers/custom-prompt-provider.js";
7
+ import { PromptError } from "./errors.js";
8
+ import { logger } from "../logger/index.js";
9
+ import { normalizePromptArgs, flattenPromptResult } from "./utils.js";
10
+ class PromptManager {
11
+ constructor(mcpManager, resourceManager, agentConfig, eventBus, database) {
12
+ this.eventBus = eventBus;
13
+ this.database = database;
14
+ this.providers.set("mcp", new MCPPromptProvider(mcpManager));
15
+ this.providers.set("file", new FilePromptProvider({ resourceManager }));
16
+ this.providers.set("starter", new StarterPromptProvider(agentConfig));
17
+ this.providers.set("custom", new CustomPromptProvider(this.database, resourceManager));
18
+ logger.debug(
19
+ `PromptManager initialized with providers: ${Array.from(this.providers.keys()).join(", ")}`
20
+ );
21
+ const refresh = async (reason) => {
22
+ logger.debug(`PromptManager refreshing due to: ${reason}`);
23
+ await this.refresh();
24
+ };
25
+ this.eventBus.on("dexto:mcpServerConnected", async (p) => {
26
+ if (p.success) {
27
+ await refresh(`mcpServerConnected:${p.name}`);
28
+ }
29
+ });
30
+ this.eventBus.on("dexto:mcpServerRemoved", async (p) => {
31
+ await refresh(`mcpServerRemoved:${p.serverName}`);
32
+ });
33
+ this.eventBus.on("dexto:mcpServerUpdated", async (p) => {
34
+ await refresh(`mcpServerUpdated:${p.serverName}`);
35
+ });
36
+ this.eventBus.on("dexto:mcpPromptsListChanged", async (p) => {
37
+ await this.updatePromptsForServer(p.serverName, p.prompts);
38
+ logger.debug(
39
+ `\u{1F504} Surgically updated prompts for server '${p.serverName}': [${p.prompts.join(", ")}]`
40
+ );
41
+ });
42
+ }
43
+ providers = /* @__PURE__ */ new Map();
44
+ promptIndex;
45
+ aliasMap = /* @__PURE__ */ new Map();
46
+ buildPromise = null;
47
+ async initialize() {
48
+ await this.ensureCache();
49
+ logger.debug("PromptManager initialization complete");
50
+ }
51
+ async list() {
52
+ await this.ensureCache();
53
+ const index = this.promptIndex ?? /* @__PURE__ */ new Map();
54
+ const result = {};
55
+ for (const [key, entry] of index.entries()) {
56
+ result[key] = entry.info;
57
+ }
58
+ return result;
59
+ }
60
+ async has(name) {
61
+ const entry = await this.findEntry(name);
62
+ return entry !== void 0;
63
+ }
64
+ async getPromptDefinition(name) {
65
+ const entry = await this.findEntry(name);
66
+ if (!entry) return null;
67
+ const { info } = entry;
68
+ return {
69
+ name: info.name,
70
+ ...info.title && { title: info.title },
71
+ ...info.description && { description: info.description },
72
+ ...info.arguments && { arguments: info.arguments }
73
+ };
74
+ }
75
+ /**
76
+ * Retrieve a prompt from the appropriate provider.
77
+ *
78
+ * Responsibilities:
79
+ * - Resolve the correct provider by prompt name (post-cache lookup)
80
+ * - Map positional arguments (`args._positional: string[]`) to named arguments based
81
+ * on the prompt's declared `arguments` schema (order-based mapping)
82
+ * - Forward `_context` and any named args to the provider
83
+ *
84
+ * Mapping rules:
85
+ * - If `PromptInfo.arguments` is defined (e.g., MCP or file prompts with `argument-hint:`),
86
+ * then each position in `_positional` fills the corresponding named arg if not already set.
87
+ * - Named arguments already present in `args` are not overwritten by positional tokens.
88
+ */
89
+ async getPrompt(name, args) {
90
+ const entry = await this.findEntry(name);
91
+ if (!entry) {
92
+ throw PromptError.notFound(name);
93
+ }
94
+ const provider = this.providers.get(entry.providerName);
95
+ if (!provider) {
96
+ throw PromptError.providerNotFound(entry.providerName);
97
+ }
98
+ let finalArgs = args;
99
+ if (args?._positional && Array.isArray(args._positional) && args._positional.length > 0) {
100
+ const promptArgs = entry.info.arguments;
101
+ if (promptArgs && promptArgs.length > 0) {
102
+ finalArgs = { ...args };
103
+ const positionalArgs = args._positional;
104
+ promptArgs.forEach((argDef, index) => {
105
+ if (index < positionalArgs.length && !finalArgs[argDef.name]) {
106
+ const value = positionalArgs[index];
107
+ finalArgs[argDef.name] = typeof value === "string" ? value : String(value);
108
+ }
109
+ });
110
+ }
111
+ }
112
+ let providerArgs = finalArgs;
113
+ if (entry.providerName === "mcp") {
114
+ const declared = new Set((entry.info.arguments ?? []).map((a) => a.name));
115
+ const filtered = {};
116
+ for (const [key, value] of Object.entries(finalArgs ?? {})) {
117
+ if (key.startsWith("_")) continue;
118
+ if (declared.size === 0 || declared.has(key)) {
119
+ filtered[key] = value;
120
+ }
121
+ }
122
+ providerArgs = filtered;
123
+ }
124
+ return await provider.getPrompt(entry.providerPromptName, providerArgs);
125
+ }
126
+ async resolvePromptKey(nameOrAlias) {
127
+ await this.ensureCache();
128
+ if (!this.promptIndex) return null;
129
+ if (this.promptIndex.has(nameOrAlias)) {
130
+ return nameOrAlias;
131
+ }
132
+ const normalized = nameOrAlias.startsWith("/") ? nameOrAlias.slice(1) : nameOrAlias;
133
+ const aliasMatch = this.aliasMap.get(nameOrAlias) ?? this.aliasMap.get(normalized);
134
+ return aliasMatch ?? null;
135
+ }
136
+ async createCustomPrompt(input) {
137
+ const provider = this.providers.get("custom");
138
+ if (!provider || !(provider instanceof CustomPromptProvider)) {
139
+ throw PromptError.providerNotFound("custom");
140
+ }
141
+ const prompt = await provider.createPrompt(input);
142
+ await this.refresh();
143
+ return prompt;
144
+ }
145
+ async deleteCustomPrompt(name) {
146
+ const provider = this.providers.get("custom");
147
+ if (!provider || !(provider instanceof CustomPromptProvider)) {
148
+ throw PromptError.providerNotFound("custom");
149
+ }
150
+ await provider.deletePrompt(name);
151
+ await this.refresh();
152
+ }
153
+ /**
154
+ * Resolves a prompt to its text content with all arguments applied.
155
+ * This is a high-level method that handles:
156
+ * - Prompt key resolution (resolving aliases)
157
+ * - Argument normalization (including special `_context` field)
158
+ * - Passing `_context` through to providers so they can decide whether to append it
159
+ * (e.g., file prompts without placeholders will append `Context: ...`)
160
+ * - Prompt execution and flattening
161
+ *
162
+ * @param name The prompt name or alias
163
+ * @param options Optional configuration for prompt resolution
164
+ * @returns Promise resolving to the resolved text and resource URIs
165
+ */
166
+ async resolvePrompt(name, options = {}) {
167
+ const args = { ...options.args };
168
+ if (options.context?.trim()) args._context = options.context.trim();
169
+ const resolvedName = await this.resolvePromptKey(name) ?? name;
170
+ const normalized = normalizePromptArgs(args);
171
+ const providerArgs = normalized.context ? { ...normalized.args, _context: normalized.context } : normalized.args;
172
+ const promptResult = await this.getPrompt(resolvedName, providerArgs);
173
+ const flattened = flattenPromptResult(promptResult);
174
+ if (!flattened.text && flattened.resourceUris.length === 0) {
175
+ throw PromptError.emptyResolvedContent(resolvedName);
176
+ }
177
+ return { text: flattened.text, resources: flattened.resourceUris };
178
+ }
179
+ async refresh() {
180
+ this.promptIndex = void 0;
181
+ this.aliasMap.clear();
182
+ for (const provider of this.providers.values()) {
183
+ provider.invalidateCache();
184
+ }
185
+ await this.ensureCache();
186
+ logger.info("PromptManager refreshed");
187
+ }
188
+ /**
189
+ * Surgically update prompts for a specific MCP server instead of full cache rebuild
190
+ */
191
+ async updatePromptsForServer(serverName, _newPrompts) {
192
+ await this.ensureCache();
193
+ if (!this.promptIndex) return;
194
+ this.removePromptsForServer(serverName);
195
+ const mcpProvider = this.providers.get("mcp");
196
+ if (mcpProvider) {
197
+ try {
198
+ const { prompts } = await mcpProvider.listPrompts();
199
+ const serverPrompts = prompts.filter(
200
+ (p) => p.metadata && typeof p.metadata === "object" && "serverName" in p.metadata && p.metadata.serverName === serverName
201
+ );
202
+ for (const prompt of serverPrompts) {
203
+ this.insertPrompt(this.promptIndex, this.aliasMap, "mcp", prompt);
204
+ }
205
+ } catch (error) {
206
+ logger.debug(`Failed to get updated prompts for server '${serverName}': ${error}`);
207
+ }
208
+ }
209
+ }
210
+ /**
211
+ * Remove all prompts from a specific server
212
+ */
213
+ removePromptsForServer(serverName) {
214
+ if (!this.promptIndex) return;
215
+ const keysToRemove = [];
216
+ for (const [key, entry] of this.promptIndex.entries()) {
217
+ if (entry.providerName === "mcp" && entry.info.metadata && typeof entry.info.metadata === "object" && "serverName" in entry.info.metadata && entry.info.metadata.serverName === serverName) {
218
+ keysToRemove.push(key);
219
+ }
220
+ }
221
+ for (const key of keysToRemove) {
222
+ const entry = this.promptIndex.get(key);
223
+ if (entry) {
224
+ this.promptIndex.delete(key);
225
+ for (const [aliasKey, aliasValue] of Array.from(this.aliasMap.entries())) {
226
+ if (aliasValue === key) {
227
+ this.aliasMap.delete(aliasKey);
228
+ }
229
+ }
230
+ }
231
+ }
232
+ }
233
+ sanitizePromptInfo(prompt, providerName) {
234
+ const metadata = { ...prompt.metadata ?? {} };
235
+ delete metadata.content;
236
+ delete metadata.prompt;
237
+ delete metadata.filePath;
238
+ delete metadata.messages;
239
+ if (!metadata.originalName) {
240
+ metadata.originalName = prompt.name;
241
+ }
242
+ metadata.provider = providerName;
243
+ const sanitized = { ...prompt };
244
+ if (Object.keys(metadata).length > 0) {
245
+ sanitized.metadata = metadata;
246
+ } else {
247
+ delete sanitized.metadata;
248
+ }
249
+ return sanitized;
250
+ }
251
+ async ensureCache() {
252
+ if (this.promptIndex) {
253
+ return;
254
+ }
255
+ if (this.buildPromise) {
256
+ await this.buildPromise;
257
+ return;
258
+ }
259
+ this.buildPromise = this.buildCache();
260
+ try {
261
+ await this.buildPromise;
262
+ } finally {
263
+ this.buildPromise = null;
264
+ }
265
+ }
266
+ async buildCache() {
267
+ const index = /* @__PURE__ */ new Map();
268
+ const aliases = /* @__PURE__ */ new Map();
269
+ for (const [providerName, provider] of this.providers) {
270
+ try {
271
+ const { prompts } = await provider.listPrompts();
272
+ for (const prompt of prompts) {
273
+ this.insertPrompt(index, aliases, providerName, prompt);
274
+ }
275
+ } catch (error) {
276
+ logger.error(
277
+ `Failed to get prompts from ${providerName} provider: ${error instanceof Error ? error.message : String(error)}`
278
+ );
279
+ }
280
+ }
281
+ this.promptIndex = index;
282
+ this.aliasMap = aliases;
283
+ if (index.size > 0) {
284
+ const sample = Array.from(index.keys()).slice(0, 5);
285
+ logger.debug(
286
+ `\u{1F4CB} Prompt discovery: ${index.size} prompts. Sample: ${sample.join(", ")}`
287
+ );
288
+ }
289
+ }
290
+ insertPrompt(index, aliases, providerName, prompt) {
291
+ const providerPromptName = prompt.name;
292
+ const prepared = this.sanitizePromptInfo(prompt, providerName);
293
+ let key = providerPromptName;
294
+ const originalName = providerPromptName;
295
+ if (index.has(key)) {
296
+ const existing = index.get(key);
297
+ index.delete(key);
298
+ const existingKey = `${existing.providerName}:${existing.originalName}`;
299
+ const updatedExisting = {
300
+ ...existing,
301
+ info: existing.info.name === existingKey ? existing.info : { ...existing.info, name: existingKey }
302
+ };
303
+ index.set(existingKey, updatedExisting);
304
+ aliases.set(existing.originalName, existingKey);
305
+ key = `${providerName}:${originalName}`;
306
+ }
307
+ const entryInfo = prepared.name === key ? prepared : { ...prepared, name: key };
308
+ const entry = {
309
+ providerName,
310
+ providerPromptName,
311
+ originalName,
312
+ info: entryInfo
313
+ };
314
+ index.set(key, entry);
315
+ aliases.set(originalName, key);
316
+ const metadata = entryInfo.metadata;
317
+ if (metadata) {
318
+ const aliasCandidates = /* @__PURE__ */ new Set();
319
+ if (typeof metadata.originalName === "string") {
320
+ aliasCandidates.add(metadata.originalName);
321
+ }
322
+ if (typeof metadata.command === "string") {
323
+ const command = metadata.command;
324
+ aliasCandidates.add(command);
325
+ if (command.startsWith("/")) {
326
+ aliasCandidates.add(command.slice(1));
327
+ }
328
+ }
329
+ for (const candidate of aliasCandidates) {
330
+ if (candidate && !aliases.has(candidate)) {
331
+ aliases.set(candidate, key);
332
+ }
333
+ }
334
+ }
335
+ }
336
+ async findEntry(name) {
337
+ await this.ensureCache();
338
+ if (!this.promptIndex) return void 0;
339
+ if (this.promptIndex.has(name)) {
340
+ return this.promptIndex.get(name);
341
+ }
342
+ const normalized = name.startsWith("/") ? name.slice(1) : name;
343
+ const alias = this.aliasMap.get(name) ?? this.aliasMap.get(normalized);
344
+ if (alias && this.promptIndex.has(alias)) {
345
+ return this.promptIndex.get(alias);
346
+ }
347
+ return void 0;
348
+ }
349
+ }
350
+ export {
351
+ PromptManager
352
+ };
@@ -0,0 +1,283 @@
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 custom_prompt_provider_exports = {};
20
+ __export(custom_prompt_provider_exports, {
21
+ CustomPromptProvider: () => CustomPromptProvider
22
+ });
23
+ module.exports = __toCommonJS(custom_prompt_provider_exports);
24
+ var import_logger = require("../../logger/index.js");
25
+ var import_utils = require("../utils.js");
26
+ var import_errors = require("../errors.js");
27
+ const CUSTOM_PROMPT_KEY_PREFIX = "prompt:custom:";
28
+ class CustomPromptProvider {
29
+ constructor(database, resourceManager) {
30
+ this.database = database;
31
+ this.resourceManager = resourceManager;
32
+ }
33
+ cacheValid = false;
34
+ promptsCache = [];
35
+ promptRecords = /* @__PURE__ */ new Map();
36
+ getSource() {
37
+ return "custom";
38
+ }
39
+ invalidateCache() {
40
+ this.cacheValid = false;
41
+ this.promptsCache = [];
42
+ this.promptRecords.clear();
43
+ }
44
+ async listPrompts(_cursor) {
45
+ if (!this.cacheValid) {
46
+ await this.buildCache();
47
+ }
48
+ return { prompts: this.promptsCache };
49
+ }
50
+ async getPrompt(name, args) {
51
+ if (!this.cacheValid) {
52
+ await this.buildCache();
53
+ }
54
+ const record = this.promptRecords.get(name);
55
+ if (!record) {
56
+ throw import_errors.PromptError.notFound(name);
57
+ }
58
+ if (record.arguments && record.arguments.length > 0) {
59
+ const requiredArgs = record.arguments.filter((arg) => arg.required);
60
+ const missingArgs = requiredArgs.filter((arg) => !args || !(arg.name in args)).map((arg) => arg.name);
61
+ if (missingArgs.length > 0) {
62
+ throw import_errors.PromptError.missingRequiredArguments(missingArgs);
63
+ }
64
+ }
65
+ const messages = [];
66
+ const expanded = (0, import_utils.expandPlaceholders)(record.content, args);
67
+ const textContent = this.applyArguments(expanded, args, record.arguments);
68
+ messages.push({
69
+ role: "user",
70
+ content: {
71
+ type: "text",
72
+ text: textContent
73
+ }
74
+ });
75
+ if (record.resourceUri) {
76
+ try {
77
+ const blobService = this.resourceManager.getBlobStore();
78
+ const blobData = await blobService.retrieve(record.resourceUri, "base64");
79
+ if (blobData.format === "base64") {
80
+ messages.push({
81
+ role: "user",
82
+ content: {
83
+ type: "resource",
84
+ resource: {
85
+ uri: record.resourceUri,
86
+ blob: blobData.data,
87
+ mimeType: record.resourceMetadata?.mimeType || blobData.metadata?.mimeType || "application/octet-stream"
88
+ }
89
+ }
90
+ });
91
+ }
92
+ } catch (error) {
93
+ import_logger.logger.warn(
94
+ `Failed to load blob resource for custom prompt ${name}: ${String(error)}`
95
+ );
96
+ }
97
+ }
98
+ return {
99
+ description: record.description,
100
+ messages
101
+ };
102
+ }
103
+ async getPromptDefinition(name) {
104
+ if (!this.cacheValid) {
105
+ await this.buildCache();
106
+ }
107
+ const record = this.promptRecords.get(name);
108
+ if (!record) return null;
109
+ return {
110
+ name: record.name,
111
+ ...record.title && { title: record.title },
112
+ ...record.description && { description: record.description },
113
+ ...record.arguments && { arguments: record.arguments }
114
+ };
115
+ }
116
+ async createPrompt(input) {
117
+ const id = this.slugify(input.name);
118
+ if (!id) {
119
+ throw import_errors.PromptError.nameRequired();
120
+ }
121
+ if (!input.content || input.content.trim().length === 0) {
122
+ throw import_errors.PromptError.missingText();
123
+ }
124
+ if (!this.cacheValid) {
125
+ await this.buildCache();
126
+ }
127
+ if (this.promptRecords.has(id)) {
128
+ throw import_errors.PromptError.alreadyExists(id);
129
+ }
130
+ let resourceUri;
131
+ let resourceMetadata;
132
+ if (input.resource) {
133
+ try {
134
+ const blobService = this.resourceManager.getBlobStore();
135
+ const { base64, mimeType, filename } = input.resource;
136
+ const blobRef = await blobService.store(base64, {
137
+ mimeType,
138
+ originalName: filename,
139
+ source: "system"
140
+ });
141
+ resourceUri = blobRef.uri;
142
+ const meta = {};
143
+ const originalName = blobRef.metadata.originalName ?? filename;
144
+ if (originalName) {
145
+ meta.originalName = originalName;
146
+ }
147
+ if (blobRef.metadata.mimeType) {
148
+ meta.mimeType = blobRef.metadata.mimeType;
149
+ }
150
+ resourceMetadata = Object.keys(meta).length > 0 ? meta : void 0;
151
+ } catch (error) {
152
+ import_logger.logger.warn(`Failed to store custom prompt resource: ${String(error)}`);
153
+ }
154
+ }
155
+ const now = Date.now();
156
+ const record = {
157
+ id,
158
+ name: id,
159
+ content: input.content,
160
+ createdAt: now,
161
+ updatedAt: now,
162
+ ...input.title ? { title: input.title } : {},
163
+ ...input.description ? { description: input.description } : {},
164
+ ...input.arguments ? { arguments: input.arguments } : {},
165
+ ...resourceUri ? { resourceUri } : {},
166
+ ...resourceMetadata ? { resourceMetadata } : {}
167
+ };
168
+ await this.database.set(this.toKey(id), record);
169
+ this.invalidateCache();
170
+ await this.buildCache();
171
+ const prompt = this.promptsCache.find((p) => p.name === id);
172
+ if (!prompt) {
173
+ throw import_errors.PromptError.notFound(id);
174
+ }
175
+ return prompt;
176
+ }
177
+ async deletePrompt(name) {
178
+ if (!this.cacheValid) {
179
+ await this.buildCache();
180
+ }
181
+ const record = this.promptRecords.get(name);
182
+ if (!record) {
183
+ throw import_errors.PromptError.notFound(name);
184
+ }
185
+ await this.database.delete(this.toKey(name));
186
+ if (record.resourceUri) {
187
+ try {
188
+ const blobService = this.resourceManager.getBlobStore();
189
+ await blobService.delete(record.resourceUri);
190
+ } catch (error) {
191
+ import_logger.logger.warn(`Failed to delete blob for custom prompt ${name}: ${String(error)}`);
192
+ }
193
+ }
194
+ this.invalidateCache();
195
+ }
196
+ async buildCache() {
197
+ try {
198
+ const keys = await this.database.list(CUSTOM_PROMPT_KEY_PREFIX);
199
+ const prompts = [];
200
+ this.promptRecords.clear();
201
+ for (const key of keys) {
202
+ try {
203
+ const record = await this.database.get(key);
204
+ if (!record) continue;
205
+ this.promptRecords.set(record.name, record);
206
+ const metadata = {
207
+ originalName: record.resourceMetadata?.originalName && record.resourceMetadata.originalName.trim().length > 0 ? record.resourceMetadata.originalName : record.name
208
+ };
209
+ if (record.resourceUri) {
210
+ metadata.resourceUri = record.resourceUri;
211
+ }
212
+ if (record.resourceMetadata?.mimeType) {
213
+ metadata.mimeType = record.resourceMetadata.mimeType;
214
+ }
215
+ metadata.createdAt = record.createdAt;
216
+ metadata.updatedAt = record.updatedAt;
217
+ prompts.push({
218
+ name: record.name,
219
+ title: record.title,
220
+ description: record.description,
221
+ source: "custom",
222
+ ...record.arguments && { arguments: record.arguments },
223
+ metadata
224
+ });
225
+ } catch (error) {
226
+ import_logger.logger.warn(`Failed to load custom prompt from ${key}: ${String(error)}`);
227
+ }
228
+ }
229
+ this.promptsCache = prompts;
230
+ this.cacheValid = true;
231
+ } catch (error) {
232
+ import_logger.logger.error(`Failed to build custom prompts cache: ${String(error)}`);
233
+ this.promptsCache = [];
234
+ this.cacheValid = false;
235
+ }
236
+ }
237
+ toKey(id) {
238
+ return `${CUSTOM_PROMPT_KEY_PREFIX}${id}`;
239
+ }
240
+ slugify(name) {
241
+ const slug = name.toLowerCase().trim().replace(/[^a-z0-9\s\-_]/g, "").replace(/[\s\-_]+/g, "-").replace(/^-+|-+$/g, "");
242
+ return slug;
243
+ }
244
+ applyArguments(content, args, declaredArgs) {
245
+ if (!args || Object.keys(args).length === 0) {
246
+ return content;
247
+ }
248
+ let result = content;
249
+ for (const [key, value] of Object.entries(args)) {
250
+ if (key.startsWith("_")) continue;
251
+ const placeholder = `{{${key}}}`;
252
+ result = result.replaceAll(placeholder, String(value));
253
+ }
254
+ const usesPositional = /\$[1-9]/.test(content) || content.includes("$ARGUMENTS");
255
+ let usesNamed = false;
256
+ if (declaredArgs && declaredArgs.length > 0) {
257
+ usesNamed = declaredArgs.some((a) => a.name && content.includes(`{{${a.name}}}`));
258
+ } else {
259
+ usesNamed = content.includes("{{") && content.includes("}}");
260
+ }
261
+ const placeholdersUsed = usesPositional || usesNamed;
262
+ if (!placeholdersUsed) {
263
+ if (args._context) {
264
+ const contextString = String(args._context);
265
+ return `${result}
266
+
267
+ Context: ${contextString}`;
268
+ }
269
+ const argEntries = Object.entries(args).filter(([k]) => !k.startsWith("_"));
270
+ if (argEntries.length > 0) {
271
+ const formattedArgs = argEntries.map(([k, v]) => `${k}: ${v}`).join(", ");
272
+ return `${result}
273
+
274
+ Arguments: ${formattedArgs}`;
275
+ }
276
+ }
277
+ return result;
278
+ }
279
+ }
280
+ // Annotate the CommonJS export names for ESM import in node:
281
+ 0 && (module.exports = {
282
+ CustomPromptProvider
283
+ });
@@ -0,0 +1,36 @@
1
+ import type { PromptProvider, PromptInfo, PromptDefinition, PromptListResult, PromptArgument } from '../types.js';
2
+ import type { GetPromptResult } from '@modelcontextprotocol/sdk/types.js';
3
+ import type { Database } from '../../storage/database/types.js';
4
+ import type { ResourceManager } from '../../resources/manager.js';
5
+ export interface CreateCustomPromptInput {
6
+ name: string;
7
+ title?: string;
8
+ description?: string;
9
+ content: string;
10
+ arguments?: PromptArgument[];
11
+ resource?: {
12
+ base64: string;
13
+ mimeType: string;
14
+ filename?: string;
15
+ };
16
+ }
17
+ export declare class CustomPromptProvider implements PromptProvider {
18
+ private database;
19
+ private resourceManager;
20
+ private cacheValid;
21
+ private promptsCache;
22
+ private promptRecords;
23
+ constructor(database: Database, resourceManager: ResourceManager);
24
+ getSource(): string;
25
+ invalidateCache(): void;
26
+ listPrompts(_cursor?: string): Promise<PromptListResult>;
27
+ getPrompt(name: string, args?: Record<string, unknown>): Promise<GetPromptResult>;
28
+ getPromptDefinition(name: string): Promise<PromptDefinition | null>;
29
+ createPrompt(input: CreateCustomPromptInput): Promise<PromptInfo>;
30
+ deletePrompt(name: string): Promise<void>;
31
+ private buildCache;
32
+ private toKey;
33
+ private slugify;
34
+ private applyArguments;
35
+ }
36
+ //# sourceMappingURL=custom-prompt-provider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-prompt-provider.d.ts","sourceRoot":"","sources":["../../../src/prompts/providers/custom-prompt-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,cAAc,EACd,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACjB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iCAAiC,CAAC;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAuBlE,MAAM,WAAW,uBAAuB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,cAAc,EAAE,CAAC;IAC7B,QAAQ,CAAC,EAAE;QACP,MAAM,EAAE,MAAM,CAAC;QACf,QAAQ,EAAE,MAAM,CAAC;QACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACrB,CAAC;CACL;AAED,qBAAa,oBAAqB,YAAW,cAAc;IAMnD,OAAO,CAAC,QAAQ;IAChB,OAAO,CAAC,eAAe;IAN3B,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,YAAY,CAAoB;IACxC,OAAO,CAAC,aAAa,CAA8C;gBAGvD,QAAQ,EAAE,QAAQ,EAClB,eAAe,EAAE,eAAe;IAG5C,SAAS,IAAI,MAAM;IAInB,eAAe,IAAI,IAAI;IAMjB,WAAW,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAQxD,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,eAAe,CAAC;IAiEjF,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC;IAcnE,YAAY,CAAC,KAAK,EAAE,uBAAuB,GAAG,OAAO,CAAC,UAAU,CAAC;IAsEjE,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAqBjC,UAAU;IAkDxB,OAAO,CAAC,KAAK;IAIb,OAAO,CAAC,OAAO;IAUf,OAAO,CAAC,cAAc;CA4CzB"}