MIT-licensed vision bridge for text-only models, installed in DeepSeek Harness (dsh) with a single `dsh plugin add` command — paste an image, get structured JSON evidence (OCR, layout, semantics) back.
DSH integration
Compatible
Author-claimed
Safety audit
Unaudited
Last verified
2026-08-21
License
MIT
01What can it help you accomplish?
Read images pasted straight into DeepSeek Harness chats running text-only DeepSeek / GLM models
Grounded answers built on structured JSON evidence — full transcription, reading-order layout regions, entity and relation lists
Developers running text-only DeepSeek or GLM models in dsh who need screenshots, slides, documents and charts understood in-conversation
Analyze dense charts, tweet screenshots and multi-image batches without leaving the dsh conversation
Detail-level readings — axes, log scale, color coding, timestamps, engagement numbers, per-image content and style — delivered one by one
dsh users who paste analytics charts, social screenshots or batches of images and need every element quoted back, not summarized away
Keep native paste thumbnails while adding vision via a wrapped model entry
A `(modlens vision)` model-selector entry per text-only route (choice is remembered); pasted thumbnails stay visible and are converted to structured evidence at request time
dsh users who want a Codex-app-like paste experience — visible thumbnails — instead of temp-file paths in the composer
02How to install into DeepSeek Harness
Prerequisites
- DeepSeek Harness (dsh) available — the install runs through the official `npx -y @deepseek-ai/dsh` CLI
- At least one vision engine: a free Gemini API key, the free Antigravity CLI (no key), an Anthropic key, any OpenAI-compatible endpoint, or an existing Claude Code / Kimi / Codex / OpenCode / Pi login reused with consent
Installation steps
- 01
Install the plugin with one command: `npx -y @deepseek-ai/dsh plugin --profile web add @liustack/modlens@3.22.1`
$ npx -y @deepseek-ai/dsh plugin --profile web add @liustack/modlens@3.22.1
- 02
Pick a `(modlens vision)` entry in the model selector (it remembers your choice, so once is enough), or just paste an image on a confirmed text-only model and let `modlens_read_image` take over
- 03
If no vision engine is configured yet, set up a free Gemini API key (about three minutes, no credit card) or install Antigravity CLI and sign in with `agy`
Verify the integration
Not specified by the author
Rollback
- Uninstalling is deleting a folder — no harness config lines are changed, so your agents are back to stock
03DSH integration and capability boundaries
Installed inside DeepSeek Harness as exactly one dsh plugin via a single `dsh plugin add` command; adds `(modlens vision)` model-selector entries and reads pasted images through the `modlens_read_image` tool
Direct-paste vision for text-only models
an image pasted straight into the chat, or a dropped file path→structured JSON evidence — full transcription, reading-order layout regions, entity and relation lists — grounding the model's answer
images are sent over the network to an external vision engineon a text-only model a pasted image lands as a private temp file whose path enters the composerTen-engine failover chain
six built-in providers (Gemini, OpenAI-compatible, Anthropic, Antigravity CLI, Claude CLI, Kimi CLI) plus up to four reused local agent CLIs→the first good result wins; `meta.attempts` records every attempt so a fallback is never silent
reused CLI reads spend that CLI owner's quota and are labeled in `meta.warnings`reuse is only enabled after explicit per-harness consent recorded in configUniversal OpenAI-compatible socket
`openai.baseUrl` + `openai.apiKey` + `openai.model` config (e.g. qwen-vl, GLM, SiliconFlow, OpenRouter, self-hosted vLLM/Ollama)→any endpoint speaking the OpenAI chat-completions protocol with image input driven as a vision engine
writes provider keys and endpoints into the modlens config
04Who is it for? When not to use it?
Good for
- Developers running text-only DeepSeek or GLM models in dsh who need screenshots, slides, documents and charts understood in-conversation
- dsh users who paste analytics charts, social screenshots or batches of images and need every element quoted back, not summarized away
- dsh users who want a Codex-app-like paste experience — visible thumbnails — instead of temp-file paths in the composer
Not for
- ModLens ships no local vision model: every read is routed to an external engine (Gemini / OpenAI-compatible / Anthropic API, Antigravity CLI, or a reused agent CLI), so it needs network access and your use of upstream engines is governed by their own terms and quotas.
05Compatibility, maintenance and safety notes
- ModLens ships no local vision model: every read is routed to an external engine (Gemini / OpenAI-compatible / Anthropic API, Antigravity CLI, or a reused agent CLI), so it needs network access and your use of upstream engines is governed by their own terms and quotas.
- Read speed depends on the engine: API providers take 5-10 seconds per read, while CLI-based engines (Antigravity, Claude CLI, Kimi CLI, reused Codex / OpenCode) take 20-45 seconds.
- Only a model whose metadata positively confirms it is text-only is taken over with a `(modlens vision)` entry; anything unconfirmed is left alone, and the DeepSeek / GLM families' own vision models keep their native paste.
MIT · actively maintained (latest release v3.22.1, 2026-08-20)
06Frequently asked questions
How do I install ModLens in DeepSeek Harness?
Run one command: `npx -y @deepseek-ai/dsh plugin --profile web add @liustack/modlens@3.22.1`. The plugin auto-discovers every provider route carrying text-only DeepSeek or GLM models and adds a wrapped `(modlens vision)` entry per route (a stock install gets DeepSeek-V4-Flash and DeepSeek-V4-Pro variants). Pick the entry once in the model selector, then just paste images.
Is it a native dsh plugin or an MCP server?
It installs as exactly one dsh plugin — no hooks, no wrappers, no local proxy daemon, and not a single line changed in any harness config. Uninstalling is deleting a folder, and your agents are back to stock.
Which vision engine do I need?
Any one engine is enough: a free Gemini API key (about three minutes, no credit card, the recommended 5-10s default), any OpenAI-compatible endpoint (qwen-vl, GLM, self-hosted gateways), an Anthropic key, the free keyless Antigravity CLI, or logins reused from Claude Code / Kimi / Codex / OpenCode / Pi with explicit per-harness consent.
Where do my pasted images go?
Images are sent over the network to the vision engines in your configured failover chain; `meta.attempts` records every attempt, and any read that spends a reused CLI's quota is labeled in `meta.warnings`. Upstream engines' own terms and quotas apply, and you are responsible for them.
Which models get the vision takeover?
Only a model whose metadata positively confirms it is text-only is wrapped with a `(modlens vision)` entry. Anything unconfirmed is left alone, and the DeepSeek / GLM families' own vision models keep their native paste behavior.
07Related DSH workflows
agent-vision-toolkit
by anionex
Vision toolkit and skills that give text-only LLMs eyes — multi-image understanding, image Q&A, OCR, frontend UI restoration and GUI automation, with optional agent integration.
dsh-vision-router
by ysr666
Eyes for text-only DeepSeek Harness agents: built-in free vision chain (no key) + pixel-level vision tools (Q&A, grounding, crop, pixel diff, colors, OCR, SVG trace, cutout, screenshots). One-command install, no Python, image turns work like ordinary tool-calling turns.
dsh-vision-toolkit
by anionex
为纯文本 DSH Agent 提供 10 个结构化视觉工具:意图感知图片问答、长截图 OCR、原始像素 grounding、UI 还原、像素 diff 等
dsh-image-gen
by shanliuling
AI image studio for DeepSeek Harness — generate, edit & compare images in chat, with 500+ prompts, gallery, multi-model workflows and ComfyUI.
08Data and sources
**🥇 The most capable vision plugin for DeepSeek Harness (dsh):** install it instantly with one command: `npx -y @deepse…
on the skill harnesses it is exactly one skill folder, on dsh exactly one plugin. Uninstalling is deleting a folder, and…
The plugin auto-discovers every provider route carrying text-only DeepSeek or GLM models and adds a wrapped entry per ro…
This page is generated from the project’s public documentation, repository metadata and a structured parse of DSH Plugins; last verified on 2026-08-21. Found an error? Submit a correction.
Best DeepSeek Harness Plugins
Twelve plugins worth installing first — picked from the whole catalog, across every category.
