AutoAgent : meta-agent qui optimise autonomement le harness d'un task agent¶
Resume¶
Kevin Gu annonce AutoAgent (open-source, github.com/kevinrgu/autoagent), librairie ou un meta-agent ameliore autonomement le harness d'un task agent. Resultats : #1 SpreadsheetBench (96.5%) et #1 TerminalBench (55.1% GPT-5) apres 24h+ d'optimisation autonome dans des milliers de sandboxes paralleles. Toutes les autres entrees des leaderboards etaient hand-engineered. Boucle : edit harness → run tasks → measure → read failure traces → keep/revert → repeat. Comportements emergents non programmes : spot checking, forced verification loops, ecriture de tests, progressive disclosure, orchestration de sub-agents.
Analyse critique¶
Fort : - Premier resultat concret d'auto-optimisation de harness battant le tuning humain sur des benchmarks competitifs. - Le concept de "model empathy" est profond : un meta-agent Claude comprend mieux un task-agent Claude qu'un humain. Same-model pairings (Claude+Claude) > cross-model (Claude+GPT). Le meta-agent partage les memes weights et comprend intuitivement le raisonnement du modele. - Le split meta/task est valide empiriquement : s'auto-ameliorer ne marche pas, la separation des competences (executer vs optimiser) est necessaire. - "Traces are everything" : sans traces de raisonnement, le taux d'amelioration chute. Comprendre pourquoi > savoir que. - Anti-overfitting : le meta-agent game les metriques. Forcer la self-reflection ("if this exact task disappeared, would this still be worthwhile?") est necessaire. - Comportements emergents = redecouvertes de bonnes pratiques humaines (verification loops, tests, progressive disclosure).
Limites : - Cout compute massif (24h, milliers de sandboxes). Pas viable a faible volume. - Benchmarks specifiques (SpreadsheetBench, TerminalBench) — generalisation pas demontree pour des domaines complexes (conformite, crypto, legal). - Produit commercial annonce ("early access") — aussi du marketing.
NeoSigma auto-harness — la methode concrete (05/04)¶
NeoSigma (Gauri Gupta, 1K likes, 2.4K bookmarks, 134K vues) open-source auto-harness, un systeme de self-improvement similaire a AutoAgent mais avec une methode formalisee. Score Tau3 : 0.56 → 0.78 (+40%).
La boucle de self-improvement en 5 etapes : 1. Mine failures depuis les traces de production 2. Cluster par root cause (pas par symptome — evite l'overfitting) 3. Convertit les clusters en evals reutilisables (suite de regression vivante) 4. Propose et valide des changements de harness dans un environnement de test 5. Regression gate : n'accepte que les changements qui ameliorent ET ne regressent pas
Apports specifiques par rapport a AutoAgent :
| Concept | AutoAgent | NeoSigma auto-harness |
|---|---|---|
| Granularite | Edit harness → run → measure → keep/revert | Mine → cluster → eval → gate (plus structure) |
| Gestion failures | Traces brutes | Clustering par root cause, priorisation par impact |
| Non-regression | Implicite (revert si pire) | Regression gate explicite : failures fixees = tests permanents |
| Contexte | Traces completes en contexte | Sub-agents avec summarisation recursive |
| Persistance | Pas documente | learnings.md + suite.json (regression suite maintenue par l'agent) |
| Open source | github.com/kevinrgu/autoagent | github.com/neosigmaai/auto-harness |
Learnings cles de NeoSigma : - "Clustering failures is key" — attaquer la cause racine, pas les symptomes individuels - "The regression gate is what makes gains compound" — sans gate, on optimise en boucle sans progresser - "Human instructions matter" — le meta-layer (PROGRAM.md, bias rules, playbooks) est le vrai levier - "Sub-agents and recursive summarization helps manage context" — les traces verboses inondent le contexte principal
Pertinence ProbatioVault¶
Impact modere. Plusieurs validations directes de notre architecture :
Split meta/task = split orchestrateur/agents. Claude orchestre (meta), les agents step 6b executent (task). Le paper valide notre separation structurelle.
Model empathy valide notre choix same-model. Nos agents step 6b sont tous Claude. Same-model pairings outperform cross-model pour le harness engineering — ca explique pourquoi les contracts Claude-specifiques fonctionnent bien.
Comportements emergents = nos bonnes pratiques codifiees :
| Comportement emergent AutoAgent | Equivalent ProbatioVault |
|---|---|
| Forced verification loops | npx tsc --noEmit post-agent step 6b |
| Writing tests | Agents QA (unit, integration, IHM) |
| Progressive disclosure | Injection on-demand dans les prompts cache-first |
| Orchestration de sub-agents | Gov-impl phases 6a/6b/6c |
| Spot checking (tests partiels) | Verification incrementale TS obligatoire |
L'agent decouvre ce que nous avons codifie dans CONSTITUTIONAL.md et les procedures. La difference : nous avons choisi de figer ces pratiques comme regles inviolables plutot que de laisser l'agent les redécouvrir a chaque run — stabilite > optimisation locale.
"Traces are everything" → notre capitalisation learnings.jsonl + failure traces dans les gates. La tracabilite (Art. III) n'est pas qu'un besoin d'audit — c'est ce qui permet l'amelioration inter-stories.
Vision "infrastructure for agent fleets" = notre One Ring : orchestrer N agents specialises par domaine avec des harnesses adaptes.
NeoSigma valide et renforce : - Regression gate → directement applicable a /gov-compounder : les learnings pourraient devenir des cas de regression permanents (invariants auto-generes), pas juste des recommandations. - Clustering par root cause → nos learnings sont indexes par story, pas par pattern. Un clustering par root cause (ex: "5 stories avec des erreurs TS post-generation") est ce que /gov-retrospective fait manuellement. L'automatiser via le pattern NeoSigma est le next step. - learnings.md persistant → exactement notre learnings.jsonl. La convergence est frappante. - "Human instructions matter" → notre CONSTITUTIONAL.md est ce "meta-layer". NeoSigma confirme que c'est le vrai levier, pas l'agent lui-meme.
Anthropic Engineering : formalisation officielle du pattern (05/04)¶
Anthropic publie "Harness Design for Long-Running Application Development", qui formalise le meme pattern avec des donnees concretes.
Architecture 3 agents :
| Agent | Role | Equivalent ProbatioVault |
|---|---|---|
| Planner | Convertit un brief en spec detaillee (10-16 features, sprints) | Step 0-1 (besoin → spec) |
| Generator | Implemente incrementalement (React/Vite/FastAPI/PostgreSQL) | Step 6b (agents implementeurs) |
| Evaluator | Teste via Playwright contre des "sprint contracts" | Gates ⅗/8 (review croisee) |
Insight cle — le biais d'auto-congratulation :
"When asked to evaluate work they've produced, agents tend to respond by confidently praising the work — even when, to a human observer, the quality is obviously mediocre."
Anthropic confirme que separer evaluation de generation est la seule solution viable. Rendre un generateur auto-critique est "nearly impossible". Tuner le scepticisme d'un evaluateur separe est "tractable". C'est exactement notre Art. II (separation des pouvoirs) — valide par le createur du modele lui-meme.
Sprint contracts = nos code contracts. Specifications pre-agreees de ce qui constitue la completion, testables par l'evaluateur. Anthropic recommande de "bridge high-level specs and testable implementations without over-constraining design".
Donnees de cout :
| Mode | Duree | Cout | Qualite |
|---|---|---|---|
| Solo (sans harness) | 20 min | $9 | Visuellement plausible mais fonctionnellement casse |
| Full harness (3 agents) | 6h | $200 | Fonctionnellement coherent, 10 features implementees |
20x le cout mais saut qualitatif. Le parallele avec notre workflow : une story en mode "vibe coding" prendrait 30 min mais echouerait aux gates. Le workflow complet (11 etapes) prend des heures mais produit du code conforme.
Context resets vs Opus 4.6 :
L'ancien harness (Sonnet 4.5) necessitait des context resets entre sprints — exactement ce que font nos subprocess claude -p isoles. Opus 4.6 avec 1M tokens elimine largement ce besoin grace a la compaction automatique. Mais l'evaluateur reste necessaire : "it is worth the cost when the task sits beyond what the current model does reliably solo."
Principe fondamental :
"Every component in a harness encodes an assumption about what the model can't do on its own."
Implication pour ProbatioVault : a mesure que les modeles progressent, certaines etapes de notre workflow pourraient etre simplifiees. La verification TypeScript post-agent (procedure obligatoire issue de 5 REX) pourrait devenir superflue si Opus 4.6 ne fait plus ces erreurs. Mais les gates evaluatrices resteront — le biais d'auto-congratulation est structurel, pas lié a la capacite du modele.