Skip to content

libinyam/dsh-vision-provider

40Last commit Aug 15, 2026

dsh-vision-provider DSH plugin

dsh-vision-provider is a community plugin for DeepSeek Harness that lets you choose a vision model (e.g., GLM-4.6V-Flash, Qwen VL Max, GPT-4.1 mini) as a sidecar. The vision model analyzes images and passes the description to DeepSeek V4 Flash, which still handles reasoning and final answer. It appears as a single provider in the Web UI with multiple selectable combinations.

How to install the dsh-vision-provider DSH plugin

dsh plugin --profile web add github:libinyam/dsh-vision-provider

Copying does not run this command. Review the repository and version before installing the dsh-vision-provider DSH plugin.

dsh-vision-provider DSH plugin data source

dsh-vision-provider DSH plugin snapshot date: Aug 16, 2026

discovered

What the dsh-vision-provider DSH plugin can do

  • Selectable vision models under a single 'DeepSeek + Vision' provider in Web UI.
  • Text-only messages bypass the vision endpoint entirely.
  • Image messages are analyzed by the chosen vision model before reaching DeepSeek.
  • Supports registering custom OpenAI-compatible vision endpoints via environment variables.
  • Caches repeated image analysis within the same process to avoid re-analyzing on tool steps.

Where the dsh-vision-provider DSH plugin fits

  • Add vision capabilities to DeepSeek Harness without changing the reasoning model.
  • Choose between different vision models (GLM, Qwen, GPT-4.1 mini) per session.
  • Use a locally hosted vision model (e.g., via Ollama) with the direct endpoint fallback.
  • Integrate image analysis into DeepSeek-powered workflows that require visual context.

Who the dsh-vision-provider DSH plugin is for

  • DeepSeek Harness users who need image understanding alongside DeepSeek reasoning.
  • Developers building multi-modal AI applications that require controlled vision model selection.

dsh-vision-provider DSH plugin limitations

  • Requires DeepSeek Harness 0.1.0-rc.5 or later and Node.js >=22.19.0.
  • Vision model must be OpenAI-compatible (/chat/completions with image input) and configured with a valid API key.
  • Direct endpoint fallback bypasses Harness provider retries, middleware, and token accounting.
  • Not an official DeepSeek or OpenAI package; community project.
  • Image analysis incurs separate provider charges and may impact privacy.

dsh-vision-provider DSH plugin: from the repository README

Quoted from the libinyam/dsh-vision-provider README, the upstream source of the dsh-vision-provider DSH plugin. Copyright remains with the original authors.

`dsh-vision-provider` gives [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) selectable vision choices under one `DeepSeek + Vision` provider: ```text DeepSeek + Vision GLM-4.6V-Flash Qwen VL Max GPT-4.1 mini (Vision) ``` Select only one combination in Harness. The vision model named in that selection is used behind DeepSeek: ```text Text-only message ───────────────────────────────> DeepSeek V4 Flash Image message ──> private vision sidecar ──> visual description │ └──> DeepSeek V4 Flash ──> answer ``` The vision model does not run as the final answer model. Instead, it appears as part of a selectable DeepSeek combination. DeepSeek still performs reasoning, tool use, and final response generation. > This is a community project. It is not an official DeepSeek or OpenAI > package. ## Why v0.3.0 exists Version `0.1.0` added a standalone model named `vision-openai`. DeepSeek Harness can select only one model for a session, so users had to choose either DeepSeek or the vision model. The two models could not cooperate. Version `0.2.0` introduced a runtime compo

Read the full READMERepository license: MIT

dsh-vision-provider DSH plugin questions

How do I install dsh-vision-provider?

Run `pnpm dsh plugin --profile web add github:libinyam/dsh-vision-provider` from your DeepSeek Harness directory. Make sure you have pnpm available and DSH_HOME set. Then start the web profile with `pnpm dsh web`.

Which vision models are supported?

Any OpenAI-compatible model that advertises both text and image input. The plugin ships with defaults for GLM-4.6V-Flash, Qwen VL Max, and GPT-4.1 mini. You can also add custom models via Settings > Models or environment variables.

Why can't I see the vision models in the model selector?

Ensure the model or its provider declares `input: [text, image]` in its settings. The plugin reads models that advertise image input. If you added a custom model, check its modality in Settings > Models or the YAML config. Also allow up to 30 seconds for the discovery cache to refresh, or restart the Web profile.

Do I need a separate API key for the vision model?

Yes, unless you use the direct fallback which reads `VISION_OPENAI_API_KEY` by default. You can change the environment variable with `DSH_VISION_API_KEY_ENV`. The DeepSeek key is configured separately in the native DeepSeek provider.

How does the plugin handle image privacy?

For text-only requests, no data is sent to the vision endpoint. Only image-bearing messages are sent to the selected vision sidecar with a fixed instruction for factual transcription. DeepSeek receives the generated description. Review both providers' privacy policies. The plugin does not log images or API keys.