← 返回列表
⚠ 装前注意
在页脚打开真实 PTY 终端,跑 vim 与 htop
基本兼容但装前注意:npm 同名包「dsh-plugin-terminal」归属 siberiah2o/dsh-plugin-terminal,装到的可能不是本插件 · 最近上游提交 2026/8/20 · 已提供中文文档
DeepSeek Harness Web 插件:在 VS Code 风格的可折叠底部面板中提供真正的 PTY 终端
综合分
37.9
GitHub 分
37.9
用户评分
—
★ Stars
3
周下载量
—
安装插件(需先安装 dsh CLI 引擎:npm install -g @deepseek-ai/dsh)
dsh plugin --profile web add mervyn-teo/dsh-plugin-terminalnpm 同名包「dsh-plugin-terminal」归属 siberiah2o/dsh-plugin-terminal,装到的可能不是本插件,改用 GitHub 源安装
数据截至 2026/8/21(元数据每日更新 · 实装验证按队列轮转,单条结论的验证时间见上方)
安装兼容性检查⚠ 装前注意
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✓npm 包dsh-plugin-terminal @ 0.2.0
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
npm 同名包「dsh-plugin-terminal」归属 siberiah2o/dsh-plugin-terminal,装到的可能不是本插件
验证方式:npm registry 存在性 + package.json 静态校验 · 最后验证 2026/9/12 22:11:53
⚠ 该插件运行需访问外部网络 / 远程 API,部署在国内无外网环境时可能无法正常使用。
依赖的 DSH / Cordis 模块
@deepseek-ai/cordis@deepseek-ai/dsh-api-remotes@deepseek-ai/dsh-client-connection@deepseek-ai/dsh-client-locale@deepseek-ai/dsh-client-runtime@deepseek-ai/dsh-client-ui-primitives@deepseek-ai/dsh-client-ui-slots@deepseek-ai/dsh-host-webserver@deepseek-ai/dsh-invariants@deepseek-ai/dsh-settings@deepseek-ai/schemastery用户评分
还没有人投票,来当第一个
订阅周报,不错过优质插件更新
每周一封 · 高评分插件 + 新用户活动
README
dsh-plugin-terminal 一个 DeepSeek Harness(DSH)Web 插件:在页脚添加一个 真实 的交互式终端 —— 一个 VS Code 风格的、停靠在底部 的可折叠面板。与早期版本(用内置 help/echo/ls 命令伪造输出)不同,本插件 在 PTY 中运行真正的 shell,并把原始终端字节流传输到浏览器。它是一个持久化的 bundle 插件(Host 半边 + 浏览器半边),每次启动都会自动加载。 演示 功能 - 真实终端 —— 在 PTY 中运行真正的交互式 shell(Windows 默认 PowerShell, 其他平台默认 $SHELL//bin/bash),底层使用 DSH 的 subprocess.spawnTerminal 原语(node-pty)。 - 完整终端渲染 —— xterm.js 渲染 ANSI 颜色、光标移动、全屏应用 (vim、htop、top …)以及 256 色输出。 - VS Code 风格页脚面板 —— 可折叠的底部面板,带标题栏、顶部拖拽调整大小、 重启按钮与折叠开关。 - 键盘快捷键 —— Ctrl+ 切换面板(VS Code 默认快捷键)。 - 实时调整大小 —— 调整面板时 PTY 会重新换行。 - Terminal 配置卡片 —— 在 设置 → 插件 中实时配置主题、字号、面板高度、 不透明度、启动折叠、shell 与工作目录。 - 优雅降级 —— 当 xterm.js 无法加载时(离线),纯文本流式视图仍能使用真实 shell。 文件 | 文件 | 用途 | | --- | --- | | lib/index.js | Host 半边 —— 创建 PTY 并通过 /api/terminal WebSocket 桥接。 | | lib/client.js | 浏览器半边 —— 页脚面板与配置卡片。 | | cordis.patch.yml | 插入插件行的组合补丁。 | | package.json | 包元数据(dsh.bundle + dsh.client 清单)。 | 安装 dsh plugin --profile web add github:mervyn-teo/dsh-plugin-terminal 然后重启 dsh web —— Host bundle 在启动时加载。 默认配置在 cordis.patch.yml。可在那里(或 profile 自带的 cordis.patch.yml) 修改后重启,或在运行时通过配置卡片调整。Host 半边提供两个同源路由供浏览器半边 使用:GET|POST /api/terminal/config 与 /api/terminal WebSocket 升级。 依赖 - DSH 需要挂载 subprocess 与 webServer 服务。 - 终端首次渲染 xterm.js 时需要能访问 jsDelivr(纯文本降级视图无需网络)。 设置 设置 → 插件 → Terminal 提供: | 设置 | 说明 | | --- | --- | | 主题 | dark 或 light 终端主题(实时生效)。 | | 字号 | 终端字号(像素,实时生效)。 | | 最大高度 | 面板最大高度(像素)。 | | 不透明度 | 终端背景不透明度 0–100%(100 = 完全不透明)。 | | 启动折叠 | 面板是否在启动时折叠。 | | Shell | 新会话使用的 shell 可执行文件。 | | 工作目录 | 新会话的默认目录(留空 = 主目录)。 | Shell 与工作目录在下次打开终端时生效;主题、不透明度、字号与最大高度立即生效。 说明与限制 - 终端从 jsDelivr CDN 加载 xterm.js;首次展开需要网络访问。纯文本降级视图离线 仍可用。 - 会话是进程本地的,重启 DSH 后不会恢复。 - 与 Web GUI 的其他部分一样,WebSocket 路由仅绑定回环地址。 - Windows —— Windows 上默认 shell 为 powershell.exe(将 shell 设为 cmd.exe、shellArgs 设为 [] 可切换为命令提示符)。需要 DSH 主机提供为 Windows 构建的 node-pty(conpty/winpty)。 许可证 MIT
同作者(mervyn-teo)的其他插件
扫码进群