Um prompt minimalista e personalizável para vários shells, escrito em Rust, que exibe informações relevantes do projeto e do ambiente.
cantino/mcfly
Busca o histórico do shell em Rust e substitui Ctrl-R por uma busca em tela cheia, contextual e ordenada por uma rede neural.
- Estrelas
- 7,810
- Forks
- 203
- Issues abertas
- 136
- Último commit
- há 2 meses
O que é?
O McFly substitui a busca reversa padrão do histórico do shell, acionada por Ctrl-R, por uma busca em tela cheia que ordena os resultados com base no diretório de trabalho e nos comandos executados recentemente. A ordenação é feita em tempo real por uma pequena rede neural, para que o comando desejado apareça perto do topo.
O McFly registra o código de saída, o timestamp e o diretório de execução de cada comando em um banco de dados SQLite, sem deixar de manter o arquivo normal de histórico do shell. É possível remover comandos dos dois locais, e um subcomando de dump exporta o histórico como JSON ou CSV, com filtros opcionais de período e regex.
A ferramenta é compatível com Zsh, Bash 3+, Fish e PowerShell 7+ e pode ser instalada pelo Homebrew, MacPorts, WinGet, Zinit ou Cargo. Opções como modo claro, atalhos de teclado do Vim, correspondência fuzzy e um padrão de exclusão são configuradas por variáveis de ambiente.
Recursos principais
- 01Substitui Ctrl-R por uma busca do histórico em tela cheia, ordenada por uma pequena rede neural.
- 02Leva em conta o diretório de trabalho, os comandos anteriores, a frequência de execução, a recência e o código de saída anterior.
- 03Armazena o código de saída, o timestamp e o diretório no SQLite, mantendo o arquivo normal de histórico do shell.
- 04Permite apagar um comando tanto do banco de dados do McFly quanto dos arquivos de histórico do shell.
- 05Exporta o histórico como JSON ou CSV, com filtros de período e regex.
Casos de uso
- Encontrar um comando longo ou complexo executado anteriormente no mesmo diretório do projeto.
- Evitar executar novamente comandos antigos que falharam, usando o código de saída na ordenação.
- Exportar o histórico do shell para auditoria ou análise, com filtros de regex e data.
- Apagar do histórico do shell segredos digitados por engano.
Início rápido
- 1
Instale o mcfly com o Homebrew
brew install mcfly - 2
Adicione a linha de init ao final do arquivo de configuração do seu shell (o exemplo é para Bash; as versões para Zsh e Fish estão no README)
eval "$(mcfly init bash)" - 3
Recarregue a configuração do shell ou reinicie o terminal
. ~/.bashrc
Antes de usar
- O mantenedor afirma que não tem tempo para manter o projeto e está buscando co-mantenedores.
- O script de instalação do WinGet não é mantido pelo projeto, que não pode garantir sua precisão ou segurança.
Tópicos
Perguntas frequentes
- O que é mcfly?
- Busca o histórico do shell em Rust e substitui Ctrl-R por uma busca em tela cheia, contextual e ordenada por uma rede neural. O McFly substitui a busca reversa padrão do histórico do shell, acionada por Ctrl-R, por uma busca em tela cheia que ordena os resultados com base no diretório de trabalho e nos comandos executados recentemente. A ordenação é feita em tempo real por uma pequena rede neural, para que o comando desejado apareça perto do topo.
- mcfly é gratuito? Qual é a licença?
- mcfly é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- mcfly ainda é mantido?
- Atualizado nos últimos 6 meses. O último commit de mcfly foi em 1 de set. de 2026.
- Para que posso usar mcfly?
- Encontrar um comando longo ou complexo executado anteriormente no mesmo diretório do projeto. Evitar executar novamente comandos antigos que falharam, usando o código de saída na ordenação. Exportar o histórico do shell para auditoria ou análise, com filtros de regex e data. Apagar do histórico do shell segredos digitados por engano.
- Como instalar mcfly?
- Instale o mcfly com o Homebrew: brew install mcfly Adicione a linha de init ao final do arquivo de configuração do seu shell (o exemplo é para Bash; as versões para Zsh e Fish estão no README): eval "$(mcfly init bash)" Recarregue a configuração do shell ou reinicie o terminal: . ~/.bashrc
- Onde consigo mcfly?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/cantino/mcfly
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Script Bash compatível com POSIX para instalar e alternar entre várias versões do Node.js por usuário e por shell.
Um fuzzy finder de linha de comando versátil que filtra qualquer lista de entrada e transforma scripts de shell em seletores interativos no terminal.
Warp é um ambiente de desenvolvimento agentivo baseado no terminal, com um agente de programação integrado ou suporte aos seus próprios agentes de CLI.
Um comando cd mais inteligente, que aprende quais diretórios você mais usa e permite acessá-los com poucas teclas em todos os principais shells.
Framework comunitário para gerenciar a configuração do zsh, com centenas de plugins e temas, além de uma ferramenta de atualização.