dsh-ssh-plugin
SSH tool plugin for DeepSeek Harness: persisted SSH connections, workspace-bound defaults, and the ssh_exec model tool
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:YOLO-LZL/dsh-ssh-plugin说明文档
阅读完整 README ↗dsh-ssh-plugin
A DeepSeek Harness plugin that adds the ssh_exec model tool — run commands on a remote Linux server over the system ssh client — plus persisted SSH connections: save connections once, bind them to a workspace, and let ssh_exec use them by default.
- Key-based auth only (
BatchMode=yes) — no password/passphrase prompts, so a missing or unauthorized key fails fast instead of hanging. - No remote-shell quoting layer — the remote command travels through ssh stdin to
bash -s. - Session sandbox aware — runs the client under the calling session's standing policy;
danger-full-accessruns it unconfined. - Recognizes your local
~/.ssh/config— hosts defined there need no manualssh_connections save; pass the alias asssh_exechostand ssh resolves it, andssh_connections listshows them read-only. - Dual-face package — the host half registers the
ssh-connectionssettings namespace and thessh_connectionstool; the browser half registers the "SSH Connections" card in Settings → Plugins. - All harness services except
tools/shellare optional — profiles withoutsettingsorworkspaceRegistrydegrade gracefully (see below).
Install
dsh plugin --profile add dsh-ssh-plugin # from npm
dsh plugin --profile add github:you/dsh-ssh-plugin # from git
dsh plugin --profile add ./dsh-ssh-plugin # from a local checkout
A local checkout must be built first: pnpm install && pnpm bundle (git installs build automatically through prepare).
Then boot with dsh --profile .
The plugin declares the harness packages as peer dependencies; @deepseek-ai/dsh-base (the first bundle of every profile) provides them.
Usage
ssh_exec
The model gains an ssh_exec tool. Ask in natural language (e.g. "ssh to root@10.0.0.5 and show disk usage"), or pass explicit arguments:
| Arg | Required | Notes |
|---|