dshbase

插件目录 / Developer / dsh-secure-remote

dsh-secure-remote

未验证 startGalway

✓ 持续维护 基于 2 个官方 DSH 包

查看 GitHub ↗ ← 返回插件目录

1Stars
0Forks
0未关闭 issue
语言
2026-08-19最近推送
跨平台平台

功能简介

Secure, stable SSH remote workspaces for DeepSeek Harness

我们的评价
未验证 — 尚未实测

Secure, stable SSH remote workspaces for DeepSeek Harness 尚未验证——请自行安装测试。

「未验证」表示我们的自动化 CI 尚未安装过该插件。功能描述与版本兼容性均为作者声明。这不是安全审计,也不代表对第三方代码的背书。

你是插件作者? 想拿到「已验证」标签——提交你自己的验证证据(截图、日志或短视频),我们审核通过后即改为「已验证」。

提交验证证据 ↗

README

dsh-secure-remote

CI
Latest release
License
Platforms
SSH

独立的 DeepSeek Harness SSH 安全与稳定性插件。它通过 bundle patch 替换内置 ssh provider,不修改 DeepSeek Harness 上游源码,也不迁移现有 ssh_workspace v1 数据。

English README

1.1.0 能力

  • macOS / Linux 使用短路径私有目录运行 OpenSSH ControlMaster,修复 macOS ControlPath too long 导致的 PTY 启动失败。
  • Windows 本地端使用系统 ssh.exe,明确关闭 ControlMaster;状态探测和应用层重连仍可用。
  • Key 模式自动发现 SSH Config 主机和默认密钥;支持选择单个密钥文件或文件夹。
  • Password 模式只显示 Host / Port / User / Password;密码通过 DSH credentials 服务保存,不进入 SSH 参数、日志或状态接口。
  • Workspace 行显示 connectedconnectingdegradeddisconnected 状态点、延迟和脱敏原因。
  • 远程文件工具严格限制在 Workspace 根目录,拒绝 ..、前缀碰撞和符号链接逃逸。
  • 远端必须是 POSIX 系统;检测到 Windows 等非 POSIX 目标时返回 REMOTE_OS_UNSUPPORTED
  • 保留已有 SshProfileRemoteWorkspaceView、Workspace RPC、Session、Bash 和 Terminal 兼容性。

安全边界

文件工具受到 Workspace 根目录保护;远程 Bash 保持原有行为,拥有远程 SSH 账号本身的完整权限,不宣称受到文件边界隔离。默认保持 StrictHostKeyChecking=yes,不会自动降级到 no/off

支持矩阵

本地端 SSH 客户端 ControlMaster 状态/重连 远端目标
macOS 系统 OpenSSH 启用 支持 POSIX
Linux 系统 OpenSSH 启用 支持 POSIX
Windows ssh.exe 禁用 支持 POSIX

要求 Node.js 22+,以及兼容的 DeepSeek Harness Web profile。Windows 本地端已实现代码分支,但真实 Windows SSH fixture 需要在 Windows CI 或 Windows 机器上执行。

安装

发布到 GitHub 后,安装指定版本:

dsh plugin --profile web add github:startGalway/dsh-secure-remote#v1.1.0

本地开发安装:

dsh plugin --profile web add file:/absolute/path/to/dsh-secure-remote

安装后重启 Web profile。卸载插件不会迁移或删除已有远程 Workspace:

dsh plugin --profile web remove dsh-secure-remote

配置默认值

workspaceBoundary: deny
connectionReuse: true
controlPersistMs: 300000
serverAliveIntervalSec: 15
serverAliveCountMax: 3
statusProbeIntervalMs: 30000
maxTransferBytes: 8388608

本地开发

npm run check
npm test
npm run pack:check

目录结构:

dsh-secure-remote/
├── index.js                 # Host provider、状态、重连和 bundle patch 接入
├── ssh-launcher.js          # ControlPath、平台能力、密钥和 SSH Config 发现
├── secure-rpc.js            # 同源受信 RPC:discovery / resolve / pick / status / probe
├── path-guard.js            # 远程 Workspace 边界校验
├── client.js                # Web UI 源文件
├── ui/                      # 独立 Web companion package
├── test/                    # 路径、SSH launcher 和发现逻辑测试
└── cordis.patch.yml         # 禁用内置 ssh,挂载 secure provider 与 UI

已知限制

  • Bash 不受 Workspace 文件边界限制。
  • 远程 Windows 本轮不支持。
  • 当前版本不包含双向目录镜像、原子文件传输、后台任务和远程 Git 工作流。
  • Unix 侧保留一个 0700、短路径的兼容启动器,因为当前 DSH SSH runtime 只暴露单一 sshPath 接口;Windows 直接调用系统 ssh.exe

许可证

MIT,见 LICENSE。安全问题请阅读 SECURITY.md,贡献规范见 CONTRIBUTING.md

安装

🧩 让 Agent 自动装(推荐)

装一次目录插件,之后本站所有插件都能让 DeepSeek Harness 自动找、自动装:

dsh plugin add dshbase-catalog

然后对 agent 说「帮我装 dsh-secure-remote」,它会在目录里找到并自动安装。文档:dshbase-catalog · 已验证场景包

该插件是 GitHub 源码(未发 npm)——直接从仓库装:

Web profile:

dsh plugin --profile web add github:startGalway/dsh-secure-remote

Headless(CLI)profile:

dsh plugin --profile headless add github:startGalway/dsh-secure-remote

实测报告

尚未 L3 验证——若已跑过,见下方失败备注。

状态:pending · 最近测试 2026-08-26
备注:验证: install-fail 浏览全部待验证失败 →
安全:尚未扫描——我们的每日静态扫描将很快覆盖它。

分享徽章

Developer 里更多

浏览全部 7795 个插件 →