Skip to content
aicoolies logo
fzf logo

fzf

Command-line fuzzy finder

General-purpose command-line fuzzy finder written in Go that adds interactive filtering to any list — files, command history, processes, Git branches, and more. Blazing fast even on millions of entries. Integrates with bash, zsh, fish, and vim/neovim for history search (Ctrl+R), file finding, and directory jumping. Supports preview windows, multi-select, and custom key bindings. 67K+ GitHub stars. One of the most essential CLI productivity tools in the modern developer toolkit.

About fzf

Fzf is a general-purpose command-line fuzzy finder that acts as an interactive filter for any list of items, including files, command history, processes, Git branches, and bookmarks. Written in Go for portability and performance, fzf can process millions of items with negligible latency, making it one of the most versatile tools in the modern terminal toolkit. It solves the fundamental problem of finding and selecting items from large lists in the terminal by providing a fast, interactive, fuzzy-matching interface.

Fzf implements an advanced fuzzy matching algorithm that finds results even when characters are scattered across the string, supports extended search syntax with exact matching, prefix matching, and exclusion operators, and provides rich customization through an event-action binding mechanism. It comes with built-in shell key bindings: Ctrl+T for file selection, Alt+C for directory navigation, and Ctrl+R for intelligent history search. Fzf supports preview windows for displaying file contents or command output alongside search results, and can be used as a selection UI for any command-line workflow.

Fzf is indispensable for developers and power users who want to speed up every aspect of their terminal workflow. It integrates seamlessly with Bash, Zsh, Fish, Vim, and Neovim, and pairs particularly well with tools like fd for file finding, ripgrep for code search, and bat for file preview. Fzf has become a foundational building block in countless terminal workflows, from Git branch switching to Kubernetes pod selection, making it one of the most widely adopted CLI productivity tools.

Pricing & Platform Specs

Pricing Summary

Free and 100% open source under the MIT license. fzf has $0 licensing fees, no subscription plans, and can be embedded freely into shell scripts, CLI pipelines, terminal multiplexers, and text editors.

full pricing breakdown →

Supported Platforms

macOS, Linux, Windows

Explore categories, tags & use cases

Alternatives

All fzf alternatives →

Blazingly fast recursive search

Ultra-fast recursive text search tool written in Rust that respects .gitignore rules automatically. Searches directories significantly faster than grep with smart defaults like line numbers, syntax highlighting, and compressed file support. The de facto replacement for grep among developers, combining the speed of Rust with sensible defaults that eliminate the need for complex command-line flags.

Open Source

Magical shell history

Shell history manager that replaces the default history with a SQLite-backed, encrypted, and synchronized command history across all your machines. Features full-text search with fuzzy matching, directory-based context filtering, session tracking, and statistics about command usage. Syncs via an encrypted server (self-hostable or hosted). Supports bash, zsh, and fish shells. 22K+ GitHub stars. Transforms shell history from a simple list into a searchable, cross-machine knowledge base.

Open Source

Smarter cd command

Smarter cd command that learns your most-used directories and lets you jump to them with partial name matches. Written in Rust for speed, it replaces the standard cd command with intelligent fuzzy matching based on frequency and recency of access. A small quality-of-life tool that saves developers hundreds of keystrokes daily by eliminating tedious path typing.

Open Source

Community experience

Sources & verification

Sources checked
Content verified

Verification dates are editorial checks. Routine CMS saves and automatic updatedAt timestamps do not advance them.

FAQ

What is fzf?

General-purpose command-line fuzzy finder written in Go that adds interactive filtering to any list — files, command history, processes, Git branches, and more. Blazing fast even on millions of entries. Integrates with bash, zsh, fish, and vim/neovim for history search (Ctrl+R), file finding, and directory jumping. Supports preview windows, multi-select, and custom key bindings. 67K+ GitHub stars. One of the most essential CLI productivity tools in the modern developer toolkit.

Is fzf free?

Yes — fzf is open source and free to use. Free and 100% open source under the MIT license. fzf has $0 licensing fees, no subscription plans, and can be embedded freely into shell scripts, CLI pipelines, terminal multiplexers, and text editors.

Is fzf open source?

Yes — fzf is open source.

Is fzf still maintained?

Yes — fzf is active. Its listing was last verified on September 6, 2026.

What are the best fzf alternatives?

The first editor-selected fzf alternatives are ripgrep, Atuin, zoxide.