@dexto/core 1.5.5 → 1.5.7

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 (146) hide show
  1. package/dist/agent/DextoAgent.cjs +94 -26
  2. package/dist/agent/DextoAgent.d.ts +17 -7
  3. package/dist/agent/DextoAgent.d.ts.map +1 -1
  4. package/dist/agent/DextoAgent.js +95 -27
  5. package/dist/agent/schemas.d.ts +417 -66
  6. package/dist/agent/schemas.d.ts.map +1 -1
  7. package/dist/context/utils.cjs +49 -3
  8. package/dist/context/utils.d.ts.map +1 -1
  9. package/dist/context/utils.js +49 -3
  10. package/dist/errors/types.cjs +2 -1
  11. package/dist/errors/types.d.ts +2 -1
  12. package/dist/errors/types.d.ts.map +1 -1
  13. package/dist/errors/types.js +2 -1
  14. package/dist/image/types.d.ts +15 -0
  15. package/dist/image/types.d.ts.map +1 -1
  16. package/dist/llm/error-codes.cjs +1 -0
  17. package/dist/llm/error-codes.d.ts +1 -0
  18. package/dist/llm/error-codes.d.ts.map +1 -1
  19. package/dist/llm/error-codes.js +1 -0
  20. package/dist/llm/errors.cjs +15 -0
  21. package/dist/llm/errors.d.ts +15 -8
  22. package/dist/llm/errors.d.ts.map +1 -1
  23. package/dist/llm/errors.js +15 -0
  24. package/dist/llm/executor/turn-executor.cjs +27 -0
  25. package/dist/llm/executor/turn-executor.d.ts.map +1 -1
  26. package/dist/llm/executor/turn-executor.js +27 -0
  27. package/dist/llm/registry.cjs +472 -28
  28. package/dist/llm/registry.d.ts +80 -4
  29. package/dist/llm/registry.d.ts.map +1 -1
  30. package/dist/llm/registry.js +464 -25
  31. package/dist/llm/resolver.cjs +13 -0
  32. package/dist/llm/resolver.d.ts.map +1 -1
  33. package/dist/llm/resolver.js +16 -1
  34. package/dist/llm/schemas.d.ts +59 -59
  35. package/dist/llm/services/factory.cjs +41 -25
  36. package/dist/llm/services/factory.d.ts +20 -1
  37. package/dist/llm/services/factory.d.ts.map +1 -1
  38. package/dist/llm/services/factory.js +42 -26
  39. package/dist/llm/services/test-utils.integration.cjs +5 -1
  40. package/dist/llm/services/test-utils.integration.d.ts.map +1 -1
  41. package/dist/llm/services/test-utils.integration.js +5 -1
  42. package/dist/llm/types.cjs +5 -2
  43. package/dist/llm/types.d.ts +1 -1
  44. package/dist/llm/types.d.ts.map +1 -1
  45. package/dist/llm/types.js +5 -2
  46. package/dist/logger/logger.cjs +6 -7
  47. package/dist/logger/logger.d.ts +1 -0
  48. package/dist/logger/logger.d.ts.map +1 -1
  49. package/dist/logger/logger.js +6 -7
  50. package/dist/logger/v2/dexto-logger.cjs +4 -0
  51. package/dist/logger/v2/dexto-logger.d.ts +3 -0
  52. package/dist/logger/v2/dexto-logger.d.ts.map +1 -1
  53. package/dist/logger/v2/dexto-logger.js +4 -0
  54. package/dist/logger/v2/types.d.ts +2 -0
  55. package/dist/logger/v2/types.d.ts.map +1 -1
  56. package/dist/mcp/error-codes.cjs +1 -0
  57. package/dist/mcp/error-codes.d.ts +1 -0
  58. package/dist/mcp/error-codes.d.ts.map +1 -1
  59. package/dist/mcp/error-codes.js +1 -0
  60. package/dist/mcp/errors.cjs +13 -0
  61. package/dist/mcp/errors.d.ts +7 -0
  62. package/dist/mcp/errors.d.ts.map +1 -1
  63. package/dist/mcp/errors.js +13 -0
  64. package/dist/mcp/manager.cjs +46 -4
  65. package/dist/mcp/manager.d.ts +10 -2
  66. package/dist/mcp/manager.d.ts.map +1 -1
  67. package/dist/mcp/manager.js +46 -4
  68. package/dist/mcp/mcp-client.cjs +89 -5
  69. package/dist/mcp/mcp-client.d.ts +5 -1
  70. package/dist/mcp/mcp-client.d.ts.map +1 -1
  71. package/dist/mcp/mcp-client.js +89 -5
  72. package/dist/mcp/schemas.cjs +6 -1
  73. package/dist/mcp/schemas.d.ts +1 -1
  74. package/dist/mcp/schemas.d.ts.map +1 -1
  75. package/dist/mcp/schemas.js +6 -1
  76. package/dist/mcp/types.d.ts +5 -0
  77. package/dist/mcp/types.d.ts.map +1 -1
  78. package/dist/prompts/index.d.ts +1 -1
  79. package/dist/prompts/index.d.ts.map +1 -1
  80. package/dist/prompts/prompt-manager.cjs +90 -4
  81. package/dist/prompts/prompt-manager.d.ts +16 -6
  82. package/dist/prompts/prompt-manager.d.ts.map +1 -1
  83. package/dist/prompts/prompt-manager.js +90 -4
  84. package/dist/prompts/providers/config-prompt-provider.cjs +104 -10
  85. package/dist/prompts/providers/config-prompt-provider.d.ts.map +1 -1
  86. package/dist/prompts/providers/config-prompt-provider.js +105 -11
  87. package/dist/prompts/providers/custom-prompt-provider.cjs +1 -0
  88. package/dist/prompts/providers/custom-prompt-provider.d.ts.map +1 -1
  89. package/dist/prompts/providers/custom-prompt-provider.js +1 -0
  90. package/dist/prompts/providers/mcp-prompt-provider.cjs +1 -0
  91. package/dist/prompts/providers/mcp-prompt-provider.d.ts.map +1 -1
  92. package/dist/prompts/providers/mcp-prompt-provider.js +1 -0
  93. package/dist/prompts/schemas.cjs +28 -2
  94. package/dist/prompts/schemas.d.ts +130 -0
  95. package/dist/prompts/schemas.d.ts.map +1 -1
  96. package/dist/prompts/schemas.js +28 -2
  97. package/dist/prompts/types.d.ts +55 -3
  98. package/dist/prompts/types.d.ts.map +1 -1
  99. package/dist/session/chat-session.d.ts +1 -1
  100. package/dist/session/chat-session.d.ts.map +1 -1
  101. package/dist/session/index.d.ts +1 -1
  102. package/dist/session/index.d.ts.map +1 -1
  103. package/dist/session/session-manager.cjs +47 -3
  104. package/dist/session/session-manager.d.ts +10 -0
  105. package/dist/session/session-manager.d.ts.map +1 -1
  106. package/dist/session/session-manager.js +47 -3
  107. package/dist/systemPrompt/contributors.cjs +42 -0
  108. package/dist/systemPrompt/contributors.d.ts +13 -0
  109. package/dist/systemPrompt/contributors.d.ts.map +1 -1
  110. package/dist/systemPrompt/contributors.js +41 -0
  111. package/dist/tools/errors.cjs +7 -3
  112. package/dist/tools/errors.d.ts +5 -1
  113. package/dist/tools/errors.d.ts.map +1 -1
  114. package/dist/tools/errors.js +7 -3
  115. package/dist/tools/internal-tools/constants.cjs +2 -1
  116. package/dist/tools/internal-tools/constants.d.ts +1 -1
  117. package/dist/tools/internal-tools/constants.d.ts.map +1 -1
  118. package/dist/tools/internal-tools/constants.js +2 -1
  119. package/dist/tools/internal-tools/implementations/invoke-skill-tool.cjs +140 -0
  120. package/dist/tools/internal-tools/implementations/invoke-skill-tool.d.ts +24 -0
  121. package/dist/tools/internal-tools/implementations/invoke-skill-tool.d.ts.map +1 -0
  122. package/dist/tools/internal-tools/implementations/invoke-skill-tool.js +117 -0
  123. package/dist/tools/internal-tools/provider.cjs +15 -0
  124. package/dist/tools/internal-tools/provider.d.ts +12 -0
  125. package/dist/tools/internal-tools/provider.d.ts.map +1 -1
  126. package/dist/tools/internal-tools/provider.js +15 -0
  127. package/dist/tools/internal-tools/registry.cjs +6 -0
  128. package/dist/tools/internal-tools/registry.d.ts +34 -0
  129. package/dist/tools/internal-tools/registry.d.ts.map +1 -1
  130. package/dist/tools/internal-tools/registry.js +6 -0
  131. package/dist/tools/schemas.cjs +2 -2
  132. package/dist/tools/schemas.d.ts +1 -1
  133. package/dist/tools/schemas.d.ts.map +1 -1
  134. package/dist/tools/schemas.js +2 -2
  135. package/dist/tools/tool-manager.cjs +230 -79
  136. package/dist/tools/tool-manager.d.ts +89 -8
  137. package/dist/tools/tool-manager.d.ts.map +1 -1
  138. package/dist/tools/tool-manager.js +231 -80
  139. package/dist/utils/api-key-resolver.cjs +5 -2
  140. package/dist/utils/api-key-resolver.d.ts.map +1 -1
  141. package/dist/utils/api-key-resolver.js +5 -2
  142. package/dist/utils/service-initializer.cjs +8 -2
  143. package/dist/utils/service-initializer.d.ts +5 -1
  144. package/dist/utils/service-initializer.d.ts.map +1 -1
  145. package/dist/utils/service-initializer.js +8 -2
  146. package/package.json +1 -1
@@ -34,6 +34,13 @@ export interface ModelInfo {
34
34
  supportedFileTypes: SupportedFileType[];
35
35
  displayName?: string;
36
36
  pricing?: ModelPricing;
37
+ /**
38
+ * OpenRouter model ID for use with gateway providers (dexto, openrouter).
39
+ * Only needed when the OpenRouter ID differs from the native model ID.
40
+ * For most OpenAI/Google/xAI models, the ID is just `{provider}/{name}`.
41
+ * For Anthropic, the IDs differ significantly (e.g., `claude-haiku-4-5-20251001` → `anthropic/claude-haiku-4.5`).
42
+ */
43
+ openrouterId?: string;
37
44
  }
38
45
  export declare const MIME_TYPE_TO_FILE_TYPE: Record<string, SupportedFileType>;
39
46
  export declare function getAllowedMimeTypes(): string[];
@@ -42,6 +49,19 @@ export interface ProviderInfo {
42
49
  baseURLSupport: 'none' | 'optional' | 'required';
43
50
  supportedFileTypes: SupportedFileType[];
44
51
  supportsCustomModels?: boolean;
52
+ /**
53
+ * When true, this provider can access all models from all other providers in the registry.
54
+ * Used for gateway providers like 'dexto' that route to multiple upstream providers.
55
+ * Model names are transformed to the gateway's format (e.g., 'gpt-5-mini' → 'openai/gpt-5-mini').
56
+ */
57
+ supportsAllRegistryModels?: boolean;
58
+ /**
59
+ * OpenRouter prefix for this provider's models (e.g., 'openai', 'anthropic', 'x-ai').
60
+ * Used by gateway providers to parse and route prefixed model names.
61
+ * - If set: provider's models can be accessed via gateway as `{prefix}/{model}`
62
+ * - If undefined: provider is not accessible via gateways (local, gateway providers themselves)
63
+ */
64
+ openrouterPrefix?: string;
45
65
  }
46
66
  /** Fallback when we cannot determine the model's input-token limit */
47
67
  export declare const DEFAULT_MAX_INPUT_TOKENS = 128000;
@@ -81,6 +101,7 @@ export declare function getSupportedProviders(): LLMProvider[];
81
101
  export declare function getSupportedModels(provider: LLMProvider): string[];
82
102
  /**
83
103
  * Retrieves the maximum input token limit for a given provider and model from the registry.
104
+ * For gateway providers with supportsAllRegistryModels, looks up the model in its original provider.
84
105
  * @param provider The name of the provider (e.g., 'openai', 'anthropic', 'google').
85
106
  * @param model The specific model name.
86
107
  * @param logger Optional logger instance for logging. Optional because it's used in zod schema
@@ -134,6 +155,60 @@ export declare function acceptsAnyModel(provider: LLMProvider): boolean;
134
155
  * @returns True if the provider supports custom models, false otherwise.
135
156
  */
136
157
  export declare function supportsCustomModels(provider: LLMProvider): boolean;
158
+ /**
159
+ * Checks if a provider supports all registry models from all other providers.
160
+ * @param provider The name of the provider.
161
+ * @returns True if the provider supports all registry models, false otherwise.
162
+ */
163
+ export declare function hasAllRegistryModelsSupport(provider: LLMProvider): boolean;
164
+ /**
165
+ * Gets all models available for a provider, including inherited models
166
+ * when supportsAllRegistryModels is true.
167
+ * @param provider The name of the provider.
168
+ * @returns Array of ModelInfo with additional originalProvider field for inherited models.
169
+ */
170
+ export declare function getAllModelsForProvider(provider: LLMProvider): Array<ModelInfo & {
171
+ originalProvider?: LLMProvider;
172
+ }>;
173
+ /**
174
+ * Transforms a model name to the format required by a gateway provider (dexto/openrouter).
175
+ * Uses the explicit openrouterId mapping from the registry - no fallback guessing.
176
+ *
177
+ * Transformation is needed when:
178
+ * - Target is a gateway (dexto/openrouter)
179
+ * - Original provider is a "native" provider (anthropic, openai, google, etc.)
180
+ *
181
+ * No transformation needed when:
182
+ * - Target is not a gateway
183
+ * - Original provider is already a gateway (dexto/openrouter) - model is already in correct format
184
+ * - Model already contains a slash (already in OpenRouter format)
185
+ * - Provider models have vendor prefixes (groq's meta-llama/)
186
+ *
187
+ * @param model The model name to transform.
188
+ * @param originalProvider The provider the model originally belongs to.
189
+ * @param targetProvider The provider to transform the model name for.
190
+ * @returns The transformed model name.
191
+ * @throws {LLMError} If model requires transformation but has no openrouterId mapping.
192
+ */
193
+ export declare function transformModelNameForProvider(model: string, originalProvider: LLMProvider, targetProvider: LLMProvider): string;
194
+ /**
195
+ * Finds the original provider for a model when accessed through a gateway provider.
196
+ * This is needed to look up model metadata (pricing, file types, etc.) from the original registry.
197
+ * @param model The model name (may include provider prefix like 'openai/gpt-5-mini').
198
+ * @param gatewayProvider The gateway provider being used (e.g., 'dexto').
199
+ * @returns The original provider and normalized model name, or null if not found.
200
+ */
201
+ export declare function resolveModelOrigin(model: string, gatewayProvider: LLMProvider): {
202
+ provider: LLMProvider;
203
+ model: string;
204
+ } | null;
205
+ /**
206
+ * Checks if a model is valid for a provider, considering supportsAllRegistryModels.
207
+ * @param provider The provider to check.
208
+ * @param model The model name to validate.
209
+ * @returns True if the model is valid for the provider.
210
+ */
211
+ export declare function isModelValidForProvider(provider: LLMProvider, model: string): boolean;
137
212
  /**
138
213
  * Checks if a provider requires an API key.
139
214
  * Returns false for:
@@ -147,6 +222,7 @@ export declare function supportsCustomModels(provider: LLMProvider): boolean;
147
222
  export declare function requiresApiKey(provider: LLMProvider): boolean;
148
223
  /**
149
224
  * Gets the supported file types for a specific model.
225
+ * For gateway providers with supportsAllRegistryModels, looks up the model in its original provider.
150
226
  * @param provider The name of the provider.
151
227
  * @param model The name of the model.
152
228
  * @returns Array of supported file types for the model.
@@ -190,11 +266,10 @@ export declare function validateModelFileSupport(provider: LLMProvider, model: s
190
266
  export declare function getEffectiveMaxInputTokens(config: LLMConfig, logger: IDextoLogger): number;
191
267
  /**
192
268
  * Gets the pricing information for a specific model.
269
+ * For gateway providers with supportsAllRegistryModels, looks up the model in its original provider.
193
270
  *
194
- * TODO: When adding gateway providers (openrouter, vercel-ai, dexto, etc.),
195
- * each gateway will be its own provider with its own pricing in the registry.
196
- * The gateway's pricing includes any markup, so no separate "gateway multiplier" logic is needed.
197
- * Example: provider: 'dexto' would have models with Dexto's pricing (base + markup baked in).
271
+ * Note: This returns the original provider's pricing. Gateway providers may have markup
272
+ * that should be applied separately if needed.
198
273
  *
199
274
  * @param provider The name of the provider.
200
275
  * @param model The name of the model.
@@ -203,6 +278,7 @@ export declare function getEffectiveMaxInputTokens(config: LLMConfig, logger: ID
203
278
  export declare function getModelPricing(provider: LLMProvider, model: string): ModelPricing | undefined;
204
279
  /**
205
280
  * Gets the display name for a model, falling back to the model ID if not found.
281
+ * For gateway providers with supportsAllRegistryModels, looks up the model in its original provider.
206
282
  */
207
283
  export declare function getModelDisplayName(model: string, provider?: LLMProvider): string;
208
284
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/llm/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/llm/registry.ts"],"names":[],"mappings":"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"}