Find any file. Just describe it.

Press Ctrl twice and describe any file, like “lease from March”. Truffle finds it on this computer, on your other computers, or on a coworker's: “Dev, the signed Acme contract”. Dev just taps Send.

Use in your browser

Nothing to install. Searching photos and videos by what's in them needs the Mac app.

  1. A small button at the edge of your screen.

    Your Mac is full of files with names like Scan 3.pdf and IMG_4821.

  2. Press Ctrl twice, in any app.

    Or click the button. A search box opens.

  3. Find a document by what's in it.

    Type “the lease we signed in March”. No file name, no folder. You see why each result matched.

  4. Find photos by what's in them.

    It sees the cake and candles, and reads the card. No tags or albums.

  5. Send a whole trip to Ian.

    One sentence picks all 81 photos. 3 that look private stay out.

  6. Encrypted. Only Ian can open them.

    Our server passes them on but can't open them. They're deleted within 7 days.

  7. Find a video by what was said.

    It matches the beach and Ian's words, then opens the video right where he says them.

  8. Ask a coworker's computer.

    Pick Dev and type “the signed Acme contract”. Dev's Mac finds it. Nothing comes back until Dev says yes.

  9. Dev taps Send. It arrives encrypted.

    Only your devices can open it.

  10. Ask your own Mac from your phone.

    Out and need the lease? Your Mac finds it and sends it, encrypted. Works in your phone's browser today.

What you just saw

Files you send are encrypted. We can't open them.

Nothing to install. Searching photos and videos by what's in them needs the Mac app.

On your phone

Truffle on your phone.

Ask your computer for a file from anywhere, say yes to a coworker in one tap, and find the photos on the phone itself.

  • Ask your computer from your phone

    Out and need the lease? Ask, and your computer finds it and sends it to your phone.

  • Say yes to a coworker

    Amy asks for the March invoice. Check the file, tap Send, and your computer sends it.

  • In the next update

    Find photos and videos on your phone

    By what's in them, the words in them, the place or the date. Nothing leaves the phone unless you send it.

  • In the next update

    Send a file from Messages

    Open Truffle in the Messages app drawer, find the file and drop it into the chat.

  • Share into an ask

    From Photos, Files or Mail, pick Truffle, then who it's for. It goes as the answer to their ask.

  • On your Home Screen

    A widget shows what needs you. One tap opens it.

The iPhone and Android apps are almost ready. Until then, Truffle works in your phone's browser. Use in your browser

How it works

What stays on your Mac, and what we see.

Search runs on your computer. Our server only passes along the files you choose to send, encrypted so we can't open them.

Stayed on your Mac

Nothing sent to us

What your Mac saved about one photo

Seen
cake, candles
Text in it
“Happy birthday Mia!”

It also saves a search fingerprint: numbers your Mac uses to match what you type. They can't be turned back into the photo.

Saved only on this Mac. That's how “mia blowing out the candles” found this photo: by the sign and the candles in it, not by anyone's face.

  • the lease we signed in march
  • mia blowing out the candles
  • find all the puerto rico photos and send to ian
  • the beach clip where Ian says get out of the shot

The AI runs on your computer, using the Neural Engine on Apple silicon Macs. The search index, and what it remembers, stay there too.

Went through our server

3 encrypted sends
  • Sam → Ian81 encrypted files, sizes rounded upencrypted
  • Sam asks Dev“the signed Acme contract” · 1 file · about 1 MBencrypted
  • Sam's phone asks Sam's Mac“the signed lease” · 1 file · about 1 MBencrypted

It sees

  • who asked whom, and when
  • the words of a request, kept with it (7 days for requests between your own devices)
  • roughly how big each file is

It never sees

  • your files and their names
  • which files were found, or how many

Each file is encrypted on your computer before it leaves, so only the other person's devices can open it. We delete our copy 24 hours after it's downloaded, and never keep it longer than 7 days.

Nothing is sent without you. When someone asks for a file, you see their request and what your computer found. Nothing is sent until you tap Send. Automatic sending is off unless you turn it on for a folder.

Sensitive files always need your OK. Files with tax, bank or ID numbers are never sent automatically, even if you allowed the folder.

We don't train on your files. Truffle learns from the files you open, on your own device. Sharing data to help us improve it is off unless you turn it on.

For the technically curious
  • Each device has its own X25519 key pair. The private key never leaves the device.
  • Each file is encrypted with its own random key (XSalsa20-Poly1305, NaCl secretbox). That key is sealed to each of the recipient’s devices.
  • Sizes are padded into buckets, so the relay learns only roughly how big a file is.
  • You can compare safety codes with someone to check that a device is really theirs.
  • A device is added once, from a computer you already have, by comparing a short code. Only a computer can add more.
  • A link page comes from our server, so a server that sent a bad page could read the key in that link. That is why a link is never the default way to send.

Benchmarks

How often it finds the right file first.

How often the file you wanted comes up first. Every engine searched the same files with the same questions.

Our own benchmark, on files we generated.

64.3%

right file first, across 10,000 mixed files

1.6× as often as the next best, SQLite FTS5.

  • Truffle64.3%
  • SQLite FTS539.0%
  • FTS5 + e529.5%
  • bge-m327.8%
  • Tantivy25.0%
  • e5-small20.6%
  • ripgrep9.1%

57.5%

right file first, across 1,000,000 mixed files

1.7× as often as the next best, SQLite FTS5.

  • Truffle57.5%
  • SQLite FTS532.9%
  • Tantivy24.6%

75.0%

right file first by the words in screenshots, scans and photos of pages (10,000 files)

3× as often as the next best, macOS Spotlight.

  • Truffle75.0%
  • macOS Spotlight25.0%
  • SQLite FTS50%
  • Tantivy0%

How long a typical search takes. Shorter is faster.

2.6× faster than SQLite FTS5 at a million files.

  1. Truffle · 4,100 photos, screenshots and videos

    9.5 ms
  2. Truffle · a million files

    39 ms
  3. SQLite FTS5 · a million files

    102 ms

The bars play 15× slower than real time. Tantivy is faster (4.2 ms) because it only matches exact words. At a million files, it puts the right file first 24.6% of the time.

75.4%

In 21 languages, with 58 generated files per language, asked in that language: Truffle puts the right file first 75.4% of the time, up from 63.7% before our language work.

  1. Spanish93% (Before our language work: 89%)
  2. English90% (Before our language work: 90%)
  3. Indonesian90% (Before our language work: 70%)
  4. German86% (Before our language work: 69%)
  5. Hindi86% (Before our language work: 59%)
  6. Portuguese84% (Before our language work: 74%)
  7. Chinese80% (Before our language work: 60%)
  8. Vietnamese79% (Before our language work: 72%)
  9. Turkish77% (Before our language work: 68%)
  10. Russian77% (Before our language work: 63%)
  11. Japanese77% (Before our language work: 60%)
  12. French73% (Before our language work: 73%)
  13. Korean72% (Before our language work: 72%)
  14. Cantonese72% (Before our language work: 56%)
  15. Swahili71% (Before our language work: 50%)
  16. Marathi65% (Before our language work: 55%)
  17. Urdu65% (Before our language work: 52%)
  18. Tamil65% (Before our language work: 48%)
  19. Bangla63% (Before our language work: 50%)
  20. Arabic61% (Before our language work: 61%)
  21. Telugu61% (Before our language work: 45%)

Truffle against its own earlier version, not against other tools. Each language has 24 to 31 searches: one language shows a direction, all 21 together are the result.

More numbers
  • Searching by the exact file name, at a million files: Truffle 97.7%, Tantivy 90.9%, SQLite FTS5 79.5%.
  • Finding photos by what's in them (10,000 files): Truffle 60.1%, keyword engines 1.3%.
  • Photos, screenshots and videos by what's in them: 79.5% on 44 new searches written after the engine was tuned (our earlier engine: 13.6%). On the 260 searches it was tuned on: 63.8%, where the image model alone scores 69.6%.
  • Finding videos by what's said, heard, shown or where they were filmed (250 searches with a right answer): Truffle 58.8%, the same signals simply combined 30.4%, speech alone 7.6%, macOS Spotlight 0%. Search by what was said needs a Mac with Apple silicon.

These are our own benchmarks, run on files we generated, not on anyone's real files. Every engine searched the same files with the same questions. Nobody outside has re-run them yet.

The files: mixed sets of 10,000, 100,000 and 1,000,000 files in English and Vietnamese, including PDFs, Word and Excel files, text, receipt photos, screenshots, scans and photos. The 21-language results come from a separate run.

Speeds are typical times with the index already loaded, on one MacBook Pro with an M3 Max. Slower computers will take longer. We have not yet compared Truffle with Google Photos, Apple Photos, Google Drive or Dropbox search, so we make no claim about them.

Try it on your own files.

For you, your family, your team or your clients. Your files stay on your computer, and so does the search.

Nothing to install. Searching photos and videos by what's in them needs the Mac app.

Also forMacWindowsLinuxiPhone and Android soon