dsh-vscode-workbench 0.1.0

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 dsh-vscode-workbench contributors
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.
package/README.en.md ADDED
@@ -0,0 +1,82 @@
1
+
2
+
3
+ <h1 align="center">DSH VS Code Workbench</h1>
4
+
5
+ <p align="center">A VS Code-style local development workbench for DeepSeek Harness.</p>
6
+ <p align="center"><a href="README.md">中文</a> · <b>English</b></p>
7
+
8
+
9
+ ## Features
10
+
11
+ - Explorer: lazy directory loading with create, rename, delete, and refresh actions.
12
+ - Editor: Monaco tabs, dirty state, atomic saves, revision conflicts, and external-change notices.
13
+ - Preview: rendered Markdown by default with source and outline modes, workspace-relative links, and image previews.
14
+ - Search: `@vscode/ripgrep` full-text search with case, whole-word, regex, and include/exclude controls.
15
+ - Git: grouped status, stage, unstage, discard, commit, branch switching, inline/side-by-side diffs, and a commit graph.
16
+ - Layout: resizable and collapsible primary view, bottom panel, and status bar, with centralized theme and width settings.
17
+ - DSH conversation: reuses the official conversation UI with messages, coding tools, models, attachments, and permissions.
18
+ - Restore: persists the active view, tabs, widths, and panel state per workspace across reloads.
19
+
20
+ The workbench mounts through the official `sidebar.footer.action` and `shell.overlay` extension points. It does not replace or disable `ui-layout`.
21
+
22
+ ## Screenshots
23
+
24
+ <p align="center">
25
+ <img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/explorer.png" width="800" alt="Explorer and Monaco editor">
26
+ <br><em>Explorer and Monaco editor</em>
27
+ </p>
28
+
29
+
30
+ <p align="center">
31
+ <img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/source-control.png" width="800" alt="Source control and commit graph">
32
+ <br><em>Source control and commit graph</em>
33
+ </p>
34
+
35
+ ## Installation
36
+
37
+ Install the aggregate package for the complete workbench with terminal integration:
38
+
39
+ ```bash
40
+ dsh plugin --profile web add dsh-vscode-plugin
41
+ ```
42
+
43
+ Install only the workbench and its extension API:
44
+
45
+ ```bash
46
+ dsh plugin --profile web add dsh-vscode-workbench
47
+ ```
48
+
49
+ ## Shortcuts
50
+
51
+ | Shortcut | Action |
52
+ | --- | --- |
53
+ | `Ctrl+Shift+E` | Open Explorer |
54
+ | `Ctrl+Shift+F` | Open Search |
55
+ | `Ctrl+Shift+G` | Open Source Control |
56
+ | `Ctrl+S` | Save the active file |
57
+ | `Ctrl+Alt+B` | Toggle the DSH conversation panel |
58
+
59
+ Terminal shortcuts are registered by `dsh-vscode-plugin`.
60
+
61
+ ## Extension API
62
+
63
+ The browser exposes a `vscodeWorkbench` service for registering bottom panels and commands and controlling workbench visibility. `dsh-vscode-plugin` uses this API to mount `@xterm/xterm`.
64
+
65
+ ## Security
66
+
67
+ 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.
68
+
69
+ ## Development
70
+
71
+ ```bash
72
+ pnpm install
73
+ pnpm typecheck
74
+ pnpm test
75
+ pnpm build
76
+ ```
77
+
78
+ Requires Node.js `^22.19 || >=24`, pnpm 11.7, and system Git.
79
+
80
+ ## License
81
+
82
+ [MIT](LICENSE)
package/README.md ADDED
@@ -0,0 +1,81 @@
1
+
2
+ <h1 align="center">DSH VS Code Workbench</h1>
3
+
4
+ <p align="center">在 DeepSeek Harness 中叠加 VS Code 风格的本地开发工作台。</p>
5
+
6
+ <p align="center"><b>中文</b> · <a href="README.en.md">English</a></p>
7
+
8
+ ## 功能
9
+
10
+ - 资源管理器:懒加载目录,支持新建、重命名、删除和刷新。
11
+ - 编辑器:Monaco 多标签编辑、脏状态、原子保存、版本冲突和外部变更提示。
12
+ - 预览:Markdown 默认渲染,可切换源码与大纲;支持工作区相对链接、图片和常见图片文件预览。
13
+ - 搜索:基于 `@vscode/ripgrep` 的全文搜索,支持大小写、全词、正则和包含/排除规则。
14
+ - Git:状态分组、暂存、撤销暂存、丢弃、提交、分支切换、内联/并排差异和提交图表。
15
+ - 布局:可调节和折叠的左侧视图、底部面板与状态栏;设置统一管理主题和栏宽。
16
+ - DSH 对话:右侧复用官方会话界面,保留消息、编程工具、模型、附件和权限能力。
17
+ - 状态恢复:按工作区保存活动视图、标签、栏宽和面板状态,刷新后继续工作。
18
+
19
+ 工作台通过官方 `sidebar.footer.action` 和 `shell.overlay` 扩展点挂载,不替换或卸载 `ui-layout`。
20
+
21
+ ## 截图
22
+
23
+ <p align="center">
24
+ <img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/explorer.png" width="800" alt="资源管理器与 Monaco 编辑器">
25
+ <br><em>资源管理器与 Monaco 编辑器</em>
26
+ </p>
27
+
28
+
29
+ <p align="center">
30
+ <img src="https://raw.githubusercontent.com/tingfeng347/dsh-vscode-workbench/main/assets/screenshots/source-control.png" width="800" alt="源代码管理与提交图表">
31
+ <br><em>源代码管理与提交图表</em>
32
+ </p>
33
+
34
+ ## 安装
35
+
36
+ 推荐安装包含终端适配器的聚合包:
37
+
38
+ ```bash
39
+ dsh plugin --profile web add dsh-vscode-plugin
40
+ ```
41
+
42
+ 仅使用工作台和扩展 API:
43
+
44
+ ```bash
45
+ dsh plugin --profile web add dsh-vscode-workbench
46
+ ```
47
+
48
+ ## 快捷键
49
+
50
+ | 快捷键 | 操作 |
51
+ | --- | --- |
52
+ | `Ctrl+Shift+E` | 打开资源管理器 |
53
+ | `Ctrl+Shift+F` | 打开搜索 |
54
+ | `Ctrl+Shift+G` | 打开源代码管理 |
55
+ | `Ctrl+S` | 保存当前文件 |
56
+ | `Ctrl+Alt+B` | 显示或隐藏 DSH 对话栏 |
57
+
58
+ 终端快捷键由 `dsh-vscode-plugin` 注册。
59
+
60
+ ## 扩展
61
+
62
+ 浏览器端提供 `vscodeWorkbench` 服务,可注册底部面板和命令,并控制工作台与面板显隐。`dsh-vscode-plugin` 使用该接口挂载 `@xterm/xterm`。
63
+
64
+ ## 安全
65
+
66
+ Host 只接受当前 DSH 会话工作目录内的相对路径,并阻止目录穿越与符号链接越界。保存使用版本校验和原子替换;Git 与 ripgrep 使用参数数组启动,不拼接 Shell 命令。
67
+
68
+ ## 开发
69
+
70
+ ```bash
71
+ pnpm install
72
+ pnpm typecheck
73
+ pnpm test
74
+ pnpm build
75
+ ```
76
+
77
+ 需要 Node.js `^22.19 || >=24`、pnpm 11.7 和系统 Git。
78
+
79
+ ## 许可证
80
+
81
+ [MIT](LICENSE)