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:
- Registers the
vision_analyzetool, accepting local image paths ordata:URIs and returning analysis text. - Supports configuring the multimodal model provider and model; if
providerandmodelare left empty, the multimodal model is automatically selected. - 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:
providerandmodelleft empty indicates automatic selection.maxEdgelimits the longest pixel side of the image, defaulting to4096px.modeis optional withauto,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:
- You have a DSH Web deployment.
pnpmis installed on the machine. If using Node’s built-in corepack, execute:
corepack enable pnpm
- You have configured the multimodal model routing in the
llm-pi-aisettings, 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¶
- 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
-
Open “Settings → Visual Assistant” in the Web application.
-
Select the provider, model, temperature, maximum output tokens, and maximum image edge length.
-
Provide a local image path or
data:URI in the task. -
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:
- Remove the plugin line from
<profile>/cordis.patch.yml. - Delete
<profile>/node_modules/dsh-vision-helper. - Delete the corresponding configuration file.
- 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.