dsh-image-download
Manifest validHover-to-download buttons for images in DeepSeek Harness conversations.
DSH Image Download Plugin
Adds a download button when the pointer is over an image in a DeepSeek Harness conversation.
Install
Install the plugin through the DeepSeek Harness client or 1024 Store by searching for the npm package name:
@zivye/dsh-img-save
Until the package is published to npm, the catalog lists this plugin
browse-only; the install command appears automatically once the npm
package is detected. The plugin itself ships under the name
dsh-img-save in the Web profile roster (see cordis.patch.yml).
Design
- Client-only behavior: the plugin uses the exact image URL that DSH is already rendering. It does not read local files, upload image bytes, run shell commands, or call a remote service.
- No polling or DOM observers: pointer, scroll, and resize events drive positioning. This avoids observer feedback loops and UI freezes.
- Preview-safe interaction: pointer/click events on the download button are stopped so clicking it does not trigger the image's built-in preview/lightbox action.
- Local URLs: uses the browser download mechanism for
file:,blob:,data:, and browser-accessible HTTP(S) image URLs. Browser security policy ultimately decides whether a particular local URL may be downloaded.
Project layout
src/
host/index.js # empty Host plugin; package is client-only
client/index.js # Cordis Client plugin source
lib/
client.js # esbuild ESM bundle of src/client/index.js
cordis.patch.yml # DSH profile bundle registration snippet
esbuild.config.mjs # bundles src/client -> lib/client (ESM, React external)
package.json
README.md
LICENSE
Development
The client entry is an ESM source file. The published package ships an esbuild
bundle at lib/client.js, which the 1024 Store loads through
exports["./client"]. Build the bundle locally:
npm install
npm run build
npm run check runs a syntax-only check on the source files.
Intended DSH integration
The client bundle is a Cordis plugin which registers with the queried
shell.overlay slot. It requires the DSH client runtime to provide:
slots.inject()andslots.register();- the
shell.overlayslot; - React (provided as an npm dependency) and the dynamic client builtins
(
document,window,requestAnimationFrame).
cordis.patch.yml mounts the plugin into the Web roster of any DSH profile
that installs this package.
License
MIT. See LICENSE.
Comments
Loading…
Similar plugins
by maxesisnclaw
Download button for delivered-file cards in DeepSeek Harness / 给交付物文件卡片加下载按钮
★ 0
MIT
JavaScript
Sep 18, 2026
dsh plugin --profile web add dsh-download-buttonby algerkong
Image preview for DSH (DeepSeek Harness) web sessions: read_image results render as a thumbnail, click for full size in the built-in lightbox.
★ 5
JavaScript
Sep 18, 2026
dsh plugin --profile web add @alger-ai/dsh-image-previewby dsh-plugins
DeepSeek Harness Web plugin: native image previews plus persistent non-image file-drop attachment cards
★ 0
GPL-3.0
JavaScript
Sep 11, 2026
dsh plugin --profile web add dsh-file-drop-attachments-persistedby Yaya716
Persistent "Add image" button in the composer tool row for DeepSeek Harness Web: opens the system file picker (image/*, multi-select) and routes selected images through the official draft attachment p
★ 0
JavaScript
Aug 23, 2026
dsh plugin --profile web add @local/dsh-add-image-buttonby Yaing-Yan
DSH (DeepSeek Harness) Cordis plugin that lets the agent display images — local files or URLs — directly inside the conversation.
★ 0
MIT
JavaScript
Aug 19, 2026
dsh plugin --profile web add dsh-show-pictureby liujia-io
Paperclip image-picker button for the DeepSeek Harness web composer - pick reference images via the system file dialog and feed them into the official attachment pipeline.
★ 0
MIT
JavaScript
Sep 5, 2026
dsh plugin --profile web add dsh-image-picker