Agent skill · Workflow & Productivity

vision-tools

Local vision CLIs: glance (describe/ask/OCR an image), ground (locate a target, pixel box), detect (element inventory), trace (image to SVG geometry). Use for any task involving an image — questions, text, locating elements, comparing, rebuilding as HTML/SVG — and to re-check an image yourself when a description you were given lacks a detail.

Anionexgithub.com/AnionexGitHub ↗
codexships scriptsMIT
Install
npx skills add Anionex/codex-vision-proxy --skill vision-tools --agent codex

Same command for any agent — swap --agent for claude-code, cursor, copilot.

Facts
Files in the skill folder: 5
SKILL.md size: 8 KB
Bundled scripts: yes
Path: skills/vision-tools/SKILL.md
Open the folder on GitHub →
Where it comes from
Stars: 279
Language: Python

Weekly change comes from our own snapshots, not the repository page — it measures attention, not adoption.

From the SKILL.md

# vision-tools Four local CLIs that give a text-only agent eyes. They read one shared vision config (`VISION_API_KEY` / `VISION_BASE_URL` / `VISION_MODEL` / `LANG`) — no extra credentials. Pick the tool by the question you are answering: | Question | Tool | |---|---| | "What does this image show / say?" | `glance` | | "Where is X?" — a thing you can name | `ground` | | "Where are all the Xs?" — every instance of a kind | `detect` | | "What is its exact shape, size, offset?" | `trace` | | "Which colours dominate a region, and which palette value fits it?" | `scripts/dominant_colors.py` | | A number none of them return — a colour value, the gap between two things | code over the pixels (Pillow) | `glance` answers what something is; `ground` and `detect` answer where. You give `ground` a description of a particular thing; you give `detect` a kind and it enumerates the instances. Both give real coordinates, but they are not pixel-exact: the box arrives on a 0-1000 grid and is scaled to your image, so the last pixel or few are not reliable. That is accurate enough to crop with, to click, to compare positions against. When a number has to be exact, `trace` derives it from the actual pixe

What's inside
Steps it walks through
  1. glance — ask about an image
  2. ground — locate a named target
  3. detect — find every instance of a kind
  4. trace — exact shape geometry (local, no vision API)
  5. pixeldiff — where two images differ (local, no vision API)
  6. Work from a copy, not a temp path
  7. When you have a description instead of the image
  8. Coarse to fine — the method behind every task above
  9. Use cases
  10. Notes
Ships with 4 files
  • agents/openai.yaml
  • references/restore.md
  • scripts/dominant_colors.py
  • scripts/pixel_diff.py
Commands it runs
glance <image>                                 # detailed description
glance <image> -q "<question>"                 # targeted question (qualitative only)
glance <image> --ocr                           # verbatim OCR
glance <image> --region X1,Y1,X2,Y2 -q "..."   # zoom into a crop
glance <img1> <img2> -q "..."                  # compare in ONE call
ground <image> "<target description>"
ground <image> "<target>" --region X1,Y1,X2,Y2
ground screenshot.png "the send button"
glance screenshot.png --region 1067,841,1108,881 -q "is it enabled or greyed out?"
detect <image>                        # every UI element
About this skill
What does the vision-tools skill do?

Local vision CLIs: glance (describe/ask/OCR an image), ground (locate a target, pixel box), detect (element inventory), trace (image to SVG geometry). Use for any task involving an image — questions, text, locating elements, comparing, rebuilding as HTML/SVG — and to re-check an image yourself when a description you were given lacks a detail.

How do I install it?

Run `npx skills add Anionex/codex-vision-proxy --skill vision-tools --agent claude-code` — it drops the skill into your project so the agent can pick it up. Swap the --agent value for codex, cursor or copilot if you use one of those.

Where does this skill come from?

From Anionex/codex-vision-proxy, a repository with 279 stars. We read it straight from the repository tree rather than a submitted listing, so what you see here is what is actually published.

Is a popular skill a good skill?

Not necessarily. Stars measure attention, not adoption — a repository can trend for a week and be abandoned. That is why we show the weekly change from our own snapshots next to the total, instead of a single flattering number.

Keep going