Scour Alpha Instant file search for Linux.
Scour keeps your files and folders in its own index and answers searches from it, without walking the disk again. Use it from a desktop window, the terminal or the browser.
kind:code dm:7d size:>10kb — three filters, 21.99 ms.Measurements
7.9ms
for a one-word search
End to end: socket, parsing, search, sorting, counting and forty rows included.
- 4,842,854
- files and folders indexed
- a home directory, a second NTFS volume and the system
- 493 MB
- the index on disk
- memory-mapped; the kernel can reclaim it under pressure
- 0.8%
- of one core while idle
- two volumes watched live, nobody looking
Every number was taken from a running installation on 9 September 2026 with scripts/bench. The method and the raw figures are in the repository: MEASUREMENTS.md ↗
One query, four faces
The three pictures were taken at the same moment, on the same machine, from the same query. The only difference is what you are looking at.
Query kind:code dm:7d size:>10kb
A local bridge, not a remote server
It opens a port on your own machine and serves the page from there. The grid view, CSV export, duplicate finding and the report tab live here.
The desktop’s own application
A native window in Rust and Slint; the CPU draws it. Pick from twelve columns and drag them into place; put it on a key and the second press brings the same window forward.
ratatui, and the far end of an ssh session
The same index, full-screen in a terminal. Wherever a window cannot open, on a remote machine, a rescue shell or a server, the search is there.
scour kind:code dm:7d size:>10kb
scour mcp-config --for codex For scripts and language models
A plain scour command answers line by line. scour-mcp opens the same index to language models through eleven read-only tools; scour mcp-config says what to paste into which client.
Query language
A space is AND, | is OR, ! is NOT; quotes make a phrase, * and ? are wildcards, field:value narrows. One word on its own is enough, and field names can be written in Turkish too. An unknown field is not an error; it is searched for as text.
scour explain says how a query was read; scour syntax prints the whole list.
| Query | Finds |
|---|---|
report | anything with that in its name |
ext:pdf size:>1mb | PDFs over a megabyte |
kind:image dm:7d | pictures changed this week |
*.slint | *.rs | either of the two |
!target ext:toml | TOML files with no target in the name |
user:root perm:/222 | files owned by root, writable by anyone |
No network requests
All of Scour’s work happens on your own machine; there is no account and no cloud.
- The index
- Lives on your own disk;
scour whereprints where. - Browser face
- Opens a port on your own machine only. The link carries a token that changes every run, and no port faces outward.
- Language models
scour-mcpoffers eleven read-only tools, and every answer is bounded.- Passwords
- The install script never asks for one. Watching the filesystem live needs root once, and that is optional.
Watching the filesystem
- Why not inotify
- It wants one watch per directory, from a budget shared with your editor, your IDE and your file manager. On a machine with 609,322 folders, the 524,288 watches the kernel gives a session were not enough.
- fanotify
- It marks the filesystem itself rather than its directories: two volumes, two marks. The number of folders does not enter into it.
- Root, once
scour-watchplaces the marks, drops the privilege and runs the service unprivileged. And it is optional: without it Scour still works, and changes take a little longer to appear.
Install
The install script never asks for a password. Seven binaries go to ~/.local/bin, a menu entry and an icon to ~/.local/share; on GNOME and KDE it puts the window on Super + F. Deleting those files undoes it.
File scour-0.2.0-alpha.1-linux-x86_64.tar.gz
tar xzf scour-0.2.0-alpha.1-linux-x86_64.tar.gz
cd scour-0.2.0-alpha.1-linux-x86_64
./install.sh - Distribution
- The binaries are built against glibc 2.39: Ubuntu 24.04 and newer, Debian 13+, Fedora 40+ and any rolling distribution.
- Older systems
- Ubuntu 22.04 and Debian 12 carry an older glibc; there it builds from source.
- Architecture
- x86_64
Tested on Ubuntu 24.04 and Fedora, in clean containers, as a stranger would: the installer ran, all seven binaries reported their version, the service indexed the home directory; the command line searched, the terminal face drew, the browser face served its page and the window opened on a virtual display.
Good to know
- Linux only, in practice
- The Windows build was started once on one machine for an afternoon and is untested. macOS compiles and has never been run.
- Version 0.2.0‑alpha.1
- Alpha: in daily use on one machine; the index format may change. Report problems on GitHub.