iPhoneAIExplainer

What the Talk to My Storage assistant does in DeDup 1.0.1 on iPhone

Rahul Pahuja·October 17, 2026·3 min read

Talk to My Storage is a chat screen in DeDup 1.0.1 on iPhone. You type or say a question about your photos and videos, and it replies with a list, a count, or a short canned answer. The dashboard card calls it an "AI ASSISTANT". In the code, it's a set of keyword rules.

What it's built on

The assistant lowercases your message and looks for words such as "largest", "how many", "oldest" or "video". Each match maps to a fixed kind of answer. We found no language model in the assistant code, and no use of Apple's FoundationModels or NaturalLanguage frameworks. The code's own description is "rule-based, on-device storage assistant".

Two Apple frameworks sit around it. Speech turns your voice into text. The speech synthesizer reads replies aloud, and that switch starts off.

What it can answer

  • Lists. Ask for your largest, smallest, newest or oldest photos, videos or screenshots. A number in your question sets the list length, from 1 to 50. Without a number, it shows 7.
  • Counts. Ask "how many photos" and it replies with the count and the total size.
  • Thumbnails. A list reply also shows a strip of the items. Tap it to open a grid, select items, and tap Move to Trash. That moves them to DeDup's Trash. It doesn't delete them. If you're signed out as a guest, DeDup shows a sign-in prompt instead.
  • Everything else. Greetings, "what can you do", questions about duplicates, privacy or speed get written replies. A question about duplicates gets pointed to the Scan tab; the assistant doesn't list duplicates itself.

The dashboard card says "Search, manage & delete by voice". In the code, voice only fills in the question. Moving anything to Trash is still a tap.

Where the processing happens

The code that matches your words and builds the reply makes no network requests. Answers come from the photo index already on the phone. Your chat history, up to the last 200 messages, is saved in the app's storage on the phone, and the trash-can button in the top bar clears it.

Voice is less clear-cut. The code asks for on-device recognition only when iOS says the recognizer supports it. When it doesn't, the code doesn't force it, so we can't say where that speech is processed.

Separately, opening the screen sends a usage event (the feature name and time spent) to Firebase Analytics. The assistant code doesn't log what you type.

When it can't answer

  • No photo library access: "I need access to your photo library to answer that. Allow it from the Dashboard."
  • A scan is running: "A scan is running right now — ask me again as soon as it finishes."
  • Microphone or Speech Recognition not allowed: a message to allow both in Settings.
  • Speech recognition unavailable: "Speech recognition isn't available right now."
  • A question it has no rule for: a polite reply that it's built for storage, duplicates and cleanup.
  • Documents, downloads or music: it explains that iOS only lets it see your Photos library and contacts.

If no scan has run yet, a storage question first indexes your library, then answers.

Scope of this post

Checked against: DeDup 1.0.1 source code (iOS).

Not tested on a device: the chat screen, voice input, spoken replies, the sign-in prompt, and where iOS processes speech when on-device recognition isn't supported. All of it was read in the source, not run.