Drag to spin
On-device AI file organization

FileID

Tag, dedupe, restructure, and rename
tens of thousands of files — privately,
on hardware you own.

The six tabs

Every workflow in one window.

Library

FTS5 search over filenames + OCR. Semantic CLIP search — type "a dog at the beach" and get the photo. Thumbnail grid + preview sheet.

CLIP · FTS5 · OCR

People

Face clusters from ArcFace embeddings. Drag to merge. Name a cluster once — every AI caption uses real names from then on.

ArcFace · SCRFD

Cleanup

Duplicate groups by perceptual hash. Trashed files stay recoverable until you say otherwise. No surprises.

dHash · pHash

Deep Analyze

On-device vision-language model writes a caption and proposes a smart filename — for images, PDFs, video keyframes, doc thumbnails.

Qwen 2.5-VL · MLX / llama.cpp

Restructure

Folder reorganization with a Sankey flow diagram. Apply as shortcuts (reversible), then convert to real moves when you're happy.

Reversible · Sankey

Settings

Model downloads, GPU acceleration picker, engine info, logs, privacy controls. Hardware diagnostics for the curious.

DirectML · CUDA · CoreML · QNN
Privacy posture

100% on-device.
Zero telemetry.

FileID ships no analytics SDKs, no crash reporters, no "anonymous usage" pings. Your files never leave the machine. The only outbound traffic is downloading models from upstream HuggingFace repos when you ask for them.

  • Local SQLite WAL database in your app-support directory.
  • Models download directly from HuggingFace — FileID never redistributes weights.
  • Outbound allowlist: hardcoded hosts. Anything else fails CI.
  • Privacy gate scans every shipped binary against a 24-string deny-list before release.
CI privacy gate
0
telemetry strings detected across every published binary
24
deny-listed SDK substrings (Sentry, Datadog, Firebase, …)
1
outbound host at runtime: huggingface.co (model downloads)
$ privacy_scan --binary FileIDEngine.exe
 0 telemetry strings
 0 unauthorized hosts
 Authenticode signature valid
 gate passed
Releases

Download for your platform.

Auto-detects your CPU on Windows (x64 vs ARM64). Apple Silicon build for macOS. Linux ships a GTK4 app plus an AppImage on the releases page.

macOS

15+ · Apple Silicon

Drag to Applications. SwiftUI app + Swift engine on MLX / CoreML / Neural Engine. The canonical reference port — every tab ships end-to-end.

Or build from source — one command, every platform:

./build.sh -windows         # Windows: full fresh-install build + run
./build.sh -mac             # macOS:   build + launch
./build.sh -linux           # Linux:   GTK4 app + engine
How it's built

Two binaries. One IPC contract.
Crash isolation by design.

Same architecture as VS Code's renderer / extension-host split. A panic in ML doesn't kill the UI — the engine respawns with bounded backoff.

APP
FileID.exe / FileID.app
  • SwiftUI (macOS) · WinUI 3 (Windows) · GTK4 (Linux)
  • Verifies engine signature before spawn
  • Auto-respawns on crash (1s · 4s · 16s)
ENGINE
FileIDEngine
  • Rust (Windows · Linux) · Swift (macOS)
  • SQLite WAL · single writer
  • Scan pipeline · ML inference