Skip to content

Repository files navigation

ModLens

ModLens

Give a text-only model sight, and just paste the image.

简体中文 · Troubleshooting · Configuration · Output contract · Security · ModSearch (web)

npm Node.js License

DeepSeek-V4-Flash has no vision capability and cannot process screenshots or images. ModLens is a plug-in vision engine that gives a text-only model sight. ModLens reads images pasted straight into the chat, no saving to a file and passing a path first.

Highlights

  • Completely free. The default channel is Antigravity CLI, no API key needed. A free Gemini key brings a read down to 5-10 seconds.
  • Evidence, not an impression. Full transcription, reading-order layout regions, entity and relation lists. The model quotes specifics.
  • Install once, use everywhere. Verified on real machines in Claude Code, Codex, Pi, and OpenCode.

Installation

Step 1, set up a vision engine (the only part that needs your hands). The recommended choice is a free Gemini API key: get one at Google AI Studio, about three minutes, no credit card.

A free API key in the OpenAI-compatible format from another platform is also a good option.

To avoid any sign-up, install Antigravity CLI instead, then sign in:

curl -fsSL https://antigravity.google/cli/install.sh | bash
agy                                                           # sign in, then exit

Step 2, hand the rest to your AI. Send it this line, along with the key if you chose the Gemini API key:

Install and configure the modlens skill following https://github.com/liustack/modlens/blob/main/INSTALL.md, then run the health check and tell me the result.

Usage

Once installed, just chat. Paste an image or drop a path, ask anything, and the skill triggers on its own: the image goes to a vision engine and the answer comes back grounded in what it read.

See it work

Unedited runs, all driving a text-only DeepSeek-V4-Flash.

A tweet screenshot in the Codex desktop app. It reads the caption, the engagement numbers (2.9K replies, 270K likes, 5M views), even the image's alt text. Where the resolution runs out, it says so instead of guessing.

Text-only DeepSeek reading a tweet screenshot in full detail via ModLens

Three images pasted at once. The model queues them up and reads them one by one, design intent included.

Three images dropped together, read one by one

The stress test: a scatter plot of 128 models. It identifies the chart, both axes, the log scale, and picks the one highlighted point out of the crowd with its coordinates (about $0.028, intelligence score 50). Dense charts are where vision models most often fail.

The 128-model scatter plot, highlighted point read with exact coordinates

And the paste path, end to end: Claude Code on a DeepSeek gateway, two images pasted straight into the chat. The UI shows nothing but placeholders, the skill recovers both from session storage and reads them, down to the color values on a slide cover.

Two pasted images recovered from session storage and read in a gateway Claude Code session

Documentation

Doc Read it when
INSTALL.md Installing the skill step by step (written for an agent)
CLI manual The CLI the skill drives: flags, config, doctor
Troubleshooting A command failed and the message needs decoding
Configuration Setting a key, switching providers, fixing config
Output contract Parsing the JSON or building on it
Harness setup Wiring it into Codex, Claude Code, Pi, or OpenCode
Security File permissions, image content as untrusted input
CHANGELOG Finding what changed in a version
AGENTS.md Working on this codebase

Contributing

ModLens does not accept pull requests. The project is maintained by a single author who reviews every line, which is a deliberate choice for reliability. Two effective ways to contribute:

  • Open an issue. Bugs, suggestions, confusing errors, unclear docs. Issues are read and shape what gets built next.
  • Fork it. Under MIT your copy is fully yours to modify and publish.

Shameless plug

This project runs on LIUSTACK Skills: shaping before you build, coding while you build, dig when it breaks, snapshot when you hand off. Lighter than Superpowers, and stronger.

npx -y skills add liustack/liustack -g

⭐ If it helps, star ModLens and liustack. Stars are how the next developer finds them.

Star History

Star History Chart

Disclaimer

Provided as-is under the MIT License below. The author makes no warranty and gives no endorsement for any particular use, commercial use included. Your use of upstream engines (Antigravity CLI, the Gemini, OpenAI, and Anthropic APIs, and any OpenAI-compatible endpoint) is governed by their own terms and quotas, which you are responsible for.

License

MIT

About

CLI toolkit for AI agents — converts images into structured JSON evidence (OCR, layout, semantics), bridging the vision gap for text-only LLMs.

Resources

Code of conduct

Contributing

Security policy

Stars

474 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages