dsh-remote-connector:在远程服务器上部署 DeepSeek Harness

前言

DeepSeek Harness(DSH)通过插件化架构扩展功能,但默认需要在本机运行。当需要在远程 Linux 服务器上使用 DSH 时,需要手动部署 Node.js 与 DSH、配置 SSH 隧道,再手动打开 Web 界面。这个流程重复且容易出错。

dsh-remote-connector 解决这个问题:通过 SSH 在远程服务器上部署、启动 DSH,并在本机建立端口隧道,一键打开远程 DSH 的 Web 界面。

这是什么

dsh-remote-connector 是 DeepSeek Harness(DSH)的一个插件,由 WhitesPantry 维护,归类为「联网工具」。它为 DSH 增加了一个「远程服务器」侧边栏面板,支持添加、删除、测试 SSH 服务器,以及一键部署、启动、连接、停止和断开。

核心功能

  • 远程服务器管理:侧边栏「远程服务器」面板,添加、删除、测试 SSH 服务器。
  • 一键部署:在目标服务器上安装用户级 Node.js(~/node)与 DSH(~/.npm-global),不修改系统 Node。
  • 启动 / 停止:在服务器上常驻启动 dsh --profile web,并可停止。
  • 一键连接:部署 + 启动 + 建立本机 ssh -L 隧道 + 返回带 token 的访问地址。
  • 服务器列表保存:服务器记录保存在本机 ~/.dsh/dsh-remote-connector/servers.json。

前置条件

  • 本机需要可用的 ssh 客户端(Windows 10+/macOS/Linux 自带 OpenSSH)。
  • 目标服务器为 Linux(POSIX),已配置好免密 SSH(密钥或 agent),且可用 curl(或 wget)与 tar。
  • 密码认证当前版本暂未内置,请使用密钥登录。

安装与启用

从 npm 安装(推荐)

dsh plugin --profile web add 'dsh-remote-connector'

安装后按提示启用插件,并重启一次 DSH。重启后侧栏出现「远程服务器」。

从 GitHub 源码安装

如果 npm 上还没有最新版本,也可以直接从源码装:

dsh plugin --profile web add 'github:WhitesPantry/dsh-remote-connector#main'

或在 DSH 内置「插件 → 添加插件」框里填入 github:WhitesPantry/dsh-remote-connector#main。

本地目录安装(开发)

dsh plugin --profile web add 'C:/path/to/dsh-remote-connector'

路径写绝对路径;相对路径需以 ./ 开头并相对于运行 dsh 命令的目录。

典型用法

  1. 打开侧栏「远程服务器」→「添加服务器」,填地址(如 server.example.com 或 user@host),可选端口/密钥/远端端口/本地端口。
  2. 点「测试」确认 SSH 连通。
  3. 点「一键连接」:插件会自动部署 Node+DSH(首次较慢)、启动远端 DSH、建立隧道并给出访问地址。
  4. 点「打开」在浏览器打开远端 DSH;或手动访问面板显示的 http://127.0.0.1:<本地端口>/?token=...。
  • 「停止」= 停止远端 DSH 进程;「断开」= 只断开本机隧道;「删除」= 移除服务器记录。
  • 远端日志位于服务器 ~/.dsh-remote-connector-<端口>.log;token 地址也会打印在这里。

配置

cordis.patch.yml 中的默认配置可在 profile 的 patch 层覆盖:

键 默认 说明
sshBinary ssh ssh 命令路径
connectTimeoutSec 15 连接超时(秒)
storageDir ~/.dsh/dsh-remote-connector 服务器列表存储目录
nodeVersion v22.21.0 部署到远端的 Node 版本
dshPackage @deepseek-ai/dsh 部署到远端的 DSH npm 包
defaultRemotePort 8787 远端 DSH 默认端口
defaultLocalPort 8787 本机隧道默认端口

安全说明

  • 部署在远端执行的是标准的 Node 官方 tarball 与 npm 包安装,不下载本仓库以外的可执行内容。
  • 服务器列表与 token 地址保存在本机,token 属于敏感凭据,请勿分享。
  • 隧道绑定本机回环地址(127.0.0.1),仅本机可访问。

适用场景与注意

适合需要在远程 Linux 服务器上运行 DSH 的场景,例如资源隔离、本地环境受限或统一管控多台服务器。

注意:插件以当前 dsh 进程权限运行,安装前应检查源码与许可证。

短结尾

dsh-remote-connector 通过 SSH 与端口隧道,把远程部署、启动和访问集成到 DSH 侧边栏,减少重复配置。更多细节可查看目录页与 GitHub 仓库。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye