Back to home@tiphareth0

dsh-sshworkspaces

Workspace-level SSH remote development plugin for DeepSeek Harness: transparent seam-routed fs, git & terminal across multiple hosts and workspaces, with a built-in 4-column IDE and SSH ops toolkit. 提供工作区级 SSH 远程开发的Deepseek Harness插件:文件/Git/终端按工作区透明路由,支持多服务器多工作区并行开发,内置四列 IDE 与 SSH 运维工具。

Stars
3
Language
TypeScript
Created
Aug 28, 2026
Updated
Aug 31, 2026
GitHub repo

Introduction

dsh-sshworkspaces — DSH 远程 SSH 开发工作台

dsh-plugin node license

中文 | English

为 DeepSeek Harness(DSH)提供一套远程 SSH 开发功能工作区绑定 与dsh-easyssh的全局远程操作不同,本插件中, 具体工作所在机器(本机 or ssh远端)与工作区绑定,你可以在本机上同时管理及进行多台服务器上的开发工作。 具体而言,新建工作区时,可以选择本地工作区或者ssh工作区,ssh工作区上新建的会话,文件操作、Git、命令执行全程在远程,本机工作区不受影响。 四列 IDE(聊天 / 编辑器 / 文件与 Git / 终端),本地与 SSH 工作区通用。

功能

SSH 运维(dsh-hardssh 内建,侧边栏「SSH」入口)

  • 主机管理:增删改查、从 ~/.ssh/config 一键导入、连接测试(密钥 / 密码 / passphrase / 跳板机)
  • Web 终端(xterm + WebSocket PTY)、文件上传 / 下载、本地端口转发隧道、集群并发执行
  • Agent 工具:ssh_list / ssh_exec / ssh_upload / ssh_download / ssh_tunnel / ssh_cluster

SSH 工作区 + 四列 IDE

  • 会话级路由:SSH 工作区会话的 fs / git / terminal 全部透明地在远程执行,无本地回退
  • 四列 IDE:CodeMirror 编辑器(语法高亮 + Markdown / PDF / Excel / 图表预览)、文件树 + Git 侧栏、xterm 终端,各列可折叠为右侧 rail 窄条
  • Agent 工具:remote_status / remote_ls / remote_read / remote_write / remote_mkdir / remote_rm / remote_rename / remote_glob / remote_grep

成品功能示意图

成品功能示意图

安装

前置:Node.js ≥ 22、pnpm、已安装 DSH(npx @deepseek-ai/dsh,≥ 0.1.1-rc.2)。

# 1) 克隆并构建(prepare 钩子自动构建所有包)
git clone https://github.com/tiphareth0/dsh-sshworkspaces.git
cd dsh-sshworkspaces
pnpm install

# 2) 把两个包装进你的 web profile(换成你的绝对路径)
npx @deepseek-ai/dsh plugin --profile web add file:/绝对路径/dsh-sshworkspaces/packages/dsh-hardssh
npx @deepseek-ai/dsh plugin --profile web add file:/绝对路径/dsh-sshworkspaces/packages/dsh-workbench-tiphareth

# 3) 重启 dsh
npx @deepseek-ai/dsh web

若安装报 Ignored build scripts: ssh2, cpu-features:把 <profile>/pnpm-workspace.yaml 里的 allowBuilds 占位改为 true 后重新执行 dsh plugin add(dsh 会写入占位)。

使用

  1. SSH 运维:侧边栏「SSH」→ 主机管理面板(增删改查 / 测试连接 / Web 终端 / 传输 / 隧道 / 集群)。
  2. 创建 SSH 工作区:侧边栏「添加工作区」→「SSH 工作区…」→ 选择或添加服务器 → 浏览选择远程目录 → 命名。创建后标题旁出现 ☁ 云图标。
  3. 在该工作区下新建会话:会话中的文件编辑、Git 面板、终端全部在远程执行;本地工作区的会话照常使用本机。
  4. Agent 协作:会话开始时 Agent 自动判断 {{cwd}} —— 若为 SSH 工作区,优先使用 remote_* / ssh_exec 操作远程(不用本机格式的 pwsh/glob/grep)。

安全

  • SSH 主机配置存 ~/.dsh/dsh-ssh.json(0600);工作区账本存 ~/.dsh/dsh-hardssh-workspaces.json
  • 远程操作消耗真实远程资源,请先确认再执行;远程 grep/glob 有限深与条数上限。

平台

当前插件在 Windows 平台可稳定使用; Linux/macOS 平台可能存在部分bug,欢迎各位提交issue帮助开发。

License

BSD-3-Clause。远程 fs/subprocess 实现开发自 UynajGI/dsh-ssh(MIT);workbench 开发自 dsh-workbench(MIT),但都做了大量修改,具体见 NOTICE。