🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

SSH 远程桌面 yybai25/dsh-ssh-desktop

DeepSeek Harness
yybai2535 天前有提交已提供中文文档扫描:含敏感能力

在 Windows 上连接远程服务器的 DSH 界面

30/100
综合分
0
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/10/1 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查未通过:缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装。以下命令仍可尝试,但可能失败。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add yybai25/dsh-ssh-desktop
该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么[目录]—
dsh 原生插件 · market
暂无时间戳·判据 →
装得上吗[实装验证]✓
本站已在 dsh 0.2.1-rc.5 下真实安装成功
非静态推断
L5 · 运行时冒烟等级说明 →
数据截至 2026/11/04·判据 →
安全吗[自动扫描]—
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
数据截至 2026/11/04·判据 →
还在维护吗[仓库]—
更新放缓:最近一次提交在 35 天前
暂无时间戳·判据 →
图例:✓ 通过! 需注意— 未判定 / 无数据· 「未判定」= 本站尚无数据,不代表插件有问题
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →

可信度证据

安装兼容性检查需源码安装

缺少 main/exports/bin 入口声明;仓库 package.json 标记 private,未发布到 npm,需从源码安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包dsh-ssh-desktop-workspace(未发布到 npm,仅可源码安装)
✓Node 引擎要求 >=22 · 基线 Node 22.19 满足
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明

源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/8 09:42:27

安全扫描自动 · 静态分析源码
v2.7.0
🔵 扫描:含敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描发现插件具备触达本地系统的能力:执行外部命令、读写/删除本地文件、读取剪贴板或密钥类环境变量(至少其一)。这是能力清单,不是危险判定——具体能力项与证据见下方,安装前请自行判断是否需要。

可执行外部命令读写/删除本地文件读取剪贴板或密钥环境变量
查看扫描证据(共 19 处,展示前 19 条)
  • 读取本地文件
    packages/core/lib/config.js:164
    if (!existsSync(file)) return []
  • 读取本地文件
    packages/core/lib/config.js:166
    const parsed = JSON.parse(readFileSync(file, 'utf8'))
  • 写入本地文件
    packages/core/lib/config.js:183
    mkdirSync(options.dir, { recursive: true })
  • 写入本地文件
    packages/core/lib/config.js:185
    writeFileSync(temp, JSON.stringify({ version: FORMAT_VERSION, connections }, null, 2), { mode: 0o600 })
  • 写入本地文件
    packages/core/lib/config.js:186
    renameSync(temp, file)
  • 读取本地文件
    packages/core/lib/config.js:192
    if (!existsSync(file)) return false
  • 删除本地文件
    packages/core/lib/config.js:194
    rmSync(file, { force: true })
  • 执行外部命令来自配置/变量
    packages/core/lib/ssh-config.js:80
    child = spawn(sshCommand(), ['-G', '--', target], { stdio: ['ignore', 'pipe', 'ignore'], windowsHide: true })
  • 读取本地文件
    packages/core/lib/transports.js:45
    return existsSync(bundled) ? bundled : 'ssh'
  • 执行外部命令来自配置/变量
    packages/core/lib/transports.js:102
    child = spawn(sshCommand(), args, {
  • 写入本地文件
    packages/core/lib/transports.js:186
    writeFileSync(file, input, { mode: 0o600 })
  • 删除本地文件
    packages/core/lib/transports.js:192
    try { rmSync(file, { force: true }) } catch { }
  • 执行外部命令来自配置/变量
    packages/core/lib/transports.js:216
    child = spawn(sshCommand(), args, { stdio: [... (stdinMode), fd, fd], windowsHide: true })
  • 删除本地文件
    packages/core/lib/transports.js:219
    try { rmSync(file, { force: true }) } catch { }
  • 读取本地文件
    packages/core/lib/transports.js:229
    try { return readFileSync(file, 'utf8') } catch { return '' }
  • 删除本地文件
    packages/core/lib/transports.js:232
    try { rmSync(file, { force: true }) } catch { }
  • 读取本地文件
    packages/core/lib/transports.js:422
    return existsSync(join(process.env.SystemRoot ?? 'C:\\Windows', 'System32', 'OpenSSH', 'ssh.exe'))
  • 读取本地文件
    packages/server-plugin/lib/index.js:37
    const manifest = JSON.parse(readFileSync(new URL('../package.json', import.meta.url), 'utf8'))
  • 读取密钥环境变量
    packages/server-plugin/lib/index.js:53
    secret: 'secret' in overrides ? overrides.secret : process.env.DSH_DESKTOP_LINK_SECRET,
扫描于 2026/11/4(0 天前) · 范围 全包扫描 · 来源 GitHub 仓库

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

社区实装还没有人打卡 · 装过的第一个就是你
给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 连接远程服务器DSH
  • 多服务器管理
  • 一键安装服务器

Windows 桌面外壳,通过系统 ssh 连接远程服务器上运行的 DeepSeek Harness(DSH)——多服务器、通知、一键装服务器、配套 DSH 插件。非官方。

README

由 DeepSeek 最新模型翻译生成
DSH SSH Desktop 在 Windows 上使用运行在服务器上的 DeepSeek Harness(DSH)。 一个 Windows 桌面外壳,用于连接运行在远程服务器上的 DeepSeek Harness:它通过系统 ssh 在服务器上启动或复用 dsh web,转发其端口,并在自己的窗口中显示远程 UI——支持多服务器、桌面通知、一键服务器安装以及配套的 DSH 插件(dsh-desktop-link)。 非官方项目。 本项目是社区开发的第三方工具,与 DeepSeek 没有隶属或背书关系。应用图标中的鲸鱼标志及「DeepSeek」名称归 DeepSeek 所有,这里仅用于标明所连接的软件;如权利人有异议,请提 issue,我会替换。
展开完整文档(README 剩余 1 节)
DSH SSH Desktop

在 Windows 上使用运行在服务器上的 DeepSeek Harness(DSH)。

一个 Windows 桌面外壳,用于连接运行在远程服务器上的 DeepSeek Harness:它通过系统 ssh 在服务器上启动或复用 dsh web,转发其端口,并在自己的窗口中显示远程 UI——支持多服务器、桌面通知、一键服务器安装以及配套的 DSH 插件(dsh-desktop-link)。

非官方项目。 本项目是社区开发的第三方工具,与 DeepSeek 没有隶属或背书关系。应用图标中的鲸鱼标志及「DeepSeek」名称归 DeepSeek 所有,这里仅用于标明所连接的软件;如权利人有异议,请提 issue,我会替换。

Unofficial, community-made tool, not affiliated with or endorsed by DeepSeek. The whale logo in the app icon and the DeepSeek name belong to DeepSeek and are used only to identify the software this connects to.

应用通过系统自带的 ssh 登录服务器,启动或复用那里的 dsh web,把它的端口转发到本机,再在自己的窗口里显示 DSH 的界面。DSH、它的 profile、会话和工作区都留在服务器上;本机只负责显示,不运行 DSH,也不保存任何密钥。

- 可以同时连接多台服务器,在窗口里切换
- 远端任务完成时弹出 Windows 通知,任务栏显示角标
- 会话顶部有「VS Code」按钮,通过 Remote-SSH 打开会话所在的目录
- 能在服务器上一键安装或升级 DSH 和配套插件,只写入你的家目录,不需要 root
- 断线或电脑睡眠唤醒后自动重连;可以选择退出应用时是否停止远端 DSH

截图

多台服务器,状态一目了然一键安装 Node.js、DSH 和配套插件,每一步先列出来再执行

连接前自动探测服务器环境和插件状态每台服务器单独设置,身份和跳板机交给 ~/.ssh/config

截图中的服务器名和地址均为示例。

安装

运行 DSH-SSH-Desktop-Setup-.exe。默认只为当前用户安装,不需要管理员权限,也可以在安装时更改安装位置。

安装包没有数字签名,第一次运行时 Windows SmartScreen 可能提示「Windows 已保护你的电脑」。点「更多信息」,再点「仍要运行」即可。

准备

1. ssh 能免密登录服务器。 应用用的是 Windows 自带的 OpenSSH(C:\Windows\System32\OpenSSH\ssh.exe),读取你的 %USERPROFILE%\.ssh\config。建议在里面为服务器写一个 Host 别名,身份文件、端口、跳板机也都写在那里。先在终端里确认 ssh 能直接登录,不用输入密码或确认主机指纹。
2. 服务器上有 DSH。 如果还没有,添加服务器后在「连接管理 → 安装与升级」里检查一下,按提示一键安装:Node.js、pnpm、DSH 和配套插件 dsh-desktop-link 会装进 ~/.local/opt 和 ~/.dsh。

使用

1. 打开应用,在「应用 → 连接管理 → 添加服务器」里填写 ssh 别名和服务器上的工作目录,然后保存。
2. 点「连接」。第一次启动远端 DSH 通常要 1–3 分钟,之后再连接会直接复用,只需几秒。
3. 连接后,窗口里的操作和在浏览器里用 DSH 完全一样。窗口左上角的「应用」菜单可以切换服务器、打开连接管理、测试通知。
4. 点窗口右上角的 × 不会退出,只会收起到任务栏右下角的通知区域(托盘):连接照常保持,任务完成照常通知。单击托盘图标可以重新打开窗口;要真正退出,在托盘图标的右键菜单或「应用」菜单里选「退出」。

退出应用时

在每台服务器的「连接设置」里选择:

- 保持远端运行(默认):服务器上的 DSH 继续运行,下次打开应用直接接上,正在跑的任务不受影响。
- 停止远端:正常退出时停止服务器上的 DSH。如果应用被强制结束、崩溃或长时间断网,远端会在约 10 分钟后自行停止。这需要服务器上装有配套插件。

数据与日志

| 内容 | 位置 |
| 服务器列表 | %APPDATA%\DSH SSH Desktop\connections.json |
| 各服务器的登录状态(cookie) | %APPDATA%\DSH SSH Desktop\Partitions\ |
| 日志 | %APPDATA%\DSH SSH Desktop\logs\main.log(超过 1 MB 轮换为 main.old.log) |
所有目录都叫 DSH SSH Desktop:默认安装位置是 %LOCALAPPDATA%\Programs\DSH SSH Desktop,安装程序自己的副本放在 %LOCALAPPDATA%\DSH SSH Desktop\updater。0.1.0 用的旧目录 %APPDATA%\dsh-ssh-desktop 会在第一次启动时自动搬到新位置。

日志和「连接管理 → 导出诊断」生成的文件都会去掉启动令牌和连接密钥,可以直接附在问题报告里。卸载时这些数据会保留;如果不再需要,删除 %APPDATA%\DSH SSH Desktop 即可。

开发

pnpm install
pnpm test # 三个包的全部测试
pnpm --filter dsh-ssh-desktop run package # 生成安装包,输出到 dist/installer/
pnpm --filter dsh-ssh-desktop run icon # 重新生成图标(assets/)

仓库结构:

- packages/core:连接引擎(ssh、远端启动、端口转发、服务器安装),纯 Node,不依赖 Electron
- packages/desktop:Electron 桌面端
- packages/server-plugin:服务器端配套插件 dsh-desktop-link(握手、租约、任务完成通知、VS Code 按钮)

开发时运行 start-desktop.cmd;第一次使用前先运行 setup-electron-runtime.cmd,原因见脚本里的说明。
预览分享卡片长什么样 ↓yybai25/dsh-ssh-desktop
分享 · DeepSeek Harness Hub
yybai25/dsh-ssh-desktop

在 Windows 上连接远程服务器的 DSH 界面

这个插件是你维护的吗?
作者本人可认领并核对本条目;认领通过后,详情页会显示「作者已认领」标记。
认领条目 →
回到顶部