Sobre o projeto

gitsloth é uma ferramenta de linha de comando minimalista em Rust que automatiza a escrita de mensagens de commit do Git. Ela lê diffs Git em stage junto com o nome da branch e o status curto, envia o contexto para a OpenAI e retorna uma ou mais sugestões de mensagens de Conventional Commit. Os principais recursos incluem: - Mensagens de Conventional Commit geradas por IA a partir de alterações em stage - Múltiplas sugestões com seleção interativa (por exemplo, -g 3) - Consciência do contexto do Git: branch, status curto e diff em stage - Fluxo opcional de stage de tudo (-a) para preparar tudo antes de gerar - Fluxo opcional de área de transferência (-c) para copiar a mensagem selecionada em vez de fazer commit - Ignorar confirmação para geração de mensagem única (-y) - Estratégia de dependências mínimas usando a stdlib do Rust mais apenas crates de HTTP/JSON A instalação está disponível por meio de um script instalador de binário pré-compilado que detecta o sistema operacional e a arquitetura, ou compilando a partir do código-fonte com cargo. A configuração exige fornecer uma variável de ambiente OPENAI_API_KEY. Exemplos de uso: - Padrão: gerar uma única mensagem de commit com confirmação - gitsloth -g 3: gerar múltiplas mensagens e escolher uma - gitsloth -a: preparar todas as alterações antes de gerar - gitsloth -c: copiar a mensagem selecionada para a área de transferência em vez de fazer commit - gitsloth -y: ignorar a confirmação para mensagem única - gitsloth -v: imprimir a versão O projeto é licenciado sob a Licença MIT e distribuído como emailware, convidando ao feedback dos usuários.