English | 简体中文 | 繁體中文 | 日本語 | 한국어 | हिन्दी | Tiếng Việt | Français | Рус../ | Español | Português | Norsk | Svenska | Deutsch | Nederlands | Italiano
Ce guide couvre les problèmes courants et solutions pour installer, configurer et exécuter gac.
- Dépannage de gac
- Table des matières
- 1. Problèmes de configuration
- 2. Problèmes de configuration
- 3. Erreurs de fournisseur/API
- 4. Problèmes de regroupement de commits
- 5. Sécurité et détection de secrets
- 6. Problèmes de hooks Pre-commit et Lefthook
- 7. Problèmes de workflow courants
- 8. Débogage général
- Toujours bloqué ?
- Où obtenir une aide supplémentaire
Problème : Commande uvx non trouvée
- Installez uv en suivant les instructions sur astral.sh/uv
- Assurez-vous que
uvest installé et dans votre$PATH - Redémarrez votre terminal après l'installation
Problème : gac ne trouve pas votre clé API ou modèle
- Si vous êtes nouveau, exécutez
uvx gac initpour configurer de manière interactive votre fournisseur, modèle et clés API - Assurez-vous que vos
.gac.envou variables d'environnement sont correctement configurés - Exécutez
uvx gac --log-level=debugpour voir quels fichiers de configuration sont chargés et déboguer les problèmes de configuration - Vérifiez les fautes de frappe dans les noms de variables (ex:
GAC_GROQ_API_KEY)
Problème : Les changements $HOME/.gac.env au niveau utilisateur ne sont pas pris en compte
- Assurez-vous d'éditer le bon fichier pour votre OS :
- Sur macOS/Linux :
$HOME/.gac.env(habituellement/Users/<votre-nom-utilisateur>/.gac.envou/home/<votre-nom-utilisateur>/.gac.env) - Sur Windows :
$HOME/.gac.env(généralementC:\Users\<votre-nom-utilisateur>\.gac.envou utilisez%USERPROFILE%)
- Sur macOS/Linux :
- Exécutez
uvx gac --log-level=debugpour confirmer que la configuration au niveau utilisateur est chargée - Redémarrez votre terminal ou ré-exécutez votre shell pour recharger les variables d'environnement
- Si cela ne fonctionne toujours pas, vérifiez les fautes de frappe et les permissions de fichier
Problème : Les changements .gac.env au niveau projet ne sont pas pris en compte
- Assurez-vous que votre projet contient un fichier
.gac.envdans le répertoire racine (à côté de votre dossier.git) - Exécutez
uvx gac --log-level=debugpour confirmer que la configuration au niveau projet est chargée - Si vous éditez
.gac.env, redémarrez votre terminal ou ré-exécutez votre shell pour recharger les variables d'environnement - Si cela ne fonctionne toujours pas, vérifiez les fautes de frappe et les permissions de fichier
Problème : Impossible de définir ou changer la langue des messages de commit
- Exécutez
uvx gac language(ouuvx gac lang) pour sélectionner de manière interactive parmi 25+ langues supportées - Utilisez le drapeau
-l <langue>pour remplacer la langue pour un seul commit (ex:uvx gac -l zh-CN,uvx gac -l French) - Vérifiez votre configuration avec
uvx gac config showpour voir le paramètre de langue actuel - Le paramètre de langue est stocké dans
GAC_LANGUAGEdans votre fichier.gac.env
Problème : Erreurs d'authentification ou API
- Assurez-vous d'avoir configuré les clés API correctes pour votre modèle choisi (ex:
ANTHROPIC_API_KEY,GROQ_API_KEY) - Vérifiez deux fois votre clé API et le statut du compte de votre fournisseur
- Pour Ollama et LM Studio, confirmez que l'URL API correspond à votre instance locale. Les clés API ne sont nécessaires que si vous avez activé l'authentification.
- Pour l'expiration du jeton Claude Code : Exécutez
uvx gac authpour vous réauthentifier rapidement et actualiser votre jeton. Votre navigateur s'ouvrira automatiquement pour OAuth. - Pour l'expiration du jeton ChatGPT OAuth : Exécutez
uvx gac auth chatgpt loginpour vous réauthentifier. Votre navigateur s'ouvrira automatiquement pour OAuth. - Pour les autres problèmes OAuth de Claude Code, consultez le guide de configuration Claude Code pour un dépannage complet.
- Pour les autres problèmes OAuth de ChatGPT, consultez le guide de configuration ChatGPT OAuth pour un dépannage complet.
- Pour l'expiration des jetons de session GitHub Copilot : Exécutez
uvx gac auth copilot loginpour vous réauthentifier via Device Flow. Les jetons de session sont automatiquement renouvelés à partir du jeton OAuth mis en cache. - Pour d'autres problèmes GitHub Copilot, consultez le guide de configuration GitHub Copilot pour un dépannage complet.
Problème : Modèle non disponible ou non supporté
- Streamlake utilise des IDs de point de terminaison d'inférence au lieu de noms de modèle. Assurez-vous de fournir l'ID de point de terminaison de leur console.
- Vérifiez que le nom du modèle est correct et supporté par votre fournisseur
- Vérifiez la documentation du fournisseur pour les modèles disponibles
Problème : Le drapeau --group ne fonctionne pas comme attendu
- Le drapeau
--groupanalyse automatiquement les changements indexés et peut créer plusieurs commits logiques - L'IA peut décider qu'un seul commit a du sens pour votre ensemble de changements indexés, même avec
--group - Ceci est un comportement intentionnel - l'IA groupe les changements basés sur les relations logiques, pas seulement la quantité
- Assurez-vous d'avoir plusieurs changements non liés indexés (ex: correction de bug + ajout de fonctionnalité) pour de meilleurs résultats
- Utilisez
uvx gac --show-promptpour déboguer ce que voit l'IA
Problème : Commits regroupés incorrectement ou non regroupés quand attendu
- Le regroupement est déterminé par l'analyse de vos changements par l'IA
- L'IA peut créer un seul commit si elle détermine que les changements sont logiquement liés
- Essayez d'ajouter des indices avec
-h "indice"pour guider la logique de regroupement (ex:-h "séparer la correction de bug de la refactorisation") - Revoyez les groupes générés avant de confirmer
- Si le regroupement ne fonctionne pas bien pour votre cas d'usage, commitez les changements séparément à la place
Important : L'analyse de secrets s'exécute avant tout appel à une API d'IA. Si un secret est détecté, le workflow est immédiatement abandonné et aucun appel API n'est effectué. L'analyseur utilise la correspondance de motifs basée sur des regex (pas des LLM), l'analyse est donc rapide et s'exécute entièrement en local — votre code n'est jamais envoyé à un modèle d'IA pour la détection de secrets.
Problème : Faux positif : l'analyse de secrets détecte des non-secrets
- L'analyseur de sécurité recherche des motifs regex qui ressemblent à des clés API, jetons et mots de passe
- Si vous commitez du code d'exemple, des fixtures de test, ou de la documentation avec des clés de remplacement, vous pouvez voir des faux positifs
- Utilisez
--skip-secret-scanpour contourner l'analyse si vous êtes certain que les changements sont sûrs - Envisagez d'exclure les fichiers d'exemple/test des commits, ou utilisez des remplacements clairement marqués
Problème : L'analyse de secrets ne détecte pas de vrais secrets
- L'analyseur utilise la correspondance de motifs basée sur des regex (pas des LLM) et peut ne pas attraper tous les types de secrets
- Revoyez toujours vos changements indexés avec
git diff --stagedavant de commiter - Envisagez d'utiliser des outils de sécurité supplémentaires comme
git-secretsougitleakspour une protection complète - Signalez tous les motifs manqués comme des problèmes pour aider à améliorer la détection
Problème : Besoin de désactiver l'analyse de secrets de manière permanente
- Définissez
GAC_SKIP_SECRET_SCAN=truedans votre fichier.gac.env - Utilisez
uvx gac config set GAC_SKIP_SECRET_SCAN true - Note : Ne désactivez que si vous avez d'autres mesures de sécurité en place
Problème : Les hooks pre-commit ou lefthook échouent et bloquent les commits
- Utilisez
uvx gac --no-verifypour sauter temporairement tous les hooks pre-commit et lefthook - Corrigez les problèmes sous-jacents causant l'échec des hooks
- Envisagez d'ajuster votre configuration pre-commit ou lefthook si les hooks sont trop stricts
Problème : Les hooks pre-commit ou lefthook prennent trop de temps ou interfèrent avec le workflow
- Utilisez
uvx gac --no-verifypour sauter temporairement tous les hooks pre-commit et lefthook - Envisagez de configurer les hooks pre-commit dans
.pre-commit-config.yamlou les hooks lefthook dans.lefthook.ymlpour être moins agressifs pour votre workflow - Revoyez votre configuration de hook pour optimiser les performances
Problème : Aucun changement à commiter / rien d'indexé
- gac nécessite des changements indexés pour générer un message de commit
- Utilisez
git add <fichiers>pour indexer les changements, ou utilisezuvx gac -apour indexer automatiquement tous les changements - Vérifiez
git statuspour voir quels fichiers ont été modifiés - Utilisez
uvx gac diffpour voir une vue filtrée de vos changements
Problème : Le message de commit n'est pas ce que j'attendais
- Utilisez le système de feedback interactif : tapez
rpour relancer,epour éditer (TUI intégrée, ou éditeur externe viaGAC_EDITOR), ou fournissez un feedback en langage naturel - Ajoutez du contexte avec
-h "votre indice"pour guider l'IA - Utilisez
-opour des messages plus simples sur une ligne ou-vpour des messages plus détaillés - Utilisez
--show-promptpour voir quelles informations l'IA reçoit
Problème : gac est trop lent
- Utilisez
uvx gac -ypour sauter l'invite de confirmation - Utilisez
uvx gac -qpour le mode silencieux avec moins de sortie - Envisagez d'utiliser des modèles plus rapides/bon marché pour les commits de routine
- Utilisez
uvx gac --no-verifypour sauter les hooks s'ils vous ralentissent
Problème : Impossible d'éditer ou de fournir un feedback après la génération du message
- À l'invite, tapez
epour entrer en mode édition (TUI intégrée avec bindings vi/emacs ; définissezGAC_EDITORpour utiliser votre éditeur préféré à la place) - Tapez
rpour régénérer sans feedback - Ou tapez simplement votre feedback directement (ex: "rends-le plus court", "concentre-toi sur la correction du bug")
- Appuyez sur Entrée sur une entrée vide pour voir l'invite à nouveau
- Utilisez
uvx gac initpour réinitialiser ou mettre à jour votre configuration de manière interactive - Utilisez
uvx gac --log-level=debugpour une sortie de débogage détaillée et le logging - Utilisez
uvx gac --show-promptpour voir quel prompt est envoyé à l'IA - Utilisez
uvx gac --helppour voir tous les drapeaux de ligne de commande disponibles - Utilisez
uvx gac config showpour voir toutes les valeurs de configuration actuelles - Vérifiez les logs pour les messages d'erreur et les traces de pile
- Vérifiez le README.md principal pour les fonctionnalités, exemples et instructions de démarrage rapide
- Cherchez les problèmes existants ou ouvrez-en un nouveau sur le dépôt GitHub
- Incluez des détails sur votre OS, version Python, version gac, fournisseur, et sortie d'erreur
- Plus vous fournissez de détails, plus votre problème peut être résolu rapidement
- Pour les fonctionnalités et exemples d'utilisation, voir le README.md principal
- Pour les prompts système personnalisés, voir CUSTOM_SYSTEM_PROMPTS.md
- Pour les directives de contribution, voir CONTRIBUTING.md
- Pour les informations de licence, voir ../LICENSE