dsh-remote-ide
Remote IDE for DeepSeek Harness (DSH): connect via SSH and the IDE becomes remote — file explorer browses the server, the editor reads/writes over SFTP, the terminal is a live SSH PTY. Dual-face plugin (Node engine + web GUI), hot-pluggable via dsh plugin add.
安装
$
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:harryopo/dsh-remote-ide说明文档
阅读完整 README ↗dsh-remote-ide
DeepSeek Harness (DSH) 的 SSH 远程 IDE 插件 —— SSH 连接服务器后,整个 IDE 进入远程模式:资源管理器浏览的是服务器的文件目录,编辑器通过 SFTP 读写远程文件,终端就是 SSH 终端。服务器上无需安装任何 Agent,无需任何远程配置,只要有 SSH 即可。
English: README.md
为什么需要它
DSH 是强大的编码 Agent,但它的 Web GUI 只能操作本地文件。当代码、数据或生产环境在远程服务器上时,你只能另开 SSH 窗口,或依赖各种同步工具。dsh-remote-ide 把整个 IDE 搬进 DSH:
┌─────────────────────────── dsh web GUI ───────────────────────────┐
│ 侧边栏: [远程 IDE] → 中央面板 │
│ ┌──────────┬──────────────────────────────────────────────────┐ │
│ │ 远程文件 │ 编辑器标签栏 + CodeMirror 6(保存 = SFTP 写回) │ │
│ │ 树 │ │ │
│ │ (SFTP) ├──────────────────────────────────────────────────┤ │
│ │ │ xterm.js 终端(WebSocket → SSH PTY) │ │
│ └──────────┴──────────────────────────────────────────────────┘ │
└───────────────────────────────────────────────────────────────────┘
│ ↑
└── dsh 宿主进程 ──────────┘ ssh2 连接池
功能特性
- SSH 主机管理 —— 密码 / 私钥认证(支持 passphrase)、ProxyJump 跳板机、从
~/.ssh/config一键导入、连接测试。凭据存于~/.dsh/dsh-remote-ide.json(0600),密钥永不发送到浏览器。 - 远程文件资源管理器 —— 基于 SFTP 的懒加载目录树(子树缓存),支持刷新、内联重命名/删除、新建文件/文件夹。
- 远程编辑器 —— CodeMirror 6,支持 TS/JS/Python/JSON/HTML/CSS/SQL/XML/Markdown;打开文件经 SFTP 读取,Ctrl/Cmd+S 直接保存回服务器;二进制嗅探 + 2MB 读取上限保证安全。
- 远程终端 —— xterm.js + WebSocket 隧道 SSH PTY,支持自适应尺寸、防丢输入缓冲、背压处理。
- Agent 工具(路线图) —— 远程 read/write/exec 工具,让 DSH Agent 本身能操作已连接的服务器。
- better-sidebar 集成 —— 安装了 dsh-better-sidebar 时,自动在其工作台注册「远程 IDE」标签页(加法式;不装也能用独立面板)。