@nklisch/pi-fff-compat
Fast FFF-backed file search through Pi-native find/grep semantics — glob-only file lookup and exact regex/literal grep with no fuzzy fallback.
Package details
Install @nklisch/pi-fff-compat from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@nklisch/pi-fff-compat- Package
@nklisch/pi-fff-compat- Version
0.1.3- Published
- Aug 23, 2026
- Downloads
- 528/mo · 25/wk
- Author
- nklisch
- License
- MIT
- Types
- extension
- Size
- 32 KB
- Dependencies
- 1 dependency · 2 peers
Pi manifest JSON
{
"extensions": [
"./extensions/fff-compat-search.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
@nklisch/pi-fff-compat
Exposes the fast FFF file index through
Pi-native find/grep semantics. Upstream @ff-labs/pi-fff is excellent for
fuzzy/smart discovery, but its ffind/ffgrep behavior intentionally differs
from Pi's built-ins; this package provides the conservative compatibility
surface: glob-only file lookup and exact regex/literal grep, no fuzzy
fallback — backed by the same real-time FFF index.
pi install npm:@nklisch/pi-fff-compat
Modes
| Mode | Tools | How |
|---|---|---|
| Default (additive) | fast_find, fast_grep alongside the built-ins |
install and go |
| Override | registers as find/grep themselves |
PI_FFF_COMPAT_OVERRIDE=1 |
| Disabled | nothing | PI_FFF_COMPAT_DISABLE=1 |
Commands
/fff-compat— index health, indexed file count, watcher/scan status./fff-compat-rescan— trigger a manual rescan.
Watcher & inotify budget
FFF maintains a real-time native watcher with one watch per indexed file.
Scanning very large trees (e.g. a home directory) can exhaust
fs.inotify.max_user_watches and leave the index silently stale on unwatched
files. Two independent knobs:
PI_FFF_COMPAT_HOME_SCAN=1— opt into home-dir scanning (default off; raisefs.inotify.max_user_watcheswhen enabling).PI_FFF_COMPAT_DISABLE_WATCH=1— scan once, no live watcher (index goes stale until rescan).
The index itself, frecency, and git-aware filtering come from
@ff-labs/fff-node, loaded
as a normal dependency.