dsh-codex-subscription 2.1.2 → 2.1.3

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 CHANGED
@@ -1,6 +1,6 @@
1
1
  <div align="center">
2
2
 
3
- # DSH Codex Subscription
3
+ # DSH Codex Subscription — Use ChatGPT subscriptions in DeepSeek Harness
4
4
 
5
5
  [简体中文](https://github.com/WSL043/dsh-codex-subscription/blob/main/README.md) · **English**
6
6
 
@@ -19,18 +19,20 @@ No OpenAI API key or Codex CLI. Models, search, quota, and image generation stay
19
19
  </div>
20
20
 
21
21
  <p align="center">
22
- <img src="https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/readme-hero-en.webp" width="900" alt="Your Codex subscription inside DSH: models, web search, quota and safe reset, image generation, and Fast mode">
22
+ <img src="docs/assets/codex-subscription-overview-en.webp" width="900" alt="Use ChatGPT and Codex subscriptions in DeepSeek Harness: sign in without an API key, choose models and view remaining quota">
23
23
  </p>
24
24
 
25
25
  ## Three-step start
26
26
 
27
- 1. **Install the plugin.** Run the standard DSH bundle command:
27
+ 1. **Install the plugin.** In newer DSH, open **Plugins → Add plugin** and enter `dsh-codex-subscription`. To select a candidate, enter `package@version`, for example `dsh-codex-subscription@2.1.3-beta.1`. This field does not accept a full terminal command.
28
+
29
+ For older DSH or terminal use, run:
28
30
 
29
31
  ```sh
30
32
  dsh plugin --profile web add dsh-codex-subscription
31
33
  ```
32
34
 
33
- 2. **Sign in.** Restart DSH yourself, open **Settings -> Codex**, and choose browser sign-in. No Codex CLI and no pasted token are required.
35
+ 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.
34
36
  3. **Use Codex.** Select a Codex model. Quota, subscription search, image generation, and Fast mode remain inside DSH.
35
37
 
36
38
  DSH-Portable exposes the same standard plugin command, so the command above also applies there. See below for the complete official npm, update, and uninstall routes.
@@ -55,10 +57,10 @@ These capabilities reuse the same local ChatGPT sign-in. Subscription routing fa
55
57
  ## Product screen
56
58
 
57
59
  <p align="center">
58
- <img src="https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/context-settings.png" width="820" alt="2.0.0 account and preference settings: sign-in, quota display and alerts">
60
+ <img src="docs/assets/subscription-account-en.png" width="820" alt="DSH Codex subscription main screen: ChatGPT sign-in, remaining quota and composer preferences">
59
61
  </p>
60
62
 
61
- 2.0.0 groups settings into Account & preferences and Advanced & diagnostics. Screenshots use the Chinese UI, with the account label hidden and scrollable content expanded for readability. [View advanced settings](docs/assets/settings-advanced-2.0.png).
63
+ The actual Account & preferences screen shows sign-in status, subscription quota and composer preferences. Account, quota, balance and time values are demo data, not fixed plan entitlements. Advanced options and optional components are described below.
62
64
 
63
65
  ## Prepare DSH
64
66
 
@@ -92,9 +94,9 @@ dsh --profile headless "Reply with only the word: ok"
92
94
  The official `npx @deepseek-ai/dsh web` command does not create a global `dsh` command. Keep the full `npx` prefix when installing the plugin:
93
95
 
94
96
  ```sh
95
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 plugin --profile web add dsh-codex-subscription
96
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 plugin --profile web list dsh-codex-subscription --depth 0
97
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 --profile web --dump-config
97
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web add dsh-codex-subscription
98
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web list dsh-codex-subscription --depth 0
99
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 --profile web --dump-config
98
100
  ```
99
101
 
100
102
  </details>
@@ -134,6 +136,10 @@ Restart DSH manually after installation, then:
134
136
  - Visible errors when subscription routing is unavailable, with no silent paid fallback.
135
137
 
136
138
 
139
+ ### GPT-Reserve (Experimental)
140
+
141
+ When the account’s official catalog advertises `gpt-reserve`, it appears at the end of the model picker as an experimental option. Availability and billing are determined by the service; a successful response does not confirm use of a separate reserve allowance. The composer shows only a matching quota bucket returned by the service, and does not substitute ordinary Codex quota when none is returned.
142
+
137
143
  ### GPT-6 Astra context
138
144
 
139
145
  When the official model catalog exposes GPT-6 Astra, Standard preserves the catalog window, Extended uses 872000 tokens, and Custom accepts 128000–872000 tokens (initially 272000). This limit follows the [official Codex model catalog](https://github.com/openai/codex/blob/6af345407d9c2a568da9d01b6c4b81a9e61495c0/codex-rs/models-manager/models.json#L33-L34), not the API model's total context capacity. These settings only adjust DSH's local context budget; they do not grant model access or guarantee an account's server-side capacity. Actual availability remains subject to the service.
@@ -141,7 +147,7 @@ When the official model catalog exposes GPT-6 Astra, Standard preserves the cata
141
147
  ### Composer quota
142
148
 
143
149
  <p align="center">
144
- <img src="https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/composer-quota.png" width="800" alt="Live DSH composer with GPT-6-Astra, Max reasoning, Fast mode, and remaining quota">
150
+ <img src="docs/assets/composer-quota.png" width="800" alt="Live DSH composer with GPT-6-Astra, Max reasoning, Fast mode, and remaining quota">
145
151
  </p>
146
152
 
147
153
  Live example: GPT-6-Astra with Max (the highest reasoning level) and Fast mode (lightning icon), with remaining quota visible on the left.
@@ -170,14 +176,14 @@ New and edited images return the exact original path on the current DSH host in
170
176
  A new image request does not silently include earlier images. GPT Image 2 can take longer than a normal text turn, and detailed text, exact composition, or repeated-character consistency may still need another pass.
171
177
 
172
178
  <p align="center">
173
- <img src="https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/image-preview-annotations-en.png" width="800" alt="Generated image, region note, and continue editing inside the DSH Image Viewer">
179
+ <img src="docs/assets/image-preview-annotations-en.png" width="800" alt="Generated image, region note, and continue editing inside the DSH Image Viewer">
174
180
  </p>
175
181
 
176
182
  The screenshot above illustrates image viewing and on-image notes; available buttons can vary with the image and installed viewer version.
177
183
 
178
184
  ### Sketch canvas (Beta)
179
185
 
180
- ![Sketch canvas in the Chinese UI: aspect ratio, brushes, shapes, layers and zoom](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-canvas.png)
186
+ ![Sketch canvas in the Chinese UI: aspect ratio, brushes, shapes, layers and zoom](docs/assets/sketch-canvas.png)
181
187
 
182
188
  Use the composer pen button for manual drawing. Selecting `@sketch` only inserts the Agent entry into the composer; the Agent opens the board after you send your drawing request. You can also choose Open in sketch from an enhanced image preview. Attachment intake and removal use the native DSH component.
183
189
 
@@ -189,7 +195,7 @@ The board supports editable shapes and text, native curves, and a side control f
189
195
 
190
196
  | Original sketch | Actual plugin output |
191
197
  | --- | --- |
192
- | ![Mountains and cabin sketch](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-demo-source.png) | ![Watercolor mountain cabin generated from the sketch](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-demo-result.png) |
198
+ | ![Mountains and cabin sketch](docs/assets/sketch-demo-source.png) | ![Watercolor mountain cabin generated from the sketch](docs/assets/sketch-demo-result.png) |
193
199
 
194
200
  The request preserves the mountain and cabin composition while creating a warm watercolor travel illustration with green peaks, an orange roof, a meadow stream and morning light, without the blue outlines. GPT-5.6-Luna made one image-tool call requesting low quality. Luna is the conversation model; the subscription backend determines the actual image model.
195
201
 
@@ -202,7 +208,7 @@ The request preserves the mountain and cabin composition while creating a warm w
202
208
 
203
209
  | Native sketch | Generated result |
204
210
  | --- | --- |
205
- | ![Sketch](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-advanced-source.png) | ![Result](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-advanced-result.png) |
211
+ | ![Sketch](docs/assets/sketch-advanced-source.png) | ![Result](docs/assets/sketch-advanced-result.png) |
206
212
 
207
213
  **Sketch reproduction prompt (reconstructed from the artwork, not the original conversation)**
208
214
 
@@ -228,7 +234,7 @@ Actual results supplied by the user from another computer: Astra draws on a port
228
234
 
229
235
  | Native Astra sketch | GPT-generated oil painting |
230
236
  | --- | --- |
231
- | ![Mona Lisa sketch drawn by Astra](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-mona-lisa-source.png) | ![Mona Lisa oil painting generated from the sketch](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-mona-lisa-result.png) |
237
+ | ![Mona Lisa sketch drawn by Astra](docs/assets/sketch-mona-lisa-source.png) | ![Mona Lisa oil painting generated from the sketch](docs/assets/sketch-mona-lisa-result.png) |
232
238
 
233
239
  Original sketch prompt: `@sketch 用竖版画板画一幅《蒙娜丽莎》` (Draw the Mona Lisa on a portrait canvas.)
234
240
 
@@ -249,7 +255,47 @@ see the [OpenAI Codex Speed documentation](https://learn.chatgpt.com/docs/agent-
249
255
  Opt in under **Advanced & diagnostics**. SSE and DSH subtasks remain the defaults:
250
256
 
251
257
  - **WebSocket** reuses connections and eligible context transfers. Failed handshakes can fall back to SSE; interrupted responses surface an error without automatic replay. Applies to the next request, does not expand context limits, and is not guaranteed to be faster.
252
- - **Codex independent subtasks** reuse your subscription login and the official DSH Codex runtime, without a separate login or CLI setup. They inherit the current subscription model and workspace permissions by default. Enable DSH subtask model selection, configure allowed models and start a new session to specify the child model and reasoning effort in chat. Non-subscription sessions must explicitly select a subscription model. Shared-context subtasks remain with DSH.
258
+ - **Codex independent subtasks** reuse your subscription login and the official DSH Codex runtime, without a separate login; install its optional component in settings. They inherit the current subscription model and workspace permissions by default. Enable DSH subtask model selection, configure allowed models and start a new session to specify the child model and reasoning effort in chat. Non-subscription sessions must explicitly select a subscription model. Shared-context subtasks remain with DSH.
259
+
260
+ <a id="codex-subtask-runtime"></a>
261
+
262
+ ## Optional Codex subtask runtime
263
+
264
+ Subscription chat, images, and native DSH subtasks do not need Codex CLI. Only **Codex independent subtasks (Beta)** require the optional official runtime. The plugin never downloads it in the background.
265
+
266
+ In **Settings → Codex → Advanced → Independent subtasks**, click **Install component**. DSH handles installation; the page shows its stage and offers cancellation before applying. Restart after completion, then choose Codex. Installation does not enable subtasks automatically.
267
+
268
+ ![Optional component management](docs/assets/settings-runtime-current-en.png)
269
+
270
+ For older hosts without the management interface, run this in the target DSH environment, then restart:
271
+
272
+ ```sh
273
+ dsh plugin --profile web add @deepseek-ai/dsh-subagent-codex@0.1.5-rc.2
274
+ ```
275
+
276
+ In the plugin installation UI, enter only `@deepseek-ai/dsh-subagent-codex@0.1.5-rc.2`, not the full command. Select Codex in advanced settings after preparation. Missing or failed preparation does not block subscription chat or the DSH backend. Shared-context subtasks remain in DSH.
277
+
278
+ For offline preparation, install and verify beforehand on the target operating system and architecture, retaining the complete profile dependencies when moving it. The subscription archive or Codex wrapper alone is insufficient without the platform binary. First-time installation cannot complete offline unless dependencies are already prepared. Existing runtime checks and startup do not download anything; model requests still require connectivity. Do not use `--force` to install foreign-platform optional packages.
279
+
280
+ **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.
281
+
282
+ 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.
283
+
284
+ ### When you no longer need it
285
+
286
+ To disable it, switch back to **DSH** in Advanced settings. The component stays installed so you can enable it again later.
287
+
288
+ To uninstall it, click **Uninstall component** in the same section and confirm. The plugin blocks removal while Codex subtasks are running, switches back to DSH, and uses the official uninstall interface. Restart after completion. On older hosts, run this in a terminal, replacing `web` with the profile where you installed it:
289
+
290
+ ```sh
291
+ dsh plugin --profile web remove @deepseek-ai/dsh-subagent-codex
292
+ ```
293
+
294
+ This removes the optional subtask component, not the subscription plugin. Subscription chat, image generation and native DSH subtasks are unaffected. The package manager may keep the component if another plugin still depends on it.
295
+
296
+ ### Storage and cleanup
297
+
298
+ Uninstalling does not clear shared package caches or guarantee a fixed amount of reclaimed space. DSH or Portable manages those caches centrally; this plugin does not delete shared directories. Sketches, conversation history, generated originals and sign-in data are not package caches. Use their respective management controls when you want to remove them.
253
299
 
254
300
  ## Update and uninstall
255
301
 
@@ -277,22 +323,22 @@ These operations preserve the DSH profile, other plugins, and saved sign-in.
277
323
  ### Update and verify
278
324
 
279
325
  ```sh
280
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 plugin --profile web update dsh-codex-subscription
281
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 plugin --profile web list dsh-codex-subscription --depth 0
282
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 --profile web --dump-config
326
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web update dsh-codex-subscription
327
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web list dsh-codex-subscription --depth 0
328
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 --profile web --dump-config
283
329
  ```
284
330
 
285
331
  ### Uninstall
286
332
 
287
333
  ```sh
288
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 plugin --profile web remove dsh-codex-subscription
334
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web remove dsh-codex-subscription
289
335
  ```
290
336
 
291
337
  </details>
292
338
 
293
339
  ## Troubleshooting
294
340
 
295
- - **`dsh` is not recognized:** the official npm route does not create a global `dsh` command; use the complete `npx -y @deepseek-ai/dsh@0.1.5-rc.1 ...` command above;
341
+ - **`dsh` is not recognized:** the official npm route does not create a global `dsh` command; use the complete `npx -y @deepseek-ai/dsh@0.1.5-rc.2 ...` command above;
296
342
  - **More than one DSH exists:** run the standard command from the intended DSH environment so that product selects the corresponding profile;
297
343
  - **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.
298
344
  - **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
@@ -1,4 +1,4 @@
1
- # DSH Codex Subscription
1
+ # DSH Codex Subscription — 在 DeepSeek Harness 使用 ChatGPT 订阅
2
2
 
3
3
  <div align="center">
4
4
 
@@ -20,18 +20,20 @@
20
20
  </div>
21
21
 
22
22
  <p align="center">
23
- <img src="https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/readme-hero.webp" width="900" alt="Codex 订阅直接用在 DSH:订阅模型、联网搜索、额度与安全重置、图片生成和高速模式">
23
+ <img src="docs/assets/codex-subscription-overview.webp" width="900" alt="在 DeepSeek Harness 登录 ChatGPT 并使用 Codex 订阅:无需 API Key,支持模型选择和剩余额度显示">
24
24
  </p>
25
25
 
26
26
  ## 三步开始
27
27
 
28
- 1. **安装插件**:直接运行 DSH 标准 bundle 命令:
28
+ 1. **安装插件**:在新版 DSH 的 **插件 → 添加插件** 中填写 `dsh-codex-subscription`;指定候选版本时填写完整的 `包名@版本`,例如 `dsh-codex-subscription@2.1.3-beta.1`。这个输入框不接受整条终端命令。
29
+
30
+ 旧版 DSH 或偏好终端操作时,才在终端运行:
29
31
 
30
32
  ```sh
31
33
  dsh plugin --profile web add dsh-codex-subscription
32
34
  ```
33
35
 
34
- 2. **登录订阅**:手动重启 DSH,打开 **设置 -> Codex 订阅**,点击浏览器登录。无需 Codex CLI,也不要粘贴 token。
36
+ 2. **登录订阅**:按安装结果提示操作;若提示需要重启,先保存工作再重启。打开 **设置 -> Codex 订阅**,点击浏览器登录。无需 Codex CLI,也不要粘贴 token。
35
37
  3. **开始使用**:在模型选择器中选择 Codex;额度、订阅搜索、图片生成和高速模式都在 DSH 内使用。
36
38
 
37
39
  DSH-Portable 也提供相同的标准插件命令,因此同样使用上面的命令。完整的官方 npm、更新和卸载方式见下文。
@@ -56,10 +58,10 @@ DSH-Portable 也提供相同的标准插件命令,因此同样使用上面的
56
58
  ## 实际界面
57
59
 
58
60
  <p align="center">
59
- <img src="https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/context-settings.png" width="820" alt="2.0.0 账号与偏好:登录、额度、显示模式与提醒">
61
+ <img src="docs/assets/subscription-account.png" width="820" alt="DSH Codex 订阅主界面:ChatGPT 登录、剩余额度与输入框偏好">
60
62
  </p>
61
63
 
62
- 2.0.0 设置分为“账号与偏好”和“高级与诊断”。截图已隐藏账号信息,并展开滚动内容便于阅读;[查看高级页](docs/assets/settings-advanced-2.0.png)。
64
+ 上图为“账号与偏好”主界面,展示登录状态、订阅额度和输入框偏好。截图中的账号、额度、余额与时间均为演示数据,不代表套餐固定权益。高级功能与可选组件见下文。
63
65
 
64
66
  ## 准备 DSH
65
67
 
@@ -93,9 +95,9 @@ dsh --profile headless "只回复:ok"
93
95
  官方的 `npx @deepseek-ai/dsh web` 不会创建全局 `dsh` 命令,因此安装插件时也要保留完整的 `npx` 前缀:
94
96
 
95
97
  ```sh
96
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 plugin --profile web add dsh-codex-subscription
97
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 plugin --profile web list dsh-codex-subscription --depth 0
98
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 --profile web --dump-config
98
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web add dsh-codex-subscription
99
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web list dsh-codex-subscription --depth 0
100
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 --profile web --dump-config
99
101
  ```
100
102
 
101
103
  </details>
@@ -135,6 +137,10 @@ dsh --profile web --dump-config
135
137
  - 订阅路由不可用时明确报错,不会静默切换到其他付费路由。
136
138
 
137
139
 
140
+ ### GPT-Reserve(实验性)
141
+
142
+ 账号的官方模型目录提供 `gpt-reserve` 时,模型选择器末尾会出现实验性选项。可用性和扣费归属由服务端决定;请求成功不代表已确认使用独立备用额度。输入框只显示服务端返回的匹配额度桶,未返回时不会借用普通 Codex 额度。
143
+
138
144
  ### GPT-6 Astra 上下文
139
145
 
140
146
  当官方模型目录提供 GPT-6 Astra 时,标准模式保留目录默认窗口;扩展模式使用 872000 Token,自定义模式可设置 128000–872000 Token(初始值为 272000)。该上限依据 [Codex 官方模型目录](https://github.com/openai/codex/blob/6af345407d9c2a568da9d01b6c4b81a9e61495c0/codex-rs/models-manager/models.json#L33-L34),不是 API 模型的总上下文容量。这些设置只调整 DSH 的本地上下文预算,不授予模型访问权限,也不保证账号的服务端容量;实际可用性以服务端为准。
@@ -142,7 +148,7 @@ dsh --profile web --dump-config
142
148
  ### 输入框额度
143
149
 
144
150
  <p align="center">
145
- <img src="https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/composer-quota.png" width="800" alt="DSH 实机输入框:GPT-6-Astra、Max 推理、高速模式和剩余额度">
151
+ <img src="docs/assets/composer-quota.png" width="800" alt="DSH 实机输入框:GPT-6-Astra、Max 推理、高速模式和剩余额度">
146
152
  </p>
147
153
 
148
154
  实机示例:GPT-6-Astra · Max(最高推理档)· 高速模式(闪电标识),左侧直接显示剩余额度。
@@ -169,14 +175,14 @@ ChatGPT 返回可用重置卡时,设置页会把每张卡分别显示为紧凑
169
175
  新的图片请求不会静默带入历史图片。GPT Image 2 可能比文本回复耗时更长,复杂文字、精确构图和连续角色一致性也可能需要再次调整。
170
176
 
171
177
  <p align="center">
172
- <img src="https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/image-preview-annotations.png" width="800" alt="DSH 图片查看器中的生成图、区域备注和继续编辑">
178
+ <img src="docs/assets/image-preview-annotations.png" width="800" alt="DSH 图片查看器中的生成图、区域备注和继续编辑">
173
179
  </p>
174
180
 
175
181
  上图展示图片查看与图上备注的基本交互;具体按钮会随图片和所安装的查看器版本变化。
176
182
 
177
183
  ### 草图画板(Beta)
178
184
 
179
- ![草图画板实机界面:画布比例、笔刷、形状、图层与缩放](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-canvas.png)
185
+ ![草图画板实机界面:画布比例、笔刷、形状、图层与缩放](docs/assets/sketch-canvas.png)
180
186
 
181
187
  点击输入框的草图按钮手动画图。`@sketch` 是 Agent 绘图入口:选择时只填入输入框,发送绘图请求后才由 Agent 打开画板。图片预览中可选择“进入草图”;上传、粘贴和移除附件仍由 DSH 原生组件处理。
182
188
 
@@ -188,7 +194,7 @@ ChatGPT 返回可用重置卡时,设置页会把每张卡分别显示为紧凑
188
194
 
189
195
  | 画板原草图 | 插件实际生成结果 |
190
196
  | --- | --- |
191
- | ![山峰与小屋草图](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-demo-source.png) | ![根据草图生成的水彩山间小屋](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-demo-result.png) |
197
+ | ![山峰与小屋草图](docs/assets/sketch-demo-source.png) | ![根据草图生成的水彩山间小屋](docs/assets/sketch-demo-result.png) |
192
198
 
193
199
  示例要求:保留山峰与小屋的构图,生成温暖的水彩旅行插画,青绿山峰、橙色屋顶、草地小溪与柔和晨光,不保留蓝色线条。此例通过 GPT-5.6-Luna 发起一次图片工具调用,请求低质量;Luna 是对话模型,实际出图型号由订阅后端决定。
194
200
 
@@ -201,7 +207,7 @@ ChatGPT 返回可用重置卡时,设置页会把每张卡分别显示为紧凑
201
207
 
202
208
  | 原生草图 | 实际生成结果 |
203
209
  | --- | --- |
204
- | ![Sketch](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-advanced-source.png) | ![Result](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-advanced-result.png) |
210
+ | ![Sketch](docs/assets/sketch-advanced-source.png) | ![Result](docs/assets/sketch-advanced-result.png) |
205
211
 
206
212
  **草图复现提示词(按原画面整理,非完整原始对话)**
207
213
 
@@ -227,7 +233,7 @@ ChatGPT 返回可用重置卡时,设置页会把每张卡分别显示为紧凑
227
233
 
228
234
  | Astra 原生草图 | GPT 生图:油画效果 |
229
235
  | --- | --- |
230
- | ![Astra 绘制的蒙娜丽莎草图](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-mona-lisa-source.png) | ![草图转换后的蒙娜丽莎油画](https://raw.githubusercontent.com/WSL043/dsh-codex-subscription/main/docs/assets/sketch-mona-lisa-result.png) |
236
+ | ![Astra 绘制的蒙娜丽莎草图](docs/assets/sketch-mona-lisa-source.png) | ![草图转换后的蒙娜丽莎油画](docs/assets/sketch-mona-lisa-result.png) |
231
237
 
232
238
  草图提示词:`@sketch 用竖版画板画一幅《蒙娜丽莎》`
233
239
 
@@ -248,7 +254,47 @@ ChatGPT 返回可用重置卡时,设置页会把每张卡分别显示为紧凑
248
254
  在 **高级与诊断** 中按需开启,默认仍使用 SSE 和 DSH 子任务:
249
255
 
250
256
  - **WebSocket**:复用连接和可复用的上下文传输;握手失败可回退 SSE,已开始的响应中断会报错,不自动重放。下次请求生效,不增加模型上下文容量,也不保证更快。
251
- - **Codex 独立子任务**:复用订阅登录和官方 DSH Codex 运行时,无需另行登录或配置 CLI。默认继承当前订阅模型及工作区权限。开启 DSH 子任务模型选择、配置允许模型并新建会话后,可在聊天中指定子任务模型与推理档位;非订阅会话需明确选择订阅模型。共享上下文的子任务仍交给 DSH。
257
+ - **Codex 独立子任务**:复用订阅登录和官方 DSH Codex 运行时,无需另行登录;可选组件在高级设置中安装。默认继承当前订阅模型及工作区权限。开启 DSH 子任务模型选择、配置允许模型并新建会话后,可在聊天中指定子任务模型与推理档位;非订阅会话需明确选择订阅模型。共享上下文的子任务仍交给 DSH。
258
+
259
+ <a id="codex-subtask-runtime"></a>
260
+
261
+ ## 可选 Codex 子任务运行时
262
+
263
+ 普通订阅聊天、图片和 DSH 原生子任务不需要 Codex CLI。只有高级设置中的 **Codex 独立子任务(Beta)** 需要额外准备官方运行时,插件不会后台自动下载。
264
+
265
+ 在 **设置 → Codex 订阅 → 高级与诊断 → 独立子任务** 点击 **安装组件**。DSH 负责安装,页面显示当前阶段,可取消尚未应用的安装;完成后重启,再选择 Codex。安装不会自动开启子任务。
266
+
267
+ ![可选组件管理实机界面](docs/assets/settings-runtime-current.png)
268
+
269
+ 旧版宿主没有管理接口时,才在目标 DSH 环境的终端执行,然后重启:
270
+
271
+ ```sh
272
+ dsh plugin --profile web add @deepseek-ai/dsh-subagent-codex@0.1.5-rc.2
273
+ ```
274
+
275
+ 如果使用插件安装页面,在包名框只填 `@deepseek-ai/dsh-subagent-codex@0.1.5-rc.2`,不要粘贴整条命令。安装到订阅插件所在的同一个 profile。之后在高级设置选择 Codex;共享上下文子任务仍由 DSH 处理。准备失败或尚未准备不影响普通订阅聊天,可继续选择 DSH。
276
+
277
+ 离线使用前,应在同系统、同架构的目标环境提前安装并验证运行时,迁移时保留完整的 DSH profile 依赖。只有订阅插件压缩包或 Codex 主包不能代替当前平台的可执行包;未提前准备时,断网无法完成首次安装。已有运行时的检查和启动不需要下载安装,但模型请求本身仍需要联网。不要使用 `--force` 安装其他平台的可选包。
278
+
279
+ **旧版升级**:如果已使用 Codex 独立子任务,请在升级订阅插件前执行上面的准备命令,将运行时显式保留在同一个 profile;仅由旧版间接安装的运行时可能随依赖整理移除。已经升级也可执行同一命令补齐,然后重启。
280
+
281
+ 运行时版本单独固定,不会随订阅插件更新而自动下载新 CLI。现阶段沿用官方 provider 的包内 CLI,不自动查找 PATH,也不复用桌面应用的私有 CLI。只有明确点击卸载才移除组件,安装缓存不由插件清理。
282
+
283
+ ### 不再使用时
284
+
285
+ 只想停用:在高级设置切回 **DSH**,组件仍保留,之后可再次开启。
286
+
287
+ 要卸载:在同一位置点击 **卸载组件** 并确认。插件会检查正在运行的子任务,切回 DSH 后交给官方接口卸载;有任务运行时不能卸载。完成后重启。旧版宿主可在终端执行(将 `web` 替换为实际安装的 profile):
288
+
289
+ ```sh
290
+ dsh plugin --profile web remove @deepseek-ai/dsh-subagent-codex
291
+ ```
292
+
293
+ 卸载的是可选子任务组件,不是订阅插件;普通订阅聊天、生图和 DSH 原生子任务不受影响。若其他插件仍依赖该组件,包管理器可能保留它。
294
+
295
+ ### 存储与清理
296
+
297
+ 卸载不等于清空共享安装缓存,也不能保证释放某个固定大小。安装缓存由 DSH/Portable 统一管理,本插件不直接删除共享目录。草稿、会话记录、生成原图和登录信息不是安装缓存;需要删除时应使用各自的管理入口,不做一键混合清理。
252
298
 
253
299
  ## 更新与卸载
254
300
 
@@ -276,22 +322,22 @@ dsh plugin --profile web remove dsh-codex-subscription
276
322
  ### 更新并检查
277
323
 
278
324
  ```sh
279
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 plugin --profile web update dsh-codex-subscription
280
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 plugin --profile web list dsh-codex-subscription --depth 0
281
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 --profile web --dump-config
325
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web update dsh-codex-subscription
326
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web list dsh-codex-subscription --depth 0
327
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 --profile web --dump-config
282
328
  ```
283
329
 
284
330
  ### 卸载
285
331
 
286
332
  ```sh
287
- npx -y @deepseek-ai/dsh@0.1.5-rc.1 plugin --profile web remove dsh-codex-subscription
333
+ npx -y @deepseek-ai/dsh@0.1.5-rc.2 plugin --profile web remove dsh-codex-subscription
288
334
  ```
289
335
 
290
336
  </details>
291
337
 
292
338
  ## 常见问题
293
339
 
294
- - **`dsh` 无法识别**:官方 npm 方式本来就不会创建全局 `dsh` 命令,请使用上面的完整 `npx -y @deepseek-ai/dsh@0.1.5-rc.1 ...` 命令;
340
+ - **`dsh` 无法识别**:官方 npm 方式本来就不会创建全局 `dsh` 命令,请使用上面的完整 `npx -y @deepseek-ai/dsh@0.1.5-rc.2 ...` 命令;
295
341
  - **电脑上有多个 DSH**:请从目标 DSH 环境运行标准命令,由该产品自身选择对应 profile;
296
342
  - **安装仍然失败**:确认命令是在目标 DSH 环境中运行,不要删除 profile 或随意修改系统 PATH。
297
343
  - **需要提交问题**:在设置页底部生成“支持诊断”,然后打开[使用问题表单](https://github.com/WSL043/dsh-codex-subscription/issues/new?template=install-problem.yml)。报告包含系统/运行时、有限的登录阶段和安全的请求失败分类,但不含凭据、账号标识、原始响应或完整日志;请粘贴到必填诊断栏,且不要附上登录链接、授权码或浏览器回调地址。
@@ -1,12 +1,14 @@
1
1
  {
2
- "latestTested": "0.1.5-rc.1",
2
+ "latestTested": "0.1.5-rc.2",
3
3
  "supported": [
4
4
  "0.1.2-rc.1",
5
- "0.1.5-rc.1"
5
+ "0.1.5-rc.1",
6
+ "0.1.5-rc.2"
6
7
  ],
7
8
  "previews": [
8
9
  "0.1.5-alpha.1",
9
10
  "0.1.5-alpha.2",
10
- "0.1.6-alpha.1"
11
+ "0.1.6-alpha.1",
12
+ "0.1.6-alpha.2"
11
13
  ]
12
14
  }