Introduction¶
In the DeepSeek Harness chat interface, saving images usually requires right-clicking and choosing “Save As” or entering preview mode, which is not very direct. The dsh-image-download plugin provides a simpler solution for this scenario. It shows a download button when hovering over an image, turning image saving into a one-click operation. The plugin is maintained by developer Yezery and is released under the MIT License.
Features¶
This plugin primarily provides the following capabilities:
* Hover interactions: When the mouse pointer moves over an image in the conversation, a download button is displayed.
* Client-side only: The plugin logic runs on the client and does not involve remote service calls.
* Preview-safe: Clicking the download button does not trigger the image’s built-in preview or lightbox action.
* Local URL support: Supports downloading local URLs such as file:, blob:, and data:.
Installation and Enablement¶
The plugin is installed by its npm package name. Because the npm package has not been officially published yet, the directory shows browse mode; after publication, the install command will appear automatically.
The installation command is:
@zivye/dsh-img-save
Usage¶
In the DeepSeek Harness conversation window, hover the mouse over an image and a download button will appear. Click the button to save the image locally. For URLs that support browser downloads (including some local URLs), the browser will directly trigger the download behavior.
Technical Details¶
To ensure performance and security, the plugin adopts the following design:
* No polling or observers: The plugin does not use DOMObserver or polling mechanisms; instead, it drives button positioning through pointer, scroll, and resize events. This avoids feedback loops and UI freezing.
* Native client-side calls: The plugin reuses image URLs already rendered by DSH and relies on the browser’s native download mechanism to handle requests. It does not read local file bytes, upload image data, or run shell commands.
* Event interception: The click event on the download button is intercepted to ensure the image’s own preview functionality is not triggered.
Notes¶
- Runtime dependencies: This plugin depends on the
shell.overlayslot provided by the DSH client runtime and a React environment. - Browser limitations: For local files using the
file:protocol, browser security policies may restrict direct downloads, depending on the browser and the file source. - License: The plugin uses the MIT License and allows free use and modification.
Conclusion¶
With dsh-image-download, developers can obtain image resources more conveniently in conversations. Refer to the links below for the full source code and directory information.