@banbolee/dsh-fish-shell 0.8.0 → 0.8.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/CHANGELOG.md CHANGED
@@ -5,6 +5,23 @@ All notable changes to `@banbolee/dsh-fish-shell` are documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [0.8.1] - 2026-10-14
9
+
10
+ This is a **patch** release (`0.8.0` → `0.8.1`): the bundle now targets the
11
+ `0.2.0-rc.2` DSH family, with no behavioural change of its own.
12
+
13
+ ### Changed
14
+
15
+ - The `@deepseek-ai/*` dependency family moves to `0.2.0-rc.2` (dsh
16
+ `0.2.0-rc.2`): the peer and dev ranges are `^0.2.0-rc.2`, and the bundled
17
+ `@deepseek-ai/dsh-tool-terminal` pin is `0.2.0-rc.2`. `0.8.0` cannot be
18
+ installed against a `0.2.0-rc.2` harness.
19
+
20
+ ### Documentation
21
+
22
+ - README (both languages) names the `0.2.0-rc.2` family in the support matrix;
23
+ `THIRD-PARTY-NOTICES.md` follows the bundled pin.
24
+
8
25
  ## [0.8.0] - 2026-10-09
9
26
 
10
27
  This is a **minor** release (`0.7.0` → `0.8.0`): a new capability, no breaking
package/README.md CHANGED
@@ -119,7 +119,7 @@ below for the authoritative scope before deploying elsewhere.
119
119
 
120
120
  | Item | Supported | Verified |
121
121
  |---|---|---|
122
- | `@deepseek-ai/*` dsh family | `0.2.0-rc.1` — the exact pins live in the repository root `package.json` (`pnpm.overrides`) | yes: real isolated profiles in the S0 probe runs |
122
+ | `@deepseek-ai/*` dsh family | `0.2.0-rc.2` — the exact pins live in the repository root `package.json` (`pnpm.overrides`) | yes: real isolated profiles in the S0 probe runs |
123
123
  | `fish` | `3.7+` | yes on `3.7.1`; lower versions are unverified |
124
124
  | Platform | POSIX only: Linux and macOS. Windows is not supported (the `pwsh` family covers it) | Linux: the real lane with `DSH_REAL_FISH_PTY=1` in the `test` job; macOS: the `fish-pty-macos` job runs the real L2 lane, including the `workspace-write` denial outside the workspace |
125
125
  | Node.js | `>=22` (`engines.node`) | yes |
@@ -196,7 +196,15 @@ has to turn provenance off for that one run with `--no-provenance`. **2FA is a
196
196
  release prerequisite** — provenance does not replace it and npm checks it on
197
197
  the account/organization side, which this repository cannot verify. Before
198
198
  publishing, turn the `[Unreleased]` section of `CHANGELOG.md` into the version
199
- being released (this `0.8.0` cut did exactly that).
199
+ being released (this `0.8.1` cut did exactly that).
200
+
201
+ The published artefact has to be packed from a staged tree installed with
202
+ `--config.package-import-method=copy`: pnpm's default import method hardlinks
203
+ store files, and npmjs rejects a tarball carrying hardlink members with
204
+ `415 Unsupported Media Type — Hard link is not allowed`. `npm publish --dry-run`
205
+ cannot catch that (a dry run never uploads), so the release workflow asserts the
206
+ shape explicitly and `plugins/fish-shell/tests/packed-files.spec.ts` asserts the
207
+ same on its own `npm pack` artefact.
200
208
 
201
209
  ## Interactive terminal sessions (L2)
202
210
 
@@ -274,7 +282,7 @@ an interactive surface exists.
274
282
 
275
283
  **The bundled `@deepseek-ai/dsh-tool-terminal`.** The `terminal-tools` row
276
284
  resolves the official tool package from inside this package, not from the
277
- profile plane: `@deepseek-ai/dsh-tool-terminal@0.2.0-rc.1` is declared in
285
+ profile plane: `@deepseek-ai/dsh-tool-terminal@0.2.0-rc.2` is declared in
278
286
  `dependencies` and `bundledDependencies`, so packing ships it, and its
279
287
  transitive dependencies, as real files under `node_modules/` inside the
280
288
  tarball. That is what makes an offline profile install work. It must not be
@@ -467,7 +475,7 @@ bundled dependency and fails with
467
475
  `ERR_PNPM_BUNDLED_DEPENDENCIES_WITHOUT_HOISTED`. Check the artefact: the
468
476
  tarball must contain
469
477
  `package/node_modules/@deepseek-ai/dsh-tool-terminal/package.json`. One
470
- upstream cause is not ours to fix: `@deepseek-ai/dsh-tool-terminal@0.2.0-rc.1`
478
+ upstream cause is not ours to fix: `@deepseek-ai/dsh-tool-terminal@0.2.0-rc.2`
471
479
  declares `exports` entries for `./src/*` that the published tarball does not
472
480
  contain, so anything resolving through that subpath fails with
473
481
  `ERR_MODULE_NOT_FOUND`.
package/README.zh.md CHANGED
@@ -24,7 +24,7 @@ DeepSeek Harness 的 fish shell executor 与工具:用 **fish** 而不是 bash
24
24
 
25
25
  | 项 | 支持范围 | 验证情况 |
26
26
  |---|---|---|
27
- | `@deepseek-ai/*` dsh 族 | `0.2.0-rc.1` —— 精确版本钉在仓库根 `package.json`(`pnpm.overrides`) | 是:S0 探针在真实隔离 profile 里跑过 |
27
+ | `@deepseek-ai/*` dsh 族 | `0.2.0-rc.2` —— 精确版本钉在仓库根 `package.json`(`pnpm.overrides`) | 是:S0 探针在真实隔离 profile 里跑过 |
28
28
  | `fish` | `3.7+` | 是,实测 `3.7.1`;更低版本未验证 |
29
29
  | 平台 | 仅 POSIX:Linux 与 macOS。Windows 不支持(Windows 由 `pwsh` 系列覆盖) | Linux:`test` job 里 `DSH_REAL_FISH_PTY=1` 的真实 lane;macOS:`fish-pty-macos` job 跑真实 L2 lane,含 `workspace-write` 下 workspace 外写入被拒 |
30
30
  | Node.js | `>=22`(`engines.node`) | 是 |
@@ -65,7 +65,9 @@ dsh plugin --profile <name> add ./plugins/fish-shell
65
65
 
66
66
  ### 发布与 provenance
67
67
 
68
- 发布预期带上 **npm provenance**:`publishConfig` 里带 `provenance: true`,因此从支持 OIDC 的 CI(GitHub Actions)发布即可,或显式执行 `npm publish --provenance --access public`。本机发布会缺少为该次构建作证的 OIDC provider,因此维护者从工作站发版时必须为那一次发布关掉 provenance,用 `--no-provenance`。**2FA 是发版前置条件**——provenance 不能替代它,且 npm 在账户/组织侧校验,本仓库无法验证。发布前把 `CHANGELOG.md` 的 `[Unreleased]` 落成即将发布的版本号(本次 `0.8.0` 就是这样做的)。
68
+ 发布预期带上 **npm provenance**:`publishConfig` 里带 `provenance: true`,因此从支持 OIDC 的 CI(GitHub Actions)发布即可,或显式执行 `npm publish --provenance --access public`。本机发布会缺少为该次构建作证的 OIDC provider,因此维护者从工作站发版时必须为那一次发布关掉 provenance,用 `--no-provenance`。**2FA 是发版前置条件**——provenance 不能替代它,且 npm 在账户/组织侧校验,本仓库无法验证。发布前把 `CHANGELOG.md` 的 `[Unreleased]` 落成即将发布的版本号(本次 `0.8.1` 就是这样做的)。
69
+
70
+ 发布形态必须从用 `--config.package-import-method=copy` 装出来的暂存目录打包:pnpm 默认的 import method 会把 store 里的文件硬链接过来,而 npmjs 会以 `415 Unsupported Media Type — Hard link is not allowed` 拒绝带硬链接成员的 tarball。`npm publish --dry-run` 抓不到这件事(dry run 不上传),因此发布 workflow 显式断言该形态,`plugins/fish-shell/tests/packed-files.spec.ts` 也对自己的 `npm pack` 产物做同一断言。
69
71
 
70
72
  ## 交互式终端会话(L2)
71
73
 
@@ -90,7 +92,7 @@ prompt setup 走 `-C` 参数(与 `terminal-fish.js` 导出的 `FISH_PROMPT_SET
90
92
 
91
93
  **为什么一次性路径一行没动。** 追加的 group 是纯增量的。它上面的 host 平面 row 保持逐字不变(`bash-sandbox`/`tool-bash` 禁用,`fish-shell`/`tool-fish`/`fish-preset-policy` 插入),并且 `ctx.shell`(`index.js`)、一次性 `fish` 工具(`tool.js`)、`minimal` preset 的持久工具(`persistent.js`)与 `terminal-fish.js` 库都保持原样的代码路径:交互式 surface 的存在不改变一次性命令的任何行为。
92
94
 
93
- **随包分发的 `@deepseek-ai/dsh-tool-terminal`。** `terminal-tools` row 从本包内部解析官方工具包,而不是从 profile 平面解析:`@deepseek-ai/dsh-tool-terminal@0.2.0-rc.1` 声明在 `dependencies` 与 `bundledDependencies` 里,所以打包会把它及其传递依赖作为实体文件放进 tarball 内的 `node_modules/` 下。这正是离线 profile 能安装成功的原因。它**不能**被挪到 `peerDependencies`:peer 解析会去找 profile 平面的副本,而那正是本设计要避免的。版本、来源与许可证见 `./THIRD-PARTY-NOTICES.md`。
95
+ **随包分发的 `@deepseek-ai/dsh-tool-terminal`。** `terminal-tools` row 从本包内部解析官方工具包,而不是从 profile 平面解析:`@deepseek-ai/dsh-tool-terminal@0.2.0-rc.2` 声明在 `dependencies` 与 `bundledDependencies` 里,所以打包会把它及其传递依赖作为实体文件放进 tarball 内的 `node_modules/` 下。这正是离线 profile 能安装成功的原因。它**不能**被挪到 `peerDependencies`:peer 解析会去找 profile 平面的副本,而那正是本设计要避免的。版本、来源与许可证见 `./THIRD-PARTY-NOTICES.md`。
94
96
 
95
97
  ## 安全模型
96
98
 
@@ -139,7 +141,7 @@ prompt setup 走 `-C` 参数(与 `terminal-fish.js` 导出的 `FISH_PROMPT_SET
139
141
 
140
142
  ### `@deepseek-ai/dsh-tool-terminal` 报 `ERR_MODULE_NOT_FOUND`
141
143
 
142
- bundled 的工具包没有进安装产物,或它被当成 peer(profile 平面)依赖解析了。用 hoisted linker 构建:先 `pnpm install --prod --config.node-linker=hoisted`,再 `pnpm pack --config.node-linker=hoisted`。不带它 pnpm 会拒绝打包 bundled 依赖,并报 `ERR_PNPM_BUNDLED_DEPENDENCIES_WITHOUT_HOISTED`。检查产物:tarball 必须包含 `package/node_modules/@deepseek-ai/dsh-tool-terminal/package.json`。有一条上游原因不在我们能修的范围内:`@deepseek-ai/dsh-tool-terminal@0.2.0-rc.1` 声明的 `exports` 里有 `./src/*`,而实际发布的 tarball 并不包含它,因此任何按该子路径解析的代码都会 `ERR_MODULE_NOT_FOUND`。
144
+ bundled 的工具包没有进安装产物,或它被当成 peer(profile 平面)依赖解析了。用 hoisted linker 构建:先 `pnpm install --prod --config.node-linker=hoisted`,再 `pnpm pack --config.node-linker=hoisted`。不带它 pnpm 会拒绝打包 bundled 依赖,并报 `ERR_PNPM_BUNDLED_DEPENDENCIES_WITHOUT_HOISTED`。检查产物:tarball 必须包含 `package/node_modules/@deepseek-ai/dsh-tool-terminal/package.json`。有一条上游原因不在我们能修的范围内:`@deepseek-ai/dsh-tool-terminal@0.2.0-rc.2` 声明的 `exports` 里有 `./src/*`,而实际发布的 tarball 并不包含它,因此任何按该子路径解析的代码都会 `ERR_MODULE_NOT_FOUND`。
143
145
 
144
146
  ### `ERR_PNPM_NO_OFFLINE_TARBALL`
145
147
 
@@ -20,21 +20,21 @@ naming one.
20
20
 
21
21
  | Package | Version | License | Location inside the tarball |
22
22
  |---|---|---|---|
23
- | `@deepseek-ai/dsh-tool-terminal` | `0.2.0-rc.1` | MIT | `package/node_modules/@deepseek-ai/dsh-tool-terminal/` |
23
+ | `@deepseek-ai/dsh-tool-terminal` | `0.2.0-rc.2` | MIT | `package/node_modules/@deepseek-ai/dsh-tool-terminal/` |
24
24
  | `@deepseek-ai/schemastery` | `3.18.4` | MIT | `package/node_modules/@deepseek-ai/schemastery/` |
25
25
  | `@deepseek-ai/cosmokit` | `1.8.5` | MIT | `package/node_modules/@deepseek-ai/cosmokit/` |
26
26
  | `@standard-schema/spec` | `1.1.0` | MIT | `package/node_modules/@standard-schema/spec/` |
27
27
 
28
28
  Dependency edges, as declared by the packaged manifests:
29
29
 
30
- - `@deepseek-ai/dsh-tool-terminal@0.2.0-rc.1` → `@deepseek-ai/schemastery ~3.18.4`
30
+ - `@deepseek-ai/dsh-tool-terminal@0.2.0-rc.2` → `@deepseek-ai/schemastery ~3.18.4`
31
31
  - `@deepseek-ai/schemastery@3.18.4` → `@standard-schema/spec ^1.1.0`, `@deepseek-ai/cosmokit ~1.8.5`
32
32
  - `@standard-schema/spec@1.1.0` and `@deepseek-ai/cosmokit@1.8.5` → no runtime dependencies
33
33
 
34
34
  Those four packages are the complete `node_modules/` inventory of the packed
35
35
  tarball; each of them includes its `LICENSE` file.
36
36
 
37
- ## `@deepseek-ai/dsh-tool-terminal` 0.2.0-rc.1 — MIT
37
+ ## `@deepseek-ai/dsh-tool-terminal` 0.2.0-rc.2 — MIT
38
38
 
39
39
  - Origin: `git+https://github.com/deepseek-ai/deepseek-harness.git`, directory
40
40
  `packages/terminal/tool-terminal` (from the packaged `package.json`
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@deepseek-ai/dsh-tool-terminal",
3
3
  "description": "Six model-facing persistent PTY tools with owner isolation and generic background-job integration",
4
- "version": "0.2.0-rc.1",
4
+ "version": "0.2.0-rc.2",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -30,34 +30,34 @@
30
30
  "@deepseek-ai/schemastery": "~3.18.4"
31
31
  },
32
32
  "peerDependencies": {
33
- "@deepseek-ai/dsh-agent": "0.2.0-rc.1",
34
- "@deepseek-ai/dsh-llm": "0.2.0-rc.1",
35
- "@deepseek-ai/dsh-terminal": "0.2.0-rc.1",
36
- "@deepseek-ai/dsh-output-retention": "0.2.0-rc.1",
37
- "@deepseek-ai/dsh-system-prompt": "0.2.0-rc.1",
38
- "@deepseek-ai/dsh-jobs": "0.2.0-rc.1",
39
- "@deepseek-ai/dsh-tools": "0.2.0-rc.1",
40
- "@deepseek-ai/cordis": "~4.0.4"
33
+ "@deepseek-ai/dsh-agent": "0.2.0-rc.2",
34
+ "@deepseek-ai/dsh-llm": "0.2.0-rc.2",
35
+ "@deepseek-ai/dsh-terminal": "0.2.0-rc.2",
36
+ "@deepseek-ai/dsh-output-retention": "0.2.0-rc.2",
37
+ "@deepseek-ai/dsh-system-prompt": "0.2.0-rc.2",
38
+ "@deepseek-ai/dsh-jobs": "0.2.0-rc.2",
39
+ "@deepseek-ai/cordis": "~4.0.4",
40
+ "@deepseek-ai/dsh-tools": "0.2.0-rc.2"
41
41
  },
42
42
  "devDependencies": {
43
43
  "@deepseek-ai/cordis-plugin-include": "~1.0.9",
44
44
  "@deepseek-ai/cordis-plugin-loader": "~1.0.5",
45
- "@deepseek-ai/dsh-agent-loop-testkit": "0.2.0-rc.1",
46
- "@deepseek-ai/dsh-agent": "0.2.0-rc.1",
47
- "@deepseek-ai/dsh-llm": "0.2.0-rc.1",
48
- "@deepseek-ai/dsh-terminal": "0.2.0-rc.1",
49
- "@deepseek-ai/dsh-sandbox": "0.2.0-rc.1",
50
- "@deepseek-ai/dsh-sandbox-policy": "0.2.0-rc.1",
51
- "@deepseek-ai/dsh-session": "0.2.0-rc.1",
52
- "@deepseek-ai/dsh-terminal-bash": "0.2.0-rc.1",
53
- "@deepseek-ai/dsh-subprocess-local": "0.2.0-rc.1",
54
- "@deepseek-ai/dsh-system-prompt": "0.2.0-rc.1",
55
- "@deepseek-ai/dsh-jobs": "0.2.0-rc.1",
56
- "@deepseek-ai/dsh-jobs-local": "0.2.0-rc.1",
57
- "@deepseek-ai/dsh-tools": "0.2.0-rc.1",
45
+ "@deepseek-ai/dsh-agent": "0.2.0-rc.2",
46
+ "@deepseek-ai/dsh-llm": "0.2.0-rc.2",
47
+ "@deepseek-ai/dsh-terminal": "0.2.0-rc.2",
48
+ "@deepseek-ai/dsh-agent-loop-testkit": "0.2.0-rc.2",
49
+ "@deepseek-ai/dsh-terminal-bash": "0.2.0-rc.2",
50
+ "@deepseek-ai/dsh-output-retention": "0.2.0-rc.2",
51
+ "@deepseek-ai/dsh-session": "0.2.0-rc.2",
52
+ "@deepseek-ai/dsh-sandbox": "0.2.0-rc.2",
53
+ "@deepseek-ai/dsh-sandbox-policy": "0.2.0-rc.2",
54
+ "@deepseek-ai/dsh-subprocess-local": "0.2.0-rc.2",
55
+ "@deepseek-ai/dsh-system-prompt": "0.2.0-rc.2",
56
+ "@deepseek-ai/dsh-jobs": "0.2.0-rc.2",
57
+ "@deepseek-ai/dsh-jobs-local": "0.2.0-rc.2",
58
+ "@deepseek-ai/dsh-tools": "0.2.0-rc.2",
58
59
  "@deepseek-ai/cordis": "~4.0.4",
59
- "@deepseek-ai/dsh-tool-jobs": "0.2.0-rc.1",
60
- "@deepseek-ai/dsh-session-projection": "0.2.0-rc.1",
61
- "@deepseek-ai/dsh-output-retention": "0.2.0-rc.1"
60
+ "@deepseek-ai/dsh-session-projection": "0.2.0-rc.2",
61
+ "@deepseek-ai/dsh-tool-jobs": "0.2.0-rc.2"
62
62
  }
63
63
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@banbolee/dsh-fish-shell",
3
- "version": "0.8.0",
3
+ "version": "0.8.1",
4
4
  "description": "Fish shell executors and tool for DeepSeek Harness: run commands with fish instead of bash.",
5
5
  "type": "module",
6
6
  "main": "index.js",
@@ -37,56 +37,56 @@
37
37
  }
38
38
  },
39
39
  "dependencies": {
40
- "@deepseek-ai/dsh-tool-terminal": "0.2.0-rc.1"
40
+ "@deepseek-ai/dsh-tool-terminal": "0.2.0-rc.2"
41
41
  },
42
42
  "bundledDependencies": [
43
43
  "@deepseek-ai/dsh-tool-terminal"
44
44
  ],
45
45
  "peerDependencies": {
46
46
  "@deepseek-ai/cordis": "~4.0.4",
47
- "@deepseek-ai/dsh-agent": "^0.2.0-rc.1",
48
- "@deepseek-ai/dsh-bash-local": "^0.2.0-rc.1",
49
- "@deepseek-ai/dsh-bash-sandbox": "^0.2.0-rc.1",
50
- "@deepseek-ai/dsh-home-paths": "^0.2.0-rc.1",
51
- "@deepseek-ai/dsh-jobs": "^0.2.0-rc.1",
52
- "@deepseek-ai/dsh-llm": "^0.2.0-rc.1",
53
- "@deepseek-ai/dsh-pwsh-local": "^0.2.0-rc.1",
54
- "@deepseek-ai/dsh-sandbox": "^0.2.0-rc.1",
55
- "@deepseek-ai/dsh-sandbox-policy": "^0.2.0-rc.1",
56
- "@deepseek-ai/dsh-scope": "^0.2.0-rc.1",
57
- "@deepseek-ai/dsh-session-projection": "^0.2.0-rc.1",
58
- "@deepseek-ai/dsh-shell": "^0.2.0-rc.1",
59
- "@deepseek-ai/dsh-shell-env": "^0.2.0-rc.1",
60
- "@deepseek-ai/dsh-subprocess": "^0.2.0-rc.1",
61
- "@deepseek-ai/dsh-system-prompt": "^0.2.0-rc.1",
62
- "@deepseek-ai/dsh-terminal": "^0.2.0-rc.1",
63
- "@deepseek-ai/dsh-terminal-bash": "^0.2.0-rc.1",
64
- "@deepseek-ai/dsh-tools": "^0.2.0-rc.1",
65
- "@deepseek-ai/dsh-user-approval": "^0.2.0-rc.1"
47
+ "@deepseek-ai/dsh-agent": "^0.2.0-rc.2",
48
+ "@deepseek-ai/dsh-bash-local": "^0.2.0-rc.2",
49
+ "@deepseek-ai/dsh-bash-sandbox": "^0.2.0-rc.2",
50
+ "@deepseek-ai/dsh-home-paths": "^0.2.0-rc.2",
51
+ "@deepseek-ai/dsh-jobs": "^0.2.0-rc.2",
52
+ "@deepseek-ai/dsh-llm": "^0.2.0-rc.2",
53
+ "@deepseek-ai/dsh-pwsh-local": "^0.2.0-rc.2",
54
+ "@deepseek-ai/dsh-sandbox": "^0.2.0-rc.2",
55
+ "@deepseek-ai/dsh-sandbox-policy": "^0.2.0-rc.2",
56
+ "@deepseek-ai/dsh-scope": "^0.2.0-rc.2",
57
+ "@deepseek-ai/dsh-session-projection": "^0.2.0-rc.2",
58
+ "@deepseek-ai/dsh-shell": "^0.2.0-rc.2",
59
+ "@deepseek-ai/dsh-shell-env": "^0.2.0-rc.2",
60
+ "@deepseek-ai/dsh-subprocess": "^0.2.0-rc.2",
61
+ "@deepseek-ai/dsh-system-prompt": "^0.2.0-rc.2",
62
+ "@deepseek-ai/dsh-terminal": "^0.2.0-rc.2",
63
+ "@deepseek-ai/dsh-terminal-bash": "^0.2.0-rc.2",
64
+ "@deepseek-ai/dsh-tools": "^0.2.0-rc.2",
65
+ "@deepseek-ai/dsh-user-approval": "^0.2.0-rc.2"
66
66
  },
67
67
  "devDependencies": {
68
68
  "@deepseek-ai/cordis": "~4.0.4",
69
- "@deepseek-ai/dsh-agent": "^0.2.0-rc.1",
70
- "@deepseek-ai/dsh-bash-local": "^0.2.0-rc.1",
71
- "@deepseek-ai/dsh-bash-sandbox": "^0.2.0-rc.1",
72
- "@deepseek-ai/dsh-home-paths": "^0.2.0-rc.1",
73
- "@deepseek-ai/dsh-invariants": "^0.2.0-rc.1",
74
- "@deepseek-ai/dsh-jobs": "^0.2.0-rc.1",
75
- "@deepseek-ai/dsh-llm": "^0.2.0-rc.1",
76
- "@deepseek-ai/dsh-pwsh-local": "^0.2.0-rc.1",
77
- "@deepseek-ai/dsh-sandbox": "^0.2.0-rc.1",
78
- "@deepseek-ai/dsh-sandbox-policy": "^0.2.0-rc.1",
79
- "@deepseek-ai/dsh-scope": "^0.2.0-rc.1",
80
- "@deepseek-ai/dsh-session-projection": "^0.2.0-rc.1",
81
- "@deepseek-ai/dsh-shell": "^0.2.0-rc.1",
82
- "@deepseek-ai/dsh-shell-env": "^0.2.0-rc.1",
83
- "@deepseek-ai/dsh-subprocess": "^0.2.0-rc.1",
84
- "@deepseek-ai/dsh-subprocess-local": "^0.2.0-rc.1",
85
- "@deepseek-ai/dsh-system-prompt": "^0.2.0-rc.1",
86
- "@deepseek-ai/dsh-terminal": "^0.2.0-rc.1",
87
- "@deepseek-ai/dsh-terminal-bash": "^0.2.0-rc.1",
88
- "@deepseek-ai/dsh-tools": "^0.2.0-rc.1",
89
- "@deepseek-ai/dsh-user-approval": "^0.2.0-rc.1",
69
+ "@deepseek-ai/dsh-agent": "^0.2.0-rc.2",
70
+ "@deepseek-ai/dsh-bash-local": "^0.2.0-rc.2",
71
+ "@deepseek-ai/dsh-bash-sandbox": "^0.2.0-rc.2",
72
+ "@deepseek-ai/dsh-home-paths": "^0.2.0-rc.2",
73
+ "@deepseek-ai/dsh-invariants": "^0.2.0-rc.2",
74
+ "@deepseek-ai/dsh-jobs": "^0.2.0-rc.2",
75
+ "@deepseek-ai/dsh-llm": "^0.2.0-rc.2",
76
+ "@deepseek-ai/dsh-pwsh-local": "^0.2.0-rc.2",
77
+ "@deepseek-ai/dsh-sandbox": "^0.2.0-rc.2",
78
+ "@deepseek-ai/dsh-sandbox-policy": "^0.2.0-rc.2",
79
+ "@deepseek-ai/dsh-scope": "^0.2.0-rc.2",
80
+ "@deepseek-ai/dsh-session-projection": "^0.2.0-rc.2",
81
+ "@deepseek-ai/dsh-shell": "^0.2.0-rc.2",
82
+ "@deepseek-ai/dsh-shell-env": "^0.2.0-rc.2",
83
+ "@deepseek-ai/dsh-subprocess": "^0.2.0-rc.2",
84
+ "@deepseek-ai/dsh-subprocess-local": "^0.2.0-rc.2",
85
+ "@deepseek-ai/dsh-system-prompt": "^0.2.0-rc.2",
86
+ "@deepseek-ai/dsh-terminal": "^0.2.0-rc.2",
87
+ "@deepseek-ai/dsh-terminal-bash": "^0.2.0-rc.2",
88
+ "@deepseek-ai/dsh-tools": "^0.2.0-rc.2",
89
+ "@deepseek-ai/dsh-user-approval": "^0.2.0-rc.2",
90
90
  "yaml": "^2.8.0"
91
91
  },
92
92
  "keywords": [
package/terminal.js CHANGED
@@ -123,7 +123,7 @@ const DEFAULT_PWSH_ARGS = ['-NoLogo', '-NoProfile']
123
123
 
124
124
  /**
125
125
  * The official `resolveConfig`, replicated from
126
- * `@deepseek-ai/dsh-terminal-bash@0.2.0-rc.1` (`lib/index.js:27-35`; the
126
+ * `@deepseek-ai/dsh-terminal-bash@0.2.0-rc.2` (`lib/index.js:27-35`; the
127
127
  * official package does not export it). An unset or EMPTY
128
128
  * `shellPath`/`shellArgs` selects the dialect's defaults — schemastery
129
129
  * materializes an absent optional array as `[]` — while a non-empty explicit
@@ -150,7 +150,7 @@ export function resolveTerminalConfig(config) {
150
150
 
151
151
  /**
152
152
  * The official `validateConfig`, replicated from
153
- * `@deepseek-ai/dsh-terminal-bash@0.2.0-rc.1` (`lib/index.js:62-74`; not
153
+ * `@deepseek-ai/dsh-terminal-bash@0.2.0-rc.2` (`lib/index.js:62-74`; not
154
154
  * exported) with the official error text verbatim — including the
155
155
  * `terminal-bash:` prefix, which is deliberate: the row's config surface IS the
156
156
  * official schema, and parity with the official validator (messages compared
package/tool.js CHANGED
@@ -505,7 +505,7 @@ function fishParameters(escalationModes) {
505
505
  }
506
506
 
507
507
  /** Canonical output declaration: a background acknowledgment or a foreground
508
- * run. The rc.1 ToolRuntime dialect forbids `type`/`additionalProperties`
508
+ * run. The rc.2 ToolRuntime dialect forbids `type`/`additionalProperties`
509
509
  * beside a `oneOf` root (exact-one branches), so the union is expressed as a
510
510
  * bare `oneOf` with each branch carrying its own object shape.
511
511
  * @type {import('@deepseek-ai/dsh-tools').JsonSchemaNode} */