dsh-vscode-workbench 0.2.3 → 0.2.5
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 +27 -10
- package/README.md +26 -11
- package/cordis.patch.yml +2 -0
- package/lib/client.js +1039 -417
- package/lib/client.js.map +1 -1
- package/lib/index.js +15 -249
- package/lib/index.js.map +1 -1
- package/lib/types/client/DshBrowserPage.d.ts +6 -0
- package/lib/types/client/DshPanelPage.d.ts +9 -0
- package/lib/types/client/Icon.d.ts +1 -1
- package/lib/types/client/TerminalPanel.d.ts +5 -2
- package/lib/types/client/Workbench.d.ts +7 -1
- package/lib/types/client/browser.d.ts +26 -0
- package/lib/types/client/dshPanels.d.ts +4 -0
- package/lib/types/client/shortcuts.d.ts +2 -0
- package/lib/types/client/terminal.d.ts +37 -32
- package/package.json +15 -4
- package/src/client/DshBrowserPage.tsx +61 -0
- package/src/client/DshPanelPage.tsx +63 -0
- package/src/client/Icon.tsx +1 -1
- package/src/client/TerminalPanel.tsx +63 -40
- package/src/client/Workbench.tsx +72 -11
- package/src/client/browser.ts +68 -0
- package/src/client/dshPanels.ts +16 -0
- package/src/client/index.tsx +25 -6
- package/src/client/shortcuts.ts +9 -0
- package/src/client/styles.ts +18 -7
- package/src/client/terminal.ts +125 -78
- package/src/index.ts +0 -2
- package/src/lsp.ts +22 -14
- package/lib/types/terminal.d.ts +0 -46
- package/src/terminal.ts +0 -173
package/README.en.md
CHANGED
|
@@ -36,30 +36,45 @@
|
|
|
36
36
|
## Demo
|
|
37
37
|
|
|
38
38
|
<p align="center">
|
|
39
|
-
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/workbench-light.png" width="800" alt="Explorer,
|
|
40
|
-
<br><em>Explorer,
|
|
39
|
+
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/workbench-light.png" width="800" alt="Explorer, Markdown preview, terminal, and DSH conversation">
|
|
40
|
+
<br><em>Explorer, Markdown preview, terminal, and DSH conversation</em>
|
|
41
41
|
</p>
|
|
42
42
|
|
|
43
43
|
<p align="center">
|
|
44
|
-
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/
|
|
45
|
-
<br><em>
|
|
44
|
+
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/references-light.png" width="800" alt="Find references with Peek results in the editor">
|
|
45
|
+
<br><em>Find references with Peek results in the editor</em>
|
|
46
46
|
</p>
|
|
47
47
|
|
|
48
48
|
<p align="center">
|
|
49
|
-
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/
|
|
50
|
-
<br><em>
|
|
49
|
+
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/source-control-light.png" width="800" alt="Source control, commit graph, and inline/split diffs">
|
|
50
|
+
<br><em>Source control, commit graph, and inline/split diffs</em>
|
|
51
|
+
</p>
|
|
52
|
+
|
|
53
|
+
<p align="center">
|
|
54
|
+
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/welcome-light.png" width="800" alt="Start a terminal or open the browser from the empty editor">
|
|
55
|
+
<br><em>Start a terminal or open the browser from the empty editor</em>
|
|
56
|
+
</p>
|
|
57
|
+
|
|
58
|
+
<p align="center">
|
|
59
|
+
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/settings-light.png" width="800" alt="Workbench settings for theme, font size, and layout">
|
|
60
|
+
<br><em>Workbench settings for theme, font size, and layout</em>
|
|
61
|
+
</p>
|
|
62
|
+
|
|
63
|
+
<p align="center">
|
|
64
|
+
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/workspace-switcher-light.png" width="800" alt="Open a workspace, switch sessions, or create a new workspace">
|
|
65
|
+
<br><em>Open a workspace, switch sessions, or create a new workspace</em>
|
|
51
66
|
</p>
|
|
52
67
|
|
|
53
68
|
## Installation
|
|
54
69
|
|
|
55
|
-
Plugin 0.2.
|
|
70
|
+
Plugin 0.2.5 targets DeepSeek Harness `0.2.2-rc.1` (Cordis `4.1.0`). Update Harness before installing:
|
|
56
71
|
|
|
57
72
|
```bash
|
|
58
73
|
npm i -g @deepseek-ai/dsh@0.2.2-rc.1
|
|
59
74
|
dsh plugin --profile web add dsh-vscode-workbench
|
|
60
75
|
```
|
|
61
76
|
|
|
62
|
-
Installing from the DSH Plugins page or a marketplace enables the plugin automatically. After a CLI install, add `dsh-vscode-workbench` to `dsh.profile.bundles` in `~/.dsh/profiles/web/package.json` and restart `dsh web`.
|
|
77
|
+
Installing from the DSH Plugins page or a marketplace enables the plugin automatically. After a CLI install, add `dsh-vscode-workbench` to `dsh.profile.bundles` in `~/.dsh/profiles/web/package.json` and restart `dsh web`. Terminals use the official Harness service, and the bundled Browser is enabled automatically; no additional terminal or sidebar plugin is needed. See [Installation](https://github.com/tingfeng347/dsh-vscode-workbench/blob/main/docs/INSTALL.en.md) for upgrades and Harness compatibility failures.
|
|
63
78
|
|
|
64
79
|
## Shortcuts
|
|
65
80
|
|
|
@@ -75,7 +90,7 @@ Installing from the DSH Plugins page or a marketplace enables the plugin automat
|
|
|
75
90
|
|
|
76
91
|
## Security
|
|
77
92
|
|
|
78
|
-
All plugin routes require Harness authentication. The host accepts only paths relative to the active DSH session workspace and rejects traversal and symlink escape. Saves use revision checks and atomic replacement. Git and ripgrep run with argument arrays rather than shell-concatenated commands.
|
|
93
|
+
All plugin routes require Harness authentication. The host accepts only paths relative to the active DSH session workspace and rejects traversal and symlink escape. Saves use revision checks and atomic replacement. Git and ripgrep run with argument arrays rather than shell-concatenated commands. Terminals use the official Harness controller, connection authentication and execution environment. Credential filtering belongs to the official subprocess provider.
|
|
79
94
|
|
|
80
95
|
## Development
|
|
81
96
|
|
|
@@ -86,7 +101,7 @@ pnpm test
|
|
|
86
101
|
pnpm build
|
|
87
102
|
```
|
|
88
103
|
|
|
89
|
-
Requires Node.js `^22.19 || >=24`, pnpm 11.7
|
|
104
|
+
Requires Node.js `^22.19 || >=24`, pnpm 11.7 and system Git. The workbench no longer installs its own native terminal module.
|
|
90
105
|
|
|
91
106
|
## Docs
|
|
92
107
|
|
|
@@ -98,3 +113,5 @@ Requires Node.js `^22.19 || >=24`, pnpm 11.7, system Git, and the native build p
|
|
|
98
113
|
## License
|
|
99
114
|
|
|
100
115
|
[MIT](LICENSE)
|
|
116
|
+
|
|
117
|
+
The Browser activity button opens official browser pages in the editor tab area. Use Cmd+T on macOS or Ctrl+T to open another page. Terminals retain the bottom layout, session list, rename and split controls. Old workbench terminal processes cannot migrate to the official controller; create new terminals after updating.
|
package/README.md
CHANGED
|
@@ -36,30 +36,45 @@
|
|
|
36
36
|
## 演示
|
|
37
37
|
|
|
38
38
|
<p align="center">
|
|
39
|
-
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/workbench-light.png" width="800" alt="资源管理器、
|
|
40
|
-
<br><em>资源管理器、
|
|
39
|
+
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/workbench-light.png" width="800" alt="资源管理器、Markdown 预览、终端与 DSH 对话">
|
|
40
|
+
<br><em>资源管理器、Markdown 预览、终端与 DSH 对话</em>
|
|
41
41
|
</p>
|
|
42
42
|
|
|
43
43
|
<p align="center">
|
|
44
|
-
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/
|
|
45
|
-
<br><em
|
|
44
|
+
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/references-light.png" width="800" alt="编辑器内查找引用与 Peek 结果">
|
|
45
|
+
<br><em>编辑器内查找引用与 Peek 结果</em>
|
|
46
46
|
</p>
|
|
47
47
|
|
|
48
48
|
<p align="center">
|
|
49
|
-
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/
|
|
50
|
-
<br><em
|
|
49
|
+
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/source-control-light.png" width="800" alt="源代码管理、提交图与内联/并排差异">
|
|
50
|
+
<br><em>源代码管理、提交图与内联/并排差异</em>
|
|
51
|
+
</p>
|
|
52
|
+
|
|
53
|
+
<p align="center">
|
|
54
|
+
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/welcome-light.png" width="800" alt="空编辑器可直接新建终端或打开浏览器">
|
|
55
|
+
<br><em>空编辑器可直接新建终端或打开浏览器</em>
|
|
56
|
+
</p>
|
|
57
|
+
|
|
58
|
+
<p align="center">
|
|
59
|
+
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/settings-light.png" width="800" alt="工作台设置:主题、字号与布局">
|
|
60
|
+
<br><em>工作台设置:主题、字号与布局</em>
|
|
61
|
+
</p>
|
|
62
|
+
|
|
63
|
+
<p align="center">
|
|
64
|
+
<img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/workspace-switcher-light.png" width="800" alt="打开工作区、切换会话与新建工作区">
|
|
65
|
+
<br><em>打开工作区、切换会话与新建工作区</em>
|
|
51
66
|
</p>
|
|
52
67
|
|
|
53
68
|
## 安装
|
|
54
69
|
|
|
55
|
-
插件 0.2.
|
|
70
|
+
插件 0.2.5 适配 DeepSeek Harness `0.2.2-rc.1`(Cordis `4.1.0`)。请先更新 Harness,再安装插件:
|
|
56
71
|
|
|
57
72
|
```bash
|
|
58
73
|
npm i -g @deepseek-ai/dsh@0.2.2-rc.1
|
|
59
74
|
dsh plugin --profile web add dsh-vscode-workbench
|
|
60
75
|
```
|
|
61
76
|
|
|
62
|
-
通过 DSH 插件页或插件市场安装会自动启用。用 CLI 安装后还需在 `~/.dsh/profiles/web/package.json` 的 `dsh.profile.bundles` 中加入 `dsh-vscode-workbench`,再重启 `dsh web
|
|
77
|
+
通过 DSH 插件页或插件市场安装会自动启用。用 CLI 安装后还需在 `~/.dsh/profiles/web/package.json` 的 `dsh.profile.bundles` 中加入 `dsh-vscode-workbench`,再重启 `dsh web`。终端直接使用 Harness 官方服务,普通浏览器也随工作台启用,无需另装终端或侧栏插件。升级旧版或遇到 Harness 版本不兼容,见[安装与升级](https://github.com/tingfeng347/dsh-vscode-workbench/blob/main/docs/INSTALL.md)。
|
|
63
78
|
|
|
64
79
|
## 快捷键
|
|
65
80
|
|
|
@@ -73,11 +88,11 @@ dsh plugin --profile web add dsh-vscode-workbench
|
|
|
73
88
|
| `Ctrl+\`` | 显示或隐藏终端 |
|
|
74
89
|
| `Ctrl+Shift+\`` | 新建终端 |
|
|
75
90
|
|
|
76
|
-
|
|
91
|
+
左侧活动栏的终端按钮可切换底部面板,浏览器按钮在中间打开官方浏览器标签;`Cmd+T`(macOS)或 `Ctrl+T` 新建浏览器。终端保留右侧列表、重命名和分屏。升级前运行的旧终端不能迁移,更新后请新建终端。
|
|
77
92
|
|
|
78
93
|
## 安全
|
|
79
94
|
|
|
80
|
-
所有插件接口要求 Harness 登录认证。Host 只接受当前 DSH 会话工作目录内的相对路径,并阻止目录穿越与符号链接越界。保存使用版本校验与原子替换;Git 与 ripgrep 使用参数数组启动,不拼接 Shell
|
|
95
|
+
所有插件接口要求 Harness 登录认证。Host 只接受当前 DSH 会话工作目录内的相对路径,并阻止目录穿越与符号链接越界。保存使用版本校验与原子替换;Git 与 ripgrep 使用参数数组启动,不拼接 Shell 命令。终端使用 Harness 官方控制器、连接认证和执行环境,在 Session 当前工作目录启动;凭据环境变量过滤由官方 subprocess provider 负责。
|
|
81
96
|
|
|
82
97
|
## 开发
|
|
83
98
|
|
|
@@ -88,7 +103,7 @@ pnpm test
|
|
|
88
103
|
pnpm build
|
|
89
104
|
```
|
|
90
105
|
|
|
91
|
-
需要 Node.js `^22.19 || >=24`、pnpm 11.7
|
|
106
|
+
需要 Node.js `^22.19 || >=24`、pnpm 11.7 和系统 Git。工作台不再单独安装终端原生模块。
|
|
92
107
|
|
|
93
108
|
## 文档
|
|
94
109
|
|