DSH Plugins Marketplace

DSH Plugins

Plugins

/

Tools & Capabilities

/

dsh-image-zoom

b

dsh-image-zoom

Manifest valid★ 1

In-chat image viewer for DeepSeek Harness: zoom, pan, gallery, auto-named downloads, open in default app. | 聊天图片查看器:缩放、平移、图集、自动命名下载、系统默认应用打开。

UI (client)hasBundlePatch

dsh-image-zoom — image viewer for DeepSeek Harness

dsh-image-zoom

A real image viewer for DeepSeek Harness. Click any content image in chat — a Markdown image, a tool screenshot, a workspace artifact — and get wheel/pinch zoom, two-finger and drag panning, gallery browsing, and downloads that arrive with a sensible filename.

release DSH license issues X

English | 中文

Opening a diagram in the viewer

Why this plugin

The built-in image preview is a step up from a raw <img>, but it is not a viewer: you cannot really zoom, pan on both axes, or keep a good filename when you save. dsh-image-zoom takes over content-image clicks and draws its own dialog:

You want to…How it works
Zoom with a mouseWheel zooms at the pointer. A normal notch (Windows 100 / Chrome 120) zooms immediately; a smooth-scroll or precise mouse with tiny deltas is confirmed as an isolated event after 75 ms and zooms too.
Zoom with a trackpadPinch (ctrl+wheel) zooms continuously.
Pan left/right and up/downA two-finger scroll stream pans both axes; drag also pans; Shift+wheel pans sideways.
Read something smallFit / 1:1 / double-click, +/-, typed percentage, 5%–4000%, rotate 90°.
Flip through screenshots←/→ or the side chevrons; 3 / 7 in the footer.
Keep the fileDownload with a generated name, copy the image, copy an external image link, or open a workspace original in the system default app.

Detail at 260% Download with a generated filename Gallery browsing

Install

GitHub release tarball (current)

dsh plugin --profile <your-profile> add https://github.com/bingomu/dsh-image-zoom/releases/latest/download/dsh-image-zoom-1.0.1.tgz

Plugin market

It is listed in the DSH plugin market (registry entry awesome-dsh-plugin) and installs with:

dsh plugin --profile <your-profile> add https://github.com/bingomu/dsh-image-zoom/releases/latest/download/dsh-image-zoom-1.0.1.tgz

From a checkout (development)

dsh plugin --profile <your-profile> add /path/to/dsh-image-zoom

Then restart DSH (or reload the page when only client.js changed). The plugin is client-only: it declares dsh.bundle.patch and a dsh.client web entry, and writes nothing to your sessions or files.

Requirements

ItemValue
DSH>=0.2.1-rc.2 <0.3.0-0 (declared in engines.dsh); developed and tested on DSH Desktop 0.2.1-rc.5
RuntimeWeb client / DSH Desktop. Node is only needed for tests.
PlatformmacOS tested on the desktop app; Windows uses the same web client (the wheel notch path is covered by tests via synthetic 100/120 deltas).

Gestures and shortcuts

InputAction
Mouse wheel (one notch)Zoom at the pointer
Pinch / Ctrl+wheel / ⌘+wheel / Alt+wheelZoom
Two-finger scroll streamPan both axes
Shift+wheelPan sideways
DragPan
+ / -Zoom 25%
0 / 1Fit / actual size
Double-clickFit ↔ 1:1
← / →Previous / next image
Shift+arrow keysPan 72 px
R / Shift+RRotate 90° clockwise / counter-clockwise
EscClose (first exits the zoom input)

The footer has three explicit wheel modes — Auto / Zoom / Pan — stored in localStorage. Auto is explained above; choose Zoom if your mouse's smooth-scroll driver breaks the auto heuristic, or Pan if you want scroll to always move the picture.

Download naming

Every download is saved as:

<description>-<YYYYMMDD-HHmmss>.<ext>
  • description = the image alt text, else a meaningful source filename, else the localized “image”.
  • The local timestamp keeps names unique and sortable; the extension follows the detected format, so blob-backed screenshots never land as .bin.
  • Characters Windows forbids are replaced, reserved device names get a trailing _, and long descriptions are capped at 48 characters.

The download button's tooltip previews the exact name; the macOS save dialog opens with it already filled in.

Header actions

ButtonWhat it does
↓ DownloadSave the original with the name above
⧉ Copy imageCopy to the clipboard as PNG/JPEG
🔗 Copy linkOnly for off-origin http(s) images: copy the absolute URL
↗ Open originalWorkspace images (served via /api/file?path=…) open in the system default app through the Host's openWorkspacePath; external images open in a new window; blob:/data: attachments explain that they have no local path
✕ CloseSame as Esc

Feedback and support

  • Bugs and feature requests: GitHub Issues — the primary channel; please use the templates and include DSH version, OS, and reproduction steps.
  • X / Twitter: @robinham — short questions and release notes.
  • Questions and usage help: GitHub Discussions when enabled; otherwise open an issue.
  • Security reports: do not open a public issue. See SECURITY.md.
  • Response expectation: this is a personally maintained project; issues are answered on a best-effort basis, usually within a week.

See SUPPORT.md for the full support policy and docs/identity-and-release.md for the versioning and release policy.

Versioning

  • Semantic Versioning: patch for fixes, minor for backward-compatible features, major for breaking changes.
  • Every release updates CHANGELOG.md and states its DSH compatibility in engines.dsh.
  • A DSH release that drops compatibility is treated as a breaking change for this plugin.

Development

npm run check          # node --check
./tests/chrome.sh      # headless Chrome with CDP on 127.0.0.1:9333
node tests/run-e2e.mjs # 88 assertions, real input events and real downloads
./tests/chrome.sh stop

The plugin is a single client entry (client.js) with no build step. Tests drive a minimal DSH-like harness over HTTP with wheel, pointer, keyboard, double-click and download behavior. See tests/README.md for the isolation rules.

License

MIT — see LICENSE. Copyright © 2026 Genzo (bingomu).


Maintained by Genzo (@bingomu · @robinham). Not affiliated with DeepSeek. “DeepSeek Harness” is an open-source project by DeepSeek; this is a third-party plugin.

Comments

Loading…

From the same category

reactive-resume

DeepSeek Harness plugin for Reactive Resume: bridges your resumes and job applications into a Harness session over MCP.

Tools & CapabilitiesManifest valid

★ 41.7k

↓ 146/wk

MIT

Aug 24, 2026

dsh plugin --profile web add dsh-plugin-reactive-resume

by dsh-market

The plugin market inside DeepSeek Harness — browse, search, one-click install · DSH 可视化插件市场

Tools & CapabilitiesManifest valid

★ 10.3k

↓ 136.6k/wk

MIT

TypeScript

Nov 2, 2026

dsh plugin --profile web add dshmarket

by Tencent

Let AI agents use your real, logged-in browser without interrupting your work. CLI + extension for browser automation across any shell-capable AI agent.

Tools & CapabilitiesManifest valid

★ 9.9k

↓ 7.4k/wk

MIT

TypeScript

Nov 2, 2026

dsh plugin --profile terminal add @wxg-prc-cpg/browser-skill-dsh-plugin

by superdesigndev

OpenRouter for agent tools. Join community here: https://discord.gg/6mQYYfFMAn

Tools & CapabilitiesManifest valid

★ 7.1k

NOASSERTION

Python

Nov 3, 2026

dsh plugin --profile web add treg-dsh

by yjh051108

dsh-routing-suite — injector + router-standard kit: install the runtime injector first, then the task-aware reasoning-mode router preset (measured P1-P23).

Tools & CapabilitiesManifest valid

★ 7k

MIT

JavaScript

Sep 18, 2026

dsh plugin --profile web add @dsh-external/dsh-super-injector

by Q00

Agent OS: the agent gets smarter on its own. We just hold the line: Interview-gated, staged evaluation, budgeted evolution loop. MCP server, 14 runtimes: Claude Code, Codex CLI, Gemini CLI, OpenCode,

Tools & CapabilitiesManifest valid

★ 6.3k

MIT

Python

Nov 1, 2026

Index only — not installable