Introduction

DeepSeek Harness (DSH) extends its capabilities via plugins. If you want to use image understanding or image generation in the DSH web profile, you need to connect to the corresponding model endpoints first.

Below is an introduction to dsh-image-plugins. It provides two types of multimodal capabilities for DeepSeek Harness: understanding image files in the workspace and generating images based on prompts. Both capabilities are completed via configurable OpenAI-compatible or DashScope endpoints.

What is it

alanzhao0128/dsh-image-plugins is a DeepSeek Harness multimodal plugin, maintained by alanzhao0128, and licensed under the MIT license.

It provides two core capabilities:

  • understand_image: Reads workspace image files, sends them to the configured vision endpoint, and returns the model’s text description.
  • generate_image: Generates images based on prompts, saves them to the workspace, and returns the saved path.

The plugin’s vision and image configuration blocks are independent of each other. When unconfigured, the corresponding capabilities are not enabled; they remain inert and safe.

Core Functions

understand_image

understand_image is a model tool. It reads image files in the workspace, sends the images to the configured vision endpoint, and returns the text description generated by the model.

This capability is suitable for discussing screenshots, charts, interface screenshots, or other workspace images within a text workflow.

generate_image

generate_image is also a model tool. It calls the image generation endpoint based on a prompt, saves the generation result to the workspace, and returns the saved path.

In the default example, generated images are saved to generated/.

DashScope Image Generation

The plugin supports any OpenAI-compatible endpoint and also supports the optional DashScope provider for calling the native Model Studio API.

Please note: The DashScope compatible-mode does not provide images/generations and returns a 404. Therefore, when using DashScope for image generation, you need to use the native Model Studio API with provider: dashscope.

Installation and Enabling

Installation

Use the official installation command:

dsh plugin --profile web add dsh-image-plugins

After installation, restart dsh web or the corresponding profile process.

Enabling Capabilities

Capabilities are not automatically enabled after plugin installation; you must configure the endpoints and keys first.

Since version 0.2.0, the plugin provides a Web settings panel:

Settings → 图片插件 / Image Plugins

In this panel, you can edit the vision and image configuration blocks and manage the corresponding keys via the official credential store.

You can also configure manually. In the profile’s cordis.patch.yml, override the id: image-plugins line and set the baseUrl, apiKey, model, and other configurations for vision and image.

A basic configuration example:

- id: image-plugins
  name: dsh-image-plugins
  config:
    vision:
      baseUrl: 'https://your-vision-endpoint.example.com/v1'
      apiKey: 'sk-...'
      model: 'your-vision-model'
    image:
      baseUrl: 'https://your-image-endpoint.example.com/v1'
      apiKey: 'sk-...'
      model: 'your-image-model'

If you only need to view images, you can configure only vision. If you only need to generate images, you can configure only image. The two configuration blocks are independent of each other.

Configuration and Keys

Independent Configuration Blocks

vision and image are independent configuration blocks. Each config block can be enabled separately, or both can be enabled together.

Partial filling will cause the load to “fail the load loudly”. For example, if you only write baseUrl but not apiKey, the load will fail noticeably.

apiKey Supported Formats

apiKey supports three formats:

'sk-...'
env:VARNAME
cred:NAME

Among them, cred:NAME is resolved via the host credential seam on every request.

Keys do not enter session logs or tool results.

Endpoint Requirements

The endpoint must be OpenAI-compatible.

For vision understanding, use:

POST {baseUrl}/chat/completions

And require the endpoint to accept image_url data URLs.

For image generation, use:

POST {baseUrl}/images/generations

And require the endpoint to return:

data[0].b64_json

or:

data[0].url

DashScope Configuration Notes

The DashScope compatible-mode does not provide images/generations and returns a 404.

If you want to perform DashScope image generation, you need to use the native Model Studio API with provider: dashscope.

Typical Usage

View Images

In the workspace, input:

Look at `images/screenshot.png` and tell me what it shows.

The plugin will read the image file, call the configured vision endpoint, and return the model’s text description.

Generate Images

In the workspace, input:

Generate an image of a red apple on a wooden table.

The plugin will call the image generation endpoint, save the image to the workspace, and return the saved path. In the example, the save directory is generated/.

Image to Image

Image-to-image requires the DashScope provider. Example prompt:

Change the color of `images/logo.png` to blue.

Use Cases and Notes

Who is it for

This plugin is suitable for the following scenarios:

  • Need to understand workspace images in the DSH web profile.
  • Need to generate images based on prompts and save the results back to the workspace.
  • Want to configure the vision endpoint and image generation endpoint separately.
  • Want keys not to enter session logs or tool results.
  • Want the plugin to remain inert and safe when unconfigured.

Security and License

API keys are not carried inside the package; each user configures them themselves.

The plugin runs with the permissions of the current dsh process. You should check the source code and license before installing.

The license is MIT.

Other Notes

  • Auto-understand (V2) has been implemented, but is disabled by default, has not been verified in a live session, and is not part of the supported surface.
  • When installing from GitHub, if the environment is pnpm ≥ 10, you need to allow build scripts first, then re-add.
  • npm and tarball installations do not require this permission.

Example configuration for pnpm allowBuilds:

allowBuilds:
  dsh-image-plugins: true

Conclusion

dsh-image-plugins integrates image understanding and image generation into the DSH plugin system: the viewing capability returns a text description, and the generation capability returns the workspace save path. The two capabilities are configured independently, and keys are handled via the credential mechanism, with no activation when unconfigured.

Related links:

  • Directory page: https://www.skillhub.cn/plugins/alanzhao0128/dsh-image-plugins
  • GitHub: https://github.com/alanzhao0128/dsh-image-plugins