@openclaw/deepseek-provider 2026.7.1-beta.6 → 2026.7.2-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.
- package/dist/api.js +1 -1
- package/dist/{models-BP0TFm69.js → models-BHPq26BW.js} +14 -14
- package/dist/models.js +1 -1
- package/dist/onboard.js +1 -1
- package/dist/provider-catalog.js +1 -1
- package/dist/provider-policy-api.js +67 -4
- package/dist/stream.js +1 -1
- package/dist/thinking.js +1 -1
- package/npm-shrinkwrap.json +2 -2
- package/openclaw.plugin.json +14 -14
- package/package.json +4 -4
package/dist/api.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as DEEPSEEK_MODEL_CATALOG, r as buildDeepSeekModelDefinition, t as DEEPSEEK_BASE_URL } from "./models-
|
|
1
|
+
import { n as DEEPSEEK_MODEL_CATALOG, r as buildDeepSeekModelDefinition, t as DEEPSEEK_BASE_URL } from "./models-BHPq26BW.js";
|
|
2
2
|
import { buildDeepSeekProvider } from "./provider-catalog.js";
|
|
3
3
|
import { createDeepSeekV4ThinkingWrapper } from "./stream.js";
|
|
4
4
|
export { DEEPSEEK_BASE_URL, DEEPSEEK_MODEL_CATALOG, buildDeepSeekModelDefinition, buildDeepSeekProvider, createDeepSeekV4ThinkingWrapper };
|
|
@@ -18,7 +18,7 @@ const DEEPSEEK_MANIFEST_PROVIDER = buildManifestModelProviderConfig({
|
|
|
18
18
|
"cost": {
|
|
19
19
|
"input": .14,
|
|
20
20
|
"output": .28,
|
|
21
|
-
"cacheRead": .
|
|
21
|
+
"cacheRead": .0028,
|
|
22
22
|
"cacheWrite": 0
|
|
23
23
|
},
|
|
24
24
|
"compat": {
|
|
@@ -35,9 +35,9 @@ const DEEPSEEK_MANIFEST_PROVIDER = buildManifestModelProviderConfig({
|
|
|
35
35
|
"contextWindow": 1e6,
|
|
36
36
|
"maxTokens": 384e3,
|
|
37
37
|
"cost": {
|
|
38
|
-
"input":
|
|
39
|
-
"output":
|
|
40
|
-
"cacheRead": .
|
|
38
|
+
"input": .435,
|
|
39
|
+
"output": .87,
|
|
40
|
+
"cacheRead": .003625,
|
|
41
41
|
"cacheWrite": 0
|
|
42
42
|
},
|
|
43
43
|
"compat": {
|
|
@@ -50,12 +50,12 @@ const DEEPSEEK_MANIFEST_PROVIDER = buildManifestModelProviderConfig({
|
|
|
50
50
|
"id": "deepseek-chat",
|
|
51
51
|
"name": "DeepSeek Chat",
|
|
52
52
|
"input": ["text"],
|
|
53
|
-
"contextWindow":
|
|
54
|
-
"maxTokens":
|
|
53
|
+
"contextWindow": 1e6,
|
|
54
|
+
"maxTokens": 384e3,
|
|
55
55
|
"cost": {
|
|
56
|
-
"input": .
|
|
57
|
-
"output": .
|
|
58
|
-
"cacheRead": .
|
|
56
|
+
"input": .14,
|
|
57
|
+
"output": .28,
|
|
58
|
+
"cacheRead": .0028,
|
|
59
59
|
"cacheWrite": 0
|
|
60
60
|
},
|
|
61
61
|
"compat": {
|
|
@@ -68,12 +68,12 @@ const DEEPSEEK_MANIFEST_PROVIDER = buildManifestModelProviderConfig({
|
|
|
68
68
|
"name": "DeepSeek Reasoner",
|
|
69
69
|
"reasoning": true,
|
|
70
70
|
"input": ["text"],
|
|
71
|
-
"contextWindow":
|
|
72
|
-
"maxTokens":
|
|
71
|
+
"contextWindow": 1e6,
|
|
72
|
+
"maxTokens": 384e3,
|
|
73
73
|
"cost": {
|
|
74
|
-
"input": .
|
|
75
|
-
"output": .
|
|
76
|
-
"cacheRead": .
|
|
74
|
+
"input": .14,
|
|
75
|
+
"output": .28,
|
|
76
|
+
"cacheRead": .0028,
|
|
77
77
|
"cacheWrite": 0
|
|
78
78
|
},
|
|
79
79
|
"compat": {
|
package/dist/models.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as isDeepSeekV4ModelRef, i as isDeepSeekV4ModelId, n as DEEPSEEK_MODEL_CATALOG, r as buildDeepSeekModelDefinition, t as DEEPSEEK_BASE_URL } from "./models-
|
|
1
|
+
import { a as isDeepSeekV4ModelRef, i as isDeepSeekV4ModelId, n as DEEPSEEK_MODEL_CATALOG, r as buildDeepSeekModelDefinition, t as DEEPSEEK_BASE_URL } from "./models-BHPq26BW.js";
|
|
2
2
|
export { DEEPSEEK_BASE_URL, DEEPSEEK_MODEL_CATALOG, buildDeepSeekModelDefinition, isDeepSeekV4ModelId, isDeepSeekV4ModelRef };
|
package/dist/onboard.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as DEEPSEEK_MODEL_CATALOG, r as buildDeepSeekModelDefinition, t as DEEPSEEK_BASE_URL } from "./models-
|
|
1
|
+
import { n as DEEPSEEK_MODEL_CATALOG, r as buildDeepSeekModelDefinition, t as DEEPSEEK_BASE_URL } from "./models-BHPq26BW.js";
|
|
2
2
|
import "./api.js";
|
|
3
3
|
import { applyAgentDefaultModelPrimary, applyProviderConfigWithModelCatalog } from "openclaw/plugin-sdk/provider-onboard";
|
|
4
4
|
//#region extensions/deepseek/onboard.ts
|
package/dist/provider-catalog.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { n as DEEPSEEK_MODEL_CATALOG, r as buildDeepSeekModelDefinition, t as DEEPSEEK_BASE_URL } from "./models-
|
|
1
|
+
import { n as DEEPSEEK_MODEL_CATALOG, r as buildDeepSeekModelDefinition, t as DEEPSEEK_BASE_URL } from "./models-BHPq26BW.js";
|
|
2
2
|
//#region extensions/deepseek/provider-catalog.ts
|
|
3
3
|
function buildDeepSeekProvider() {
|
|
4
4
|
return {
|
|
@@ -1,6 +1,54 @@
|
|
|
1
|
-
import { n as DEEPSEEK_MODEL_CATALOG } from "./models-
|
|
1
|
+
import { n as DEEPSEEK_MODEL_CATALOG } from "./models-BHPq26BW.js";
|
|
2
2
|
import { resolveDeepSeekV4ThinkingProfile } from "./thinking.js";
|
|
3
3
|
//#region extensions/deepseek/provider-policy-api.ts
|
|
4
|
+
const PREVIOUS_BUNDLED_METADATA = {
|
|
5
|
+
"deepseek-v4-flash": {
|
|
6
|
+
contextWindow: 1e6,
|
|
7
|
+
maxTokens: 384e3,
|
|
8
|
+
cost: {
|
|
9
|
+
input: .14,
|
|
10
|
+
output: .28,
|
|
11
|
+
cacheRead: .028,
|
|
12
|
+
cacheWrite: 0
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
"deepseek-v4-pro": {
|
|
16
|
+
contextWindow: 1e6,
|
|
17
|
+
maxTokens: 384e3,
|
|
18
|
+
cost: {
|
|
19
|
+
input: 1.74,
|
|
20
|
+
output: 3.48,
|
|
21
|
+
cacheRead: .145,
|
|
22
|
+
cacheWrite: 0
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"deepseek-chat": {
|
|
26
|
+
contextWindow: 131072,
|
|
27
|
+
maxTokens: 8192,
|
|
28
|
+
cost: {
|
|
29
|
+
input: .28,
|
|
30
|
+
output: .42,
|
|
31
|
+
cacheRead: .028,
|
|
32
|
+
cacheWrite: 0
|
|
33
|
+
}
|
|
34
|
+
},
|
|
35
|
+
"deepseek-reasoner": {
|
|
36
|
+
contextWindow: 131072,
|
|
37
|
+
maxTokens: 65536,
|
|
38
|
+
cost: {
|
|
39
|
+
input: .28,
|
|
40
|
+
output: .42,
|
|
41
|
+
cacheRead: .028,
|
|
42
|
+
cacheWrite: 0
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
};
|
|
46
|
+
const ZERO_COST = {
|
|
47
|
+
input: 0,
|
|
48
|
+
output: 0,
|
|
49
|
+
cacheRead: 0,
|
|
50
|
+
cacheWrite: 0
|
|
51
|
+
};
|
|
4
52
|
/**
|
|
5
53
|
* Build a lookup from the bundled DeepSeek model catalog so we can hydrate
|
|
6
54
|
* missing metadata (contextWindow, cost, maxTokens) into user-configured
|
|
@@ -19,6 +67,19 @@ function hasCostValues(cost) {
|
|
|
19
67
|
const c = cost;
|
|
20
68
|
return typeof c.input === "number" || typeof c.output === "number" || typeof c.cacheRead === "number" || typeof c.cacheWrite === "number";
|
|
21
69
|
}
|
|
70
|
+
function hasSameCost(left, right) {
|
|
71
|
+
if (!left || typeof left !== "object" || !right) return false;
|
|
72
|
+
const cost = left;
|
|
73
|
+
if (Object.hasOwn(cost, "tieredPricing")) return false;
|
|
74
|
+
return cost.input === right.input && cost.output === right.output && cost.cacheRead === right.cacheRead && cost.cacheWrite === right.cacheWrite;
|
|
75
|
+
}
|
|
76
|
+
function isShippedZeroCostAliasSnapshot(raw, previous) {
|
|
77
|
+
return (raw.id === "deepseek-chat" || raw.id === "deepseek-reasoner") && raw.contextWindow === previous?.contextWindow && raw.maxTokens === previous?.maxTokens && hasSameCost(raw.cost, ZERO_COST);
|
|
78
|
+
}
|
|
79
|
+
function isPreviousBundledMetadataSnapshot(raw, previous) {
|
|
80
|
+
if (!previous) return false;
|
|
81
|
+
return raw.contextWindow === previous.contextWindow && raw.maxTokens === previous.maxTokens && (hasSameCost(raw.cost, previous.cost) || isShippedZeroCostAliasSnapshot(raw, previous));
|
|
82
|
+
}
|
|
22
83
|
/**
|
|
23
84
|
* Provider policy surface for DeepSeek.
|
|
24
85
|
*
|
|
@@ -34,17 +95,19 @@ function normalizeConfig(params) {
|
|
|
34
95
|
const raw = model;
|
|
35
96
|
const catalogEntry = catalog.get(raw.id);
|
|
36
97
|
if (!catalogEntry) return model;
|
|
98
|
+
const previousEntry = PREVIOUS_BUNDLED_METADATA[raw.id];
|
|
99
|
+
const hasPreviousBundledMetadata = isPreviousBundledMetadataSnapshot(raw, previousEntry);
|
|
37
100
|
let modelMutated = false;
|
|
38
101
|
const patched = {};
|
|
39
|
-
if (!isPositiveNumber(raw.contextWindow) && isPositiveNumber(catalogEntry.contextWindow)) {
|
|
102
|
+
if ((!isPositiveNumber(raw.contextWindow) || hasPreviousBundledMetadata && raw.contextWindow !== catalogEntry.contextWindow) && isPositiveNumber(catalogEntry.contextWindow)) {
|
|
40
103
|
patched.contextWindow = catalogEntry.contextWindow;
|
|
41
104
|
modelMutated = true;
|
|
42
105
|
}
|
|
43
|
-
if (!isPositiveNumber(raw.maxTokens) && isPositiveNumber(catalogEntry.maxTokens)) {
|
|
106
|
+
if ((!isPositiveNumber(raw.maxTokens) || hasPreviousBundledMetadata && raw.maxTokens !== catalogEntry.maxTokens) && isPositiveNumber(catalogEntry.maxTokens)) {
|
|
44
107
|
patched.maxTokens = catalogEntry.maxTokens;
|
|
45
108
|
modelMutated = true;
|
|
46
109
|
}
|
|
47
|
-
if (!hasCostValues(raw.cost) && hasCostValues(catalogEntry.cost)) {
|
|
110
|
+
if ((!hasCostValues(raw.cost) || hasPreviousBundledMetadata) && hasCostValues(catalogEntry.cost) && !hasSameCost(raw.cost, catalogEntry.cost)) {
|
|
48
111
|
patched.cost = catalogEntry.cost;
|
|
49
112
|
modelMutated = true;
|
|
50
113
|
}
|
package/dist/stream.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as isDeepSeekV4ModelRef } from "./models-
|
|
1
|
+
import { a as isDeepSeekV4ModelRef } from "./models-BHPq26BW.js";
|
|
2
2
|
import { createDeepSeekV4OpenAICompatibleThinkingWrapper } from "openclaw/plugin-sdk/provider-stream-shared";
|
|
3
3
|
//#region extensions/deepseek/stream.ts
|
|
4
4
|
function createDeepSeekV4ThinkingWrapper(baseStreamFn, thinkingLevel) {
|
package/dist/thinking.js
CHANGED
package/npm-shrinkwrap.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openclaw/deepseek-provider",
|
|
3
|
-
"version": "2026.7.
|
|
3
|
+
"version": "2026.7.2-beta.1",
|
|
4
4
|
"lockfileVersion": 3,
|
|
5
5
|
"requires": true,
|
|
6
6
|
"packages": {
|
|
7
7
|
"": {
|
|
8
8
|
"name": "@openclaw/deepseek-provider",
|
|
9
|
-
"version": "2026.7.
|
|
9
|
+
"version": "2026.7.2-beta.1"
|
|
10
10
|
}
|
|
11
11
|
}
|
|
12
12
|
}
|
package/openclaw.plugin.json
CHANGED
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"cost": {
|
|
40
40
|
"input": 0.14,
|
|
41
41
|
"output": 0.28,
|
|
42
|
-
"cacheRead": 0.
|
|
42
|
+
"cacheRead": 0.0028,
|
|
43
43
|
"cacheWrite": 0
|
|
44
44
|
},
|
|
45
45
|
"compat": {
|
|
@@ -56,9 +56,9 @@
|
|
|
56
56
|
"contextWindow": 1000000,
|
|
57
57
|
"maxTokens": 384000,
|
|
58
58
|
"cost": {
|
|
59
|
-
"input":
|
|
60
|
-
"output":
|
|
61
|
-
"cacheRead": 0.
|
|
59
|
+
"input": 0.435,
|
|
60
|
+
"output": 0.87,
|
|
61
|
+
"cacheRead": 0.003625,
|
|
62
62
|
"cacheWrite": 0
|
|
63
63
|
},
|
|
64
64
|
"compat": {
|
|
@@ -71,12 +71,12 @@
|
|
|
71
71
|
"id": "deepseek-chat",
|
|
72
72
|
"name": "DeepSeek Chat",
|
|
73
73
|
"input": ["text"],
|
|
74
|
-
"contextWindow":
|
|
75
|
-
"maxTokens":
|
|
74
|
+
"contextWindow": 1000000,
|
|
75
|
+
"maxTokens": 384000,
|
|
76
76
|
"cost": {
|
|
77
|
-
"input": 0.
|
|
78
|
-
"output": 0.
|
|
79
|
-
"cacheRead": 0.
|
|
77
|
+
"input": 0.14,
|
|
78
|
+
"output": 0.28,
|
|
79
|
+
"cacheRead": 0.0028,
|
|
80
80
|
"cacheWrite": 0
|
|
81
81
|
},
|
|
82
82
|
"compat": {
|
|
@@ -89,12 +89,12 @@
|
|
|
89
89
|
"name": "DeepSeek Reasoner",
|
|
90
90
|
"reasoning": true,
|
|
91
91
|
"input": ["text"],
|
|
92
|
-
"contextWindow":
|
|
93
|
-
"maxTokens":
|
|
92
|
+
"contextWindow": 1000000,
|
|
93
|
+
"maxTokens": 384000,
|
|
94
94
|
"cost": {
|
|
95
|
-
"input": 0.
|
|
96
|
-
"output": 0.
|
|
97
|
-
"cacheRead": 0.
|
|
95
|
+
"input": 0.14,
|
|
96
|
+
"output": 0.28,
|
|
97
|
+
"cacheRead": 0.0028,
|
|
98
98
|
"cacheWrite": 0
|
|
99
99
|
},
|
|
100
100
|
"compat": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openclaw/deepseek-provider",
|
|
3
|
-
"version": "2026.7.
|
|
3
|
+
"version": "2026.7.2-beta.1",
|
|
4
4
|
"description": "OpenClaw DeepSeek 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.7.
|
|
21
|
+
"pluginApi": ">=2026.7.2-beta.1"
|
|
22
22
|
},
|
|
23
23
|
"build": {
|
|
24
|
-
"openclawVersion": "2026.7.
|
|
24
|
+
"openclawVersion": "2026.7.2-beta.1",
|
|
25
25
|
"bundledDist": false
|
|
26
26
|
},
|
|
27
27
|
"release": {
|
|
@@ -39,7 +39,7 @@
|
|
|
39
39
|
"README.md"
|
|
40
40
|
],
|
|
41
41
|
"peerDependencies": {
|
|
42
|
-
"openclaw": ">=2026.7.
|
|
42
|
+
"openclaw": ">=2026.7.2-beta.1"
|
|
43
43
|
},
|
|
44
44
|
"peerDependenciesMeta": {
|
|
45
45
|
"openclaw": {
|