DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins

dsh-workspace-enhancement

Workspace Enhancement

适用于 DeepSeek Harness 的统一 SSH 远程执行插件 — 基于 ssh2 的 ProxyJump 链、SFTP 文件系统、子进程和 PTY

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:DobyChao/dsh-workspace-enhancement#166388eea91c3ffa0c9fe4e31e5d84badae26cca
README兼容性版本

兼容性与来源证明

Workspace Enhancement 以 dsh-workspace-enhancement 发布,当前版本为 0.2.8。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/11/5

版本

0.2.8stable
2026/11/3
0.2.7stable
2026/10/27
0.2.6stable
2026/10/22
查看其余 12 个版本收起版本
0.2.5stable
2026/10/19
0.2.4stable
2026/10/13
0.2.3stable
2026/9/30
0.2.2stable
2026/9/26
0.2.1stable
2026/9/20
0.2.0stable
2026/9/17
0.1.4stable
2026/9/13
0.1.3stable
2026/9/9
0.1.2stable
2026/8/31
0.1.1stable
2026/8/28
0.1.0stable
2026/8/26
0.3.0-preprerelease
2026/8/25

相关插件

正在加载相关插件…

最新版
0.2.8
DSH
*
HMR
重启进程
Tree shaking
已声明 sideEffects: false
解包体积
未提供
文件数
未提供
Surface
web
许可证
MIT
发布源
github
GitHub
★ 2
周下载
484
最近提交
2026/11/5
查看源码 ↗项目主页 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

相关插件

继续浏览 developer-tools 分类下经过校验的插件。

MarketdshmarketDeepSeek Harness 内的可视化插件市场——浏览、搜索并一键安装社区插件。· DSH 可视化插件市场:浏览、搜索并一键安装社区插件。Opsdsh-ops适用于 Windows x64、Linux x64 和 macOS arm64/x64 的原生文件和 PTC 工具;仅限 Windows 的可选 Bash 负载和主机 PowerShell 集成Cc Safety Netcc-safety-net编码代理 CLI 钩子——阻止破坏性命令和访问机密文件Remotedsh-remoteDeepSeek Harness 的远程工作助手:连接 SSH(密码/密钥/代理/键盘交互、多跳 ProxyJump),从 ~/.ssh/config 列出主机,选择远程工作区,使用 21 个 rw_* 工具对其进行操作,支持感知冲突的镜像同步、内嵌 PTY t

README

dsh-workspace-enhancement

English | 中文

A DeepSeek Harness workspace-enhancement plugin — local and remote (SSH) workspaces managed in one place. A session can hold multiple workspaces (a main cwd plus a thin declaration list of side directories); machines, TOFU host keys and keychain passwords all live in your local ~/.dsh. Built on ssh2.

Features

FeatureDescription
Remote workspacesOne SSH chain (multi-hop) runs bash / files / PTY / directory browsing. Tools that already use ctx.subprocess / ctx.fs keep working remotely with no code changes
Multi-workspace sessionsThe「⊕ 工作区」button in the session header attaches extra directories (local or remote) as a declaration list — mount/unmount + label. The model is told about them and can operate them directly
Add-workspace flowConnection sidebar (saved machines, ~/.ssh/config aliases, local) + directory browser (breadcrumbs, native chooser, new folder); remote "Connect & open" creates the session on the server
Machine settings pageMachine CRUD / test / set-current / forget host key; OS-keychain passwords; TOFU host keys (accept-new default)
Session awarenessRemote marker + online tri-state + reconnect in the sidebar; the session prompt states the remote / extra-workspace context
Cross-server executionsw_exec(server, command) runs a command on a named registered machine (defaults to the session's machine). The target OS is probed once per connection (bash -c on POSIX, pwsh -Command on win32). Windows hosts inject a bash tool only for remote-Linux workspace sessions
Remote approval gateOptional per-machine gate (default off): every shell-shaped remote command and every remote terminal asks before it runs — human asks you each time, ai auto-grants a short read-only whitelist (pwd, ls, git status, …) and asks for the rest
Model toolssw_status, sw_connect (attach this session to machines you already registered), sw_exec
Runtime localizationUI copy, tool descriptions/errors, and routing errors follow the settings-page Language option (zh/en); the UI defaults to the browser language. Protocol-layer bad-request: diagnostics stay English

How it works

flowchart LR
    subgraph local["Your machine"]
        agent["agent loop<br/>orchestration · memory · LLM calls"] --> seam["this plugin<br/>ctx.subprocess · ctx.fs"]
    end
    subgraph remote["Remote host"]
        run["bash · files · PTY (terminal)"]
    end
    seam -- "one SSH connection (multi-hop jumps)" --> run

No DSH install on the remote: the model orchestrates locally, commands run remotely, results come back into context.

How routing, the approval gate, the remote sandbox fence, and session connections actually work: docs/architecture.md. Known security boundaries: SECURITY.md.

Install

# from npm (v0.1.0+)
dsh plugin --profile web add dsh-workspace-enhancement
# from source: npm run build first (host loads lib/)
dsh plugin --profile web add <this-repo-path>

First install with DSH's supply-chain pnpm: native build scripts are blocked by default — allow them once per profile in pnpm-workspace.yaml (unstrict allowBuilds): ssh2, cpu-features, koffi, node-pty, dsh-subprocess-local — then run dsh plugin --profile web install. Without it the first add exits non-zero (ERR_PNPM_IGNORED_BUILDS) and the bundle is not appended.

Compatibility

Which plugin version to install depends on the DSH host family you run — check it with dsh --version (and the family under your DSH install, e.g. <npm root -g>/@deepseek-ai/):

Your DSH hostInstallNotes
0.2.1 line (0.2.1-rc.1, 0.2.1-rc.2, …)0.2.8Official as of 2026-10-19. The union pin adds ^0.2.1-rc.1, whose caret covers later prereleases of the same 0.2.1 tuple (0.2.1-rc.2 included, 0.2.1-alpha.* not). Lab boot and gates passed on host 0.2.1-rc.2; PR #76 classifies watchLinuxScopeStart as internal. npm/pnpm do not set includePrerelease, so 0.2.4 does not satisfy a 0.2.1 seam install — use 0.2.8 (peer unchanged from 0.2.7)
0.2.0 line (0.2.0-rc.1, …)0.2.3 or newer (0.2.8 current)Runtime-compatible as of 2026-09-29 — the union peer pin boots on a real 0.2.0-rc.1 host and mounts the channel (boot sentinel SMOKE PASS). The 0.2.0 host ENFORCES plugin peerDependencies at boot (an incompatible pin silently skips the whole bundle) — on 0.2.0 hosts install 0.2.3+, not 0.2.2. 0.2.8 keeps this line as ^0.2.0-rc.1
0.1.7 line (0.1.7-rc.2, …)next release after 0.2.2The family the peer pin targets as of 2026-09-28 (^0.1.7-rc.2, UPSTREAM-9 — the host package's latest tag moved to it). Seam- and runtime-aligned: watch + terminalEnvironment on the mixed facades (UPSTREAM-5), localized-marker renders and background-job owners/outputs fixed for the rewritten settings and jobs contracts (UPSTREAM-8), verified by the drift sentinel plus 0.1.7-family typecheck/suite/boot locally
0.1.5 line (0.1.5-rc.1, 0.1.5-rc.2, …)0.2.2 (the last release pinned to it)Still works at runtime — the dual-family paths are kept (the boot sentinel on a 0.1.5 host stays green) — but releases after 0.2.2 require the 0.1.7 family, so stay on 0.2.2 until the host moves. The browser channel rides the official shared /api transport (/api/dsw/<endpoint>)

Host and plugin must move together. The 0.1.4 line speaks /api/dsw/* while 0.1.3 and earlier speak /dsw/*, and 0.1.3 has no readByteRange. Mixing them leaves the connection / directory UI without a data channel (the host still boots, the UI silently cannot load machines or browse). Upgrading DSH means upgrading this plugin in the same step; the full window and the upstream drift log are in docs/compatibility.md.

Roadmap

Public progress: docs/ROADMAP.md. The single backlog is docs/backlog.md.

Development

Start with AGENTS.md (rules, commands, red lines). The document map — what lives where, and what must not be copied — is docs/README.md.

One gate for everything: npm run check (static constraints + typecheck + unit tests + build + pack smoke) — the same command CI runs.

References

  • dsh-ssh: remote execution engine — ctx.subprocess / ctx.fs providers, jump chains, PTY, directory-picker seam, session.route placeholder.
  • dsh-remote: workspace helper — machines registry, TOFU, OS keychain, web UI and settings page.

License

MIT

0.1.2-rc.1 family (0.1.2, 0.1.3 releases)0.1.3 — the last release of that lineNo longer supported (retired 2026-09-11). That line moved the Connection seam — connection.rpc.handle can no longer register a channel — so no fix is backported to it
any other / older line—Never supported