Borrowed Sight for Text-Only Coding Agents
ModLens is a vision bridge for text-only coding agents, outsourcing image reading to other multimodal engines and feeding structured JSON evidence back to models like DeepSeek and GLM.
ModLens routes pasted images through whatever multimodal engine you already have, feeding structured evidence back to text-only models like DeepSeek.

What it does
ModLens is a plugin vision engine for coding agents. When you paste an image into a chat with a text-only model like DeepSeek or GLM, the skill intercepts it, sends the image to an available multimodal engine—such as Gemini, Claude, or Codex—and injects structured JSON evidence back into the conversation. The text model never touches a pixel; it simply reasons over the supplied transcription, layout regions, and entity lists.
The interesting bit
The project treats vision as a text-generation prerequisite rather than an innate model capability. By converting images into structured evidence with reading order and semantic relationships, it lets a blind LLM cite specific visual facts instead of hallucinating them. It is essentially a very diligent seeing-eye dog that describes the scene in exhaustive detail.
Key highlights
- First vision plugin for DeepSeek Harness, exposing a native
read_imagetool to text-only DeepSeek and GLM routes. - Verified across Claude Code, Codex, Pi, and OpenCode; reuses existing logins from those harnesses when available.
- Accepts raw paste or file paths without requiring manual disk saves or path passing.
- Returns structured evidence—OCR, layout regions, entity and relation lists—rather than loose summarization.
- Falls back to free channels like Antigravity CLI or a Gemini key if no local multimodal engine is configured.
Caveats
- Only wraps DeepSeek and GLM text models; native vision variants from those families are explicitly excluded.
- Maintenance is strictly single-author; pull requests are not accepted, so the bus factor is one.
- DeepSeek Harness users may encounter a
declares no dsh.bundlewarning if pnpm installs an outdated version, requiring a manual workaround per the troubleshooting docs.
Verdict
Worth a look if you are running a text-only model inside a chat-centric coding agent and want image support without switching LLMs. If you already use a native multimodal model end-to-end, this middleware adds nothing but latency.
Frequently asked
- What is liustack/modlens?
- ModLens is a vision bridge for text-only coding agents, outsourcing image reading to other multimodal engines and feeding structured JSON evidence back to models like DeepSeek and GLM.
- Is modlens open source?
- Yes — liustack/modlens is open source, released under the MIT license.
- What language is modlens written in?
- liustack/modlens is primarily written in TypeScript.
- How popular is modlens?
- liustack/modlens has 3.5k stars on GitHub.
- Where can I find modlens?
- liustack/modlens is on GitHub at https://github.com/liustack/modlens.