@dexto/core 1.2.4 → 1.2.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 (551) hide show
  1. package/README.md +60 -0
  2. package/dist/agent/DextoAgent.cjs +579 -345
  3. package/dist/agent/DextoAgent.d.ts +131 -83
  4. package/dist/agent/DextoAgent.d.ts.map +1 -1
  5. package/dist/agent/DextoAgent.js +573 -336
  6. package/dist/agent/agentCard.cjs +4 -2
  7. package/dist/agent/agentCard.d.ts +0 -1
  8. package/dist/agent/agentCard.d.ts.map +1 -1
  9. package/dist/agent/agentCard.js +4 -2
  10. package/dist/agent/index.cjs +3 -7
  11. package/dist/agent/index.d.ts +3 -3
  12. package/dist/agent/index.d.ts.map +1 -1
  13. package/dist/agent/index.js +7 -6
  14. package/dist/agent/schemas.cjs +179 -75
  15. package/dist/agent/schemas.d.ts +2678 -586
  16. package/dist/agent/schemas.d.ts.map +1 -1
  17. package/dist/agent/schemas.js +172 -65
  18. package/dist/agent/state-manager.cjs +28 -23
  19. package/dist/agent/state-manager.d.ts +4 -1
  20. package/dist/agent/state-manager.d.ts.map +1 -1
  21. package/dist/agent/state-manager.js +28 -23
  22. package/dist/{preferences/constants.cjs → agent/types.cjs} +2 -14
  23. package/dist/agent/types.d.ts +54 -0
  24. package/dist/agent/types.d.ts.map +1 -0
  25. package/dist/agent/types.js +0 -0
  26. package/dist/approval/errors.cjs +89 -8
  27. package/dist/approval/errors.d.ts +5 -3
  28. package/dist/approval/errors.d.ts.map +1 -1
  29. package/dist/approval/errors.js +89 -8
  30. package/dist/approval/{providers/factory.d.ts → factory.d.ts} +2 -2
  31. package/dist/approval/factory.d.ts.map +1 -0
  32. package/dist/approval/{providers/factory.js → factory.js} +1 -1
  33. package/dist/approval/index.cjs +4 -6
  34. package/dist/approval/index.d.ts +3 -5
  35. package/dist/approval/index.d.ts.map +1 -1
  36. package/dist/approval/index.js +4 -5
  37. package/dist/approval/manager.cjs +140 -37
  38. package/dist/approval/manager.d.ts +56 -17
  39. package/dist/approval/manager.d.ts.map +1 -1
  40. package/dist/approval/manager.js +141 -38
  41. package/dist/approval/schemas.cjs +9 -1
  42. package/dist/approval/schemas.d.ts +120 -35
  43. package/dist/approval/schemas.d.ts.map +1 -1
  44. package/dist/approval/schemas.js +9 -2
  45. package/dist/approval/types.cjs +14 -2
  46. package/dist/approval/types.d.ts +64 -12
  47. package/dist/approval/types.d.ts.map +1 -1
  48. package/dist/approval/types.js +12 -1
  49. package/dist/context/compression/middle-removal.cjs +11 -11
  50. package/dist/context/compression/middle-removal.d.ts +3 -1
  51. package/dist/context/compression/middle-removal.d.ts.map +1 -1
  52. package/dist/context/compression/middle-removal.js +11 -11
  53. package/dist/context/compression/oldest-removal.cjs +18 -5
  54. package/dist/context/compression/oldest-removal.d.ts +3 -1
  55. package/dist/context/compression/oldest-removal.d.ts.map +1 -1
  56. package/dist/context/compression/oldest-removal.js +18 -5
  57. package/dist/context/manager.cjs +94 -67
  58. package/dist/context/manager.d.ts +13 -10
  59. package/dist/context/manager.d.ts.map +1 -1
  60. package/dist/context/manager.js +94 -67
  61. package/dist/context/utils.cjs +79 -65
  62. package/dist/context/utils.d.ts +15 -12
  63. package/dist/context/utils.d.ts.map +1 -1
  64. package/dist/context/utils.js +45 -31
  65. package/dist/errors/DextoRuntimeError.d.ts +5 -5
  66. package/dist/errors/DextoRuntimeError.d.ts.map +1 -1
  67. package/dist/errors/result-bridge.cjs +2 -3
  68. package/dist/errors/result-bridge.d.ts +5 -3
  69. package/dist/errors/result-bridge.d.ts.map +1 -1
  70. package/dist/errors/result-bridge.js +1 -2
  71. package/dist/errors/types.cjs +1 -2
  72. package/dist/errors/types.d.ts +5 -8
  73. package/dist/errors/types.d.ts.map +1 -1
  74. package/dist/errors/types.js +1 -2
  75. package/dist/events/index.cjs +125 -55
  76. package/dist/events/index.d.ts +204 -97
  77. package/dist/events/index.d.ts.map +1 -1
  78. package/dist/events/index.js +123 -55
  79. package/dist/filesystem/filesystem-service.cjs +40 -30
  80. package/dist/filesystem/filesystem-service.d.ts +9 -1
  81. package/dist/filesystem/filesystem-service.d.ts.map +1 -1
  82. package/dist/filesystem/filesystem-service.js +40 -30
  83. package/dist/filesystem/path-validator.cjs +4 -3
  84. package/dist/filesystem/path-validator.d.ts +3 -1
  85. package/dist/filesystem/path-validator.d.ts.map +1 -1
  86. package/dist/filesystem/path-validator.js +4 -3
  87. package/dist/filesystem/types.d.ts +3 -3
  88. package/dist/filesystem/types.d.ts.map +1 -1
  89. package/dist/index.browser.cjs +7 -0
  90. package/dist/index.browser.d.ts +2 -0
  91. package/dist/index.browser.d.ts.map +1 -1
  92. package/dist/index.browser.js +4 -0
  93. package/dist/index.cjs +0 -7
  94. package/dist/index.d.ts +12 -3
  95. package/dist/index.d.ts.map +1 -1
  96. package/dist/index.js +0 -4
  97. package/dist/llm/formatters/anthropic.cjs +32 -21
  98. package/dist/llm/formatters/anthropic.d.ts +3 -0
  99. package/dist/llm/formatters/anthropic.d.ts.map +1 -1
  100. package/dist/llm/formatters/anthropic.js +32 -21
  101. package/dist/llm/formatters/factory.cjs +6 -7
  102. package/dist/llm/formatters/factory.d.ts +2 -1
  103. package/dist/llm/formatters/factory.d.ts.map +1 -1
  104. package/dist/llm/formatters/factory.js +4 -5
  105. package/dist/llm/formatters/openai.cjs +38 -9
  106. package/dist/llm/formatters/openai.d.ts +3 -0
  107. package/dist/llm/formatters/openai.d.ts.map +1 -1
  108. package/dist/llm/formatters/openai.js +38 -9
  109. package/dist/llm/formatters/vercel.cjs +49 -8
  110. package/dist/llm/formatters/vercel.d.ts +3 -0
  111. package/dist/llm/formatters/vercel.d.ts.map +1 -1
  112. package/dist/llm/formatters/vercel.js +49 -8
  113. package/dist/llm/registry.cjs +153 -17
  114. package/dist/llm/registry.d.ts +5 -2
  115. package/dist/llm/registry.d.ts.map +1 -1
  116. package/dist/llm/registry.js +143 -7
  117. package/dist/llm/resolver.cjs +4 -4
  118. package/dist/llm/resolver.d.ts +3 -2
  119. package/dist/llm/resolver.d.ts.map +1 -1
  120. package/dist/llm/resolver.js +4 -4
  121. package/dist/llm/schemas.cjs +6 -3
  122. package/dist/llm/schemas.d.ts +51 -17
  123. package/dist/llm/schemas.d.ts.map +1 -1
  124. package/dist/llm/schemas.js +5 -3
  125. package/dist/llm/services/anthropic.cjs +216 -183
  126. package/dist/llm/services/anthropic.d.ts +3 -1
  127. package/dist/llm/services/anthropic.d.ts.map +1 -1
  128. package/dist/llm/services/anthropic.js +217 -184
  129. package/dist/llm/services/factory.cjs +15 -9
  130. package/dist/llm/services/factory.d.ts +2 -1
  131. package/dist/llm/services/factory.d.ts.map +1 -1
  132. package/dist/llm/services/factory.js +15 -9
  133. package/dist/llm/services/openai.cjs +262 -225
  134. package/dist/llm/services/openai.d.ts +3 -1
  135. package/dist/llm/services/openai.d.ts.map +1 -1
  136. package/dist/llm/services/openai.js +263 -226
  137. package/dist/llm/services/test-utils.integration.cjs +58 -12
  138. package/dist/llm/services/test-utils.integration.d.ts.map +1 -1
  139. package/dist/llm/services/test-utils.integration.js +58 -12
  140. package/dist/llm/services/types.d.ts +9 -0
  141. package/dist/llm/services/types.d.ts.map +1 -1
  142. package/dist/llm/services/vercel.cjs +163 -111
  143. package/dist/llm/services/vercel.d.ts +3 -1
  144. package/dist/llm/services/vercel.d.ts.map +1 -1
  145. package/dist/llm/services/vercel.js +157 -105
  146. package/dist/llm/tokenizer/factory.cjs +2 -2
  147. package/dist/llm/tokenizer/factory.d.ts +3 -1
  148. package/dist/llm/tokenizer/factory.d.ts.map +1 -1
  149. package/dist/llm/tokenizer/factory.js +2 -2
  150. package/dist/llm/tokenizer/openai.cjs +16 -9
  151. package/dist/llm/tokenizer/openai.d.ts +4 -1
  152. package/dist/llm/tokenizer/openai.d.ts.map +1 -1
  153. package/dist/llm/tokenizer/openai.js +16 -9
  154. package/dist/llm/validation.cjs +8 -9
  155. package/dist/llm/validation.d.ts +3 -1
  156. package/dist/llm/validation.d.ts.map +1 -1
  157. package/dist/llm/validation.js +5 -6
  158. package/dist/logger/factory.cjs +54 -0
  159. package/dist/logger/factory.d.ts +36 -0
  160. package/dist/logger/factory.d.ts.map +1 -0
  161. package/dist/logger/factory.js +31 -0
  162. package/dist/logger/index.cjs +42 -3
  163. package/dist/logger/index.d.ts +17 -1
  164. package/dist/logger/index.d.ts.map +1 -1
  165. package/dist/logger/index.js +26 -1
  166. package/dist/logger/logger.cjs +30 -17
  167. package/dist/logger/logger.d.ts.map +1 -1
  168. package/dist/logger/logger.js +30 -17
  169. package/dist/logger/v2/dexto-logger.cjs +141 -0
  170. package/dist/logger/v2/dexto-logger.d.ts +54 -0
  171. package/dist/logger/v2/dexto-logger.d.ts.map +1 -0
  172. package/dist/logger/v2/dexto-logger.js +118 -0
  173. package/dist/{preferences → logger/v2}/error-codes.cjs +11 -10
  174. package/dist/logger/v2/error-codes.d.ts +13 -0
  175. package/dist/logger/v2/error-codes.d.ts.map +1 -0
  176. package/dist/logger/v2/error-codes.js +13 -0
  177. package/dist/logger/v2/errors.cjs +107 -0
  178. package/dist/logger/v2/errors.d.ts +32 -0
  179. package/dist/logger/v2/errors.d.ts.map +1 -0
  180. package/dist/logger/v2/errors.js +84 -0
  181. package/dist/logger/v2/schemas.cjs +57 -0
  182. package/dist/logger/v2/schemas.d.ts +147 -0
  183. package/dist/logger/v2/schemas.d.ts.map +1 -0
  184. package/dist/logger/v2/schemas.js +33 -0
  185. package/dist/logger/v2/transport-factory.cjs +53 -0
  186. package/dist/logger/v2/transport-factory.d.ts +21 -0
  187. package/dist/logger/v2/transport-factory.d.ts.map +1 -0
  188. package/dist/logger/v2/transport-factory.js +29 -0
  189. package/dist/logger/v2/transports/console-transport.cjs +79 -0
  190. package/dist/logger/v2/transports/console-transport.d.ts +23 -0
  191. package/dist/logger/v2/transports/console-transport.d.ts.map +1 -0
  192. package/dist/logger/v2/transports/console-transport.js +46 -0
  193. package/dist/logger/v2/transports/file-transport.cjs +161 -0
  194. package/dist/logger/v2/transports/file-transport.d.ts +46 -0
  195. package/dist/logger/v2/transports/file-transport.d.ts.map +1 -0
  196. package/dist/logger/v2/transports/file-transport.js +128 -0
  197. package/dist/logger/v2/types.cjs +49 -0
  198. package/dist/logger/v2/types.d.ts +123 -0
  199. package/dist/logger/v2/types.d.ts.map +1 -0
  200. package/dist/logger/v2/types.js +26 -0
  201. package/dist/mcp/manager.cjs +88 -78
  202. package/dist/mcp/manager.d.ts +3 -1
  203. package/dist/mcp/manager.d.ts.map +1 -1
  204. package/dist/mcp/manager.js +88 -78
  205. package/dist/mcp/mcp-client.cjs +109 -79
  206. package/dist/mcp/mcp-client.d.ts +3 -0
  207. package/dist/mcp/mcp-client.d.ts.map +1 -1
  208. package/dist/mcp/mcp-client.js +102 -72
  209. package/dist/memory/index.cjs +2 -0
  210. package/dist/memory/index.d.ts +1 -1
  211. package/dist/memory/index.d.ts.map +1 -1
  212. package/dist/memory/index.js +3 -1
  213. package/dist/memory/manager.cjs +9 -7
  214. package/dist/memory/manager.d.ts +3 -1
  215. package/dist/memory/manager.d.ts.map +1 -1
  216. package/dist/memory/manager.js +9 -7
  217. package/dist/memory/schemas.cjs +10 -0
  218. package/dist/memory/schemas.d.ts +37 -8
  219. package/dist/memory/schemas.d.ts.map +1 -1
  220. package/dist/memory/schemas.js +9 -0
  221. package/dist/plugins/manager.cjs +21 -19
  222. package/dist/plugins/manager.d.ts +3 -1
  223. package/dist/plugins/manager.d.ts.map +1 -1
  224. package/dist/plugins/manager.js +21 -19
  225. package/dist/plugins/schemas.d.ts +9 -9
  226. package/dist/plugins/types.d.ts +2 -2
  227. package/dist/plugins/types.d.ts.map +1 -1
  228. package/dist/process/command-validator.cjs +30 -20
  229. package/dist/process/command-validator.d.ts +4 -1
  230. package/dist/process/command-validator.d.ts.map +1 -1
  231. package/dist/process/command-validator.js +30 -20
  232. package/dist/process/process-service.cjs +23 -21
  233. package/dist/process/process-service.d.ts +3 -1
  234. package/dist/process/process-service.d.ts.map +1 -1
  235. package/dist/process/process-service.js +23 -21
  236. package/dist/prompts/index.cjs +6 -8
  237. package/dist/prompts/index.d.ts +2 -4
  238. package/dist/prompts/index.d.ts.map +1 -1
  239. package/dist/prompts/index.js +4 -6
  240. package/dist/prompts/prompt-manager.cjs +25 -20
  241. package/dist/prompts/prompt-manager.d.ts +3 -1
  242. package/dist/prompts/prompt-manager.d.ts.map +1 -1
  243. package/dist/prompts/prompt-manager.js +25 -20
  244. package/dist/prompts/providers/config-prompt-provider.cjs +331 -0
  245. package/dist/prompts/providers/config-prompt-provider.d.ts +34 -0
  246. package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -0
  247. package/dist/prompts/providers/config-prompt-provider.js +308 -0
  248. package/dist/prompts/providers/custom-prompt-provider.cjs +11 -7
  249. package/dist/prompts/providers/custom-prompt-provider.d.ts +3 -1
  250. package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -1
  251. package/dist/prompts/providers/custom-prompt-provider.js +11 -7
  252. package/dist/prompts/providers/mcp-prompt-provider.cjs +7 -6
  253. package/dist/prompts/providers/mcp-prompt-provider.d.ts +3 -1
  254. package/dist/prompts/providers/mcp-prompt-provider.d.ts.map +1 -1
  255. package/dist/prompts/providers/mcp-prompt-provider.js +7 -6
  256. package/dist/prompts/schemas.cjs +42 -23
  257. package/dist/prompts/schemas.d.ts +123 -14
  258. package/dist/prompts/schemas.d.ts.map +1 -1
  259. package/dist/prompts/schemas.js +39 -22
  260. package/dist/prompts/types.d.ts +1 -1
  261. package/dist/prompts/types.d.ts.map +1 -1
  262. package/dist/resources/handlers/blob-handler.cjs +15 -11
  263. package/dist/resources/handlers/blob-handler.d.ts +3 -1
  264. package/dist/resources/handlers/blob-handler.d.ts.map +1 -1
  265. package/dist/resources/handlers/blob-handler.js +15 -11
  266. package/dist/resources/handlers/factory.cjs +3 -3
  267. package/dist/resources/handlers/factory.d.ts +2 -1
  268. package/dist/resources/handlers/factory.d.ts.map +1 -1
  269. package/dist/resources/handlers/factory.js +3 -3
  270. package/dist/resources/handlers/filesystem-handler.cjs +10 -8
  271. package/dist/resources/handlers/filesystem-handler.d.ts +3 -1
  272. package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
  273. package/dist/resources/handlers/filesystem-handler.js +10 -8
  274. package/dist/resources/internal-provider.cjs +28 -20
  275. package/dist/resources/internal-provider.d.ts +3 -1
  276. package/dist/resources/internal-provider.d.ts.map +1 -1
  277. package/dist/resources/internal-provider.js +28 -20
  278. package/dist/resources/manager.cjs +34 -25
  279. package/dist/resources/manager.d.ts +3 -1
  280. package/dist/resources/manager.d.ts.map +1 -1
  281. package/dist/resources/manager.js +34 -25
  282. package/dist/resources/schemas.d.ts +6 -6
  283. package/dist/search/search-service.cjs +8 -6
  284. package/dist/search/search-service.d.ts +3 -1
  285. package/dist/search/search-service.d.ts.map +1 -1
  286. package/dist/search/search-service.js +8 -6
  287. package/dist/session/chat-session.cjs +40 -27
  288. package/dist/session/chat-session.d.ts +10 -7
  289. package/dist/session/chat-session.d.ts.map +1 -1
  290. package/dist/session/chat-session.js +40 -27
  291. package/dist/session/history/database.cjs +18 -11
  292. package/dist/session/history/database.d.ts +3 -1
  293. package/dist/session/history/database.d.ts.map +1 -1
  294. package/dist/session/history/database.js +18 -11
  295. package/dist/session/history/factory.cjs +2 -2
  296. package/dist/session/history/factory.d.ts +5 -1
  297. package/dist/session/history/factory.d.ts.map +1 -1
  298. package/dist/session/history/factory.js +2 -2
  299. package/dist/session/session-manager.cjs +37 -53
  300. package/dist/session/session-manager.d.ts +3 -17
  301. package/dist/session/session-manager.d.ts.map +1 -1
  302. package/dist/session/session-manager.js +37 -53
  303. package/dist/session/title-generator.cjs +3 -2
  304. package/dist/session/title-generator.d.ts +2 -1
  305. package/dist/session/title-generator.d.ts.map +1 -1
  306. package/dist/session/title-generator.js +3 -2
  307. package/dist/storage/blob/factory.cjs +9 -18
  308. package/dist/storage/blob/factory.d.ts +5 -4
  309. package/dist/storage/blob/factory.d.ts.map +1 -1
  310. package/dist/storage/blob/factory.js +8 -17
  311. package/dist/storage/blob/local-blob-store.cjs +25 -32
  312. package/dist/storage/blob/local-blob-store.d.ts +3 -2
  313. package/dist/storage/blob/local-blob-store.d.ts.map +1 -1
  314. package/dist/storage/blob/local-blob-store.js +25 -32
  315. package/dist/storage/blob/memory-blob-store.cjs +326 -0
  316. package/dist/storage/blob/memory-blob-store.d.ts +66 -0
  317. package/dist/storage/blob/memory-blob-store.d.ts.map +1 -0
  318. package/dist/storage/blob/memory-blob-store.js +303 -0
  319. package/dist/storage/blob/schemas.cjs +3 -1
  320. package/dist/storage/blob/schemas.d.ts +6 -6
  321. package/dist/storage/blob/schemas.d.ts.map +1 -1
  322. package/dist/storage/blob/schemas.js +3 -1
  323. package/dist/storage/cache/factory.cjs +7 -8
  324. package/dist/storage/cache/factory.d.ts +4 -1
  325. package/dist/storage/cache/factory.d.ts.map +1 -1
  326. package/dist/storage/cache/factory.js +4 -5
  327. package/dist/storage/cache/redis-store.cjs +4 -1
  328. package/dist/storage/cache/redis-store.d.ts +3 -1
  329. package/dist/storage/cache/redis-store.d.ts.map +1 -1
  330. package/dist/storage/cache/redis-store.js +4 -1
  331. package/dist/storage/database/factory.cjs +13 -16
  332. package/dist/storage/database/factory.d.ts +5 -3
  333. package/dist/storage/database/factory.d.ts.map +1 -1
  334. package/dist/storage/database/factory.js +9 -12
  335. package/dist/storage/database/postgres-store.cjs +4 -1
  336. package/dist/storage/database/postgres-store.d.ts +3 -1
  337. package/dist/storage/database/postgres-store.d.ts.map +1 -1
  338. package/dist/storage/database/postgres-store.js +4 -1
  339. package/dist/storage/database/schemas.cjs +3 -4
  340. package/dist/storage/database/schemas.d.ts +8 -16
  341. package/dist/storage/database/schemas.d.ts.map +1 -1
  342. package/dist/storage/database/schemas.js +3 -4
  343. package/dist/storage/database/sqlite-store.cjs +17 -45
  344. package/dist/storage/database/sqlite-store.d.ts +3 -3
  345. package/dist/storage/database/sqlite-store.d.ts.map +1 -1
  346. package/dist/storage/database/sqlite-store.js +17 -45
  347. package/dist/storage/schemas.cjs +3 -1
  348. package/dist/storage/schemas.d.ts +16 -23
  349. package/dist/storage/schemas.d.ts.map +1 -1
  350. package/dist/storage/schemas.js +3 -1
  351. package/dist/storage/storage-manager.cjs +15 -15
  352. package/dist/storage/storage-manager.d.ts +6 -6
  353. package/dist/storage/storage-manager.d.ts.map +1 -1
  354. package/dist/storage/storage-manager.js +15 -15
  355. package/dist/systemPrompt/contributors.cjs +15 -15
  356. package/dist/systemPrompt/contributors.d.ts +5 -3
  357. package/dist/systemPrompt/contributors.d.ts.map +1 -1
  358. package/dist/systemPrompt/contributors.js +15 -15
  359. package/dist/systemPrompt/in-built-prompts.cjs +0 -5
  360. package/dist/systemPrompt/in-built-prompts.d.ts +1 -2
  361. package/dist/systemPrompt/in-built-prompts.d.ts.map +1 -1
  362. package/dist/systemPrompt/in-built-prompts.js +0 -4
  363. package/dist/systemPrompt/manager.cjs +31 -23
  364. package/dist/systemPrompt/manager.d.ts +5 -3
  365. package/dist/systemPrompt/manager.d.ts.map +1 -1
  366. package/dist/systemPrompt/manager.js +31 -23
  367. package/dist/systemPrompt/registry.cjs +1 -2
  368. package/dist/systemPrompt/registry.d.ts +1 -1
  369. package/dist/systemPrompt/registry.d.ts.map +1 -1
  370. package/dist/systemPrompt/registry.js +1 -2
  371. package/dist/systemPrompt/schemas.cjs +24 -18
  372. package/dist/systemPrompt/schemas.d.ts +46 -222
  373. package/dist/systemPrompt/schemas.d.ts.map +1 -1
  374. package/dist/systemPrompt/schemas.js +14 -18
  375. package/dist/telemetry/decorators.cjs +54 -15
  376. package/dist/telemetry/decorators.d.ts.map +1 -1
  377. package/dist/telemetry/decorators.js +54 -15
  378. package/dist/telemetry/utils.cjs +21 -14
  379. package/dist/telemetry/utils.d.ts +7 -3
  380. package/dist/telemetry/utils.d.ts.map +1 -1
  381. package/dist/telemetry/utils.js +21 -14
  382. package/dist/tools/confirmation/allowed-tools-provider/factory.cjs +2 -2
  383. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts +2 -1
  384. package/dist/tools/confirmation/allowed-tools-provider/factory.d.ts.map +1 -1
  385. package/dist/tools/confirmation/allowed-tools-provider/factory.js +2 -2
  386. package/dist/tools/confirmation/allowed-tools-provider/storage.cjs +7 -6
  387. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts +3 -1
  388. package/dist/tools/confirmation/allowed-tools-provider/storage.d.ts.map +1 -1
  389. package/dist/tools/confirmation/allowed-tools-provider/storage.js +7 -6
  390. package/dist/tools/errors.cjs +2 -1
  391. package/dist/tools/errors.d.ts.map +1 -1
  392. package/dist/tools/errors.js +2 -1
  393. package/dist/tools/internal-tools/constants.cjs +2 -1
  394. package/dist/tools/internal-tools/constants.d.ts +1 -1
  395. package/dist/tools/internal-tools/constants.d.ts.map +1 -1
  396. package/dist/tools/internal-tools/constants.js +2 -1
  397. package/dist/tools/internal-tools/implementations/bash-exec-tool.cjs +1 -1
  398. package/dist/tools/internal-tools/implementations/bash-exec-tool.js +1 -1
  399. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.cjs +192 -0
  400. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts +33 -0
  401. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.d.ts.map +1 -0
  402. package/dist/tools/internal-tools/implementations/delegate-to-url-tool.js +169 -0
  403. package/dist/tools/internal-tools/provider.cjs +21 -17
  404. package/dist/tools/internal-tools/provider.d.ts +3 -1
  405. package/dist/tools/internal-tools/provider.d.ts.map +1 -1
  406. package/dist/tools/internal-tools/provider.js +21 -17
  407. package/dist/tools/internal-tools/registry.cjs +5 -0
  408. package/dist/tools/internal-tools/registry.d.ts.map +1 -1
  409. package/dist/tools/internal-tools/registry.js +5 -0
  410. package/dist/tools/schemas.cjs +16 -4
  411. package/dist/tools/schemas.d.ts +21 -9
  412. package/dist/tools/schemas.d.ts.map +1 -1
  413. package/dist/tools/schemas.js +15 -4
  414. package/dist/tools/tool-manager.cjs +64 -47
  415. package/dist/tools/tool-manager.d.ts +4 -2
  416. package/dist/tools/tool-manager.d.ts.map +1 -1
  417. package/dist/tools/tool-manager.js +61 -44
  418. package/dist/tools/types.d.ts +0 -4
  419. package/dist/tools/types.d.ts.map +1 -1
  420. package/dist/utils/env-file.cjs +118 -0
  421. package/dist/utils/env-file.d.ts +5 -0
  422. package/dist/utils/env-file.d.ts.map +1 -0
  423. package/dist/utils/env-file.js +85 -0
  424. package/dist/utils/error-conversion.cjs +23 -1
  425. package/dist/utils/error-conversion.d.ts +2 -1
  426. package/dist/utils/error-conversion.d.ts.map +1 -1
  427. package/dist/utils/error-conversion.js +23 -1
  428. package/dist/utils/execution-context.d.ts.map +1 -1
  429. package/dist/utils/fs-walk.d.ts.map +1 -1
  430. package/dist/utils/index.cjs +7 -9
  431. package/dist/utils/index.d.ts +3 -4
  432. package/dist/utils/index.d.ts.map +1 -1
  433. package/dist/utils/index.js +3 -4
  434. package/dist/utils/path.cjs +22 -57
  435. package/dist/utils/path.d.ts +8 -7
  436. package/dist/utils/path.d.ts.map +1 -1
  437. package/dist/utils/path.js +21 -54
  438. package/dist/utils/result.cjs +37 -14
  439. package/dist/utils/result.d.ts.map +1 -1
  440. package/dist/utils/result.js +37 -14
  441. package/dist/utils/schema.cjs +2 -3
  442. package/dist/utils/schema.d.ts +2 -1
  443. package/dist/utils/schema.d.ts.map +1 -1
  444. package/dist/utils/schema.js +1 -2
  445. package/dist/utils/service-initializer.cjs +88 -61
  446. package/dist/utils/service-initializer.d.ts +4 -2
  447. package/dist/utils/service-initializer.d.ts.map +1 -1
  448. package/dist/utils/service-initializer.js +70 -43
  449. package/package.json +7 -3
  450. package/dist/Dexto.cjs +0 -251
  451. package/dist/Dexto.d.ts +0 -191
  452. package/dist/Dexto.d.ts.map +0 -1
  453. package/dist/Dexto.js +0 -228
  454. package/dist/agent/registry/error-codes.cjs +0 -44
  455. package/dist/agent/registry/error-codes.d.ts +0 -21
  456. package/dist/agent/registry/error-codes.d.ts.map +0 -1
  457. package/dist/agent/registry/error-codes.js +0 -21
  458. package/dist/agent/registry/errors.cjs +0 -188
  459. package/dist/agent/registry/errors.d.ts +0 -63
  460. package/dist/agent/registry/errors.d.ts.map +0 -1
  461. package/dist/agent/registry/errors.js +0 -165
  462. package/dist/agent/registry/registry.cjs +0 -479
  463. package/dist/agent/registry/registry.d.ts +0 -130
  464. package/dist/agent/registry/registry.d.ts.map +0 -1
  465. package/dist/agent/registry/registry.js +0 -453
  466. package/dist/agent/registry/types.cjs +0 -74
  467. package/dist/agent/registry/types.d.ts +0 -142
  468. package/dist/agent/registry/types.d.ts.map +0 -1
  469. package/dist/agent/registry/types.js +0 -48
  470. package/dist/agent/registry/user-registry.cjs +0 -140
  471. package/dist/agent/registry/user-registry.d.ts +0 -34
  472. package/dist/agent/registry/user-registry.d.ts.map +0 -1
  473. package/dist/agent/registry/user-registry.js +0 -105
  474. package/dist/approval/providers/event-based-approval-provider.cjs +0 -156
  475. package/dist/approval/providers/event-based-approval-provider.d.ts +0 -39
  476. package/dist/approval/providers/event-based-approval-provider.d.ts.map +0 -1
  477. package/dist/approval/providers/event-based-approval-provider.js +0 -133
  478. package/dist/approval/providers/factory.d.ts.map +0 -1
  479. package/dist/approval/providers/noop-approval-provider.cjs +0 -54
  480. package/dist/approval/providers/noop-approval-provider.d.ts +0 -18
  481. package/dist/approval/providers/noop-approval-provider.d.ts.map +0 -1
  482. package/dist/approval/providers/noop-approval-provider.js +0 -31
  483. package/dist/config/agent-resolver.cjs +0 -153
  484. package/dist/config/agent-resolver.d.ts +0 -14
  485. package/dist/config/agent-resolver.d.ts.map +0 -1
  486. package/dist/config/agent-resolver.js +0 -123
  487. package/dist/config/error-codes.cjs +0 -39
  488. package/dist/config/error-codes.d.ts +0 -16
  489. package/dist/config/error-codes.d.ts.map +0 -1
  490. package/dist/config/error-codes.js +0 -16
  491. package/dist/config/errors.cjs +0 -126
  492. package/dist/config/errors.d.ts +0 -34
  493. package/dist/config/errors.d.ts.map +0 -1
  494. package/dist/config/errors.js +0 -103
  495. package/dist/config/index.cjs +0 -26
  496. package/dist/config/index.d.ts +0 -4
  497. package/dist/config/index.d.ts.map +0 -1
  498. package/dist/config/index.js +0 -3
  499. package/dist/config/loader.cjs +0 -119
  500. package/dist/config/loader.d.ts +0 -16
  501. package/dist/config/loader.d.ts.map +0 -1
  502. package/dist/config/loader.js +0 -86
  503. package/dist/config/writer.cjs +0 -182
  504. package/dist/config/writer.d.ts +0 -35
  505. package/dist/config/writer.d.ts.map +0 -1
  506. package/dist/config/writer.js +0 -147
  507. package/dist/preferences/constants.d.ts +0 -2
  508. package/dist/preferences/constants.d.ts.map +0 -1
  509. package/dist/preferences/constants.js +0 -5
  510. package/dist/preferences/error-codes.d.ts +0 -8
  511. package/dist/preferences/error-codes.d.ts.map +0 -1
  512. package/dist/preferences/error-codes.js +0 -12
  513. package/dist/preferences/errors.cjs +0 -75
  514. package/dist/preferences/errors.d.ts +0 -18
  515. package/dist/preferences/errors.d.ts.map +0 -1
  516. package/dist/preferences/errors.js +0 -51
  517. package/dist/preferences/index.cjs +0 -55
  518. package/dist/preferences/index.d.ts +0 -6
  519. package/dist/preferences/index.d.ts.map +0 -1
  520. package/dist/preferences/index.js +0 -32
  521. package/dist/preferences/loader.cjs +0 -138
  522. package/dist/preferences/loader.d.ts +0 -51
  523. package/dist/preferences/loader.d.ts.map +0 -1
  524. package/dist/preferences/loader.js +0 -110
  525. package/dist/preferences/schemas.cjs +0 -75
  526. package/dist/preferences/schemas.d.ts +0 -110
  527. package/dist/preferences/schemas.d.ts.map +0 -1
  528. package/dist/preferences/schemas.js +0 -49
  529. package/dist/prompts/providers/file-prompt-provider.cjs +0 -399
  530. package/dist/prompts/providers/file-prompt-provider.d.ts +0 -47
  531. package/dist/prompts/providers/file-prompt-provider.d.ts.map +0 -1
  532. package/dist/prompts/providers/file-prompt-provider.js +0 -376
  533. package/dist/prompts/providers/starter-prompt-provider.cjs +0 -170
  534. package/dist/prompts/providers/starter-prompt-provider.d.ts +0 -45
  535. package/dist/prompts/providers/starter-prompt-provider.d.ts.map +0 -1
  536. package/dist/prompts/providers/starter-prompt-provider.js +0 -147
  537. package/dist/utils/api-key-store.cjs +0 -56
  538. package/dist/utils/api-key-store.d.ts +0 -24
  539. package/dist/utils/api-key-store.d.ts.map +0 -1
  540. package/dist/utils/api-key-store.js +0 -31
  541. package/dist/utils/env.cjs +0 -154
  542. package/dist/utils/env.d.ts +0 -28
  543. package/dist/utils/env.d.ts.map +0 -1
  544. package/dist/utils/env.js +0 -119
  545. package/dist/utils/port-utils.cjs +0 -37
  546. package/dist/utils/port-utils.d.ts +0 -10
  547. package/dist/utils/port-utils.d.ts.map +0 -1
  548. package/dist/utils/port-utils.js +0 -14
  549. package/dist/utils/port-utils.spec.cjs +0 -26
  550. package/dist/utils/port-utils.spec.js +0 -25
  551. /package/dist/approval/{providers/factory.cjs → factory.cjs} +0 -0
@@ -1,48 +0,0 @@
1
- import "../../chunk-C6A6W6XS.js";
2
- import { z } from "zod";
3
- function deriveDisplayName(slug) {
4
- return slug.split("-").filter(Boolean).map((part) => part.charAt(0).toUpperCase() + part.slice(1)).join(" ");
5
- }
6
- const AgentRegistryEntrySchema = z.object({
7
- id: z.string().describe("Unique identifier for the agent"),
8
- name: z.string().describe("Display name for the agent"),
9
- description: z.string(),
10
- author: z.string(),
11
- tags: z.array(z.string()),
12
- source: z.string(),
13
- main: z.string().optional(),
14
- type: z.enum(["builtin", "custom"]).default("builtin").describe("Agent type")
15
- }).strict();
16
- const RegistrySchema = z.object({
17
- version: z.string(),
18
- agents: z.record(z.string(), AgentRegistryEntrySchema)
19
- }).strict();
20
- function normalizeRegistryJson(raw) {
21
- if (!raw || typeof raw !== "object") {
22
- return { version: "1.0.0", agents: {} };
23
- }
24
- const input = raw;
25
- const normalizedAgents = {};
26
- const agents = input.agents && typeof input.agents === "object" && input.agents !== null ? input.agents : {};
27
- for (const [agentId, value] of Object.entries(agents)) {
28
- if (!value || typeof value !== "object") continue;
29
- const entry = { ...value };
30
- if (!entry.id || typeof entry.id !== "string" || entry.id.trim() !== agentId) {
31
- entry.id = agentId;
32
- }
33
- if (!entry.name || typeof entry.name !== "string" || !entry.name.trim()) {
34
- entry.name = deriveDisplayName(agentId);
35
- }
36
- normalizedAgents[agentId] = entry;
37
- }
38
- return {
39
- version: typeof input.version === "string" && input.version.trim().length > 0 ? input.version : "1.0.0",
40
- agents: normalizedAgents
41
- };
42
- }
43
- export {
44
- AgentRegistryEntrySchema,
45
- RegistrySchema,
46
- deriveDisplayName,
47
- normalizeRegistryJson
48
- };
@@ -1,140 +0,0 @@
1
- "use strict";
2
- var __create = Object.create;
3
- var __defProp = Object.defineProperty;
4
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
- var __getOwnPropNames = Object.getOwnPropertyNames;
6
- var __getProtoOf = Object.getPrototypeOf;
7
- var __hasOwnProp = Object.prototype.hasOwnProperty;
8
- var __export = (target, all) => {
9
- for (var name in all)
10
- __defProp(target, name, { get: all[name], enumerable: true });
11
- };
12
- var __copyProps = (to, from, except, desc) => {
13
- if (from && typeof from === "object" || typeof from === "function") {
14
- for (let key of __getOwnPropNames(from))
15
- if (!__hasOwnProp.call(to, key) && key !== except)
16
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
17
- }
18
- return to;
19
- };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
21
- // If the importer is in node compatibility mode or this is not an ESM
22
- // file that has been converted to a CommonJS file using a Babel-
23
- // compatible transform (i.e. "__esModule" has not been set), then set
24
- // "default" to the CommonJS "module.exports" for node compatibility.
25
- isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
26
- mod
27
- ));
28
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
29
- var user_registry_exports = {};
30
- __export(user_registry_exports, {
31
- addAgentToUserRegistry: () => addAgentToUserRegistry,
32
- getUserRegistryPath: () => getUserRegistryPath,
33
- loadUserRegistry: () => loadUserRegistry,
34
- mergeRegistries: () => mergeRegistries,
35
- removeAgentFromUserRegistry: () => removeAgentFromUserRegistry,
36
- saveUserRegistry: () => saveUserRegistry,
37
- userRegistryHasAgent: () => userRegistryHasAgent
38
- });
39
- module.exports = __toCommonJS(user_registry_exports);
40
- var import_fs = require("fs");
41
- var import_fs2 = require("fs");
42
- var import_path = __toESM(require("path"), 1);
43
- var import_path2 = require("../../utils/path.cjs");
44
- var import_types = require("./types.js");
45
- var import_errors = require("./errors.js");
46
- var import_logger = require("../../logger/index.cjs");
47
- const USER_REGISTRY_FILENAME = "user-agent-registry.json";
48
- function getUserRegistryPath() {
49
- return (0, import_path2.getDextoGlobalPath)("", USER_REGISTRY_FILENAME);
50
- }
51
- function loadUserRegistry() {
52
- const registryPath = getUserRegistryPath();
53
- if (!(0, import_fs2.existsSync)(registryPath)) {
54
- import_logger.logger.debug("User registry not found, returning empty registry");
55
- return { version: "1.0.0", agents: {} };
56
- }
57
- try {
58
- const content = (0, import_fs.readFileSync)(registryPath, "utf-8");
59
- const data = JSON.parse(content);
60
- return import_types.RegistrySchema.parse((0, import_types.normalizeRegistryJson)(data));
61
- } catch (error) {
62
- throw import_errors.RegistryError.registryParseError(
63
- registryPath,
64
- error instanceof Error ? error.message : String(error)
65
- );
66
- }
67
- }
68
- async function saveUserRegistry(registry) {
69
- const registryPath = getUserRegistryPath();
70
- const tempPath = `${registryPath}.tmp.${Date.now()}`;
71
- const dextoDir = import_path.default.dirname(registryPath);
72
- try {
73
- await import_fs.promises.mkdir(dextoDir, { recursive: true });
74
- await import_fs.promises.writeFile(tempPath, JSON.stringify(registry, null, 2), {
75
- encoding: "utf-8",
76
- mode: 384
77
- });
78
- await import_fs.promises.rename(tempPath, registryPath);
79
- import_logger.logger.debug(`Saved user registry to ${registryPath}`);
80
- } catch (error) {
81
- try {
82
- if ((0, import_fs2.existsSync)(tempPath)) {
83
- await import_fs.promises.rm(tempPath, { force: true });
84
- }
85
- } catch {
86
- }
87
- throw import_errors.RegistryError.registryWriteError(
88
- registryPath,
89
- error instanceof Error ? error.message : String(error)
90
- );
91
- }
92
- }
93
- function mergeRegistries(bundled, user) {
94
- return {
95
- version: bundled.version,
96
- agents: {
97
- ...bundled.agents,
98
- ...user.agents
99
- }
100
- };
101
- }
102
- function userRegistryHasAgent(agentId) {
103
- const userRegistry = loadUserRegistry();
104
- return agentId in userRegistry.agents;
105
- }
106
- async function addAgentToUserRegistry(agentId, entry) {
107
- const userRegistry = loadUserRegistry();
108
- if (agentId in userRegistry.agents) {
109
- throw import_errors.RegistryError.agentAlreadyExists(agentId);
110
- }
111
- userRegistry.agents[agentId] = {
112
- ...entry,
113
- id: agentId,
114
- // Force consistency between key and id field
115
- name: entry.name && entry.name.trim().length > 0 ? entry.name : (0, import_types.deriveDisplayName)(agentId),
116
- // Ensure name is never undefined or whitespace-only
117
- type: "custom"
118
- };
119
- await saveUserRegistry(userRegistry);
120
- import_logger.logger.info(`Added custom agent '${agentId}' to user registry`);
121
- }
122
- async function removeAgentFromUserRegistry(agentId) {
123
- const userRegistry = loadUserRegistry();
124
- if (!(agentId in userRegistry.agents)) {
125
- throw import_errors.RegistryError.agentNotFound(agentId, Object.keys(userRegistry.agents));
126
- }
127
- delete userRegistry.agents[agentId];
128
- await saveUserRegistry(userRegistry);
129
- import_logger.logger.info(`Removed custom agent '${agentId}' from user registry`);
130
- }
131
- // Annotate the CommonJS export names for ESM import in node:
132
- 0 && (module.exports = {
133
- addAgentToUserRegistry,
134
- getUserRegistryPath,
135
- loadUserRegistry,
136
- mergeRegistries,
137
- removeAgentFromUserRegistry,
138
- saveUserRegistry,
139
- userRegistryHasAgent
140
- });
@@ -1,34 +0,0 @@
1
- import { Registry, AgentRegistryEntry } from './types.js';
2
- /**
3
- * Get path to user registry file
4
- */
5
- export declare function getUserRegistryPath(): string;
6
- /**
7
- * Load user registry from ~/.dexto/user-agent-registry.json
8
- * Returns empty registry if file doesn't exist
9
- */
10
- export declare function loadUserRegistry(): Registry;
11
- /**
12
- * Save user registry atomically using temp file + rename
13
- */
14
- export declare function saveUserRegistry(registry: Registry): Promise<void>;
15
- /**
16
- * Merge bundled and user registries
17
- * User registry only contains custom agents
18
- * Name conflicts are not allowed (validated before adding to user registry)
19
- */
20
- export declare function mergeRegistries(bundled: Registry, user: Registry): Registry;
21
- /**
22
- * Check if agent exists in user registry
23
- */
24
- export declare function userRegistryHasAgent(agentId: string): boolean;
25
- /**
26
- * Add custom agent to user registry
27
- * Validates that name doesn't conflict with bundled registry
28
- */
29
- export declare function addAgentToUserRegistry(agentId: string, entry: Omit<AgentRegistryEntry, 'type'>): Promise<void>;
30
- /**
31
- * Remove custom agent from user registry
32
- */
33
- export declare function removeAgentFromUserRegistry(agentId: string): Promise<void>;
34
- //# sourceMappingURL=user-registry.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"user-registry.d.ts","sourceRoot":"","sources":["../../../src/agent/registry/user-registry.ts"],"names":[],"mappings":"AAIA,OAAO,EACH,QAAQ,EAER,kBAAkB,EAGrB,MAAM,YAAY,CAAC;AAMpB;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAE5C;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,QAAQ,CAkB3C;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC,CAkCxE;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAQ3E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAG7D;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,CACxC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,IAAI,CAAC,kBAAkB,EAAE,MAAM,CAAC,GACxC,OAAO,CAAC,IAAI,CAAC,CAkBf;AAED;;GAEG;AACH,wBAAsB,2BAA2B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAWhF"}
@@ -1,105 +0,0 @@
1
- import "../../chunk-C6A6W6XS.js";
2
- import { promises as fs, readFileSync } from "fs";
3
- import { existsSync } from "fs";
4
- import path from "path";
5
- import { getDextoGlobalPath } from "../../utils/path.js";
6
- import {
7
- RegistrySchema,
8
- normalizeRegistryJson,
9
- deriveDisplayName
10
- } from "./types.js";
11
- import { RegistryError } from "./errors.js";
12
- import { logger } from "../../logger/index.js";
13
- const USER_REGISTRY_FILENAME = "user-agent-registry.json";
14
- function getUserRegistryPath() {
15
- return getDextoGlobalPath("", USER_REGISTRY_FILENAME);
16
- }
17
- function loadUserRegistry() {
18
- const registryPath = getUserRegistryPath();
19
- if (!existsSync(registryPath)) {
20
- logger.debug("User registry not found, returning empty registry");
21
- return { version: "1.0.0", agents: {} };
22
- }
23
- try {
24
- const content = readFileSync(registryPath, "utf-8");
25
- const data = JSON.parse(content);
26
- return RegistrySchema.parse(normalizeRegistryJson(data));
27
- } catch (error) {
28
- throw RegistryError.registryParseError(
29
- registryPath,
30
- error instanceof Error ? error.message : String(error)
31
- );
32
- }
33
- }
34
- async function saveUserRegistry(registry) {
35
- const registryPath = getUserRegistryPath();
36
- const tempPath = `${registryPath}.tmp.${Date.now()}`;
37
- const dextoDir = path.dirname(registryPath);
38
- try {
39
- await fs.mkdir(dextoDir, { recursive: true });
40
- await fs.writeFile(tempPath, JSON.stringify(registry, null, 2), {
41
- encoding: "utf-8",
42
- mode: 384
43
- });
44
- await fs.rename(tempPath, registryPath);
45
- logger.debug(`Saved user registry to ${registryPath}`);
46
- } catch (error) {
47
- try {
48
- if (existsSync(tempPath)) {
49
- await fs.rm(tempPath, { force: true });
50
- }
51
- } catch {
52
- }
53
- throw RegistryError.registryWriteError(
54
- registryPath,
55
- error instanceof Error ? error.message : String(error)
56
- );
57
- }
58
- }
59
- function mergeRegistries(bundled, user) {
60
- return {
61
- version: bundled.version,
62
- agents: {
63
- ...bundled.agents,
64
- ...user.agents
65
- }
66
- };
67
- }
68
- function userRegistryHasAgent(agentId) {
69
- const userRegistry = loadUserRegistry();
70
- return agentId in userRegistry.agents;
71
- }
72
- async function addAgentToUserRegistry(agentId, entry) {
73
- const userRegistry = loadUserRegistry();
74
- if (agentId in userRegistry.agents) {
75
- throw RegistryError.agentAlreadyExists(agentId);
76
- }
77
- userRegistry.agents[agentId] = {
78
- ...entry,
79
- id: agentId,
80
- // Force consistency between key and id field
81
- name: entry.name && entry.name.trim().length > 0 ? entry.name : deriveDisplayName(agentId),
82
- // Ensure name is never undefined or whitespace-only
83
- type: "custom"
84
- };
85
- await saveUserRegistry(userRegistry);
86
- logger.info(`Added custom agent '${agentId}' to user registry`);
87
- }
88
- async function removeAgentFromUserRegistry(agentId) {
89
- const userRegistry = loadUserRegistry();
90
- if (!(agentId in userRegistry.agents)) {
91
- throw RegistryError.agentNotFound(agentId, Object.keys(userRegistry.agents));
92
- }
93
- delete userRegistry.agents[agentId];
94
- await saveUserRegistry(userRegistry);
95
- logger.info(`Removed custom agent '${agentId}' from user registry`);
96
- }
97
- export {
98
- addAgentToUserRegistry,
99
- getUserRegistryPath,
100
- loadUserRegistry,
101
- mergeRegistries,
102
- removeAgentFromUserRegistry,
103
- saveUserRegistry,
104
- userRegistryHasAgent
105
- };
@@ -1,156 +0,0 @@
1
- "use strict";
2
- var __defProp = Object.defineProperty;
3
- var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
- var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __export = (target, all) => {
7
- for (var name in all)
8
- __defProp(target, name, { get: all[name], enumerable: true });
9
- };
10
- var __copyProps = (to, from, except, desc) => {
11
- if (from && typeof from === "object" || typeof from === "function") {
12
- for (let key of __getOwnPropNames(from))
13
- if (!__hasOwnProp.call(to, key) && key !== except)
14
- __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
- }
16
- return to;
17
- };
18
- var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
- var event_based_approval_provider_exports = {};
20
- __export(event_based_approval_provider_exports, {
21
- EventBasedApprovalProvider: () => EventBasedApprovalProvider
22
- });
23
- module.exports = __toCommonJS(event_based_approval_provider_exports);
24
- var import_types = require("../types.js");
25
- var import_logger = require("../../logger/index.js");
26
- var import_errors = require("../errors.js");
27
- class EventBasedApprovalProvider {
28
- pendingApprovals = /* @__PURE__ */ new Map();
29
- defaultTimeout;
30
- agentEventBus;
31
- constructor(agentEventBus, options) {
32
- this.agentEventBus = agentEventBus;
33
- this.defaultTimeout = options.defaultTimeout;
34
- this.agentEventBus.on("dexto:approvalResponse", this.handleApprovalResponse.bind(this));
35
- }
36
- /**
37
- * Create and submit an approval request
38
- */
39
- async requestApproval(request) {
40
- const timeout = request.timeout ?? this.defaultTimeout;
41
- import_logger.logger.info(
42
- `Approval request '${request.type}' created, approvalId: ${request.approvalId}, sessionId: ${request.sessionId ?? "global"}`
43
- );
44
- return new Promise((resolve, reject) => {
45
- const timeoutId = setTimeout(() => {
46
- const timeoutResponse = request.sessionId ? {
47
- approvalId: request.approvalId,
48
- status: import_types.ApprovalStatus.CANCELLED,
49
- sessionId: request.sessionId
50
- } : {
51
- approvalId: request.approvalId,
52
- status: import_types.ApprovalStatus.CANCELLED
53
- };
54
- import_logger.logger.warn(
55
- `Approval request timeout for '${request.type}', approvalId: ${request.approvalId}`
56
- );
57
- this.pendingApprovals.delete(request.approvalId);
58
- this.agentEventBus.emit("dexto:approvalResponse", timeoutResponse);
59
- reject(
60
- import_errors.ApprovalError.timeout(
61
- request.approvalId,
62
- request.type,
63
- timeout,
64
- request.sessionId
65
- )
66
- );
67
- }, timeout);
68
- this.pendingApprovals.set(request.approvalId, {
69
- resolve: (response) => {
70
- clearTimeout(timeoutId);
71
- this.pendingApprovals.delete(request.approvalId);
72
- resolve(response);
73
- },
74
- reject: (error) => {
75
- clearTimeout(timeoutId);
76
- this.pendingApprovals.delete(request.approvalId);
77
- reject(error);
78
- },
79
- request
80
- });
81
- const eventPayload = {
82
- approvalId: request.approvalId,
83
- type: request.type,
84
- timestamp: request.timestamp,
85
- metadata: request.metadata
86
- };
87
- if (request.sessionId !== void 0) {
88
- eventPayload.sessionId = request.sessionId;
89
- }
90
- if (request.timeout !== void 0) {
91
- eventPayload.timeout = request.timeout;
92
- }
93
- this.agentEventBus.emit("dexto:approvalRequest", eventPayload);
94
- });
95
- }
96
- /**
97
- * Handle approval response from external handlers
98
- */
99
- async handleApprovalResponse(response) {
100
- const pending = this.pendingApprovals.get(response.approvalId);
101
- if (!pending) {
102
- import_logger.logger.warn(`Received approvalResponse for unknown approvalId ${response.approvalId}`);
103
- return;
104
- }
105
- this.pendingApprovals.delete(response.approvalId);
106
- import_logger.logger.info(
107
- `Approval '${pending.request.type}' ${response.status}, approvalId: ${response.approvalId}, sessionId: ${response.sessionId ?? "global"}`
108
- );
109
- pending.resolve(response);
110
- }
111
- /**
112
- * Cancel a pending approval request
113
- */
114
- cancelApproval(approvalId) {
115
- const pending = this.pendingApprovals.get(approvalId);
116
- if (pending) {
117
- pending.reject(
118
- import_errors.ApprovalError.cancelled(
119
- approvalId,
120
- pending.request.type,
121
- "individual request cancelled"
122
- )
123
- );
124
- this.pendingApprovals.delete(approvalId);
125
- this.agentEventBus.emit("dexto:approvalResponse", {
126
- approvalId,
127
- status: import_types.ApprovalStatus.CANCELLED,
128
- sessionId: pending.request.sessionId
129
- });
130
- }
131
- }
132
- /**
133
- * Cancel all pending approval requests
134
- */
135
- cancelAllApprovals() {
136
- for (const [approvalId, pending] of this.pendingApprovals) {
137
- pending.reject(import_errors.ApprovalError.cancelledAll("all requests cancelled"));
138
- this.agentEventBus.emit("dexto:approvalResponse", {
139
- approvalId,
140
- status: import_types.ApprovalStatus.CANCELLED,
141
- sessionId: pending.request.sessionId
142
- });
143
- }
144
- this.pendingApprovals.clear();
145
- }
146
- /**
147
- * Get list of pending approval request IDs
148
- */
149
- getPendingApprovals() {
150
- return Array.from(this.pendingApprovals.keys());
151
- }
152
- }
153
- // Annotate the CommonJS export names for ESM import in node:
154
- 0 && (module.exports = {
155
- EventBasedApprovalProvider
156
- });
@@ -1,39 +0,0 @@
1
- import type { ApprovalProvider, ApprovalRequest, ApprovalResponse } from '../types.js';
2
- import type { AgentEventBus } from '../../events/index.js';
3
- /**
4
- * Event-based approval provider that uses the AgentEventBus to emit
5
- * approval requests and wait for responses from UI layers.
6
- *
7
- * This provider decouples the core approval logic from UI implementations,
8
- * allowing any client (CLI, WebUI, custom frontends) to handle approvals
9
- * by listening to events and responding accordingly.
10
- */
11
- export declare class EventBasedApprovalProvider implements ApprovalProvider {
12
- private pendingApprovals;
13
- private defaultTimeout;
14
- private agentEventBus;
15
- constructor(agentEventBus: AgentEventBus, options: {
16
- defaultTimeout: number;
17
- });
18
- /**
19
- * Create and submit an approval request
20
- */
21
- requestApproval(request: ApprovalRequest): Promise<ApprovalResponse>;
22
- /**
23
- * Handle approval response from external handlers
24
- */
25
- private handleApprovalResponse;
26
- /**
27
- * Cancel a pending approval request
28
- */
29
- cancelApproval(approvalId: string): void;
30
- /**
31
- * Cancel all pending approval requests
32
- */
33
- cancelAllApprovals(): void;
34
- /**
35
- * Get list of pending approval request IDs
36
- */
37
- getPendingApprovals(): string[];
38
- }
39
- //# sourceMappingURL=event-based-approval-provider.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"event-based-approval-provider.d.ts","sourceRoot":"","sources":["../../../src/approval/providers/event-based-approval-provider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEvF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAI3D;;;;;;;GAOG;AACH,qBAAa,0BAA2B,YAAW,gBAAgB;IAC/D,OAAO,CAAC,gBAAgB,CAOpB;IACJ,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,aAAa,CAAgB;gBAGjC,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE;QACL,cAAc,EAAE,MAAM,CAAC;KAC1B;IASL;;OAEG;IACG,eAAe,CAAC,OAAO,EAAE,eAAe,GAAG,OAAO,CAAC,gBAAgB,CAAC;IAmF1E;;OAEG;YACW,sBAAsB;IAiBpC;;OAEG;IACH,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAqBxC;;OAEG;IACH,kBAAkB,IAAI,IAAI;IAc1B;;OAEG;IACH,mBAAmB,IAAI,MAAM,EAAE;CAGlC"}
@@ -1,133 +0,0 @@
1
- import "../../chunk-C6A6W6XS.js";
2
- import { ApprovalStatus } from "../types.js";
3
- import { logger } from "../../logger/index.js";
4
- import { ApprovalError } from "../errors.js";
5
- class EventBasedApprovalProvider {
6
- pendingApprovals = /* @__PURE__ */ new Map();
7
- defaultTimeout;
8
- agentEventBus;
9
- constructor(agentEventBus, options) {
10
- this.agentEventBus = agentEventBus;
11
- this.defaultTimeout = options.defaultTimeout;
12
- this.agentEventBus.on("dexto:approvalResponse", this.handleApprovalResponse.bind(this));
13
- }
14
- /**
15
- * Create and submit an approval request
16
- */
17
- async requestApproval(request) {
18
- const timeout = request.timeout ?? this.defaultTimeout;
19
- logger.info(
20
- `Approval request '${request.type}' created, approvalId: ${request.approvalId}, sessionId: ${request.sessionId ?? "global"}`
21
- );
22
- return new Promise((resolve, reject) => {
23
- const timeoutId = setTimeout(() => {
24
- const timeoutResponse = request.sessionId ? {
25
- approvalId: request.approvalId,
26
- status: ApprovalStatus.CANCELLED,
27
- sessionId: request.sessionId
28
- } : {
29
- approvalId: request.approvalId,
30
- status: ApprovalStatus.CANCELLED
31
- };
32
- logger.warn(
33
- `Approval request timeout for '${request.type}', approvalId: ${request.approvalId}`
34
- );
35
- this.pendingApprovals.delete(request.approvalId);
36
- this.agentEventBus.emit("dexto:approvalResponse", timeoutResponse);
37
- reject(
38
- ApprovalError.timeout(
39
- request.approvalId,
40
- request.type,
41
- timeout,
42
- request.sessionId
43
- )
44
- );
45
- }, timeout);
46
- this.pendingApprovals.set(request.approvalId, {
47
- resolve: (response) => {
48
- clearTimeout(timeoutId);
49
- this.pendingApprovals.delete(request.approvalId);
50
- resolve(response);
51
- },
52
- reject: (error) => {
53
- clearTimeout(timeoutId);
54
- this.pendingApprovals.delete(request.approvalId);
55
- reject(error);
56
- },
57
- request
58
- });
59
- const eventPayload = {
60
- approvalId: request.approvalId,
61
- type: request.type,
62
- timestamp: request.timestamp,
63
- metadata: request.metadata
64
- };
65
- if (request.sessionId !== void 0) {
66
- eventPayload.sessionId = request.sessionId;
67
- }
68
- if (request.timeout !== void 0) {
69
- eventPayload.timeout = request.timeout;
70
- }
71
- this.agentEventBus.emit("dexto:approvalRequest", eventPayload);
72
- });
73
- }
74
- /**
75
- * Handle approval response from external handlers
76
- */
77
- async handleApprovalResponse(response) {
78
- const pending = this.pendingApprovals.get(response.approvalId);
79
- if (!pending) {
80
- logger.warn(`Received approvalResponse for unknown approvalId ${response.approvalId}`);
81
- return;
82
- }
83
- this.pendingApprovals.delete(response.approvalId);
84
- logger.info(
85
- `Approval '${pending.request.type}' ${response.status}, approvalId: ${response.approvalId}, sessionId: ${response.sessionId ?? "global"}`
86
- );
87
- pending.resolve(response);
88
- }
89
- /**
90
- * Cancel a pending approval request
91
- */
92
- cancelApproval(approvalId) {
93
- const pending = this.pendingApprovals.get(approvalId);
94
- if (pending) {
95
- pending.reject(
96
- ApprovalError.cancelled(
97
- approvalId,
98
- pending.request.type,
99
- "individual request cancelled"
100
- )
101
- );
102
- this.pendingApprovals.delete(approvalId);
103
- this.agentEventBus.emit("dexto:approvalResponse", {
104
- approvalId,
105
- status: ApprovalStatus.CANCELLED,
106
- sessionId: pending.request.sessionId
107
- });
108
- }
109
- }
110
- /**
111
- * Cancel all pending approval requests
112
- */
113
- cancelAllApprovals() {
114
- for (const [approvalId, pending] of this.pendingApprovals) {
115
- pending.reject(ApprovalError.cancelledAll("all requests cancelled"));
116
- this.agentEventBus.emit("dexto:approvalResponse", {
117
- approvalId,
118
- status: ApprovalStatus.CANCELLED,
119
- sessionId: pending.request.sessionId
120
- });
121
- }
122
- this.pendingApprovals.clear();
123
- }
124
- /**
125
- * Get list of pending approval request IDs
126
- */
127
- getPendingApprovals() {
128
- return Array.from(this.pendingApprovals.keys());
129
- }
130
- }
131
- export {
132
- EventBasedApprovalProvider
133
- };
@@ -1 +0,0 @@
1
- {"version":3,"file":"factory.d.ts","sourceRoot":"","sources":["../../../src/approval/providers/factory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,eAAe,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAE3E;;;;;;;;GAQG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,eAAe,CAStF"}