Selvage - CLI d’IA pour la revue de code
(github.com/selvage-lab)Bonjour.
Beaucoup d’entre vous ont sans doute déjà essayé d’utiliser des LLM pour la revue de code, mais leur mise en pratique s’accompagnait probablement de certaines contraintes.
En effet, il faut transmettre au LLM le code à examiner ainsi que son contexte, puis préciser en détail le format de résultat souhaité.
selvage est un outil CLI qui automatise cette phase de préparation afin d’améliorer l’efficacité de la revue de code.
[Principales fonctionnalités]
- Outil CLI utilisable indépendamment d’un IDE ou d’une extension en particulier
- Prise en charge des principaux modèles SOTA (GPT-5, Claude-Sonnet-4, Gemini, Qwen3-code)
- Utilisation possible avec une clé d’API OpenRouter, sans abonnement, sur la base de l’usage
- Intégration au workflow Git
- Prise en charge de l’analyse des modifications staged, des modifications unstaged, ainsi que des différences entre des commits ou des branches spécifiques
- Fonction d’extraction de Smart Context basée sur l’AST (arbre syntaxique abstrait)
- Extraction uniquement des blocs de code minimaux et des dépendances liés aux modifications
- Transmission du seul contexte nécessaire pour réduire l’usage de tokens tout en maximisant la qualité de la revue
- Fonction de Large Context Review
- Revue fiable même pour des modifications de grande ampleur dépassant la limite de contexte du modèle (principalement les PR visant à déployer une fonctionnalité donnée)
6 commentaires
Bonjour.
Nous avons effectué une mise à jour majeure et souhaitions vous en faire part.
Merci d’avance pour votre intérêt !
Lien GitHub : https://github.com/selvage-lab/selvage
🚀 Principales mises à jour des fonctionnalités
🤖 Ajout du mode serveur MCP (Model Context Protocol) ⭐ NEW
Demandez des revues de code directement depuis la fenêtre de chat de Cursor, Claude Code, etc. !
Vous pouvez désormais enregistrer Selvage comme MCP dans Cursor, Claude Code, etc., et demander une revue de code en langage naturel.
Les résultats de la revue sont transmis directement par l’assistant IA, et après examen des retours, vous pouvez même demander l’amélioration du code dans la foulée.
Méthode de configuration :
💡 Scénarios d’utilisation
Exemple d’utilisation simple
Workflow d’amélioration du code étape par étape
Bonjour, j’aimerais l’essayer, mais est-ce qu’il faut forcément utiliser Openrouter ? J’ai déjà une clé API que j’utilise actuellement, donc je me demande s’il est possible de l’utiliser.
Bonjour.
Pouvez-vous préciser quelle clé API vous utilisez actuellement ?
Au lieu d'une clé OpenRouter, vous pouvez définir la clé API du fournisseur de chaque modèle comme variable d'environnement.
OPENAI_API_KEYest pris en charge pour les modèles de la famille GPT,ANTHROPIC_API_KEYpour les modèles de la famille Claude,et
GEMINI_API_KEYpour les modèles de la famille Gemini.C'est pris en charge !
Est-il possible de masquer aussi les informations sensibles au niveau du code source avant qu’elles ne soient transmises en entrée au LLM ?
Bonjour. Voici la réponse.
Actuellement, lors d'une demande de revue de code, les fichiers de type
.envsont totalement exclus, mais il n'existe pas d'étape qui remplace ou masque les « valeurs » telles que les clés d'API, tokens ou mots de passe présents dans le code source.Si vous souhaitez exclure des informations sensibles lors de la revue,
après avoir placé le code à relire en état
git staged,vous pouvez lancer la revue avec la commande
selvage review --stagedafin d'exclure les informations sensibles de l'entrée envoyée au LLM.Une mise à jour proposant une fonctionnalité similaire à celle que vous avez mentionnée est prévue. Nous comptons permettre aux utilisateurs de définir directement, via un fichier yml, les extensions de fichiers à exclure lors de la revue ainsi que des motifs spécifiques dans le code (expressions régulières), afin que les informations sensibles soient filtrées de manière adaptée à chaque projet.
Oh oh...