Preface

The DSH plugin ecosystem emphasizes “everything is a plugin.” The community directory is an independent site and is not an official app store; it has no official affiliation with DeepSeek or Fangfang.

For scenarios involving DSH agents, a specific problem is how to enable agents to stably process image tasks: they need to call a visual analysis tool, which can be connected to a configurable multimodal model behind the scenes, and the configuration, registration, and calling process should be as non-intrusive as possible.

dsh-vision-helper is a persistent vision plugin built for DeepSeek Harness, maintained by Yuuz12, with an MIT license. It registers the vision_analyze tool to analyze images based on a configurable multimodal model, while also providing a settings page interface in the Web application.

Below is an introduction to its features, installation, configuration, uninstallation, and considerations.

What is this

dsh-vision-helper is a DSH bundle plugin with three core values:

  1. Registers the vision_analyze tool, accepting local image paths or data: URIs and returning analysis text.
  2. Supports configuring the multimodal model provider and model; if provider and model are left empty, the multimodal model is automatically selected.
  3. Provides a “Settings → Visual Assistant” interface in the DSH Web application for configuring the provider, model, temperature, maximum output tokens, and maximum image edge length.

It targets DSH Web deployments; the settings page is only visible on the Web, but the vision_analyze tool itself is available in any profile where this plugin is mounted.

Core Features

Tool Calling

vision_analyze accepts local image paths or data: URIs, sends them to the configured multimodal model, and returns the analysis text.

Agents involved in tasks involving images can be guided to call this tool.

Model Configuration

The plugin does not carry any API keys. The user needs to configure the multimodal model routing in the llm-pi-ai settings of the deployment, or add any OpenAI-compatible vision endpoint.

Configurable items include:

provider
model
temperature
maxTokens
maxEdge
mode

Where:

  • provider and model left empty indicates automatic selection.
  • maxEdge limits the longest pixel side of the image, defaulting to 4096px.
  • mode is optional with auto, force, off, respectively controlling the intelligent mode of automatic calling guidance, forced mode, and off mode.

Settings Page

In the Web application, you can configure the following via “Settings → Visual Assistant”:

  • Provider
  • Model
  • Temperature
  • Maximum output tokens
  • Maximum image edge length

Configuration is read instantly upon each use, no restart required; the guidance segment automatically re-registers upon saving.

Zero Dependencies and Persistence

The plugin adopts a zero-dependency design: the host module has no imports, no npm install needed, no modification of node_modules structure, and no symlinks required.

As a DSH bundle, it is persistent and globally available: it survives restarts and is available in all sessions.

Robustness Handling

The plugin also includes the following handling:

  • Automatically strips invisible Unicode characters from pasted paths, such as U+202A.
  • Limits image dimensions based on the longest side.
  • Deduplicates streaming text.
  • Provides friendly error messages.

Installation and Enabling

Prerequisites

Confirm the following before installation:

  1. You have a DSH Web deployment.
  2. pnpm is installed on the machine. If using Node’s built-in corepack, execute:
corepack enable pnpm
  1. You have configured the multimodal model routing in the llm-pi-ai settings, or added an OpenAI-compatible vision endpoint.

npm Installation

It is recommended to install from the npm registry:

npx @deepseek-ai/dsh plugin --profile web add dsh-vision-helper

GitHub Installation

You can also install from GitHub:

npx @deepseek-ai/dsh plugin --profile web add github:Yuuz12/dsh-vision-helper

Manual Installation

An alternative method is to copy the dsh-vision-helper folder to <profile>/node_modules/ and add the plugin line to <profile>/cordis.patch.yml:

- insert:
    - id: dsh-vision-helper
      name: 'dsh-vision-helper'

Verification after Installation

Execute:

npx @deepseek-ai/dsh --profile web --dump-config

You should see the dsh-vision-helper layer in the output.

Then restart:

dsh web

After the steps above, the plugin will be enabled in DSH.

Configuration

You can configure it via the Web settings page or by editing dsh-vision-helper.json in the data directory.

The configuration file location varies depending on the installation method:

  • Registry / tarball / GitHub installation: <profile>/dsh-vision-helper.json
  • Local link: installation: falls back to the plugin source code directory <repo>/dsh-vision-helper.json

Example fields are as follows; fill in specific values according to your llm-pi-ai routing:

{
  "provider": "<provider>",
  "model": "<model>",
  "temperature": "<number>",
  "maxTokens": "<number>",
  "maxEdge": 4096,
  "mode": "auto"
}

mode explanation:

  • auto: Default mode, controls the intelligent mode of automatic calling guidance.
  • force: Forced mode, requiring the tool to be used for tasks involving images.
  • off: Off mode, does not inject automatic calling guidance, but the tool remains registered.

Typical Usage

  1. Install the plugin and restart DSH.
   npx @deepseek-ai/dsh plugin --profile web add dsh-vision-helper
   npx @deepseek-ai/dsh --profile web --dump-config
   dsh web
  1. Open “Settings → Visual Assistant” in the Web application.

  2. Select the provider, model, temperature, maximum output tokens, and maximum image edge length.

  3. Provide a local image path or data: URI in the task.

  4. Let the agent call vision_analyze, and the configured multimodal model will return the analysis text.

If you prefer the configuration file, you can also directly edit the corresponding dsh-vision-helper.json and then let the agent use visual capabilities again.

Uninstallation

Standard Uninstallation

npx @deepseek-ai/dsh plugin --profile web remove dsh-vision-helper

After this command removes the bundle layer, you also need to delete the configuration file and restart DSH.

Configuration file location:

  • Registry / tarball / GitHub installation: <profile>/dsh-vision-helper.json
  • Local link: installation: <repo>/dsh-vision-helper.json

When using local link: installation, remove only deletes the node_modules link, leaving the source code repository intact.

Manual Uninstallation

If it was manually installed before:

  1. Remove the plugin line from <profile>/cordis.patch.yml.
  2. Delete <profile>/node_modules/dsh-vision-helper.
  3. Delete the corresponding configuration file.
  4. Restart DSH.

Applicable Scenarios and Notes

Suitable for the following users:

  • Users of DSH Web deployment.
  • Users who want agents to call an independent visual analysis tool for image tasks.
  • Users who want to manage multimodal model parameters via the Web settings page or configuration file.
  • Users who prefer a low-intrusion installation method and do not want to introduce additional dependencies.

Be sure to note the following before use:

  • The plugin runs with the permissions of the current dsh process. You should check the source code and license before installing.
  • The plugin does not carry API keys; you need to configure the multimodal model routing or OpenAI-compatible vision endpoint yourself.
  • The settings page is only provided on the Web; the tool can be used in any profile mounting this plugin.
  • The community directory is an independent site and is not an official app store.

Conclusion

dsh-vision-helper provides the vision_analyze tool, configurable multimodal models, and a Web settings page, making it suitable for integrating visual analysis capabilities into DSH agents. Its zero dependencies, persistence, and real-time configuration reading reduce the cost of integrating vision capabilities into DSH.

GitHub: https://github.com/Yuuz12/dsh-vision-helper

Directory Page: The DSH community directory is an independent site; this article does not provide a verifiable directory page URL, please refer to the release address of the DSH community directory.