FFF:面向人类与 AI 代理的极速文件搜索工具包

FFF:面向人类与 AI 代理的极速文件搜索工具包

项目地址https://github.com/dmtrKovalenko/fff 许可证 :MIT 技术栈:Rust · TypeScript · MCP · Neovim Lua


一、项目定位

FFF(Fast File Finder)是一个为人类和 AI 代理设计的文件搜索工具包,核心卖点只有一个字:。它提供防拼写错误的路径与内容搜索、基于 frecency 排名的文件访问、后台监视器以及轻量级内存内容索引。在任何需要多次搜索的长运行进程中,FFF 比 ripgrep 和 fzf 等 CLI 工具快得多。

项目最初是广受欢迎的 Neovim 插件,后因大量 AI 编码工具和代码编辑器都需要相同能力------精准、快速的文件搜索库------而扩展为独立工具包。目前支持 MCP Server、Pi Agent Extension 和 Neovim 插件三种接入方式。

二、核心能力

2.1 Frecency 记忆排序

FFF 引入 frecency(frequency + recency)算法记忆用户实际打开的文件,使其在后续搜索中排名更高。首次使用时自动从 git touch history 预热排名,无需手动配置。这意味着你越常用的文件,越容易被找到。

2.2 定义优先提示

在 Rust 侧对看起来像代码定义的行进行分类标注,零正则开销。代理能快速定位函数、类和变量的定义位置,而非淹没在无关行中。

2.3 智能大小写与自动模糊回退

搜索 IsOffTheRecord 可自动匹配 snake_case 变体如 is_off_the_record;精确匹配零结果时自动以模糊模式重试,返回最佳近似命中。这一机制显著减少了"搜不到就放弃"的失败率。

2.4 Git 感知标注

已修改、未跟踪和已暂存的文件被自动标注,代理优先触达用户正在活跃修改的文件,避免在过时代码上浪费时间。

三、三种接入方式

方式 目标用户 核心价值
MCP Server Claude Code / Codex / Cursor / Cline 等任何 MCP 客户端 减少 grep 往返、节省 Token、加速响应
Pi Extension Pi Agent 用户 替换原生搜索工具,注入 frecency 排名的 @ 提及自动补全
Neovim Plugin Neovim 用户 在 10 万文件、8GB 的 Linux 内核仓库中实现毫秒级搜索

MCP Server 一行安装:curl -L https://dmtrkovalenko.dev/install-fff-mcp.sh | bash。安装后代理自动获得 ffgrepfffindfff-multi-grep 三个工具。

四、与现有工具的对比

FFF 的差异化不在于替代 ripgrep 或 fzf,而在于为长运行进程优化。传统 CLI 每次搜索都冷启动扫描文件系统,FFF 通过常驻内存索引 + 后台监视器 + frecency 缓存,在第二次及后续搜索中实现数量级的速度提升。对 AI 代理而言,这意味着更少的 Token 消耗(精准结果不需要大量上下文)和更快的响应周期。

五、适用场景

  • AI 代理频繁执行文件搜索和内容检索的工作流
  • 大型代码库(10 万+ 文件)的日常开发导航
  • 需要跨编辑器和代理工具统一搜索体验的团队

本文基于 dmtrKovalenko/fff 项目开源文档撰写,信息获取时间:2026 年 5 月 7 日。

本文由mdnice多平台发布

相关推荐
SelectDB10 小时前
金城银行基于 Apache Doris 构建实时数据平台:T+1 到分钟级的金融级实践
后端
Csvn10 小时前
📊 SQL 入门 Day 13:窗口函数进阶
后端·sql
卷无止境10 小时前
拯救乱码方块:pandas 绘图中文字体的一揽子解决方案
后端·python
SelectDB10 小时前
Apache Doris 4.1:面向 AI & Search 的统一数据底座怎么选?向量检索 + 全文搜索 + 100MB JSON 完整能力拆解
后端
lichenyang45310 小时前
从图片生成任务到用户隔离:AIGC Creative Studio 后端与 PostgreSQL 建模实践
前端·后端
Zane199411 小时前
别再手写 try/finally 了:一文讲透 with 语句背后的上下文管理器协议
后端·python
进击的程序猿~11 小时前
Go 内存分配与垃圾回收源码深度学习手册
开发语言·后端·golang
geovindu11 小时前
go:Bit Operation Algorithm
开发语言·后端·算法·golang·位运算法
元界metalite11 小时前
Spring-AOP切面越写越多怎么办-8类场景的一条有序处理器链
后端
有米97911 小时前
Logstash的安装和Elasticsearch的整合
后端