Créer mon propre réviseur de code IA pour GitHub (Tuto n8n sans code)

TThe Coding Koala
Computing/SoftwareSmall Business/StartupsInternet Technology

Transcript

00:00:00Récemment, j'ai découvert un outil appelé CodeRabbit, qui est en fait un assistant
00:00:05de revue de code boosté à l'IA. Il s'intègre à des plateformes comme GitHub et fournit
00:00:10des retours ligne par ligne sur les pull requests. Le concept est simple mais puissant.
00:00:16Dès qu'une pull request est ouverte, une IA analyse votre code et laisse des commentaires
00:00:22pour suggérer des améliorations ou signaler des bugs potentiels. Mais comme souvent,
00:00:28la version gratuite est assez limitée et les fonctions complètes sont payantes.
00:00:33Alors j'ai fait ce que tout développeur ferait face à un produit sympa : j'ai essayé
00:00:38de le construire moi-même. Mais cette fois, au lieu d'écrire des centaines de lignes de code,
00:00:44nous allons bâtir tout ce système avec n8n, une plateforme d'automatisation
00:00:51de workflows très puissante. Commençons. Il faut d'abord configurer n8n.
00:00:56Vous avez deux options. La première est de le lancer localement sur votre ordinateur,
00:01:01ce qui est idéal pour tester des workflows rapidement. Cependant, si vous voulez que
00:01:06votre automatisation tourne 24h/24 en arrière-plan, vous devrez l'héberger quelque part.
00:01:12Il y a n8n Cloud, l'hébergement officiel, mais je trouve cela un peu cher car
00:01:17les prix débutent à environ 20 $ par mois et augmentent selon l'utilisation.
00:01:23De plus, configurer n8n de zéro sur un serveur peut s'avérer complexe sans
00:01:28connaissances en administration système. Pour une solution moins chère et plus simple,
00:01:33vous pouvez utiliser Hostinger, qui sponsorise d'ailleurs cette vidéo.
00:01:39Cliquez sur le premier lien en description pour accéder directement à leur page
00:01:44d'auto-hébergement n8n. En regardant les tarifs, vous verrez que les forfaits
00:01:50sont très abordables comparés à n8n Cloud. Mais le prix n'est pas le seul atout.
00:01:56En hébergeant n8n sur un VPS Hostinger, vous avez des workflows illimités, le contrôle
00:02:03total de vos données et un tarif fixe, car vous ne payez pas à l'usage.
00:02:08Autre avantage : Hostinger propose une installation en un clic pour lancer
00:02:14votre instance n8n en quelques minutes seulement. Pour ce tutoriel, je conseille
00:02:20le forfait KVM2, l'option la plus populaire, qui offre assez de ressources pour
00:02:25faire tourner plusieurs workflows. Une fois le forfait choisi, passez à la caisse
00:02:31et sélectionnez la période de facturation. S'engager sur 12 ou 24 mois est plus rentable.
00:02:37Plus bas, vous pourrez choisir la région du serveur et, dans la section système
00:02:42d'exploitation, vous verrez que n8n est déjà présélectionné.
00:02:48Et pour une réduction supplémentaire, utilisez mon code promo DECODINGCOALATEN.
00:02:54Ensuite, créez un compte si besoin, entrez vos informations de paiement et validez.
00:02:58Une fois payé, vous serez redirigé vers la configuration du VPS où vous devrez
00:03:04définir un mot de passe root. Après quelques instants, votre VPS sera prêt
00:03:10et apparaîtra dans votre tableau de bord Hostinger. Et voilà, c'est tout.
00:03:16On peut enfin passer à la partie intéressante : la création du workflow.
00:03:22Cliquez sur "Gérer l'application", créez votre compte n8n, et accédez au dashboard.
00:03:27Dans le tableau de bord, vous avez généralement deux choix pour créer un workflow.
00:03:33Soit vous partez de zéro, soit vous utilisez un modèle déjà existant créé par un tiers.
00:03:38Pour cet outil de revue de code GitHub, nous allons justement partir d'un modèle
00:03:44et le personnaliser selon nos besoins. Importons donc le modèle.
00:03:50Vous pouvez l'importer directement ou copier le modèle dans votre presse-papiers
00:03:55pour le coller dans l'éditeur. Je choisis l'option presse-papiers.
00:04:01Commençons par le premier nœud. C'est le déclencheur GitHub (GitHub Trigger),
00:04:06qui surveille les événements de votre dépôt. Pour le configurer, double-cliquez
00:04:11et créez de nouveaux identifiants. Deux options s'offrent à vous : j'utiliserai
00:04:17l'option OAuth2. Pour les identifiants, allez dans vos paramètres GitHub, puis
00:04:23dans "Developer settings", ouvrez "OAuth apps" et créez une nouvelle application.
00:04:30Donnez-lui un nom. Pour l'URL de rappel, copiez l'URL de redirection fournie par n8n
00:04:36et collez-la. GitHub générera un Client ID et vous pourrez créer un Client Secret.
00:04:42Copiez ces valeurs dans les champs correspondants de n8n, puis connectez
00:04:48et autorisez l'application. Une fois connecté, saisissez le propriétaire et le nom
00:04:54du dépôt, et vérifiez que l'événement est réglé sur "pull request".
00:05:00Désormais, le workflow détectera automatiquement chaque pull request. Le nœud suivant
00:05:06sert à récupérer les différences de fichiers (diffs) de la pull request.
00:05:11Il récupère les changements entre l'ancien et le nouveau code pour que l'IA les analyse.
00:05:17Ensuite, nous avons un nœud JavaScript appelé "create target prompt".
00:05:23Ce nœud prépare l'instruction qui sera envoyée au modèle d'IA. Dans le code,
00:05:29vous verrez une variable "user message" contenant les instructions pour l'IA.
00:05:34Vous pouvez personnaliser ce prompt selon le niveau de détail souhaité pour la revue.
00:05:40Vient ensuite le nœud "code review agent", qui envoie la requête au modèle d'IA.
00:05:45Le modèle original utilise OpenAI et Google Sheets pour les directives de codage.
00:05:51Mais pour ce tutoriel, nous utiliserons Google Gemini. On retire donc le nœud Sheets
00:05:57et on remplace le modèle OpenAI par un modèle Gemini Chat. Collez votre clé API
00:06:04Gemini, et il s'occupera de la revue de code. À ce stade, le workflow fait déjà
00:06:10le plus dur : il détecte les PR, récupère le code, crée le prompt et l'envoie à l'IA.
00:06:16Il ne reste plus qu'à publier les résultats sur GitHub. Le nœud suivant,
00:06:22nommé "GitHub robot", se charge de poster les commentaires directement sur
00:06:27la pull request. On réutilise les identifiants GitHub configurés plus tôt, on entre
00:06:32les détails du dépôt et on sélectionne le type d'événement "comment".
00:06:39Enfin, un dernier nœud GitHub ajoute un label pour identifier que le commentaire
00:06:44vient d'une IA. Double-cliquez, remplissez les infos et personnalisez le label.
00:06:50Voilà, notre workflow est prêt. Avant de tester, cliquons sur "Publish" en haut
00:06:56et donnons-lui un nom. Passons au test. J'utilise un dépôt nommé Quizify,
00:07:03un projet de générateur de quiz par IA. Pour tester, je vais intentionnellement
00:07:09ajouter du mauvais code pour que l'IA ait de quoi critiquer. Créez bien une branche
00:07:16séparée avant de pousser les changements et d'ouvrir une pull request.
00:07:21Si tout est bien configuré, le workflow se déclenchera tout seul.
00:07:30Et comme vous le voyez, l'IA a déjà analysé le code et commencé à laisser
00:07:36des commentaires sur la PR. À chaque nouvelle PR, ce workflow tournera
00:07:43automatiquement. Vous pouvez aussi consulter les logs dans n8n pour vérifier le succès.
00:07:49C'est ainsi que vous pouvez créer votre propre réviseur de code avec n8n
00:07:55hébergé sur Hostinger. Et ce n'est qu'un aperçu de ce que permet n8n.
00:08:00En expérimentant, vous pourrez tout automatiser, des pipelines de déploiement
00:08:06aux agents IA complexes. C'est tout pour cette vidéo. Merci à Hostinger
00:08:12d'avoir sponsorisé ce contenu. N'hésitez pas à aller voir ce qu'ils proposent.
00:08:17Si cette vidéo vous a aidé, likez, partagez et abonnez-vous.
00:08:23À la prochaine !

Key Takeaway

Ce tutoriel démontre comment bâtir son propre assistant de revue de code automatisé en utilisant n8n et Google Gemini pour obtenir des retours pertinents sur GitHub sans frais d'abonnement élevés.

Highlights

Utilisation de n8n comme alternative économique et personnalisable à CodeRabbit pour la revue de code IA.

Avantages de l'auto-hébergement sur un VPS Hostinger pour un contrôle total et des coûts fixes.

Configuration d'un déclencheur GitHub via OAuth2 pour automatiser l'analyse des Pull Requests.

Personnalisation du flux de travail avec des nœuds JavaScript et l'intégration de l'IA Google Gemini.

Automatisation complète du processus : de la détection des changements au postage de commentaires et labels sur GitHub.

Timeline

Introduction et concept du réviseur de code IA

L'auteur introduit CodeRabbit, un outil qui analyse les pull requests ligne par ligne pour suggérer des améliorations, mais souligne les limites de sa version gratuite. Pour pallier cela, il propose de créer une alternative personnalisée en utilisant n8n, une plateforme d'automatisation sans code ultra-puissante. Le concept repose sur le déclenchement automatique d'une IA dès qu'un développeur soumet du nouveau code sur GitHub. Cette approche permet de bénéficier de la puissance des modèles de langage tout en gardant la main sur la logique de revue. L'objectif est de transformer un processus manuel fastidieux en un flux de travail fluide et intelligent.

Hébergement et configuration de l'instance n8n

Le présentateur compare les différentes méthodes pour faire tourner n8n, notamment l'exécution locale, le cloud officiel et l'auto-hébergement. Il recommande l'utilisation d'un VPS Hostinger, car cela offre des workflows illimités et un coût fixe contrairement à la tarification à l'usage de n8n Cloud. Le tutoriel détaille les étapes d'installation en un clic, le choix du forfait KVM2 et la configuration du mot de passe root. Cette section est cruciale pour assurer que l'automatisation fonctionne 24h/24 de manière autonome et sécurisée. L'utilisation d'un code promo est également mentionnée pour réduire les frais de mise en place initiale.

Mise en place du workflow et connexion GitHub

La création du workflow commence par l'importation d'un modèle via le presse-papiers dans l'interface de n8n. L'étape critique ici est la configuration du "GitHub Trigger" en utilisant le protocole OAuth2 pour une sécurité optimale. L'auteur explique comment créer une application OAuth dans les paramètres développeur de GitHub et récupérer les identifiants Client ID et Secret. Une fois la connexion établie, le nœud est configuré pour surveiller spécifiquement les événements de type "pull request" sur un dépôt précis. Cela garantit que chaque modification de code déclenche instantanément la chaîne d'analyse de l'IA sans intervention humaine.

Logique d'analyse IA avec Google Gemini

Cette partie détaille la manipulation des données techniques, notamment la récupération des "diffs" ou différences de fichiers entre les versions du code. Un nœud JavaScript intitulé "create target prompt" est utilisé pour structurer les instructions envoyées à l'intelligence artificielle de manière précise. Bien que le modèle initial utilise OpenAI, l'auteur choisit ici d'intégrer Google Gemini en remplaçant les nœuds correspondants pour plus de flexibilité. Le système prépare ainsi un message utilisateur contenant le code modifié et les directives de révision attendues par le développeur. C'est le cœur du système où l'IA interprète la logique du programme pour déceler d'éventuels bugs ou optimisations.

Publication des commentaires et tests finaux

La dernière phase du workflow consiste à renvoyer les analyses de l'IA directement sur l'interface de GitHub sous forme de commentaires. Un nœud spécifique nommé "GitHub robot" publie les retours, tandis qu'un autre ajoute un label distinctif pour signaler qu'il s'agit d'une revue générée par IA. L'auteur effectue un test réel sur un projet nommé Quizify en introduisant volontairement du code de mauvaise qualité pour vérifier la pertinence des critiques. Les résultats montrent que l'IA identifie correctement les problèmes et laisse des suggestions utiles en temps réel sur la pull request. La vidéo se conclut sur les possibilités infinies d'automatisation qu'offre n8n au-delà de la simple revue de code.

Community Posts

View all posts