@openclaw/deepinfra-provider 2026.10.5-beta.3 → 2026.10.10-beta.1

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.
@@ -78,36 +78,6 @@ var openclaw_plugin_default = {
78
78
  "codeMode": "capable"
79
79
  }
80
80
  },
81
- {
82
- "id": "stepfun-ai/Step-3.7-Flash",
83
- "name": "Step 3.7 Flash",
84
- "reasoning": true,
85
- "input": ["text", "image"],
86
- "contextWindow": 262144,
87
- "maxTokens": 262144,
88
- "cost": {
89
- "input": .2,
90
- "output": 1.15,
91
- "cacheRead": .04,
92
- "cacheWrite": 0
93
- },
94
- "compat": { "supportsUsageInStreaming": true }
95
- },
96
- {
97
- "id": "moonshotai/Kimi-K2.7-Code",
98
- "name": "Kimi K2.7 Code",
99
- "reasoning": true,
100
- "input": ["text", "image"],
101
- "contextWindow": 262144,
102
- "maxTokens": 262144,
103
- "cost": {
104
- "input": .68,
105
- "output": 3.4,
106
- "cacheRead": .136,
107
- "cacheWrite": 0
108
- },
109
- "compat": { "supportsUsageInStreaming": true }
110
- },
111
81
  {
112
82
  "id": "moonshotai/Kimi-K2.6",
113
83
  "name": "Kimi K2.6",
@@ -189,40 +159,6 @@ var openclaw_plugin_default = {
189
159
  "supportsUsageInStreaming": true,
190
160
  "codeMode": "capable"
191
161
  }
192
- },
193
- {
194
- "id": "stepfun-ai/Step-3.5-Flash",
195
- "name": "Step 3.5 Flash",
196
- "status": "deprecated",
197
- "replacedBy": "stepfun-ai/Step-3.7-Flash",
198
- "reasoning": true,
199
- "input": ["text"],
200
- "contextWindow": 262144,
201
- "maxTokens": 262144,
202
- "cost": {
203
- "input": .09,
204
- "output": .3,
205
- "cacheRead": .0199999998,
206
- "cacheWrite": 0
207
- },
208
- "compat": { "supportsUsageInStreaming": true }
209
- },
210
- {
211
- "id": "moonshotai/Kimi-K2.5",
212
- "name": "Kimi K2.5",
213
- "status": "deprecated",
214
- "replacedBy": "moonshotai/Kimi-K2.6",
215
- "reasoning": true,
216
- "input": ["text", "image"],
217
- "contextWindow": 262144,
218
- "maxTokens": 262144,
219
- "cost": {
220
- "input": .45,
221
- "output": 2.25,
222
- "cacheRead": .070000002,
223
- "cacheWrite": 0
224
- },
225
- "compat": { "supportsUsageInStreaming": true }
226
162
  }
227
163
  ]
228
164
  } },
@@ -254,7 +190,7 @@ var openclaw_plugin_default = {
254
190
  mediaUnderstandingProviderMetadata: { "deepinfra": {
255
191
  "capabilities": ["image", "audio"],
256
192
  "defaultModels": {
257
- "image": "moonshotai/Kimi-K2.5",
193
+ "image": "moonshotai/Kimi-K2.6",
258
194
  "audio": "openai/whisper-large-v3-turbo"
259
195
  },
260
196
  "autoPriority": {
@@ -1,4 +1,4 @@
1
- import { t as openclaw_plugin_default } from "./.setup/openclaw.plugin-D7BLeoIa.mjs";
1
+ import { t as openclaw_plugin_default } from "./.setup/openclaw.plugin-5ywdmEQ1.mjs";
2
2
  //#region \0rolldown/runtime.js
3
3
  var __defProp = Object.defineProperty;
4
4
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
package/dist/index.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { createDeepInfraAnthropicCacheWrapper } from "./cache-wrapper.js";
2
- import { t as openclaw_plugin_default } from "./.setup/openclaw.plugin-D7BLeoIa.mjs";
2
+ import { t as openclaw_plugin_default } from "./.setup/openclaw.plugin-5ywdmEQ1.mjs";
3
3
  import { buildDeepInfraEmbeddingAdapter } from "./embedding-adapter.js";
4
4
  import { buildDeepInfraImageGenerationProvider } from "./image-generation-provider.js";
5
5
  import { buildDeepInfraMediaUnderstandingProvider } from "./media-understanding-provider.js";
@@ -11,7 +11,7 @@ import { buildDeepInfraSpeechProvider } from "./speech-provider.js";
11
11
  import { listDeepInfraImageGenCatalog, listDeepInfraVideoGenCatalog } from "./surface-model-catalogs.js";
12
12
  import { buildDeepInfraVideoGenerationProvider } from "./video-generation-provider.js";
13
13
  import { defineSingleProviderPluginEntry } from "openclaw/plugin-sdk/provider-entry";
14
- import { buildProviderReplayFamilyHooks } from "openclaw/plugin-sdk/provider-model-shared";
14
+ import { applyModelCompatPatch, buildProviderReplayFamilyHooks } from "openclaw/plugin-sdk/provider-model-shared";
15
15
  import { createOpenRouterWrapper, isProxyReasoningUnsupported } from "openclaw/plugin-sdk/provider-stream";
16
16
  //#region extensions/deepinfra/index.ts
17
17
  const PROVIDER_ID = "deepinfra";
@@ -35,6 +35,10 @@ var deepinfra_default = defineSingleProviderPluginEntry({
35
35
  staticRun: async () => ({ provider: buildStaticDeepInfraProvider() })
36
36
  },
37
37
  ...buildProviderReplayFamilyHooks({ family: "passthrough-gemini" }),
38
+ normalizeResolvedModel: ({ model }) => model.api === "openai-completions" && model.baseUrl?.trim().replace(/\/+$/u, "") === openclaw_plugin_default.modelCatalog.providers.deepinfra.baseUrl ? applyModelCompatPatch(model, {
39
+ supportsPromptCacheKey: model.compat?.supportsPromptCacheKey ?? true,
40
+ supportsLongCacheRetention: model.compat?.supportsLongCacheRetention ?? false
41
+ }) : model,
38
42
  wrapStreamFn: (ctx) => {
39
43
  const thinkingLevel = isProxyReasoningUnsupported(ctx.modelId) ? void 0 : ctx.thinkingLevel;
40
44
  return createDeepInfraAnthropicCacheWrapper(createOpenRouterWrapper(ctx.streamFn, thinkingLevel), ctx.extraParams);
@@ -1,4 +1,4 @@
1
- import { t as openclaw_plugin_default } from "./.setup/openclaw.plugin-D7BLeoIa.mjs";
1
+ import { t as openclaw_plugin_default } from "./.setup/openclaw.plugin-5ywdmEQ1.mjs";
2
2
  import { normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
3
3
  //#region extensions/deepinfra/media-models.ts
4
4
  const DEEPINFRA_BASE_URL = openclaw_plugin_default.modelCatalog.providers.deepinfra.baseUrl;
@@ -78,7 +78,7 @@ const DEEPINFRA_VIDEO_FALLBACK_MODELS = [
78
78
  ];
79
79
  const DEEPINFRA_STT_FALLBACK_MODELS = ["openai/whisper-large-v3-turbo", "openai/whisper-large-v3"];
80
80
  const DEEPINFRA_EMBED_FALLBACK_MODELS = ["BAAI/bge-m3"];
81
- const DEEPINFRA_VLM_FALLBACK_MODELS = ["moonshotai/Kimi-K2.5"];
81
+ const DEEPINFRA_VLM_FALLBACK_MODELS = ["moonshotai/Kimi-K2.6"];
82
82
  function normalizeDeepInfraModelRef(model, fallback) {
83
83
  const value = normalizeOptionalString(model) ?? fallback;
84
84
  return value.startsWith("deepinfra/") ? value.slice(10) : value;
@@ -5,7 +5,7 @@ import { asPositiveSafeInteger, isRecord } from "openclaw/plugin-sdk/string-coer
5
5
  import { fetchLiveProviderModelRows } from "openclaw/plugin-sdk/provider-catalog-live-runtime";
6
6
  import { getCachedLiveCatalogValue } from "openclaw/plugin-sdk/provider-catalog-shared";
7
7
  import { withTrustedEnvProxyGuardedFetchMode } from "openclaw/plugin-sdk/fetch-runtime";
8
- import { isProviderApiKeyConfigured } from "openclaw/plugin-sdk/provider-auth";
8
+ import { isProviderApiKeyConfiguredAsync } from "openclaw/plugin-sdk/provider-auth";
9
9
  import { createSubsystemLogger } from "openclaw/plugin-sdk/runtime-env";
10
10
  import { fetchWithSsrFGuard } from "openclaw/plugin-sdk/ssrf-runtime";
11
11
  //#region extensions/deepinfra/provider-models.ts
@@ -115,16 +115,16 @@ function chatSurfaceModelToModelDefinition(model) {
115
115
  maxTokens: model.maxTokens ?? DEEPINFRA_DEFAULT_MAX_TOKENS
116
116
  };
117
117
  }
118
- function canDiscoverDeepInfra(options) {
118
+ async function canDiscoverDeepInfra(options) {
119
119
  if (options?.hasApiKey !== void 0) return options.hasApiKey;
120
120
  const fromEnv = (options?.env ?? process.env).DEEPINFRA_API_KEY;
121
- return typeof fromEnv === "string" && fromEnv.trim() !== "" || isProviderApiKeyConfigured({
121
+ return typeof fromEnv === "string" && fromEnv.trim() !== "" || await isProviderApiKeyConfiguredAsync({
122
122
  provider: "deepinfra",
123
123
  agentDir: options?.agentDir
124
124
  });
125
125
  }
126
126
  async function discoverDeepInfraSurfaces(options) {
127
- if (canDiscoverDeepInfra(options)) try {
127
+ if (await canDiscoverDeepInfra(options)) try {
128
128
  return await loadDeepInfraSurfaces();
129
129
  } catch (error) {
130
130
  log.warn(`Model metadata discovery unavailable: ${String(error)}`);
@@ -187,7 +187,7 @@ async function discoverDeepInfraPricing() {
187
187
  });
188
188
  }
189
189
  async function discoverDeepInfraModels(options) {
190
- if (!canDiscoverDeepInfra(options)) return DEEPINFRA_MODEL_CATALOG.map(buildDeepInfraModelDefinition);
190
+ if (!await canDiscoverDeepInfra(options)) return DEEPINFRA_MODEL_CATALOG.map(buildDeepInfraModelDefinition);
191
191
  const strict = options?.discoveryMode !== "advisory";
192
192
  const [metadata, pricing] = await Promise.allSettled([loadDeepInfraSurfaces(), discoverDeepInfraPricing()]);
193
193
  if (metadata.status === "rejected") {
@@ -1,4 +1,4 @@
1
- import { t as openclaw_plugin_default } from "./.setup/openclaw.plugin-D7BLeoIa.mjs";
1
+ import { t as openclaw_plugin_default } from "./.setup/openclaw.plugin-5ywdmEQ1.mjs";
2
2
  import { DEEPINFRA_BASE_URL } from "./media-models.js";
3
3
  import { buildManifestModelProviderConfig } from "openclaw/plugin-sdk/provider-model-metadata";
4
4
  //#region extensions/deepinfra/provider-static-catalog.ts
@@ -1,7 +1,7 @@
1
1
  import { DEEPINFRA_BASE_URL, DEEPINFRA_VIDEO_FALLBACK_MODELS, normalizeDeepInfraBaseUrl, normalizeDeepInfraModelRef } from "./media-models.js";
2
2
  import { buildDeepInfraVideoModelCapabilities, resolveDeepInfraVideoModelCapabilities } from "./surface-model-catalogs.js";
3
3
  import { asSafeIntegerInRange, normalizeOptionalString } from "openclaw/plugin-sdk/string-coerce-runtime";
4
- import { isProviderApiKeyConfigured } from "openclaw/plugin-sdk/provider-auth";
4
+ import { isProviderApiKeyConfiguredAsync } from "openclaw/plugin-sdk/provider-auth";
5
5
  import { resolveGeneratedMediaMaxBytes } from "openclaw/plugin-sdk/media-generation-runtime";
6
6
  import { detectMime, extensionForMime, mediaKindFromMime, normalizeMimeType } from "openclaw/plugin-sdk/media-mime";
7
7
  import { canonicalizeBase64, estimateBase64DecodedBytes } from "openclaw/plugin-sdk/media-runtime";
@@ -94,7 +94,7 @@ function buildDeepInfraVideoGenerationProvider(options) {
94
94
  defaultModel,
95
95
  models: ids,
96
96
  resolveModelCapabilities: resolveDeepInfraVideoModelCapabilities,
97
- isConfigured: (ctx) => isProviderApiKeyConfigured({
97
+ isConfiguredAsync: (ctx) => isProviderApiKeyConfiguredAsync({
98
98
  provider: "deepinfra",
99
99
  ...ctx
100
100
  }),
@@ -112,46 +112,6 @@
112
112
  "codeMode": "capable"
113
113
  }
114
114
  },
115
- {
116
- "id": "stepfun-ai/Step-3.7-Flash",
117
- "name": "Step 3.7 Flash",
118
- "reasoning": true,
119
- "input": [
120
- "text",
121
- "image"
122
- ],
123
- "contextWindow": 262144,
124
- "maxTokens": 262144,
125
- "cost": {
126
- "input": 0.2,
127
- "output": 1.15,
128
- "cacheRead": 0.04,
129
- "cacheWrite": 0
130
- },
131
- "compat": {
132
- "supportsUsageInStreaming": true
133
- }
134
- },
135
- {
136
- "id": "moonshotai/Kimi-K2.7-Code",
137
- "name": "Kimi K2.7 Code",
138
- "reasoning": true,
139
- "input": [
140
- "text",
141
- "image"
142
- ],
143
- "contextWindow": 262144,
144
- "maxTokens": 262144,
145
- "cost": {
146
- "input": 0.68,
147
- "output": 3.4,
148
- "cacheRead": 0.136,
149
- "cacheWrite": 0
150
- },
151
- "compat": {
152
- "supportsUsageInStreaming": true
153
- }
154
- },
155
115
  {
156
116
  "id": "moonshotai/Kimi-K2.6",
157
117
  "name": "Kimi K2.6",
@@ -253,49 +213,6 @@
253
213
  "supportsUsageInStreaming": true,
254
214
  "codeMode": "capable"
255
215
  }
256
- },
257
- {
258
- "id": "stepfun-ai/Step-3.5-Flash",
259
- "name": "Step 3.5 Flash",
260
- "status": "deprecated",
261
- "replacedBy": "stepfun-ai/Step-3.7-Flash",
262
- "reasoning": true,
263
- "input": [
264
- "text"
265
- ],
266
- "contextWindow": 262144,
267
- "maxTokens": 262144,
268
- "cost": {
269
- "input": 0.09,
270
- "output": 0.3,
271
- "cacheRead": 0.0199999998,
272
- "cacheWrite": 0
273
- },
274
- "compat": {
275
- "supportsUsageInStreaming": true
276
- }
277
- },
278
- {
279
- "id": "moonshotai/Kimi-K2.5",
280
- "name": "Kimi K2.5",
281
- "status": "deprecated",
282
- "replacedBy": "moonshotai/Kimi-K2.6",
283
- "reasoning": true,
284
- "input": [
285
- "text",
286
- "image"
287
- ],
288
- "contextWindow": 262144,
289
- "maxTokens": 262144,
290
- "cost": {
291
- "input": 0.45,
292
- "output": 2.25,
293
- "cacheRead": 0.070000002,
294
- "cacheWrite": 0
295
- },
296
- "compat": {
297
- "supportsUsageInStreaming": true
298
- }
299
216
  }
300
217
  ]
301
218
  }
@@ -354,7 +271,7 @@
354
271
  "audio"
355
272
  ],
356
273
  "defaultModels": {
357
- "image": "moonshotai/Kimi-K2.5",
274
+ "image": "moonshotai/Kimi-K2.6",
358
275
  "audio": "openai/whisper-large-v3-turbo"
359
276
  },
360
277
  "autoPriority": {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@openclaw/deepinfra-provider",
3
- "version": "2026.10.5-beta.3",
3
+ "version": "2026.10.10-beta.1",
4
4
  "description": "OpenClaw DeepInfra provider plugin.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -18,10 +18,10 @@
18
18
  "minHostVersion": ">=2026.6.8"
19
19
  },
20
20
  "compat": {
21
- "pluginApi": ">=2026.10.5-beta.3"
21
+ "pluginApi": ">=2026.10.10-beta.1"
22
22
  },
23
23
  "build": {
24
- "openclawVersion": "2026.10.5-beta.3",
24
+ "openclawVersion": "2026.10.10-beta.1",
25
25
  "bundledDist": false
26
26
  },
27
27
  "release": {
@@ -40,7 +40,7 @@
40
40
  "assets/activity.svg"
41
41
  ],
42
42
  "peerDependencies": {
43
- "openclaw": ">=2026.10.5-beta.3"
43
+ "openclaw": ">=2026.10.10-beta.1"
44
44
  },
45
45
  "peerDependenciesMeta": {
46
46
  "openclaw": {