@dexto/core 1.8.0 → 1.8.2

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 (166) hide show
  1. package/dist/agent/DextoAgent.cjs +10 -16
  2. package/dist/agent/DextoAgent.d.ts +2 -2
  3. package/dist/agent/DextoAgent.d.ts.map +1 -1
  4. package/dist/agent/DextoAgent.js +8 -5
  5. package/dist/agent/types.d.ts +1 -1
  6. package/dist/agent/types.d.ts.map +1 -1
  7. package/dist/context/compaction/overflow.d.ts +1 -1
  8. package/dist/context/compaction/overflow.d.ts.map +1 -1
  9. package/dist/context/manager.cjs +8 -8
  10. package/dist/context/manager.d.ts +1 -1
  11. package/dist/context/manager.d.ts.map +1 -1
  12. package/dist/context/manager.js +1 -1
  13. package/dist/context/types.d.ts +1 -1
  14. package/dist/context/types.d.ts.map +1 -1
  15. package/dist/context/utils.cjs +3 -3
  16. package/dist/context/utils.d.ts +1 -1
  17. package/dist/context/utils.d.ts.map +1 -1
  18. package/dist/context/utils.js +1 -1
  19. package/dist/events/index.d.ts +2 -2
  20. package/dist/events/index.d.ts.map +1 -1
  21. package/dist/index.browser.cjs +9 -9
  22. package/dist/index.browser.d.ts +4 -4
  23. package/dist/index.browser.d.ts.map +1 -1
  24. package/dist/index.browser.js +1 -1
  25. package/dist/llm/auth/index.cjs +16 -0
  26. package/dist/llm/auth/index.d.ts +2 -0
  27. package/dist/llm/auth/index.d.ts.map +1 -0
  28. package/dist/llm/auth/index.js +0 -0
  29. package/dist/llm/auth/types.cjs +16 -0
  30. package/dist/llm/auth/types.d.ts +25 -0
  31. package/dist/llm/auth/types.d.ts.map +1 -0
  32. package/dist/llm/auth/types.js +0 -0
  33. package/dist/llm/curation-config.cjs +3 -3
  34. package/dist/llm/curation-config.d.ts +1 -1
  35. package/dist/llm/curation-config.js +3 -3
  36. package/dist/llm/curation.cjs +2 -2
  37. package/dist/llm/curation.d.ts +2 -2
  38. package/dist/llm/curation.d.ts.map +1 -1
  39. package/dist/llm/curation.js +1 -1
  40. package/dist/llm/errors.cjs +3 -3
  41. package/dist/llm/errors.d.ts +1 -1
  42. package/dist/llm/errors.d.ts.map +1 -1
  43. package/dist/llm/errors.js +1 -1
  44. package/dist/llm/executor/provider-options.cjs +22 -25
  45. package/dist/llm/executor/provider-options.d.ts +1 -1
  46. package/dist/llm/executor/provider-options.d.ts.map +1 -1
  47. package/dist/llm/executor/provider-options.js +17 -16
  48. package/dist/llm/executor/stream-processor.d.ts +1 -1
  49. package/dist/llm/executor/stream-processor.d.ts.map +1 -1
  50. package/dist/llm/executor/turn-executor.d.ts +1 -1
  51. package/dist/llm/executor/turn-executor.d.ts.map +1 -1
  52. package/dist/llm/executor/types.d.ts +1 -1
  53. package/dist/llm/executor/types.d.ts.map +1 -1
  54. package/dist/llm/formatters/vercel.cjs +2 -2
  55. package/dist/llm/formatters/vercel.d.ts +1 -1
  56. package/dist/llm/formatters/vercel.d.ts.map +1 -1
  57. package/dist/llm/index.cjs +0 -4
  58. package/dist/llm/index.d.ts +1 -2
  59. package/dist/llm/index.d.ts.map +1 -1
  60. package/dist/llm/index.js +0 -2
  61. package/dist/llm/registry/auto-update.cjs +5 -5
  62. package/dist/llm/registry/auto-update.d.ts.map +1 -1
  63. package/dist/llm/registry/auto-update.js +2 -2
  64. package/dist/llm/registry/index.cjs +96 -789
  65. package/dist/llm/registry/index.d.ts +4 -323
  66. package/dist/llm/registry/index.d.ts.map +1 -1
  67. package/dist/llm/registry/index.js +99 -762
  68. package/dist/llm/registry/sync.d.ts +2 -2
  69. package/dist/llm/registry/sync.d.ts.map +1 -1
  70. package/dist/llm/resolver.cjs +7 -6
  71. package/dist/llm/resolver.d.ts +1 -1
  72. package/dist/llm/resolver.js +4 -4
  73. package/dist/llm/schemas.cjs +14 -14
  74. package/dist/llm/schemas.d.ts +1 -1
  75. package/dist/llm/schemas.d.ts.map +1 -1
  76. package/dist/llm/schemas.js +5 -4
  77. package/dist/llm/services/factory.cjs +124 -33
  78. package/dist/llm/services/factory.d.ts.map +1 -1
  79. package/dist/llm/services/factory.js +128 -35
  80. package/dist/llm/services/types.d.ts +8 -1
  81. package/dist/llm/services/types.d.ts.map +1 -1
  82. package/dist/llm/usage-metadata.cjs +3 -3
  83. package/dist/llm/usage-metadata.d.ts +2 -2
  84. package/dist/llm/usage-metadata.d.ts.map +1 -1
  85. package/dist/llm/usage-metadata.js +1 -4
  86. package/dist/llm/usage-summary.d.ts +1 -1
  87. package/dist/llm/validation.cjs +4 -4
  88. package/dist/llm/validation.d.ts +1 -1
  89. package/dist/llm/validation.js +1 -1
  90. package/dist/session/chat-session.cjs +2 -12
  91. package/dist/session/chat-session.d.ts +2 -0
  92. package/dist/session/chat-session.d.ts.map +1 -1
  93. package/dist/session/chat-session.js +2 -13
  94. package/dist/session/session-manager.cjs +4 -1
  95. package/dist/session/session-manager.d.ts +5 -1
  96. package/dist/session/session-manager.d.ts.map +1 -1
  97. package/dist/session/session-manager.js +4 -1
  98. package/dist/utils/api-key-resolver.d.ts +1 -1
  99. package/dist/utils/api-key-resolver.d.ts.map +1 -1
  100. package/dist/utils/result.cjs +1 -1
  101. package/dist/utils/result.js +1 -1
  102. package/dist/utils/service-initializer.cjs +3 -0
  103. package/dist/utils/service-initializer.d.ts +2 -0
  104. package/dist/utils/service-initializer.d.ts.map +1 -1
  105. package/dist/utils/service-initializer.js +3 -0
  106. package/package.json +3 -2
  107. package/dist/llm/reasoning/anthropic-betas.cjs +0 -31
  108. package/dist/llm/reasoning/anthropic-betas.d.ts +0 -3
  109. package/dist/llm/reasoning/anthropic-betas.d.ts.map +0 -1
  110. package/dist/llm/reasoning/anthropic-betas.js +0 -7
  111. package/dist/llm/reasoning/anthropic-thinking.cjs +0 -79
  112. package/dist/llm/reasoning/anthropic-thinking.d.ts +0 -15
  113. package/dist/llm/reasoning/anthropic-thinking.d.ts.map +0 -1
  114. package/dist/llm/reasoning/anthropic-thinking.js +0 -52
  115. package/dist/llm/reasoning/openai-reasoning-effort.cjs +0 -86
  116. package/dist/llm/reasoning/openai-reasoning-effort.d.ts +0 -5
  117. package/dist/llm/reasoning/openai-reasoning-effort.d.ts.map +0 -1
  118. package/dist/llm/reasoning/openai-reasoning-effort.js +0 -61
  119. package/dist/llm/reasoning/profile.cjs +0 -113
  120. package/dist/llm/reasoning/profile.d.ts +0 -13
  121. package/dist/llm/reasoning/profile.d.ts.map +0 -1
  122. package/dist/llm/reasoning/profile.js +0 -92
  123. package/dist/llm/reasoning/profiles/anthropic.cjs +0 -61
  124. package/dist/llm/reasoning/profiles/anthropic.d.ts +0 -8
  125. package/dist/llm/reasoning/profiles/anthropic.d.ts.map +0 -1
  126. package/dist/llm/reasoning/profiles/anthropic.js +0 -45
  127. package/dist/llm/reasoning/profiles/bedrock.cjs +0 -54
  128. package/dist/llm/reasoning/profiles/bedrock.d.ts +0 -3
  129. package/dist/llm/reasoning/profiles/bedrock.d.ts.map +0 -1
  130. package/dist/llm/reasoning/profiles/bedrock.js +0 -36
  131. package/dist/llm/reasoning/profiles/google.cjs +0 -45
  132. package/dist/llm/reasoning/profiles/google.d.ts +0 -9
  133. package/dist/llm/reasoning/profiles/google.d.ts.map +0 -1
  134. package/dist/llm/reasoning/profiles/google.js +0 -21
  135. package/dist/llm/reasoning/profiles/openai-compatible.cjs +0 -39
  136. package/dist/llm/reasoning/profiles/openai-compatible.d.ts +0 -3
  137. package/dist/llm/reasoning/profiles/openai-compatible.d.ts.map +0 -1
  138. package/dist/llm/reasoning/profiles/openai-compatible.js +0 -16
  139. package/dist/llm/reasoning/profiles/openai.cjs +0 -41
  140. package/dist/llm/reasoning/profiles/openai.d.ts +0 -3
  141. package/dist/llm/reasoning/profiles/openai.d.ts.map +0 -1
  142. package/dist/llm/reasoning/profiles/openai.js +0 -18
  143. package/dist/llm/reasoning/profiles/openrouter.cjs +0 -83
  144. package/dist/llm/reasoning/profiles/openrouter.d.ts +0 -10
  145. package/dist/llm/reasoning/profiles/openrouter.d.ts.map +0 -1
  146. package/dist/llm/reasoning/profiles/openrouter.js +0 -59
  147. package/dist/llm/reasoning/profiles/shared.cjs +0 -80
  148. package/dist/llm/reasoning/profiles/shared.d.ts +0 -25
  149. package/dist/llm/reasoning/profiles/shared.d.ts.map +0 -1
  150. package/dist/llm/reasoning/profiles/shared.js +0 -53
  151. package/dist/llm/reasoning/profiles/vertex.cjs +0 -46
  152. package/dist/llm/reasoning/profiles/vertex.d.ts +0 -3
  153. package/dist/llm/reasoning/profiles/vertex.d.ts.map +0 -1
  154. package/dist/llm/reasoning/profiles/vertex.js +0 -23
  155. package/dist/llm/registry/models.generated.cjs +0 -10741
  156. package/dist/llm/registry/models.generated.d.ts +0 -2945
  157. package/dist/llm/registry/models.generated.d.ts.map +0 -1
  158. package/dist/llm/registry/models.generated.js +0 -10717
  159. package/dist/llm/registry/models.manual.cjs +0 -44
  160. package/dist/llm/registry/models.manual.d.ts +0 -22
  161. package/dist/llm/registry/models.manual.d.ts.map +0 -1
  162. package/dist/llm/registry/models.manual.js +0 -21
  163. package/dist/llm/types.cjs +0 -55
  164. package/dist/llm/types.d.ts +0 -39
  165. package/dist/llm/types.d.ts.map +0 -1
  166. package/dist/llm/types.js +0 -30
@@ -13,16 +13,16 @@ import { createOpenRouter } from "@openrouter/ai-sdk-provider";
13
13
  import { VercelLLMService } from "./vercel.js";
14
14
  import { createCohere } from "@ai-sdk/cohere";
15
15
  import { createLocalLanguageModel } from "../providers/local/ai-sdk-adapter.js";
16
- import { requiresApiKey } from "../registry/index.js";
16
+ import {
17
+ ANTHROPIC_BETA_HEADER,
18
+ ANTHROPIC_INTERLEAVED_THINKING_BETA,
19
+ requiresApiKey,
20
+ supportsAnthropicInterleavedThinking
21
+ } from "@dexto/llm";
17
22
  import { getPrimaryApiKeyEnvVar, resolveApiKeyForProvider } from "../../utils/api-key-resolver.js";
18
23
  import { createCodexLanguageModel } from "../providers/codex-app-server.js";
19
24
  import { isCodexBaseURL } from "../providers/codex-base-url.js";
20
25
  import { findDextoProjectRoot } from "../../utils/execution-context.js";
21
- import {
22
- ANTHROPIC_BETA_HEADER,
23
- ANTHROPIC_INTERLEAVED_THINKING_BETA
24
- } from "../reasoning/anthropic-betas.js";
25
- import { supportsAnthropicInterleavedThinking } from "../reasoning/anthropic-thinking.js";
26
26
  function isLanguageModel(value) {
27
27
  if (!value || typeof value !== "object") return false;
28
28
  const candidate = value;
@@ -57,34 +57,95 @@ function resolveProviderWorkingDirectory(explicitCwd) {
57
57
  }
58
58
  return findDextoProjectRoot(process.cwd()) ?? process.cwd();
59
59
  }
60
+ function mergeHeaders(base, override) {
61
+ const merged = {
62
+ ...base ?? {},
63
+ ...override ?? {}
64
+ };
65
+ return Object.keys(merged).length > 0 ? merged : void 0;
66
+ }
67
+ function logRuntimeAuthResolution(input) {
68
+ const {
69
+ context,
70
+ provider,
71
+ model,
72
+ configApiKey,
73
+ resolvedApiKey,
74
+ runtimeAuth,
75
+ effectiveBaseURL
76
+ } = input;
77
+ if (!context?.logger) {
78
+ return;
79
+ }
80
+ const auth = runtimeAuth?.auth ?? (configApiKey?.trim() ? { source: "config_api_key" } : resolvedApiKey?.trim() ? { source: "environment", envVar: getPrimaryApiKeyEnvVar(provider) } : { source: "none" });
81
+ context.logger.info("LLM runtime auth resolved", {
82
+ provider,
83
+ model,
84
+ auth,
85
+ runtime: {
86
+ hasRuntimeFetch: Boolean(runtimeAuth?.fetch),
87
+ hasRuntimeHeaders: Boolean(runtimeAuth?.headers),
88
+ hasRuntimeBaseURL: Boolean(runtimeAuth?.baseURL),
89
+ hasEffectiveBaseURL: Boolean(effectiveBaseURL)
90
+ }
91
+ });
92
+ }
60
93
  function createVercelModel(llmConfig, context) {
61
94
  const { provider, model, baseURL } = llmConfig;
62
- const apiKey = llmConfig.apiKey || resolveApiKeyForProvider(provider);
63
- if (requiresApiKey(provider) && !apiKey?.trim()) {
95
+ const runtimeAuth = context?.authResolver?.resolveRuntimeAuth({
96
+ provider,
97
+ model,
98
+ apiKey: llmConfig.apiKey,
99
+ baseURL
100
+ }) ?? null;
101
+ const resolvedProviderApiKey = resolveApiKeyForProvider(provider);
102
+ const apiKey = runtimeAuth?.apiKey || llmConfig.apiKey || resolvedProviderApiKey;
103
+ const runtimeBaseURL = runtimeAuth?.baseURL;
104
+ const runtimeHeaders = runtimeAuth?.headers;
105
+ const runtimeFetch = runtimeAuth?.fetch;
106
+ const effectiveBaseURL = runtimeBaseURL?.replace(/\/$/, "") || baseURL?.replace(/\/$/, "");
107
+ const usesCodexRuntimeAuth = runtimeBaseURL ? isCodexBaseURL(runtimeBaseURL) : false;
108
+ logRuntimeAuthResolution({
109
+ context,
110
+ provider,
111
+ model,
112
+ configApiKey: llmConfig.apiKey,
113
+ resolvedApiKey: resolvedProviderApiKey,
114
+ runtimeAuth,
115
+ effectiveBaseURL
116
+ });
117
+ if (requiresApiKey(provider) && !usesCodexRuntimeAuth && !apiKey?.trim()) {
64
118
  const envVar = getPrimaryApiKeyEnvVar(provider);
65
119
  throw LLMError.apiKeyMissing(provider, envVar);
66
120
  }
67
121
  switch (provider.toLowerCase()) {
68
122
  case "openai": {
69
- return createOpenAI({ apiKey: apiKey ?? "" }).responses(model);
70
- }
71
- case "openai-compatible": {
72
- const compatibleBaseURL = baseURL?.replace(/\/$/, "") || process.env.OPENAI_BASE_URL?.replace(/\/$/, "");
73
- if (!compatibleBaseURL) {
74
- throw LLMError.baseUrlMissing("openai-compatible");
75
- }
76
- if (isCodexBaseURL(compatibleBaseURL)) {
123
+ if (usesCodexRuntimeAuth && runtimeBaseURL) {
77
124
  return createCodexLanguageModel({
78
125
  modelId: model,
79
- baseURL: compatibleBaseURL,
126
+ baseURL: runtimeBaseURL,
80
127
  cwd: resolveProviderWorkingDirectory(context?.cwd),
81
128
  ...context?.onCodexRateLimitStatus ? { onRateLimitStatus: context.onCodexRateLimitStatus } : {}
82
129
  });
83
130
  }
131
+ return createOpenAI({
132
+ apiKey: apiKey ?? "",
133
+ ...effectiveBaseURL ? { baseURL: effectiveBaseURL } : {},
134
+ ...runtimeHeaders ? { headers: runtimeHeaders } : {},
135
+ ...runtimeFetch ? { fetch: runtimeFetch } : {}
136
+ }).responses(model);
137
+ }
138
+ case "openai-compatible": {
139
+ const compatibleBaseURL = effectiveBaseURL || process.env.OPENAI_BASE_URL?.replace(/\/$/, "");
140
+ if (!compatibleBaseURL) {
141
+ throw LLMError.baseUrlMissing("openai-compatible");
142
+ }
84
143
  const provider2 = createOpenAICompatible({
85
144
  name: "openaiCompatible",
86
145
  baseURL: compatibleBaseURL,
87
- ...apiKey?.trim() ? { apiKey } : {}
146
+ ...apiKey?.trim() ? { apiKey } : {},
147
+ ...runtimeHeaders ? { headers: runtimeHeaders } : {},
148
+ ...runtimeFetch ? { fetch: runtimeFetch } : {}
88
149
  });
89
150
  return provider2.chatModel(model);
90
151
  }
@@ -106,26 +167,47 @@ function createVercelModel(llmConfig, context) {
106
167
  return chatModel;
107
168
  }
108
169
  case "minimax": {
109
- const minimaxBaseURL = baseURL || "https://api.minimax.chat/v1";
110
- return createOpenAI({ apiKey: apiKey ?? "", baseURL: minimaxBaseURL }).chat(model);
170
+ const minimaxBaseURL = effectiveBaseURL || "https://api.minimax.chat/v1";
171
+ return createOpenAI({
172
+ apiKey: apiKey ?? "",
173
+ baseURL: minimaxBaseURL,
174
+ ...runtimeHeaders ? { headers: runtimeHeaders } : {},
175
+ ...runtimeFetch ? { fetch: runtimeFetch } : {}
176
+ }).chat(model);
111
177
  }
112
178
  case "glm": {
113
- const glmBaseURL = baseURL || "https://open.bigmodel.cn/api/paas/v4";
114
- return createOpenAI({ apiKey: apiKey ?? "", baseURL: glmBaseURL }).chat(model);
179
+ const glmBaseURL = effectiveBaseURL || "https://open.bigmodel.cn/api/paas/v4";
180
+ return createOpenAI({
181
+ apiKey: apiKey ?? "",
182
+ baseURL: glmBaseURL,
183
+ ...runtimeHeaders ? { headers: runtimeHeaders } : {},
184
+ ...runtimeFetch ? { fetch: runtimeFetch } : {}
185
+ }).chat(model);
115
186
  }
116
187
  case "litellm": {
117
- if (!baseURL) {
188
+ if (!effectiveBaseURL) {
118
189
  throw LLMError.baseUrlMissing("litellm");
119
190
  }
120
- return createOpenAI({ apiKey: apiKey ?? "", baseURL }).chat(model);
191
+ return createOpenAI({
192
+ apiKey: apiKey ?? "",
193
+ baseURL: effectiveBaseURL,
194
+ ...runtimeHeaders ? { headers: runtimeHeaders } : {},
195
+ ...runtimeFetch ? { fetch: runtimeFetch } : {}
196
+ }).chat(model);
121
197
  }
122
198
  case "glama": {
123
- const glamaBaseURL = "https://glama.ai/api/gateway/openai/v1";
124
- return createOpenAI({ apiKey: apiKey ?? "", baseURL: glamaBaseURL }).chat(model);
199
+ const glamaBaseURL = effectiveBaseURL || "https://glama.ai/api/gateway/openai/v1";
200
+ return createOpenAI({
201
+ apiKey: apiKey ?? "",
202
+ baseURL: glamaBaseURL,
203
+ ...runtimeHeaders ? { headers: runtimeHeaders } : {},
204
+ ...runtimeFetch ? { fetch: runtimeFetch } : {}
205
+ }).chat(model);
125
206
  }
126
207
  case "dexto-nova": {
127
208
  const dextoBaseURL = resolveDextoGatewayBaseURL(baseURL);
128
209
  const headers = {
210
+ ...runtimeHeaders ?? {},
129
211
  [DEXTO_GATEWAY_HEADERS.CLIENT_SOURCE]: context?.clientSource ?? "cli"
130
212
  };
131
213
  if (context?.sessionId) {
@@ -134,14 +216,13 @@ function createVercelModel(llmConfig, context) {
134
216
  if (process.env.DEXTO_CLI_VERSION) {
135
217
  headers[DEXTO_GATEWAY_HEADERS.CLIENT_VERSION] = process.env.DEXTO_CLI_VERSION;
136
218
  }
137
- const provider2 = createOpenRouter({
138
- apiKey: apiKey ?? "",
219
+ const provider2 = createOpenAICompatible({
220
+ name: "dexto-nova",
139
221
  baseURL: dextoBaseURL,
140
222
  headers,
141
- // This is an OpenRouter-compatible gateway; keep strict mode to enable OR features.
142
- compatibility: "strict"
223
+ ...apiKey?.trim() ? { apiKey } : {}
143
224
  });
144
- const chatModel = provider2.chat(model);
225
+ const chatModel = provider2.chatModel(model);
145
226
  if (!isLanguageModel(chatModel)) {
146
227
  throw LLMError.generationFailed(
147
228
  "Dexto gateway provider returned an invalid language model instance",
@@ -190,10 +271,15 @@ function createVercelModel(llmConfig, context) {
190
271
  return createAmazonBedrock({ region })(modelId);
191
272
  }
192
273
  case "anthropic": {
193
- const headers = supportsAnthropicInterleavedThinking(model) ? { [ANTHROPIC_BETA_HEADER]: ANTHROPIC_INTERLEAVED_THINKING_BETA } : void 0;
274
+ const headers = mergeHeaders(
275
+ supportsAnthropicInterleavedThinking(model) ? { [ANTHROPIC_BETA_HEADER]: ANTHROPIC_INTERLEAVED_THINKING_BETA } : void 0,
276
+ runtimeHeaders
277
+ );
194
278
  return createAnthropic({
195
279
  apiKey: apiKey ?? "",
196
- ...headers ? { headers } : {}
280
+ ...effectiveBaseURL ? { baseURL: effectiveBaseURL } : {},
281
+ ...headers ? { headers } : {},
282
+ ...runtimeFetch ? { fetch: runtimeFetch } : {}
197
283
  })(model);
198
284
  }
199
285
  case "google":
@@ -205,8 +291,13 @@ function createVercelModel(llmConfig, context) {
205
291
  case "cohere":
206
292
  return createCohere({ apiKey: apiKey ?? "" })(model);
207
293
  case "ollama": {
208
- const ollamaBaseURL = baseURL || "http://localhost:11434/v1";
209
- return createOpenAI({ apiKey: "ollama", baseURL: ollamaBaseURL }).chat(model);
294
+ const ollamaBaseURL = effectiveBaseURL || "http://localhost:11434/v1";
295
+ return createOpenAI({
296
+ apiKey: apiKey ?? "ollama",
297
+ baseURL: ollamaBaseURL,
298
+ ...runtimeHeaders ? { headers: runtimeHeaders } : {},
299
+ ...runtimeFetch ? { fetch: runtimeFetch } : {}
300
+ }).chat(model);
210
301
  }
211
302
  case "local": {
212
303
  return createLocalLanguageModel({
@@ -222,6 +313,8 @@ function createLLMService(config, toolManager, systemPromptManager, conversation
222
313
  const providerContext = {
223
314
  sessionId,
224
315
  ...options.cwd !== void 0 ? { cwd: options.cwd } : {},
316
+ authResolver: options.authResolver ?? null,
317
+ logger,
225
318
  onCodexRateLimitStatus: (snapshot) => {
226
319
  sessionEventBus.emit("llm:rate-limit-status", {
227
320
  provider: config.provider,
@@ -2,7 +2,9 @@ import type { CompactionStrategy } from '../../context/compaction/types.js';
2
2
  import type { LanguageModel } from 'ai';
3
3
  import type { CodexRateLimitSnapshot } from '../providers/codex-app-server.js';
4
4
  import type { ValidatedLLMConfig } from '../schemas.js';
5
- import type { LLMProvider } from '../types.js';
5
+ import type { LlmAuthResolver } from '../auth/types.js';
6
+ import type { Logger } from '../../logger/v2/types.js';
7
+ import type { LLMProvider } from '@dexto/llm';
6
8
  import type { MessageQueueService } from '../../session/message-queue.js';
7
9
  import type { AgentRunContext } from '../../runtime/run-context.js';
8
10
  import type { TurnDriverState } from '../executor/turn-executor.js';
@@ -19,6 +21,7 @@ export interface CreateLLMServiceOptions {
19
21
  usageScopeId?: string | undefined;
20
22
  compactionStrategy?: CompactionStrategy | null | undefined;
21
23
  cwd?: string | undefined;
24
+ authResolver?: LlmAuthResolver | null | undefined;
22
25
  steerQueue: MessageQueueService;
23
26
  followUpQueue: MessageQueueService;
24
27
  }
@@ -38,6 +41,10 @@ export interface DextoProviderContext {
38
41
  clientSource?: 'cli' | 'web' | 'sdk';
39
42
  /** Working directory for providers that need an explicit workspace root. */
40
43
  cwd?: string;
44
+ /** Runtime auth resolver for profile-backed API keys, OAuth, and external accounts. */
45
+ authResolver?: LlmAuthResolver | null;
46
+ /** Logger for non-secret runtime provider/auth observability. */
47
+ logger?: Logger | undefined;
41
48
  /** Optional callback for ChatGPT Login rate-limit status updates from Codex. */
42
49
  onCodexRateLimitStatus?: (snapshot: CodexRateLimitSnapshot) => void;
43
50
  }
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/llm/services/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACxC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,EAAE,WAAW,CAAC;IACtB,KAAK,EAAE,aAAa,CAAC;IACrB,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvC,CAAC;AAEF,MAAM,WAAW,uBAAuB;IACpC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,kBAAkB,CAAC,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3D,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,UAAU,EAAE,mBAAmB,CAAC;IAChC,aAAa,EAAE,mBAAmB,CAAC;CACtC;AAED,MAAM,MAAM,uBAAuB,GAAG;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,KAAK,CAAC,EAAE,eAAe,CAAC;CAC3B,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;IACrC,4EAA4E;IAC5E,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,gFAAgF;IAChF,sBAAsB,CAAC,EAAE,CAAC,QAAQ,EAAE,sBAAsB,KAAK,IAAI,CAAC;CACvE;AAED,MAAM,WAAW,yBAAyB;IACtC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,oBAAoB,CAAC;CACjC;AAED,MAAM,WAAW,2BAA4B,SAAQ,yBAAyB;IAC1E,0BAA0B,EAAE,MAAM,aAAa,CAAC;CACnD;AAED,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,EAAE,2BAA2B,KAAK,aAAa,CAAC;AAE3F;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/llm/services/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,IAAI,CAAC;AACxC,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAEpE;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG;IAC3B,QAAQ,EAAE,WAAW,CAAC;IACtB,KAAK,EAAE,aAAa,CAAC;IACrB,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzC,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACvC,CAAC;AAEF,MAAM,WAAW,uBAAuB;IACpC,YAAY,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAClC,kBAAkB,CAAC,EAAE,kBAAkB,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3D,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzB,YAAY,CAAC,EAAE,eAAe,GAAG,IAAI,GAAG,SAAS,CAAC;IAClD,UAAU,EAAE,mBAAmB,CAAC;IAChC,aAAa,EAAE,mBAAmB,CAAC;CACtC;AAED,MAAM,MAAM,uBAAuB,GAAG;IAClC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,UAAU,CAAC,EAAE,eAAe,CAAC;IAC7B,KAAK,CAAC,EAAE,eAAe,CAAC;CAC3B,CAAC;AAEF;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACjC,oCAAoC;IACpC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0DAA0D;IAC1D,YAAY,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;IACrC,4EAA4E;IAC5E,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,uFAAuF;IACvF,YAAY,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;IACtC,iEAAiE;IACjE,MAAM,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC5B,gFAAgF;IAChF,sBAAsB,CAAC,EAAE,CAAC,QAAQ,EAAE,sBAAsB,KAAK,IAAI,CAAC;CACvE;AAED,MAAM,WAAW,yBAAyB;IACtC,MAAM,EAAE,kBAAkB,CAAC;IAC3B,OAAO,EAAE,oBAAoB,CAAC;CACjC;AAED,MAAM,WAAW,2BAA4B,SAAQ,yBAAyB;IAC1E,0BAA0B,EAAE,MAAM,aAAa,CAAC;CACnD;AAED,MAAM,MAAM,oBAAoB,GAAG,CAAC,OAAO,EAAE,2BAA2B,KAAK,aAAa,CAAC;AAE3F;;GAEG;AACH,MAAM,WAAW,aAAa;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC7B"}
@@ -23,7 +23,7 @@ __export(usage_metadata_exports, {
23
23
  normalizeTokenUsageForAccounting: () => normalizeTokenUsageForAccounting
24
24
  });
25
25
  module.exports = __toCommonJS(usage_metadata_exports);
26
- var import_registry = require("./registry/index.js");
26
+ var import_llm = require("@dexto/llm");
27
27
  function finiteTokenCount(value) {
28
28
  return typeof value === "number" && Number.isFinite(value) ? value : void 0;
29
29
  }
@@ -50,11 +50,11 @@ function getUsagePricingMetadata(config) {
50
50
  if (!provider || !model || !tokenUsage || !hasMeaningfulTokenUsage(tokenUsage)) {
51
51
  return {};
52
52
  }
53
- const pricing = (0, import_registry.getModelPricing)(provider, model);
53
+ const pricing = (0, import_llm.getModelPricing)(provider, model);
54
54
  if (!pricing) {
55
55
  return { pricingStatus: "unpriced" };
56
56
  }
57
- const costBreakdown = (0, import_registry.calculateCostBreakdown)(tokenUsage, pricing);
57
+ const costBreakdown = (0, import_llm.calculateCostBreakdown)(tokenUsage, pricing);
58
58
  return {
59
59
  estimatedCost: costBreakdown.totalUsd,
60
60
  pricingStatus: "estimated",
@@ -1,5 +1,5 @@
1
- import { type TokenUsageCostBreakdown } from './registry/index.js';
2
- import type { LLMProvider, LLMPricingStatus, TokenUsage } from './types.js';
1
+ import { type TokenUsageCostBreakdown } from '@dexto/llm';
2
+ import type { LLMProvider, LLMPricingStatus, TokenUsage } from '@dexto/llm';
3
3
  export interface LLMUsagePricingMetadata {
4
4
  estimatedCost?: number;
5
5
  pricingStatus?: LLMPricingStatus;
@@ -1 +1 @@
1
- {"version":3,"file":"usage-metadata.d.ts","sourceRoot":"","sources":["../../src/llm/usage-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,KAAK,uBAAuB,EAC/B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE5E,MAAM,WAAW,uBAAuB;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,aAAa,CAAC,EAAE,uBAAuB,CAAC;CAC3C;AAMD,wBAAgB,gCAAgC,CAAC,UAAU,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,CAW/F;AAED,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,CAcnF;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAC5C,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,UAAU,CAAC;CAC3B,GAAG,uBAAuB,CAqB1B"}
1
+ {"version":3,"file":"usage-metadata.d.ts","sourceRoot":"","sources":["../../src/llm/usage-metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAA2C,KAAK,uBAAuB,EAAE,MAAM,YAAY,CAAC;AACnG,OAAO,KAAK,EAAE,WAAW,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAE5E,MAAM,WAAW,uBAAuB;IACpC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,aAAa,CAAC,EAAE,gBAAgB,CAAC;IACjC,aAAa,CAAC,EAAE,uBAAuB,CAAC;CAC3C;AAMD,wBAAgB,gCAAgC,CAAC,UAAU,EAAE,UAAU,GAAG,SAAS,GAAG,UAAU,CAW/F;AAED,wBAAgB,uBAAuB,CAAC,UAAU,EAAE,UAAU,GAAG,SAAS,GAAG,OAAO,CAcnF;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE;IAC5C,QAAQ,CAAC,EAAE,WAAW,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,UAAU,CAAC,EAAE,UAAU,CAAC;CAC3B,GAAG,uBAAuB,CAqB1B"}
@@ -1,8 +1,5 @@
1
1
  import "../chunk-C6A6W6XS.js";
2
- import {
3
- calculateCostBreakdown,
4
- getModelPricing
5
- } from "./registry/index.js";
2
+ import { calculateCostBreakdown, getModelPricing } from "@dexto/llm";
6
3
  function finiteTokenCount(value) {
7
4
  return typeof value === "number" && Number.isFinite(value) ? value : void 0;
8
5
  }
@@ -1,5 +1,5 @@
1
1
  import { type InternalMessage } from '../context/types.js';
2
- import type { TokenUsage } from './types.js';
2
+ import type { TokenUsage } from '@dexto/llm';
3
3
  export interface CumulativeTokenUsage {
4
4
  inputTokens: number;
5
5
  outputTokens: number;
@@ -21,7 +21,7 @@ __export(validation_exports, {
21
21
  validateInputForLLM: () => validateInputForLLM
22
22
  });
23
23
  module.exports = __toCommonJS(validation_exports);
24
- var import_registry = require("./registry/index.js");
24
+ var import_llm = require("@dexto/llm");
25
25
  var import_result = require("../utils/result.js");
26
26
  var import_types = require("../errors/types.js");
27
27
  var import_error_codes = require("./error-codes.js");
@@ -100,7 +100,7 @@ function validateFileInput(fileData, config, logger) {
100
100
  };
101
101
  }
102
102
  const baseMimeType = fileData.mimeType.toLowerCase().split(";")[0]?.trim() || fileData.mimeType.toLowerCase();
103
- const allowedMimeTypes = (0, import_registry.getAllowedMimeTypes)();
103
+ const allowedMimeTypes = (0, import_llm.getAllowedMimeTypes)();
104
104
  if (!allowedMimeTypes.includes(baseMimeType)) {
105
105
  return {
106
106
  isSupported: false,
@@ -117,7 +117,7 @@ function validateFileInput(fileData, config, logger) {
117
117
  }
118
118
  }
119
119
  if (config.model) {
120
- return (0, import_registry.validateModelFileSupport)(config.provider, config.model, fileData.mimeType);
120
+ return (0, import_llm.validateModelFileSupport)(config.provider, config.model, fileData.mimeType);
121
121
  }
122
122
  return {
123
123
  isSupported: false,
@@ -149,7 +149,7 @@ function validateImageInput(imageData, config, logger) {
149
149
  };
150
150
  }
151
151
  const baseMimeType = resolvedMime.split(";")[0]?.trim() || resolvedMime;
152
- const res = (0, import_registry.validateModelFileSupport)(config.provider, config.model, baseMimeType);
152
+ const res = (0, import_llm.validateModelFileSupport)(config.provider, config.model, baseMimeType);
153
153
  return {
154
154
  isSupported: res.isSupported,
155
155
  ...res.error ? { error: res.error } : {}
@@ -1,4 +1,4 @@
1
- import type { LLMProvider } from './types.js';
1
+ import type { LLMProvider } from '@dexto/llm';
2
2
  import type { Logger } from '../logger/v2/types.js';
3
3
  import type { ImageData, FileData } from '../context/types.js';
4
4
  import { Result } from '../utils/result.js';
@@ -1,5 +1,5 @@
1
1
  import "../chunk-C6A6W6XS.js";
2
- import { validateModelFileSupport, getAllowedMimeTypes } from "./registry/index.js";
2
+ import { getAllowedMimeTypes, validateModelFileSupport } from "@dexto/llm";
3
3
  import { ok, fail } from "../utils/result.js";
4
4
  import { ErrorScope, ErrorType } from "../errors/types.js";
5
5
  import { LLMErrorCode } from "./error-codes.js";
@@ -29,7 +29,6 @@ var import_errors = require("../errors/index.js");
29
29
  var import_error_codes = require("../hooks/error-codes.js");
30
30
  var import_message_queue = require("./message-queue.js");
31
31
  var import_usage_metadata = require("../llm/usage-metadata.js");
32
- var import_codex_base_url = require("../llm/providers/codex-base-url.js");
33
32
  var import_errors2 = require("./errors.js");
34
33
  class ChatSession {
35
34
  /**
@@ -138,16 +137,6 @@ class ChatSession {
138
137
  if (payload.tokenUsage) {
139
138
  const tokenUsage = (0, import_usage_metadata.normalizeTokenUsageForAccounting)(payload.tokenUsage);
140
139
  const llmConfig = this.services.stateManager.getLLMConfig(this.id);
141
- const isChatGPTLogin = llmConfig.provider === "openai-compatible" && (0, import_codex_base_url.parseCodexBaseURL)(llmConfig.baseURL)?.authMode === "chatgpt";
142
- const hasMeaningfulUsage = (0, import_usage_metadata.hasMeaningfulTokenUsage)(tokenUsage);
143
- if (isChatGPTLogin && !hasMeaningfulUsage) {
144
- this.services.sessionManager.markUntrackedChatGPTLoginUsage(this.id).catch((err) => {
145
- this.logger.warn(
146
- `Failed to mark ChatGPT Login usage as untracked: ${err instanceof Error ? err.message : String(err)}`
147
- );
148
- });
149
- return;
150
- }
151
140
  const modelInfo = {
152
141
  provider: payload.provider ?? llmConfig.provider,
153
142
  model: payload.model ?? llmConfig.model
@@ -190,7 +179,8 @@ class ChatSession {
190
179
  compactionStrategy: this.services.compactionStrategy,
191
180
  ...workspace?.path !== void 0 && { cwd: workspace.path },
192
181
  steerQueue: this.steerQueue,
193
- followUpQueue: this.followUpQueue
182
+ followUpQueue: this.followUpQueue,
183
+ authResolver: this.services.authResolver ?? null
194
184
  };
195
185
  return (0, import_factory.createLLMService)(
196
186
  llmConfig,
@@ -1,5 +1,6 @@
1
1
  import type { ContextManager } from '../context/index.js';
2
2
  import type { LanguageModelFactory } from '../llm/services/types.js';
3
+ import type { LlmAuthResolver } from '../llm/auth/index.js';
3
4
  import type { SystemPromptManager } from '../systemPrompt/manager.js';
4
5
  import type { ToolManager } from '../tools/tool-manager.js';
5
6
  import type { ValidatedLLMConfig } from '../llm/schemas.js';
@@ -144,6 +145,7 @@ export declare class ChatSession {
144
145
  steerQueueStore: SessionMessageQueueStore;
145
146
  followUpQueueStore: SessionMessageQueueStore;
146
147
  languageModelFactory?: LanguageModelFactory;
148
+ authResolver?: LlmAuthResolver | null;
147
149
  workspaceManager?: import('../workspace/manager.js').WorkspaceManager;
148
150
  compactionStrategy: CompactionStrategy | null;
149
151
  }, id: string, logger: Logger);
@@ -1 +1 @@
1
- {"version":3,"file":"chat-session.d.ts","sourceRoot":"","sources":["../../src/session/chat-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"chat-session.d.ts","sourceRoot":"","sources":["../../src/session/chat-session.ts"],"names":[],"mappings":"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"}
@@ -11,10 +11,8 @@ import { HookErrorCode } from "../hooks/error-codes.js";
11
11
  import { MessageQueueService } from "./message-queue.js";
12
12
  import {
13
13
  getUsagePricingMetadata,
14
- hasMeaningfulTokenUsage,
15
14
  normalizeTokenUsageForAccounting
16
15
  } from "../llm/usage-metadata.js";
17
- import { parseCodexBaseURL } from "../llm/providers/codex-base-url.js";
18
16
  import { SessionError } from "./errors.js";
19
17
  class ChatSession {
20
18
  /**
@@ -123,16 +121,6 @@ class ChatSession {
123
121
  if (payload.tokenUsage) {
124
122
  const tokenUsage = normalizeTokenUsageForAccounting(payload.tokenUsage);
125
123
  const llmConfig = this.services.stateManager.getLLMConfig(this.id);
126
- const isChatGPTLogin = llmConfig.provider === "openai-compatible" && parseCodexBaseURL(llmConfig.baseURL)?.authMode === "chatgpt";
127
- const hasMeaningfulUsage = hasMeaningfulTokenUsage(tokenUsage);
128
- if (isChatGPTLogin && !hasMeaningfulUsage) {
129
- this.services.sessionManager.markUntrackedChatGPTLoginUsage(this.id).catch((err) => {
130
- this.logger.warn(
131
- `Failed to mark ChatGPT Login usage as untracked: ${err instanceof Error ? err.message : String(err)}`
132
- );
133
- });
134
- return;
135
- }
136
124
  const modelInfo = {
137
125
  provider: payload.provider ?? llmConfig.provider,
138
126
  model: payload.model ?? llmConfig.model
@@ -175,7 +163,8 @@ class ChatSession {
175
163
  compactionStrategy: this.services.compactionStrategy,
176
164
  ...workspace?.path !== void 0 && { cwd: workspace.path },
177
165
  steerQueue: this.steerQueue,
178
- followUpQueue: this.followUpQueue
166
+ followUpQueue: this.followUpQueue,
167
+ authResolver: this.services.authResolver ?? null
179
168
  };
180
169
  return createLLMService(
181
170
  llmConfig,
@@ -48,6 +48,7 @@ class SessionManager {
48
48
  this.sessionTTL = config.sessionTTL ?? 36e5;
49
49
  this.sessionLoggerFactory = config.sessionLoggerFactory ?? defaultSessionLoggerFactory;
50
50
  this.languageModelFactory = config.languageModelFactory;
51
+ this.authResolver = config.authResolver ?? null;
51
52
  this.logger = logger.createChild(import_types.DextoLogComponent.SESSION);
52
53
  }
53
54
  sessions = /* @__PURE__ */ new Map();
@@ -66,13 +67,15 @@ class SessionManager {
66
67
  static FORK_PARENT_ID_PREVIEW_LENGTH = 8;
67
68
  sessionLoggerFactory;
68
69
  languageModelFactory;
70
+ authResolver;
69
71
  getChatSessionServices() {
70
72
  return {
71
73
  ...this.services,
72
74
  sessionManager: this,
73
75
  ...this.languageModelFactory !== void 0 && {
74
76
  languageModelFactory: this.languageModelFactory
75
- }
77
+ },
78
+ authResolver: this.authResolver
76
79
  };
77
80
  }
78
81
  /**
@@ -7,8 +7,9 @@ import type { AgentStateManager } from '../agent/state-manager.js';
7
7
  import type { ValidatedLLMConfig } from '../llm/schemas.js';
8
8
  import type { HookManager } from '../hooks/manager.js';
9
9
  import type { ApprovalManager } from '../approval/manager.js';
10
- import type { TokenUsage } from '../llm/types.js';
10
+ import type { TokenUsage } from '@dexto/llm';
11
11
  import type { LanguageModelFactory } from '../llm/services/types.js';
12
+ import type { LlmAuthResolver } from '../llm/auth/index.js';
12
13
  import type { CompactionStrategy } from '../context/compaction/types.js';
13
14
  import { type SessionPromptContributor } from '../systemPrompt/schemas.js';
14
15
  import type { SessionMessageQueueStore } from '../storage/message-queue/types.js';
@@ -58,6 +59,8 @@ export interface SessionManagerConfig {
58
59
  sessionLoggerFactory?: SessionLoggerFactory;
59
60
  /** Host hook for constructing session-scoped LanguageModel instances */
60
61
  languageModelFactory?: LanguageModelFactory;
62
+ /** Host hook for resolving runtime provider auth from local/cloud profiles */
63
+ authResolver?: LlmAuthResolver | null;
61
64
  }
62
65
  type PersistedLLMConfig = Omit<ValidatedLLMConfig, 'apiKey'>;
63
66
  export interface SessionData {
@@ -108,6 +111,7 @@ export declare class SessionManager {
108
111
  private static readonly FORK_PARENT_ID_PREVIEW_LENGTH;
109
112
  private readonly sessionLoggerFactory;
110
113
  private readonly languageModelFactory;
114
+ private readonly authResolver;
111
115
  constructor(services: {
112
116
  stateManager: AgentStateManager;
113
117
  systemPromptManager: SystemPromptManager;
@@ -1 +1 @@
1
- {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/session/session-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session-manager.d.ts","sourceRoot":"","sources":["../../src/session/session-manager.ts"],"names":[],"mappings":"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"}
@@ -18,6 +18,7 @@ class SessionManager {
18
18
  this.sessionTTL = config.sessionTTL ?? 36e5;
19
19
  this.sessionLoggerFactory = config.sessionLoggerFactory ?? defaultSessionLoggerFactory;
20
20
  this.languageModelFactory = config.languageModelFactory;
21
+ this.authResolver = config.authResolver ?? null;
21
22
  this.logger = logger.createChild(DextoLogComponent.SESSION);
22
23
  }
23
24
  sessions = /* @__PURE__ */ new Map();
@@ -36,13 +37,15 @@ class SessionManager {
36
37
  static FORK_PARENT_ID_PREVIEW_LENGTH = 8;
37
38
  sessionLoggerFactory;
38
39
  languageModelFactory;
40
+ authResolver;
39
41
  getChatSessionServices() {
40
42
  return {
41
43
  ...this.services,
42
44
  sessionManager: this,
43
45
  ...this.languageModelFactory !== void 0 && {
44
46
  languageModelFactory: this.languageModelFactory
45
- }
47
+ },
48
+ authResolver: this.authResolver
46
49
  };
47
50
  }
48
51
  /**
@@ -1,4 +1,4 @@
1
- import type { LLMProvider } from '../llm/types.js';
1
+ import type { LLMProvider } from '@dexto/llm';
2
2
  /**
3
3
  * Utility for resolving API keys from environment variables.
4
4
  * This consolidates the API key resolution logic used across CLI and core components.
@@ -1 +1 @@
1
- {"version":3,"file":"api-key-resolver.d.ts","sourceRoot":"","sources":["../../src/utils/api-key-resolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAGnD;;;GAGG;AAGH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,CA+B9D,CAAC;AA2BF;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CAsBlF;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,CAGpE"}
1
+ {"version":3,"file":"api-key-resolver.d.ts","sourceRoot":"","sources":["../../src/utils/api-key-resolver.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAG9C;;;GAGG;AAGH,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,CA+B9D,CAAC;AA2BF;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,GAAG,SAAS,CAsBlF;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,WAAW,GAAG,MAAM,CAGpE"}