Selvage - CLI de revisão de código com IA
(github.com/selvage-lab)Olá.
Muitas pessoas provavelmente já experimentaram usar LLMs para revisão de código, mas imagino que tenham encontrado alguns incômodos na aplicação prática.
Isso porque é necessário passar ao LLM o código a ser revisado e o contexto, além de especificar em detalhes até mesmo o formato de resultado desejado.
'selvage' é uma ferramenta CLI que automatiza esse processo de preparação para aumentar a eficiência da revisão de código.
[Principais recursos]
- Pode ser usada como ferramenta CLI de forma independente de IDEs ou extensões específicas
- Suporte aos principais modelos SOTA (GPT-5, Claude-Sonnet-4, Gemini, Qwen3-code)
- Pode ser usada com base no consumo, sem assinatura, com uma OpenRouter API Key
- Integração com o fluxo de trabalho do Git
- Suporte à análise de alterações em staged, unstaged e diferenças entre commits/branches específicos
- Recurso de extração de Smart Context com base em AST (árvore sintática abstrata)
- Extrai apenas os blocos mínimos de código e dependências relacionados às mudanças
- Envia somente o contexto realmente necessário para reduzir o uso de tokens e, ao mesmo tempo, maximizar a qualidade da revisão
- Recurso de Large Context Review
- Possibilita revisar com estabilidade alterações de grande porte que excedem o limite de contexto do modelo (principalmente PRs para publicar uma determinada feature)
6 comentários
Olá.
Desta vez fizemos uma atualização importante e gostaríamos de compartilhar a novidade.
Agradecemos muito o interesse de todos!
Link do GitHub: https://github.com/selvage-lab/selvage
🚀 Principais atualizações de funcionalidades
🤖 Adicionado o modo de servidor MCP (Model Context Protocol) ⭐ NEW
Peça revisão de código pela janela de chat no Cursor, Claude Code e outros!
Agora é possível registrar o Selvage como MCP no Cursor, Claude Code e outros para solicitar revisões de código em linguagem natural.
O resultado da revisão é entregue diretamente pelo assistente de IA, e depois de analisar o feedback você também pode pedir melhorias no código de uma só vez.
Como configurar:
💡 Cenários de uso
Exemplo simples de uso
Workflow de melhoria de código em etapas
Olá, quero experimentar. Por acaso é obrigatório usar o Openrouter? Já tenho uma chave de API que uso atualmente, então gostaria de saber se é possível utilizar essa chave.
Olá.
Por acaso, qual API key você está usando?
Em vez da OpenRouter KEY, você pode definir a API key do provedor de cada modelo como variável de ambiente para usar.
OPENAI_API_KEYé compatível com modelos da linha GPTANTHROPIC_API_KEYé compatível com modelos da linha ClaudeGEMINI_API_KEYé compatível com modelos da linha Gemini.É suportado!
Talvez também seja possível mascarar informações sensíveis no nível do código-fonte antes de enviá-lo como entrada para um LLM?
Olá. Segue a resposta.
Atualmente, ao solicitar uma revisão de código, arquivos do tipo
.envjá são totalmente excluídos, mas não existe uma etapa para substituir ou mascarar os “valores” de chaves de API/tokens/senhas etc. presentes no código-fonte.Caso queira excluir informações sensíveis da revisão,
coloque o código que deseja revisar no estado
git stagede execute a revisão com o comando
selvage review --staged; assim, você pode excluir informações sensíveis da entrada enviada ao LLM.Há planos de atualizar com uma funcionalidade semelhante à que você perguntou. A ideia é permitir que o próprio usuário defina, em um arquivo yml, extensões de arquivos a serem excluídas da revisão e padrões específicos no código (expressões regulares), para que as informações sensíveis sejam filtradas de forma adequada em cada projeto.
Uau...