@mars-sea/dsh-commandcode-provider 0.15.2 → 0.15.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/CHANGELOG.md CHANGED
@@ -4,6 +4,26 @@ 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.15.3] - 2026-10-24
8
+
9
+ ### Changed
10
+
11
+ - **修复:本地 dsh 升到 `0.2.1-rc.3` 后插件被宿主禁用、使用不了。** 根因完全在声明面——宿主自 `0.2.1-alpha.4` 起判定插件兼容性时只读 `engines.dsh`,旧声明 `0.2.0-rc.2 || 0.2.1-rc.2` 不覆盖 `0.2.1-rc.3`,于是插件行被禁用、bundle 层被静默跳过、`dsh plugin add` 被拒;rc.3 相对 rc.2 没有任何插件使用的接口变化。
12
+ - **兼容声明从「裸版本析取」改为「同通道区间」:`>=0.2.1-rc.2 <0.2.2-0`。** `engines.dsh`、`dsh.compatibility.dsh` 与 15 个 peer/19 个开发依赖统一为该区间:`0.2.1` 通道中 `0.2.1-rc.2` 及以后的每个 RC(含未来的 `rc.4`)直接准入,下一个 minor 的预发布(`0.2.2-rc.*`)与正式版都被排除。**上界必须写 `<0.2.2-0`**:按 semver 优先级 `0.2.2-rc.1 < 0.2.2`,写成 `<0.2.2` 会放行下一个 minor 的 RC;`~0.2.1-rc.2` 等价于 `>=0.2.1-rc.2 <0.3.0`,同样错(node semver 实测)。代价明确接受:新 RC 自动准入,但仍要补进 `dshReleases` 才算验证过。
13
+ - **`dsh.compatibility.dshReleases` 保留两条实测记录**(`0.2.1-rc.2`、`0.2.1-rc.3`):准入由区间负责,记录只列跑过完整引擎矩阵的版本,并充当 `test:engine`/`test:install` 的矩阵来源。
14
+ - **`@deepseek-ai/cordis` / `@deepseek-ai/schemastery` 收敛为单分支 `~4.0.5` / `~3.18.5`。** rc.2 与 rc.3 的 vendor 实测都是这两个正式版,两代引擎配对相同;上一轮的 `~4.0.4 || ~4.0.5` / `~3.18.4 || ~3.18.5` 只为覆盖已退出 npm `latest` 的 `0.2.0-rc.2`。
15
+ - **删除 pre-rc.2 引擎的网页搜索选择分派。** `0.2.0-rc.2` 已退出 npm `latest` 并落在支持区间之外,`src/web-search.ts` 的实例字段 `searchProviderId` 分支与 `tests/web-search.test.ts` 的四个旧形状用例一并删除,只留易变引用(`Volatile`)路径与「没有可写选择面时不抛错」的降级契约测试。
16
+ - **`scripts/verify-isolated-install.mjs` 的矩阵来源改为 `dsh.compatibility.dshReleases`**(区间写法无法用 `||` 拆出逐版本列表);`tests/package.test.ts` 的断言同步改为「区间形状 + 下界 + 每条记录落在区间内且不早于下界」。
17
+
18
+ ### Verification
19
+
20
+ - **rc.3 相对 rc.2 零运行代码破坏**:采集 646 个变更路径、349 份包清单、采集错误为空;宿主准入语义(`packages/boot/app-boot/src/plugin-compatibility.ts`)与 Web 预置模块表(`packages/client/web/src/seed.ts`)逐字相同;插件导入的宿主包源码零变更;五个既用插槽全部保留(rc.3 只新增 `sidebar.panellist.actions`、`conversation.session.header.views.actions`、`sidebar.right.tab.guide.actions` 三个 list 类插槽,由官方 `ui-entry-customization` 注册);`dsh-client-ui-primitives` 导出符号集合逐个相同。
21
+ - `npm run typecheck` 退出码 0;`npm test` **1107/1107** 通过、0 失败(比 0.15.2 的 1111 少 4 项,正是删除的四个旧引擎形状用例);`npm run build` 完成,`lib/index.js`、`lib/index.d.ts`、`lib/client.js` 已重建。
22
+ - `npm run test:engine` **2/2**:`dsh 0.2.1-rc.2` 与 `dsh 0.2.1-rc.3` 都输出 `host compatibility preflight admits this plugin`,末行 `engine-load smoke passed on all 2 declared-compatible engines (0.2.1-rc.2, 0.2.1-rc.3)`。
23
+ - `npm run test:install` **2/2**(pnpm `10.34.5`):`isolated install passed with pnpm 10.34.5 (dsh 0.2.1-rc.2)` 与 `(dsh 0.2.1-rc.3)`,末行 `engine matrix verified: 0.2.1-rc.2, 0.2.1-rc.3`。
24
+ - **锁文件**:18 个 `@deepseek-ai/dsh-*` 开发依赖整批升到 `0.2.1-rc.3`(这些包之间是精确 peer,不能混版,混版必然 `ERESOLVE`),`zod` 随之从 4.6.5 变为 4.4.3(rc.3 改为共享顶层副本,删掉三个嵌套副本),`resolve.exports` 2.0.3 → 2.0.4(`dsh-app-boot` 依赖);重建解析顺带造成的 `rolldown`/`@oxc-project/types`/`fast-uri`/`cac` 等无关漂移已按上一版逐条回滚,`npm ci --dry-run` 退出码 0。
25
+ - **未做**:真实浏览器渲染、正在运行的 dsh Web 宿主内端到端实测(需重启宿主重新做准入判定)、真实账号登录与付费生成。本地开发树已在 `0.2.1-rc.3` 上跑通 typecheck 与 1107 项测试。
26
+
7
27
  ## [0.15.2] - 2026-10-23
8
28
 
9
29
  ### Changed
package/README.md CHANGED
@@ -18,7 +18,7 @@ Unofficial [DeepSeek Harness](https://deepseek-harness.github.io/deepseek-harnes
18
18
 
19
19
  | | |
20
20
  |---|---|
21
- | Verified engines | dsh `0.2.0-rc.2` (npm `latest`) · dsh `0.2.1-rc.2` (npm `next`) |
21
+ | Verified engines | dsh `>=0.2.1-rc.2 <0.2.2-0` (every `0.2.1` RC from `0.2.1-rc.2` on) |
22
22
  | Install — web | `dsh plugin --profile web add @mars-sea/dsh-commandcode-provider@latest` |
23
23
  | Install — terminal | `dsh plugin --profile dsh-tui add @mars-sea/dsh-commandcode-provider@latest` |
24
24
  | Config file | `$DSH_HOME/settings.yaml` → `llm-commandcode:` |
@@ -61,7 +61,7 @@ Unofficial [DeepSeek Harness](https://deepseek-harness.github.io/deepseek-harnes
61
61
  dsh plugin --profile web add @mars-sea/dsh-commandcode-provider@latest
62
62
  ```
63
63
 
64
- This build targets **dsh `0.2.0-rc.2` and `0.2.1-rc.2`** — two verified engines, both on the RC channel. `0.2.0-rc.2` is what npm `latest` points at, so it is the engine a default install runs; `0.2.1-rc.2` ships on `next`. A profile on `0.2.1-alpha.5` or older must upgrade its engine first. Compatibility details — peer ranges, the `engines.dsh` admission rule, per-engine package pairings — live in [engine compatibility](docs/agent-reference/engine-compatibility.md).
64
+ This build admits **dsh `>=0.2.1-rc.2 <0.2.2-0`** — every RC of the `0.2.1` channel from `0.2.1-rc.2` onward. `0.2.1-rc.2` is what npm `latest` runs and `0.2.1-rc.3` ships on `next`; both are covered by the full engine matrix (`npm run test:engine`, `npm run test:install`). A later `0.2.1-rc.4` is admitted without a plugin update, but stays unverified until a record is added to `dsh.compatibility.dshReleases`. The next minor is deliberately excluded, `0.2.2-rc.*` included — the upper bound is written `<0.2.2-0` for exactly that reason. A profile on `0.2.0-rc.2`, `0.2.1-alpha.5` or older must upgrade its engine first. Compatibility details — the `engines.dsh` admission rule, package pairings, evidence — live in [engine compatibility](docs/agent-reference/engine-compatibility.md).
65
65
 
66
66
  **Older dsh releases** are no longer supported: the last plugin release for dsh 0.1.7 is `0.11.17`, for 0.1.2–0.1.6 it is `0.11.11`, and for the 0.5.0-era line `0.9.1` — all installed by exact version, none maintained.
67
67
 
package/README.zh-CN.md CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  | | |
20
20
  |---|---|
21
- | 已验证引擎 | dsh `0.2.0-rc.2`(npm `latest`)· dsh `0.2.1-rc.2`(npm `next`) |
21
+ | 已验证引擎 | dsh `>=0.2.1-rc.2 <0.2.2-0`(`0.2.1` 通道中 `0.2.1-rc.2` 及以后的每个 RC) |
22
22
  | 安装 —— 网页端 | `dsh plugin --profile web add @mars-sea/dsh-commandcode-provider@latest` |
23
23
  | 安装 —— 终端端 | `dsh plugin --profile dsh-tui add @mars-sea/dsh-commandcode-provider@latest` |
24
24
  | 配置文件 | `$DSH_HOME/settings.yaml` → `llm-commandcode:` |
@@ -61,7 +61,7 @@
61
61
  dsh plugin --profile web add @mars-sea/dsh-commandcode-provider@latest
62
62
  ```
63
63
 
64
- 本构建面向 **dsh `0.2.0-rc.2` 与 `0.2.1-rc.2`** —— 两个已验证引擎,都走 RC(候选发布版)通道。`0.2.0-rc.2` 至今仍是 npm `latest` 指向的版本,也就是官方默认安装会跑的那一版;`0.2.1-rc.2` 挂在 `next` 标签上。使用 `0.2.1-alpha.5` 或更早版本的配置需先升级引擎,再安装本构建。兼容性细节 —— peer(对等依赖)范围、`engines.dsh` 准入规则、按引擎配对的包版本 —— 见[引擎兼容](docs/agent-reference/engine-compatibility.md)。
64
+ 本构建准入 **dsh `>=0.2.1-rc.2 <0.2.2-0`** —— `0.2.1` 通道中 `0.2.1-rc.2` 及以后的每个 RC。`0.2.1-rc.2` 是 npm `latest` 指向的版本,`0.2.1-rc.3` 挂在 `next`;两者都跑过完整引擎矩阵(`npm run test:engine`、`npm run test:install`)。更晚的 `0.2.1-rc.4` 无需更新插件即可准入,但在 `dsh.compatibility.dshReleases` 补上记录之前不算已验证。下一个 minor 被刻意排除(含 `0.2.2-rc.*`)—— 区间上界写成 `<0.2.2-0` 正是为了这一点。使用 `0.2.0-rc.2`、`0.2.1-alpha.5` 或更早版本的配置需先升级引擎,再安装本构建。兼容性细节 —— `engines.dsh` 准入规则、按引擎配对的包版本、验证证据 —— 见[引擎兼容](docs/agent-reference/engine-compatibility.md)。
65
65
 
66
66
  **更早的 dsh 版本**已不再支持:覆盖 dsh 0.1.7 的最后一个插件版本是 `0.11.17`,0.1.2–0.1.6 线的最后一个版本是 `0.11.11`,0.5.0 时代 Harness 线的最后一个版本是 `0.9.1` —— 三者都按精确版本安装,且都不再维护。
67
67
 
package/lib/client.js CHANGED
@@ -3837,7 +3837,7 @@ window.__ModuleLoader__.load({
3837
3837
  }
3838
3838
  //#endregion
3839
3839
  //#region package.json
3840
- var version = "0.15.2";
3840
+ var version = "0.15.3";
3841
3841
  var repository = {
3842
3842
  "type": "git",
3843
3843
  "url": "git+https://github.com/Mars-Sea/dsh-commandcode-provider.git"
package/lib/index.d.ts CHANGED
@@ -2128,18 +2128,6 @@ interface WebSearchSelectionHandle {
2128
2128
  * it first and falls back to the reference only when settings is unavailable or
2129
2129
  * refuses (see `volatileWrite`).
2130
2130
  *
2131
- * ## Two engine shapes
2132
- *
2133
- * Everything above describes an rc.2+ runtime, where the selection is a
2134
- * reference. PRE-rc.2 engines (0.2.0-rc.2 and the 0.2.1 alphas) have neither
2135
- * that reference nor a settings row for `web`: there the selection is the
2136
- * private instance field `searchProviderId`, memory-only by nature. Those
2137
- * engines therefore run the degraded path BY CONSTRUCTION — no profile write
2138
- * exists for it and the user layer is unreadable, so a foreign pin cannot be
2139
- * seen and the takeover/restore semantics are the ones this plugin shipped
2140
- * before rc.2: remember the displaced backend, hand back only what we took. The
2141
- * shape is resolved per observation, so one build serves both.
2142
- *
2143
2131
  * ## Two writers, one field
2144
2132
  *
2145
2133
  * The shipped web-search settings page writes `web.searchProvider` too
package/lib/index.js CHANGED
@@ -10763,13 +10763,11 @@ function unwrapVolatileConfig(config) {
10763
10763
  * the model-facing `web_search` tool needs no separate configuration.
10764
10764
  *
10765
10765
  * The second half of this module is the SELECTION seam: which registered search
10766
- * backend `ctx.web` actually runs. That seam has TWO engine shapes, and both are
10767
- * supported. dsh 0.2.1-rc.2 turned the choice into a per-call `Volatile` field of
10768
- * the `web` profile entry, so it is changed through the host settings service
10769
- * rather than by assigning a runtime field. Engines up to and including
10770
- * 0.2.1-alpha.4 kept it in the private instance field `searchProviderId`, which
10771
- * has no settings surface and can only be assigned in memory — see
10772
- * {@link createCommandCodeSearchSelection}.
10766
+ * backend `ctx.web` actually runs. dsh 0.2.1-rc.2 turned the choice into a per-call
10767
+ * `Volatile` field of the `web` profile entry, so it is changed through the host
10768
+ * settings service rather than by assigning a runtime field. The supported
10769
+ * engine range (`engines.dsh`) starts at rc.2, so that reference is the only
10770
+ * shape this module serves — see {@link createCommandCodeSearchSelection}.
10773
10771
  *
10774
10772
  * @module dsh-commandcode-provider/web-search
10775
10773
  */
@@ -10832,29 +10830,6 @@ function selectionRow(settings) {
10832
10830
  function searchProviderRef(web) {
10833
10831
  return member(member(web, "config"), "searchProvider");
10834
10832
  }
10835
- /**
10836
- * The pre-rc.2 instance field, or `undefined` when this runtime does not carry
10837
- * it.
10838
- *
10839
- * An OWN property is the discriminator, not a value test: a runtime of the
10840
- * reference shape never has `searchProviderId` at all, so the two shapes cannot
10841
- * both answer and neither needs to be preferred over the other.
10842
- */
10843
- function legacySearchField(web) {
10844
- if (!Object.prototype.hasOwnProperty.call(web, "searchProviderId")) return void 0;
10845
- const shaped = web;
10846
- return {
10847
- read: () => text(shaped.searchProviderId),
10848
- write: (value) => {
10849
- try {
10850
- shaped.searchProviderId = value;
10851
- return true;
10852
- } catch {
10853
- return false;
10854
- }
10855
- }
10856
- };
10857
- }
10858
10833
  /** Observe the live selection; `undefined` when nothing can be observed. */
10859
10834
  function readView(deps) {
10860
10835
  const settings = deps.settings();
@@ -10888,15 +10863,6 @@ function readView(deps) {
10888
10863
  persistent: false
10889
10864
  };
10890
10865
  }
10891
- const legacy = legacySearchField(deps.web);
10892
- if (legacy === void 0) return void 0;
10893
- return {
10894
- configured: legacy.read(),
10895
- pinned: void 0,
10896
- base: void 0,
10897
- user: {},
10898
- persistent: false
10899
- };
10900
10866
  }
10901
10867
  /**
10902
10868
  * The selection seam over `ctx.web`.
@@ -10914,18 +10880,6 @@ function readView(deps) {
10914
10880
  * it first and falls back to the reference only when settings is unavailable or
10915
10881
  * refuses (see `volatileWrite`).
10916
10882
  *
10917
- * ## Two engine shapes
10918
- *
10919
- * Everything above describes an rc.2+ runtime, where the selection is a
10920
- * reference. PRE-rc.2 engines (0.2.0-rc.2 and the 0.2.1 alphas) have neither
10921
- * that reference nor a settings row for `web`: there the selection is the
10922
- * private instance field `searchProviderId`, memory-only by nature. Those
10923
- * engines therefore run the degraded path BY CONSTRUCTION — no profile write
10924
- * exists for it and the user layer is unreadable, so a foreign pin cannot be
10925
- * seen and the takeover/restore semantics are the ones this plugin shipped
10926
- * before rc.2: remember the displaced backend, hand back only what we took. The
10927
- * shape is resolved per observation, so one build serves both.
10928
- *
10929
10883
  * ## Two writers, one field
10930
10884
  *
10931
10885
  * The shipped web-search settings page writes `web.searchProvider` too
@@ -10962,14 +10916,11 @@ function createCommandCodeSearchSelection(deps) {
10962
10916
  /**
10963
10917
  * Commit the selection in memory; the last resort before giving up.
10964
10918
  *
10965
- * The volatile reference is tried first because on an rc.2+ runtime that is
10966
- * what `search()` reads. A PRE-rc.2 runtime carries no reference at all, and
10967
- * there the private instance field IS the seam — the fallback is a different
10968
- * engine shape, not a second-best copy of the same write.
10919
+ * The volatile reference is what `search()` reads on every supported engine
10920
+ * (`engines.dsh` starts at 0.2.1-rc.2), so it is the only in-memory seam.
10969
10921
  */
10970
10922
  const memoryWrite = (value) => {
10971
10923
  if (volatileWrite(searchProviderRef(deps.web), value)) return true;
10972
- if (legacySearchField(deps.web)?.write(value) === true) return true;
10973
10924
  warn("llm-commandcode: web search selection could not be applied (settings refused the write and the running web runtime is not writable); the provider stays registered but unselected");
10974
10925
  return false;
10975
10926
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mars-sea/dsh-commandcode-provider",
3
- "version": "0.15.2",
3
+ "version": "0.15.3",
4
4
  "description": "Unofficial DeepSeek Harness LLM provider plugin for Command Code, ported from pi-commandcode-provider (MIT). Registers the 'commandcode' provider route with a Models-page card and live model catalog.",
5
5
  "icon": "./icon.svg",
6
6
  "type": "module",
@@ -23,10 +23,10 @@
23
23
  },
24
24
  "compatibility": {
25
25
  "dshReleases": {
26
- "0.2.0-rc.2": "compatible",
27
- "0.2.1-rc.2": "compatible"
26
+ "0.2.1-rc.2": "compatible",
27
+ "0.2.1-rc.3": "compatible"
28
28
  },
29
- "dsh": "0.2.0-rc.2 || 0.2.1-rc.2"
29
+ "dsh": ">=0.2.1-rc.2 <0.2.2-0"
30
30
  },
31
31
  "client": {
32
32
  "inject": [
@@ -61,7 +61,7 @@
61
61
  },
62
62
  "engines": {
63
63
  "node": ">=22",
64
- "dsh": "0.2.0-rc.2 || 0.2.1-rc.2"
64
+ "dsh": ">=0.2.1-rc.2 <0.2.2-0"
65
65
  },
66
66
  "publishConfig": {
67
67
  "access": "public"
@@ -87,24 +87,24 @@
87
87
  ],
88
88
  "license": "MIT",
89
89
  "peerDependencies": {
90
- "@deepseek-ai/cordis": "~4.0.4 || ~4.0.5",
91
- "@deepseek-ai/dsh-api-remotes": "0.2.0-rc.2 || 0.2.1-rc.2",
92
- "@deepseek-ai/dsh-attachment": "0.2.0-rc.2 || 0.2.1-rc.2",
93
- "@deepseek-ai/dsh-client-locale": "0.2.0-rc.2 || 0.2.1-rc.2",
94
- "@deepseek-ai/dsh-client-ui-primitives": "0.2.0-rc.2 || 0.2.1-rc.2",
95
- "@deepseek-ai/dsh-client-ui-renderer": "0.2.0-rc.2 || 0.2.1-rc.2",
96
- "@deepseek-ai/dsh-client-ui-settings": "0.2.0-rc.2 || 0.2.1-rc.2",
97
- "@deepseek-ai/dsh-client-ui-slots": "0.2.0-rc.2 || 0.2.1-rc.2",
98
- "@deepseek-ai/dsh-commands": "0.2.0-rc.2 || 0.2.1-rc.2",
99
- "@deepseek-ai/dsh-credentials": "0.2.0-rc.2 || 0.2.1-rc.2",
100
- "@deepseek-ai/dsh-launch-environment": "0.2.0-rc.2 || 0.2.1-rc.2",
101
- "@deepseek-ai/dsh-llm": "0.2.0-rc.2 || 0.2.1-rc.2",
102
- "@deepseek-ai/dsh-settings": "0.2.0-rc.2 || 0.2.1-rc.2",
103
- "@deepseek-ai/dsh-timeout": "0.2.0-rc.2 || 0.2.1-rc.2",
104
- "@deepseek-ai/dsh-typert-protocol": "0.2.0-rc.2 || 0.2.1-rc.2",
105
- "@deepseek-ai/schemastery": "~3.18.4 || ~3.18.5",
90
+ "@deepseek-ai/cordis": "~4.0.5",
91
+ "@deepseek-ai/dsh-api-remotes": ">=0.2.1-rc.2 <0.2.2-0",
92
+ "@deepseek-ai/dsh-attachment": ">=0.2.1-rc.2 <0.2.2-0",
93
+ "@deepseek-ai/dsh-client-locale": ">=0.2.1-rc.2 <0.2.2-0",
94
+ "@deepseek-ai/dsh-client-ui-primitives": ">=0.2.1-rc.2 <0.2.2-0",
95
+ "@deepseek-ai/dsh-client-ui-renderer": ">=0.2.1-rc.2 <0.2.2-0",
96
+ "@deepseek-ai/dsh-client-ui-settings": ">=0.2.1-rc.2 <0.2.2-0",
97
+ "@deepseek-ai/dsh-client-ui-slots": ">=0.2.1-rc.2 <0.2.2-0",
98
+ "@deepseek-ai/dsh-commands": ">=0.2.1-rc.2 <0.2.2-0",
99
+ "@deepseek-ai/dsh-credentials": ">=0.2.1-rc.2 <0.2.2-0",
100
+ "@deepseek-ai/dsh-launch-environment": ">=0.2.1-rc.2 <0.2.2-0",
101
+ "@deepseek-ai/dsh-llm": ">=0.2.1-rc.2 <0.2.2-0",
102
+ "@deepseek-ai/dsh-settings": ">=0.2.1-rc.2 <0.2.2-0",
103
+ "@deepseek-ai/dsh-timeout": ">=0.2.1-rc.2 <0.2.2-0",
104
+ "@deepseek-ai/dsh-typert-protocol": ">=0.2.1-rc.2 <0.2.2-0",
105
+ "@deepseek-ai/schemastery": "~3.18.5",
106
106
  "react": "^18.2.0",
107
- "@deepseek-ai/dsh-web": "0.2.0-rc.2 || 0.2.1-rc.2"
107
+ "@deepseek-ai/dsh-web": ">=0.2.1-rc.2 <0.2.2-0"
108
108
  },
109
109
  "peerDependenciesMeta": {
110
110
  "@deepseek-ai/dsh-client-ui-primitives": {
@@ -118,27 +118,27 @@
118
118
  }
119
119
  },
120
120
  "devDependencies": {
121
- "@deepseek-ai/cordis": "~4.0.4 || ~4.0.5",
122
- "@deepseek-ai/dsh-agent": "0.2.0-rc.2 || 0.2.1-rc.2",
123
- "@deepseek-ai/dsh-api-remotes": "0.2.0-rc.2 || 0.2.1-rc.2",
124
- "@deepseek-ai/dsh-attachment": "0.2.0-rc.2 || 0.2.1-rc.2",
125
- "@deepseek-ai/dsh-client-locale": "0.2.0-rc.2 || 0.2.1-rc.2",
126
- "@deepseek-ai/dsh-client-ui-primitives": "0.2.0-rc.2 || 0.2.1-rc.2",
127
- "@deepseek-ai/dsh-client-ui-renderer": "0.2.0-rc.2 || 0.2.1-rc.2",
128
- "@deepseek-ai/dsh-client-ui-settings": "0.2.0-rc.2 || 0.2.1-rc.2",
129
- "@deepseek-ai/dsh-client-ui-slots": "0.2.0-rc.2 || 0.2.1-rc.2",
130
- "@deepseek-ai/dsh-commands": "0.2.0-rc.2 || 0.2.1-rc.2",
131
- "@deepseek-ai/dsh-credentials": "0.2.0-rc.2 || 0.2.1-rc.2",
132
- "@deepseek-ai/dsh-launch-environment": "0.2.0-rc.2 || 0.2.1-rc.2",
133
- "@deepseek-ai/dsh-llm": "0.2.0-rc.2 || 0.2.1-rc.2",
134
- "@deepseek-ai/dsh-settings": "0.2.0-rc.2 || 0.2.1-rc.2",
135
- "@deepseek-ai/dsh-session": "0.2.0-rc.2 || 0.2.1-rc.2",
136
- "@deepseek-ai/dsh-scope": "0.2.0-rc.2 || 0.2.1-rc.2",
137
- "@deepseek-ai/dsh-session-projection": "0.2.0-rc.2 || 0.2.1-rc.2",
138
- "@deepseek-ai/dsh-timeout": "0.2.0-rc.2 || 0.2.1-rc.2",
139
- "@deepseek-ai/dsh-typert-protocol": "0.2.0-rc.2 || 0.2.1-rc.2",
140
- "@deepseek-ai/dsh-web": "0.2.0-rc.2 || 0.2.1-rc.2",
141
- "@deepseek-ai/schemastery": "~3.18.4 || ~3.18.5",
121
+ "@deepseek-ai/cordis": "~4.0.5",
122
+ "@deepseek-ai/dsh-agent": ">=0.2.1-rc.2 <0.2.2-0",
123
+ "@deepseek-ai/dsh-api-remotes": ">=0.2.1-rc.2 <0.2.2-0",
124
+ "@deepseek-ai/dsh-attachment": ">=0.2.1-rc.2 <0.2.2-0",
125
+ "@deepseek-ai/dsh-client-locale": ">=0.2.1-rc.2 <0.2.2-0",
126
+ "@deepseek-ai/dsh-client-ui-primitives": ">=0.2.1-rc.2 <0.2.2-0",
127
+ "@deepseek-ai/dsh-client-ui-renderer": ">=0.2.1-rc.2 <0.2.2-0",
128
+ "@deepseek-ai/dsh-client-ui-settings": ">=0.2.1-rc.2 <0.2.2-0",
129
+ "@deepseek-ai/dsh-client-ui-slots": ">=0.2.1-rc.2 <0.2.2-0",
130
+ "@deepseek-ai/dsh-commands": ">=0.2.1-rc.2 <0.2.2-0",
131
+ "@deepseek-ai/dsh-credentials": ">=0.2.1-rc.2 <0.2.2-0",
132
+ "@deepseek-ai/dsh-launch-environment": ">=0.2.1-rc.2 <0.2.2-0",
133
+ "@deepseek-ai/dsh-llm": ">=0.2.1-rc.2 <0.2.2-0",
134
+ "@deepseek-ai/dsh-settings": ">=0.2.1-rc.2 <0.2.2-0",
135
+ "@deepseek-ai/dsh-session": ">=0.2.1-rc.2 <0.2.2-0",
136
+ "@deepseek-ai/dsh-scope": ">=0.2.1-rc.2 <0.2.2-0",
137
+ "@deepseek-ai/dsh-session-projection": ">=0.2.1-rc.2 <0.2.2-0",
138
+ "@deepseek-ai/dsh-timeout": ">=0.2.1-rc.2 <0.2.2-0",
139
+ "@deepseek-ai/dsh-typert-protocol": ">=0.2.1-rc.2 <0.2.2-0",
140
+ "@deepseek-ai/dsh-web": ">=0.2.1-rc.2 <0.2.2-0",
141
+ "@deepseek-ai/schemastery": "~3.18.5",
142
142
  "@types/node": "^22.0.0",
143
143
  "@types/react": "^18.3.1",
144
144
  "parse5": "8.0.1",