@mars-sea/dsh-commandcode-provider 0.12.7 → 0.12.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/CHANGELOG.md CHANGED
@@ -4,6 +4,25 @@ All notable changes to this project will be documented in this file.
4
4
 
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
6
 
7
+ ## [0.12.9] - 2026-10-09
8
+
9
+ ### Changed
10
+
11
+ - 同步官方 command-code@1.79.2,请求头 `x-command-code-version` 升至 `1.79.2`。Claude Haiku 5.5 的最低套餐从 Pro 下调至 GOAT,GOAT 用户可在模型选择器中看到该模型,累计分层由 54/63/78/86/87 变为 54/64/78/86/87。
12
+ - 同步官网价格与额度:Haiku 5.5 的 Pro 月额度 $20 → $30(GOAT 保持 $20);Sonnet 5.5 的缓存读取单价 $0.20 → $0.10/百万词元;Kimi K3 的 GOAT/Pro 月额度 $60/$70 → $20/$30。这些额度从套餐月度池中扣除,不是额外赠送额度,也不授予 Provider API 权限。
13
+ - 公开目录仍为 87 个模型;思考强度、视觉能力、订阅计划、促销、峰时规则与 21 项零数据保留例外未发现变化。CLI 请求、消息/工具转换、鉴权与登录函数静态对照未发现协议变化,本轮未进行登录后的实际生成验证。
14
+
15
+ ## [0.12.8] - 2026-10-08
16
+
17
+ ### Changed
18
+
19
+ - **引擎配对从「只支持 `0.2.1-alpha.1`」改为同时支持 `0.2.0-rc.2` 与 `0.2.1-alpha.1`,业务代码零改动。** 15 个 `@deepseek-ai/dsh-*` peer 写成两个已验证版本的析取 `0.2.0-rc.2 || 0.2.1-alpha.1`;`@deepseek-ai/cordis` 与 `@deepseek-ai/schemastery` 同批写成 `~4.0.4 || ~4.0.5-alpha.1` 与 `~3.18.4 || ~3.18.5-alpha.1`;`dsh.compatibility.dsh`、`engines.dsh` 与 `devDependencies` 逐字同步;`dsh.compatibility.dshReleases` 增补 `0.2.0-rc.2` 记录。**写成析取而不是宽范围是刻意的**:每个分支都是裸版本号,因此 `0.2.0-rc.1`、`0.2.1-alpha.2`、`0.2.1-rc.1`、`0.2.1`、`0.3.0-alpha.1` 等相邻版本仍然全部被拒——issue #43 的教训(未验证的邻居被静默放行)依旧被挡住。
20
+ - `npm run test:engine` 改为**引擎矩阵**:默认对 `dshReleases` 里声明的每个引擎各跑一遍完整套件(ESM 链接、静态具名导入审计、客户端 `require()` 种子审计、22 个流终态场景、网关事实隔离、持久化图片卸载契约、Config 易变契约),只在一个引擎上全绿不再算通过。`tests/package.test.ts` 的护栏同步升级为「peer 范围必须**恰好**等于已声明兼容版本的析取,且每个分支必须是裸版本号」,`scripts/verify-isolated-install.mjs` 的 peer 断言改为按版本而不是按范围文本比对锁文件。
21
+
22
+ ### Fixed
23
+
24
+ - **修掉「按官方默认方式装 dsh 的用户装不上本插件」。** `@deepseek-ai/dsh` 的 npm `latest` 一直停在 `0.2.0-rc.2`(`0.2.1-alpha.1` 只挂在 `alpha` 通道),官方桌面端放出的也是 rc 版本;而宿主 `dsh-app-boot` 的 `evaluatePluginCompatibility` 会拿运行中的 dsh 版本逐条比对插件的每个 `@deepseek-ai/dsh*` peer,不匹配即抛 `ManagementFailure('incompatible-version')` 当场拒绝安装。0.12.4~0.12.7 因此对 rc.2 用户完全无法安装(issue #77/#78);现在两条通道都能装。
25
+
7
26
  ## [0.12.7] - 2026-10-08
8
27
 
9
28
  ### Added
package/README.md CHANGED
@@ -35,8 +35,11 @@ See [Screenshots](#screenshots) below for what the UI looks like.
35
35
 
36
36
  ## Install
37
37
 
38
- This release supports **dsh 0.2.1-alpha.1 and nothing else** — the plugin's peer
39
- range is that one version, and its compatibility record names it alone:
38
+ This release supports **dsh 0.2.0-rc.2 and dsh 0.2.1-alpha.1, and nothing else** —
39
+ the plugin's peer range is exactly those two verified versions, and its
40
+ compatibility records name them alone. `0.2.0-rc.2` is what
41
+ `npm i -g @deepseek-ai/dsh@latest` and the official desktop build ship, so it is
42
+ the version most users are on; `0.2.1-alpha.1` is the upstream `alpha` channel:
40
43
 
41
44
  ```sh
42
45
  dsh plugin --profile web add @mars-sea/dsh-commandcode-provider@latest
@@ -63,14 +66,14 @@ dsh plugin --profile web add @mars-sea/dsh-commandcode-provider@0.11.15
63
66
 
64
67
  The same applies to every profile you install into, including the terminal UI below.
65
68
 
66
- Fresh pnpm 10 marketplace generations are supported directly. Every Harness package — including `@deepseek-ai/cordis` and `@deepseek-ai/schemastery` — is declared by the plugin at an exact version as a Host peer, so the active dsh profile remains their owner; do not add a separate dependency for any of them. Upstream removed the `@deepseek-ai/dsh-invariants` package in `0.2.1-alpha.1`, so the plugin no longer declares it.
69
+ Fresh pnpm 10 marketplace generations are supported directly. Every Harness package — including `@deepseek-ai/cordis` and `@deepseek-ai/schemastery` — is declared by the plugin over the same two-version range as its `@deepseek-ai/dsh-*` peers as a Host peer, so the active dsh profile remains their owner; do not add a separate dependency for any of them. Upstream removed the `@deepseek-ai/dsh-invariants` package in `0.2.1-alpha.1`, so the plugin no longer declares it.
67
70
 
68
71
  ## Updating
69
72
 
70
73
  Update with the same tag you installed with:
71
74
 
72
75
  ```sh
73
- dsh plugin --profile web update @mars-sea/dsh-commandcode-provider@latest # dsh 0.2.1-alpha.1
76
+ dsh plugin --profile web update @mars-sea/dsh-commandcode-provider@latest # dsh 0.2.0-rc.2 or 0.2.1-alpha.1
74
77
  dsh plugin --profile web update @mars-sea/dsh-commandcode-provider@0.9.1 # older dsh (0.5.0 line, unmaintained)
75
78
  ```
76
79
 
@@ -144,7 +147,7 @@ cmd login # writes ~/.commandcode/auth.json
144
147
  cwd: !!js process.cwd()
145
148
  ```
146
149
 
147
- **Engine version.** The plugin is maintained against exactly one engine: **dsh 0.2.1-alpha.1**. Its `@deepseek-ai/dsh-*` peers use the exact version `0.2.1-alpha.1`, `@deepseek-ai/cordis` is pinned to `~4.0.5-alpha.1` and `@deepseek-ai/schemastery` to `~3.18.5-alpha.1` (all three released with that engine), and `dsh.compatibility.dshReleases` records that single release. Adjacent prereleases and stable patch versions have not been verified. Note that `0.2.1-alpha.1` is an early alpha, so it is less stable than the `0.2.0-rc.2` release candidate it replaces. On an older engine the settings page, the message envelope, or the request-image budget will not line up — install the last release that supported your engine (see [Install](#install)) instead of forcing this one.
150
+ **Engine version.** The plugin is maintained against exactly two engines: **dsh 0.2.0-rc.2** and **dsh 0.2.1-alpha.1**. Its `@deepseek-ai/dsh-*` peers use the disjunction `0.2.0-rc.2 || 0.2.1-alpha.1`, `@deepseek-ai/cordis` is pinned to `~4.0.4 || ~4.0.5-alpha.1` and `@deepseek-ai/schemastery` to `~3.18.4 || ~3.18.5-alpha.1` (each branch shipped with its engine), and `dsh.compatibility.dshReleases` records exactly those two releases. That disjunction is deliberate and load-bearing: unlike a caret or a `>=` range it admits **no** adjacent prerelease, release candidate, or stable patch version, every branch is a bare version, and `npm run test:engine` runs the whole suite against **both** engines before a release. DSH itself refuses to load a plugin whose `@deepseek-ai/dsh*` peers do not admit the running engine, so a range that silently admitted an unverified neighbour would be worse than no range at all. On any other engine the settings page, the message envelope, or the request-image budget may not line up — install the last release that supported your engine (see [Install](#install)) instead of forcing this one.
148
151
 
149
152
  ## Usage dashboard
150
153
 
package/README.zh-CN.md CHANGED
@@ -33,7 +33,7 @@
33
33
 
34
34
  ## 安装
35
35
 
36
- 本版本**只支持 dsh 0.2.1-alpha.1**:插件的 peer 范围就是这一个版本,兼容性记录里也只列它。
36
+ 本版本**只支持 dsh 0.2.0-rc.2 与 dsh 0.2.1-alpha.1 这两个版本**:插件的 peer 范围就是这两个已验证版本的析取,兼容性记录里也只列它们。`0.2.0-rc.2` 正是 `npm i -g @deepseek-ai/dsh@latest` 与官方桌面端放出的版本,多数用户都在它上面;`0.2.1-alpha.1` 是上游的 `alpha` 通道:
37
37
 
38
38
  ```sh
39
39
  dsh plugin --profile web add @mars-sea/dsh-commandcode-provider@latest
@@ -55,14 +55,14 @@ dsh plugin --profile web add @mars-sea/dsh-commandcode-provider@0.11.15
55
55
 
56
56
  这一点对每个 profile 都成立,包括下面的终端界面。
57
57
 
58
- 插件可直接在 pnpm 10 的全新插件市场 generation 中安装。所有 Harness 包(含 `@deepseek-ai/cordis`、`@deepseek-ai/schemastery`)都由插件按精确版本声明为 Host peer,由当前 dsh profile 统一管理,不要另行添加 dependency。上游曾在 `0.2.1-alpha.1` 删除 `@deepseek-ai/dsh-invariants` 这个包,因此插件不再声明它。
58
+ 插件可直接在 pnpm 10 的全新插件市场 generation 中安装。所有 Harness 包(含 `@deepseek-ai/cordis`、`@deepseek-ai/schemastery`)都由插件按与 `@deepseek-ai/dsh-*` 相同的双版本范围声明为 Host peer,由当前 dsh profile 统一管理,不要另行添加 dependency。上游曾在 `0.2.1-alpha.1` 删除 `@deepseek-ai/dsh-invariants` 这个包,因此插件不再声明它。
59
59
 
60
60
  ## 更新
61
61
 
62
62
  用与安装时相同的 tag 更新:
63
63
 
64
64
  ```sh
65
- dsh plugin --profile web update @mars-sea/dsh-commandcode-provider@latest # dsh 0.2.1-alpha.1
65
+ dsh plugin --profile web update @mars-sea/dsh-commandcode-provider@latest # dsh 0.2.0-rc.2 或 0.2.1-alpha.1
66
66
  dsh plugin --profile web update @mars-sea/dsh-commandcode-provider@0.9.1 # 更早的 dsh(0.5.0 线,不再维护)
67
67
  ```
68
68
 
@@ -136,7 +136,7 @@ cmd login # 写入 ~/.commandcode/auth.json
136
136
  cwd: !!js process.cwd()
137
137
  ```
138
138
 
139
- **引擎版本要求。** 插件只针对一个引擎维护:**dsh 0.2.1-alpha.1**。它的 `@deepseek-ai/dsh-*` 对等依赖使用精确版本 `0.2.1-alpha.1`,`@deepseek-ai/cordis` 固定 `~4.0.5-alpha.1`、`@deepseek-ai/schemastery` 固定 `~3.18.5-alpha.1`(三者都与该引擎同批发布),`dsh.compatibility.dshReleases` 也只记录这一个版本。相邻预发布版与稳定补丁版尚未验证。注意 `0.2.1-alpha.1` 是 alpha 早期测试版,稳定性低于上一版的 `0.2.0-rc.2` 候选发布。在更早的引擎上,设置页、消息封装或请求图片预算总有一处对不上——请改装支持你所用引擎的最后一个版本,而不是硬装这一个。
139
+ **引擎版本要求。** 插件针对两个引擎维护:**dsh 0.2.0-rc.2** 与 **dsh 0.2.1-alpha.1**。它的 `@deepseek-ai/dsh-*` 对等依赖写成两者的析取 `0.2.0-rc.2 || 0.2.1-alpha.1`,`@deepseek-ai/cordis` 固定为 `~4.0.4 || ~4.0.5-alpha.1`、`@deepseek-ai/schemastery` 固定为 `~3.18.4 || ~3.18.5-alpha.1`(每个分支都与对应引擎同批发布),`dsh.compatibility.dshReleases` 也只记录这两个版本。这个析取写法是刻意的、且是承重的:它不像 `^` 或 `>=` 那样放行任何相邻的预发布版、候选发布或稳定补丁版,每个分支都是一个裸版本号,且发版前 `npm run test:engine` 会对**两个引擎各跑一遍**完整套件。DSH 本身会拒绝加载 `@deepseek-ai/dsh*` peer 不接纳当前引擎的插件——所以一个静默放行未验证邻居的范围,比没有范围更糟。在其它引擎上,设置页、消息封装或请求图片预算总有一处对不上——请改装支持你所用引擎的最后一个版本,而不是硬装这一个。
140
140
 
141
141
  ## 用量面板
142
142
 
package/lib/client.js CHANGED
@@ -3273,7 +3273,7 @@ window.__ModuleLoader__.load({
3273
3273
  }
3274
3274
  //#endregion
3275
3275
  //#region package.json
3276
- var version = "0.12.7";
3276
+ var version = "0.12.9";
3277
3277
  var repository = {
3278
3278
  "type": "git",
3279
3279
  "url": "git+https://github.com/Mars-Sea/dsh-commandcode-provider.git"
package/lib/index.d.ts CHANGED
@@ -61,7 +61,7 @@ type CommandCodeProtocol = 'cli' | 'openai' | 'messages';
61
61
  declare const DEFAULT_MAX_OUTPUT_TOKENS = 131072;
62
62
  //#endregion
63
63
  //#region src/adapter.d.ts
64
- declare const COMMAND_CODE_CLI_VERSION = "1.79.1";
64
+ declare const COMMAND_CODE_CLI_VERSION = "1.79.2";
65
65
  declare const DEFAULT_API_BASE = "https://api.commandcode.ai";
66
66
  /**
67
67
  * The output budget this bundle asks for, and the ceiling it will never exceed.
@@ -978,7 +978,7 @@ declare const KNOWN_EFFORTS: Readonly<Record<string, readonly string[]>>;
978
978
  declare const KNOWN_IMAGE_MODELS: ReadonlySet<string>;
979
979
  /**
980
980
  * Models WITHOUT a zero-data-retention upstream, per the official CLI's own
981
- * registry (`command-code@1.79.1` `dist/cli.mjs`): `modelSupportsZdr(id)` is
981
+ * registry (`command-code@1.79.2` `dist/cli.mjs`): `modelSupportsZdr(id)` is
982
982
  * exactly `!nonZdrSet.has(canonicalize(id))`, and `knownModelSupportsZdr`
983
983
  * carries the same membership in the sibling route table — the UNION of both
984
984
  * is this set. Reading only the sibling route table dropped
@@ -1050,13 +1050,14 @@ declare const KNOWN_THINKING_MODELS: ReadonlySet<string>;
1050
1050
  * `/docs/plans/max` and `/docs/resources/pricing-limits`). Each plan's model
1051
1051
  * list is a superset of the one below it: Go ⊂ GOAT ⊂ Pro ⊂ Provider/Max.
1052
1052
  * Models absent from every plan list (Claude Opus/Fable, Fugu Ultra) are
1053
- * Provider-tier. Re-verified at command-code@1.79.1 (2026-10-08): 87 catalog
1054
- * ids at 54/63/78/86 cumulative, a strict superset chain. Mistral Large 4
1053
+ * Provider-tier. Re-verified at command-code@1.79.2 (2026-10-09): 87 catalog
1054
+ * ids at 54/64/78/86 cumulative, a strict superset chain. Mistral Large 4
1055
1055
  * (1.75.0) was the only addition at the 1.77.0 check; the 1.78.0/1.79.0 pair
1056
- * added two more — Claude Haiku 5.5 at Pro and the free Glyph Cluster preview
1057
- * at Go — and the only removals since 1.49.0 are the two retired stealth
1058
- * previews (Pixel Canary at 1.73.1, Space Bunny Alpha at 1.74.3). No tier ever
1059
- * moved, and per-entry tags below name the release that added each row.
1056
+ * added Claude Haiku 5.5 at Pro and the free Glyph Cluster preview at Go.
1057
+ * 1.79.2 lowers Haiku 5.5's minimum plan to GOAT; every other tier is unchanged.
1058
+ * The only removals since 1.49.0 are the two retired stealth previews (Pixel
1059
+ * Canary at 1.73.1, Space Bunny Alpha at 1.74.3). Per-entry tags below name the
1060
+ * releases that added or moved each row.
1060
1061
  *
1061
1062
  * The Provider API exposes no plan metadata, so this snapshot is the source of
1062
1063
  * truth for the picker's plan annotation — it answers "which plan do I need to
package/lib/index.js CHANGED
@@ -103,7 +103,7 @@ const PLAN_ORDER = Object.fromEntries(PLAN_TIER_ORDER.map((tier, index) => [tier
103
103
  * subscription-plan labels, deals, and hourly (peak/off-peak) pricing.
104
104
  *
105
105
  * Everything here is synced from official sources — the command-code CLI
106
- * bundle's model table (`dist/cli.mjs`, re-verified at command-code@1.79.1) and
106
+ * bundle's model table (`dist/cli.mjs`, re-verified at command-code@1.79.2) and
107
107
  * the official plan/pricing/model docs; see the dsh-commandcode-upstream skill
108
108
  * for the extraction procedures. Keeping the snapshot in its own module
109
109
  * confines those frequent sync diffs here: src/adapter.ts holds only the stable
@@ -528,7 +528,7 @@ const KNOWN_IMAGE_MODELS = /* @__PURE__ */ new Set([
528
528
  ]);
529
529
  /**
530
530
  * Models WITHOUT a zero-data-retention upstream, per the official CLI's own
531
- * registry (`command-code@1.79.1` `dist/cli.mjs`): `modelSupportsZdr(id)` is
531
+ * registry (`command-code@1.79.2` `dist/cli.mjs`): `modelSupportsZdr(id)` is
532
532
  * exactly `!nonZdrSet.has(canonicalize(id))`, and `knownModelSupportsZdr`
533
533
  * carries the same membership in the sibling route table — the UNION of both
534
534
  * is this set. Reading only the sibling route table dropped
@@ -804,13 +804,14 @@ const MODEL_OUTPUT_TOKEN_LIMITS = /* @__PURE__ */ new Map([
804
804
  * `/docs/plans/max` and `/docs/resources/pricing-limits`). Each plan's model
805
805
  * list is a superset of the one below it: Go ⊂ GOAT ⊂ Pro ⊂ Provider/Max.
806
806
  * Models absent from every plan list (Claude Opus/Fable, Fugu Ultra) are
807
- * Provider-tier. Re-verified at command-code@1.79.1 (2026-10-08): 87 catalog
808
- * ids at 54/63/78/86 cumulative, a strict superset chain. Mistral Large 4
807
+ * Provider-tier. Re-verified at command-code@1.79.2 (2026-10-09): 87 catalog
808
+ * ids at 54/64/78/86 cumulative, a strict superset chain. Mistral Large 4
809
809
  * (1.75.0) was the only addition at the 1.77.0 check; the 1.78.0/1.79.0 pair
810
- * added two more — Claude Haiku 5.5 at Pro and the free Glyph Cluster preview
811
- * at Go — and the only removals since 1.49.0 are the two retired stealth
812
- * previews (Pixel Canary at 1.73.1, Space Bunny Alpha at 1.74.3). No tier ever
813
- * moved, and per-entry tags below name the release that added each row.
810
+ * added Claude Haiku 5.5 at Pro and the free Glyph Cluster preview at Go.
811
+ * 1.79.2 lowers Haiku 5.5's minimum plan to GOAT; every other tier is unchanged.
812
+ * The only removals since 1.49.0 are the two retired stealth previews (Pixel
813
+ * Canary at 1.73.1, Space Bunny Alpha at 1.74.3). Per-entry tags below name the
814
+ * releases that added or moved each row.
814
815
  *
815
816
  * The Provider API exposes no plan metadata, so this snapshot is the source of
816
817
  * truth for the picker's plan annotation — it answers "which plan do I need to
@@ -875,6 +876,7 @@ const KNOWN_PLANS = {
875
876
  "zai-org/GLM-5.2": "go",
876
877
  "zai-org/GLM-5.2-Fast": "go",
877
878
  "zai-org/GLM-5.3": "go",
879
+ "claude-haiku-5-5": "goat",
878
880
  "claude-sonnet-5-5": "goat",
879
881
  "google/gemini-3.7-flash": "goat",
880
882
  "google/gemini-3.8-flash": "goat",
@@ -885,7 +887,6 @@ const KNOWN_PLANS = {
885
887
  "xai/grok-4.7": "goat",
886
888
  "xiaomi/mimo-v2.6-pro-ultraspeed": "goat",
887
889
  "claude-haiku-4-5-20251001": "pro",
888
- "claude-haiku-5-5": "pro",
889
890
  "claude-sonnet-4-6": "pro",
890
891
  "claude-sonnet-5": "pro",
891
892
  "google/gemini-3.1-flash-lite": "pro",
@@ -1286,7 +1287,7 @@ const MODEL_PRICE_ROWS = [
1286
1287
  allowance: {
1287
1288
  go: 6,
1288
1289
  goat: 20,
1289
- pro: 20
1290
+ pro: 30
1290
1291
  },
1291
1292
  contextTiers: [{
1292
1293
  "maxContext": 1e5,
@@ -1406,7 +1407,7 @@ const MODEL_PRICE_ROWS = [
1406
1407
  rates: [
1407
1408
  2,
1408
1409
  10,
1409
- .2,
1410
+ .1,
1410
1411
  2.5
1411
1412
  ],
1412
1413
  allowance: {
@@ -2103,8 +2104,8 @@ const MODEL_PRICE_ROWS = [
2103
2104
  ],
2104
2105
  allowance: {
2105
2106
  go: 8,
2106
- goat: 60,
2107
- pro: 70
2107
+ goat: 20,
2108
+ pro: 30
2108
2109
  }
2109
2110
  },
2110
2111
  {
@@ -5327,7 +5328,7 @@ var GatewayFacts = class {
5327
5328
  * per-request options thunk and an API-key resolver from the plugin entry
5328
5329
  * (src/index.ts), so a settings change reaches the very next request.
5329
5330
  */
5330
- const COMMAND_CODE_CLI_VERSION = "1.79.1";
5331
+ const COMMAND_CODE_CLI_VERSION = "1.79.2";
5331
5332
  const DEFAULT_API_BASE = "https://api.commandcode.ai";
5332
5333
  /**
5333
5334
  * The output budget this bundle asks for, and the ceiling it will never exceed.