DSH Remote SSH:在远程 Linux 服务器上使用原生 DSH 工具

在使用 DeepSeek Harness (DSH) 进行开发或运维时,我们通常局限于本地计算机的环境。如果需要操作远程 Linux 服务器,往往需要额外的 SSH 连接脚本或手动登录,这增加了操作步骤和出错概率。DSH Remote SSH 插件提供了直接的解决方案,它允许 DSH 的原生工具直接在远程服务器上执行。

这是什么

这是一个由 NaNQiQ 维护的 DSH 插件。它的核心作用是让 DSH 的原生工具(如 read、write、edit、glob、grep、bash、terminal 等)在远程 Linux 服务器上运行。目标服务器不需要安装 DSH、Node.js 或 Python,插件通过 SSH/SFTP 协议与远程环境交互,从而扩展了 DSH 的操作范围。

核心功能

  • 服务器管理:可以在 DSH Web UI 中添加、测试、管理和选择 SSH 服务器。
  • 环境切换:在本地计算机和已保存的服务器之间切换执行环境。
  • 原生工具保留:保持使用官方 DSH 工具,而非削减版的 ssh_* 替代品。
  • 协议支持:使用 SFTP 处理文件,使用 SSH exec/shell 执行命令,使用 SSH PTY 处理交互式终端。
  • 搜索行为一致:在保留原生 glob / grep 行为的同时,会解析并缓存远程 Linux 主机的 ripgrep。
  • 认证方式:支持通过 SSH Agent、私钥文件或临时密码进行认证。
  • 安全校验:首次连接时会验证 SSH 主机密钥指纹,防止意外更改。
  • 连接复用:重用 DSH Host 维护的连接,避免每条消息都重新登录。

安装与启用

确保系统已安装 Node.js 24 或更新版本,且 dsh 和 pnpm 在 PATH 中。执行以下命令安装并启动:

dsh plugin --profile web add github:NaNQiQ/deepseek-harness-remote-ssh
dsh web

典型用法

  1. 启动 dsh web。
  2. 在对话编辑器旁边打开执行环境选择器。
  3. 选择 Add server。
  4. 填写连接信息、认证方式和默认工作目录设置。
  5. 按照内置的认证指南操作,并验证服务器指纹。
  6. 点击 Test and save。
  7. 在选择器中点击已保存的服务器。

此后,模型将继续使用官方 DSH 工具,只是这些工具背后的执行位置变成了远程服务器。

适用场景与注意

  • 目标环境:目标必须是安装了 SSH、SFTP 和 POSIX shell 的 Linux / Unix 主机。
  • 工作目录:每个服务器可以定义默认工作目录,这是初始的 cwd,并非路径沙箱。
  • 权限控制:实际访问权限等于远程 SSH 账户的权限。
  • 文件系统隔离:Remote Provider 不会将 DSH Host 的本地文件系统暴露给远程执行环境。
  • 密钥管理:模型 API 密钥和 Base URL 仍由 DSH 管理,插件不读取或存储这些敏感信息。
  • 重启要求:更新或移除插件后,需要重启 DSH。

总结

DSH Remote SSH 通过封装 SSH 协议,让 DSH 的工具生态无缝延伸至远程服务器。开发者无需在目标服务器上部署环境,即可利用现有的工具链进行远程操作。插件源码位于 GitHub:https://github.com/NaNQiQ/deepseek-harness-remote-ssh。

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

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

小夜