Quickstart
Start here. Everything else reads from what this creates.
videre scan ~/PhotosThat builds a database at ~/.videre/hashes.db describing what you have. It
does not change your photos.
It also remembers ~/Photos as your default folder, so later commands can be
run without repeating it. It says so when it happens.
Clean up duplicates
Section titled “Clean up duplicates”videre dedupe # list which copies could govidere report # ...or review them visually in a browser firstvidere dedupe | xargs trash # delete themvidere prune # tidy the database afterwardsvidere dedupe never deletes anything itself. It prints a list for you to
check. Add --similar to also flag photos and videos that merely look alike;
those are reported for review only, never included in the delete list.
Search your photos
Section titled “Search your photos”videre embed # one-time: prepares photos for searchvidere search "golden gate bridge at sunset"videre search --image reference.jpg # find photos like this oneThe first videre embed downloads about 780 MB of model data (Google’s SigLIP,
from Hugging Face; see what gets downloaded)
and takes a while on a big library. You can stop it at any point and rerun
later, and it picks up where it left off.
Find people
Section titled “Find people”videre faces # detect and group facesvidere report --faces # name the groups in your browservidere search --person "Alice"videre faces downloads about 180 MB the first time.
Every command takes --help, and Commands is the full reference
with every flag.
What needs what
Section titled “What needs what”Each of the above is a small pipeline: search needs embed first,
search --person needs faces plus naming, and prune belongs after anything
that deletes files.
Workflows has the full map, plus recipes for the common jobs and rough costs for the long ones.
Other things it can do
Section titled “Other things it can do”videre classify # tag screenshots/documents/memesvidere search --category screenshot
videre locations # group photos by placevidere search --location "Berlin"
videre fix-dates # set file dates from EXIFvidere report --all # browse the whole libraryvidere stats # what's in the libraryvidere watch ~/Photos # keep everything fresh in the backgroundWorking with other tools
Section titled “Working with other tools”videre dedupe prints one file path per line, so it pipes into anything:
videre dedupe | xargs trashvidere dedupe > to-delete.txtvidere search, videre dedupe, videre stats and videre locations accept
--json for scripting, and videre mcp exposes search and
duplicate review to AI agents over stdio:
{ "mcpServers": { "videre": { "command": "/path/to/videre", "args": ["mcp"] } }}Good to know
Section titled “Good to know”- Long jobs (
embed,faces,classify) are resumable. Ctrl-C is safe, and rerunning continues where it stopped. - Two different videre commands can run at once against the same database. Running the same command twice is refused rather than allowed to corrupt anything.
videre report --facesand--show-facesstart a local web server onlocalhost:7878. Nothing leaves your machine.- The only feature that touches the network is
videre search --location, which looks up a place name once and caches the result.