Modèle de maturité du harness

Le modèle de maturité du harness

Sept niveaux, de « guidé » à « adaptatif ». Chaque niveau au-dessus du seuil minimal comporte des critères de réussite ou d'échec, car un niveau décrit par des adjectifs ne permet de situer personne. Il est cumulatif : vous n'atteignez un niveau que lorsque tous les critères de ce niveau et des niveaux inférieurs sont validés.

Version 1.0 · Mis à jour 2026-08-27 · 7 niveaux · 18 critères

JSONLisible par machine

Comment le lire

Cumulatif, pas à la carte. Un harness atteint le niveau 4 lorsque tous les critères des niveaux 1, 2, 3 et 4 sont validés — et non pas simplement lorsqu'il dispose d'une suite d'évaluation. Sans cette règle, chacun choisirait les échelons qu'il possède déjà, et le modèle ne permettrait plus de situer qui que ce soit.

Chaque critère est une action associée à un résultat. Si vous ne pouvez pas l'exécuter et obtenir une réponse, sa place n'est pas ici. La formulation adopte délibérément la même structure que les tests de la matrice de contrôle, car ils sont de même nature.

Chaque niveau indique également ce qui reste défaillant si vous vous y arrêtez. Cette partie est la plus honnête : les niveaux ne sont pas des vertus, ce sont des compromis faits délibérément.

Il s'agit d'une auto-évaluation, soit la forme d'évaluation la plus faible qui soit. Le modèle est publié afin que les critères puissent être débattus, et l'affirmation sous-jacente énonce ce qui invaliderait l'ordre établi.

cumulativetheoreticallow

L'affirmation sur laquelle cela repose : HE-CLAIM-006récupérable via MCP avec get_claim.

Niveau 0

Prompté

prompted

Une personne pilote chaque exécution. Le modèle est appelé manuellement, les prompts résident dans des fenêtres de chat et dans les notes de quelqu'un, et rien d'une exécution ne lui survit.

Le seuil minimal. Il ne comporte aucun critère propre : c'est là qu'un harness se situe lorsque le niveau 1 échoue.

Ce qui reste défaillant si vous vous arrêtez ici

Rien n'est reproductible, donc rien ne peut être amélioré. Deux personnes demandant la même chose construisent deux systèmes différents, et aucune ne peut expliquer pourquoi le sien fonctionne.

Niveau 1

Scripté

scripted

Les appels sont intégrés au code et les prompts sont des artefacts versionnés. Une exécution peut être reproduite à partir du dépôt plutôt qu'à partir de la mémoire de quelqu'un.

Critères

  1. Prenez une exécution du mois dernier et reproduisez-la. Le prompt, le modèle et les paramètres proviennent tous du contrôle de version.

    Relevé depuisACM-15

  2. Modifiez un prompt. Le changement apparaît sous forme de diff avec un auteur et une date, et la version précédente reste récupérable.

    Relevé depuisACM-15

  3. Demandez quelle version de modèle a servi pour une exécution donnée. La réponse provient d'un enregistrement, et non d'une supposition sur ce qui était d'actualité cette semaine-là.

    Relevé depuisACM-10ACM-15

Ce qui reste défaillant si vous vous arrêtez ici

L'agent ne peut toujours agir sur rien, son coût est donc limité par son inutilité. S'arrêter là est un choix défendable ; qualifier d'agent ce que vous avez ne l'est pas.

Niveau 2

Outillé

tooled

L'agent agit sur des systèmes réels via une surface d'outils déclarée : chaque outil est répertorié, délimité, attribué à un propriétaire et refusé côté serveur lorsqu'il est dirigé là où il ne devrait pas aller.

Critères

  1. Présentez le catalogue d'outils. Chaque outil que l'agent peut appeler y figure, avec un périmètre écrit, l'indication s'il effectue des écritures, et un propriétaire désigné.

    Relevé depuisACM-01

  2. Pour chaque outil, montrez son identifiant d'accès (credential) et la portée de cet identifiant côté serveur. Deux outils ne doivent pas en partager un dont la portée dépasse celle de l'un ou l'autre.

    Relevé depuisACM-02

  3. Appelez un outil capable d'écrire avec une cible hors périmètre. L'appel doit être refusé par la propre limite de l'outil, et non par un refus du modèle.

    Relevé depuisACM-03Mesuré parcontain

Ce qui reste défaillant si vous vous arrêtez ici

L'agent peut désormais causer des dommages et rien ne limite encore leur ampleur. À partir d'ici, chaque incident est un incident survenant dans un système qui compte.

Niveau 3

Limité

bounded

Le harness applique des limites qu'il ne demande pas au modèle de respecter : les flux sortants (egress) sont refusés par défaut, la consommation est plafonnée par l'hôte, et le contenu non approuvé est traité comme une donnée plutôt que comme une instruction.

Critères

  1. Depuis l'intérieur de l'environnement de l'agent, demandez un hôte qui ne figure pas sur la liste. La requête doit échouer au niveau de la couche réseau ou du proxy, et le refus doit arriver sous forme de signal de sécurité, et non de dépassement de délai (timeout).

    Relevé depuisACM-04ACM-05

  2. Exécutez une tâche conçue pour ne pas se terminer. Un quota doit l'arrêter, l'arrêt doit être enregistré, et le coût de la tentative doit être limité et connu avant son démarrage.

    Relevé depuisACM-07

  3. Introduisez une instruction au sein d'un document que l'agent récupère. Il peut la lire ; il ne doit pas l'exécuter, et la tentative doit être visible par la suite.

    Relevé depuisACM-12ACM-13

Ce qui reste défaillant si vous vous arrêtez ici

Le rayon d'impact est limité, mais pas la qualité. Le système échoue en toute sécurité et personne ne peut dire s'il fonctionne.

Niveau 4

Évalué

evaluated

Les modifications sont soumises à une suite de tests que quelqu'un a déjà vu échouer. Les régressions bloquent la mise en production, la répétabilité est quantifiée par un chiffre, et l'écart entre ce que l'agent prétend et ce qu'un vérificateur constate est mesuré.

Critères

  1. Introduisez une régression connue. La suite de tests doit la détecter et la modification ne doit pas être déployée. Une suite que l'on n'a jamais vue échouer a un taux de détection inconnu, et non parfait.

    Relevé depuisACM-11Mesuré parcatch

  2. Exécutez le jeu d'évaluation cinq fois sans aucune modification et indiquez combien de cas ont abouti au même verdict à chaque fois. Ce chiffre existe et quelqu'un le connaît.

    Relevé depuisACM-11Mesuré pardband

  3. Comparez ce que l'agent a prétendu pour un ensemble d'exécutions avec ce qu'un vérificateur indépendant a constaté. La différence est un nombre, et on ne suppose pas qu'elle soit nulle.

    Relevé depuisACM-10ACM-11Mesuré parvgap

Ce qui reste défaillant si vous vous arrêtez ici

La qualité est mesurée, mais pas la responsabilité. Quand quelque chose tourne mal, vous pouvez prouver qu'il y a eu régression, mais pas qui l'a laissée passer.

Niveau 5

Gouverné

governed

L'autorité, les preuves et l'escalade ont des propriétaires. Une exécution peut être reconstruite par quelqu'un qui n'était pas présent, des barrières de validation existent parce qu'un critère de risque les y a placées, et le modèle de menace est plus récent que le catalogue d'outils.

Critères

  1. Choisissez une exécution passée au hasard et reconstruisez-la de bout en bout uniquement à partir du journal, sans la présence de l'opérateur d'origine. Confirmez ensuite que le journal ne contient aucun secret inutile.

    Relevé depuisACM-10Mesuré parrecon

  2. Listez les actions soumises à validation et le critère de risque qui les y a placées. Forcez une escalade ; elle doit atteindre une personne désignée dans le délai imparti, en apportant le contexte nécessaire pour agir.

    Relevé depuisACM-08ACM-09Mesuré parhir

  3. Présentez le modèle de menace actuel et la date de la dernière modification du catalogue d'outils. Si le catalogue est plus récent, ce critère échoue et le niveau n'est pas maintenu.

    Relevé depuisACM-18

Ce qui reste défaillant si vous vous arrêtez ici

Tout est en place et rien n'expire. Le harness continuera d'appliquer, l'année prochaine, les mesures compensatoires dont un modèle avait besoin l'année dernière.

Niveau 6

Adaptatif

adaptive

Le harness évolue en fonction des preuves, y compris en se retirant lui-même. Les composants intègrent le modèle par rapport auquel ils ont été validés ainsi que la condition qui entraînerait leur retrait, et un élément a effectivement déjà été retiré.

Critères

  1. Nommez un contrôle, une règle de prompt ou un bloc de contexte supprimé au cours des deux derniers trimestres, et présentez la mesure qui a justifié sa suppression. « Nous avons essayé sans et cela semblait aller » n'est pas une mesure.

    Mesuré parcvo

  2. Pour un composant encore en place, indiquez le modèle par rapport auquel il a été validé et la condition sous laquelle il serait retiré. Les deux doivent être consignés par écrit, et non conservés de mémoire.

    Relevé depuisACM-15

  3. Présentez le coût par résultat correctement vérifié pour le même ensemble de tâches sur deux générations de modèles, chacune avec le harness dont cette génération avait réellement besoin.

    Mesuré parcvotvo

Ce qui reste défaillant si vous vous arrêtez ici

Rien n'est stable ici, et c'est bien là le but. Un harness qui évolue en fonction des preuves a besoin de preuves de qualité, et chaque métrique du tableau de bord peut être manipulée par la personne évaluée.