Selvage - CLI de revisión de código con IA
(github.com/selvage-lab)Hola.
Probablemente muchas personas ya hayan probado usar LLM para revisión de código, pero creo que en la práctica hubo varios puntos engorrosos al aplicarlo.
Esto se debe a que hace falta pasarle al LLM el código a revisar y su contexto, además de especificarle en detalle hasta el formato de resultado deseado.
selvage es una herramienta CLI que automatiza este proceso de preparación para mejorar la eficiencia de la revisión de código.
[Funciones principales]
- Puede usarse como herramienta CLI de forma independiente de IDEs o extensiones específicas
- Soporta modelos SOTA principales (GPT-5, Claude-Sonnet-4, Gemini, Qwen3-code)
- Puede usarse con una OpenRouter API Key bajo un esquema de pago por uso, sin suscripción
- Integración con flujos de trabajo de Git
- Soporta análisis de cambios en trabajo staged, trabajo unstaged y diferencias entre commits/ramas específicas
- Función Smart Context basada en AST (árbol de sintaxis abstracta)
- Extrae solo los bloques mínimos de código y dependencias relacionados con los cambios
- Envía únicamente el contexto imprescindible para reducir el uso de tokens y, al mismo tiempo, maximizar la calidad de la revisión
- Función Large Context Review
- Permite revisar de forma estable cambios de gran escala que superan el Context Limit del modelo (principalmente PR para desplegar una feature específica)
6 comentarios
Hola.
Esta vez hicimos una actualización importante, así que les comparto la novedad.
¡Les agradecería mucho su interés!
Enlace de GitHub: https://github.com/selvage-lab/selvage
🚀 Historial de actualizaciones de funciones principales
🤖 Se agregó el modo servidor MCP (Model Context Protocol) ⭐ NEW
¡Solicita revisiones de código desde la ventana de chat en Cursor, Claude Code y más!
Ahora puedes registrar Selvage como MCP en Cursor, Claude Code y otros, y pedir revisiones de código en lenguaje natural.
El asistente de IA entrega directamente los resultados de la revisión y, después de revisar el feedback, también puedes solicitar mejoras al código en un solo flujo.
Cómo configurarlo:
💡 Escenarios de uso
Ejemplos de uso simples
Flujo de trabajo de mejora de código paso a paso
Hola, me gustaría probarlo, pero ¿es obligatorio usar Openrounter? Actualmente tengo una clave de API que ya estoy usando, así que quisiera saber si puedo usarlo aprovechando esa clave de API.
Hola.
¿Qué API key estás usando?
Puedes usar las Provider API Key de cada modelo configurándolas como variables de entorno en lugar de la OpenRouter KEY.
OPENAI_API_KEYes compatible con los modelos de la familia GPT.ANTHROPIC_API_KEYes compatible con los modelos de la familia Claude.GEMINI_API_KEYes compatible con los modelos de la familia Gemini.¡Es compatible!
¿Es posible enmascarar información sensible a nivel de código fuente antes de que entre como entrada al LLM?
Hola. Respondo a tu consulta.
Actualmente, al solicitar una revisión de código, los archivos tipo
.envse excluyen por completo, pero no existe una etapa para sustituir o enmascarar los “valores” de claves API/tokens/contraseñas, etc. que estén dentro del código fuente.Si deseas excluir información sensible durante la revisión,
después de poner en estado
git stagedel código que quieres revisar,si haces la revisión con el comando
selvage review --staged, podrás excluir la información sensible de la entrada al LLM.Sí tenemos previsto actualizar una función similar a la que mencionas en tu pregunta. Planeamos permitir que el usuario defina directamente en un archivo yml las extensiones de archivo que se excluirán durante la revisión y ciertos patrones dentro del código (expresiones regulares), para que en cada proyecto se filtre adecuadamente la información sensible.
Oh, oh...