dsh-qoder-connect 0.1.8 → 0.1.9
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/lib/bin.js +1 -1
- package/lib/client.js +247 -22
- package/lib/index.js +750 -117
- package/lib/{variants-DE76gF0Y.js → variants-C8ezztjV.js} +11 -2
- package/package.json +120 -116
|
@@ -362,6 +362,15 @@ function qoderOwnAuthPath(variant) {
|
|
|
362
362
|
/** Plugin-owned status endpoint consumed by its browser half. */
|
|
363
363
|
const QODER_STATUS_PATH = "/plugins/dsh-qoder-connect/status";
|
|
364
364
|
/**
|
|
365
|
+
* Plugin-owned settings endpoint consumed by its browser half.
|
|
366
|
+
*
|
|
367
|
+
* GET answers the whole entry configuration as three layers (value/base/user)
|
|
368
|
+
* plus the write key; POST applies one patch. This is the plugin's own settings
|
|
369
|
+
* surface, replacing writes through the host's settings service — see
|
|
370
|
+
* {@link ./settings-store.ts} for why.
|
|
371
|
+
*/
|
|
372
|
+
const QODER_SETTINGS_FACE_PATH = "/plugins/dsh-qoder-connect/settings";
|
|
373
|
+
/**
|
|
365
374
|
* Plugin-owned probe control endpoint.
|
|
366
375
|
*
|
|
367
376
|
* Separate from the status route because it accepts writes: the status route's
|
|
@@ -4266,7 +4275,7 @@ const DEFAULT_MAX_TOKENS = 32768;
|
|
|
4266
4275
|
const DEFAULT_CONTEXT_WINDOW = 18e4;
|
|
4267
4276
|
//#endregion
|
|
4268
4277
|
//#region src/version.ts
|
|
4269
|
-
const QODER_CONNECT_VERSION = "0.1.
|
|
4278
|
+
const QODER_CONNECT_VERSION = "0.1.9";
|
|
4270
4279
|
//#endregion
|
|
4271
4280
|
//#region src/host-heartbeat.ts
|
|
4272
4281
|
/**
|
|
@@ -4463,4 +4472,4 @@ function variantFor(id) {
|
|
|
4463
4472
|
return QODER_VARIANTS.find((variant) => variant.id === id);
|
|
4464
4473
|
}
|
|
4465
4474
|
//#endregion
|
|
4466
|
-
export { QODER_GLOBAL_AUTH_PATH as A,
|
|
4475
|
+
export { QODER_GLOBAL_AUTH_PATH as A, patTail as B, probeModel as C, FALLBACK_QODER_MODELS as D, qoderCatalogPath as E, QODER_STATUS_PATH as F, qoderMachineIdPath as G, qoderOwnAuthPath as H, QODER_AUTH_FILENAME as I, qoderPluginDataDir as K, QODER_PAT_ENV_CN as L, QODER_GLOBAL_STATUS_PATH as M, QODER_PROBE_PATH as N, QoderCatalog as O, QODER_SETTINGS_FACE_PATH as P, QODER_PAT_ENV_GLOBAL as R, PROBE_EFFORT_CANDIDATES as S, QoderCatalogStore as T, QODER_DATA_DIR_ENV as U, qoderCredentialIdentity as V, QODER_DATA_DIR_NAME as W, modelInfoOf as _, QODER_HOST_HEARTBEAT_FILENAME as a, createQoderTransport as b, processStartTimeMs as c, writeHostHeartbeat as d, QODER_CONNECT_VERSION as f, kindFromQoderFailure as g, classifyUpstreamError as h, variantFor as i, QODER_GLOBAL_PROBE_PATH as j, QODER_AUTH_PATH as k, qoderHostHeartbeatPath as l, QoderUpstreamClient as m, GLOBAL_VARIANT as n, clearHostHeartbeat as o, KIND_STATUS as p, qoderStateDir as q, QODER_VARIANTS as r, isHeartbeatProcessAlive as s, CHINA_VARIANT as t, readHostHeartbeat as u, normalizeCredits as v, randomSentinel as w, getMachineId as x, validateApiKey as y, QoderCredentialStore as z };
|
package/package.json
CHANGED
|
@@ -1,116 +1,120 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "dsh-qoder-connect",
|
|
3
|
-
"displayName": "DSH Qoder Connect",
|
|
4
|
-
"description": "将 Qoder(国内版 / 国际版)的模型接入 DeepSeek Harness — bring Qoder (CN & international) models into DeepSeek Harness.",
|
|
5
|
-
"version": "0.1.
|
|
6
|
-
"author": "corrinehu",
|
|
7
|
-
"keywords": [
|
|
8
|
-
"dsh-plugin",
|
|
9
|
-
"deepseek-harness",
|
|
10
|
-
"deepseek",
|
|
11
|
-
"qoder",
|
|
12
|
-
"model-provider"
|
|
13
|
-
],
|
|
14
|
-
"type": "module",
|
|
15
|
-
"engines": {
|
|
16
|
-
"
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
"
|
|
26
|
-
"
|
|
27
|
-
"test
|
|
28
|
-
"
|
|
29
|
-
"
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
"
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
"./
|
|
38
|
-
"./
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
"
|
|
43
|
-
"
|
|
44
|
-
"
|
|
45
|
-
"README.
|
|
46
|
-
"
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
"
|
|
50
|
-
|
|
51
|
-
"
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
"
|
|
55
|
-
"
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
"@deepseek-ai/dsh-api-
|
|
63
|
-
"@deepseek-ai/dsh-
|
|
64
|
-
"@deepseek-ai/dsh-client-ui-
|
|
65
|
-
"@deepseek-ai/dsh-client-ui-settings",
|
|
66
|
-
"@deepseek-ai/dsh-client-ui-
|
|
67
|
-
"@deepseek-ai/dsh-client-ui-
|
|
68
|
-
"@deepseek-ai/dsh-client-ui-
|
|
69
|
-
"@deepseek-ai/dsh-client-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
"@deepseek-ai/
|
|
77
|
-
"@deepseek-ai/dsh-
|
|
78
|
-
"@deepseek-ai/dsh-
|
|
79
|
-
"@deepseek-ai/dsh-
|
|
80
|
-
"@deepseek-ai/dsh-
|
|
81
|
-
"@deepseek-ai/dsh-llm
|
|
82
|
-
"@deepseek-ai/dsh-
|
|
83
|
-
"@deepseek-ai/
|
|
84
|
-
"@
|
|
85
|
-
"
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
"@deepseek-ai/
|
|
90
|
-
"@deepseek-ai/dsh-
|
|
91
|
-
"@deepseek-ai/dsh-
|
|
92
|
-
"@deepseek-ai/dsh-client-
|
|
93
|
-
"@deepseek-ai/dsh-client-ui-
|
|
94
|
-
"@deepseek-ai/dsh-client-ui-
|
|
95
|
-
"@deepseek-ai/dsh-client-ui-
|
|
96
|
-
"@deepseek-ai/dsh-client-ui-settings
|
|
97
|
-
"@deepseek-ai/dsh-client-ui-
|
|
98
|
-
"@deepseek-ai/dsh-client-ui-
|
|
99
|
-
"@deepseek-ai/dsh-
|
|
100
|
-
"@deepseek-ai/dsh-
|
|
101
|
-
"@deepseek-ai/dsh-
|
|
102
|
-
"@deepseek-ai/dsh-
|
|
103
|
-
"@deepseek-ai/dsh-llm
|
|
104
|
-
"@deepseek-ai/dsh-
|
|
105
|
-
"@deepseek-ai/
|
|
106
|
-
"@
|
|
107
|
-
"@
|
|
108
|
-
"@types/
|
|
109
|
-
"@types/react
|
|
110
|
-
"react": "^18.
|
|
111
|
-
"react
|
|
112
|
-
"
|
|
113
|
-
"
|
|
114
|
-
"
|
|
115
|
-
|
|
116
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "dsh-qoder-connect",
|
|
3
|
+
"displayName": "DSH Qoder Connect",
|
|
4
|
+
"description": "将 Qoder(国内版 / 国际版)的模型接入 DeepSeek Harness — bring Qoder (CN & international) models into DeepSeek Harness.",
|
|
5
|
+
"version": "0.1.9",
|
|
6
|
+
"author": "corrinehu",
|
|
7
|
+
"keywords": [
|
|
8
|
+
"dsh-plugin",
|
|
9
|
+
"deepseek-harness",
|
|
10
|
+
"deepseek",
|
|
11
|
+
"qoder",
|
|
12
|
+
"model-provider"
|
|
13
|
+
],
|
|
14
|
+
"type": "module",
|
|
15
|
+
"engines": {
|
|
16
|
+
"dsh": ">=0.1.5-rc.2",
|
|
17
|
+
"node": "^22.19.0 || >=24.0.0"
|
|
18
|
+
},
|
|
19
|
+
"main": "lib/index.js",
|
|
20
|
+
"types": "lib/index.d.ts",
|
|
21
|
+
"bin": {
|
|
22
|
+
"dsh-qoder-connect": "lib/bin.js"
|
|
23
|
+
},
|
|
24
|
+
"scripts": {
|
|
25
|
+
"prepack": "npm run build",
|
|
26
|
+
"build": "tsdown",
|
|
27
|
+
"test": "node -r ./tests/sandbox-shim.cjs ./node_modules/vitest/vitest.mjs run",
|
|
28
|
+
"test:qoder": "node --test --test-isolation=none --experimental-strip-types tests/qoder/*.test.ts",
|
|
29
|
+
"typecheck": "tsc -p tsconfig.json && tsc -p tsconfig.client.json",
|
|
30
|
+
"check": "pnpm run typecheck && pnpm run test && pnpm run test:qoder && pnpm run build"
|
|
31
|
+
},
|
|
32
|
+
"exports": {
|
|
33
|
+
".": {
|
|
34
|
+
"types": "./lib/index.d.ts",
|
|
35
|
+
"default": "./lib/index.js"
|
|
36
|
+
},
|
|
37
|
+
"./client": "./lib/client.js",
|
|
38
|
+
"./cordis.patch.yml": "./cordis.patch.yml",
|
|
39
|
+
"./package.json": "./package.json"
|
|
40
|
+
},
|
|
41
|
+
"files": [
|
|
42
|
+
"lib",
|
|
43
|
+
"assets",
|
|
44
|
+
"cordis.patch.yml",
|
|
45
|
+
"README.md",
|
|
46
|
+
"README.en.md",
|
|
47
|
+
"LICENSE"
|
|
48
|
+
],
|
|
49
|
+
"license": "MIT",
|
|
50
|
+
"repository": {
|
|
51
|
+
"type": "git",
|
|
52
|
+
"url": "git+https://github.com/masknull/dsh-qoder-connect.git"
|
|
53
|
+
},
|
|
54
|
+
"homepage": "https://github.com/masknull/dsh-qoder-connect#readme",
|
|
55
|
+
"bugs": "https://github.com/masknull/dsh-qoder-connect/issues",
|
|
56
|
+
"dsh": {
|
|
57
|
+
"bundle": {
|
|
58
|
+
"patch": "./cordis.patch.yml"
|
|
59
|
+
},
|
|
60
|
+
"client": {
|
|
61
|
+
"inject": [
|
|
62
|
+
"@deepseek-ai/dsh-api-remotes",
|
|
63
|
+
"@deepseek-ai/dsh-api-session-controller",
|
|
64
|
+
"@deepseek-ai/dsh-client-ui-renderer",
|
|
65
|
+
"@deepseek-ai/dsh-client-ui-settings-plugins",
|
|
66
|
+
"@deepseek-ai/dsh-client-ui-settings",
|
|
67
|
+
"@deepseek-ai/dsh-client-ui-conversation",
|
|
68
|
+
"@deepseek-ai/dsh-client-ui-model-selection",
|
|
69
|
+
"@deepseek-ai/dsh-client-ui-sidebar",
|
|
70
|
+
"@deepseek-ai/dsh-client-locale"
|
|
71
|
+
],
|
|
72
|
+
"platform": "web"
|
|
73
|
+
}
|
|
74
|
+
},
|
|
75
|
+
"peerDependencies": {
|
|
76
|
+
"@deepseek-ai/cordis": "^4.0.2",
|
|
77
|
+
"@deepseek-ai/dsh-atomic-write": "^0.1.5-rc.1",
|
|
78
|
+
"@deepseek-ai/dsh-attachment": "^0.1.5-rc.1",
|
|
79
|
+
"@deepseek-ai/dsh-home-paths": "^0.1.5-rc.1",
|
|
80
|
+
"@deepseek-ai/dsh-host-webserver": "^0.1.5-rc.1",
|
|
81
|
+
"@deepseek-ai/dsh-llm": "^0.1.5-rc.1",
|
|
82
|
+
"@deepseek-ai/dsh-llm-pi-ai": "^0.1.5-rc.1",
|
|
83
|
+
"@deepseek-ai/dsh-settings": "^0.1.5-rc.1",
|
|
84
|
+
"@deepseek-ai/schemastery": "^3.18.2",
|
|
85
|
+
"@earendil-works/pi-ai": "^0.85.1",
|
|
86
|
+
"react": "^18.2.0"
|
|
87
|
+
},
|
|
88
|
+
"devDependencies": {
|
|
89
|
+
"@deepseek-ai/cordis": "^4.0.2",
|
|
90
|
+
"@deepseek-ai/dsh-atomic-write": "^0.1.5-rc.1",
|
|
91
|
+
"@deepseek-ai/dsh-attachment": "^0.1.5-rc.1",
|
|
92
|
+
"@deepseek-ai/dsh-client-locale": "^0.1.5-rc.1",
|
|
93
|
+
"@deepseek-ai/dsh-client-ui-conversation": "0.1.5-rc.1",
|
|
94
|
+
"@deepseek-ai/dsh-client-ui-model-selection": "0.1.5-rc.1",
|
|
95
|
+
"@deepseek-ai/dsh-client-ui-renderer": "^0.1.5-rc.1",
|
|
96
|
+
"@deepseek-ai/dsh-client-ui-settings": "^0.1.5-rc.1",
|
|
97
|
+
"@deepseek-ai/dsh-client-ui-settings-plugins": "^0.1.5-rc.1",
|
|
98
|
+
"@deepseek-ai/dsh-client-ui-sidebar": "^0.1.5-rc.1",
|
|
99
|
+
"@deepseek-ai/dsh-client-ui-slots": "^0.1.5-rc.1",
|
|
100
|
+
"@deepseek-ai/dsh-credentials": "^0.1.5-rc.1",
|
|
101
|
+
"@deepseek-ai/dsh-home-paths": "^0.1.5-rc.1",
|
|
102
|
+
"@deepseek-ai/dsh-host-webserver": "^0.1.5-rc.1",
|
|
103
|
+
"@deepseek-ai/dsh-llm": "^0.1.5-rc.1",
|
|
104
|
+
"@deepseek-ai/dsh-llm-pi-ai": "^0.1.5-rc.1",
|
|
105
|
+
"@deepseek-ai/dsh-settings": "^0.1.5-rc.1",
|
|
106
|
+
"@deepseek-ai/schemastery": "^3.18.2",
|
|
107
|
+
"@earendil-works/pi-ai": "^0.85.1",
|
|
108
|
+
"@types/node": "^22.20.0",
|
|
109
|
+
"@types/react": "~18.3.1",
|
|
110
|
+
"@types/react-test-renderer": "^18.3.1",
|
|
111
|
+
"react": "^18.2.0",
|
|
112
|
+
"react-test-renderer": "18.3.1",
|
|
113
|
+
"tsdown": "^0.22.2",
|
|
114
|
+
"typescript": "^5.9.3",
|
|
115
|
+
"vitest": "^4.1.8"
|
|
116
|
+
},
|
|
117
|
+
"dependencies": {
|
|
118
|
+
"js-yaml": "^4.1.0"
|
|
119
|
+
}
|
|
120
|
+
}
|