pyfzf
Python wrapper for junegunn's fuzzyfinder (fzf)
Decision gist · record as of 2026-08-14
Yes, if you need interactive fuzzy selection in a terminal application and fzf is already part of your environment. The package is lightweight, has no Python dependencies, and works as advertised for its narrow purpose. The dormant maintenance status is not a blocker—the code is simple and stable—but verify compatibility with your Python version and fzf version before relying on it in production.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- fzf must be installed and available on PATH, or you must pass its location explicitly to FzfPrompt().
- Low install friction—a pure Python wheel with no runtime dependencies.
- Maintenance is dormant; the last release was 2022-03-01, though the repository remains active and the package is stable for its narrow scope.
License · maintenance · safety
MIT (permissive) — MIT license is permissive; you can use this package freely in commercial and private projects with minimal restrictions.
last release 2022-03-01 (1627 days) · last repo commit 2024-10-24 · 212 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 420,473 downloads/mo, #6,790 on PyPI
Alternatives
Verify before relying
pip install pyfzf
from pyfzf.pyfzf import FzfPrompt
fzf = FzfPrompt()
selected = fzf.prompt(range(0, 10))- Whether the package works correctly with modern Python versions beyond 3.6, given the time since last release
- Current compatibility with recent fzf versions and whether Windows support remains functional
What it is and what it does
pyfzf is a thin Python wrapper around fzf, the command-line fuzzy finder. It lets you call fzf from Python code to present an interactive selection dialog to users, passing in a list of items and getting back the user's choice. The wrapper handles writing items to a temporary file, invoking the fzf binary, and parsing the result.
The package has no Python runtime dependencies—it only requires that fzf itself be installed and available on your system PATH (or you can specify a custom path). It's designed for console applications and terminal-based workflows where you want to let users interactively pick from a list rather than typing or passing arguments.
Use it for
- Build a CLI tool that lets users interactively select from a list of files, branches, or options
- Add fuzzy search to a Python script that needs user input in an interactive terminal session
- Create a system administration or DevOps tool that presents filtered choices to operators
- Implement fuzzy filtering in a terminal-based menu or configuration utility
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need interactive fuzzy selection in a terminal application and fzf is already part of your environment.
The package is lightweight, has no Python dependencies, and works as advertised for its narrow purpose. The dormant maintenance status is not a blocker—the code is simple and stable—but verify compatibility with your Python version and fzf version before relying on it in production.
Install
pyfzf on PyPI
Before you install
Low install friction—a pure Python wheel with no runtime dependencies. Maintenance is dormant; the last release was 2022-03-01, though the repository remains active and the package is stable for its narrow scope.
fzf must be installed and available on PATH, or you must pass its location explicitly to FzfPrompt().
License in practice
MIT license is permissive; you can use this package freely in commercial and private projects with minimal restrictions.
Quickstart
pip install pyfzf
from pyfzf.pyfzf import FzfPrompt
fzf = FzfPrompt()
selected = fzf.prompt(range(0, 10))
Verify before relying
- Whether the package works correctly with modern Python versions beyond 3.6, given the time since last release
- Current compatibility with recent fzf versions and whether Windows support remains functional
Package facts
| License | MIT permissive |
| Python support | Not specified |
| Install friction | Low. Pure-Python wheel |
| Runtime dependencies | None |
| Maintenance | Dormant 1,627 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 420,473 / month, #6,790 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 4 - BetaEnvironment :: ConsoleIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseOperating System :: OS IndependentProgramming Language :: PythonTopic :: Terminals |
Evidence: pyfzf-0.3.1-py3-none-any.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “fuzzy finder python wrapper”
- pyfzfpyfzf wraps the fzf command-line fuzzy finder, letting you invoke…
- pfzyProvides fuzzy string matching with match indices using the fzy…
- fuzzyfinderFuzzy finder that matches partial strings from a list and returns…
Give your agent the search over MCP, or paste the wish link into any chat.
More Terminals packages
Wraps any iterable to display a real-time progress bar in the terminal or Jupyter notebook, showing iteration count, elapsed time, and estimated time remaining.
Rich renders styled text, tables, progress bars, syntax highlighting, markdown, and tracebacks to the terminal with minimal code.
Colorama makes ANSI escape sequences for colored terminal text work on Windows by intercepting and converting them to win32 API calls, while passing through unchanged on other platforms.
Install it if you need colored terminal output to work on Windows or want to use ANSI-based libraries portably; skip it only if you target non-Windows platforms…
Measures the displayed width of Unicode strings in terminals, accounting for wide characters, combining marks, and terminal escape sequences that standard Python string functions mishandle.
Install it if your application formats text for terminals and handles non-ASCII characters.
Run a subprocess in a pseudo terminal (pty) and interact with its input and output, enabling automation of interactive programs that require terminal features like password prompts or curses-style interfaces.
However, note that it is aging (last release 2020-12-28) and not actively maintained; it works well for its narrow, well-defined purpose but won't receive updates for…
Pexpect spawns and controls interactive console applications by sending input and matching output patterns, automating tasks that would otherwise require manual interaction.
See also iterfzf · fuzzyfinder · pfzy · inquirerpy · click-prompt · pick · fuzzysearch · fuzzywuzzy · bullet · thefuzz