DeepSeek Harness 插件

dsh-terminal-mattisme

A responsive, tabbed Ghostty terminal for the DeepSeek Harness Web UI(英文原文)

跳到安装方式

来源信息

GitHub 仓库
mattismegevand/dsh-terminal
最近更新
2026年8月16日
分类
插件开发工具
GitHub stars
1
载体类型
plugin
目录证据
上游声明已找到 dsh.bundle
证据路径
package.json#dsh.bundle
核对版本
0.1.0-rc.8
上游核对日期
2026-08-20

该证据由上游目录提供。本站没有安装、运行或安全审核这个插件。

安装

默认先复制一段 Prompt,让 Agent 读 GitHub 仓库和源码;需要自己装时再切到命令。

复制这段 Prompt,发给 DSH、Codex 或其他 Agent,让它先读 GitHub 仓库和源码。

请先不要安装或执行任何命令。阅读这个插件的 GitHub 仓库、README 和关键源码,然后用清楚、直接的方式回答以下问题,帮助我判断它是否适合我的需求:

1. 这个插件是什么,解决什么问题;
2. 适合哪些用户和典型使用场景;
3. 安装后如何使用,并给出一个最小使用示例;
4. 有哪些已知限制,以及隐私、安全、兼容性或维护风险;
5. 给出“推荐 / 有条件推荐 / 不推荐”的明确建议和理由。

请区分仓库明确说明、根据源码推断和未知信息。证据不足时请明确说明,不要猜测或照抄 README。

GitHub:https://github.com/mattismegevand/dsh-terminal
插件名:dsh-terminal-mattisme
作者:mattismegevand

检查来源文件

安装前先看这个插件目录里的 README 和其他文件。

文件资源管理器4 个文件
README.zh.md来源说明 · 只读预览
README 语言

dsh-terminal

English | 中文

> 面向 DeepSeek Harness Web 的 VS Code 风格终端面板。它使用 ghostty-web 渲染,将带版本的 Ghostty WASM 作为不可变资源提供,并通过 node-pty 连接本地 PTY。面板放置与调整大小由 dsh-dock 提供。

![MIT License](LICENSE) ![dsh-plugin](https://github.com/topics/dsh-plugin)

!停靠在 Harness 会话底部的终端面板

功能

  • 每个 Harness 会话支持多个终端,并提供响应式标签托盘。
  • 通过 dsh-dock 支持左侧、右侧、底部和浮动布局。
  • 可实时分离与重新合并终端面板,且不会重启 PTY。
  • 支持尺寸同步、真彩色、Unicode、选择、粘贴、滚动历史和全屏程序。
  • 与当前 Harness 主题实时同步明暗配色。
  • Shell 标题会跟随工作区、前台进程和应用提供的终端标题。
  • 面板隐藏或移动时 PTY 保持运行;关闭标签、插件、浏览器页面或 Harness 进程时停止。
  • 可选地遵循会话当前的 Harness 沙箱策略。
  • 提供同源 WebSocket 防护、有界输入、每会话上限、环境变量清理和输出背压。

安装

需要 dsh-dockdsh CLI(Node.js 22.19+ 或 24)和 pnpm 10+。

从 npm 安装

dsh plugin --profile web add @mattismegevand/dsh-terminal

从 GitHub 安装

dsh plugin --profile web add github:mattismegevand/dsh-terminal

从 Git 安装拉取的是源码,因此首次 add 时 pnpm 会运行包的 prepare 构建。pnpm ≥10 会先拒绝该行为:请把 pnpm 打印的精确包名复制到 profile 的 pnpm-workspace.yamlallowBuilds 条目中,然后重新运行同一条 add 命令。

本地开发

git clone https://github.com/mattismegevand/dsh-terminal.git
cd dsh-terminal
corepack pnpm install
corepack pnpm check:all
dsh plugin --profile web add .

node-pty 是原生依赖。如果 pnpm 在 Web profile workspace 中加入 allowBuilds.node-pty 占位项,请将它设为 true,然后重新运行相同的 plugin-add 命令。

使用

打开会话并选择 终端。使用 +Ctrl+Shift+\` 新建 shell。拖动托盘行可将其分离;把终端面板停靠到同一边缘会重新合并其中的实时终端。面板 × 只隐藏面板,托盘中的删除操作会结束 shell。

配置

- id: terminal
  name: '@mattismegevand/dsh-terminal'
  config:
    shellPath: /bin/zsh
    shellArgs: ['-l']
    maxTerminalsPerSession: 12
    maxCols: 400
    maxRows: 200
    disposeGraceMs: 2000
    respectSandbox: false
    outputHighWaterBytes: 2097152
    outputLowWaterBytes: 524288
    processTitlePollMs: 500
    initialCols: 100
    initialRows: 30
    fontSize: 13
    scrollback: 10000

启用 respectSandbox: true 后,终端使用会话的沙箱模式。在 workspace-write 中,shell 可能提示无法更新历史记录或 workspace 之外的其他文件;这是预期行为。

相关插件

  • dsh-dock — 承载本面板的停靠系统。
  • dsh-open — 会话标题栏中 Codex 风格的工作区“打开”菜单。
  • dsh-git — 按会话隔离的工作树 Review 面板。

模型体验

用户操作的终端 UI

#### 模型看到的内容

无。终端输入与输出只在用户操作的浏览器终端和 PTY 之间传输;插件不注册模型提示词、工具或会话消息。

#### Token 影响

不会向模型请求或响应增加 token。终端输出不会复制到模型上下文。

#### KV Cache 影响

无。PTY 活动不会改变主模型请求前缀。

已知限制

  • 终端目前仅支持本地主机。远程 provider 需要 Harness 提供支持 resize 的 PTY 契约。
  • PTY 有意不跨浏览器刷新、插件重载、Harness 关闭或显式关闭标签而存活。
  • respectSandbox 遵循当前本地沙箱 provider;更改模式前必须关闭活动终端。
  • Ghostty WASM 资源路径与固定版本的 ghostty-web 依赖绑定,升级资源时必须同时更改路径。

许可证

MIT