Utilisation de Bugbot pour la révision automatisée du code dans Cursor

Bugbot est l'agent de révision automatisée du code intégré à Cursor qui s'intègre directement à vos dépôts GitHub. Lorsque vous ouvrez une pull request, Bugbot analyse le diff, identifie les bugs potentiels, suggère des améliorations et laisse des commentaires inline sur votre PR. Ce guide couvre tout, de la configuration initiale à la configuration avancée, y compris les problèmes de routage PR et d'intégration GitHub Teams que les utilisateurs du forum rencontrent fréquemment.
Ce que fait Bugbot
Bugbot effectue plusieurs couches d'analyse sur chaque pull request :
- Détection de bugs - Identifie les erreurs de logique, les risques de référence null et les cas limites
- Analyse de sécurité - Signale les vulnérabilités potentielles comme les injections SQL ou les secrets codés en dur
- Style et cohérence - Vérifie les écarts par rapport aux modèles de votre codebase
- Astuces de performance - Met en évidence les modèles inefficaces comme les requêtes N+1
- Couverture de tests - Note quand les modifications manquent de tests correspondants
Bugbot s'exécute entièrement dans le cloud. Vous n'avez pas besoin de garder Cursor ouvert pour que les révisions se fassent. Une fois activé sur un dépôt, Bugbot révisera chaque PR automatiquement, que vous soyez à votre bureau ou non.
Prérequis
Avant de configurer Bugbot, assurez-vous d'avoir :
- Cursor Pro ou plan Business - Bugbot n'est pas disponible sur l'offre gratuite
- Un dépôt GitHub avec les workflows de pull request activés
- Accès administrateur ou mainteneur au dépôt (requis pour l'installation de l'app)
- GitHub Teams configuré si vous souhaitez le routage PR par équipe
Activation de Bugbot sur un dépôt
Le problème le plus couramment signalé par les utilisateurs du forum est Bugbot disant "disabled for this repository." Cela remonte presque toujours à l'étape d'installation de l'app GitHub qui a été ignorée ou partiellement complétée.
Étape 1 : Installer l'app GitHub de Cursor
Bugbot fonctionne via une GitHub App. Si vous ne l'avez pas installée :
- Ouvrez Cursor et accédez à Settings > Features > Bugbot
- Cliquez sur Connect GitHub Account
- Vous serez redirigé vers GitHub pour autoriser l'application Cursor
- Choisissez la portée :
- All repositories - Cursor peut réviser n'importe quel dépôt de votre compte
- Selected repositories - Choisissez des dépôts spécifiques pour la révision
Si vous avez sélectionné des dépôts spécifiques lors de l'installation et que vous créez ensuite un nouveau dépôt, Bugbot ne fonctionnera pas sur le nouveau dépôt jusqu'à ce que vous l'ajoutiez explicitement. C'est la cause numéro un de l'erreur "disabled for this repository". Pour la corriger, allez sur GitHub > Settings > Integrations > Applications > Cursor > Configure, et ajoutez le nouveau dépôt.
Étape 2 : Activer Bugbot dans les paramètres de Cursor
Une fois l'application GitHub installée :
- Ouvrez Cursor Settings (
Cmd/Ctrl + ,) - Accédez à Features > Bugbot
- Basculez Enable Bugbot sur ON
- Sélectionnez les dépôts sur lesquels activer Bugbot
Étape 3 : Vérifier la connexion
Créez une pull request de test et vérifiez si Bugbot répond :
# Create a test branch
git checkout -b test-bugbot-connection
# Make a small change
echo "// Bugbot test" >> README.md
git add README.md
git commit -m "test: verify bugbot connection"
git push origin test-bugbot-connection
Ouvrez une PR sur GitHub. Dans les 30 à 60 secondes, Bugbot devrait publier un commentaire. Si ce n'est pas le cas, passez à la section de dépannage ci-dessous.
Routage PR et assignation des réviseurs
Bugbot peut acheminer les pull requests vers des réviseurs spécifiques en fonction des chemins de fichiers, de la propriété du code ou de l'appartenance à une équipe. Les utilisateurs du forum signalent que le routage PR ne fonctionne pas toujours comme prévu, en particulier avec GitHub Teams.
Comprendre le routage PR
Le routage PR détermine qui reçoit la demande de révision lorsque Bugbot analyse une PR. La logique de routage suit cette priorité :
- Fichier CODEOWNERS - S'il est présent, les propriétaires des fichiers modifiés deviennent les réviseurs
- Mapping GitHub Teams - Routage par équipe via la configuration de Bugbot
- Repli - Tous les mainteneurs reçoivent la demande de révision
Configurer CODEOWNERS
Créez un fichier CODEOWNERS à la racine de votre dépôt (ou .github/CODEOWNERS) :
# Default owners
* @team-leads
# Frontend files
src/components/ @frontend-team
src/pages/ @frontend-team
src/styles/ @frontend-team
# Backend files
src/api/ @backend-team
src/models/ @backend-team
src/middleware/ @backend-team
# Infrastructure
terraform/ @devops-team
docker/ @devops-team
.github/workflows/ @devops-team
# Security-sensitive files
src/auth/ @security-team @team-leads
.env* @security-team
Intégration GitHub Teams
Pour le routage par équipe, Bugbot lit l'appartenance à vos GitHub Teams. Pour configurer :
- Assurez-vous que votre organisation GitHub a des équipes configurées sous Org Settings > Teams
- Ajoutez des membres à chaque équipe
- Référencez les noms d'équipe (avec le préfixe
@) dans CODEOWNERS - Dans Cursor, allez dans Settings > Features > Bugbot > Advanced
- Activez Use GitHub Teams for routing
Les noms d'équipe GitHub dans CODEOWNERS doivent correspondre exactement. Une erreur courante consiste à utiliser des noms d'affichage au lieu du slug d'équipe. Par exemple, si votre équipe s'appelle "Frontend Engineers" avec le slug frontend-engineers, l'entrée CODEOWNERS doit être @frontend-engineers, et non @Frontend Engineers.
Problèmes courants de routage PR
Problème : PR acheminée vers la mauvaise équipe
Symptôme : Une PR modifiant des fichiers backend est acheminée vers l'équipe frontend.
Cause : Chevauchement des modèles CODEOWNERS. Le premier modèle correspondant gagne, et les modèles sont évalués de haut en bas.
Solution : Réorganisez votre fichier CODEOWNERS pour que les modèles plus spécifiques viennent avant les généraux :
# Specific first
src/auth/ @security-team @team-leads
src/api/ @backend-team
# Then general
src/ @all-developers
* @team-leads
Problème : L'équipe ne reçoit pas les demandes de révision
Symptôme : Bugbot révisé la PR mais aucun membre de l'équipe GitHub n'est ajouté comme réviseur.
Cause : L'équipe GitHub est définie comme "secrète" (non visible) ou n'a aucun membre.
Solution : Allez sur GitHub > Organization > Teams > [Nom de l'équipe] > Settings. Assurez-vous que la visibilité de l'équipe n'est pas définie sur "Secret" si vous souhaitez qu'elle reçoive des demandes de révision. Vérifiez que l'équipe a des membres actifs.
Configuration de Bugbot
Au-delà de l'activation de base, Bugbot offre plusieurs options de configuration pour adapter son comportement.
Sévérité de la révision
Contrôlez le niveau de sévérité de Bugbot dans ses résultats :
{
"bugbot.severity": "balanced",
"bugbot.maxComments": 20,
"bugbot.autoResolve": false
}
| Sévérité | Comportement |
|---|---|
| strict | Signale tous les résultats, y compris les problèmes de style mineurs |
| balanced | Signale les bugs, les problèmes de sécurité et les problèmes de style significatifs (par défaut) |
| lenient | Signale uniquement les bugs et les vulnérabilités de sécurité |
Exclusions de fichiers
Empêchez Bugbot de réviser les fichiers générés ou vendus :
{
"bugbot.excludePaths": [
"**/*.min.js",
"**/*.min.css",
"node_modules/**",
"dist/**",
"build/**",
"*.lock",
"package-lock.json",
"yarn.lock"
]
}
Configuration de l'agent de sécurité
Bugbot inclut un agent de sécurité dédié qui scanne les vulnérabilités. Configurez-le indépendamment :
{
"bugbot.securityAgent": {
"enabled": true,
"sensitivityLevel": "high",
"scanForSecrets": true,
"scanForDependencies": true,
"ignorePatterns": [
"test/**",
"__mocks__/**"
]
}
}
L'agent de sécurité scanne les secrets codés en dur (clés API, mots de passe, jetons) dans le diff de votre PR. S'il trouve ce qu'il croit être un secret, il le signalera comme un problème critique. Il s'agit d'une fonctionnalité de sécurité. Ne ignorez jamais ces avertissements sans vérifier que la chaîne signalée n'est pas un vrai secret. Même les fixtures de test qui ressemblent à de vraies clés peuvent être dangereuses si quelqu'un les copie dans du code de production.
Flux d'approbation
Bugbot s'intègre au système d'approbation de révision de GitHub. Vous pouvez configurer si les résultats de Bugbot bloquent la fusion des PR.
Définir les révisions requises
Dans les paramètres de votre dépôt GitHub :
- Allez dans Settings > Branches > Branch protection rules
- Modifiez la règle de votre branche principale
- Sous Require pull request reviews before merging :
- Définissez le nombre d'approbations requises (par ex. 2)
- Activez Dismiss stale pull request approvals lorsque de nouveaux commits sont poussés
- Activez Require review from Code Owners
Bugbot comme réviseur requis
Vous pouvez configurer Bugbot pour qu'il agisse comme un réviseur requis. Lorsqu'il est activé, les PR ne peuvent pas être fusionnées tant que Bugbot n'a pas terminé sa révision et soit approuvé, soit la révision est rejetée.
Dans Cursor :
- Settings > Features > Bugbot > Workflow
- Activez Block merge on critical findings
- Définissez le seuil de sévérité pour le blocage (par défaut : critical et high)
Utilisez la fonctionnalité de blocage avec discernement. Si vous définissez le seuil trop bas (blocage sur les résultats de faible sévérité), les développeurs peuvent se frustrer lorsque des problèmes de style empêchent la fusion. Commencez par "critical et high" et ajustez en fonction de l'expérience de votre équipe.