1. Installer le plugin Qodo dans Codex (VS Code)
Le plugin Qodo étend Codex avec les capacités de revue de code et de compréhension des standards de votre entreprise (F9). Voici comment l’activer :
- Ouvrez Codex dans VS Code : Lancez l’extension Codex depuis la barre latérale de VS Code.
- Accédez aux plugins : Cliquez sur Plugins dans la barre de navigation de gauche.
- Recherchez et installez Qodo : Tapez
Qododans la barre de recherche, puis cliquez sur+pour l’ajouter (F1). - Connectez votre compte Qodo : Une invite vous demandera de vous authentifier avec vos identifiants Qodo (nécessaire pour accéder à vos règles internes).
Note : Le plugin est disponible en tant que plugin vérifié sur le marketplace Codex (F9).
2. Importer vos règles internes dans Qodo
Qodo applique vos conventions de code via des règles (*rules*), définies comme des standards d’ingénierie explicites et applicables (F2). Voici comment les configurer :
2.1. Configurer les sources d’import
Qodo synchronise automatiquement les règles depuis des fichiers ou dossiers spécifiques dans votre dépôt. Voici comment les définir :
- Connectez-vous au portail Qodo : Accédez à
Configurations > Context > Review standards > Rule import. - Ajoutez les fichiers sources : Sous Rule files, Qodo liste par défaut les fichiers supportés (ex:
AGENTS.md,best_practices.md,RULE.md,pr_compliance_checklist.yaml) (F4). Vous pouvez ajouter vos propres noms de fichiers. - Ajoutez les dossiers sources : Sous Rule folders, spécifiez les dossiers à traiter comme sources de règles (ex:
/docs/rules). Tous les fichiers dans ces dossiers seront importés (F4). - Définissez des instructions d’import : Sous Rule import instructions, ajoutez des consignes en texte libre pour guider l’extraction des règles (ex: « Extraire uniquement les règles marquées comme critiques ») (F5).
- Sauvegardez les changements : Cliquez sur Save changes pour appliquer la configuration.
Exemple : Si vous placez un fichier AGENTS.md dans src/payments/, les règles qu’il contient s’appliqueront uniquement au code dans src/payments/ et ses sous-dossiers (F4).
2.2. Générer et activer des règles
Vous pouvez aussi créer des règles manuellement depuis le portail Qodo :
- Générez une règle : Depuis l’onglet Rules, cliquez sur Generate et décrivez la règle en langage naturel (ex: « Interdire les requêtes SQL concaténées avec des entrées utilisateur ») (F3).
- Vérifiez les conflits : Qodo vérifie automatiquement les conflits, duplications ou chevauchements de portée avant activation (F3).
- Activez la règle : Cliquez sur Accept & activate. Pour les organisations créées avant le 30 septembre 2026, les règles apparaissent dans l’onglet Pending rules pour validation (F6).
- Verrouillez les règles critiques : Pour empêcher Qodo de désactiver automatiquement une règle (ex: interdiction des
console.logen production), sélectionnez Active with the lock icon (F11). Exemple : interdire lesconsole.logen production (si la règle est verrouillée).
2.3. Synchronisation automatique et limites
- Synchronisation continue : Qodo surveille les fichiers déjà importés et met à jour les règles à chaque push (F4). Les modifications des fichiers existants sont synchronisées automatiquement ; les nouveaux fichiers nécessitent une réimportation manuelle.
- Nouveaux fichiers : Les fichiers ajoutés après l’import initial ne sont pas détectés automatiquement. Une réimportation manuelle du dépôt est nécessaire via Import rules and skills (F12).
3. Appliquer les règles en pré-PR avec Codex
Le skill get-qodo-rules permet à Codex d’accéder directement à vos règles Qodo et de les appliquer dans l’IDE ou en CI/CD (F7). Voici comment l’utiliser :
3.1. Configurer le skill dans Codex
- Activez le skill : Dans Codex, recherchez le skill
get-qodo-ruleset activez-le. - Fournissez votre clé API Qodo : Le skill nécessite une clé API Qodo pour accéder à vos règles (F8).
- Chargez les règles : Utilisez la commande
@qodo get-rulesdans Codex pour charger les règles applicables à votre dépôt ou chemin spécifique.
3.2. Exemple concret : Dépôt FastAPI
Prenons un dépôt FastAPI où vous souhaitez interdire les requêtes SQL non paramétrées. Voici comment procéder :
- Créez un fichier
RULE.mddans le dossiersrc/database/avec le contenu suivant :# Règle : Interdire les requêtes SQL non paramétrées - **Description** : Les requêtes SQL concaténées avec des entrées utilisateur sont interdites pour éviter les injections SQL. - **Exemple de violation** : `cursor.execute("SELECT * FROM users WHERE name = '" + user_input + "'")` - **Exemple conforme** : `cursor.execute("SELECT * FROM users WHERE name = ?", (user_input,))` - **Sévérité** : Critique - Importez le fichier dans Qodo : Comme décrit en 2.1, configurez Qodo pour importer
RULE.mddepuissrc/database/. - Appliquez la règle dans Codex : Dans VS Code, ouvrez un fichier Python dans
src/database/et utilisez la commande@qodo reviewpour lancer une revue de code. Codex affichera les violations de la règle, le cas échéant.
3.3. Intégration CI/CD (GitHub Actions)
Exemple de workflow pour appliquer les règles avant l’ouverture d’une PR :
name: Qodo Codex Pre-PR Review
on: [push]
jobs:
qodo-review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Run Qodo Codex Review
run: |
# Charge les règles Qodo dans Codex
curl -X POST "https://api.qodo.ai/v1/rules/fetch" \
-H "Authorization: Bearer ${{ secrets.QODO_API_KEY }}" \
-H "Content-Type: application/json" \
-d '{"repo": "${{ github.repository }}", "path": "${{ github.workspace }}"}' \
-o qodo_rules.json
# Lance une revue de code avec Codex
codex review --rules qodo_rules.json --output qodo_report.json
- name: Upload Qodo Report
uses: actions/upload-artifact@v3
with:
name: qodo-report
path: qodo_report.json
Note : Ce workflow nécessite que Codex soit configuré pour utiliser le skill get-qodo-rules et que l’API Qodo soit accessible via une clé valide (F8).
4. Portée et limites de la détection
Qodo + Codex automatise la détection des violations de règles, mais avec des limites importantes :
4.1. Ce que Qodo détecte
- Conventions de code : Respect des standards définis dans vos fichiers importés (ex: structure du code, bonnes pratiques) (F2).
- Règles critiques verrouillées : Standards comme l’interdiction des
console.logen production, si la règle est verrouillée (F11). - Portée contextuelle : Les règles s’appliquent uniquement aux fichiers ou dossiers spécifiés (ex: règles dans
src/payments/ne s’appliquent pas àsrc/auth/) (F4).
4.2. Ce que Qodo ne détecte pas automatiquement
- Problèmes critiques non couverts par vos règles : Qodo ne détecte que les problèmes explicitement décrits dans vos règles. Par exemple, une violation de standard critique ne sera pas détectée si aucune règle ne l’interdit (limitations).
- Nouveaux fichiers : Les fichiers ajoutés après l’import initial nécessitent une réimportation manuelle (F12).
- Faux positifs/négatifs : Comme tout outil de revue de code, Qodo peut générer des faux positifs (ex: flaguer une requête SQL paramétrée comme non conforme) ou des faux négatifs (ex: ne pas détecter une violation de règle mal définie).
5. Ressources utiles
- Automatisation no-code : Make, Zapier, n8n : Pour automatiser d’autres aspects de votre workflow DevOps.
- Automatiser la veille DevOps avec n8n : Centralisez les alertes GitHub et Docker Hub.
- Expertise IA pour les apps métier : Découvrez comment intégrer l’IA dans vos outils internes.