dsh-plugin-terminal avatar

dsh-plugin-terminal

Bottom terminal panel plugin for DeepSeek Harness (DSH Web GUI)

PluginTerminalTerminal / ShellWeb search
Verification
L2 · Structured
Security
High
Health
Active
Trust
Silver

What it does

Bottom terminal panel plugin for DeepSeek Harness (DSH Web GUI)

Installation

dsh plugin --profile web add dsh-plugin-terminal-2

Install method: npm · not yet tested in container (L3+)

Compatibility

DSH VersionStatus
not statedDeclared — not tested

Requirements

  • • Node.js: not stated
  • • DSH: declared "not stated"
  • • External credentials: none detected

Security Report

Automated static scan, not manual review.

DSH.SOHIGH-RISKSCAN4 FILES
43300e
Automated review · daily
HIGH-RISK

Critical findings in non-blocking categories (dynamic code execution, shell execution, install scripts, obfuscation). Common in CLI/terminal plugins but worth reviewing.

2 critical·0 warning·7 info·4 files scanned
code-exec ×1shell ×1
scanned commit43300ec899662026-08-17
latest commit43300ec89966

The scan result is only valid for the scanned commit. If the latest commit differs, the badge shows outdated until the daily pipeline rescans.

Disclaimer: automated static analysis, not a security guarantee. Always review what you install.

Risk: High2 critical · 0 warning · 7 info

• Static heuristic scan: done (4 files)

• Dependency vulnerabilities: requires deep audit (L3+)

• Permission sandboxing: requires runtime testing (L4+)

Scan findings · 9

  • criticalChild process module usage (Node.js)lib/index.js:13
    import { execSync } from 'node:child_process'
  • criticalShell command execution (exec / execSync)lib/index.js:99
    execSync(`where ${candidate}`, { shell: 'cmd.exe', stdio: 'ignore' })
  • infoReads process.envlib/index.js:31
    export function buildSessionEnv(base = process.env) {
  • infoReads process.envlib/index.js:96
    if (process.platform !== 'win32') return process.env.SHELL || '/bin/bash'
  • infoReads process.envlib/index.js:130
    const DATA_DIR = process.env.DSH_PLUGIN_TERMINAL_DATA ?? pathJoin(process.env.DSH_HOME ?? pathJoin(homedir(), '.dsh'), 'plugin-data', 'termi
  • infoUses localStoragesrc/client-main.js:303
    const saved = Number(localStorage.getItem(HEIGHT_KEY));
  • infoUses localStoragesrc/client-main.js:496
    localStorage.setItem(HEIGHT_KEY, String(heightRef.current));
  • infoMakes network requests (fetch / axios)src/client-main.js:74
    const res = await fetch(PREFIX + path, opts);
  • infoMakes network requests (fetch / axios)src/client-main.js:197
    const ws = new WebSocket(proto + "//" + location.host + PREFIX + "/ws/" + tab.id);

Heuristic static scan — may produce false positives. Review the source yourself before trusting.

Activity

Last commit 2026-08-17 · activity: Active

• Repo created: 2026-08-17

• Stars: ★ 4 · Forks: 0

• Health: Active — committed within last 30 days

Source

GitHub: github.com/siberiah2o/dsh-plugin-terminal

Was this page helpful?