@deepseek-ai/dsh-experimental-terminal-bundle 0.0.0-stage → 0.2.1-alpha.2

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/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 DeepSeek
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
@@ -0,0 +1,37 @@
1
+ # Bilingual-pair consistency record for README.md (docs/i18n/README.md): per heading
2
+ # section, a hash of its English and Chinese blocks outside code blocks and generated regions.
3
+ # After editing either side, bring the other along and re-record with:
4
+ # pnpm run verify-translation-pairing --write packages/experimental/terminal-bundle/README.md
5
+ /:
6
+ en: a7cd372176f1d476
7
+ zh: 07276ed339e7bc02
8
+ /deepseek-ai-dsh-experimental-terminal-bundle:
9
+ en: cc18693529aee09c
10
+ zh: fbf1c7d8388eeba8
11
+ /deepseek-ai-dsh-experimental-terminal-bundle/summary:
12
+ en: 161ff8d60aa7623e
13
+ zh: 90ea4ac87b96f20a
14
+ /deepseek-ai-dsh-experimental-terminal-bundle/table-of-contents:
15
+ en: d152484eb41ac6b4
16
+ zh: 988e839059414d27
17
+ /deepseek-ai-dsh-experimental-terminal-bundle/use-this-package:
18
+ en: 924d2c0de1f247a7
19
+ zh: 7d77aef5ceb3f097
20
+ /deepseek-ai-dsh-experimental-terminal-bundle/understand-the-implementation:
21
+ en: 0da35df3f93e3b7f
22
+ zh: 481b786e161616ab
23
+ /deepseek-ai-dsh-experimental-terminal-bundle/further-exploration:
24
+ en: 9956186ebda37273
25
+ zh: eb622f1391f61ad4
26
+ /deepseek-ai-dsh-experimental-terminal-bundle/model-experience:
27
+ en: 33b928765f080dbf
28
+ zh: a0ed945765c3b62f
29
+ /deepseek-ai-dsh-experimental-terminal-bundle/model-experience/kv-cache-effect:
30
+ en: 25f20eda0e696067
31
+ zh: 378c4a15a5704ba0
32
+ /deepseek-ai-dsh-experimental-terminal-bundle/known-limitations-and-deferred-work:
33
+ en: 733d0915ef050bf3
34
+ zh: 5a063b82230c73a4
35
+ /deepseek-ai-dsh-experimental-terminal-bundle/known-limitations-and-deferred-work/dev-note:
36
+ en: 279d01435256cd2a
37
+ zh: 83780964e5de2f54
package/README.md CHANGED
@@ -1,3 +1,78 @@
1
- # Temporary Holding Version
1
+ ---
2
+ description: "Keep shell processes alive across tool calls."
3
+ kind: "package-bundle"
4
+ ---
2
5
 
3
- This version is a temporary placeholder for this package. An operational version to replace this has been submitted for review and is awaiting a staged release.
6
+ # @deepseek-ai/dsh-experimental-terminal-bundle
7
+
8
+ English | [中文](README.zh.md)
9
+
10
+ ## Summary
11
+
12
+ Add six experimental global terminal tools to every Agent. The bundle owns an isolated terminal registry with the platform shell backend; terminals remain Agent-owned. It ships switched off in Web and Desktop. Select it in Plugins to enable it.
13
+
14
+ ## Table of Contents
15
+
16
+ - [Use this package](#use-this-package)
17
+ - [Understand the implementation](#understand-the-implementation)
18
+ - [Further Exploration](#further-exploration)
19
+ - [Model Experience](#model-experience)
20
+ - [Known Limitations and Deferred Work](#known-limitations-and-deferred-work)
21
+ - [Dev Note](#dev-note)
22
+
23
+ -----
24
+
25
+ <a id="use-this-package"></a>
26
+ ## Use this package
27
+
28
+ In Web or Desktop, open Plugins and enable **Persistent terminals** in Official. Switch it off to remove its profile layer.
29
+
30
+ Enabling or disabling the bundle registers or removes its global tools in the running Host, so every Agent sees the change on its next request, in every preset including minimal.
31
+
32
+ -----
33
+
34
+ <a id="understand-the-implementation"></a>
35
+ ## Understand the implementation
36
+
37
+ <details>
38
+ <summary>Implementation details — click to expand</summary>
39
+
40
+ [`cordis.patch.yml`](cordis.patch.yml) inserts the Host group `optional-persistent-terminals`, which registers the tools in the global tool layer. Later profile patches can override its rows by id. The [profile composer](../../boot/app-boot/README.md) owns patch ordering and errors.
41
+
42
+ </details>
43
+
44
+ -----
45
+
46
+ <a id="further-exploration"></a>
47
+ ## Further Exploration
48
+
49
+ [Capability implementation](../tool-terminal/README.md)
50
+
51
+ -----
52
+
53
+ <a id="model-experience"></a>
54
+ ## Model Experience
55
+
56
+ Indirectly, through the [capability implementation](../tool-terminal/README.md), which owns model context and results.
57
+
58
+ #### KV Cache effect
59
+
60
+ The layer adds no request content directly; the capability implementation owns cache effects from tools, prompts, and results. Toggling the bundle changes the tool list of live Sessions, which invalidates their cached request prefix once.
61
+
62
+ ## Known Limitations and Deferred Work
63
+
64
+ <a id="known-limitations-and-deferred-work"></a>
65
+
66
+ - Terminals belong to the Agent that created them. POSIX uses Bash and Windows uses PowerShell; the bundle does not share another terminal registry.
67
+
68
+ -----
69
+
70
+ <a id="dev-note"></a>
71
+ ### Dev Note
72
+
73
+ <details>
74
+ <summary>Maintainer context — click to expand</summary>
75
+
76
+ None.
77
+
78
+ </details>
package/README.zh.md ADDED
@@ -0,0 +1,78 @@
1
+ ---
2
+ description: "让 shell 进程在多次工具调用之间保持运行。"
3
+ kind: "package-bundle"
4
+ ---
5
+
6
+ # @deepseek-ai/dsh-experimental-terminal-bundle
7
+
8
+ [English](README.md) | 中文
9
+
10
+ ## 概述
11
+
12
+ 为所有智能体添加六个实验性全局终端工具。组合包拥有隔离的终端注册表和平台 shell 后端;终端仍由智能体拥有。 Web 和 Desktop 随附此功能,默认关闭。在插件页选择它即可启用。
13
+
14
+ ## 目录
15
+
16
+ - [使用此包](#use-this-package)
17
+ - [理解实现](#understand-the-implementation)
18
+ - [进一步探索](#further-exploration)
19
+ - [模型体验](#model-experience)
20
+ - [已知限制与暂缓工作](#known-limitations-and-deferred-work)
21
+ - [开发备注](#dev-note)
22
+
23
+ -----
24
+
25
+ <a id="use-this-package"></a>
26
+ ## 使用此包
27
+
28
+ 在 Web 或 Desktop 中打开插件页,在官方分组启用 **持久终端**。关闭后移除其配置层。
29
+
30
+ 启用或关闭组合包会在运行中的 Host 注册或移除其全局工具,因此所有预设(包括 minimal)中的每个智能体都会在下一次请求时看到变化。
31
+
32
+ -----
33
+
34
+ <a id="understand-the-implementation"></a>
35
+ ## 理解实现
36
+
37
+ <details>
38
+ <summary>实现细节 — 点击展开</summary>
39
+
40
+ [`cordis.patch.yml`](cordis.patch.yml) 插入 Host 组 `optional-persistent-terminals`,在全局工具层注册这些工具。后续配置补丁可以按 id 覆盖其条目。[配置组合器](../../boot/app-boot/README.zh.md) 负责补丁顺序和错误处理。
41
+
42
+ </details>
43
+
44
+ -----
45
+
46
+ <a id="further-exploration"></a>
47
+ ## 进一步探索
48
+
49
+ [能力实现](../tool-terminal/README.zh.md)
50
+
51
+ -----
52
+
53
+ <a id="model-experience"></a>
54
+ ## 模型体验
55
+
56
+ 间接影响,通过[能力实现](../tool-terminal/README.zh.md) 贡献模型上下文和结果。
57
+
58
+ #### KV Cache 影响
59
+
60
+ 此配置层不直接添加请求内容;能力实现负责工具目录、提示和结果的缓存影响。切换组合包会改变运行中会话的工具列表,使其已缓存的请求前缀失效一次。
61
+
62
+ ## 已知限制与暂缓工作
63
+
64
+ <a id="known-limitations-and-deferred-work"></a>
65
+
66
+ - 终端属于创建它们的智能体。POSIX 使用 Bash,Windows 使用 PowerShell;此 bundle 不与其他终端注册表共享。
67
+
68
+ -----
69
+
70
+ <a id="dev-note"></a>
71
+ ### 开发备注
72
+
73
+ <details>
74
+ <summary>维护者上下文 — 点击展开</summary>
75
+
76
+ 无。
77
+
78
+ </details>
@@ -0,0 +1,19 @@
1
+ - insert:
2
+ - id: optional-persistent-terminals
3
+ name: cordis:group
4
+ group: true
5
+ isolate:
6
+ terminals: true
7
+ config:
8
+ - id: optional-terminal-registry
9
+ name: '@deepseek-ai/dsh-terminal'
10
+ - id: optional-terminal-bash
11
+ name: '@deepseek-ai/dsh-terminal-bash'
12
+ disabled: !!js process.platform === 'win32'
13
+ - id: optional-terminal-pwsh
14
+ name: '@deepseek-ai/dsh-terminal-bash'
15
+ disabled: !!js process.platform !== 'win32'
16
+ config:
17
+ shellDialect: pwsh
18
+ - id: optional-tool-terminal
19
+ name: '@deepseek-ai/dsh-tool-terminal'
package/icon.svg ADDED
@@ -0,0 +1 @@
1
+ <svg width="36" height="36" viewBox="0 0 36 36" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10 11L16.606 17.606C16.6841 17.6841 16.6841 17.8107 16.606 17.8888L10 24.4948" stroke="#679EFE" stroke-width="3.5"></path><path d="M20.1211 24.4946H26.8685" stroke="#679EFE" stroke-width="3.5"></path></svg>
package/lib/index.js ADDED
@@ -0,0 +1 @@
1
+ export {};
@@ -0,0 +1,3 @@
1
+ /** Persistent terminals profile layer; runtime entries are declared in cordis.patch.yml. */
2
+ export {};
3
+ //# sourceMappingURL=index.d.ts.map
package/locale/en.json ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "meta": {
3
+ "title": "Persistent terminals",
4
+ "description": "Keep shell processes alive across tool calls."
5
+ }
6
+ }
package/locale/zh.json ADDED
@@ -0,0 +1,6 @@
1
+ {
2
+ "meta": {
3
+ "title": "持久终端",
4
+ "description": "让 shell 进程在多次工具调用之间保持运行。"
5
+ }
6
+ }
package/package.json CHANGED
@@ -1,6 +1,51 @@
1
1
  {
2
2
  "name": "@deepseek-ai/dsh-experimental-terminal-bundle",
3
- "version": "0.0.0-stage",
4
- "stub": true,
5
- "description": "Temporary package placeholder for staged publishing"
3
+ "description": "Keep shell processes alive across tool calls.",
4
+ "version": "0.2.1-alpha.2",
5
+ "icon": "./icon.svg",
6
+ "publishConfig": {
7
+ "access": "public"
8
+ },
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git+https://github.com/deepseek-ai/deepseek-harness.git",
12
+ "directory": "packages/experimental/terminal-bundle"
13
+ },
14
+ "type": "module",
15
+ "main": "lib/index.js",
16
+ "types": "lib/types/index.d.ts",
17
+ "exports": {
18
+ ".": {
19
+ "types": "./lib/types/index.d.ts",
20
+ "default": "./lib/index.js"
21
+ },
22
+ "./cordis.patch.yml": "./cordis.patch.yml",
23
+ "./locale/*.json": "./locale/*.json",
24
+ "./src/*": "./src/*",
25
+ "./package.json": "./package.json"
26
+ },
27
+ "files": [
28
+ "icon.svg",
29
+ "locale/*.json",
30
+ "lib/index.js",
31
+ "cordis.patch.yml",
32
+ "lib/types/**/*.d.ts"
33
+ ],
34
+ "license": "MIT",
35
+ "dsh": {
36
+ "bundle": {
37
+ "patch": "./cordis.patch.yml"
38
+ }
39
+ },
40
+ "dependencies": {
41
+ "@deepseek-ai/dsh-tool-terminal": "0.2.1-alpha.2",
42
+ "@deepseek-ai/dsh-terminal": "0.2.1-alpha.2",
43
+ "@deepseek-ai/dsh-terminal-bash": "0.2.1-alpha.2"
44
+ },
45
+ "peerDependencies": {
46
+ "@deepseek-ai/cordis": "~4.0.5-alpha.1"
47
+ },
48
+ "devDependencies": {
49
+ "@deepseek-ai/cordis": "~4.0.5-alpha.1"
50
+ }
6
51
  }