{"id":50696468,"url":"https://github.com/skyllc-ai/ultrafastfilesearch","last_synced_at":"2026-06-30T02:02:28.530Z","repository":{"id":252345009,"uuid":"840153813","full_name":"skyllc-ai/UltraFastFileSearch","owner":"skyllc-ai","description":"Ultra-fast file search for Windows using NTFS MFT","archived":false,"fork":false,"pushed_at":"2026-06-05T15:12:40.000Z","size":257840,"stargazers_count":10,"open_issues_count":12,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2026-06-05T15:18:14.052Z","etag":null,"topics":["agent-tools","cli","command-line-tool","desktop-search","developer-tools","everything-alternative","file-search","filesystem","forensics","indexing","mcp","mft","model-context-protocol","ntfs","rust","search-engine","sysadmin","usn-journal","windows","windows-search"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/skyllc-ai.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":"CITATION.cff","codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"open_collective":"uffs-search","ko_fi":"ufffssearch"}},"created_at":"2024-08-09T04:54:03.000Z","updated_at":"2026-06-05T15:12:44.000Z","dependencies_parsed_at":"2024-08-09T06:46:08.416Z","dependency_job_id":null,"html_url":"https://github.com/skyllc-ai/UltraFastFileSearch","commit_stats":null,"previous_names":["githubrobbi/ultrafastfilesearch-rust","githubrobbi/ultrafastfilesearch"],"tags_count":98,"template":false,"template_full_name":null,"purl":"pkg:github/skyllc-ai/UltraFastFileSearch","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skyllc-ai%2FUltraFastFileSearch","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skyllc-ai%2FUltraFastFileSearch/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skyllc-ai%2FUltraFastFileSearch/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skyllc-ai%2FUltraFastFileSearch/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/skyllc-ai","download_url":"https://codeload.github.com/skyllc-ai/UltraFastFileSearch/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/skyllc-ai%2FUltraFastFileSearch/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34095247,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-09T02:00:06.510Z","response_time":63,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent-tools","cli","command-line-tool","desktop-search","developer-tools","everything-alternative","file-search","filesystem","forensics","indexing","mcp","mft","model-context-protocol","ntfs","rust","search-engine","sysadmin","usn-journal","windows","windows-search"],"created_at":"2026-06-09T07:00:25.257Z","updated_at":"2026-06-30T02:02:28.523Z","avatar_url":"https://github.com/skyllc-ai.png","language":"Rust","funding_links":["https://opencollective.com/uffs-search","https://ko-fi.com/ufffssearch","https://ko-fi.com/uffssearch"],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/brand/uffs-wordmark.png\" alt=\"UFFS — Ultra Fast File Search\"\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cb\u003eWire-speed search across your NTFS drives. No indexing. No waiting.\u003c/b\u003e\u003cbr\u003e\n  \u003csub\u003eA Rust-native engine by \u003ca href=\"https://github.com/skyllc-ai\"\u003eSky, LLC\u003c/a\u003e — open source, MPL-2.0.\u003c/sub\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/skyllc-ai/UltraFastFileSearch/actions/workflows/pr-fast.yml\"\u003e\u003cimg src=\"https://img.shields.io/github/actions/workflow/status/skyllc-ai/UltraFastFileSearch/pr-fast.yml?branch=main\u0026label=CI\" alt=\"CI\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/skyllc-ai/UltraFastFileSearch/releases/latest\"\u003e\u003cimg src=\"https://img.shields.io/github/v/release/skyllc-ai/UltraFastFileSearch?label=release\" alt=\"Release\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/skyllc-ai/UltraFastFileSearch/releases/latest\"\u003e\u003cimg src=\"https://img.shields.io/github/downloads/skyllc-ai/UltraFastFileSearch/total?label=downloads\" alt=\"Total Downloads\"\u003e\u003c/a\u003e\n  \u003ca href=\"LICENSE\"\u003e\u003cimg src=\"https://img.shields.io/badge/License-MPL%202.0-brightgreen.svg\" alt=\"License: MPL 2.0\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://github.com/skyllc-ai/UltraFastFileSearch/releases/latest\"\u003e\u003cimg src=\"https://img.shields.io/badge/platform-Windows-blue.svg\" alt=\"Platform: Windows\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://opencollective.com/uffs-search\"\u003e\u003cimg src=\"https://img.shields.io/badge/Sponsor-Open%20Collective-3385FF?logo=opencollective\u0026logoColor=white\" alt=\"Sponsor on Open Collective\"\u003e\u003c/a\u003e\n  \u003ca href=\"https://ko-fi.com/uffssearch\"\u003e\u003cimg src=\"https://img.shields.io/badge/Tip-Ko--fi-FF5E5B?logo=ko-fi\u0026logoColor=white\" alt=\"Tip on Ko-fi\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\n**A benchmark-driven NTFS search engine for Windows.** UFFS reads the Master File Table directly, builds a compact persisted index, and keeps large NTFS estates searchable through a background daemon.\n\n```powershell\nwinget install SkyLLC.UFFS    # Windows · then open a new terminal · full install options ↓\n```\n\n\u003e Proven on a real 7-drive, 25.9M-record Windows system; scale-ceiling tested to **100.4M records** with offline MFT clones (v0.5.4 baseline; v0.5.120 current):\n\u003e - **68.5 s COLD** — raw MFT read + compact index build (v0.5.71, flat ± 4 % vs v0.5.4)\n\u003e - **5.7 s WARM CACHE** — restart from serialized cache (v0.5.62/v0.5.71, **−17 %** vs v0.5.4)\n\u003e - **0–3 ms daemon-side** for targeted queries — exact/prefix/ext/substring, unchanged from v0.5.4\n\u003e - **17–39 ms CLI end-to-end** for targeted single-drive queries on v0.5.120 (Windows process spawn + query; v0.5.71 measured 29–32 ms)\n\u003e - **vs Everything on v0.5.120**: UFFS wins **30/30 head-to-head cells** at p50 across four drives + the combined index, median ratio **0.36× (~2.8× faster)** — see the [**benchmark hub**](docs/benchmarks/) and the [full v0.5.120 report](docs/benchmarks/2026-06-v0.5.120-vs-everything.md)\n\nUFFS is built for **exact filename, path, and metadata search** at scales where directory walking, shell search, and some automation surfaces become the bottleneck. It is open source, written in Rust, and designed first for deterministic local search; CLI, TUI, API, and MCP are all interfaces on top of the same engine.\n\n\u003e An open-source NTFS search engine for Windows power users, developers, IT teams, and investigations-style workflows.\n\n📖 **[Full User Manual](docs/user-manual/index.md)** — installation, tutorials, filters, daemon, TUI, MCP integration, and more.\n\n\u003e **Open source, forever.** The UFFS platform — engine, daemon, CLI, and MCP server — is licensed under the [Mozilla Public License 2.0](LICENSE). Code released as part of UFFS Core will never be made less open. Commercial products and enterprise offerings are built on top of the open platform, not by restricting it.\n\u003e\n\u003e 💛 No telemetry, no paywall. If UFFS earns a place in your workflow, sponsorship funds the next thing it needs — starting with a Windows code-signing certificate. **[Support UFFS ↓](#support-uffs)**\n\n---\n\n## Why UFFS?\n\n- ⚡ **100M-record proven scale** — measured from 25.9M across 7 drives up to 100.4M across 16 drives\n- 🚀 **Cold / warm / hot architecture** — build once from raw MFT, restart fast from cache, answer hot queries from memory\n- 🔍 **40+ filters** — size, date, extension, type, attributes, path length, tree size, regex\n- 🧩 **One engine, multiple interfaces** — CLI, TUI, daemon, API, and MCP share the same index\n- 🧭 **Deterministic local scope** — built for exact NTFS filename/path/metadata search, not fuzzy ranking\n- 🔒 **No telemetry, fully local** — UFFS makes no outbound network calls; your index and queries never leave your machine (the optional MCP gateway binds a local-only port you explicitly enable)\n- 🖥️ **Cross-platform offline analysis** — live NTFS on Windows; offline MFT analysis on macOS and Linux\n\n---\n\n## See it in action\n\nEvery clip runs the **real binary** against real NTFS data with unedited timings and result counts — captured with the reproducible [demo kit](scripts/dev/demo/README.md).\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/demo/uffs-tui-short.gif\" alt=\"UFFS TUI: unzip, run uffs-tui, and browse your real NTFS drives against a hot daemon in seconds.\" width=\"900\"\u003e\u003cbr\u003e\n  \u003csub\u003e\u003cb\u003eTUI\u003c/b\u003e — unzip, run \u003ccode\u003euffs-tui\u003c/code\u003e, and browse your own drives in seconds. \u003ca href=\"assets/demo/uffs-tui.gif\"\u003eFull reel\u003c/a\u003e.\u003c/sub\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/demo/uffs-cli-short.gif\" alt=\"UFFS CLI: real searches, filters, and aggregations across 25.9M indexed files with measured latency.\" width=\"900\"\u003e\u003cbr\u003e\n  \u003csub\u003e\u003cb\u003eCLI\u003c/b\u003e — real commands, real result counts, real measured latency on a hot daemon. \u003ca href=\"assets/demo/uffs-cli.gif\"\u003eFull 9-step reel\u003c/a\u003e.\u003c/sub\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"assets/demo/uffs-mcp-claude.gif\" alt=\"Claude using the UFFS MCP server to find the largest files untouched in over a year — 26M+ records scanned in under 200 ms on a hot daemon, one tool call.\" width=\"900\"\u003e\u003cbr\u003e\n  \u003csub\u003e\u003cb\u003eMCP\u003c/b\u003e — one question to Claude, one UFFS tool call: 26M+ records scanned in under 200 ms (hot daemon), and the reply cites the measured query time. Deterministic search underneath, MCP on top.\u003c/sub\u003e\n\u003c/p\u003e\n\n---\n\n## Benchmark snapshot (v0.5.120 · June 2026)\n\n📖 **The story behind these numbers:** [*I benchmarked my Rust file search engine against Everything until I ran out of excuses*](https://uffs.io/blog/benchmarking-against-everything/) — the methodology I had to fix first, the bulk-export workload Everything's CLI can't run, and the two regressions published anyway.\n\nMeasured 2026-06-11 on AMD Ryzen 9 3900XT, 64 GB RAM, Windows 11 Pro 24H2 — cross-tool on four NTFS volumes (C/D/F/G, 12.8 M records, the Everything-RAM-budget-negotiated set), full-scan on all seven (25.9 M records; that workload is UFFS-only, so the negotiation doesn't constrain it). Raw data: [`cross-tool-summary.csv`](docs/benchmarks/raw/2026-06-v0.5.120_cross-tool-summary.csv) · [`full-scan-all-drives.csv`](docs/benchmarks/raw/2026-06-v0.5.120_full-scan-all-drives.csv). Publication-grade report: [**docs/benchmarks/**](docs/benchmarks/).\n\n**vs the competition** (10 rounds per cell, p50, file sink):\n\n- **30/30 head-to-head cells faster than Everything** — median ratio **0.36× (~2.8× faster)** across C/D/F/G + the combined index; every cell from the April snapshot improved (median −33%)\n- **Full-scan export across all 7 drives: 23.3 M rows → CSV in 12.0 s ≈ 1.95 M rec/s** (+13% throughput vs April at the same scale) — a workload Everything's CLI export cannot run (~2 GB IPC ceiling)\n- **180×–3 400× vs the UFFS C++ reference** on targeted queries (daemon HOT vs per-invocation MFT re-read); 6.6× on combined full-scan\n\n**Latency shape** (v0.5.120):\n\n- **0–3 ms daemon-side** for targeted queries (exact, prefix, ext, substring, combined) — unchanged since v0.5.4\n- **17–39 ms CLI end-to-end** single-drive (the Windows process-spawn floor + query); 21–108 ms across the combined four-drive index\n\n**Phase costs** — from earlier captures, version-tagged, not re-measured on v0.5.120:\n\n| Phase | What happens | ALL 7 drives (v0.5.71) | Single NVMe (v0.5.4) |\n|-------|--------------|-----------------------:|---------------------:|\n| **COLD** | Raw MFT read, parse, compact index build, cache write | 68.5 s | 7.7 s |\n| **WARM CACHE** | Daemon restart + serialized cache load | **5.7 s** | 6.4 s |\n| **HOT (`*` top-100)** | Full-scan across all drives with `--limit 100` | **1 112 ms** e2e¹ | 27 ms |\n| **HOT (targeted)** | `notepad.exe` / `win*` / `*.dll` / `config` etc. | **29–32 ms** CLI e2e | 9–10 ms |\n\n¹ The `*` top-100 path regressed from the v0.5.4 163 ms figure after the Phase 2 sort rewrite ([raw log](docs/benchmarks/raw/2026-04-v0.5.66_full-benchmark-suite.txt), n=30, StdDev 21 ms); daemon-side is 1 081 ms — the CLI tax is negligible here. Tracked in the [archived April report](docs/benchmarks/archive/2026-04-v0.5.66-vs-everything-and-cpp.md#known-regressions).\n\n**Scale ceiling:** **100.4 M records** tested with offline MFT clones (v0.5.4 capture, not re-verified since) — targeted queries stayed at 11–13 ms e2e.\n\n\u003e 📖 **[Benchmark hub](docs/benchmarks/)** — dated competitive-benchmark reports, fairness methodology, archive of prior versions, reproduction scripts.\n\u003e 📖 **[Full benchmark data](docs/user-manual/performance.md)** — methodology, per-drive tables, interactive search percentiles, bulk retrieval, scale ceiling, and caveats.\n\n---\n\n## Download \u0026 Install\n\n\u003e **[⬇ Latest Release — GitHub Releases tab](https://github.com/skyllc-ai/UltraFastFileSearch/releases/latest)**\n\nEach release ships pre-built binaries, a `CHECKSUMS.txt` (SHA256), per-crate SBOMs (CycloneDX), and SLSA build-provenance attestations — no build toolchain needed.\n\n| Platform | Download | Notes |\n|---|---|---|\n| **Windows x64** | [`uffs-windows-x64.zip`](https://github.com/skyllc-ai/UltraFastFileSearch/releases/latest) | CLI + daemon + Access Broker + MCP + MFT tools + `uffs-tui` demo. Recommended. |\n| **macOS Apple Silicon** | [`uffs-macos-arm64.zip`](https://github.com/skyllc-ai/UltraFastFileSearch/releases/latest) | Offline MFT analysis only. Includes `UFFS.app` bundle + `uffs-tui` demo. |\n| **Linux x64** | [`uffs-linux-x64.zip`](https://github.com/skyllc-ai/UltraFastFileSearch/releases/latest) | Offline MFT analysis only. Includes `install.sh` + `uffs-tui` demo. |\n\n\u003e 📦 **Three tiers per platform** — `…-min.zip` (just `uffs` + `uffsd` + the `uffs-tui` demo, for CI/scripting), the bare `….zip` (**recommended**: adds MCP + MFT tooling + docs), and `…-full.zip` (adds the `uffs-diag` diagnostic tools). Every tier bundles the free `uffs-tui` demo.\n\n\u003e 🖥️ **Fastest way to try it — no CLI required.** Unzip any tier and run **`uffs-tui`**: the daemon auto-starts and you're browsing your own drives in a UI within seconds. The bundled TUI is the free demo (capped result counts, exports disabled — see `DEMO-LICENSE.txt`); full TUI/GUI are commercial.\n\n**Windows quick-install (one command) — via [WinGet](https://learn.microsoft.com/windows/package-manager/):**\n```powershell\nwinget install SkyLLC.UFFS\n# If the msstore source errors on your machine, pin the source:\n#   winget install -e --id SkyLLC.UFFS --source winget\n```\n\n\u003e ⚠️ **Open a new terminal after installing** — WinGet updates `PATH`, but an already-open shell won't see `uffs` until you start a fresh one.\n\nOr grab the ZIP above, extract it anywhere, add the folder to PATH, then (in a new terminal):\n```powershell\nuffs --version\n```\n\n\u003e 🔓 **Binaries aren't code-signed yet.** Windows SmartScreen and the UAC prompt will show **\"Publisher: Unknown\"** — that's expected, not a compromise. A code-signing certificate is the **first line item sponsorships fund** ([Support UFFS ↓](#support-uffs)). Until then, the published `CHECKSUMS.txt` and SLSA provenance below are how you verify a download is genuine.\n\n**Verify the download:**\n```bash\n# SHA256 checksum\nsha256sum -c CHECKSUMS.txt\n\n# SLSA build-provenance attestation (proves the binary came from this exact workflow run)\ngh attestation verify uffs-windows-x64.exe --owner skyllc-ai\n```\n\n**Build from source** (contributors / nightly development only):\n```bash\n# Requires Rust nightly — channel is pinned in rust-toolchain.toml\ncargo build --release\n```\n\n\u003e 📖 **[Full installation guide](docs/user-manual/installation.md)** — WinGet, PATH setup, daemon autostart, Scoop (coming)\n\n\u003e 🖥️ **Prefer a UI?** The free **`uffs-tui` demo is bundled in every release ZIP** above — just run `uffs-tui`. Standalone demo builds of the TUI **and GUI** (macOS, Linux, Windows) also live at **[uffs-demo/releases](https://github.com/githubrobbi/uffs-demo/releases/latest)** — limited result counts, exports disabled. They drive this same open-source daemon. Full versions are commercial (see [Maintainership \u0026 Commercial](#maintainership--commercial)).\n\n---\n\n## Updating\n\nUFFS updates itself — one command keeps the whole install current:\n\n```bash\nuffs --update          # update to the latest release if needed (no-op if current)\nuffs --update check    # is a new release available? (non-mutating)\n```\n\nIt downloads, SHA-256-verifies, and atomically swaps every core binary\n(journaled, with auto-rollback). It reconciles **any** starting state to a\ncomplete latest install — behind, version-skewed, or even missing a binary — and\ndoes nothing when you're already current.\n\n```bash\nuffs --update doctor                    # health-check the install\nuffs --update repair                    # diagnose + self-heal\nuffs --update apply --version v0.6.5    # pin / roll back to a specific release\n```\n\n\u003e **WinGet installs:** prefer `uffs --update` here too. `winget upgrade\n\u003e SkyLLC.UFFS` can fail with `remove_all: Access is denied` — the running\n\u003e daemon and broker hold open the very binaries WinGet tries to replace.\n\u003e `uffs --update` stops those services first, then swaps, so it's the reliable\n\u003e path. (If you do run `winget upgrade`, stop UFFS first — elevated\n\u003e `uffs --daemon stop` + `uffs-broker --stop`.)\n\n\u003e 📖 **[Full update guide](docs/user-manual/updating.md)** — every action, version pinning/rollback, the health check, and edge cases.\n\n---\n\n## Quick Start\n\n\u003e **Windows elevation — three ways.** Reading the live MFT needs Administrator. Easiest: install the **Access Broker** once (`uffs-broker --install`, from an elevated shell) and every later non-elevated `uffs` search runs with **no UAC prompt**, surviving reboots. Otherwise, run from an **elevated** terminal, or let the first search offer a one-time `uffs --daemon start --elevate` (a single UAC prompt). macOS/Linux offline analysis needs no elevation.\n\n```bash\n# One-time (elevated): install the Access Broker → no UAC on any later search\nuffs-broker --install\n\n# Search all drives (with the broker installed this runs non-elevated;\n# otherwise the daemon auto-starts on first query in an elevated shell)\nuffs \"*.rs\"\n\n# Search a specific drive\nuffs \"*.txt\" --drive C\n\n# Filter by size, date, type\nuffs \"*.log\" --min-size 100MB --newer 7d --files-only\n\n# macOS/Linux: search offline MFT captures\nuffs \"*.txt\" --data-dir ~/uffs_data\n\n# Daemon management ( `--\u003ccommand\u003e` = management; bare words are searches )\nuffs --daemon status\nuffs --daemon restart\n\n# Memory tiering — operator-driven controls (Phase 8)\nuffs --daemon status_drives               # per-drive tier + telemetry table\nuffs --daemon hibernate                   # demote every drive to Cold (free RAM)\nuffs --daemon preload C --pin-minutes 60  # pin a hot drive in RAM\nuffs --daemon forget C --force            # evict + delete on-disk caches\n```\n\n\u003e 📖 **[Installation](docs/user-manual/installation.md)** · **[5-minute tutorial](docs/user-manual/getting-started.md)** · **[CLI reference](docs/user-manual/cli-overview.md)** · **[40+ filters](docs/user-manual/filters.md)**\n\n### Memory tiering at a glance\n\nThe daemon keeps each drive's compact index in one of four tiers, demoted automatically by an idle TTL ladder + memory-pressure cascade and promoted on first search:\n\n| Tier | RAM cost | Source-of-truth | When |\n|---|---|---|---|\n| **Hot** | full body + bloom + trie | live in RAM | actively pinned (post-`preload`) or recently queried |\n| **Warm** | full body + bloom + trie | live in RAM | default after load; ready for any search |\n| **Parked** | bloom + trie only | live in RAM | idle past warm TTL; can answer \"definitely not on this drive\" without re-promote |\n| **Cold** | (nothing in RAM) | encrypted compact cache on disk | idle past parked TTL or operator-hibernated; re-promote on next search |\n\nOperator commands let you tune this manually for known workload shapes — `preload` pins a search-heavy drive against demote, `hibernate` frees RAM during long idle stretches, `forget` permanently evicts a drive plus its on-disk caches, and `status_drives` surfaces the live tier + pin + query-rate snapshot.\n\n\u003e 📖 **[Memory-tiering Windows-host runbook](docs/architecture/memory-tiering-windows-host-validation.md)** — what to run on a multi-drive Windows box to validate the operator surface.\n\n---\n\n## Support UFFS\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://ko-fi.com/uffssearch\"\u003e\u003cimg src=\"https://ko-fi.com/img/githubbutton_sm.svg\" alt=\"Tip on Ko-fi\" height=\"38\"\u003e\u003c/a\u003e\n  \u0026nbsp;\u0026nbsp;\n  \u003ca href=\"https://opencollective.com/uffs-search\"\u003e\u003cimg src=\"https://opencollective.com/uffs-search/donate/button@2x.png?color=blue\" alt=\"Donate on Open Collective\" height=\"38\"\u003e\u003c/a\u003e\n\u003c/p\u003e\n\nUFFS is free, MPL-2.0, and stays that way — **no telemetry, no accounts, no paywalled core, no outbound network calls.** If it earns a place in your workflow, sponsorship funds the work that keeps it improving:\n\n- 🔏 **A Windows code-signing certificate** — the top priority. It removes the SmartScreen and UAC **\"Publisher: Unknown\"** warning that every user sees on install today, the single biggest trust hurdle for a Windows tool.\n- 📊 **Benchmark hardware** — the multi-drive, multi-TB rig behind the published numbers.\n- 📦 **Release engineering \u0026 packaging** — signed builds, WinGet/Scoop, docs, and onboarding.\n\n| Supporter | Where | Best for |\n|---|---|---|\n| 💛 **One-time tip** | [Ko-fi](https://ko-fi.com/uffssearch) | \"this saved me an afternoon\" |\n| 🏢 **Companies** (invoice / receipt via Sky, LLC) | [Open Collective](https://opencollective.com/uffs-search) | expensing it as a tool |\n| 🔁 **Recurring (individuals)** | GitHub Sponsors — *enrolling* | following the roadmap |\n\nThe **\"Sponsor\"** button at the top of this repo lists every live channel. For custom arrangements, enterprise pilots, or partnership inquiries: [`partnerships@uffs.io`](mailto:partnerships@uffs.io).\n\n---\n\n## How It Works\n\n1. **Read** — Opens the raw NTFS volume and reads the MFT sequentially using IOCP with a sliding window. Bitmap skip eliminates 40–55% of I/O by skipping deleted records.\n2. **Parse** — Each I/O buffer is parsed inline into a compact 224-byte `FileRecord` — zero intermediate copies, zero per-record heap allocations. On NVMe, Rayon parallelizes parsing across all CPU cores.\n3. **Index** — Records are stored in a compact in-memory index with extension and trigram accelerators for fast targeted queries. DataFrame/export paths are built on top of the same core engine.\n4. **Serve** — A background daemon holds the index in memory and answers queries via IPC. CLI, TUI, and MCP clients all share the same daemon.\n\n\u003e 📖 **[Architecture deep-dive](docs/architecture/engine/01-overview.md)** — 11 documents covering every subsystem.\n\n---\n\n## Architecture\n\n| Crate | Role |\n|-------|------|\n| `uffs-mft` | Direct MFT reading → compact in-memory index ([📖](crates/uffs-mft/README.md)) |\n| `uffs-core` | Query engine (Polars lazy API) |\n| `uffs-daemon` | Background index server ([📖](docs/user-manual/daemon.md)) |\n| `uffs-cli` | Command-line interface ([📖](docs/user-manual/cli-overview.md)) |\n| `uffs-mcp` | MCP server for AI agents ([📖](docs/user-manual/mcp.md)) |\n| `uffs-polars` | Polars compilation-isolation facade |\n| `uffs-client` | IPC client library |\n\n---\n\n## Alternatives \u0026 Landscape\n\nUFFS was built after the author wrote [an earlier C++ MFT search tool](https://github.com/githubrobbi/Ultra-Fast-File-Search) and then rebuilt it from scratch in Rust for safety, performance, and maintainability.\n\n### Comparison scope\n\nUFFS competes first in the **local NTFS filename/path/metadata** lane: exact search across large Windows filesystems with deterministic scope and a reusable in-memory daemon.\n\nWe do **not** collapse all search products into one \"fastest search tool\" claim. The following are different benchmark classes and should be compared separately:\n\n1. **Readiness** — cold build, warm restart, and hot query\n2. **Interactive search** — end-to-end top-N query latency\n3. **Bulk retrieval** — time to stream or export large result sets\n4. **Scale ceiling** — largest corpus completed without timeout, crash, or incorrect results\n\nThat distinction matters because a tool can be excellent at interactive top-N search and still hit a wall during full-result export or very large automation workloads.\n\nThe older C++ implementation remains useful as a parity and regression baseline, but it is **not** the headline market benchmark for the Rust engine. Public cross-tool comparisons should be run against the current Rust engine with exact versions, settings, workloads, and raw results published alongside the charts.\n\n### How UFFS compares to other file search tools\n\n| Category | Tools | How UFFS differs |\n|----------|-------|-----------------|\n| **Instant NTFS filename search** | [Everything (voidtools)](https://www.voidtools.com/), [WizFile](https://antibody-software.com/wizfile/), [WizTree](https://www.diskanalyzer.com/), [UltraSearch (JAM Software)](https://www.jam-software.com/ultrasearch), [SwiftSearch](https://sourceforge.net/projects/swiftsearch/), [Locate32](https://locate32.cogit.net/) | Open-source Rust engine; 100M-record proven scale; compact index + daemon + CLI + TUI + MCP; 40+ filters; forensic mode; cross-platform offline analysis |\n| **Content / regex search** | [FileLocator Pro / Agent Ransack](https://www.mythicsoft.com/filelocatorpro/), [grepWin](https://tools.stefankueng.com/grepWin.html), [AstroGrep](http://astrogrep.sourceforge.net/), [dnGrep](https://dngrep.github.io/), [SearchMyFiles (NirSoft)](https://www.nirsoft.net/utils/search_my_files.html) | UFFS focuses on MFT-level metadata speed; pairs well with `ripgrep` for content |\n| **Enterprise / eDiscovery** | [X1 Search](https://www.x1.com/), [dtSearch](https://www.dtsearch.com/), [Copernic](https://copernic.com/) | UFFS is a specialist local-NTFS tool, not a multi-repository governance platform |\n| **Developer CLI** | [fd](https://github.com/sharkdp/fd), [ripgrep](https://github.com/BurntSushi/ripgrep), [fzf](https://github.com/junegunn/fzf), [GNU find](https://www.gnu.org/software/findutils/) | UFFS reads the MFT instead of walking directories — orders of magnitude faster for whole-drive search |\n| **Forensic MFT tools** | [MFTECmd (Eric Zimmerman)](https://ericzimmerman.github.io/), [analyzeMFT](https://github.com/dkovar/analyzeMFT) | UFFS is an interactive search engine, not a one-shot parser; includes daemon, TUI, and live queries |\n| **Linux / macOS** | [FSearch](https://github.com/cboxdoerfer/fsearch), [Recoll](https://www.recoll.org/), [DocFetcher](https://docfetcher.sourceforge.net/), [Catfish](https://docs.xfce.org/apps/catfish/start), [Find Any File](https://findanyfile.app/), [HoudahSpot](https://www.houdah.com/houdahSpot/) | UFFS supports offline MFT analysis on macOS/Linux via cached index files |\n\n\u003e 📖 **[Full competitor landscape analysis](docs/mft_competitor_landscape_deep_research.md)** — 12 tools, corporate adoption data, market positioning.\n\n---\n\n## Requirements\n\n- **Windows** for live NTFS MFT reading. Administrator is needed to read the MFT — but only **once**: install the Access Broker (`uffs-broker --install`) and every later search runs **non-elevated with no UAC**. Without the broker, run from an elevated shell (or accept a per-session UAC prompt).\n- **macOS / Linux** for offline MFT analysis (no admin needed)\n- **Rust nightly** (Edition 2024) to build from source — channel pinned in `rust-toolchain.toml`; the workspace has no stable MSRV (see CONTRIBUTING.md → \"Toolchain policy\")\n\n---\n\n## Documentation\n\n| Topic | Link |\n|-------|------|\n| Installation | [docs/user-manual/installation.md](docs/user-manual/installation.md) |\n| Updating (self-update) | [docs/user-manual/updating.md](docs/user-manual/updating.md) |\n| Getting started (5 min) | [docs/user-manual/getting-started.md](docs/user-manual/getting-started.md) |\n| CLI overview \u0026 examples | [docs/user-manual/cli-overview.md](docs/user-manual/cli-overview.md) |\n| 40+ search filters | [docs/user-manual/filters.md](docs/user-manual/filters.md) |\n| Daemon management | [docs/user-manual/daemon.md](docs/user-manual/daemon.md) |\n| TUI interactive search | [docs/user-manual/tui-search-box.md](docs/user-manual/tui-search-box.md) |\n| MCP server (AI agents) | [docs/user-manual/mcp.md](docs/user-manual/mcp.md) |\n| Performance \u0026 benchmarks | [docs/user-manual/performance.md](docs/user-manual/performance.md) |\n| Cache \u0026 data sources | [docs/user-manual/cache-and-data.md](docs/user-manual/cache-and-data.md) |\n| Architecture (11 docs) | [docs/architecture/engine/](docs/architecture/engine/) |\n| FAQ | [docs/user-manual/faq.md](docs/user-manual/faq.md) |\n| Troubleshooting | [docs/user-manual/troubleshooting.md](docs/user-manual/troubleshooting.md) |\n\n---\n\n## Contributing\n\nStart with [CONTRIBUTING.md](CONTRIBUTING.md) for the pinned toolchain, `just`/`cargo` workflows, and Windows/Admin caveats. For the broader docs map, see [docs/README.md](docs/README.md) and [docs/dev/README.md](docs/dev/README.md).\n\n---\n\n## License \u0026 Trademarks\n\n**Code.** UFFS is licensed under the [Mozilla Public License 2.0 (MPL-2.0)](LICENSE).\n\nYou can use, modify, and distribute UFFS freely. If you modify MPL-covered source files and distribute the result, those file-level changes must remain under MPL-2.0. Building proprietary applications on top of UFFS does not require opening your application.\n\nSee [LICENSES/MPL-2.0.txt](LICENSES/MPL-2.0.txt) for the full license text and [Mozilla's MPL FAQ](https://www.mozilla.org/en-US/MPL/2.0/FAQ/) for plain-language guidance.\n\n**Brand.** The UFFS name, the UltraFastFileSearch wordmark, and the UFFS logo are project trademarks owned by [Sky, LLC](https://github.com/skyllc-ai). Usage is governed by [TRADEMARK.md](TRADEMARK.md) — not the MPL. Linking, reviews, tutorials, and unmodified redistributions are fine without asking; forks, merchandise, and commercial use of the mark need permission first.\n\n---\n\n## Maintainership \u0026 Commercial\n\nUFFS is developed and maintained by **[Sky, LLC](https://github.com/skyllc-ai)** — a systems-engineering shop focused on high-performance Rust tooling.\n\n- **Commercial UFFS frontends** (polished GUI / premium TUI) are in development on top of this open-source engine. For waitlist or partnership inquiries: [`partnerships@uffs.io`](mailto:partnerships@uffs.io) or open a [discussion](https://github.com/skyllc-ai/UltraFastFileSearch/discussions) with the `commercial-interest` label.\n- **Hiring / collaboration.** This repository is also the public engineering portfolio of its maintainer; see the [Sky, LLC org page](https://github.com/skyllc-ai) for the full pitch and contact details.\n- **Sponsorship.** UFFS is free and MPL-2.0 forever; sponsorships fund Windows code-signing, benchmark hardware, and release engineering — see [**Support UFFS**](#support-uffs) for the channels and what they fund.\n\n## Acknowledgments\n\nUFFS benefits from the broader NTFS tooling ecosystem, including [SwiftSearch](https://sourceforge.net/projects/swiftsearch/) by wfunction. Deep competitive landscape analysis in [docs/mft_competitor_landscape_deep_research.md](docs/mft_competitor_landscape_deep_research.md).\n\n---\n\n\u003cp align=\"center\"\u003e\n  \u003csub\u003e\n    \u003cb\u003eMaintainer:\u003c/b\u003e Robert Nio ·\n    \u003cb\u003eOrganization:\u003c/b\u003e \u003ca href=\"https://github.com/skyllc-ai\"\u003eSky, LLC\u003c/a\u003e ·\n    \u003cb\u003eRepo:\u003c/b\u003e \u003ca href=\"https://github.com/skyllc-ai/UltraFastFileSearch\"\u003eskyllc-ai/UltraFastFileSearch\u003c/a\u003e\n  \u003c/sub\u003e\n\u003c/p\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskyllc-ai%2Fultrafastfilesearch","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fskyllc-ai%2Fultrafastfilesearch","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fskyllc-ai%2Fultrafastfilesearch/lists"}