dsh-codex-subscription 2.1.4 → 2.1.5-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/README.en.md +37 -91
- package/README.md +37 -91
- package/compatibility.json +2 -1
- package/icon-subscription.webp +0 -0
- package/lib/client.js +1 -1
- package/lib/index.js +5 -3
- package/package.json +20 -18
package/README.en.md
CHANGED
|
@@ -26,18 +26,11 @@ Compatible with the settings and UI changes in DSH `0.1.7-alpha.1`, while retain
|
|
|
26
26
|
|
|
27
27
|
## Three-step start
|
|
28
28
|
|
|
29
|
-
1. **Install the plugin.**
|
|
30
|
-
|
|
31
|
-
For older DSH or terminal use, run:
|
|
32
|
-
|
|
33
|
-
```sh
|
|
34
|
-
dsh plugin --profile web add dsh-codex-subscription
|
|
35
|
-
```
|
|
36
|
-
|
|
29
|
+
1. **Install the plugin.** Open **Plugins → Add plugin**, enter `dsh-codex-subscription` in **Package name or address**, and click **Install**.
|
|
37
30
|
2. **Sign in.** Follow the installation result; save your work and restart only if requested. Open **Settings -> Codex**, and choose browser sign-in. No Codex CLI and no pasted token are required.
|
|
38
31
|
3. **Use Codex.** Select a Codex model. Quota, subscription search, image generation, and Fast mode remain inside DSH.
|
|
39
32
|
|
|
40
|
-
|
|
33
|
+
See below for detailed installation steps, terminal commands, updates, and removal.
|
|
41
34
|
|
|
42
35
|
## Why this plugin
|
|
43
36
|
|
|
@@ -45,7 +38,7 @@ DSH-Portable exposes the same standard plugin command, so the command above also
|
|
|
45
38
|
| --- | --- |
|
|
46
39
|
| **Subscription models** | Sign in to ChatGPT and use Codex without an OpenAI API key or Codex CLI |
|
|
47
40
|
| **Recoverable and diagnosable** | Sign-in state reconciles automatically; failed reads can be retried in place, while timeouts and stale account responses cannot overwrite current state; Settings can create a support report without credentials or account identifiers |
|
|
48
|
-
| **Visible quota** | Keep backend-provided standard Codex, Spark, and other limits separate |
|
|
41
|
+
| **Visible quota** | Keep backend-provided standard Codex, Spark, and other limits separate, with reset times |
|
|
49
42
|
| **Composer quota** | Choose a compact percentage, progress bar, Beta runway forecast, or no inline display |
|
|
50
43
|
| **Safe quota reset** | See each reset credit separately and deliberately try one with a cooldown and acknowledgement |
|
|
51
44
|
| **Subscription search** | Explicitly route search globally through DSH default search or the signed-in Codex subscription |
|
|
@@ -73,72 +66,44 @@ This plugin supports the latest DeepSeek Harness release recorded in its package
|
|
|
73
66
|
|
|
74
67
|
## Install
|
|
75
68
|
|
|
76
|
-
###
|
|
69
|
+
### Install from the Plugins page (recommended)
|
|
77
70
|
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
```
|
|
71
|
+
1. Open **Plugins → Add plugin** in DSH.
|
|
72
|
+
2. Paste this package name into the **Package name or address** field:
|
|
81
73
|
|
|
82
|
-
|
|
74
|
+
```text
|
|
75
|
+
dsh-codex-subscription
|
|
76
|
+
```
|
|
83
77
|
|
|
84
|
-
|
|
78
|
+
3. Click **Install** and wait for completion. Follow the page instructions; save your work before restarting if requested.
|
|
79
|
+
4. Open **Settings → Codex**, sign in to ChatGPT, then select a Codex model in your conversation.
|
|
85
80
|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
```sh
|
|
89
|
-
dsh plugin --profile headless add dsh-codex-subscription
|
|
90
|
-
dsh --profile headless "Reply with only the word: ok"
|
|
91
|
-
```
|
|
81
|
+
The unversioned package name installs the latest stable release. To select a version, enter `dsh-codex-subscription@2.1.4`; for a beta, use the complete version from its release notes. Enter only the package name here, not a terminal command. This plugin can be installed using its npm package name; no GitHub URL or local directory is needed.
|
|
92
82
|
|
|
93
83
|
<details>
|
|
94
|
-
<summary>
|
|
95
|
-
|
|
96
|
-
The official `npx @deepseek-ai/dsh web` command does not create a global `dsh` command. Keep the full `npx` prefix when installing the plugin:
|
|
84
|
+
<summary>Terminal installation (with an existing dsh command)</summary>
|
|
97
85
|
|
|
98
86
|
```sh
|
|
99
|
-
|
|
100
|
-
npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web list dsh-codex-subscription --depth 0
|
|
101
|
-
npx -y @deepseek-ai/dsh@0.1.5-rc.2 --profile web --dump-config
|
|
87
|
+
dsh plugin --profile web add dsh-codex-subscription
|
|
102
88
|
```
|
|
103
89
|
|
|
90
|
+
Follow the restart instructions, then sign in under **Settings → Codex**. Both the Plugins page and the terminal use DSH's installation management.
|
|
91
|
+
|
|
104
92
|
</details>
|
|
105
93
|
|
|
106
94
|
<details>
|
|
107
|
-
<summary>
|
|
95
|
+
<summary>Headless tasks</summary>
|
|
96
|
+
|
|
97
|
+
After signing in and selecting a Codex model in Web, install the same plugin in the Headless profile:
|
|
108
98
|
|
|
109
99
|
```sh
|
|
110
|
-
dsh plugin --profile
|
|
111
|
-
dsh
|
|
112
|
-
dsh --profile web --dump-config
|
|
100
|
+
dsh plugin --profile headless add dsh-codex-subscription
|
|
101
|
+
dsh --profile headless "Reply with only the word: ok"
|
|
113
102
|
```
|
|
114
103
|
|
|
115
|
-
The plugin list should contain one `dsh-codex-subscription`, and the config should contain one `codex-subscription` entry.
|
|
116
|
-
|
|
117
104
|
</details>
|
|
118
105
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
1. Open **Settings -> Codex**.
|
|
122
|
-
2. Sign in with a ChatGPT account that has Codex access.
|
|
123
|
-
3. Choose a search source.
|
|
124
|
-
4. Select a Codex model.
|
|
125
|
-
|
|
126
|
-
## Features
|
|
127
|
-
|
|
128
|
-
- ChatGPT OAuth sign-in with credentials kept on the host; accounts are identified by a privacy-masked email that can be clicked to reveal, and can be manually added, switched, or removed without automatic rotation or quota pooling;
|
|
129
|
-
- Codex models and Beta image generation/editing directly inside DSH conversations;
|
|
130
|
-
- A clear global choice between DSH default search and Codex subscription search; it applies to every model and session rather than following the selected model;
|
|
131
|
-
- Actual backend-provided quota, reset time, and freshness;
|
|
132
|
-
- Separate standard Codex, Codex-Spark, Credits, and other independent limits;
|
|
133
|
-
- One row per available quota reset with its disclosed name and expiry, plus deliberate early redemption, layered confirmation, and no automatic retry;
|
|
134
|
-
- Optional percentage, progress bar, or Beta runway estimate for the selected Codex model (off by default);
|
|
135
|
-
- Standard or Fast mode for supported Codex models directly in the composer;
|
|
136
|
-
- Standard, Extended, and per-model Custom context windows; Custom accepts a full numeric token count, stays within each audited model capacity, and feeds DSH's native agent compaction policy;
|
|
137
|
-
- A copyable support report and direct feedback link in Settings; the report includes bounded request stages, HTTP/transport classes, elapsed ranges, and route source types while excluding OAuth credentials, account identifiers, and authorization timestamps;
|
|
138
|
-
- Visible errors when subscription routing is unavailable, with no silent paid fallback.
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
Subscription chat and native DSH subtasks do not require the Codex runtime. Updating to 2.1.3 removes the runtime previously pulled in automatically when no other dependency requires it. An explicitly installed component can be removed in Advanced settings. Switching back to DSH does not uninstall it, and uninstalling does not automatically clear the host’s shared download cache.
|
|
106
|
+
## Feature details
|
|
142
107
|
|
|
143
108
|
### Add instructions while a task is running
|
|
144
109
|
|
|
@@ -258,7 +223,7 @@ With a supported Codex model selected, open the composer's model menu to choose
|
|
|
258
223
|
Standard adds no icon; only Fast shows a lightning icon before the model name. Spark does not show the speed entry. Fast mode increases speed and uses more Credits;
|
|
259
224
|
see the [OpenAI Codex Speed documentation](https://learn.chatgpt.com/docs/agent-configuration/speed) for the current rules.
|
|
260
225
|
|
|
261
|
-
### Advanced experiments
|
|
226
|
+
### Advanced experiments
|
|
262
227
|
|
|
263
228
|
Opt in under **Advanced & diagnostics**. SSE and DSH subtasks remain the defaults:
|
|
264
229
|
|
|
@@ -275,19 +240,20 @@ In **Settings → Codex → Advanced → Independent subtasks**, click **Install
|
|
|
275
240
|
|
|
276
241
|

|
|
277
242
|
|
|
278
|
-
|
|
243
|
+
Prefer **Install component** above: the plugin selects a verified component version. The current stable release, **2.1.4**, uses `0.1.5-rc.2`. Do not omit the version or substitute `@next`. `2.1.5-beta.1` installs `0.1.5-rc.3` by default and remains compatible with an existing rc.2 installation.
|
|
244
|
+
|
|
245
|
+
<details>
|
|
246
|
+
<summary>Manual installation on older hosts and offline preparation</summary>
|
|
247
|
+
|
|
248
|
+
Enter `@deepseek-ai/dsh-subagent-codex@0.1.5-rc.2` in the plugin installer, or run:
|
|
279
249
|
|
|
280
250
|
```sh
|
|
281
251
|
dsh plugin --profile web add @deepseek-ai/dsh-subagent-codex@0.1.5-rc.2
|
|
282
252
|
```
|
|
283
253
|
|
|
284
|
-
|
|
254
|
+
Use the same profile as the subscription plugin and restart afterwards. Offline preparation requires a complete runtime installed and verified on the target OS and architecture; copying only the subscription plugin or Codex launcher is insufficient. Model requests still need connectivity.
|
|
285
255
|
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
**Upgrading an existing installation:** if you use Codex subtasks, run the preparation command before upgrading this plugin to retain the runtime explicitly in the same profile. A runtime only installed transitively by an older version may be removed during dependency reconciliation. The same command repairs an already-upgraded installation; restart afterwards.
|
|
289
|
-
|
|
290
|
-
The runtime version is pinned separately; subscription updates do not silently upgrade it. This integration uses the official provider package-local CLI, never searches PATH or desktop-private runtimes, and removes the component only after an explicit uninstall request. Shared package caches are not deleted.
|
|
256
|
+
</details>
|
|
291
257
|
|
|
292
258
|
### When you no longer need it
|
|
293
259
|
|
|
@@ -307,46 +273,26 @@ Uninstalling does not clear shared package caches or guarantee a fixed amount of
|
|
|
307
273
|
|
|
308
274
|
## Update and uninstall
|
|
309
275
|
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
```sh
|
|
313
|
-
dsh plugin --profile web update dsh-codex-subscription
|
|
314
|
-
dsh plugin --profile web list dsh-codex-subscription --depth 0
|
|
315
|
-
dsh --profile web --dump-config
|
|
316
|
-
```
|
|
317
|
-
|
|
318
|
-
### Uninstall
|
|
319
|
-
|
|
320
|
-
Run this only when you want to remove the plugin:
|
|
321
|
-
|
|
322
|
-
```sh
|
|
323
|
-
dsh plugin --profile web remove dsh-codex-subscription
|
|
324
|
-
```
|
|
325
|
-
|
|
326
|
-
These operations preserve the DSH profile, other plugins, and saved sign-in.
|
|
276
|
+
Find this plugin on the DSH **Plugins** page and use its update or uninstall action. Follow any restart instructions. Uninstalling this plugin does not remove other plugins.
|
|
327
277
|
|
|
328
278
|
<details>
|
|
329
|
-
<summary>
|
|
330
|
-
|
|
331
|
-
### Update and verify
|
|
279
|
+
<summary>Terminal commands</summary>
|
|
332
280
|
|
|
333
281
|
```sh
|
|
334
|
-
|
|
335
|
-
npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web list dsh-codex-subscription --depth 0
|
|
336
|
-
npx -y @deepseek-ai/dsh@0.1.5-rc.2 --profile web --dump-config
|
|
282
|
+
dsh plugin --profile web update dsh-codex-subscription
|
|
337
283
|
```
|
|
338
284
|
|
|
339
|
-
|
|
285
|
+
Run only when you want to uninstall:
|
|
340
286
|
|
|
341
287
|
```sh
|
|
342
|
-
|
|
288
|
+
dsh plugin --profile web remove dsh-codex-subscription
|
|
343
289
|
```
|
|
344
290
|
|
|
345
291
|
</details>
|
|
346
292
|
|
|
347
293
|
## Troubleshooting
|
|
348
294
|
|
|
349
|
-
- **`dsh` is not recognized:**
|
|
295
|
+
- **`dsh` is not recognized:** install from the DSH Plugins page; no terminal setup is needed.
|
|
350
296
|
- **More than one DSH exists:** run the standard command from the intended DSH environment so that product selects the corresponding profile;
|
|
351
297
|
- **Setup still fails:** confirm the command is running in the intended DSH environment. Do not delete the profile or change the system PATH to force an install.
|
|
352
298
|
- **Need to report a problem:** generate a **Support diagnostics** report at the bottom of Settings, then open the [bug report form](https://github.com/WSL043/dsh-codex-subscription/issues/new?template=install-problem.yml). The report includes the OS/runtime, bounded sign-in phase, and safe request-failure categories, but excludes credentials, account identifiers, raw responses, and full logs. Paste it into the required diagnostics field; never attach sign-in URLs, authorization codes, or browser callback addresses.
|
package/README.md
CHANGED
|
@@ -27,18 +27,11 @@
|
|
|
27
27
|
|
|
28
28
|
## 三步开始
|
|
29
29
|
|
|
30
|
-
1.
|
|
31
|
-
|
|
32
|
-
旧版 DSH 或偏好终端操作时,才在终端运行:
|
|
33
|
-
|
|
34
|
-
```sh
|
|
35
|
-
dsh plugin --profile web add dsh-codex-subscription
|
|
36
|
-
```
|
|
37
|
-
|
|
30
|
+
1. **安装插件**:打开 **插件 → 添加插件**,在 **包名或地址** 中填写 `dsh-codex-subscription`,点击 **安装**。
|
|
38
31
|
2. **登录订阅**:按安装结果提示操作;若提示需要重启,先保存工作再重启。打开 **设置 -> Codex 订阅**,点击浏览器登录。无需 Codex CLI,也不要粘贴 token。
|
|
39
32
|
3. **开始使用**:在模型选择器中选择 Codex;额度、订阅搜索、图片生成和高速模式都在 DSH 内使用。
|
|
40
33
|
|
|
41
|
-
|
|
34
|
+
详细安装步骤、终端方式以及更新与卸载说明见下文。
|
|
42
35
|
|
|
43
36
|
## 核心优势
|
|
44
37
|
|
|
@@ -46,7 +39,7 @@ DSH-Portable 也提供相同的标准插件命令,因此同样使用上面的
|
|
|
46
39
|
| --- | --- |
|
|
47
40
|
| **订阅模型直连** | 登录 ChatGPT 后直接使用 Codex,不需要 OpenAI API Key 或 Codex CLI |
|
|
48
41
|
| **可恢复、可诊断** | 登录状态会自动对账;读取失败时可在原处重试,超时和旧账号响应不会覆盖当前状态;设置页可生成不含凭据和账号标识的支持报告 |
|
|
49
|
-
| **额度可见** | 普通 Codex、Spark
|
|
42
|
+
| **额度可见** | 普通 Codex、Spark 等服务端实际返回的额度分开显示,并显示重置时间 |
|
|
50
43
|
| **输入框额度** | 可选择紧凑百分比、进度条、Beta 续航预测或关闭显示 |
|
|
51
44
|
| **安全额度重置** | 每张重置卡单独显示,并通过冷静期和知情确认主动尝试重置 |
|
|
52
45
|
| **订阅搜索** | 可将全部模型的搜索明确路由到 DSH 默认搜索或已登录的 Codex 订阅 |
|
|
@@ -74,72 +67,44 @@ DSH-Portable 也提供相同的标准插件命令,因此同样使用上面的
|
|
|
74
67
|
|
|
75
68
|
## 安装
|
|
76
69
|
|
|
77
|
-
###
|
|
70
|
+
### 在插件页面安装(推荐)
|
|
78
71
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
```
|
|
72
|
+
1. 打开 DSH 的 **插件 → 添加插件**。
|
|
73
|
+
2. 在 **包名或地址** 输入框中粘贴下面的包名:
|
|
82
74
|
|
|
83
|
-
|
|
75
|
+
```text
|
|
76
|
+
dsh-codex-subscription
|
|
77
|
+
```
|
|
84
78
|
|
|
85
|
-
|
|
79
|
+
3. 点击 **安装**,等待安装完成;按页面提示操作,需要重启时先保存工作。
|
|
80
|
+
4. 打开 **设置 → Codex 订阅**,登录 ChatGPT,然后在会话中选择 Codex 模型。
|
|
86
81
|
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
```sh
|
|
90
|
-
dsh plugin --profile headless add dsh-codex-subscription
|
|
91
|
-
dsh --profile headless "只回复:ok"
|
|
92
|
-
```
|
|
82
|
+
包名不带版本号时安装最新正式版。指定版本时填写 `dsh-codex-subscription@2.1.4`;测试版则使用对应发布说明中的完整版本号。此处只填包名,不要粘贴整条终端命令。安装本插件使用上面的 npm 包名即可,无需填写 GitHub 地址或本地目录。
|
|
93
83
|
|
|
94
84
|
<details>
|
|
95
|
-
<summary
|
|
96
|
-
|
|
97
|
-
官方的 `npx @deepseek-ai/dsh web` 不会创建全局 `dsh` 命令,因此安装插件时也要保留完整的 `npx` 前缀:
|
|
85
|
+
<summary>终端安装(已能运行 dsh 命令)</summary>
|
|
98
86
|
|
|
99
87
|
```sh
|
|
100
|
-
|
|
101
|
-
npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web list dsh-codex-subscription --depth 0
|
|
102
|
-
npx -y @deepseek-ai/dsh@0.1.5-rc.2 --profile web --dump-config
|
|
88
|
+
dsh plugin --profile web add dsh-codex-subscription
|
|
103
89
|
```
|
|
104
90
|
|
|
91
|
+
安装完成后按提示重启 DSH,再到 **设置 → Codex 订阅** 登录。插件页面和终端均由 DSH 管理安装。
|
|
92
|
+
|
|
105
93
|
</details>
|
|
106
94
|
|
|
107
95
|
<details>
|
|
108
|
-
<summary
|
|
96
|
+
<summary>Headless 任务</summary>
|
|
97
|
+
|
|
98
|
+
先在 Web 中完成登录并选择一次 Codex 模型,再把同一个插件安装到 Headless profile:
|
|
109
99
|
|
|
110
100
|
```sh
|
|
111
|
-
dsh plugin --profile
|
|
112
|
-
dsh
|
|
113
|
-
dsh --profile web --dump-config
|
|
101
|
+
dsh plugin --profile headless add dsh-codex-subscription
|
|
102
|
+
dsh --profile headless "只回复:ok"
|
|
114
103
|
```
|
|
115
104
|
|
|
116
|
-
安装列表中应只有一个 `dsh-codex-subscription`,配置中应只有一个 `codex-subscription` 条目。
|
|
117
|
-
|
|
118
105
|
</details>
|
|
119
106
|
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
1. 打开 **设置 -> Codex 订阅**;
|
|
123
|
-
2. 登录具有 Codex 使用资格的 ChatGPT 账户;
|
|
124
|
-
3. 选择搜索来源;
|
|
125
|
-
4. 在模型选择器中选择 Codex 模型。
|
|
126
|
-
|
|
127
|
-
## 功能
|
|
128
|
-
|
|
129
|
-
- ChatGPT OAuth 登录,凭据保留在本机;账号以默认隐藏部分字符的邮箱区分,点击可切换完整显示;可手动添加、切换和移除多个账号,不会自动轮换或合并额度;
|
|
130
|
-
- Codex 模型和 Beta 图片生成与编辑直接出现在 DSH 会话中;
|
|
131
|
-
- 搜索来源是全局设置,可在 DSH 默认搜索与 Codex 订阅搜索之间切换;它对所有模型和会话生效,不会随当前模型自动切换;
|
|
132
|
-
- 设置页显示服务端返回的额度、重置时间和更新时间;
|
|
133
|
-
- 普通 Codex、Codex-Spark、Credits 等独立额度分开显示;
|
|
134
|
-
- 每张可用重置卡单独显示名称和到期时间,也允许在额度未完全用尽时主动尝试,并经过分层确认且不会自动重试;
|
|
135
|
-
- 输入框可用百分比、进度条或可选的 Beta 续航预测显示当前 Codex 模型的剩余额度(默认关闭);
|
|
136
|
-
- 输入框可为支持的 Codex 模型切换标准或高速模式;
|
|
137
|
-
- 上下文窗口提供标准、扩展和逐模型自定义;自定义直接填写完整 Token 数值,并在已审核的模型容量内交给 DSH 原生 Agent 压缩策略处理;
|
|
138
|
-
- 设置页可生成并复制无敏感信息的支持诊断,并直接打开反馈入口;报告包含有限的请求阶段、HTTP/网络分类、耗时区间和路由来源类型,但不包含 OAuth 凭据、账号标识或授权时间;
|
|
139
|
-
- 订阅路由不可用时明确报错,不会静默切换到其他付费路由。
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
普通订阅对话和 DSH 原生子任务不需要安装 Codex 运行时。升级到 2.1.3 后,旧版自动引入且没有其他依赖引用的运行时会随依赖更新移除;主动安装的独立组件可在高级设置中卸载。切换回 DSH 不等于卸载,卸载也不会自动清空宿主共享下载缓存。
|
|
107
|
+
## 功能说明
|
|
143
108
|
|
|
144
109
|
### 执行中补充指令
|
|
145
110
|
|
|
@@ -257,7 +222,7 @@ ChatGPT 返回可用重置卡时,设置页会把每张卡分别显示为紧凑
|
|
|
257
222
|
只有高速模式会在模型名称左侧显示闪电;Spark 不显示速度入口。高速模式会提高速度,也会消耗更多 Credits;具体规则见
|
|
258
223
|
[OpenAI Codex Speed 文档](https://learn.chatgpt.com/docs/agent-configuration/speed)。
|
|
259
224
|
|
|
260
|
-
###
|
|
225
|
+
### 高级实验选项
|
|
261
226
|
|
|
262
227
|
在 **高级与诊断** 中按需开启,默认仍使用 SSE 和 DSH 子任务:
|
|
263
228
|
|
|
@@ -274,19 +239,20 @@ ChatGPT 返回可用重置卡时,设置页会把每张卡分别显示为紧凑
|
|
|
274
239
|
|
|
275
240
|

|
|
276
241
|
|
|
277
|
-
|
|
242
|
+
优先使用上面的 **安装组件** 按钮,由插件选择已验证的组件版本。当前正式版 **2.1.4** 使用 `0.1.5-rc.2`;请不要省略版本号或自行改用 `@next`。`2.1.5-beta.1` 默认安装 `0.1.5-rc.3`,并继续兼容已安装的 rc.2。
|
|
243
|
+
|
|
244
|
+
<details>
|
|
245
|
+
<summary>旧版宿主手动安装与离线准备</summary>
|
|
246
|
+
|
|
247
|
+
插件安装页面填写 `@deepseek-ai/dsh-subagent-codex@0.1.5-rc.2`。终端方式:
|
|
278
248
|
|
|
279
249
|
```sh
|
|
280
250
|
dsh plugin --profile web add @deepseek-ai/dsh-subagent-codex@0.1.5-rc.2
|
|
281
251
|
```
|
|
282
252
|
|
|
283
|
-
|
|
253
|
+
安装到订阅插件所在的同一个 profile,完成后重启。离线使用须提前在目标系统与架构上安装并验证完整运行时;只复制订阅插件或 Codex 启动脚本不够。模型请求仍需联网。
|
|
284
254
|
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
**旧版升级**:如果已使用 Codex 独立子任务,请在升级订阅插件前执行上面的准备命令,将运行时显式保留在同一个 profile;仅由旧版间接安装的运行时可能随依赖整理移除。已经升级也可执行同一命令补齐,然后重启。
|
|
288
|
-
|
|
289
|
-
运行时版本单独固定,不会随订阅插件更新而自动下载新 CLI。现阶段沿用官方 provider 的包内 CLI,不自动查找 PATH,也不复用桌面应用的私有 CLI。只有明确点击卸载才移除组件,安装缓存不由插件清理。
|
|
255
|
+
</details>
|
|
290
256
|
|
|
291
257
|
### 不再使用时
|
|
292
258
|
|
|
@@ -306,46 +272,26 @@ dsh plugin --profile web remove @deepseek-ai/dsh-subagent-codex
|
|
|
306
272
|
|
|
307
273
|
## 更新与卸载
|
|
308
274
|
|
|
309
|
-
|
|
310
|
-
|
|
311
|
-
```sh
|
|
312
|
-
dsh plugin --profile web update dsh-codex-subscription
|
|
313
|
-
dsh plugin --profile web list dsh-codex-subscription --depth 0
|
|
314
|
-
dsh --profile web --dump-config
|
|
315
|
-
```
|
|
316
|
-
|
|
317
|
-
### 卸载
|
|
318
|
-
|
|
319
|
-
确认需要移除插件后再运行:
|
|
320
|
-
|
|
321
|
-
```sh
|
|
322
|
-
dsh plugin --profile web remove dsh-codex-subscription
|
|
323
|
-
```
|
|
324
|
-
|
|
325
|
-
这些操作会保留 DSH profile、其他插件和登录信息。
|
|
275
|
+
在 DSH **插件** 页面找到本插件,使用更新或卸载操作,完成后按页面提示重启。卸载插件不会删除其他插件。
|
|
326
276
|
|
|
327
277
|
<details>
|
|
328
|
-
<summary
|
|
329
|
-
|
|
330
|
-
### 更新并检查
|
|
278
|
+
<summary>终端方式</summary>
|
|
331
279
|
|
|
332
280
|
```sh
|
|
333
|
-
|
|
334
|
-
npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web list dsh-codex-subscription --depth 0
|
|
335
|
-
npx -y @deepseek-ai/dsh@0.1.5-rc.2 --profile web --dump-config
|
|
281
|
+
dsh plugin --profile web update dsh-codex-subscription
|
|
336
282
|
```
|
|
337
283
|
|
|
338
|
-
|
|
284
|
+
仅在需要卸载时运行:
|
|
339
285
|
|
|
340
286
|
```sh
|
|
341
|
-
|
|
287
|
+
dsh plugin --profile web remove dsh-codex-subscription
|
|
342
288
|
```
|
|
343
289
|
|
|
344
290
|
</details>
|
|
345
291
|
|
|
346
292
|
## 常见问题
|
|
347
293
|
|
|
348
|
-
- **`dsh`
|
|
294
|
+
- **`dsh` 无法识别**:直接使用 DSH 的插件页面安装,无需为了安装插件配置终端命令。
|
|
349
295
|
- **电脑上有多个 DSH**:请从目标 DSH 环境运行标准命令,由该产品自身选择对应 profile;
|
|
350
296
|
- **安装仍然失败**:确认命令是在目标 DSH 环境中运行,不要删除 profile 或随意修改系统 PATH。
|
|
351
297
|
- **需要提交问题**:在设置页底部生成“支持诊断”,然后打开[使用问题表单](https://github.com/WSL043/dsh-codex-subscription/issues/new?template=install-problem.yml)。报告包含系统/运行时、有限的登录阶段和安全的请求失败分类,但不含凭据、账号标识、原始响应或完整日志;请粘贴到必填诊断栏,且不要附上登录链接、授权码或浏览器回调地址。
|
package/compatibility.json
CHANGED
|
Binary file
|
package/lib/client.js
CHANGED
|
@@ -7274,7 +7274,7 @@ window.__ModuleLoader__.load({
|
|
|
7274
7274
|
}
|
|
7275
7275
|
//#endregion
|
|
7276
7276
|
//#region src/version.js
|
|
7277
|
-
const PACKAGE_VERSION = "2.1.
|
|
7277
|
+
const PACKAGE_VERSION = "2.1.5-beta.1";
|
|
7278
7278
|
//#endregion
|
|
7279
7279
|
//#region src/client-recovery.js
|
|
7280
7280
|
async function recoveryCall(rpc, endpoint, payload = {}, timeoutMs = 1e4) {
|
package/lib/index.js
CHANGED
|
@@ -1074,13 +1074,15 @@ function authenticatedSubagentChild(child, { Transport, getTokens, thread, signa
|
|
|
1074
1074
|
//#endregion
|
|
1075
1075
|
//#region src/subagent-runtime.js
|
|
1076
1076
|
const SUBAGENT_RUNTIME_PACKAGE = "@deepseek-ai/dsh-subagent-codex";
|
|
1077
|
-
const SUBAGENT_RUNTIME_VERSION = "0.1.5-rc.
|
|
1077
|
+
const SUBAGENT_RUNTIME_VERSION = "0.1.5-rc.3";
|
|
1078
|
+
const SUPPORTED_RUNTIME_VERSIONS = /* @__PURE__ */ new Set(["0.1.5-rc.2", SUBAGENT_RUNTIME_VERSION]);
|
|
1078
1079
|
const require = createRequire(import.meta.url);
|
|
1079
1080
|
const execute = promisify(execFile);
|
|
1080
1081
|
function inspectSubagentRuntime(resolve = require.resolve) {
|
|
1081
1082
|
try {
|
|
1082
1083
|
const manifestPath = resolve(`${SUBAGENT_RUNTIME_PACKAGE}/package.json`);
|
|
1083
|
-
|
|
1084
|
+
const manifest = JSON.parse(readFileSync(manifestPath, "utf8"));
|
|
1085
|
+
if (!SUPPORTED_RUNTIME_VERSIONS.has(manifest.version)) return {
|
|
1084
1086
|
installed: false,
|
|
1085
1087
|
present: true
|
|
1086
1088
|
};
|
|
@@ -2810,7 +2812,7 @@ function openaiCodexSubscriptionProvider({ resolveSpeedMode = () => void 0, reso
|
|
|
2810
2812
|
Object.freeze(["0.82.1", "0.85.1"]);
|
|
2811
2813
|
//#endregion
|
|
2812
2814
|
//#region src/version.js
|
|
2813
|
-
const PACKAGE_VERSION = "2.1.
|
|
2815
|
+
const PACKAGE_VERSION = "2.1.5-beta.1";
|
|
2814
2816
|
const USER_AGENT = `dsh-codex-subscription/${PACKAGE_VERSION}`;
|
|
2815
2817
|
//#endregion
|
|
2816
2818
|
//#region src/model-catalog.js
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "dsh-codex-subscription",
|
|
3
|
-
"version": "2.1.
|
|
3
|
+
"version": "2.1.5-beta.1",
|
|
4
4
|
"description": "Use ChatGPT and Codex subscriptions in DeepSeek Harness with OAuth, quota, safe resets, web search, images, and Fast mode",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./lib/index.js",
|
|
@@ -19,7 +19,8 @@
|
|
|
19
19
|
"compatibility.json",
|
|
20
20
|
"LICENSE",
|
|
21
21
|
"SECURITY.md",
|
|
22
|
-
"THIRD_PARTY_NOTICES.md"
|
|
22
|
+
"THIRD_PARTY_NOTICES.md",
|
|
23
|
+
"icon-subscription.webp"
|
|
23
24
|
],
|
|
24
25
|
"dsh": {
|
|
25
26
|
"bundle": {
|
|
@@ -74,26 +75,26 @@
|
|
|
74
75
|
},
|
|
75
76
|
"peerDependencies": {
|
|
76
77
|
"@deepseek-ai/cordis": "4.0.1 || 4.0.2 || 4.0.3",
|
|
77
|
-
"@deepseek-ai/dsh-api-remotes": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
78
|
-
"@deepseek-ai/dsh-client-connection": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
79
|
-
"@deepseek-ai/dsh-client-locale": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
80
|
-
"@deepseek-ai/dsh-client-ui-conversation": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
81
|
-
"@deepseek-ai/dsh-client-ui-model-selection": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
82
|
-
"@deepseek-ai/dsh-client-ui-primitives": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
83
|
-
"@deepseek-ai/dsh-client-ui-settings": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
84
|
-
"@deepseek-ai/dsh-client-ui-slots": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
85
|
-
"@deepseek-ai/dsh-client-ui-tool": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
86
|
-
"@deepseek-ai/dsh-credentials": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
87
|
-
"@deepseek-ai/dsh-llm": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
88
|
-
"@deepseek-ai/dsh-llm-pi-ai": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
89
|
-
"@deepseek-ai/dsh-settings": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
90
|
-
"@deepseek-ai/dsh-tools": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
91
|
-
"@deepseek-ai/dsh-web": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1",
|
|
78
|
+
"@deepseek-ai/dsh-api-remotes": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
79
|
+
"@deepseek-ai/dsh-client-connection": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
80
|
+
"@deepseek-ai/dsh-client-locale": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
81
|
+
"@deepseek-ai/dsh-client-ui-conversation": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
82
|
+
"@deepseek-ai/dsh-client-ui-model-selection": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
83
|
+
"@deepseek-ai/dsh-client-ui-primitives": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
84
|
+
"@deepseek-ai/dsh-client-ui-settings": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
85
|
+
"@deepseek-ai/dsh-client-ui-slots": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
86
|
+
"@deepseek-ai/dsh-client-ui-tool": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
87
|
+
"@deepseek-ai/dsh-credentials": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
88
|
+
"@deepseek-ai/dsh-llm": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
89
|
+
"@deepseek-ai/dsh-llm-pi-ai": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
90
|
+
"@deepseek-ai/dsh-settings": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
91
|
+
"@deepseek-ai/dsh-tools": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
92
|
+
"@deepseek-ai/dsh-web": "0.1.2-rc.1 || 0.1.5-alpha.1 || 0.1.5-alpha.2 || 0.1.5-rc.1 || 0.1.5-rc.2 || 0.1.6-alpha.1 || 0.1.6-alpha.2 || 0.1.7-alpha.1 || 0.1.7-alpha.2",
|
|
92
93
|
"@deepseek-ai/schemastery": "3.18.1 || ^3.18.2",
|
|
93
94
|
"@earendil-works/pi-ai": "0.82.1 || 0.85.1",
|
|
94
95
|
"react": "^18.2.0",
|
|
95
96
|
"react-dom": "^18.2.0",
|
|
96
|
-
"@deepseek-ai/dsh-subagent-codex": "0.1.5-rc.2"
|
|
97
|
+
"@deepseek-ai/dsh-subagent-codex": "0.1.5-rc.2 || 0.1.5-rc.3"
|
|
97
98
|
},
|
|
98
99
|
"devDependencies": {
|
|
99
100
|
"@deepseek-ai/cordis": "4.0.2",
|
|
@@ -134,6 +135,7 @@
|
|
|
134
135
|
"optional": true
|
|
135
136
|
}
|
|
136
137
|
},
|
|
138
|
+
"icon": "./icon-subscription.webp",
|
|
137
139
|
"scripts": {
|
|
138
140
|
"build": "tsdown --config tsdown.config.mjs",
|
|
139
141
|
"test:behavior": "node scripts/run-tests.mjs behavior",
|