fzf

github.com ↗

Filter a list interactively with fuzzy matching from the command line or a shell workflow.

SI Score
75/100
Pricing
Open Source AI reading, not confirmed
Free plan
Not confirmed
Sign-up required
Not confirmed

Ask SI about fzf

Answers use saved listing facts and recorded sources.
Homepage screenshot
Screenshot of the fzf homepage

What it does

fzf is a general-purpose fuzzy finder and terminal toolkit. It can filter file paths, command history, or other text streams, and its shell integration adds key bindings and completion helpers. The project is distributed under the MIT license and publishes installation and integration instructions in its repository.

Pipe a list of candidate paths or commands into fzf and select the match interactively. The README shows shell integration for Bash, Zsh, and fish, so you can use the same matching interface for file selection or command history. Start with the standard key bindings before building a custom script; fzf’s inputs and preview actions are composable, but the shell integration needs to be installed for the shell you use.

This tool returns a selection from input you provide. It does not search file contents or index a codebase on its own, so pair it with a producer such as a file listing command when you need a list of paths. The project’s release page and MIT license make it a practical standalone terminal utility for developer workflows.

Strengths

  • The README describes a general-purpose interactive fuzzy finder.
  • Shell integrations are documented for Bash, Zsh, and fish.
  • The official repository includes an MIT license and release history.

Watch out for

  • fzf filters input supplied by another command; it does not create a repository-wide content index.
  • Shell key bindings and completions require shell-specific setup.

Best for

  • Selecting a file, command, or history entry from a long list
  • Adding interactive fuzzy selection to shell scripts

Sources