Skip to main content

SCM Indexes Every Photo and Video Frame on Your Mac, Fully Offline

SCM is an MIT-licensed macOS app that indexes every photo and video frame in your folders with CLIP embeddings, entirely on-device. It adds five search modes covering files, exact video timecodes, on-screen text via OCR, spoken dialogue via Whisper, and an opt-in local LLM that answers with citations. There are no accounts, no cloud uploads, and no telemetry.

On this page

Every frame becomes a searchable document

An open-source macOS app called SCM has spent the week on Hacker News for doing something quietly radical: treating every photo you own, and every frame of video inside every clip, as a first-class search target, with all of the AI running on your own machine. The project, by developer Allen Lee, is MIT-licensed, built as an Electron app with Bun, and installs through Homebrew on Apple Silicon. Its pitch line is the whole privacy policy: no accounts, no cloud, no uploads.

The engine downloads a CLIP vision model, about 435MB for the default ViT-L/14@336 configuration, once, verifies it against a checksum, and from then on everything runs offline: roughly 480 to 570 milliseconds per image on CPU, with faster SigLIP variants available as trade-offs between speed and detail.

Five search modes over your media library

The app's structure reads like a taxonomy of what makes media hard to search. Files mode ranks whole photos and videos by semantic similarity to a plain-language query. Scenes mode uses ffmpeg shot detection to break videos into segments and lands you on exact timecodes, not just the right file. OCR mode matches literal on-screen text through Tesseract across English plus 35 toggleable languages, and it keeps working even with the AI engine disabled. Dialogue mode indexes Whisper transcripts so you can retrieve a clip by the words someone spoke in it. A fifth, opt-in mode runs a local llama.cpp model, a 1.1GB Qwen3 1.7B by default, that answers questions about your library with numbered citations back to specific frames.

Housekeeping details show the same local-first discipline: files are content-hashed with SHA-256 before import so renames deduplicate cleanly, watched folders auto-import, and scene plans are cached per file so re-indexing skips what it has already processed.

Why a photo search tool made the news

The obvious question is why a media indexer drew 40 comments on Hacker News. The answer is that SCM is a working demonstration of a claim this blog keeps making: for a large class of personal AI tasks, the cloud is not actually required. Everything the app does, embedding, transcription, OCR, and even the optional chat, runs on Apple silicon with models that fit in single-digit gigabytes, and the privacy posture is not a settings toggle but an architecture. There is no server to breach because none exists.

It also lands in the same week that reporting resurfaced about what cloud agents do with personal media and contacts, which makes a tool that structurally cannot phone home feel less like a novelty and more like a category. For anyone with a decade of family video and a low tolerance for uploading it, SCM is now the reference implementation of the alternative: the search index is local, the models are local, and the only network call is the one-time model download.

CuriousLM runs supported AI models locally on your device. Try CuriousLM.