- The old idea. Our early prototype moved files by confidence: above 92% quietly, 60% to 92% after your OK, and below 60% it asked you.
- What decides now. You pick each folder’s template and when it runs: on click, daily, or as files arrive. Protected paths on the Ignore List never move, and every move can be undone.
- What stays on your Mac. Classification and OCR run on Apple’s Vision and NaturalLanguage frameworks on the device. Mint doesn’t send your files to a cloud API.
An automatic organizer should not make you wonder where a file went. In Mint, you choose the folders, their sorting method and when they run; the Ignore List lets you protect paths, and recorded moves can be undone. This post explains those boundaries and how the design changed from our earlier confidence-based prototype.
The Confidence Problem
Most file organizers go to one extreme. Either they sort everything on their own or they ask you about everything, and neither works well. A fully automatic one misfiles things until you stop trusting it. A fully manual one is a fancy file browser.
So at first we built three confidence tiers:
- Above 92%: Mint moved the file quietly.
- 60% to 92%: Mint let you know and waited for your OK.
- Below 60%: Mint flagged the file and asked you instead of guessing.
Back then we tuned these thresholds more than any other part of the app. We tested with thousands of real files, like Downloads folders full of PDFs that could be research papers, invoices or restaurant menus. They all share one extension and mean completely different things.
Mint doesn't decide by a confidence percentage any more. You decide when a folder gets organized: when you click Organize, daily at a set time, or as files arrive. The folder's template (By Type, By Date, By Source or By Topics) decides where each file goes. A file on the Ignore List as Needs Review stays where it is unless you tick it when you click Organize, and a Protected file is never moved. Every move is recorded, so you can undo it.
Four Signals, Layered by Cost
Mint reads a file in four layers, from cheapest to most expensive:
- Name and type: the file type, the words in the name and the folder it sits in. "Screenshot 2026-" is obviously a screenshot, and "Invoice_" is obviously a receipt. It's cheap and works better than you'd expect.
- Metadata: what Spotlight already knows about the file, like the site it was downloaded from, plus a PDF's title, author and keywords.
- Language: Apple's NaturalLanguage framework detects the language and picks out names of people, places and organizations.
- Image content: Apple Vision reads the text in images, like screenshots and photos of documents, and labels what's in a picture, all on the device.
The cheap layers go first, and each one has a time budget in the code: under 1 ms for name and type, under 10 ms for metadata, under 100 ms for language and under a second for OCR. If Spotlight already has a file's text, Mint skips OCR. On macOS 26 with Apple Intelligence turned on, Apple's on-device model settles the close calls, and if it isn't sure either, Mint falls back to the file type.
Earlier versions read a new file this way when it landed in a folder set to As files arrive. Now new files go through the folder's template like every other run, and the templates stick to cheap signals. By Type reads the file type, By Date the modified date, By Source the name and where the file came from, and By Topics the name, Spotlight metadata and your topic rules.
Why It Stays On-Device
We chose Apple's Vision and native language-analysis frameworks because they run entirely on your Mac.
Your documents never leave your computer, whether Mint is classifying them or running OCR on them. Mint doesn't send your files to a cloud API, and there's no data pipeline or server processing them. We set privacy as a constraint from the start, and every design decision after that had to fit inside it.
The Scheduler
You tell Mint your preferences once, and it keeps to them.
Say you set your Downloads folder to By Source, so screenshots, camera photos and AirDrop files each get their own folder. Automatic organizing only runs in folders you've set up yourself.
The main design choice here is that each folder has its own automation. For each one you pick Manually, Daily at a set time or As files arrive, and how Mint organizes it. A folder left on Manually is only organized when you click Organize.
Under the hood it's light. A daily folder runs once at the time you set, and only when it has files that have sat untouched for a while. A folder set to As files arrive is watched through macOS file events, and Mint waits until a new file has finished writing. The rest of the time Mint stays out of the way.
Learning from Corrections
When you undo or reverse something Mint did, Mint doesn't turn it into a rule on its own. Undoing a run, moving an organized file back within a week, or putting a cleaned file back from the Trash makes Mint ask whether to add those paths to the Ignore List. Nothing is added unless you say yes.
This runs on plain rules, with no machine learning or model fine-tuning. A path you add shows up in the Ignore List as Protected, where you can inspect it or take it off the list.