Install verification: sandbox install ok, web smoke failed (L5) · tested on dsh 0.2.1-rc.2 · last checked Install verification details →
What it does
Triggers inside your DSH agent: wake a fresh DeepSeek Harness session when files, mail, webhooks, or git events happen. Native Cordis bundle, heartbeat-proved install.
Installation
dsh plugin --profile web add github:lychee888/galvanize-dsh#v0.1.6Install method: GitHub · sandbox install ok, web smoke failed (L5)
Verification & Compatibility
Grouped by plugin version: each card lists the dsh versions actually tested against that artifact version and their install verdicts (L5 wins). Untested combinations are omitted — absence means untested, never assumed compatible. L1–L3 are a plugin-level static archive (independent of the dsh version — the same verdict on every dsh row): they sit in each row's level grid next to L4/L5, marked "static", while their evidence is stored once per plugin inside that row's "checks & evidence" instead of being duplicated per version.
External credentials (plugin-level): none detected
○ The author declares no dsh version requirement — install is not blocked by version.
| plugin \ dsh | dsh 0.2.1-rc.2 current |
|---|---|
| v0.1.6 | ✗ |
v0.1.6github1 failed2026-10-21
https://github.com/lychee888/galvanize-dsh
✗dsh 0.2.1-rc.2current2026-10-21L5 · failed
- • Node.js: v24.14.0
- • DSH: 0.2.1-rc.2
- • Plugin artifact: github · https://github.com/lychee888/galvanize-dsh#v0.1.6
ID: galvanize-dsh-2@v0.1.6@dsh0.2.1-rc.2 · profile: l3-fullscan
Issued: 2026-10-21 · expires: 2026-10-28
View checks & evidence
L1–L3 are plugin-level static conclusions (baseline, identical across dsh versions): evidence is stored once per plugin.
Only the latest 3 published versions are shown; source-snapshot (commit hash) groups, unstated groups and older versions are omitted — the full archive stays in the data layer (snapshot/unstated groups appear only when a plugin has no published version).
Author badges
Embed the official badges in your README to showcase security & install-test status:
`[](https://www.dsh.so/artifact/galvanize-dsh-2/)`Security Report
Two automated layers, neither a manual review: a static scan (per-plugin rule checks) and a model-driven dynamic security audit that covers only the subset static-flagged at warn or above and never executes plugin code.
Static low, dynamic medium — stricter wins → overall medium.
v0.1.6dsh manifestv0.1.6git2026-10-21v0.1.6same versionclean · gitVet is an AST static scan (npm artifact or git source).
show static findings (5)
- warningchildProcess · code-exec
src/cli.ts:88const r = spawnSync('npm', ['pack', '--pack-destination', outDir, src], { - warningchildProcess · code-exec
src/cli.ts:123const probe = spawnSync('dsh', ['--version'], { shell: process.platform === 'win32', timeout: 15_000, encoding: 'utf8' }) - warningchildProcess · code-exec
src/cli.ts:148const r = spawnSync(dsh.cmd, [...dsh.args, ...argv], { - warningnetIp · network
src/core-client.ts:78const res = await fetch(`http://127.0.0.1:${port}/version`, { signal: AbortSignal.timeout(timeoutMs) }) - warningnetIp · network
src/core-client.ts:121const res = await fetch(`http://127.0.0.1:${info.port}/manage/${encodeURIComponent(op)}`, {
show 1 audit findings
- mediumtrigger_add forwards a model-supplied wake command template that the core executes as a shell command
src/index.ts:147The 'dsh' wake mode is described as the safe default, yet any args.command supplied in the same tool call silently replaces the preset and is sent as body.command with wake='shell' (line 147; also line 151 for wake='shell'). Per the file's own comments the core spawns that template with a shell, so a model influenced by untrusted content (a watched file, a webhook payload, a chat message) can install a trigger whose every fire runs an arbitrary command on the host with the core daemon's privileges, persisting beyond the session and without another model turn. The plugin performs no validation,
Thin DSH trigger-tool client; no exfil or obfuscation, but trigger_add forwards a model-supplied shell wake command to the core daemon, giving persistent host command execution.
Rule: the dynamic audit can only raise risk, never lower it (raise-only, never an exemption); a wrong raise is withdrawn by human review and the tier falls back to the static verdict. Overall verdict = the stricter of the two layers.
Disclaimer: the static scan and the dynamic security audit are both automated analysis, not a security guarantee. Always review what you install.
Activity
Last commit 2026-09-30 · activity: Active
• Repo created: 2026-08-28
• Stars: ★ 0 · Forks: 0
• Health: Active — committed within last 30 days
Source
Author README
View on GitHub ↗The author's original README from the repository — fetched live, unedited (the English page loads the default README).
