DSH Plugins Marketplace

DSH Plugins

Plugins

/

Tools & Capabilities

/

dsh-ssh-logs

d

dsh-ssh-logs

Manifest valid

Read and search bounded log output from allowlisted SSH servers and log roots without exposing arbitrary remote commands.

hasBundlePatch

dsh-ssh-logs

English | 简体中文

A read-only SSH log tool for DeepSeek Harness. It uses the built-in @deepseek-ai/dsh-mcp-client bridge to expose three MCP tools to the model:

  • mcp__ssh_logs__list_log_servers
  • mcp__ssh_logs__read_log
  • mcp__ssh_logs__search_log

Servers are configured under fixed aliases. The model cannot select arbitrary hosts, execute arbitrary commands, or modify remote files. Every requested file must remain under an allowlisted log root.

Installation

git clone https://github.com/452926826/dsh-ssh-logs.git
cd dsh-ssh-logs
npm install
dsh plugin --profile web add "$PWD"

It can also be installed directly from GitHub:

dsh plugin --profile web add github:452926826/dsh-ssh-logs

Create ~/.dsh/ssh-logs.yml using config.example.yml as a reference. Use a dedicated read-only account on each server and authenticate with an SSH key or ssh-agent. Do not store passwords or private key contents in the YAML file.

Restart dsh web and refresh the page after configuring the plugin. The Bundle registers an MCP client so agent presets can discover the log tools.

Conversation examples

Read the last 300 lines of service/api.log from the app log root on production.

Search logs/backend.log under staging/app for request-id=abc123 and include 3 lines of context.

If a request names a physical directory instead of a root alias, the model should call list_log_servers first, map the directory to a configured root, and then call the read or search tool.

Configuration

defaults:
  maxBytes: 131072
  connectTimeoutSeconds: 10
  commandTimeoutMs: 120000

servers:
  production:
    description: Production application server
    host: prod-app.example.com
    user: log-reader
    port: 22
    identityFile: ~/.ssh/prod_log_reader
    knownHostsFile: ~/.ssh/known_hosts
    proxyJump: bastion.example.com
    roots:
      app: /srv/myapp/logs
      nginx: /var/log/nginx

Each server supports description, host, user, port, identityFile, knownHostsFile, proxyJump, roots, maxBytes, connectTimeoutSeconds, and commandTimeoutMs.

Security boundaries

  • SSH always uses BatchMode=yes, StrictHostKeyChecking=yes, and an explicit known_hosts path.
  • Servers and log roots must be configured in advance. Absolute paths, backslashes, and .. traversal are rejected.
  • The plugin only generates fixed head, tail, sed, and grep -F commands. Dynamic values are shell-quoted.
  • A request can read at most 5,000 lines or return 1,000 search matches. Output defaults to 128 KiB and has a hard 4 MiB limit.
  • Password prompts, sudo, arbitrary commands, SFTP writes, deletion, and file modification are not supported.

Enforce least privilege on the server as well: use a dedicated log-reader account, read-only ACLs, restricted source IPs, and authorized_keys restrictions when appropriate.

Comments

Loading…

Similar plugins

dsh-remote-sudo

by seudut

Ask for a sudo password in the DSH composer and run remote root commands over SSH without putting the password in the transcript.

Manifest valid

★ 0

MIT

JavaScript

Oct 25, 2026

dsh plugin --profile web add dsh-remote-sudo

Enhanced SSH ops: connectivity testing, remote ls, ssh-config import, known_hosts fingerprint checks and multi-host exec.

Tools & CapabilitiesTerminal & ClientsManifest valid

★ 0

dsh plugin --profile web add dsh-ssh-pro

by CrazyShout

SSH remote workspaces for DeepSeek Harness: browse/read/write remote files, run remote commands, with connection status dots.

Terminal & ClientsManifest valid

★ 14

↓ 75/wk

MIT

TypeScript

Oct 30, 2026

dsh plugin --profile web add dsh-ssh-remote

by weisiren000

SSH remote ops for DSH: pair servers over SSH or a one-time-code remote-hostd, then run commands, manage background jobs, and read or write remote files with reviewable changes (host_pair/host_bash/ho

Tools & CapabilitiesTerminal & ClientsManifest valid

★ 3

JavaScript

Aug 17, 2026

dsh plugin --profile web add dsh-remote-ssh-ops

SSH remote execution set: give a session an ssh:// workspace and every file, command, and shell operation runs on the remote host.

Tools & CapabilitiesTerminal & ClientsManifest valid

★ 0

dsh plugin --profile web add dsh-ssh-remote

DSH plugin: password SSH into a remote host — a natural-language tool (connect/exec/close/status) over a persistent ControlMaster session, plus a browser terminal panel (right-side floating) with a real PTY over WebSocket.

Tools & CapabilitiesTerminal & ClientsManifest valid

★ 0

dsh plugin --profile web add dsh-ssh-shell