Introduction¶
When using plain-text DeepSeek in DSH, encountering screenshots, interface errors, document images, or visual content requiring comparison, the common practice is to first identify them with external tools, then paste the text back into the session. dsh-youreyes incorporates this process into the DSH plugin system: it provides a model-callable vision tool within the DeepSeek Harness, allowing DeepSeek to invoke the visual channel when needed, obtain textual evidence, and continue answering.
Below is an introduction to its positioning, core capabilities, installation methods, typical usage, and limitations to note.
What is this¶
dsh-youreyes is a DSH plugin, repository name is 54xkeee/dsh-youreyes, maintained by 54xkeee, with an MIT license. It targets plain-text DeepSeek scenarios, providing vision/OCR tools for the model, and supports the following channels:
- Antigravity IDE
- Any OpenAI compatible VLM endpoint
- Gemini API
- Local Ollama
It can also provide a wrapper adapter for deepseek/opencode-go upstream, enabling DeepSeek within the conversation flow to call vision tools. The plugin requires Node >=20 and dsh >=0.1.0.
Core Capabilities¶
Model-callable vision tool¶
The focus of dsh-youreyes is not independent chat, but providing a callable tool to the model within a DSH session. The model can decide whether vision is needed based on context, and the vision results are fed back into the answer flow.
Multiple vision channels¶
It supports connecting different backends as vision channels:
- Local Ollama: Automatically detected on plugin startup.
- Gemini API: Configured via API key.
- OpenAI compatible endpoint: Configured via base URL, API key, and model name.
- Antigravity IDE: Can be used as the default channel.
If the Antigravity IDE channel is unavailable, the plugin falls back in the order Gemini → OpenAI → Ollama.
Task modes¶
The plugin provides four task modes:
glanceocrregioncompare
These modes correspond to different vision intents, such as general understanding, text transcription, focus on local regions, and multi-image comparison.
auto mode¶
The auto mode uses a two-pass strategy: first perform a standard check, if the image is complex, automatically upgrade to a deep check. This reduces situations in complex screenshots, tables, interfaces, or multi-image comparison scenarios where a single recognition is insufficient.
Structured evidence output¶
Vision results require structured JSON evidence and limit the list length. This makes the content returned to the model more compact and facilitates subsequent reasoning.
Visual evidence memory¶
The plugin supports visual evidence memory:
- The same image and same phrasing can reuse existing results across turns.
- After DSH session compression, relevant visual evidence can be restored.
- The model can continue to ask follow-up questions based on existing evidence without having to paste the same image again.
Content hash caching¶
The plugin uses content hash caching to avoid re-recognizing the same image with the same phrasing. The cache defaults to retaining a maximum of 64 entries.
WSL / Network constrained scenarios¶
In WSL or network-constrained environments, if fetch fails, you can configure the Windows curl path via winCurlPath for fallback.
Installation and Enablement¶
First, confirm the environment meets version requirements:
Node >=20
dsh >=0.1.0
Then execute the official installation command:
dsh plugin --profile web add dsh-youreyes
If using the local Ollama channel, first complete the installation following the Ollama documentation and pull available vision models, then execute the installation command above, and finally restart dsh web.
Configuring Channels¶
Local Ollama¶
The local Ollama mode is suitable for scenarios where you don’t want to configure API keys. The plugin can automatically detect local Ollama upon startup. In this mode, images stay on the local machine, requiring no key, no registration, and no fees.
After the above steps, if local Ollama is ready, restart dsh web to enter the available state.
Gemini¶
When using the Gemini channel, you need to edit the profile’s cordis.patch.yml to configure youreyes:
geminiApiKey: YOUR_GEMINI_API_KEY
OpenAI compatible endpoint¶
When using any OpenAI compatible VLM endpoint, set in youreyes configuration:
openaiBaseUrl: YOUR_OPENAI_BASE_URL
openaiApiKey: YOUR_OPENAI_API_KEY
openaiModel: YOUR_VLM_MODEL
Here, openaiApiKey can also use the environment variable YOUREYES_OPENAI_API_KEY.
Antigravity IDE¶
When using the Antigravity IDE channel, it is required that the IDE is started and logged in, and paths for workspace, project, etc. are configured. Common configuration items include:
antigravityWorkspace: /path/to/workspace
antigravityProjectId: your-project-id
If the IDE is unavailable, the plugin falls back to Gemini → OpenAI → Ollama.
Typical Usage¶
Session panel scanning¶
Click “Scan Image” in the session header, then complete the following in order:
- Add or paste image.
- Fill in prompt.
- Select mode, tier, and channel.
- Initiate recognition.
Invocation in conversation flow¶
In the model selector, select:
DeepSeek (Vision Toolkit)
Afterward, you can directly paste the image and send it, allowing the model to automatically invoke the vision tool.
Channel self-check¶
The plugin provides a configuration self-check interface:
http://127.0.0.1:3080/api/youreyes/vision
Sending a base64 image, prompt, and channel to this interface can quickly confirm if the current channel can return recognition results normally. If the interface reports an error, you can first check channel configuration, network paths, and local service status.
Limitations and Notes¶
The plugin involves the following default limits during operation:
maxImageBytes: 8MB
maxImages: 8
maxTokens: 2048
timeoutMs: 60000
cacheMax: 64
If allowedImageDirs is used and the configuration is not empty, only image_path is allowed to read the specified directory.
Special attention is needed:
- The plugin runs with the current
dshprocess permissions; you should check the source code and license before installing. - The Antigravity IDE channel requires the IDE to be started and logged in, and paths configured accordingly.
- The Gemini channel may encounter
503 high demand, which can be retried later or the model changed. - In WSL / network-constrained scenarios, if
fetch failedoccurs, you can configurewinCurlPathto try a fallback.
Get the address¶
GitHub repository:
https://github.com/54xkeee/dsh-youreyes
The plugin clues also provide a directory page address:
https://www.skillhub.cn/plugins/54xkeee/dsh-youreyes
This directory page address comes from plugin clues and was not directly confirmed in the current data collection; the community directory is an independent site and has no official affiliation with DeepSeek or Hui Fang.