Le Problème à Trois Corps des Instructions Agent IA
analysis#eureka#three-body problem#instruction hierarchy

Le Problème à Trois Corps des Instructions Agent IA

En physique, le problème à trois corps n'a pas de solution générale. En architecture agent, trois sources d'instructions créent la même orbite chaotique.

25 février 202610 min de lecture
Partager

Auditez votre stack agent en 30 minutes

Obtenez la checklist de durcissement gratuite en 10 points. Configs prêtes à copier-coller pour Docker, Caddy, Nginx et UFW incluses.

Obtenir la checklist gratuite →

Le chaos

Voici un scénario que tout développeur utilisant des agents IA a vécu :

  • CLAUDE.md dit : « Utiliser TypeScript strict mode pour tout nouveau fichier »
  • AGENTS.md dit : « Suivre les conventions du codebase existant »
  • lessons.md dit : « Éviter les annotations de type excessives »

L'agent tombe sur un fichier JavaScript à modifier. Que fait-il ?

Il ne suit aucune instruction de manière cohérente. Il oscille. Un run : convertit en TypeScript. Le suivant : garde JavaScript. Le troisième : convertit sans types.

Ce n'est pas un bug du modèle. C'est de la physique.

Le problème à trois corps

En mécanique céleste, le problème à trois corps décrit trois objets exerçant une force gravitationnelle mutuelle. Contrairement au problème à deux corps, c'est chaotique — de petits changements donnent des résultats radicalement différents.

flowchart LR C["CLAUDE.md"] <--->|"force"| A["AGENTS.md"] A <--->|"force"| L["lessons.md"] C <--->|"force"| L C -.- G["⚠️ Attraction gravitationnelle mutuelle"] A -.- G L -.- G

Avec deux sources, l'agent négocie une orbite stable. Avec trois — chaos.

Trois sources d'instructions concurrentes sans hiérarchie = comportement non déterministe.

Le papier AGENTS.md l'a mesuré. Le papier Pythia montre des performances oscillant entre 1,0 et 0,0.

La solution hiérarchique

La physique dit pas de solution générale. L'ingénierie dit : imposez une hiérarchie.

flowchart TD P1["🏛️ Priorité 1 — Constitutionnel
CLAUDE.md"] -->|surclasse| P2["📋 Priorité 2 — Procédural
AGENTS.md / SKILL.md"] P2 -->|surclasse| P3["🧠 Priorité 3 — Expérientiel
lessons.md"] P3 -->|surclasse| P4["⏳ Priorité 4 — Éphémère
todo.md / conversation"]
  1. CLAUDE.md gagne. Toujours. C'est la constitution.
  2. AGENTS.md l'emporte sur lessons.md.
  3. lessons.md fournit des suggestions, pas des mandats.

Contrôleurs PID pour agents

Un contrôleur PID — le système de rétroaction le plus déployé en ingénierie :

  • P (Proportionnel) : Réaction à l'erreur courante → Instructions de tâche
  • I (Intégral) : Accumulation des erreurs passées → lessons.md
  • D (Dérivé) : Prédiction de l'erreur future → Hooks/automatisation

L'integral windup

Quand la composante I accumule trop d'historique, elle dépasse la cible. Le système oscille. C'est exactement ce qui se passe avec lessons.md.

Mécanismes anti-windup :

  • Clamping : Plafond intégral → Max règles par scope
  • Intégration conditionnelle : N'accumuler que pour des problèmes vérifiés
  • Back-calculation : Quand la sortie sature, élaguer

Un lessons.md sans anti-windup est un PID sans clamping. Il oscillera vers l'instabilité.

La solution d'ingénierie

1. Hiérarchie constitutionnelle

# Dans CLAUDE.md (Priorité 1)
HIÉRARCHIE D'INSTRUCTIONS :
1. Ce fichier fait autorité
2. AGENTS.md/SKILL.md = procédures
3. lessons.md = suggestions uniquement
4. En cas de conflit, la priorité supérieure gagne

2. Anti-windup pour les leçons

# En-tête lessons.md
MAX_RULES_PER_SCOPE: 10
TTL_DAYS: 60

## Format :
- Scope: [backend|frontend|api|tests]
- Ajouté: AAAA-MM-JJ
- Confiance: [haute|moyenne|basse]
- Expire: AAAA-MM-JJ

3. Frontières claires

  • CLAUDE.md : Identité. ≤15 règles.
  • AGENTS.md : Procédures projet.
  • SKILL.md : Procédures tâche. À la demande.
  • lessons.md : Corrections. Scopées. Datées. Plafonnées.

Guide d'implémentation

Étape 1 : Audit

  1. Lister chaque source d'instructions
  2. Catégoriser : identité, procédure, expérience, éphémère
  3. Identifier les contradictions

Étape 2 : Hiérarchie

  1. Statement de priorité dans CLAUDE.md
  2. Déplacer les règles au bon fichier
  3. Supprimer les doublons

Étape 3 : Anti-windup

  1. TTL sur chaque entrée
  2. Plafond 10 règles/scope
  3. Revue mensuelle

Le problème à trois corps n'a pas de solution générale. Mais une hiérarchie avec anti-windup transforme le chaos en boucle de contrôle stable.

Partie 3 de la Série Eureka. Précédent : Pourquoi les instructions attaquent votre code. Suivant : gcc pour le Markdown.

Checklist de durcissement complète | Digest sécurité hebdomadaire

🛡️

Déployez l'IA agentique sans exposer vos secrets

Rejoignez 300+ équipes sécurité qui reçoivent chaque semaine des guides de durcissement, alertes menaces et correctifs copier-coller pour les déploiements MCP/agent.

S'abonner gratuitement →

Checklist 10 points • Configs Caddy/Nginx • Durcissement Docker • Digest hebdo

#eureka#three-body problem#instruction hierarchy#PID controller#agent architecture#agentic AI#MCP

Ne manquez aucune mise à jour sécurité

Digest hebdomadaire gratuit : nouvelles menaces, revues d'outils et guides de durcissement pour équipes IA.

S'abonner gratuitement →
Partager

Gratuit : Checklist de durcissement en 10 points

Obtenir maintenant →