Pluck is a tiny, native Mac app that removes backgrounds right on your device. No cloud, no account, no subscription — your photos stay yours.
Free & open source · macOS 26+ · MIT license

Drag the handle — this is a real result, fur and all.
Three engines
Most tools give you one model and call it a day. Pluck ships three, because pictures disagree about what "the subject" is — and sometimes the interesting question is which answer you meant.
Apple Vision lifts the framed painting — the object. Clean Cut reaches into the frame and takes the cat. Drag to compare the two answers.

Fine Edges keeps real transparency — the checkerboard shows through the glass, because glass is see-through. No other engine here does that.

Why Pluck
Matting runs on your Mac's own silicon — Apple's Vision framework or a local Core ML model. There's no account and no upload path in the app. At all.
Vision answers instantly and says so when there's no subject. Clean Cut nails hard edges and line art. Fine Edges keeps every strand of hair. Switch per photo, compare live.
Drag in, or just ⌘V. One window: your cutouts in a grid or a list, a before/after wipe beside them, export when you're done. It behaves like your other windows because it's built like them.
The same engine ships as a pluck CLI — JSON output, honest exit
codes, no GUI. Claude or any coding agent can batch a folder in one line.
The high-quality engines are an 83 MB download away, checksummed against the signed app. Update checks compare local files — they cost zero network requests.
No watermark. No "HD unlocks for $9.99/week". No trial timer. MIT-licensed — read the code, build it yourself, keep it forever.
The app
Cutouts land in a grid or a list; the inspector compares each one against its original and switches engines in place.
Privacy
A privacy promise is worth exactly what its exceptions are worth. Here are all of them — both of them:
Only when you click Download or run pluck models pull. Fetched
from this repo's GitHub Releases and verified against a checksum pinned inside
the signed app.
Off switch Doesn't happen unless you ask.
Once a day the app asks GitHub if there's a newer version. Nothing about you or your photos goes along for the ride.
Off switch Settings → General. Off means silence.
Terminal & agents
Structured output, meaningful exit codes, no GUI ever. Script it yourself, or hand the included agent skill to Claude.
pluck photo.jpg # → photo.png, background gone
pluck shots/*.jpg -o cutouts/ --json # a folder at a time, NDJSON out
pluck photo.jpg --model birefnet-lite-matting
pluck models list # what this machine can run