McFly is a shell history search tool that replaces the default ctrl-r reverse history search with an intelligent, context-aware engine.
The tool solves the problem of finding relevant commands in shell history by augmenting the standard search with a small neural network that prioritizes results based on your current working directory, recent command context, command frequency, recency, exit status, and previous selections. Rather than showing commands in reverse chronological order, McFly learns patterns from your usage and surfaces the commands most likely to be useful right now. It stores enhanced history metadata including exit status, timestamp, and execution directory in a SQLite database while maintaining compatibility with your shell's native history file, allowing you to stop using it without losing data.
McFly suits developers and system administrators who spend significant time in the terminal and want faster command recall. It works with Bash version 3 and later, Zsh, and PowerShell version 7 and later on macOS, Linux, and Windows. The tool includes wildcard matching with the percent character and a scrubbing action to remove sensitive commands from both the McFly database and shell history. Since it is written in Rust, it prioritizes performance and memory safety. The README does not compare it to alternative history search tools.
The project is seeking co-maintainers, indicating that active maintenance capacity is limited. The build status is tracked through continuous integration workflows. Installation is available through multiple package managers including Homebrew and MacPorts on macOS and Linux, with WinGet support on Windows, though the maintainers note they do not maintain the WinGet installer.