@zhangfengshun/dsh-remote-ssh:把远程 SSH 文件与终端接入 DSH

前言

DSH 的插件机制允许把更多工作流接入本地界面。对于经常需要在远程超算或服务器上编辑文件、执行终端命令的使用者,常见做法是先本地编辑再同步,或单独打开 SSH 窗口操作。@zhangfengshun/dsh-remote-ssh 提供另一条路径:通过 SSH 连接远程主机后,在 DSH 内置「文件」「终端」页签中直接操作远程文件和终端。

插件定位

@zhangfengshun/dsh-remote-ssh 是一个类 VSCode Remote-SSH 的 DSH 插件,由 ZhangFengshun 维护,许可证为 MIT。它的目标不是把远程文件同步到本地后再编辑,而是通过 SSH 连接远程超算或服务器,直接在 DSH 内置「文件」「终端」页签中操作远程文件与远程终端。

核心能力

下面介绍插件已核实的几项能力。

  • SSH 连接:支持密钥/密码认证,支持 ProxyJump 跳板机,可从 ~/.ssh/config 一键导入。
  • 远程文件:内置「文件」页签可直接 SSH 读写远程文件,无需同步。
  • 远程终端:内置「终端」页签可自动检测远程工作区,进入 SSH 交互式终端。
  • 远程工作区:选择远程目录创建原生工作区,一键进入远程环境。
  • 模型工具:提供 12 个 remote_ssh_* 工具,支持会话感知免填连接参数。

安装与启用

先确认当前 DSH 环境满足 Node 引擎要求:>=20

然后使用以下命令安装到指定 profile:

dsh plugin --profile <name> add @zhangfengshun/dsh-remote-ssh@2.1.7

这里的 <name> 表示目标 DSH profile。安装完成后需要重启 DSH。

启用时还要注意 bundles 顺序:@zhangfengshun/dsh-remote-ssh 必须在 bundles 列表中排在 dsh-better-sidebar 之后。

典型用法

下面是从远程连接到进入远程工作区的基本步骤。

  1. 进入设置,打开「远程连接」,添加连接,填写主机、端口、用户、密钥,然后点「测试连接」验证。
  2. 添加工作区时,选择「选择远程目录…」,选择连接,浏览并选择远程目录。
  3. 打开内置「文件」页签,页面会直接显示远程文件;编辑并保存后直接写回远程。
  4. 打开内置「终端」页签,插件会自动 SSH 到远程主机;该自动 SSH 路径仅支持密钥认证。

模型工具

插件提供 12 个 remote_ssh_* 模型工具。在远程工作区会话中调用这些工具时,可免填连接参数,减少每次调用时重复指定连接配置的操作。

适用场景与注意

这个插件适合需要在 DSH 中直接操作远程超算、远程服务器文件和终端的场景,尤其是已经有 SSH 连接配置、希望减少本地与远端手动同步步骤的使用者。

使用前注意以下几点:

  • 安装后需重启 DSH。
  • @zhangfengshun/dsh-remote-ssh 必须在 bundles 列表中排在 dsh-better-sidebar 之后。
  • Node 引擎要求 >=20
  • 内置「终端」页签自动 SSH 到远程主机时仅支持密钥认证。
  • 插件会以当前 dsh 进程的权限运行,安装前应检查源码与许可证。

链接

  • GitHub:https://github.com/ZhangFengshun/dsh-remote-ssh
  • 目录页:本次已核实事实未包含目录页 URL,请以当前 DSH 插件目录入口为准。
羽毛球分组比赛记分
小程序二维码

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

小夜