001 macOS utility

grep for your screen.

Press a hotkey, type a few characters — SnapGrep finds the text on your screen, highlights every match in place, and acts on your pick.

A menu-bar utility for macOS. It reads the frontmost window — through the Accessibility API or on-device OCR — and turns everything visible into searchable tokens: URLs, file paths, IPs, phone numbers, git hashes, words, whole lines. Space, and the text you can see is text you can use.

01 How it works

Three keystrokes from seen to done.

1

Invoke

Space captures the frontmost window. The capture is shown frozen, so highlights stay true even when the live window scrolls on. widens the scope to the display or all displays.

2

Filter

Type a few characters. Fuzzy matching narrows thousands of recognized tokens to the one you mean, and every occurrence lights up in place on the screen. Free-text search covers phrases the tokenizer doesn't offer.

3

Act

copies. runs the entity's action: open the URL, reveal the path in Finder, compose mail, call the number. Grow the selection word by word when you need more than one token.

02 Entities

Every token knows what it is.

The tokenizer classifies what it reads, and each entity carries its own actions. The badge on a result tells you what you're about to act on — and how many occurrences are on screen.

url

open in browser

path

reveal in Finder

email

compose mail

phone

call

ip

copy

uuid

copy

git hash

copy

word

copy

line

ai fix — on-device cleanup of OCR artifacts, then copymacOS 26 + Apple Intelligence

Your own entities

Add regex entities with their own actions — a Jira key \b[A-Z]{2,}-\d+\b that opens https://jira.example.com/browse/{match}, or a shell command that receives the match as $SNAPGREP_MATCH, so matched text can never break out of your command.

03 Text sources

Exact when possible.
On-device always.

[ax]

Accessibility

For the window scope, SnapGrep first reads the app's real text buffer through the Accessibility API — the same channel screen readers use. Exact text, exact positions, zero recognition errors.

[ocr]

Vision OCR

Apps that expose no text buffer — some terminals, images, video, remote screens — fall back automatically to Apple's Vision framework. The status line always shows which source served the scan.

Recognition runs fully on-device. Screen content never leaves your Mac — there are no external providers and no network calls in the pipeline.

04 Keyboard

Hands stay on the keys.

Every step of the flow — capture, search, select, act — is a keystroke. The mouse is never required.

Spaceinvoke · press again to dismiss
typefuzzy-filter recognized tokens
select match — highlighted on screen
copy to clipboard and dismiss
/ run the entity's first / second action
/ grow / shrink selection, word by word
select the whole paragraph
cycle scope: window → display → all displays
Rrescan when content moved on
dismiss

Get SnapGrep.

SnapGrep is in private beta for macOS 15 and newer. A notarized public release is in preparation — ask for a build and it lands in your inbox.

macOS 15+ · Screen Recording permission · Accessibility optional, for exact text