fff

Rust 核心文件搜索 SDK,让 AI 与编辑器秒级找文件

开源 🏷️定价信息待确认 ⚠️ 链接可跳转,访问体验不确定 自动化工作流 🍴 复刻 481 🐛 待处理 96 👀 关注 21
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 11216
维护状态 活跃
是否开源 开源
定价模式 🏷️定价信息待确认

项目预览

fff 项目界面预览图
图片来源:项目官网

项目数据

分类自动化工作流
开发团队dmtrKovalenko
定价模式🏷️定价信息待确认
价格说明定价信息待确认
访问状态⚠️ 链接可跳转,访问体验不确定
是否开源是
开源协议MIT
主要语言Rust
技术栈/模型bun,fff,filesearch,fzf,grep,lua,neovim,neovim-plugin,nodejs,python,rust
GitHub 星标★ 11216
上线时间2025-07-31 00:00:00
代码更新2026-11-06
仓库体积11.2 MB
本站数据更新2026-11-06
维护状态活跃
收录时间2026-09-22
浏览次数2

项目介绍

fff 是一个用 Rust 编写的高性能文件搜索 SDK,主打“最快且最准确”,面向 AI 智能体、Neovim、C、Python、Bun 和 Node.js 等场景提供统一的文件查找能力。它解决的是传统文件搜索工具在跨语言集成、模糊匹配精度与速度之间难以兼顾的问题:fzf 偏交互、grep 偏内容、系统 find 偏慢且接口不统一。fff 将搜索逻辑下沉到 Rust 核心,通过多语言绑定暴露简洁 API,让 AI agent 能快速定位工作区文件,让 Neovim 插件获得低延迟补全体验,也让脚本语言无需重复造轮子。核心能力包括快速遍历目录、模糊匹配与过滤、可嵌入的 SDK 设计,以及覆盖 Lua、Python、Node、Bun、C 的绑定。项目已获上万星标,属于该领域知名项目,适合需要把文件搜索作为基础设施嵌入到自身工具链中的开发者。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-09-22 · 当前星标 ★ 11216

使用教程

ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。

难度:入门 约 10 分钟 部署方式:命令行工具 6 步

环境要求

  • Linux、macOS 或 Windows 环境
  • Neovim 插件使用需已安装 Neovim 并支持 Lua 配置
  • 使用 Codex 集成需已安装 Codex CLI
  • 部分安装方式需要网络可访问 GitHub 与 npm

安装与启动步骤

  1. 1一键安装 MCP 服务

    Linux/macOS 官方一键脚本,会安装 fff-mcp 并打印对应客户端的接入说明。建议先阅读 install-mcp.sh 再执行。

    curl -L https://dmtrkovalenko.dev/install-fff-mcp.sh | bash
  2. 2Windows 一键安装

    Windows 用户在 PowerShell 中执行官方脚本,安装完成后同样会输出接入指引。

    irm https://raw.githubusercontent.com/dmtrKovalenko/fff/main/install-mcp.ps1 | iex
  3. 3注册到 Codex

    把已安装的二进制以绝对路径注册给 Codex,避免桌面会话未继承交互 shell 的 PATH。Homebrew 安装用此命令。

    codex mcp add fff -- "$(brew --prefix)/bin/fff-mcp"
  4. 4脚本安装后注册

    若使用一键安装脚本,二进制默认位于 ~/.local/bin,用该绝对路径注册到 Codex。

    codex mcp add fff -- "$HOME/.local/bin/fff-mcp"
  5. 5安装 pi 绑定

    如需在 pi 中使用 fff,可通过 npm 包 @ff-labs/pi-fff 安装。

    pi install npm:@ff-labs/pi-fff
  6. 6配置 Neovim 插件

    在 Neovim 配置中调用 require('fff').setup() 并覆盖需要的选项,默认值已较合理,通常只需改少量项。

    require('fff').setup({
      base_path = vim.fn.getcwd(),
      max_results = 100,
      max_threads = 4,
      lazy_sync = true,
    })

关键配置

配置项必填说明示例
base_path否搜索的基准目录,默认当前工作目录vim.fn.getcwd()
max_results否返回结果的最大数量100
max_threads否搜索使用的最大线程数4
lazy_sync否是否开启惰性同步true
follow_symlinks否是否跟随符号链接进行索引false
enable_home_dir_scanning否是否允许扫描用户 HOME 目录,默认开启true

如何确认成功

重启 Codex 或新建任务后,让 agent“use fff”,若能看到 ffgrep、fffind、fff-multi-grep 工具即接入成功。

常见问题

Q:为什么 Codex 找不到 fff-mcp?

A:Codex 桌面会话可能不继承交互 shell 的 PATH,注册时请使用绝对路径,例如 $(brew --prefix)/bin/fff-mcp 或 $HOME/.local/bin/fff-mcp。

Q:注册后需要重启吗?

A:需要。修改 ~/.codex/config.toml 后应重启 Codex 或开始新任务,让它重新加载 MCP 服务。

Q:安装脚本安全吗?

A:可以先把 install-mcp.sh 或 install-mcp.ps1 下载下来阅读,脚本会打印适合你客户端的接入方式。

Q:fff 和 fzf、ripgrep 有什么区别?

A:fff 面向长期运行进程中的库化搜索,支持容错路径与内容搜索、频次排序、后台监听和内存内容索引,重复搜索时更快。

注意事项

  • README 未给出从源码构建 Rust 核心的命令,本教程只整理其提供的安装脚本与集成方式
  • MCP 接入后可直接让 agent 使用 fff 提供的搜索工具
  • Neovim 插件默认允许扫描 HOME 目录,可按需关闭

核心亮点

  • Rust 实现核心搜索,性能与内存控制优于脚本层方案
  • 提供 Neovim、Python、Node、Bun、C 多语言绑定,集成成本低
  • 定位为 SDK 而非终端工具,方便嵌入 AI agent 与编辑器插件

不足之处

  • 多语言绑定维护成本高,各绑定版本与 API 一致性需持续跟进
  • 作为较新项目,长期稳定性与边界场景文档仍待社区检验

适用场景

  • AI 编程助手在工作区内快速检索相关文件
  • Neovim 插件实现低延迟模糊文件跳转
  • Node/Python 脚本批量定位与过滤项目文件

替代项目

fzf、ripgrep、fd

上一篇:wmux

下一篇:EasyCLIProxyAPI

同类项目推荐

apify-sdk-python 开源

用 Python 写爬虫与自动化,一键上云并计费

Apify SDK for Python—The official library for building Apify Actors: serverless clo···

★ 180 2026-09-18
jev-social 开源

本地跑社媒调研,自动抓证据出结论

Open-source, local-first social media research agent for Instagram, TikTok, and Link···

★ 200 2026-10-03
website-to-gif 开源

把网页一键变成GIF,自动生成文档动图

GitHub Action to turn your website into a GIF :camera:

★ 163 2026-08-09
agentplane 开源

给AI编码代理装上安全阀,计划审批+变更可审计

️ Git-native workflow control for coding agents: approved plans, verification, and ···

★ 86 2026-08-09
IMAI.WORK-AI-Phone 开源

手机端 AI 营销自动化,自动获客、群发、矩阵发布,解放双手

手机版的openclaw,基于安卓手机端到端远控自动执行RPA命令,无障碍模式,比豆包AI手机更强···

★ 256 2026-08-09
ccg-workflow 开源

一个命令,让多个 AI 模型自动协作搞定复杂任务

多模型协作工作流引擎 — /ccg:go 一个命令,AI 自动分析意图、选择策略、编排 Codex + Ge···

★ 5977 2026-08-09
OpAgent 开源

让 AI 像人一样点网页,自动完成多步操作

The OpAgent framework is used to automate web browser operations, achieving State-of···

★ 237 2026-10-13
pneumaticworkflow 开源

拖拽定义审批流,自动跑完入职与审批

Free and source-available Apache 2.0 licensed lightweight workflow automation tool.

★ 319 2026-09-17
HtmlTinkerX 开源

用 C# 或 PowerShell 一条命令解析、清洗、优化网页内容

HtmlTinkerX is a powerful async C# library for HTML, CSS, and JS processing, parsing···

★ 140 2026-09-18