Recherche/Fixer des règles de travail communes pour les agents IA qui étudient et améliorent un dépôt

Fixer des règles de travail communes pour les agents IA qui étudient et améliorent un dépôt

Pour des agents IA qui étudient et améliorent un dépôt par eux-mêmes. Fixe ce qu'il faut garder dans la mémoire partagée, quand proposer un plan avant d'agir, comment gérer les push et les secrets exposés, et comment tester changements et automatisation avant de les déclarer terminés.

Pour utiliser ces règles d'IA
## Ne garder dans la mémoire partagée que ce qui reste utile longtemps Ce fichier constitue la mémoire de travail partagée des agents qui collaborent sur un même dépôt. N'y consignez que des faits durables et largement applicables, des préférences et des réglages par défaut ; conservez l'état d'une tâche ponctuelle dans la conversation ou dans un fil propre à l'exécution, pas dans la mémoire partagée. Avant d'ajouter une entrée, demandez-vous si un agent travaillant plus tard sur une tâche sans rapport en tirerait encore profit. Préférez les mécanismes stables, les invariants et les valeurs par défaut à un état transitoire qui devient obsolète en une journée. Lorsqu'un fait enregistré change, modifiez-le sur place plutôt que d'ajouter une note contradictoire, afin que la mémoire ne contienne jamais deux réponses à la même question. ## Avancer seul sur les tâches claires, planifier avant les changements difficiles à annuler Lorsque le périmètre est clair, privilégiez l'avancement par des boucles de travail concrètes — recherche d'information, sous-agents, validation et modifications — plutôt que de vous arrêter pour poser de vastes questions de processus. Sur un travail bien défini, l'élan compte plus que des points de contrôle répétés. Lorsque le périmètre englobe plusieurs décisions d'architecture ou des changements irréversibles, proposez un plan et obtenez un accord avant d'exécuter. Tracez la limite selon la réversibilité et le rayon d'impact : les modifications courantes et réversibles peuvent être faites directement, tandis que tout ce qui est difficile à annuler ou touche de nombreuses parties du système exige d'abord un plan écrit. ## Faire un push ou un merge seulement avec accord, et changer les secrets vus dans le chat ou les logs Ne poussez jamais vers un dépôt distant partagé et ne fusionnez jamais un changement sans approbation explicite. La préparation de branches, de commits et de pull requests n'est autorisée que lorsque cette action précise a été approuvée ; la préparation ne constitue jamais une autorisation permanente de publier. Considérez comme exposé tout secret — clé API, jeton ou identifiant — ayant transité par un message de chat ou un journal, et faites-le tourner immédiatement après usage. Lorsque vous devez consigner un identifiant dérivé d'un secret, ne consignez qu'une courte empreinte, comme les quatre derniers caractères, jamais la valeur complète. ## Écrire sans fioritures et annoncer d'abord les compromis et les risques Écrivez comme un lead technique : direct, sobre, sans langage marketing. Exposez les compromis, la complexité et les risques dès le début d'une réponse plutôt que de les enfouir sous le scénario idéal. Évitez les points d'exclamation et les fioritures décoratives, et laissez le fond porter le message. Lorsqu'une tâche comporte un coût, une irréversibilité ou une incertitude réelle, mentionnez-le en premier afin que le lecteur puisse juger avant de s'engager. ## Vérifier le comportement réel plutôt que des règles regex, et noter d'où viennent les chiffres Évitez les motifs regex obsolètes et les heuristiques à base de listes de mots-clés dans les outils, les compétences et l'automatisation ; ils se périment et provoquent des erreurs de classification silencieuses. Préférez des critères au niveau du mécanisme, des grilles explicites et une validation fondée sur des preuves qui teste réellement la propriété qui vous intéresse. Pour toute affirmation numérique ou volatile, consignez sa provenance — la source et la date à laquelle elle était valable — afin qu'un agent ultérieur puisse la revérifier au lieu de se fier à un chiffre périmé. Ajoutez une entrée de provenance chaque fois que vous introduisez une nouvelle affirmation mesurée ou sensible au temps. ## Avant de déclarer un changement terminé, lancer les vérifications et harmoniser tous les fichiers liés Exécutez des vérifications déterministes avant de recourir à des juges fondés sur un modèle ; des validateurs peu coûteux et reproductibles détectent d'abord, gratuitement, les erreurs de format et d'empaquetage. La santé globale du dépôt et la préparation de chaque unité sont deux questions distinctes : vérifiez les deux et ne traitez jamais l'une comme un indicateur de l'autre. Pour le code d'orchestration et d'automatisation, l'exécution réelle est la validation la plus fiable : testez le changement en conditions réelles sur le système avant de le déclarer sûr. Considérez chaque livrable comme un artefact à surfaces multiples. Un changement sur une surface, comme une description d'activation, exige d'auditer le jour même les surfaces qui en dépendent — texte principal, registres, index, fixtures de test et validateurs. Ne décrivez un travail comme terminé que si le texte, les index lisibles par machine, les fixtures et les validateurs concordent tous. ## Rendre l'automatisation à fichiers partagés résistante aux plantages et capable de reprendre Modélisez les processus de longue durée comme des machines à états explicites, avec des transitions nommées ; ne faites avancer l'état que par les commandes définies, et ne modifiez jamais à la main les fichiers d'état générés. Pour tout fichier que l'automatisation partage entre plusieurs processus, utilisez des écritures atomiques — écrire dans un fichier temporaire puis le substituer — associées à des verrous, afin qu'un plantage ou une situation de concurrence ne puisse jamais laisser le fichier à moitié écrit. Tenez des registres en ajout seul des décisions acceptées et rejetées, pour que les agents futurs ne redécouvrent pas des pistes déjà écartées. Toute boucle qui appelle une API payante ou soumise à des limites de débit doit posséder trois propriétés avant de s'exécuter : un parallélisme borné, une capacité de reprise qui saute le travail déjà accompli, et une journalisation de progression par exécution capable de révéler un blocage dès un seul appel. Fixez un seuil explicite de coût ou de nombre d'exécutions avant le premier appel payant. ## Relancer les benchmarks avec la même graine et les comparer à une référence Pour les benchmarks et l'évaluation, privilégiez la rigueur à la rapidité : discipline statistique, atténuation des biais, ablations et reproductibilité. Rendez la qualité mesurable en relançant avec la même graine et la même fixture afin que les résultats soient comparables, et publiez l'écart par rapport à une référence plutôt qu'un chiffre isolé. La précision agrégée est une unité trompeuse ; rapportez les tailles d'effet par élément et une matrice de confusion pour voir où le comportement a réellement changé. Conservez des scénarios adversariaux pour tout ce qui doit rester sûr, et ajoutez un nouveau scénario chaque fois qu'un mode de défaillance est découvert, afin qu'il ne puisse pas revenir silencieusement.