pi-everything-search
Pi extension: ultra-fast file search via Everything (voidtools) — replaces slow find/ls/grep
Package details
Install pi-everything-search from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:pi-everything-search- Package
pi-everything-search- Version
1.1.1- Published
- Jul 7, 2026
- Downloads
- 801/mo · 23/wk
- Author
- cudtmfraggg
- License
- MIT
- Types
- extension
- Size
- 38.2 KB
- Dependencies
- 0 dependencies · 1 peer
Pi manifest JSON
{
"extensions": [
"./index.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
pi-everything-search
Pi extension: ultra-fast Windows file search via Everything and es.exe.
It registers everything_search, nudges agents away from slow filename searches, auto-detects Everything instances, and can silently start Everything when IPC is unavailable.
Requirements
- Windows for Everything runtime search
- Everything 1.4, 1.5 beta/release, or legacy 1.5 alpha
es.exein PATH
scoop install everything-beta everything-cli
Linux/macOS CI still runs type checks and non-Windows guard tests, but Everything search itself is Windows-only.
Install
pi install npm:pi-everything-search
What it does
| Feature | Behavior |
|---|---|
everything_search tool |
Search filenames/folders through es.exe with structured results |
| Auto-start | If IPC is unavailable, start Everything.exe -startup silently and retry |
| Readiness wait | Wait for IPC, then run a lightweight JSON query before searching |
| Instance detection | Try default first, then legacy 1.5a for old alpha builds |
| Soft hints | Notify when agent uses slower filename search commands |
| System prompt | Adds concise Windows file-search guidance |
| Details | Returns count, truncation flag, files, detected instance/version, warnings |
Tool parameters
| Parameter | Default | Description |
|---|---|---|
query |
required | Everything search query |
max_results |
100 |
Result cap, 1-1000 |
path_filter |
unset | Limit search to a folder; maps to -path |
instance |
auto |
auto, default, 1.5a, or custom instance name |
match_case |
false |
Case-sensitive query |
regex |
false |
Treat query as regex |
files_only |
false |
Exclude folders; maps to /a-d |
sort_by |
date-modified |
name, path, size, date-modified |
auto_start |
true |
Start Everything silently when IPC is unavailable |
everything_path |
auto | Full path to Everything.exe if not discoverable |
startup_timeout_ms |
15000 |
Wait time for IPC after auto-start |
index_ready_timeout_ms |
30000 |
Wait time for query readiness |
probe_interval_ms |
500 |
Startup/readiness polling interval |
wait_for_index |
query-ready |
none, query-ready, or strict |
Instance behavior
| Value | Behavior |
|---|---|
unset / auto |
Probe default instance, then legacy 1.5a |
default |
Force no -instance |
1.5a |
Force legacy alpha instance |
| custom string | Force custom Everything instance name |
Search syntax examples
| Query | Matches |
|---|---|
ext:ts |
TypeScript files |
ext:py;js |
Python and JavaScript files |
*.config.* |
Files with .config. in name |
test* |
Files starting with test |
folder:src |
Items under folders named src |
Regex:
{ "query": ".*\.test\.ts$", "regex": true }
Path filter:
{ "query": "ext:dll", "path_filter": "C:\Windows", "files_only": true }
Strict startup/readiness:
{
"query": "package.json",
"auto_start": true,
"wait_for_index": "strict",
"startup_timeout_ms": 30000,
"index_ready_timeout_ms": 60000
}
Disable auto-start:
{ "query": "ext:ts", "auto_start": false }
Auto-start details
When es.exe reports IPC not found, the tool:
- Locates
Everything.exefromeverything_path, PATH, Program Files, LocalAppData, or Scoop locations. - Starts it silently with
Everything.exe -startup. - Polls
es.exe -get-everything-versionuntil IPC is ready. - Runs
es.exe -json -n 1 *to confirm query readiness. - Executes the requested search.
wait_for_index: "query-ready" treats readiness timeout as a warning and still attempts the real search. strict fails instead.
Troubleshooting
es.exe not found
Install Everything CLI and ensure es.exe is in PATH.
scoop install everything-cli
where es.exe
Everything.exe not found
Install Everything or pass everything_path.
scoop install everything-beta
Everything IPC not found
Default behavior now tries auto-start. If it still fails:
- Open Everything manually once.
- Increase
startup_timeout_ms. - Check whether Everything and pi run at different privilege levels.
Permission mismatch
If pi/terminal runs elevated while Everything runs as normal user, IPC can fail. Run both at same privilege level.
Legacy 1.5a
Use:
{ "query": "ext:ts", "instance": "1.5a" }
Development
npm ci
npm run check
npm run e2e:non-windows # Linux/macOS
npm run e2e:windows # Windows with Everything installed
GitHub Actions run:
- CI on Windows/Linux/macOS
- Windows E2E with Everything +
es.exe - Non-Windows guard E2E
- npm publish on
v*tags
License
MIT