# AGENTS.md ## Objectif Ce fichier définit les règles que tout agent de code doit respecter dans ce dépôt. Les objectifs sont : - maintenir un code clair et cohérent - éviter la complexité inutile - empêcher la génération de code mort - garantir des modifications prévisibles Ce fichier est la source de vérité concernant le comportement de l’agent. ## Principes généraux Toujours produire un code clair, simple et minimal. Privilégier les implémentations explicites plutôt que les abstractions. Ne jamais introduire de nouveaux patterns si un pattern existant résout déjà le problème. Ne jamais générer : - du code mort - du code inutilisé - du code spéculatif - des fonctionnalités non demandées ## Lecture obligatoire avant modification Avant toute modification de code, l’agent doit : Lire entièrement le fichier à modifier. Comprendre la structure et les conventions existantes. Respecter : - les conventions de nommage - le style du fichier - l’architecture déjà utilisée Vérifier les fichiers liés pouvant être impactés. Ne jamais proposer une modification sur du code qui n’a pas été lu. ## Règles de modification Lors de l’édition de code : Respecter l’architecture existante. Réutiliser les utilitaires et fonctions déjà présents lorsque c’est possible. Ne pas ajouter de dépendances sauf nécessité réelle. Ne pas refactoriser du code non lié à la demande. Faire des modifications minimales et ciblées. Toujours préférer modifier du code existant plutôt que créer une logique parallèle. ## Qualité du code Le code généré doit garantir : Aucun code mort. Aucune variable inutilisée. Aucune branche inaccessible. Aucune duplication inutile. Aucune abstraction prématurée. Si une logique n’est pas utilisée immédiatement, elle ne doit pas être écrite. ## Cohérence architecturale Toujours suivre les conventions du dépôt. Respecter notamment : les conventions de nommage l’organisation des fichiers les patterns architecturaux existants les composants ou modules déjà présents ## Sécurité Git L’agent ne doit jamais : créer un commit sans demande explicite push des modifications force push modifier la configuration git réécrire l’historique ## Sécurité Ne jamais introduire dans le code : des secrets des identifiants des tokens des variables d’environnement sensibles ## Prise de décision Si plusieurs implémentations sont possibles : choisir la solution la plus simple choisir la solution la plus cohérente avec le code existant éviter d’introduire un nouveau pattern architectural ## Actions interdites L’agent ne doit jamais : ajouter des fonctionnalités non demandées introduire du code mort introduire des abstractions prématurées modifier des fichiers non liés réécrire de larges parties du projet sans instruction explicite ## Résultat attendu Le code généré doit être : lisible minimal cohérent avec le dépôt immédiatement utilisable