dsh-her-eyes: Adding VLM Image Analysis Capabilities to DeepSeek Harness

Preface

In DeepSeek Harness (dsh) web sessions, a common requirement is to have the model continue processing tasks based on image content. If the vision model only has a single endpoint, image analysis capabilities in sessions can easily be interrupted when the primary interface is unavailable; if configuration is done manually, backup endpoints can also be easily overlooked.

dsh-her-eyes is a plugin for dsh that provides the analyze_image tool for the web profile and supports primary/backup OpenAI-compatible vision model endpoints.

What This Is

dsh-her-eyes is a Vision-Language-Model (VLM) analyzer plugin, maintained by huashenglian.

It is designed for dsh CLI installations that already have the web profile, addressing two main issues:

  • Providing a usable analyze_image tool in dsh sessions;
  • Providing an auto-saving settings page for configuring primary and backup vision model endpoints.

This plugin is licensed under the MIT License.

Core Features

analyze_image Tool

The plugin registers the analyze_image tool into the global tools registry.

This means the tool can be called in every session for image analysis, rather than being available only in a specific session.

Primary/Backup VLM API

The plugin supports OpenAI-compatible primary and backup endpoints.

Each endpoint involves three types of configuration:

  • endpoint
  • apiKey
  • model

When the primary endpoint fails consecutively beyond the retry count, the plugin automatically switches to the backup endpoint to continue working.

Auto-Saving Settings Page

Every modification in the settings page is saved and takes effect immediately, with no separate Save button.

The settings page can also fetch the model list from the configured endpoints.

Web Routes

The plugin’s host component provides the following Web routes:

/vlm/config
/vlm/models
/vlm/reset

Internationalization

The settings page follows the Harness UI language, supporting English / 中文.

Bundle-Based Activation

This plugin is a bundle: it comes with its own cordis.patch.yml and self-activates.

No manual patching of the profile is required during installation.

Installation and Activation

Prerequisites

First, confirm the environment meets the following conditions:

  1. dsh CLI (DeepSeek Harness) is installed.
  2. The web profile is installed in dsh.
  3. pnpm is in the PATH; if it is not, use npx to invoke a specific version of pnpm.

Installing from GitHub

Under the web profile, run:

dsh plugin --profile web add github:huashenglian/dsh-her-eyes

After installation, plugin dependencies and bundle entries are handled according to the dsh plugin mechanism.

When pnpm Is Not in PATH

If pnpm is not in the PATH, you can use:

npx --yes pnpm@11.7.0 add file:./plugins/dsh-her-eyes

Then manually add "dsh-her-eyes" to the dsh.profile.bundles array.

Do Not Manually Insert the Loader Repeatedly

Do not manually add entries like the following to the profile’s cordis.patch.yml:

- insert:
    - id: her-eyes

The bundle already inserts the her-eyes entry.

If inserted repeatedly, the following error will be thrown at startup:

duplicate loader entry id: her-eyes

Typical Usage

Configuration File Location

All configuration is stored in a single JSON file:

$DSH_HOME/vlm-vision.json

The default path is:

~/.dsh/vlm-vision.json

Configuring Primary and Backup Endpoints

You can configure both primary and backup endpoints. Each endpoint includes an OpenAI-compatible endpoint, apiKey, and model.

An example structure is as follows:

{
  "primary": {
    "endpoint": "https://example.com/v1",
    "apiKey": "",
    "model": "your-model"
  },
  "backup": {
    "endpoint": "",
    "apiKey": "",
    "model": ""
  }
}

Note: The apiKey in vlm-vision.json should be left empty. The apiKey should be saved via the settings page, after which it is stored in masked form.

Configuring via the Settings Page

Open the Vision Models / VLM related page in the Harness settings.

First fill in the primary endpoint’s endpoint, apiKey, and model, then fill in the backup endpoint. Every edit is saved and takes effect automatically.

You can also use the settings page to fetch the model list from endpoints, reducing errors caused by manually entering model names.

Using in Sessions

After installation and configuration, the analyze_image tool is available in every session.

When the primary endpoint fails consecutively beyond the retry count, the plugin automatically switches to the backup endpoint.

Uninstallation

Run:

dsh plugin --profile web remove dsh-her-eyes

Uninstallation removes dependencies and bundle entries.

The vlm-vision.json configuration file is not deleted and remains in its original location.

Applicable Scenarios and Notes

Suitable for the following scenarios:

  • Adding image analysis capabilities to dsh web sessions;
  • Enabling models to call the analyze_image tool in sessions;
  • Needing primary/backup OpenAI-compatible endpoints for vision models;
  • Reducing interruptions caused by manual configuration changes and failover.

Notes before use:

  • It registers tools, routes, and a settings page in the dsh web profile.
  • The license is MIT; it is still recommended to review the source code and license before installation.
  • Do not manually add duplicate her-eyes loader entries to the profile’s cordis.patch.yml.
  • Do not write apiKey directly in vlm-vision.json; save it via the settings page and keep masked storage.
  • Uninstalling the plugin does not delete vlm-vision.json; if you no longer need this configuration, you must handle it yourself.

Conclusion

The core value of dsh-her-eyes is turning VLM image analysis capabilities into an installable, configurable, and removable plugin for dsh: providing the analyze_image tool, primary/backup vision endpoint failover, and an auto-saving settings page.

The currently verified facts do not include a catalog page URL; you can view the GitHub repository directly:

https://github.com/huashenglian/dsh-her-eyes
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye