@dexto/core 1.5.6 → 1.5.8

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 (217) hide show
  1. package/dist/agent/DextoAgent.cjs +189 -30
  2. package/dist/agent/DextoAgent.d.ts +44 -9
  3. package/dist/agent/DextoAgent.d.ts.map +1 -1
  4. package/dist/agent/DextoAgent.js +190 -31
  5. package/dist/agent/schemas.cjs +5 -0
  6. package/dist/agent/schemas.d.ts +456 -66
  7. package/dist/agent/schemas.d.ts.map +1 -1
  8. package/dist/agent/schemas.js +5 -0
  9. package/dist/context/manager.cjs +1 -1
  10. package/dist/context/manager.js +1 -1
  11. package/dist/context/utils.cjs +90 -17
  12. package/dist/context/utils.d.ts.map +1 -1
  13. package/dist/context/utils.js +90 -17
  14. package/dist/errors/types.cjs +2 -1
  15. package/dist/errors/types.d.ts +2 -1
  16. package/dist/errors/types.d.ts.map +1 -1
  17. package/dist/errors/types.js +2 -1
  18. package/dist/events/index.cjs +4 -1
  19. package/dist/events/index.d.ts +37 -2
  20. package/dist/events/index.d.ts.map +1 -1
  21. package/dist/events/index.js +4 -1
  22. package/dist/image/types.d.ts +15 -0
  23. package/dist/image/types.d.ts.map +1 -1
  24. package/dist/index.browser.d.ts +1 -1
  25. package/dist/index.browser.d.ts.map +1 -1
  26. package/dist/llm/curation-config.cjs +82 -0
  27. package/dist/llm/curation-config.d.ts +13 -0
  28. package/dist/llm/curation-config.d.ts.map +1 -0
  29. package/dist/llm/curation-config.js +59 -0
  30. package/dist/llm/curation.cjs +57 -0
  31. package/dist/llm/curation.d.ts +16 -0
  32. package/dist/llm/curation.d.ts.map +1 -0
  33. package/dist/llm/curation.js +34 -0
  34. package/dist/llm/error-codes.cjs +1 -0
  35. package/dist/llm/error-codes.d.ts +1 -0
  36. package/dist/llm/error-codes.d.ts.map +1 -1
  37. package/dist/llm/error-codes.js +1 -0
  38. package/dist/llm/errors.cjs +16 -1
  39. package/dist/llm/errors.d.ts +15 -8
  40. package/dist/llm/errors.d.ts.map +1 -1
  41. package/dist/llm/errors.js +16 -1
  42. package/dist/llm/executor/provider-options.cjs +1 -1
  43. package/dist/llm/executor/provider-options.js +1 -1
  44. package/dist/llm/executor/turn-executor.cjs +35 -2
  45. package/dist/llm/executor/turn-executor.d.ts.map +1 -1
  46. package/dist/llm/executor/turn-executor.js +35 -2
  47. package/dist/llm/index.cjs +14 -3
  48. package/dist/llm/index.d.ts +3 -1
  49. package/dist/llm/index.d.ts.map +1 -1
  50. package/dist/llm/index.js +13 -2
  51. package/dist/llm/registry/auto-update.cjs +263 -0
  52. package/dist/llm/registry/auto-update.d.ts +27 -0
  53. package/dist/llm/registry/auto-update.d.ts.map +1 -0
  54. package/dist/llm/registry/auto-update.js +227 -0
  55. package/dist/llm/registry/index.cjs +806 -0
  56. package/dist/llm/{registry.d.ts → registry/index.d.ts} +67 -13
  57. package/dist/llm/registry/index.d.ts.map +1 -0
  58. package/dist/llm/registry/index.js +756 -0
  59. package/dist/llm/registry/models.generated.cjs +4861 -0
  60. package/dist/llm/registry/models.generated.d.ts +431 -0
  61. package/dist/llm/registry/models.generated.d.ts.map +1 -0
  62. package/dist/llm/registry/models.generated.js +4838 -0
  63. package/dist/llm/registry/models.manual.cjs +44 -0
  64. package/dist/llm/registry/models.manual.d.ts +22 -0
  65. package/dist/llm/registry/models.manual.d.ts.map +1 -0
  66. package/dist/llm/registry/models.manual.js +21 -0
  67. package/dist/llm/registry/sync.cjs +354 -0
  68. package/dist/llm/registry/sync.d.ts +41 -0
  69. package/dist/llm/registry/sync.d.ts.map +1 -0
  70. package/dist/llm/registry/sync.js +328 -0
  71. package/dist/llm/resolver.cjs +29 -7
  72. package/dist/llm/resolver.d.ts +1 -1
  73. package/dist/llm/resolver.d.ts.map +1 -1
  74. package/dist/llm/resolver.js +31 -8
  75. package/dist/llm/schemas.cjs +13 -1
  76. package/dist/llm/schemas.d.ts +59 -59
  77. package/dist/llm/schemas.d.ts.map +1 -1
  78. package/dist/llm/schemas.js +14 -1
  79. package/dist/llm/services/factory.cjs +43 -27
  80. package/dist/llm/services/factory.d.ts +20 -1
  81. package/dist/llm/services/factory.d.ts.map +1 -1
  82. package/dist/llm/services/factory.js +44 -28
  83. package/dist/llm/services/test-utils.integration.cjs +5 -1
  84. package/dist/llm/services/test-utils.integration.d.ts.map +1 -1
  85. package/dist/llm/services/test-utils.integration.js +5 -1
  86. package/dist/llm/services/vercel.cjs +4 -1
  87. package/dist/llm/services/vercel.d.ts +1 -0
  88. package/dist/llm/services/vercel.d.ts.map +1 -1
  89. package/dist/llm/services/vercel.js +4 -1
  90. package/dist/llm/types.cjs +5 -2
  91. package/dist/llm/types.d.ts +1 -1
  92. package/dist/llm/types.d.ts.map +1 -1
  93. package/dist/llm/types.js +5 -2
  94. package/dist/llm/validation.cjs +1 -1
  95. package/dist/llm/validation.js +1 -1
  96. package/dist/logger/v2/dexto-logger.cjs +4 -0
  97. package/dist/logger/v2/dexto-logger.d.ts +3 -0
  98. package/dist/logger/v2/dexto-logger.d.ts.map +1 -1
  99. package/dist/logger/v2/dexto-logger.js +4 -0
  100. package/dist/logger/v2/types.d.ts +2 -0
  101. package/dist/logger/v2/types.d.ts.map +1 -1
  102. package/dist/mcp/error-codes.cjs +1 -0
  103. package/dist/mcp/error-codes.d.ts +1 -0
  104. package/dist/mcp/error-codes.d.ts.map +1 -1
  105. package/dist/mcp/error-codes.js +1 -0
  106. package/dist/mcp/errors.cjs +13 -0
  107. package/dist/mcp/errors.d.ts +7 -0
  108. package/dist/mcp/errors.d.ts.map +1 -1
  109. package/dist/mcp/errors.js +13 -0
  110. package/dist/mcp/manager.cjs +46 -4
  111. package/dist/mcp/manager.d.ts +10 -2
  112. package/dist/mcp/manager.d.ts.map +1 -1
  113. package/dist/mcp/manager.js +46 -4
  114. package/dist/mcp/mcp-client.cjs +89 -5
  115. package/dist/mcp/mcp-client.d.ts +5 -1
  116. package/dist/mcp/mcp-client.d.ts.map +1 -1
  117. package/dist/mcp/mcp-client.js +89 -5
  118. package/dist/mcp/schemas.cjs +6 -1
  119. package/dist/mcp/schemas.d.ts +1 -1
  120. package/dist/mcp/schemas.d.ts.map +1 -1
  121. package/dist/mcp/schemas.js +6 -1
  122. package/dist/mcp/types.d.ts +5 -0
  123. package/dist/mcp/types.d.ts.map +1 -1
  124. package/dist/prompts/index.d.ts +1 -1
  125. package/dist/prompts/index.d.ts.map +1 -1
  126. package/dist/prompts/prompt-manager.cjs +90 -4
  127. package/dist/prompts/prompt-manager.d.ts +16 -6
  128. package/dist/prompts/prompt-manager.d.ts.map +1 -1
  129. package/dist/prompts/prompt-manager.js +90 -4
  130. package/dist/prompts/providers/config-prompt-provider.cjs +104 -10
  131. package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -1
  132. package/dist/prompts/providers/config-prompt-provider.js +105 -11
  133. package/dist/prompts/providers/custom-prompt-provider.cjs +1 -0
  134. package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -1
  135. package/dist/prompts/providers/custom-prompt-provider.js +1 -0
  136. package/dist/prompts/providers/mcp-prompt-provider.cjs +1 -0
  137. package/dist/prompts/providers/mcp-prompt-provider.d.ts.map +1 -1
  138. package/dist/prompts/providers/mcp-prompt-provider.js +1 -0
  139. package/dist/prompts/schemas.cjs +28 -2
  140. package/dist/prompts/schemas.d.ts +130 -0
  141. package/dist/prompts/schemas.d.ts.map +1 -1
  142. package/dist/prompts/schemas.js +28 -2
  143. package/dist/prompts/types.d.ts +55 -3
  144. package/dist/prompts/types.d.ts.map +1 -1
  145. package/dist/resources/handlers/filesystem-handler.cjs +25 -0
  146. package/dist/resources/handlers/filesystem-handler.d.ts +1 -0
  147. package/dist/resources/handlers/filesystem-handler.d.ts.map +1 -1
  148. package/dist/resources/handlers/filesystem-handler.js +25 -0
  149. package/dist/session/chat-session.cjs +1 -1
  150. package/dist/session/chat-session.d.ts +1 -1
  151. package/dist/session/chat-session.d.ts.map +1 -1
  152. package/dist/session/chat-session.js +1 -1
  153. package/dist/session/index.d.ts +1 -1
  154. package/dist/session/index.d.ts.map +1 -1
  155. package/dist/session/message-queue.cjs +29 -5
  156. package/dist/session/message-queue.d.ts +3 -1
  157. package/dist/session/message-queue.d.ts.map +1 -1
  158. package/dist/session/message-queue.js +29 -5
  159. package/dist/session/session-manager.cjs +84 -3
  160. package/dist/session/session-manager.d.ts +12 -0
  161. package/dist/session/session-manager.d.ts.map +1 -1
  162. package/dist/session/session-manager.js +74 -3
  163. package/dist/session/types.d.ts +1 -0
  164. package/dist/session/types.d.ts.map +1 -1
  165. package/dist/systemPrompt/contributors.cjs +42 -0
  166. package/dist/systemPrompt/contributors.d.ts +13 -0
  167. package/dist/systemPrompt/contributors.d.ts.map +1 -1
  168. package/dist/systemPrompt/contributors.js +41 -0
  169. package/dist/tools/errors.cjs +7 -3
  170. package/dist/tools/errors.d.ts +5 -1
  171. package/dist/tools/errors.d.ts.map +1 -1
  172. package/dist/tools/errors.js +7 -3
  173. package/dist/tools/internal-tools/constants.cjs +2 -1
  174. package/dist/tools/internal-tools/constants.d.ts +1 -1
  175. package/dist/tools/internal-tools/constants.d.ts.map +1 -1
  176. package/dist/tools/internal-tools/constants.js +2 -1
  177. package/dist/tools/internal-tools/implementations/invoke-skill-tool.cjs +140 -0
  178. package/dist/tools/internal-tools/implementations/invoke-skill-tool.d.ts +24 -0
  179. package/dist/tools/internal-tools/implementations/invoke-skill-tool.d.ts.map +1 -0
  180. package/dist/tools/internal-tools/implementations/invoke-skill-tool.js +117 -0
  181. package/dist/tools/internal-tools/provider.cjs +15 -0
  182. package/dist/tools/internal-tools/provider.d.ts +15 -1
  183. package/dist/tools/internal-tools/provider.d.ts.map +1 -1
  184. package/dist/tools/internal-tools/provider.js +15 -0
  185. package/dist/tools/internal-tools/registry.cjs +6 -0
  186. package/dist/tools/internal-tools/registry.d.ts +35 -1
  187. package/dist/tools/internal-tools/registry.d.ts.map +1 -1
  188. package/dist/tools/internal-tools/registry.js +6 -0
  189. package/dist/tools/schemas.d.ts +1 -1
  190. package/dist/tools/schemas.d.ts.map +1 -1
  191. package/dist/tools/tool-call-metadata.cjs +75 -0
  192. package/dist/tools/tool-call-metadata.d.ts +16 -0
  193. package/dist/tools/tool-call-metadata.d.ts.map +1 -0
  194. package/dist/tools/tool-call-metadata.js +51 -0
  195. package/dist/tools/tool-manager.cjs +481 -103
  196. package/dist/tools/tool-manager.d.ts +131 -9
  197. package/dist/tools/tool-manager.d.ts.map +1 -1
  198. package/dist/tools/tool-manager.js +482 -104
  199. package/dist/utils/api-key-resolver.cjs +5 -2
  200. package/dist/utils/api-key-resolver.d.ts.map +1 -1
  201. package/dist/utils/api-key-resolver.js +5 -2
  202. package/dist/utils/env.cjs +49 -0
  203. package/dist/utils/env.d.ts +4 -0
  204. package/dist/utils/env.d.ts.map +1 -0
  205. package/dist/utils/env.js +24 -0
  206. package/dist/utils/index.cjs +3 -1
  207. package/dist/utils/index.d.ts +1 -0
  208. package/dist/utils/index.d.ts.map +1 -1
  209. package/dist/utils/index.js +1 -0
  210. package/dist/utils/service-initializer.cjs +25 -7
  211. package/dist/utils/service-initializer.d.ts +24 -1
  212. package/dist/utils/service-initializer.d.ts.map +1 -1
  213. package/dist/utils/service-initializer.js +25 -7
  214. package/package.json +6 -2
  215. package/dist/llm/registry.cjs +0 -1631
  216. package/dist/llm/registry.d.ts.map +0 -1
  217. package/dist/llm/registry.js +0 -1586
@@ -126,6 +126,19 @@ export interface ImageDefinition {
126
126
  * Optional: enables creating specialized images from base images.
127
127
  */
128
128
  extends?: string;
129
+ /**
130
+ * Bundled plugin paths.
131
+ * Absolute paths to plugin directories containing .dexto-plugin or .claude-plugin manifests.
132
+ * These plugins are automatically discovered alongside user/project plugins.
133
+ *
134
+ * Example:
135
+ * ```typescript
136
+ * import { PLUGIN_PATH as planToolsPluginPath } from '@dexto/tools-plan';
137
+ *
138
+ * bundledPlugins: [planToolsPluginPath]
139
+ * ```
140
+ */
141
+ bundledPlugins?: string[];
129
142
  }
130
143
  /**
131
144
  * Target deployment environments for images.
@@ -198,6 +211,8 @@ export interface ImageMetadata {
198
211
  coreVersion: string;
199
212
  /** Base image this extends (if any) */
200
213
  extends?: string;
214
+ /** Bundled plugin paths (absolute paths to plugin directories) */
215
+ bundledPlugins?: string[];
201
216
  }
202
217
  /**
203
218
  * Result of building an image.
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/image/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/image/types.ts"],"names":[],"mappings":"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"}
@@ -21,7 +21,7 @@ export { PROMPT_GENERATOR_SOURCES } from './systemPrompt/registry.js';
21
21
  export type { ContributorConfig, SystemPromptConfig } from './systemPrompt/schemas.js';
22
22
  export type { SearchOptions, SearchResult, SessionSearchResult, SearchResponse, SessionSearchResponse, } from './search/types.js';
23
23
  export type { AgentEventMap, SessionEventMap } from './events/index.js';
24
- export type { ModelInfo, ProviderInfo } from './llm/registry.js';
24
+ export type { ModelInfo, ProviderInfo } from './llm/registry/index.js';
25
25
  export type { SupportedFileType } from './llm/types.js';
26
26
  export type { ResourceMetadata } from './resources/types.js';
27
27
  export type { ResourceReference } from './resources/reference-parser.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.browser.d.ts","sourceRoot":"","sources":["../src/index.browser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG1D,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGzE,YAAY,EACR,eAAe,EACf,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,cAAc,EACd,WAAW,EACX,QAAQ,EACR,kBAAkB,GACrB,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EACH,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,WAAW,EACX,UAAU,EACV,gBAAgB,GACnB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG/E,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG/C,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EACH,gBAAgB,EAChB,oBAAoB,EACpB,2BAA2B,GAC9B,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGnE,YAAY,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AACxF,OAAO,EACH,uBAAuB,EACvB,2BAA2B,EAC3B,8BAA8B,EAC9B,6BAA6B,GAChC,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACjF,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG7E,YAAY,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGpE,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAG5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGvF,YAAY,EACR,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,qBAAqB,GACxB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGxE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACjE,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAKxD,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,YAAY,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EACH,uBAAuB,EACvB,yBAAyB,GAC5B,MAAM,iCAAiC,CAAC"}
1
+ {"version":3,"file":"index.browser.d.ts","sourceRoot":"","sources":["../src/index.browser.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,OAAO,EAAE,MAAM,6BAA6B,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG1D,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAGzE,YAAY,EACR,eAAe,EACf,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,WAAW,EACX,QAAQ,EACR,QAAQ,EACR,SAAS,EACT,QAAQ,EACR,cAAc,EACd,WAAW,EACX,QAAQ,EACR,kBAAkB,GACrB,MAAM,oBAAoB,CAAC;AAI5B,OAAO,EACH,eAAe,EACf,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,UAAU,EACV,WAAW,EACX,UAAU,EACV,gBAAgB,GACnB,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,4BAA4B,CAAC;AAG/E,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAG/C,YAAY,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACzE,OAAO,EACH,gBAAgB,EAChB,oBAAoB,EACpB,2BAA2B,GAC9B,MAAM,kBAAkB,CAAC;AAG1B,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAGnE,YAAY,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AACxF,OAAO,EACH,uBAAuB,EACvB,2BAA2B,EAC3B,8BAA8B,EAC9B,6BAA6B,GAChC,MAAM,oBAAoB,CAAC;AAG5B,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAC;AACjF,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG7E,YAAY,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAGpE,YAAY,EAAE,WAAW,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAG5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,4BAA4B,CAAC;AACtE,YAAY,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGvF,YAAY,EACR,aAAa,EACb,YAAY,EACZ,mBAAmB,EACnB,cAAc,EACd,qBAAqB,GACxB,MAAM,mBAAmB,CAAC;AAG3B,YAAY,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAGxE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvE,YAAY,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAKxD,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AAC7D,YAAY,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACzE,OAAO,EACH,uBAAuB,EACvB,yBAAyB,GAC5B,MAAM,iCAAiC,CAAC"}
@@ -0,0 +1,82 @@
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 curation_config_exports = {};
20
+ __export(curation_config_exports, {
21
+ CURATED_MODEL_IDS_BY_PROVIDER: () => CURATED_MODEL_IDS_BY_PROVIDER
22
+ });
23
+ module.exports = __toCommonJS(curation_config_exports);
24
+ const CURATED_MODEL_IDS_BY_PROVIDER = {
25
+ openai: [
26
+ "gpt-5.2",
27
+ "gpt-5.2-chat-latest",
28
+ "gpt-5.2-pro",
29
+ "gpt-5.2-codex",
30
+ "gpt-5",
31
+ "gpt-5-mini",
32
+ "gpt-4.1",
33
+ "gpt-4.1-mini",
34
+ "gpt-4o"
35
+ ],
36
+ anthropic: [
37
+ "claude-opus-4-5-20251101",
38
+ "claude-sonnet-4-5-20250929",
39
+ "claude-sonnet-4-20250514",
40
+ "claude-haiku-4-5-20251001"
41
+ ],
42
+ google: [
43
+ "gemini-3-pro-preview",
44
+ "gemini-3-flash-preview",
45
+ "gemini-2.5-pro",
46
+ "gemini-2.5-flash"
47
+ ],
48
+ vertex: [
49
+ "gemini-3-pro-preview",
50
+ "gemini-3-flash-preview",
51
+ "gemini-2.5-pro",
52
+ "gemini-2.5-flash"
53
+ ],
54
+ xai: ["grok-4", "grok-3", "grok-3-mini"],
55
+ groq: ["llama-3.3-70b-versatile", "llama-3.1-8b-instant", "qwen-qwq-32b"],
56
+ cohere: ["command-a-03-2025", "command-r-plus-08-2024", "command-r-08-2024"],
57
+ minimax: ["MiniMax-M2.1", "MiniMax-M2"],
58
+ glm: ["glm-4.7", "glm-4.5"],
59
+ bedrock: [
60
+ "anthropic.claude-sonnet-4-5-20250929-v1:0",
61
+ "anthropic.claude-haiku-4-5-20251001-v1:0",
62
+ "amazon.nova-pro-v1:0"
63
+ ],
64
+ "dexto-nova": [
65
+ "anthropic/claude-haiku-4.5",
66
+ "anthropic/claude-sonnet-4.5",
67
+ "anthropic/claude-opus-4.5",
68
+ "openai/gpt-5.2",
69
+ "openai/gpt-5.2-codex",
70
+ "google/gemini-3-pro-preview",
71
+ "google/gemini-3-flash-preview",
72
+ "qwen/qwen3-coder:free",
73
+ "deepseek/deepseek-r1-0528:free",
74
+ "z-ai/glm-4.7",
75
+ "minimax/minimax-m2.1",
76
+ "moonshotai/kimi-k2.5"
77
+ ]
78
+ };
79
+ // Annotate the CommonJS export names for ESM import in node:
80
+ 0 && (module.exports = {
81
+ CURATED_MODEL_IDS_BY_PROVIDER
82
+ });
@@ -0,0 +1,13 @@
1
+ import type { LLMProvider } from './types.js';
2
+ /**
3
+ * Product-level curated model IDs per provider.
4
+ *
5
+ * This is intentionally explicit (no heuristics) so we can control what shows up in
6
+ * onboarding and default pickers without listing the entire registry.
7
+ *
8
+ * Notes:
9
+ * - IDs must match `ModelInfo.name` in the registry for that provider.
10
+ * - IDs are validated in tests to ensure they exist (so curated UI/onboarding doesn’t silently go empty).
11
+ */
12
+ export declare const CURATED_MODEL_IDS_BY_PROVIDER: Partial<Record<LLMProvider, string[]>>;
13
+ //# sourceMappingURL=curation-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"curation-config.d.ts","sourceRoot":"","sources":["../../src/llm/curation-config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;;;;;;GASG;AACH,eAAO,MAAM,6BAA6B,EAAE,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,CAAC,CAsDhF,CAAC"}
@@ -0,0 +1,59 @@
1
+ import "../chunk-PTJYTZNU.js";
2
+ const CURATED_MODEL_IDS_BY_PROVIDER = {
3
+ openai: [
4
+ "gpt-5.2",
5
+ "gpt-5.2-chat-latest",
6
+ "gpt-5.2-pro",
7
+ "gpt-5.2-codex",
8
+ "gpt-5",
9
+ "gpt-5-mini",
10
+ "gpt-4.1",
11
+ "gpt-4.1-mini",
12
+ "gpt-4o"
13
+ ],
14
+ anthropic: [
15
+ "claude-opus-4-5-20251101",
16
+ "claude-sonnet-4-5-20250929",
17
+ "claude-sonnet-4-20250514",
18
+ "claude-haiku-4-5-20251001"
19
+ ],
20
+ google: [
21
+ "gemini-3-pro-preview",
22
+ "gemini-3-flash-preview",
23
+ "gemini-2.5-pro",
24
+ "gemini-2.5-flash"
25
+ ],
26
+ vertex: [
27
+ "gemini-3-pro-preview",
28
+ "gemini-3-flash-preview",
29
+ "gemini-2.5-pro",
30
+ "gemini-2.5-flash"
31
+ ],
32
+ xai: ["grok-4", "grok-3", "grok-3-mini"],
33
+ groq: ["llama-3.3-70b-versatile", "llama-3.1-8b-instant", "qwen-qwq-32b"],
34
+ cohere: ["command-a-03-2025", "command-r-plus-08-2024", "command-r-08-2024"],
35
+ minimax: ["MiniMax-M2.1", "MiniMax-M2"],
36
+ glm: ["glm-4.7", "glm-4.5"],
37
+ bedrock: [
38
+ "anthropic.claude-sonnet-4-5-20250929-v1:0",
39
+ "anthropic.claude-haiku-4-5-20251001-v1:0",
40
+ "amazon.nova-pro-v1:0"
41
+ ],
42
+ "dexto-nova": [
43
+ "anthropic/claude-haiku-4.5",
44
+ "anthropic/claude-sonnet-4.5",
45
+ "anthropic/claude-opus-4.5",
46
+ "openai/gpt-5.2",
47
+ "openai/gpt-5.2-codex",
48
+ "google/gemini-3-pro-preview",
49
+ "google/gemini-3-flash-preview",
50
+ "qwen/qwen3-coder:free",
51
+ "deepseek/deepseek-r1-0528:free",
52
+ "z-ai/glm-4.7",
53
+ "minimax/minimax-m2.1",
54
+ "moonshotai/kimi-k2.5"
55
+ ]
56
+ };
57
+ export {
58
+ CURATED_MODEL_IDS_BY_PROVIDER
59
+ };
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+ var curation_exports = {};
20
+ __export(curation_exports, {
21
+ getCuratedModelsForProvider: () => getCuratedModelsForProvider
22
+ });
23
+ module.exports = __toCommonJS(curation_exports);
24
+ var import_registry = require("./registry/index.js");
25
+ var import_curation_config = require("./curation-config.js");
26
+ const DEFAULT_MAX = 8;
27
+ function getCuratedModelsForProvider(provider, options) {
28
+ const providerInfo = import_registry.LLM_REGISTRY[provider];
29
+ const models = providerInfo.models ?? [];
30
+ if (models.length === 0) return [];
31
+ const max = options?.max ?? DEFAULT_MAX;
32
+ if (max <= 0) return [];
33
+ const curatedIds = import_curation_config.CURATED_MODEL_IDS_BY_PROVIDER[provider];
34
+ if (!Array.isArray(curatedIds) || curatedIds.length === 0) {
35
+ return [];
36
+ }
37
+ const byName = /* @__PURE__ */ new Map();
38
+ for (const m of models) {
39
+ byName.set(m.name.toLowerCase(), m);
40
+ }
41
+ const picked = [];
42
+ const seen = /* @__PURE__ */ new Set();
43
+ for (const id of curatedIds) {
44
+ const key = id.toLowerCase();
45
+ const m = byName.get(key);
46
+ if (!m) continue;
47
+ if (seen.has(key)) continue;
48
+ seen.add(key);
49
+ picked.push(m);
50
+ if (picked.length >= max) break;
51
+ }
52
+ return picked;
53
+ }
54
+ // Annotate the CommonJS export names for ESM import in node:
55
+ 0 && (module.exports = {
56
+ getCuratedModelsForProvider
57
+ });
@@ -0,0 +1,16 @@
1
+ import type { LLMProvider } from './types.js';
2
+ import type { ModelInfo } from './registry/index.js';
3
+ type CuratedModelsOptions = {
4
+ /**
5
+ * Maximum number of models to return.
6
+ */
7
+ max?: number;
8
+ };
9
+ /**
10
+ * Returns a small, UI-friendly set of models for a provider.
11
+ *
12
+ * This is intentionally explicit. The curated model IDs are defined in `CURATED_MODEL_IDS_BY_PROVIDER`.
13
+ */
14
+ export declare function getCuratedModelsForProvider(provider: LLMProvider, options?: CuratedModelsOptions): ModelInfo[];
15
+ export {};
16
+ //# sourceMappingURL=curation.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"curation.d.ts","sourceRoot":"","sources":["../../src/llm/curation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAC;AAIrD,KAAK,oBAAoB,GAAG;IACxB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAIF;;;;GAIG;AACH,wBAAgB,2BAA2B,CACvC,QAAQ,EAAE,WAAW,EACrB,OAAO,CAAC,EAAE,oBAAoB,GAC/B,SAAS,EAAE,CAgCb"}
@@ -0,0 +1,34 @@
1
+ import "../chunk-PTJYTZNU.js";
2
+ import { LLM_REGISTRY } from "./registry/index.js";
3
+ import { CURATED_MODEL_IDS_BY_PROVIDER } from "./curation-config.js";
4
+ const DEFAULT_MAX = 8;
5
+ function getCuratedModelsForProvider(provider, options) {
6
+ const providerInfo = LLM_REGISTRY[provider];
7
+ const models = providerInfo.models ?? [];
8
+ if (models.length === 0) return [];
9
+ const max = options?.max ?? DEFAULT_MAX;
10
+ if (max <= 0) return [];
11
+ const curatedIds = CURATED_MODEL_IDS_BY_PROVIDER[provider];
12
+ if (!Array.isArray(curatedIds) || curatedIds.length === 0) {
13
+ return [];
14
+ }
15
+ const byName = /* @__PURE__ */ new Map();
16
+ for (const m of models) {
17
+ byName.set(m.name.toLowerCase(), m);
18
+ }
19
+ const picked = [];
20
+ const seen = /* @__PURE__ */ new Set();
21
+ for (const id of curatedIds) {
22
+ const key = id.toLowerCase();
23
+ const m = byName.get(key);
24
+ if (!m) continue;
25
+ if (seen.has(key)) continue;
26
+ seen.add(key);
27
+ picked.push(m);
28
+ if (picked.length >= max) break;
29
+ }
30
+ return picked;
31
+ }
32
+ export {
33
+ getCuratedModelsForProvider
34
+ };
@@ -36,6 +36,7 @@ var LLMErrorCode = /* @__PURE__ */ ((LLMErrorCode2) => {
36
36
  LLMErrorCode2["INPUT_TEXT_INVALID"] = "llm_input_text_invalid";
37
37
  LLMErrorCode2["TOKENS_EXCEEDED"] = "llm_tokens_exceeded";
38
38
  LLMErrorCode2["RATE_LIMIT_EXCEEDED"] = "llm_rate_limit_exceeded";
39
+ LLMErrorCode2["INSUFFICIENT_CREDITS"] = "llm_insufficient_credits";
39
40
  LLMErrorCode2["SWITCH_FAILED"] = "llm_switch_failed";
40
41
  LLMErrorCode2["GENERATION_FAILED"] = "llm_generation_failed";
41
42
  LLMErrorCode2["SWITCH_INPUT_MISSING"] = "llm_switch_input_missing";
@@ -17,6 +17,7 @@ export declare enum LLMErrorCode {
17
17
  INPUT_TEXT_INVALID = "llm_input_text_invalid",
18
18
  TOKENS_EXCEEDED = "llm_tokens_exceeded",
19
19
  RATE_LIMIT_EXCEEDED = "llm_rate_limit_exceeded",
20
+ INSUFFICIENT_CREDITS = "llm_insufficient_credits",
20
21
  SWITCH_FAILED = "llm_switch_failed",
21
22
  GENERATION_FAILED = "llm_generation_failed",
22
23
  SWITCH_INPUT_MISSING = "llm_switch_input_missing",// At least model or provider must be specified
@@ -1 +1 @@
1
- {"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../src/llm/error-codes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,oBAAY,YAAY;IAEpB,eAAe,wBAAwB;IACvC,eAAe,wBAAwB,CAAE,0BAA0B;IACnE,yBAAyB,kCAAkC;IAC3D,gBAAgB,yBAAyB;IACzC,gBAAgB,yBAAyB;IACzC,cAAc,uBAAuB,CAAE,gDAAgD;IAGvF,kBAAkB,2BAA2B;IAC7C,aAAa,sBAAsB;IACnC,oBAAoB,6BAA6B;IAGjD,sBAAsB,+BAA+B;IACrD,uBAAuB,gCAAgC;IACvD,kBAAkB,2BAA2B;IAG7C,eAAe,wBAAwB;IACvC,mBAAmB,4BAA4B;IAG/C,aAAa,sBAAsB;IACnC,iBAAiB,0BAA0B;IAG3C,oBAAoB,6BAA6B,CAAE,+CAA+C;IAGlG,sBAAsB,+BAA+B;CACxD"}
1
+ {"version":3,"file":"error-codes.d.ts","sourceRoot":"","sources":["../../src/llm/error-codes.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,oBAAY,YAAY;IAEpB,eAAe,wBAAwB;IACvC,eAAe,wBAAwB,CAAE,0BAA0B;IACnE,yBAAyB,kCAAkC;IAC3D,gBAAgB,yBAAyB;IACzC,gBAAgB,yBAAyB;IACzC,cAAc,uBAAuB,CAAE,gDAAgD;IAGvF,kBAAkB,2BAA2B;IAC7C,aAAa,sBAAsB;IACnC,oBAAoB,6BAA6B;IAGjD,sBAAsB,+BAA+B;IACrD,uBAAuB,gCAAgC;IACvD,kBAAkB,2BAA2B;IAG7C,eAAe,wBAAwB;IACvC,mBAAmB,4BAA4B;IAC/C,oBAAoB,6BAA6B;IAGjD,aAAa,sBAAsB;IACnC,iBAAiB,0BAA0B;IAG3C,oBAAoB,6BAA6B,CAAE,+CAA+C;IAGlG,sBAAsB,+BAA+B;CACxD"}
@@ -14,6 +14,7 @@ var LLMErrorCode = /* @__PURE__ */ ((LLMErrorCode2) => {
14
14
  LLMErrorCode2["INPUT_TEXT_INVALID"] = "llm_input_text_invalid";
15
15
  LLMErrorCode2["TOKENS_EXCEEDED"] = "llm_tokens_exceeded";
16
16
  LLMErrorCode2["RATE_LIMIT_EXCEEDED"] = "llm_rate_limit_exceeded";
17
+ LLMErrorCode2["INSUFFICIENT_CREDITS"] = "llm_insufficient_credits";
17
18
  LLMErrorCode2["SWITCH_FAILED"] = "llm_switch_failed";
18
19
  LLMErrorCode2["GENERATION_FAILED"] = "llm_generation_failed";
19
20
  LLMErrorCode2["SWITCH_INPUT_MISSING"] = "llm_switch_input_missing";
@@ -25,7 +25,7 @@ var import_DextoRuntimeError = require("../errors/DextoRuntimeError.js");
25
25
  var import_types = require("../errors/types.cjs");
26
26
  var import_types2 = require("../errors/types.js");
27
27
  var import_error_codes = require("./error-codes.js");
28
- var import_registry = require("./registry.js");
28
+ var import_registry = require("./registry/index.js");
29
29
  class LLMError {
30
30
  // Runtime model/provider lookup errors
31
31
  static unknownModel(provider, model) {
@@ -104,6 +104,21 @@ class LLMError {
104
104
  }
105
105
  );
106
106
  }
107
+ /**
108
+ * Error when Dexto account has insufficient credits.
109
+ * Returned as 402 from the gateway with code INSUFFICIENT_CREDITS.
110
+ */
111
+ static insufficientCredits(balance) {
112
+ const balanceStr = balance !== void 0 ? `$${balance.toFixed(2)}` : "low";
113
+ return new import_DextoRuntimeError.DextoRuntimeError(
114
+ import_error_codes.LLMErrorCode.INSUFFICIENT_CREDITS,
115
+ import_types.ErrorScope.LLM,
116
+ import_types2.ErrorType.FORBIDDEN,
117
+ `Insufficient Dexto credits. Balance: ${balanceStr}`,
118
+ { balance },
119
+ "Run `dexto billing` to check your balance"
120
+ );
121
+ }
107
122
  // Runtime operation errors
108
123
  static generationFailed(error, provider, model) {
109
124
  return new import_DextoRuntimeError.DextoRuntimeError(
@@ -9,19 +9,19 @@ import type { LLMProvider } from './types.js';
9
9
  */
10
10
  export declare class LLMError {
11
11
  static unknownModel(provider: LLMProvider, model: string): DextoRuntimeError<{
12
- provider: "openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama";
12
+ provider: "openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "minimax" | "glm" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama" | "dexto-nova";
13
13
  model: string;
14
14
  }>;
15
15
  static baseUrlMissing(provider: LLMProvider): DextoRuntimeError<{
16
- provider: "openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama";
16
+ provider: "openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "minimax" | "glm" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama" | "dexto-nova";
17
17
  }>;
18
18
  static missingConfig(provider: LLMProvider, configName: string): DextoRuntimeError<{
19
- provider: "openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama";
19
+ provider: "openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "minimax" | "glm" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama" | "dexto-nova";
20
20
  configName: string;
21
21
  }>;
22
22
  static unsupportedProvider(provider: string): DextoRuntimeError<{
23
23
  provider: string;
24
- availableProviders: ("openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama")[];
24
+ availableProviders: ("openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "minimax" | "glm" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama" | "dexto-nova")[];
25
25
  }>;
26
26
  /**
27
27
  * Runtime error when API key is missing for a provider that requires it.
@@ -29,24 +29,31 @@ export declare class LLMError {
29
29
  * and the user then tries to use the LLM functionality.
30
30
  */
31
31
  static apiKeyMissing(provider: LLMProvider, envVar: string): DextoRuntimeError<{
32
- provider: "openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama";
32
+ provider: "openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "minimax" | "glm" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama" | "dexto-nova";
33
33
  envVar: string;
34
34
  }>;
35
35
  static modelProviderUnknown(model: string): DextoRuntimeError<{
36
36
  model: string;
37
- availableProviders: ("openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama")[];
37
+ availableProviders: ("openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "minimax" | "glm" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama" | "dexto-nova")[];
38
38
  }>;
39
39
  static rateLimitExceeded(provider: LLMProvider, retryAfter?: number): DextoRuntimeError<{
40
40
  details: {
41
- provider: "openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama";
41
+ provider: "openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "minimax" | "glm" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama" | "dexto-nova";
42
42
  retryAfter: number | undefined;
43
43
  };
44
44
  recovery: string;
45
45
  }>;
46
+ /**
47
+ * Error when Dexto account has insufficient credits.
48
+ * Returned as 402 from the gateway with code INSUFFICIENT_CREDITS.
49
+ */
50
+ static insufficientCredits(balance?: number): DextoRuntimeError<{
51
+ balance: number | undefined;
52
+ }>;
46
53
  static generationFailed(error: string, provider: LLMProvider, model: string): DextoRuntimeError<{
47
54
  details: {
48
55
  error: string;
49
- provider: "openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama";
56
+ provider: "openai" | "openai-compatible" | "anthropic" | "google" | "groq" | "xai" | "cohere" | "minimax" | "glm" | "openrouter" | "litellm" | "glama" | "vertex" | "bedrock" | "local" | "ollama" | "dexto-nova";
50
57
  model: string;
51
58
  };
52
59
  }>;
@@ -1 +1 @@
1
- {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/llm/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAMnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;;;GAMG;AACH,qBAAa,QAAQ;IAEjB,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM;;;;IAUxD,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,WAAW;;;IAU3C,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM;;;;IAU9D,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM;;;;IAW3C;;;;OAIG;IACH,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM;;;;IAW1D,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM;;;;IAczC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,MAAM;;;;;;;IAgBnE,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM;;;;;;;IAW3E,MAAM,CAAC,kBAAkB;CAU5B"}
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../../src/llm/errors.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,gCAAgC,CAAC;AAMnE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;;;;;GAMG;AACH,qBAAa,QAAQ;IAEjB,MAAM,CAAC,YAAY,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM;;;;IAUxD,MAAM,CAAC,cAAc,CAAC,QAAQ,EAAE,WAAW;;;IAU3C,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM;;;;IAU9D,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM;;;;IAW3C;;;;OAIG;IACH,MAAM,CAAC,aAAa,CAAC,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM;;;;IAW1D,MAAM,CAAC,oBAAoB,CAAC,KAAK,EAAE,MAAM;;;;IAczC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,EAAE,WAAW,EAAE,UAAU,CAAC,EAAE,MAAM;;;;;;;IAenE;;;OAGG;IACH,MAAM,CAAC,mBAAmB,CAAC,OAAO,CAAC,EAAE,MAAM;;;IAa3C,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM;;;;;;;IAW3E,MAAM,CAAC,kBAAkB;CAU5B"}
@@ -3,7 +3,7 @@ import { DextoRuntimeError } from "../errors/DextoRuntimeError.js";
3
3
  import { ErrorScope } from "../errors/types.js";
4
4
  import { ErrorType } from "../errors/types.js";
5
5
  import { LLMErrorCode } from "./error-codes.js";
6
- import { getSupportedProviders } from "./registry.js";
6
+ import { getSupportedProviders } from "./registry/index.js";
7
7
  class LLMError {
8
8
  // Runtime model/provider lookup errors
9
9
  static unknownModel(provider, model) {
@@ -82,6 +82,21 @@ class LLMError {
82
82
  }
83
83
  );
84
84
  }
85
+ /**
86
+ * Error when Dexto account has insufficient credits.
87
+ * Returned as 402 from the gateway with code INSUFFICIENT_CREDITS.
88
+ */
89
+ static insufficientCredits(balance) {
90
+ const balanceStr = balance !== void 0 ? `$${balance.toFixed(2)}` : "low";
91
+ return new DextoRuntimeError(
92
+ LLMErrorCode.INSUFFICIENT_CREDITS,
93
+ ErrorScope.LLM,
94
+ ErrorType.FORBIDDEN,
95
+ `Insufficient Dexto credits. Balance: ${balanceStr}`,
96
+ { balance },
97
+ "Run `dexto billing` to check your balance"
98
+ );
99
+ }
85
100
  // Runtime operation errors
86
101
  static generationFailed(error, provider, model) {
87
102
  return new DextoRuntimeError(
@@ -22,7 +22,7 @@ __export(provider_options_exports, {
22
22
  getDefaultReasoningEffort: () => getDefaultReasoningEffort
23
23
  });
24
24
  module.exports = __toCommonJS(provider_options_exports);
25
- var import_registry = require("../registry.js");
25
+ var import_registry = require("../registry/index.js");
26
26
  function buildProviderOptions(config) {
27
27
  const { provider, model, reasoningEffort } = config;
28
28
  const modelLower = model.toLowerCase();
@@ -1,5 +1,5 @@
1
1
  import "../../chunk-PTJYTZNU.js";
2
- import { isReasoningCapableModel } from "../registry.js";
2
+ import { isReasoningCapableModel } from "../registry/index.js";
3
3
  function buildProviderOptions(config) {
4
4
  const { provider, model, reasoningEffort } = config;
5
5
  const modelLower = model.toLowerCase();
@@ -193,7 +193,10 @@ class TurnExecutor {
193
193
  contributorContext,
194
194
  this.llmContext
195
195
  );
196
- const toolDefinitions = supportsTools ? await this.toolManager.getAllTools() : {};
196
+ const toolDefinitions = supportsTools ? this.toolManager.filterToolsForSession(
197
+ await this.toolManager.getAllTools(),
198
+ this.sessionId
199
+ ) : {};
197
200
  let estimatedTokens = await this.contextManager.getEstimatedNextInputTokens(
198
201
  prepared.systemPrompt,
199
202
  prepared.preparedHistory,
@@ -458,7 +461,10 @@ class TurnExecutor {
458
461
  * - StreamProcessor handles persistence via tool-result events
459
462
  */
460
463
  async createTools() {
461
- const tools = await this.toolManager.getAllTools();
464
+ const tools = this.toolManager.filterToolsForSession(
465
+ await this.toolManager.getAllTools(),
466
+ this.sessionId
467
+ );
462
468
  return Object.fromEntries(
463
469
  Object.entries(tools).map(([name, tool]) => [
464
470
  name,
@@ -854,6 +860,33 @@ class TurnExecutor {
854
860
  const headers = err.responseHeaders || {};
855
861
  const retryAfter = headers["retry-after"] ? Number(headers["retry-after"]) : void 0;
856
862
  const body = typeof err.responseBody === "string" ? err.responseBody : JSON.stringify(err.responseBody ?? "");
863
+ if (status === 402) {
864
+ let balance;
865
+ try {
866
+ const parsed = JSON.parse(body);
867
+ const msg = parsed?.error?.message || "";
868
+ const match = msg.match(/Balance:\s*\$?([\d.]+)/i);
869
+ if (match) {
870
+ balance = parseFloat(match[1]);
871
+ }
872
+ } catch {
873
+ }
874
+ return new import_DextoRuntimeError.DextoRuntimeError(
875
+ import_error_codes.LLMErrorCode.INSUFFICIENT_CREDITS,
876
+ import_types7.ErrorScope.LLM,
877
+ import_types7.ErrorType.PAYMENT_REQUIRED,
878
+ `Insufficient Dexto credits${balance !== void 0 ? `. Balance: $${balance.toFixed(2)}` : ""}`,
879
+ {
880
+ sessionId: this.sessionId,
881
+ provider: this.llmContext.provider,
882
+ model: this.llmContext.model,
883
+ status,
884
+ balance,
885
+ body
886
+ },
887
+ "Run `dexto billing` to check your balance"
888
+ );
889
+ }
857
890
  if (status === 429) {
858
891
  return new import_DextoRuntimeError.DextoRuntimeError(
859
892
  import_error_codes.LLMErrorCode.RATE_LIMIT_EXCEEDED,
@@ -1 +1 @@
1
- {"version":3,"file":"turn-executor.d.ts","sourceRoot":"","sources":["../../../src/llm/executor/turn-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"turn-executor.d.ts","sourceRoot":"","sources":["../../../src/llm/executor/turn-executor.ts"],"names":[],"mappings":"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"}