
ysr666/dsh-vision-router
dsh-vision-router
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.
Install
npx @deepseek-ai/dsh plugin --profile web add dsh-vision-routerRestart `dsh web` after install. Bundle APIs can change during the developer preview.
README badge
[](https://dshhub.dev/plugins/dsh-vision-router)Paste this into your README. The star count updates with every catalog sync.
From the README
Excerpt from ysr666/dsh-vision-router, cleaned of badges and images.
[!CAUTION] Data leaves your machine by default. When a cloud vision model is used, Vision Router sends the image (or a derived crop), the vision prompt and related request metadata to that provider. A fresh install has an anonymous OVHcloud vision fallback enabled, so "free" and "no key" do not mean offline. Do not use the cloud chain for confidential, regulated or classified material. See Data flow and strict local-only use.
[!WARNING] v3.1.0 release notes: simpler image-input setup and clear cloud-upload privacy controls, plus DSH compatibility, HTTP and dependency fixes. See v3.1.0 release notes. For the installable version, check GitHub Releases or npm for the installable version.
Start here
1. Install in an existing DSH Web profile:
npx @deepseek-ai/dsh plugin --profile web add dsh-vision-router
2. Keep your usual chat model and click 👁 Vision beside the composer; check for 👁 Vision ✓.
3. Paste or upload an image and ask the agent what to inspect. The built-in keyless cloud fallback is available out of the box.
Using Desktop? Change --profile web to --profile desktop and reload the app. For Oh-DSH and manual setups, follow the complete installation guide.
Full quick start · What it can do · Data flow and local-only use
Try it on real images
- Understand a screenshot: “What does this error dialog mean? Read the exact message.”
- Find a UI element: “Where is the Save button in this screenshot? Give me its position.”
- Compare two designs: “Compare my page to this reference. What should I fix next?” Use
vision_pixel_diffto measure changes after each iteration. - Read and inspect a long image: “Extract the relevant text, then crop the unclear part to double-check it.”
These are ordinary chat requests: your normal model reasons through the task and calls vision tools as needed. See the tool list or configure your own/local vision backend.
Contents
…


