AI 코딩 에이전트용 초고속 파일 검색 도구 'fff' 깃허브 트렌딩 올랐다
fff는 사람과 AI 에이전트를 위한 파일 검색 툴킷으로 '정말 빠르다'를 전면에 내세운다. 오타에 강한 경로·내용 검색, 자주 쓰는 파일을 우선하는 frecency 기반 접근, 백그라운드 감시자, 그리고 가벼운 인메모리 콘텐츠 인덱스를 제공한다.
개발자는 한 번 이상 반복해서 검색하는 장기 실행 프로세스에서 fff가 ripgrep, fzf 같은 CLI 도구보다 훨씬 빠르다고 주장한다.
fff는 원래 Neovim 플러그인으로 시작해 많은 사용자에게 사랑받았다. 이후 여러 AI 하네스와 코드 에디터도 정확하고 빠른 파일 검색을 라이브러리 형태로 필요로 한다는 점이 드러나면서, 그 수요에 맞춘 라이브러리로 발전했다.
Claude Code, Codex, OpenCode, Cursor, Cline을 비롯해 MCP를 지원하는 모든 클라이언트와 함께 동작한다. grep 왕복 횟수를 줄이고 낭비되는 컨텍스트를 줄여 더 빠른 답을 얻게 해준다는 설명이다.
설치 스크립트로 MCP 서버를 연결하면 ffgrep, fffind, fff-multi-grep 세 가지 도구를 쓸 수 있다. 서버가 연결된 뒤 에이전트에게 'use fff'라고 요청하면 이 도구들을 집어 든다. CLAUDE.md 같은 파일에 규칙을 추가해, git으로 인덱싱된 디렉터리의 파일 검색·grep에는 fff 도구를 쓰도록 지시할 수도 있다.
주요 기능으로는 실제로 연 파일이 다음번에 더 높게 랭크되는 frecency 메모리(git 변경 이력으로 자동 워밍업), 코드 정의처럼 보이는 줄을 Rust 측에서 분류하는 정의 우선 힌팅, 스마트 케이스와 자동 퍼지 폴백, 수정·미추적·스테이징 파일을 태깅하는 git 인식 주석 등이 있다.
코드 에디터 pi를 위한 확장도 함께 제공한다. 런타임에 전환할 수 있는 세 가지 동작 모드를 두는데, 기본값인 tools-and-ui, tools-only, 그리고 pi의 내장 grep·find·multi_grep을 fff 구현으로 대체하는 override 모드다.
내용 검색용 ffgrep는 정규식을 자동 감지하고 일치하는 결과가 없으면 퍼지 검색으로 넘어간다. 경로·파일명 검색용 fffind는 파일명뿐 아니라 저장소 상대 경로 전체를 매칭하며 frecency를 반영해 사용자가 자주 다루는 파일을 먼저 보여준다.