你是否还在为 Neovim 中打开一个文件要输三遍路径而烦躁?是否在调试大型项目时,花 30 秒等 fzf 列出结果,却仍找不到那个藏在 src/utils/legacy/v2/internal/ 里的配置文件?FFF(Freakin Fast Fuzzy file finder)不是另一个模糊搜索插件——它是一个用 Rust 重写的、专为「速度+精度+上下文记忆」而生的现代文件搜索引擎,既可作为 Neovim 原生插件秒级响应,也能直接集成进 AI 编程助手(如 Cursor、Continue.dev),让大模型真正“知道你的代码在哪”。
核心功能
- 毫秒级模糊匹配:基于内存索引 + 前缀树优化,百万级文件下首次搜索延迟 <80ms,后续搜索近乎零延迟(得益于内置内存缓存)
- 语义感知搜索:支持智能大小写敏感、驼峰分词(
getUserData可匹配get_user_data.lua)、数字通配(test123匹配test_00123.js) - 多模式混合查询:一行命令同时支持 glob(
**/*.ts)、正则(/^api.*\.go$/)、内容 grep(!TODO查无 TODO 的文件)、反向排除(-node_modules) - AI 代理友好接口:原生支持 MCP(Model Context Protocol)标准,可直接被 Cursor、Continue 等 AI 工具调用,返回带行号、语言类型、文件摘要的结构化结果
- Neovim 深度集成:零配置启用 Telescope 或 which-key 绑定;支持 LSP 符号跳转联动、当前目录/项目根自动识别、Git 忽略文件自动过滤
- 跨平台轻量部署:单二进制(<5MB),无 Node.js/Python 依赖,Windows/macOS/Linux 全支持,Rust 编译后开箱即用
适合哪些人用
如果你是以下任一角色,FFF 就是为你量身打造的:专注效率的 Neovim 高阶用户(尤其使用 Lua 配置者);正在构建本地 AI 编程工作流的工程师(需让大模型快速定位真实代码上下文);C/Rust/Node.js 多语言项目维护者(统一搜索体验,告别 ripgrep + fd + fzf 三件套切换);对启动速度和响应延迟极度敏感的终端党(拒绝任何“等待感”)。
快速上手
✅ Neovim 用户(推荐):用 lazy.nvim 安装仅需 3 行:
spec = { 'dmtrKovalenko/fff.nvim', dependencies = { 'nvim-telescope/telescope.nvim' } }
然后执行 :Telescope fff 即可启动;默认绑定 <leader>ff,支持 Ctrl+j/k 导航、Tab 预览、Enter 打开。
🚀 全局 CLI 使用:下载预编译二进制(GitHub Releases 页面),放入 $PATH,直接运行 fff src --ext .rs,.toml 或 fff !TODO -git —— 它会自动读取你的 .gitignore 和 .fffignore。
🤖 AI 工具集成:在 Cursor 的 settings.json 中添加:"continue.fileSearchCommand": "fff --json --max-results=10",从此大模型提问“改一下登录校验逻辑”,就能精准定位到 auth/middleware.go 第 42 行。
项目信息
dmtrKovalenko/fff.nvim
GitHub
The fastest and the most accurate file search toolkit for AI agents, Neovim, Rust, C, and NodeJS
3.0k
今日 +767 stars today
Stars
117
Forks
Rust
MIT
Rust|2966 ⭐|MIT 开源协议|GitHub 项目地址
当文件搜索不再是你编码流的中断点,而是像呼吸一样自然——这就是 FFF 给 Neovim 和 AI 编程时代交出的答案。



