前言¶
在 DeepSeek Harness 中让模型完成代码修改后,常见下一步是执行构建、查看仓库状态、运行测试。如果每次都要切到外部终端,流程会被打断。DSH 可以通过 bundle 插件扩展 Web 界面;dsh-web-terminal 就是由 helays 维护的一个插件,用于在 Web 界面中打开交互式终端。
这是什么¶
dsh-web-terminal 是 DSH bundle 插件。它会在 DeepSeek Harness Web 界面的「对话 / 轨迹」顶部新增「终端」Tab,并内置 xterm.js + node-pty 交互式终端,用于编码完成后即时执行指令和调试。
核心功能¶
- 在 Web 界面顶部新增 Terminal Tab,与 Chat、Trajectory 并列。
- 内置 xterm.js + node-pty 交互式 PTY 终端。
- Windows 使用 ConPTY,POSIX 使用交互式 shell。
- 终端进程常驻,可在同一 shell 中连续执行命令。
- 切换会话、返回或刷新页面后,可自动重连并回放 scrollback。
- 终端完全独立于模型/Agent,不写入对话上下文。
- 自动检测 PowerShell(Windows)和 bash(POSIX),并可通过下拉切换 bash/zsh/pwsh/powershell/cmd/python。
- 支持在同一 Tab 中打开多个终端,各终端拥有独立进程。
- 可在输入框使用
/terminal命令直接跳转到终端。
安装与启用¶
该插件要求 DeepSeek Harness 0.1.0-rc.6(next channel)web profile。
安装命令如下:
dsh plugin --profile web add dsh-web-terminal@github:helays/dsh-web-terminal#main -w
命令中的 -w 是必需的。当前 dsh profile template 是 pnpm workspace root,省略该参数会触发 ERR_PNPM_ADDING_TO_ROOT。
安装完成后,重启 dsh web 并刷新浏览器:
dsh web
典型用法¶
1、打开任意会话。进入会话后,顶部会出现 Chat、Trajectory、Terminal 三个 Tab。
2、点击 Terminal Tab,或在输入框输入 /terminal:
/terminal
3、在终端中执行命令,例如:
npm run build
git status
pytest
4、需要切换 shell 时,使用 Terminal Tab 右上角的 Terminal type 下拉菜单选择类型。
5、切回 Chat 时,终端和会话仍保留;终端进程保持常驻,可继续执行下一条命令。
适用场景与注意¶
适合在 DeepSeek Harness Web 中完成本地调试:模型改完代码后,直接在旁边的终端执行构建、状态查看或测试。
默认在当前会话的 workspace 目录打开终端;若该目录不可用,则回退到 dsh web 启动目录。
该终端与内置 ctx.terminals 不同:dsh-web-terminal 通过 node-pty 启动用户自有 shell,不进入模型/Agent 的对话上下文。
插件会在本机 dsh 进程环境中运行。安装第三方 DSH 插件前,建议先检查源码和许可证。本插件许可证为 MIT。
结尾¶
dsh-web-terminal 将交互式终端放进 DeepSeek Harness Web 的对话旁边,适合编码完成后立即执行命令和调试。
相关链接:
- GitHub 仓库:https://github.com/helays/dsh-web-terminal
- 插件目录页(来自插件线索,使用前可先核实):https://www.skillhub.cn/plugins/helays/dsh-web-terminal