cantino/mcfly

Fly through your shell history. Great Scott!

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 41 minutes ago
Added to GitGenius on September 8th, 2026
Created on July 15th, 2018
Open Issues & Pull Requests: 134 (+0)
GitHub issues: Enabled
Number of forks: 201
Total Stargazers: 7,789 (+0)
Total Subscribers: 32 (+0)

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Issue API getrepoissuespagesummary failed: 429 Rate limit exceeded. Please try again later.

Detailed Description

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.