dsh-vscode-workbench 0.1.6 → 0.1.8

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 CHANGED
@@ -34,6 +34,9 @@ Resizable and collapsible primary view, an extensible bottom panel, and a status
34
34
  ### DSH conversation
35
35
  Reuses the official conversation UI with messages, coding tools, models, attachments, and permissions.
36
36
 
37
+ ### Terminal
38
+ The workbench includes an interactive local terminal powered by `node-pty` and xterm. Use the terminal icon in the left activity bar to open the bottom panel; it supports multiple terminals, renaming, resize, ANSI output, and Ctrl+C.
39
+
37
40
  ### Restore
38
41
  Persists the active view, tabs, widths, and panel state per workspace across reloads.
39
42
 
@@ -51,12 +54,21 @@ The workbench mounts through the official `sidebar.footer.action` and `shell.ove
51
54
  <br><em>Source control and commit graph</em>
52
55
  </p>
53
56
 
57
+ ![2026-08-31 22-52-58.png](https://pic1.imgdb.cn/i/034GkZFU8ULHsWgFio93Lw.png)
58
+
54
59
  ## Installation
55
60
 
56
61
  ```bash
57
62
  dsh plugin --profile web add dsh-vscode-workbench
58
63
  ```
59
64
 
65
+ With pnpm, `node-pty` needs approval to run its native build script. If pnpm asks for it, add the following to the active profile's `pnpm-workspace.yaml`:
66
+
67
+ ```yaml
68
+ allowBuilds:
69
+ node-pty: true
70
+ ```
71
+
60
72
  ## Shortcuts
61
73
 
62
74
  | Shortcut | Action |
@@ -66,10 +78,12 @@ dsh plugin --profile web add dsh-vscode-workbench
66
78
  | `Ctrl+Shift+G` | Open Source Control |
67
79
  | `Ctrl+S` | Save the active file |
68
80
  | `Ctrl+Alt+B` | Toggle the DSH conversation panel |
81
+ | `Ctrl+\`` | Show or hide the terminal |
82
+ | `Ctrl+Shift+\`` | Create a terminal |
69
83
 
70
84
  ## Security
71
85
 
72
- 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.
86
+ 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. The terminal accepts same-origin loopback requests only, starts in the session workspace, and removes API keys, tokens, secrets, and similar environment variables.
73
87
 
74
88
  ## Development
75
89
 
@@ -80,7 +94,7 @@ pnpm test
80
94
  pnpm build
81
95
  ```
82
96
 
83
- Requires Node.js `^22.19 || >=24`, pnpm 11.7, and system Git.
97
+ Requires Node.js `^22.19 || >=24`, pnpm 11.7, system Git, and the native build prerequisites for `node-pty` when no prebuild is available.
84
98
 
85
99
  ## License
86
100
 
package/README.md CHANGED
@@ -35,6 +35,9 @@ Markdown 默认渲染,可切换源码与大纲;支持工作区相对链接
35
35
  ### DSH 对话
36
36
  右侧复用官方会话界面,保留消息、编程工具、模型、附件与权限能力。
37
37
 
38
+ ### 终端
39
+ 内置由 `node-pty` 与 xterm 驱动的本地交互终端。点击左侧活动栏终端图标打开底部面板,支持多终端、重命名、尺寸自适应、ANSI 输出与 Ctrl+C。
40
+
38
41
  ### 状态恢复
39
42
  按工作区保存活动视图、标签、栏宽与面板状态,刷新后继续工作。
40
43
 
@@ -52,12 +55,21 @@ Markdown 默认渲染,可切换源码与大纲;支持工作区相对链接
52
55
  <br><em>源代码管理与提交图表</em>
53
56
  </p>
54
57
 
58
+ ![2026-08-31 22-52-58.png](https://pic1.imgdb.cn/i/034GkZFU8ULHsWgFio93Lw.png)
59
+
55
60
  ## 安装
56
61
 
57
62
  ```bash
58
63
  dsh plugin --profile web add dsh-vscode-workbench
59
64
  ```
60
65
 
66
+ 使用 pnpm 安装时,`node-pty` 需要执行受限的原生构建脚本。若出现构建许可提示,请在当前 profile 的 `pnpm-workspace.yaml` 中加入:
67
+
68
+ ```yaml
69
+ allowBuilds:
70
+ node-pty: true
71
+ ```
72
+
61
73
  ## 快捷键
62
74
 
63
75
  | 快捷键 | 操作 |
@@ -67,10 +79,14 @@ dsh plugin --profile web add dsh-vscode-workbench
67
79
  | `Ctrl+Shift+G` | 打开源代码管理 |
68
80
  | `Ctrl+S` | 保存当前文件 |
69
81
  | `Ctrl+Alt+B` | 显示或隐藏 DSH 对话栏 |
82
+ | `Ctrl+\`` | 显示或隐藏终端 |
83
+ | `Ctrl+Shift+\`` | 新建终端 |
84
+
85
+ 左侧活动栏的终端按钮会展开终端面板;已打开时再次点击不会关闭它。
70
86
 
71
87
  ## 安全
72
88
 
73
- Host 只接受当前 DSH 会话工作目录内的相对路径,并阻止目录穿越与符号链接越界。保存使用版本校验与原子替换;Git 与 ripgrep 使用参数数组启动,不拼接 Shell 命令。
89
+ Host 只接受当前 DSH 会话工作目录内的相对路径,并阻止目录穿越与符号链接越界。保存使用版本校验与原子替换;Git 与 ripgrep 使用参数数组启动,不拼接 Shell 命令。终端只接受同源 loopback 请求,固定在会话工作目录启动,并移除 API key、token、secret 等敏感环境变量。
74
90
 
75
91
  ## 开发
76
92
 
@@ -81,7 +97,7 @@ pnpm test
81
97
  pnpm build
82
98
  ```
83
99
 
84
- 需要 Node.js `^22.19 || >=24`、pnpm 11.7 与系统 Git。
100
+ 需要 Node.js `^22.19 || >=24`、pnpm 11.7、系统 Git,以及 `node-pty` 所需的本机构建环境(预编译产物不可用时)。
85
101
 
86
102
  ## 许可证
87
103