@dexto/core 1.1.11 → 1.2.0

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 (416) hide show
  1. package/README.md +24 -4
  2. package/dist/Dexto.cjs +4 -14
  3. package/dist/Dexto.d.ts +8 -29
  4. package/dist/Dexto.d.ts.map +1 -1
  5. package/dist/Dexto.js +4 -12
  6. package/dist/agent/DextoAgent.cjs +92 -3
  7. package/dist/agent/DextoAgent.d.ts +12 -4
  8. package/dist/agent/DextoAgent.d.ts.map +1 -1
  9. package/dist/agent/DextoAgent.js +52 -3
  10. package/dist/agent/agentCard.js +1 -0
  11. package/dist/agent/error-codes.cjs +1 -0
  12. package/dist/agent/error-codes.d.ts +1 -0
  13. package/dist/agent/error-codes.d.ts.map +1 -1
  14. package/dist/agent/error-codes.js +2 -0
  15. package/dist/agent/errors.cjs +13 -0
  16. package/dist/agent/errors.d.ts +4 -0
  17. package/dist/agent/errors.d.ts.map +1 -1
  18. package/dist/agent/errors.js +14 -0
  19. package/dist/agent/index.js +1 -0
  20. package/dist/agent/registry/error-codes.js +1 -0
  21. package/dist/agent/registry/errors.js +1 -0
  22. package/dist/agent/registry/registry.js +1 -0
  23. package/dist/agent/registry/types.js +1 -0
  24. package/dist/agent/registry/user-registry.js +1 -0
  25. package/dist/agent/schemas.cjs +6 -1
  26. package/dist/agent/schemas.d.ts +113 -3
  27. package/dist/agent/schemas.d.ts.map +1 -1
  28. package/dist/agent/schemas.js +7 -1
  29. package/dist/agent/state-manager.js +1 -0
  30. package/dist/approval/error-codes.js +1 -0
  31. package/dist/approval/errors.js +1 -0
  32. package/dist/approval/index.js +1 -0
  33. package/dist/approval/manager.cjs +30 -0
  34. package/dist/approval/manager.d.ts +23 -1
  35. package/dist/approval/manager.d.ts.map +1 -1
  36. package/dist/approval/manager.js +31 -0
  37. package/dist/approval/providers/event-based-approval-provider.js +1 -0
  38. package/dist/approval/providers/factory.js +1 -0
  39. package/dist/approval/providers/noop-approval-provider.js +1 -0
  40. package/dist/approval/schemas.cjs +36 -0
  41. package/dist/approval/schemas.d.ts +173 -0
  42. package/dist/approval/schemas.d.ts.map +1 -1
  43. package/dist/approval/schemas.js +33 -0
  44. package/dist/approval/types.cjs +1 -0
  45. package/dist/approval/types.d.ts +27 -1
  46. package/dist/approval/types.d.ts.map +1 -1
  47. package/dist/approval/types.js +2 -0
  48. package/dist/chunk-C6A6W6XS.js +53 -0
  49. package/dist/config/agent-resolver.js +1 -0
  50. package/dist/config/error-codes.js +1 -0
  51. package/dist/config/errors.js +1 -0
  52. package/dist/config/loader.js +1 -0
  53. package/dist/config/writer.js +1 -0
  54. package/dist/context/compression/middle-removal.js +1 -0
  55. package/dist/context/compression/oldest-removal.js +1 -0
  56. package/dist/context/error-codes.js +1 -0
  57. package/dist/context/errors.js +1 -0
  58. package/dist/context/index.js +1 -0
  59. package/dist/context/manager.cjs +36 -1
  60. package/dist/context/manager.d.ts.map +1 -1
  61. package/dist/context/manager.js +27 -1
  62. package/dist/context/media-helpers.js +1 -0
  63. package/dist/context/utils.cjs +102 -6
  64. package/dist/context/utils.d.ts +35 -2
  65. package/dist/context/utils.d.ts.map +1 -1
  66. package/dist/context/utils.js +100 -6
  67. package/dist/errors/DextoBaseError.js +1 -0
  68. package/dist/errors/DextoRuntimeError.js +1 -0
  69. package/dist/errors/DextoValidationError.js +1 -0
  70. package/dist/errors/index.js +1 -0
  71. package/dist/errors/result-bridge.js +1 -0
  72. package/dist/errors/types.cjs +3 -0
  73. package/dist/errors/types.d.ts +7 -2
  74. package/dist/errors/types.d.ts.map +1 -1
  75. package/dist/errors/types.js +4 -0
  76. package/dist/events/index.cjs +1 -0
  77. package/dist/events/index.d.ts +6 -2
  78. package/dist/events/index.d.ts.map +1 -1
  79. package/dist/events/index.js +2 -0
  80. package/dist/filesystem/error-codes.cjs +53 -0
  81. package/dist/filesystem/error-codes.d.ts +31 -0
  82. package/dist/filesystem/error-codes.d.ts.map +1 -0
  83. package/dist/filesystem/error-codes.js +30 -0
  84. package/dist/filesystem/errors.cjs +303 -0
  85. package/dist/filesystem/errors.d.ts +109 -0
  86. package/dist/filesystem/errors.d.ts.map +1 -0
  87. package/dist/filesystem/errors.js +280 -0
  88. package/dist/filesystem/filesystem-service.cjs +482 -0
  89. package/dist/filesystem/filesystem-service.d.ts +57 -0
  90. package/dist/filesystem/filesystem-service.d.ts.map +1 -0
  91. package/dist/filesystem/filesystem-service.js +449 -0
  92. package/dist/filesystem/index.cjs +37 -0
  93. package/dist/filesystem/index.d.ts +11 -0
  94. package/dist/filesystem/index.d.ts.map +1 -0
  95. package/dist/filesystem/index.js +11 -0
  96. package/dist/filesystem/path-validator.cjs +172 -0
  97. package/dist/filesystem/path-validator.d.ts +53 -0
  98. package/dist/filesystem/path-validator.d.ts.map +1 -0
  99. package/dist/filesystem/path-validator.js +139 -0
  100. package/dist/filesystem/types.cjs +16 -0
  101. package/dist/filesystem/types.d.ts +171 -0
  102. package/dist/filesystem/types.d.ts.map +1 -0
  103. package/dist/filesystem/types.js +0 -0
  104. package/dist/index.browser.js +1 -0
  105. package/dist/index.cjs +3 -3
  106. package/dist/index.d.ts +2 -1
  107. package/dist/index.d.ts.map +1 -1
  108. package/dist/index.js +3 -2
  109. package/dist/llm/error-codes.js +1 -0
  110. package/dist/llm/errors.js +1 -0
  111. package/dist/llm/formatters/anthropic.js +1 -0
  112. package/dist/llm/formatters/factory.js +1 -0
  113. package/dist/llm/formatters/openai.js +1 -0
  114. package/dist/llm/formatters/vercel.js +1 -0
  115. package/dist/llm/registry.cjs +15 -15
  116. package/dist/llm/registry.d.ts +1 -1
  117. package/dist/llm/registry.js +16 -15
  118. package/dist/llm/resolver.js +1 -0
  119. package/dist/llm/schemas.cjs +6 -2
  120. package/dist/llm/schemas.d.ts +10 -0
  121. package/dist/llm/schemas.d.ts.map +1 -1
  122. package/dist/llm/schemas.js +7 -2
  123. package/dist/llm/services/anthropic.cjs +67 -0
  124. package/dist/llm/services/anthropic.d.ts +6 -0
  125. package/dist/llm/services/anthropic.d.ts.map +1 -1
  126. package/dist/llm/services/anthropic.js +27 -0
  127. package/dist/llm/services/factory.js +1 -0
  128. package/dist/llm/services/openai.cjs +87 -0
  129. package/dist/llm/services/openai.d.ts +6 -0
  130. package/dist/llm/services/openai.d.ts.map +1 -1
  131. package/dist/llm/services/openai.js +47 -0
  132. package/dist/llm/services/test-utils.integration.cjs +1 -1
  133. package/dist/llm/services/test-utils.integration.js +2 -1
  134. package/dist/llm/services/vercel.cjs +144 -97
  135. package/dist/llm/services/vercel.d.ts +6 -1
  136. package/dist/llm/services/vercel.d.ts.map +1 -1
  137. package/dist/llm/services/vercel.js +105 -98
  138. package/dist/llm/tokenizer/anthropic.js +1 -0
  139. package/dist/llm/tokenizer/default.js +1 -0
  140. package/dist/llm/tokenizer/factory.js +1 -0
  141. package/dist/llm/tokenizer/google.js +1 -0
  142. package/dist/llm/tokenizer/openai.cjs +1 -1
  143. package/dist/llm/tokenizer/openai.d.ts +1 -1
  144. package/dist/llm/tokenizer/openai.js +2 -1
  145. package/dist/llm/tokenizer/types.js +1 -0
  146. package/dist/llm/types.d.ts +2 -2
  147. package/dist/llm/types.d.ts.map +1 -1
  148. package/dist/llm/types.js +1 -0
  149. package/dist/llm/validation.js +1 -0
  150. package/dist/logger/browser.js +1 -0
  151. package/dist/logger/logger.d.ts +42 -0
  152. package/dist/logger/logger.d.ts.map +1 -1
  153. package/dist/logger/logger.js +1 -0
  154. package/dist/mcp/error-codes.cjs +1 -0
  155. package/dist/mcp/error-codes.d.ts +1 -0
  156. package/dist/mcp/error-codes.d.ts.map +1 -1
  157. package/dist/mcp/error-codes.js +2 -0
  158. package/dist/mcp/errors.cjs +12 -0
  159. package/dist/mcp/errors.d.ts +7 -0
  160. package/dist/mcp/errors.d.ts.map +1 -1
  161. package/dist/mcp/errors.js +13 -0
  162. package/dist/mcp/manager.cjs +66 -16
  163. package/dist/mcp/manager.d.ts +7 -0
  164. package/dist/mcp/manager.d.ts.map +1 -1
  165. package/dist/mcp/manager.js +67 -16
  166. package/dist/mcp/mcp-client.js +1 -0
  167. package/dist/mcp/resolver.js +1 -0
  168. package/dist/mcp/schemas.js +1 -0
  169. package/dist/mcp/types.d.ts +1 -1
  170. package/dist/mcp/types.d.ts.map +1 -1
  171. package/dist/memory/error-codes.js +1 -0
  172. package/dist/memory/errors.js +1 -0
  173. package/dist/memory/index.js +1 -0
  174. package/dist/memory/manager.js +1 -0
  175. package/dist/memory/schemas.js +1 -0
  176. package/dist/plugins/builtins/content-policy.js +1 -0
  177. package/dist/plugins/builtins/response-sanitizer.js +1 -0
  178. package/dist/plugins/error-codes.js +1 -0
  179. package/dist/plugins/index.js +1 -0
  180. package/dist/plugins/loader.js +1 -0
  181. package/dist/plugins/manager.js +1 -0
  182. package/dist/plugins/registrations/builtins.js +1 -0
  183. package/dist/plugins/schemas.js +1 -0
  184. package/dist/preferences/constants.js +1 -0
  185. package/dist/preferences/error-codes.js +1 -0
  186. package/dist/preferences/errors.js +1 -0
  187. package/dist/preferences/index.js +1 -0
  188. package/dist/preferences/loader.cjs +3 -1
  189. package/dist/preferences/loader.d.ts +10 -1
  190. package/dist/preferences/loader.d.ts.map +1 -1
  191. package/dist/preferences/loader.js +4 -1
  192. package/dist/preferences/schemas.cjs +2 -1
  193. package/dist/preferences/schemas.d.ts +8 -0
  194. package/dist/preferences/schemas.d.ts.map +1 -1
  195. package/dist/preferences/schemas.js +3 -1
  196. package/dist/process/command-validator.cjs +544 -0
  197. package/dist/process/command-validator.d.ts +46 -0
  198. package/dist/process/command-validator.d.ts.map +1 -0
  199. package/dist/process/command-validator.js +521 -0
  200. package/dist/process/error-codes.cjs +47 -0
  201. package/dist/process/error-codes.d.ts +25 -0
  202. package/dist/process/error-codes.d.ts.map +1 -0
  203. package/dist/process/error-codes.js +24 -0
  204. package/dist/process/errors.cjs +244 -0
  205. package/dist/process/errors.d.ts +87 -0
  206. package/dist/process/errors.d.ts.map +1 -0
  207. package/dist/process/errors.js +221 -0
  208. package/dist/process/index.cjs +37 -0
  209. package/dist/process/index.d.ts +11 -0
  210. package/dist/process/index.d.ts.map +1 -0
  211. package/dist/process/index.js +11 -0
  212. package/dist/process/process-service.cjs +443 -0
  213. package/dist/process/process-service.d.ts +62 -0
  214. package/dist/process/process-service.d.ts.map +1 -0
  215. package/dist/process/process-service.js +410 -0
  216. package/dist/process/types.cjs +16 -0
  217. package/dist/process/types.d.ts +107 -0
  218. package/dist/process/types.d.ts.map +1 -0
  219. package/dist/process/types.js +0 -0
  220. package/dist/prompts/error-codes.js +1 -0
  221. package/dist/prompts/errors.js +1 -0
  222. package/dist/prompts/index.js +1 -0
  223. package/dist/prompts/name-validation.js +1 -0
  224. package/dist/prompts/prompt-manager.js +1 -0
  225. package/dist/prompts/providers/custom-prompt-provider.js +1 -0
  226. package/dist/prompts/providers/file-prompt-provider.js +1 -0
  227. package/dist/prompts/providers/mcp-prompt-provider.js +1 -0
  228. package/dist/prompts/providers/starter-prompt-provider.js +1 -0
  229. package/dist/prompts/schemas.js +1 -0
  230. package/dist/prompts/utils.js +1 -0
  231. package/dist/resources/error-codes.js +1 -0
  232. package/dist/resources/errors.js +1 -0
  233. package/dist/resources/handlers/blob-handler.js +1 -0
  234. package/dist/resources/handlers/factory.js +1 -0
  235. package/dist/resources/handlers/filesystem-handler.cjs +1 -1
  236. package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
  237. package/dist/resources/handlers/filesystem-handler.js +2 -1
  238. package/dist/resources/index.js +1 -0
  239. package/dist/resources/internal-provider.js +1 -0
  240. package/dist/resources/manager.js +1 -0
  241. package/dist/resources/reference-parser.js +1 -0
  242. package/dist/resources/schemas.js +1 -0
  243. package/dist/search/index.js +1 -0
  244. package/dist/search/search-service.js +1 -0
  245. package/dist/session/chat-session.cjs +2 -2
  246. package/dist/session/chat-session.d.ts +2 -2
  247. package/dist/session/chat-session.js +3 -2
  248. package/dist/session/error-codes.js +1 -0
  249. package/dist/session/errors.js +1 -0
  250. package/dist/session/history/database.js +1 -0
  251. package/dist/session/history/factory.js +1 -0
  252. package/dist/session/history/memory.js +1 -0
  253. package/dist/session/index.js +1 -0
  254. package/dist/session/schemas.js +1 -0
  255. package/dist/session/session-manager.d.ts +6 -0
  256. package/dist/session/session-manager.d.ts.map +1 -1
  257. package/dist/session/session-manager.js +1 -0
  258. package/dist/session/title-generator.js +1 -0
  259. package/dist/storage/blob/factory.cjs +3 -3
  260. package/dist/storage/blob/factory.d.ts +3 -1
  261. package/dist/storage/blob/factory.d.ts.map +1 -1
  262. package/dist/storage/blob/factory.js +4 -3
  263. package/dist/storage/blob/local-blob-store.cjs +18 -2
  264. package/dist/storage/blob/local-blob-store.d.ts +2 -1
  265. package/dist/storage/blob/local-blob-store.d.ts.map +1 -1
  266. package/dist/storage/blob/local-blob-store.js +19 -2
  267. package/dist/storage/blob/schemas.js +1 -0
  268. package/dist/storage/cache/factory.js +1 -0
  269. package/dist/storage/cache/memory-cache-store.js +1 -0
  270. package/dist/storage/cache/redis-store.js +1 -0
  271. package/dist/storage/cache/schemas.js +1 -0
  272. package/dist/storage/database/factory.cjs +7 -5
  273. package/dist/storage/database/factory.d.ts +3 -1
  274. package/dist/storage/database/factory.d.ts.map +1 -1
  275. package/dist/storage/database/factory.js +8 -5
  276. package/dist/storage/database/memory-database-store.js +1 -0
  277. package/dist/storage/database/postgres-store.js +1 -0
  278. package/dist/storage/database/schemas.cjs +1 -1
  279. package/dist/storage/database/schemas.js +2 -1
  280. package/dist/storage/database/sqlite-store.cjs +20 -2
  281. package/dist/storage/database/sqlite-store.d.ts +2 -1
  282. package/dist/storage/database/sqlite-store.d.ts.map +1 -1
  283. package/dist/storage/database/sqlite-store.js +21 -2
  284. package/dist/storage/error-codes.cjs +1 -0
  285. package/dist/storage/error-codes.d.ts +1 -0
  286. package/dist/storage/error-codes.d.ts.map +1 -1
  287. package/dist/storage/error-codes.js +2 -0
  288. package/dist/storage/errors.cjs +15 -0
  289. package/dist/storage/errors.d.ts +4 -0
  290. package/dist/storage/errors.d.ts.map +1 -1
  291. package/dist/storage/errors.js +16 -0
  292. package/dist/storage/index.js +1 -0
  293. package/dist/storage/schemas.js +1 -0
  294. package/dist/storage/storage-manager.cjs +7 -5
  295. package/dist/storage/storage-manager.d.ts +5 -2
  296. package/dist/storage/storage-manager.d.ts.map +1 -1
  297. package/dist/storage/storage-manager.js +8 -5
  298. package/dist/systemPrompt/contributors.js +1 -0
  299. package/dist/systemPrompt/error-codes.js +1 -0
  300. package/dist/systemPrompt/errors.js +1 -0
  301. package/dist/systemPrompt/in-built-prompts.js +1 -0
  302. package/dist/systemPrompt/index.js +1 -0
  303. package/dist/systemPrompt/manager.js +1 -0
  304. package/dist/systemPrompt/registry.js +1 -0
  305. package/dist/systemPrompt/schemas.js +1 -0
  306. package/dist/telemetry/decorators.cjs +175 -0
  307. package/dist/telemetry/decorators.d.ts +17 -0
  308. package/dist/telemetry/decorators.d.ts.map +1 -0
  309. package/dist/telemetry/decorators.js +157 -0
  310. package/dist/telemetry/exporters.cjs +108 -0
  311. package/dist/telemetry/exporters.d.ts +29 -0
  312. package/dist/telemetry/exporters.d.ts.map +1 -0
  313. package/dist/telemetry/exporters.js +85 -0
  314. package/dist/telemetry/index.cjs +28 -0
  315. package/dist/telemetry/index.d.ts +2 -0
  316. package/dist/telemetry/index.d.ts.map +1 -0
  317. package/dist/telemetry/index.js +5 -0
  318. package/dist/telemetry/schemas.cjs +71 -0
  319. package/dist/telemetry/schemas.d.ts +54 -0
  320. package/dist/telemetry/schemas.d.ts.map +1 -0
  321. package/dist/telemetry/schemas.js +48 -0
  322. package/dist/telemetry/telemetry.cjs +228 -0
  323. package/dist/telemetry/telemetry.d.ts +74 -0
  324. package/dist/telemetry/telemetry.d.ts.map +1 -0
  325. package/dist/telemetry/telemetry.js +205 -0
  326. package/dist/telemetry/types.cjs +16 -0
  327. package/dist/telemetry/types.d.ts +22 -0
  328. package/dist/telemetry/types.d.ts.map +1 -0
  329. package/dist/telemetry/types.js +0 -0
  330. package/dist/telemetry/utils.cjs +87 -0
  331. package/dist/telemetry/utils.d.ts +21 -0
  332. package/dist/telemetry/utils.d.ts.map +1 -0
  333. package/dist/telemetry/utils.js +62 -0
  334. package/dist/tools/confirmation/allowed-tools-provider/factory.js +1 -0
  335. package/dist/tools/confirmation/allowed-tools-provider/in-memory.js +1 -0
  336. package/dist/tools/confirmation/allowed-tools-provider/storage.js +1 -0
  337. package/dist/tools/error-codes.js +1 -0
  338. package/dist/tools/errors.js +1 -0
  339. package/dist/tools/index.js +1 -0
  340. package/dist/tools/internal-tools/constants.cjs +39 -0
  341. package/dist/tools/internal-tools/constants.d.ts +12 -0
  342. package/dist/tools/internal-tools/constants.d.ts.map +1 -0
  343. package/dist/tools/internal-tools/constants.js +16 -0
  344. package/dist/tools/internal-tools/implementations/ask-user-tool.js +1 -0
  345. package/dist/tools/internal-tools/implementations/bash-exec-tool.cjs +106 -0
  346. package/dist/tools/internal-tools/implementations/bash-exec-tool.d.ts +13 -0
  347. package/dist/tools/internal-tools/implementations/bash-exec-tool.d.ts.map +1 -0
  348. package/dist/tools/internal-tools/implementations/bash-exec-tool.js +73 -0
  349. package/dist/tools/internal-tools/implementations/bash-output-tool.cjs +49 -0
  350. package/dist/tools/internal-tools/implementations/bash-output-tool.d.ts +12 -0
  351. package/dist/tools/internal-tools/implementations/bash-output-tool.d.ts.map +1 -0
  352. package/dist/tools/internal-tools/implementations/bash-output-tool.js +26 -0
  353. package/dist/tools/internal-tools/implementations/edit-file-tool.cjs +62 -0
  354. package/dist/tools/internal-tools/implementations/edit-file-tool.d.ts +12 -0
  355. package/dist/tools/internal-tools/implementations/edit-file-tool.d.ts.map +1 -0
  356. package/dist/tools/internal-tools/implementations/edit-file-tool.js +39 -0
  357. package/dist/tools/internal-tools/implementations/glob-files-tool.cjs +57 -0
  358. package/dist/tools/internal-tools/implementations/glob-files-tool.d.ts +12 -0
  359. package/dist/tools/internal-tools/implementations/glob-files-tool.d.ts.map +1 -0
  360. package/dist/tools/internal-tools/implementations/glob-files-tool.js +34 -0
  361. package/dist/tools/internal-tools/implementations/grep-content-tool.cjs +71 -0
  362. package/dist/tools/internal-tools/implementations/grep-content-tool.d.ts +12 -0
  363. package/dist/tools/internal-tools/implementations/grep-content-tool.d.ts.map +1 -0
  364. package/dist/tools/internal-tools/implementations/grep-content-tool.js +48 -0
  365. package/dist/tools/internal-tools/implementations/kill-process-tool.cjs +47 -0
  366. package/dist/tools/internal-tools/implementations/kill-process-tool.d.ts +12 -0
  367. package/dist/tools/internal-tools/implementations/kill-process-tool.d.ts.map +1 -0
  368. package/dist/tools/internal-tools/implementations/kill-process-tool.js +24 -0
  369. package/dist/tools/internal-tools/implementations/read-file-tool.cjs +55 -0
  370. package/dist/tools/internal-tools/implementations/read-file-tool.d.ts +12 -0
  371. package/dist/tools/internal-tools/implementations/read-file-tool.d.ts.map +1 -0
  372. package/dist/tools/internal-tools/implementations/read-file-tool.js +32 -0
  373. package/dist/tools/internal-tools/implementations/search-history-tool.js +1 -0
  374. package/dist/tools/internal-tools/implementations/write-file-tool.cjs +56 -0
  375. package/dist/tools/internal-tools/implementations/write-file-tool.d.ts +12 -0
  376. package/dist/tools/internal-tools/implementations/write-file-tool.d.ts.map +1 -0
  377. package/dist/tools/internal-tools/implementations/write-file-tool.js +33 -0
  378. package/dist/tools/internal-tools/index.cjs +3 -1
  379. package/dist/tools/internal-tools/index.d.ts +1 -0
  380. package/dist/tools/internal-tools/index.d.ts.map +1 -1
  381. package/dist/tools/internal-tools/index.js +1 -0
  382. package/dist/tools/internal-tools/provider.js +1 -0
  383. package/dist/tools/internal-tools/registry.cjs +40 -4
  384. package/dist/tools/internal-tools/registry.d.ts +5 -9
  385. package/dist/tools/internal-tools/registry.d.ts.map +1 -1
  386. package/dist/tools/internal-tools/registry.js +41 -3
  387. package/dist/tools/schemas.cjs +18 -5
  388. package/dist/tools/schemas.d.ts +30 -1
  389. package/dist/tools/schemas.d.ts.map +1 -1
  390. package/dist/tools/schemas.js +15 -2
  391. package/dist/tools/tool-manager.cjs +158 -19
  392. package/dist/tools/tool-manager.d.ts +48 -2
  393. package/dist/tools/tool-manager.d.ts.map +1 -1
  394. package/dist/tools/tool-manager.js +118 -19
  395. package/dist/utils/api-key-resolver.js +1 -0
  396. package/dist/utils/api-key-store.js +1 -0
  397. package/dist/utils/async-context.js +1 -0
  398. package/dist/utils/debug.js +1 -0
  399. package/dist/utils/env.js +1 -0
  400. package/dist/utils/error-conversion.js +1 -0
  401. package/dist/utils/execution-context.js +1 -0
  402. package/dist/utils/fs-walk.js +1 -0
  403. package/dist/utils/path.js +1 -0
  404. package/dist/utils/port-utils.js +1 -0
  405. package/dist/utils/redactor.js +1 -0
  406. package/dist/utils/result.js +1 -0
  407. package/dist/utils/safe-stringify.js +1 -0
  408. package/dist/utils/schema-metadata.js +1 -0
  409. package/dist/utils/schema.js +1 -0
  410. package/dist/utils/service-initializer.cjs +42 -4
  411. package/dist/utils/service-initializer.d.ts +2 -1
  412. package/dist/utils/service-initializer.d.ts.map +1 -1
  413. package/dist/utils/service-initializer.js +33 -4
  414. package/dist/utils/user-info.js +1 -0
  415. package/dist/utils/zod-schema-converter.js +1 -0
  416. package/package.json +11 -1
@@ -0,0 +1,53 @@
1
+ /**
2
+ * Path Validator
3
+ *
4
+ * Security-focused path validation for file system operations
5
+ */
6
+ import { FileSystemConfig, PathValidation } from './types.js';
7
+ /**
8
+ * PathValidator - Validates file paths for security and policy compliance
9
+ *
10
+ * Security checks:
11
+ * 1. Path traversal detection (../, symbolic links)
12
+ * 2. Allowed paths enforcement (whitelist)
13
+ * 3. Blocked paths detection (blacklist)
14
+ * 4. File extension restrictions
15
+ * 5. Absolute path normalization
16
+ * TODO: Add tests
17
+ */
18
+ export declare class PathValidator {
19
+ private config;
20
+ private normalizedAllowedPaths;
21
+ private normalizedBlockedPaths;
22
+ private normalizedBlockedExtensions;
23
+ constructor(config: FileSystemConfig);
24
+ /**
25
+ * Validate a file path for security and policy compliance
26
+ */
27
+ validatePath(filePath: string): PathValidation;
28
+ /**
29
+ * Check if path contains traversal attempts
30
+ */
31
+ private hasPathTraversal;
32
+ /**
33
+ * Check if path is within allowed paths (whitelist check)
34
+ */
35
+ private isPathAllowed;
36
+ /**
37
+ * Check if path matches blocked patterns (blacklist check)
38
+ */
39
+ private isPathBlocked;
40
+ /**
41
+ * Quick check if a path is allowed (for internal use)
42
+ */
43
+ isPathAllowedQuick(normalizedPath: string): boolean;
44
+ /**
45
+ * Get normalized allowed paths
46
+ */
47
+ getAllowedPaths(): string[];
48
+ /**
49
+ * Get blocked paths
50
+ */
51
+ getBlockedPaths(): string[];
52
+ }
53
+ //# sourceMappingURL=path-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"path-validator.d.ts","sourceRoot":"","sources":["../../src/filesystem/path-validator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAG9D;;;;;;;;;;GAUG;AACH,qBAAa,aAAa;IACtB,OAAO,CAAC,MAAM,CAAmB;IACjC,OAAO,CAAC,sBAAsB,CAAW;IACzC,OAAO,CAAC,sBAAsB,CAAW;IACzC,OAAO,CAAC,2BAA2B,CAAW;gBAElC,MAAM,EAAE,gBAAgB;IAqBpC;;OAEG;IACH,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc;IA0E9C;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAaxB;;OAEG;IACH,OAAO,CAAC,aAAa;IAcrB;;OAEG;IACH,OAAO,CAAC,aAAa;IAyBrB;;OAEG;IACH,kBAAkB,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO;IAInD;;OAEG;IACH,eAAe,IAAI,MAAM,EAAE;IAI3B;;OAEG;IACH,eAAe,IAAI,MAAM,EAAE;CAG9B"}
@@ -0,0 +1,139 @@
1
+ import "../chunk-C6A6W6XS.js";
2
+ import * as path from "node:path";
3
+ import { realpathSync } from "node:fs";
4
+ import { logger } from "../logger/index.js";
5
+ class PathValidator {
6
+ config;
7
+ normalizedAllowedPaths;
8
+ normalizedBlockedPaths;
9
+ normalizedBlockedExtensions;
10
+ constructor(config) {
11
+ this.config = config;
12
+ const workingDir = config.workingDirectory || process.cwd();
13
+ this.normalizedAllowedPaths = config.allowedPaths.map((p) => path.resolve(workingDir, p));
14
+ this.normalizedBlockedPaths = config.blockedPaths.map((p) => path.normalize(p));
15
+ this.normalizedBlockedExtensions = (config.blockedExtensions || []).map((ext) => {
16
+ const e = ext.startsWith(".") ? ext : `.${ext}`;
17
+ return e.toLowerCase();
18
+ });
19
+ logger.debug(
20
+ `PathValidator initialized with ${this.normalizedAllowedPaths.length} allowed paths`
21
+ );
22
+ }
23
+ /**
24
+ * Validate a file path for security and policy compliance
25
+ */
26
+ validatePath(filePath) {
27
+ if (!filePath || filePath.trim() === "") {
28
+ return {
29
+ isValid: false,
30
+ error: "Path cannot be empty"
31
+ };
32
+ }
33
+ const workingDir = this.config.workingDirectory || process.cwd();
34
+ let normalizedPath;
35
+ try {
36
+ normalizedPath = path.isAbsolute(filePath) ? path.resolve(filePath) : path.resolve(workingDir, filePath);
37
+ try {
38
+ normalizedPath = realpathSync.native(normalizedPath);
39
+ } catch {
40
+ }
41
+ } catch (error) {
42
+ return {
43
+ isValid: false,
44
+ error: `Failed to normalize path: ${error instanceof Error ? error.message : String(error)}`
45
+ };
46
+ }
47
+ if (this.hasPathTraversal(filePath, normalizedPath)) {
48
+ return {
49
+ isValid: false,
50
+ error: "Path traversal detected"
51
+ };
52
+ }
53
+ if (!this.isPathAllowed(normalizedPath)) {
54
+ return {
55
+ isValid: false,
56
+ error: `Path is not within allowed paths. Allowed: ${this.normalizedAllowedPaths.join(", ")}`
57
+ };
58
+ }
59
+ const blockedReason = this.isPathBlocked(normalizedPath);
60
+ if (blockedReason) {
61
+ return {
62
+ isValid: false,
63
+ error: `Path is blocked: ${blockedReason}`
64
+ };
65
+ }
66
+ const ext = path.extname(normalizedPath).toLowerCase();
67
+ if (ext && this.normalizedBlockedExtensions.includes(ext)) {
68
+ return {
69
+ isValid: false,
70
+ error: `File extension ${ext} is not allowed`
71
+ };
72
+ }
73
+ return {
74
+ isValid: true,
75
+ normalizedPath
76
+ };
77
+ }
78
+ /**
79
+ * Check if path contains traversal attempts
80
+ */
81
+ hasPathTraversal(originalPath, normalizedPath) {
82
+ if (originalPath.includes("../") || originalPath.includes("..\\")) {
83
+ const workingDir = this.config.workingDirectory || process.cwd();
84
+ const relative = path.relative(workingDir, normalizedPath);
85
+ if (relative.startsWith("..")) {
86
+ return true;
87
+ }
88
+ }
89
+ return false;
90
+ }
91
+ /**
92
+ * Check if path is within allowed paths (whitelist check)
93
+ */
94
+ isPathAllowed(normalizedPath) {
95
+ if (this.normalizedAllowedPaths.length === 0) {
96
+ return true;
97
+ }
98
+ return this.normalizedAllowedPaths.some((allowedPath) => {
99
+ const relative = path.relative(allowedPath, normalizedPath);
100
+ return !relative.startsWith("..") && !path.isAbsolute(relative);
101
+ });
102
+ }
103
+ /**
104
+ * Check if path matches blocked patterns (blacklist check)
105
+ */
106
+ isPathBlocked(normalizedPath) {
107
+ const roots = this.normalizedAllowedPaths.length > 0 ? this.normalizedAllowedPaths : [this.config.workingDirectory || process.cwd()];
108
+ for (const blocked of this.normalizedBlockedPaths) {
109
+ for (const root of roots) {
110
+ const blockedFull = path.isAbsolute(blocked) ? path.normalize(blocked) : path.resolve(root, blocked);
111
+ if (normalizedPath === blockedFull || normalizedPath.startsWith(blockedFull + path.sep)) {
112
+ return `Within blocked directory: ${blocked}`;
113
+ }
114
+ }
115
+ }
116
+ return null;
117
+ }
118
+ /**
119
+ * Quick check if a path is allowed (for internal use)
120
+ */
121
+ isPathAllowedQuick(normalizedPath) {
122
+ return this.isPathAllowed(normalizedPath) && !this.isPathBlocked(normalizedPath);
123
+ }
124
+ /**
125
+ * Get normalized allowed paths
126
+ */
127
+ getAllowedPaths() {
128
+ return [...this.normalizedAllowedPaths];
129
+ }
130
+ /**
131
+ * Get blocked paths
132
+ */
133
+ getBlockedPaths() {
134
+ return [...this.normalizedBlockedPaths];
135
+ }
136
+ }
137
+ export {
138
+ PathValidator
139
+ };
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __copyProps = (to, from, except, desc) => {
7
+ if (from && typeof from === "object" || typeof from === "function") {
8
+ for (let key of __getOwnPropNames(from))
9
+ if (!__hasOwnProp.call(to, key) && key !== except)
10
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
11
+ }
12
+ return to;
13
+ };
14
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
15
+ var types_exports = {};
16
+ module.exports = __toCommonJS(types_exports);
@@ -0,0 +1,171 @@
1
+ /**
2
+ * FileSystem Service Types
3
+ *
4
+ * Types and interfaces for file system operations including reading, writing,
5
+ * searching, and validation.
6
+ */
7
+ export type BufferEncoding = 'ascii' | 'utf8' | 'utf-8' | 'utf16le' | 'ucs2' | 'ucs-2' | 'base64' | 'base64url' | 'latin1' | 'binary' | 'hex';
8
+ /**
9
+ * File content with metadata
10
+ */
11
+ export interface FileContent {
12
+ content: string;
13
+ lines: number;
14
+ encoding: string;
15
+ mimeType?: string;
16
+ truncated: boolean;
17
+ size: number;
18
+ }
19
+ /**
20
+ * Options for reading files
21
+ */
22
+ export interface ReadFileOptions {
23
+ /** Maximum number of lines to read */
24
+ limit?: number | undefined;
25
+ /** Starting line number (1-based) */
26
+ offset?: number | undefined;
27
+ /** File encoding (default: utf-8) */
28
+ encoding?: BufferEncoding | undefined;
29
+ }
30
+ /**
31
+ * File metadata for glob results
32
+ */
33
+ export interface FileMetadata {
34
+ path: string;
35
+ size: number;
36
+ modified: Date;
37
+ isDirectory: boolean;
38
+ }
39
+ /**
40
+ * Options for glob operations
41
+ */
42
+ export interface GlobOptions {
43
+ /** Base directory to search from */
44
+ cwd?: string | undefined;
45
+ /** Maximum number of results */
46
+ maxResults?: number | undefined;
47
+ /** Include file metadata */
48
+ includeMetadata?: boolean | undefined;
49
+ }
50
+ /**
51
+ * Glob result
52
+ */
53
+ export interface GlobResult {
54
+ files: FileMetadata[];
55
+ truncated: boolean;
56
+ totalFound: number;
57
+ }
58
+ /**
59
+ * Search match with context
60
+ */
61
+ export interface SearchMatch {
62
+ file: string;
63
+ lineNumber: number;
64
+ line: string;
65
+ context?: {
66
+ before: string[];
67
+ after: string[];
68
+ };
69
+ }
70
+ /**
71
+ * Options for content search (grep)
72
+ */
73
+ export interface GrepOptions {
74
+ /** Base directory to search */
75
+ path?: string | undefined;
76
+ /** Glob pattern to filter files */
77
+ glob?: string | undefined;
78
+ /** Number of context lines before/after match */
79
+ contextLines?: number | undefined;
80
+ /** Case-insensitive search */
81
+ caseInsensitive?: boolean | undefined;
82
+ /** Maximum number of results */
83
+ maxResults?: number | undefined;
84
+ /** Include line numbers */
85
+ lineNumbers?: boolean | undefined;
86
+ }
87
+ /**
88
+ * Search result
89
+ */
90
+ export interface SearchResult {
91
+ matches: SearchMatch[];
92
+ totalMatches: number;
93
+ truncated: boolean;
94
+ filesSearched: number;
95
+ }
96
+ /**
97
+ * Options for writing files
98
+ */
99
+ export interface WriteFileOptions {
100
+ /** Create parent directories if they don't exist */
101
+ createDirs?: boolean | undefined;
102
+ /** File encoding (default: utf-8) */
103
+ encoding?: BufferEncoding | undefined;
104
+ /** Create backup before overwriting */
105
+ backup?: boolean | undefined;
106
+ }
107
+ /**
108
+ * Write result
109
+ */
110
+ export interface WriteResult {
111
+ success: boolean;
112
+ path: string;
113
+ bytesWritten: number;
114
+ backupPath?: string | undefined;
115
+ }
116
+ /**
117
+ * Edit operation
118
+ */
119
+ export interface EditOperation {
120
+ oldString: string;
121
+ newString: string;
122
+ replaceAll?: boolean | undefined;
123
+ }
124
+ /**
125
+ * Options for editing files
126
+ */
127
+ export interface EditFileOptions {
128
+ /** Create backup before editing */
129
+ backup?: boolean;
130
+ /** File encoding */
131
+ encoding?: BufferEncoding;
132
+ }
133
+ /**
134
+ * Edit result
135
+ */
136
+ export interface EditResult {
137
+ success: boolean;
138
+ path: string;
139
+ changesCount: number;
140
+ backupPath?: string | undefined;
141
+ }
142
+ /**
143
+ * Path validation result
144
+ */
145
+ export interface PathValidation {
146
+ isValid: boolean;
147
+ error?: string;
148
+ normalizedPath?: string;
149
+ }
150
+ /**
151
+ * File system configuration
152
+ */
153
+ export interface FileSystemConfig {
154
+ /** Allowed base paths */
155
+ allowedPaths: string[];
156
+ /** Blocked paths (relative to allowed paths) */
157
+ blockedPaths: string[];
158
+ /** Blocked file extensions */
159
+ blockedExtensions: string[];
160
+ /** Maximum file size in bytes */
161
+ maxFileSize: number;
162
+ /** Enable automatic backups */
163
+ enableBackups: boolean;
164
+ /** Backup directory path */
165
+ backupPath: string;
166
+ /** Backup retention period in days (default: 7) */
167
+ backupRetentionDays: number;
168
+ /** Working directory (defaults to process.cwd()) */
169
+ workingDirectory?: string | undefined;
170
+ }
171
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/filesystem/types.ts"],"names":[],"mappings":"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"}
File without changes
@@ -1,3 +1,4 @@
1
+ import "./chunk-C6A6W6XS.js";
1
2
  import { toError } from "./utils/error-conversion.js";
2
3
  import { zodToIssues } from "./utils/result.js";
3
4
  import { ErrorScope, ErrorType } from "./errors/types.js";
package/dist/index.cjs CHANGED
@@ -20,7 +20,6 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  var index_exports = {};
21
21
  __export(index_exports, {
22
22
  Dexto: () => import_Dexto.Dexto,
23
- getDexto: () => import_Dexto.getDexto,
24
23
  getFileMediaKind: () => import_context.getFileMediaKind,
25
24
  getResourceKind: () => import_context.getResourceKind
26
25
  });
@@ -47,10 +46,10 @@ __reExport(index_exports, require("./resources/index.js"), module.exports);
47
46
  __reExport(index_exports, require("./approval/index.js"), module.exports);
48
47
  __reExport(index_exports, require("./memory/index.js"), module.exports);
49
48
  __reExport(index_exports, require("./plugins/index.js"), module.exports);
49
+ __reExport(index_exports, require("./telemetry/index.js"), module.exports);
50
50
  // Annotate the CommonJS export names for ESM import in node:
51
51
  0 && (module.exports = {
52
52
  Dexto,
53
- getDexto,
54
53
  getFileMediaKind,
55
54
  getResourceKind,
56
55
  ...require("./agent/index.js"),
@@ -72,5 +71,6 @@ __reExport(index_exports, require("./plugins/index.js"), module.exports);
72
71
  ...require("./resources/index.js"),
73
72
  ...require("./approval/index.js"),
74
73
  ...require("./memory/index.js"),
75
- ...require("./plugins/index.js")
74
+ ...require("./plugins/index.js"),
75
+ ...require("./telemetry/index.js")
76
76
  });
package/dist/index.d.ts CHANGED
@@ -8,7 +8,7 @@
8
8
  * - Browser: Routes to index.browser.ts (minimal safe exports)
9
9
  * - Node: Routes to this file (full exports)
10
10
  */
11
- export { Dexto, getDexto } from './Dexto.js';
11
+ export { Dexto } from './Dexto.js';
12
12
  export * from './agent/index.js';
13
13
  export * from './config/index.js';
14
14
  export * from './errors/index.js';
@@ -30,4 +30,5 @@ export * from './resources/index.js';
30
30
  export * from './approval/index.js';
31
31
  export * from './memory/index.js';
32
32
  export * from './plugins/index.js';
33
+ export * from './telemetry/index.js';
33
34
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAG7C,cAAc,kBAAkB,CAAC;AAGjC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,wBAAwB,CAAC;AAGvC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGvE,cAAc,oBAAoB,CAAC;AAGnC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAGnC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,mBAAmB,CAAC;AAGlC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,gBAAgB,CAAC;AAG/B,cAAc,wBAAwB,CAAC;AAGvC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,yBAAyB,CAAC;AAGxC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,oBAAoB,CAAC;AACnC,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAGvE,cAAc,oBAAoB,CAAC;AAGnC,cAAc,kBAAkB,CAAC;AAGjC,cAAc,sBAAsB,CAAC;AAGrC,cAAc,qBAAqB,CAAC;AAGpC,cAAc,mBAAmB,CAAC;AAGlC,cAAc,oBAAoB,CAAC;AAGnC,cAAc,sBAAsB,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,5 @@
1
- import { Dexto, getDexto } from "./Dexto.js";
1
+ import "./chunk-C6A6W6XS.js";
2
+ import { Dexto } from "./Dexto.js";
2
3
  export * from "./agent/index.js";
3
4
  export * from "./config/index.js";
4
5
  export * from "./errors/index.js";
@@ -20,9 +21,9 @@ export * from "./resources/index.js";
20
21
  export * from "./approval/index.js";
21
22
  export * from "./memory/index.js";
22
23
  export * from "./plugins/index.js";
24
+ export * from "./telemetry/index.js";
23
25
  export {
24
26
  Dexto,
25
- getDexto,
26
27
  getFileMediaKind,
27
28
  getResourceKind
28
29
  };
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  var LLMErrorCode = /* @__PURE__ */ ((LLMErrorCode2) => {
2
3
  LLMErrorCode2["API_KEY_MISSING"] = "llm_api_key_missing";
3
4
  LLMErrorCode2["API_KEY_INVALID"] = "llm_api_key_invalid";
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  import { DextoRuntimeError } from "../errors/DextoRuntimeError.js";
2
3
  import { ErrorScope } from "../errors/types.js";
3
4
  import { ErrorType } from "../errors/types.js";
@@ -1,3 +1,4 @@
1
+ import "../../chunk-C6A6W6XS.js";
1
2
  import { logger } from "../../logger/index.js";
2
3
  import {
3
4
  getImageData,
@@ -1,3 +1,4 @@
1
+ import "../../chunk-C6A6W6XS.js";
1
2
  import { VercelMessageFormatter } from "./vercel.js";
2
3
  import { OpenAIMessageFormatter } from "./openai.js";
3
4
  import { AnthropicMessageFormatter } from "./anthropic.js";
@@ -1,3 +1,4 @@
1
+ import "../../chunk-C6A6W6XS.js";
1
2
  import {
2
3
  getImageData,
3
4
  filterMessagesByLLMCapabilities,
@@ -1,3 +1,4 @@
1
+ import "../../chunk-C6A6W6XS.js";
1
2
  import { getImageData, getFileData, filterMessagesByLLMCapabilities } from "../../context/utils.js";
2
3
  import { logger } from "../../logger/index.js";
3
4
  class VercelMessageFormatter {
@@ -89,6 +89,7 @@ const LLM_REGISTRY = {
89
89
  name: "gpt-5-mini",
90
90
  displayName: "GPT-5 Mini",
91
91
  maxInputTokens: 4e5,
92
+ default: true,
92
93
  supportedFileTypes: ["pdf", "image"],
93
94
  pricing: {
94
95
  inputPerM: 0.25,
@@ -128,7 +129,6 @@ const LLM_REGISTRY = {
128
129
  name: "gpt-4.1-mini",
129
130
  displayName: "GPT-4.1 Mini",
130
131
  maxInputTokens: 1048576,
131
- default: true,
132
132
  supportedFileTypes: ["pdf", "image"],
133
133
  pricing: {
134
134
  inputPerM: 0.4,
@@ -273,22 +273,22 @@ const LLM_REGISTRY = {
273
273
  }
274
274
  },
275
275
  {
276
- name: "claude-opus-4-1-20250805",
277
- displayName: "Claude 4.1 Opus",
276
+ name: "claude-sonnet-4-5-20250929",
277
+ displayName: "Claude 4.5 Sonnet",
278
278
  maxInputTokens: 2e5,
279
279
  supportedFileTypes: ["pdf", "image"],
280
280
  pricing: {
281
- inputPerM: 15,
282
- outputPerM: 75,
283
- cacheWritePerM: 18.75,
284
- cacheReadPerM: 1.5,
281
+ inputPerM: 3,
282
+ outputPerM: 15,
283
+ cacheWritePerM: 3.75,
284
+ cacheReadPerM: 0.3,
285
285
  currency: "USD",
286
286
  unit: "per_million_tokens"
287
287
  }
288
288
  },
289
289
  {
290
- name: "claude-4-opus-20250514",
291
- displayName: "Claude 4 Opus",
290
+ name: "claude-opus-4-1-20250805",
291
+ displayName: "Claude 4.1 Opus",
292
292
  maxInputTokens: 2e5,
293
293
  supportedFileTypes: ["pdf", "image"],
294
294
  pricing: {
@@ -301,15 +301,15 @@ const LLM_REGISTRY = {
301
301
  }
302
302
  },
303
303
  {
304
- name: "claude-sonnet-4-5-20250929",
305
- displayName: "Claude 4.5 Sonnet",
304
+ name: "claude-4-opus-20250514",
305
+ displayName: "Claude 4 Opus",
306
306
  maxInputTokens: 2e5,
307
307
  supportedFileTypes: ["pdf", "image"],
308
308
  pricing: {
309
- inputPerM: 3,
310
- outputPerM: 15,
311
- cacheWritePerM: 3.75,
312
- cacheReadPerM: 0.3,
309
+ inputPerM: 15,
310
+ outputPerM: 75,
311
+ cacheWritePerM: 18.75,
312
+ cacheReadPerM: 1.5,
313
313
  currency: "USD",
314
314
  unit: "per_million_tokens"
315
315
  }
@@ -74,7 +74,7 @@ export declare function isValidProviderModel(provider: LLMProvider, model: strin
74
74
  * Matches the model name (case-insensitive) against all registered models.
75
75
  * Returns the provider name if found, or 'unknown' if not found.
76
76
  *
77
- * @param model The model name (e.g., 'gpt-4o-mini', 'claude-3-7-sonnet-20250219')
77
+ * @param model The model name (e.g., 'gpt-5-mini', 'claude-sonnet-4-5-20250929')
78
78
  * @returns The inferred provider name ('openai', 'anthropic', etc.), or 'unknown' if no match is found.
79
79
  */
80
80
  export declare function getProviderFromModel(model: string): LLMProvider;
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  import { LLMError } from "./errors.js";
2
3
  import { LLMErrorCode } from "./error-codes.js";
3
4
  import { DextoRuntimeError } from "../errors/DextoRuntimeError.js";
@@ -47,6 +48,7 @@ const LLM_REGISTRY = {
47
48
  name: "gpt-5-mini",
48
49
  displayName: "GPT-5 Mini",
49
50
  maxInputTokens: 4e5,
51
+ default: true,
50
52
  supportedFileTypes: ["pdf", "image"],
51
53
  pricing: {
52
54
  inputPerM: 0.25,
@@ -86,7 +88,6 @@ const LLM_REGISTRY = {
86
88
  name: "gpt-4.1-mini",
87
89
  displayName: "GPT-4.1 Mini",
88
90
  maxInputTokens: 1048576,
89
- default: true,
90
91
  supportedFileTypes: ["pdf", "image"],
91
92
  pricing: {
92
93
  inputPerM: 0.4,
@@ -231,22 +232,22 @@ const LLM_REGISTRY = {
231
232
  }
232
233
  },
233
234
  {
234
- name: "claude-opus-4-1-20250805",
235
- displayName: "Claude 4.1 Opus",
235
+ name: "claude-sonnet-4-5-20250929",
236
+ displayName: "Claude 4.5 Sonnet",
236
237
  maxInputTokens: 2e5,
237
238
  supportedFileTypes: ["pdf", "image"],
238
239
  pricing: {
239
- inputPerM: 15,
240
- outputPerM: 75,
241
- cacheWritePerM: 18.75,
242
- cacheReadPerM: 1.5,
240
+ inputPerM: 3,
241
+ outputPerM: 15,
242
+ cacheWritePerM: 3.75,
243
+ cacheReadPerM: 0.3,
243
244
  currency: "USD",
244
245
  unit: "per_million_tokens"
245
246
  }
246
247
  },
247
248
  {
248
- name: "claude-4-opus-20250514",
249
- displayName: "Claude 4 Opus",
249
+ name: "claude-opus-4-1-20250805",
250
+ displayName: "Claude 4.1 Opus",
250
251
  maxInputTokens: 2e5,
251
252
  supportedFileTypes: ["pdf", "image"],
252
253
  pricing: {
@@ -259,15 +260,15 @@ const LLM_REGISTRY = {
259
260
  }
260
261
  },
261
262
  {
262
- name: "claude-sonnet-4-5-20250929",
263
- displayName: "Claude 4.5 Sonnet",
263
+ name: "claude-4-opus-20250514",
264
+ displayName: "Claude 4 Opus",
264
265
  maxInputTokens: 2e5,
265
266
  supportedFileTypes: ["pdf", "image"],
266
267
  pricing: {
267
- inputPerM: 3,
268
- outputPerM: 15,
269
- cacheWritePerM: 3.75,
270
- cacheReadPerM: 0.3,
268
+ inputPerM: 15,
269
+ outputPerM: 75,
270
+ cacheWritePerM: 18.75,
271
+ cacheReadPerM: 1.5,
271
272
  currency: "USD",
272
273
  unit: "per_million_tokens"
273
274
  }
@@ -1,3 +1,4 @@
1
+ import "../chunk-C6A6W6XS.js";
1
2
  import { hasErrors, splitIssues, ok, fail, zodToIssues } from "../utils/result.js";
2
3
  import { ErrorScope, ErrorType } from "../errors/types.js";
3
4
  import { LLMErrorCode } from "./error-codes.js";