dsh-ssh-workspace-manager: SSH 远程管理与部署插件

前言

在 DeepSeek Harness (DSH) 中,让 Agent 完成“部署到服务器”通常涉及猜路径或沙箱无法执行的外部命令。事实(主机、路径、运行时)属于设置,而非提示词。这个插件将这些事实集中管理,提供设置页面和 Agent 工具。

是什么

dsh-ssh-workspace-manager 是一个 DSH 插件,用于管理 SSH 主机、工作区绑定,以及远程执行、同步和 compose 管理。由 telagod 维护。它将 SSH 远程功能引入设置页面,供人类配置,并供 Agent 使用工具。

核心功能

该插件提供了一套完整的 SSH 管理能力,分为设置界面与 Agent 工具两类:

  1. 设置页面

    • SSH 远程:在 Settings 中提供 SSH 远程页面。
    • 主机管理:添加、测试连接、检查系统信息(OS、内核、容器运行时)。
    • 绑定管理:记录工作区部署目标,支持解绑操作。
  2. Agent 工具

    • ssh_status:列出主机、绑定以及当前工作区的绑定信息。
    • ssh_bind:记录当前工作区的部署目标(主机、远程路径、角色、运行时、Compose 文件等)。
    • ssh_unbind:通过 ID 移除绑定。
    • ssh_exec:在绑定的远程目录中运行命令。
    • ssh_sync:将本地工作区推送到远程目录。
    • ssh_compose:管理远程目录中的容器(支持 ps、logs、up、down)。
    • ssh_inspect:探测操作系统、内核、容器运行时。

安装与启用

安装该插件需满足 Node.js 版本 >= 22。

dsh plugin --profile web add github:telagod/dsh-ssh-workspace-manager

安装后需重启 Web 配置文件。

重要:不要手动插入插件。dsh plugin 拥有 dsh.profile.bundles,手动插入会导致“重复 loader entry id”错误。

典型用法

  1. 配置阶段:人类在设置 → SSH 远程中添加主机,测试连接,调整默认值。
  2. 绑定阶段:Agent 使用工具 ssh_bind 将当前工作区绑定到服务器。
  3. 部署阶段:Agent 使用 ssh_sync 将本地工作区推送到远程目录。

注意事项

  1. 作用域:绑定是工作区范围的,结构为 (workspace → host → remote directory)。
  2. 数值限制:保存时超出范围的数值(如 timeout)会被限制。
  3. 依赖:需要 Node.js 版本 >= 22。

结尾

该插件通过将 SSH 管理标准化,解决了 Agent 在远程部署时的上下文缺失问题。更多信息请参考 插件目录 或 GitHub 仓库。

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

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

小夜