Google launches Harness², self-improving AI agents without retraining

Google Research releases Harness² under Apache 2.0. The framework adjusts prompts, tools, memory, and scripts to enhance an agent without altering the model weights. Gains of "up to" +11.8 points are reported on benchmarks, and a free demo illustrates documented corrections step by step.
Gains of "up to" +11.8 points on various tasks
Google evaluated GLM-5 and Gemini 3.5 Flash. The tests were conducted on four model-harness associations and three benchmarks, applying a single step k = 1, which improved both models compared to their original harnesses. The maximum reported gain is +11.5 points on office, web, and programming tasks. On a legal task from Harvey's harvey-labs, the highest gain reaches +11.8 points in partial pass rate. For professional tasks, the maximum observed gain is +4.5 points. These figures represent maxima rather than averages, and the indicated LAB score corresponds to a partial score. The README specifies that a higher k value can yield additional gains, and the scientific article presents detailed results by configuration.
Readable modifications stored in files
Harness² records each improvement in the form of files such as rewritten prompts, corrected scripts, or safety barriers. These changes, consisting of text and code, are viewable and comparable to the original, and the framework logs the reasons for adoption. The executor and the improver are defined by model identifiers in a configuration file, with possible associations like GLM-5 or Gemini 3.5 Flash as agents and Vertex Gemini or Claude as improvers. The refinement occurs without a key answer, thanks to contrasts between executions. This approach bypasses the usual need for training data, GPUs, and access to weights, which are often absent for teams consuming models via API.
Two recursion loops to refine tasks and methods
The name Harness² refers to two loops. The first improves the harness for the current task with a Propose, Explore, Compose cycle: an editor suggests invariant and specific modifications, the agent re-executes the task with each variant, and then a composer merges what was helpful. The framework learns from behavioral contrasts without a ground truth and does not require the correct answer. The second loop stores, via an experience reflector, the adopted harness and lessons learned in a persistent improvement harness, which guides the next task. The demo shows files left by these two loops.
Le brief IA que les pros lisent chaque soir
Les 7 actus IA du jour, décryptées en 5 min. Gratuit.
Inclus dès l'inscription : notre sélection des meilleurs guides & comparatifs IA.
Choisissez votre rythme
Gratuit · Pas de spam · Désabonnement en 1 clic
Parallel or sequential: a budget k that sets the cost
The task loop can be executed with a budget k and a mode. In parallel mode, k invariant and k specific candidates are proposed, followed by k independent compositions for broad exploration. In sequential mode, k Propose–Explore–Compose steps are chained, carrying the refined harness for deeper exploration. Each task involves 4k executor executions and 3k improvement sessions via run_sweep.py; for example, --k 3 results in 12 executions and 9 sessions per task. The LAB benchmark includes 1,143 tasks.
Open source publication and functional scope of the framework
Google Research makes Harness² available under the Apache 2.0 license, accompanied by a paper titled "Harness²: Recursive Agent Harnessing for an Open World" and a project website, with the release already commented on X. The framework is designed to enhance agents without retraining the model, acting on the environment rather than the weights. It operates on prompts, tools, memory, and scripts, and can modify the agent's actions, permanent instructions, action rules, long-term notes, reusable instructions, tool usage, assistance code, sub-agents, and middleware. According to the README, the initial elements constitute the model's context; the orientation of tools and scripts determines the tool interface; delegation is handled by sub-agents; plugins support the middleware; the whole covers nearly all agent behavior outside the model. Automation keeps the weights unchanged, without resorting to fine-tuning or adding new data. A harness groups prompts, tools, memory, skills, and orchestration; manual optimization has its limits in open environments. The learned improvements are transferred to the next task.
A free demo shows the correction of an accounting bug
The demo offers both recursion modes with deterministic editors and real Python executions, without model reference and for free. It requires Linux (or WSL on Windows, VM or Linux container on macOS), Python 3.12 with mentioned support for 3.13, and uv from Astral. After installing uv, cloning the GitHub repository, and creating a virtual environment 3.12, the editable installation with the [render] option adds openpyxl and python-pptx and exposes commands from the harness2 suite. The command harness2-demo --output runs/demo --k 2 initiates the recursion; without --mode, both parallel and sequential modes are played. An example shows two successful accounting tasks (ledger-1 and ledger-2), with a demo.json summarizing 2 completed tasks and 0 failed. The starting harness contains a bug in scripts/summarize.py that only adds positive amounts. For a three-line ledger with one negative entry, the initial script displays 105.25 while the script used by Harness² shows 85.15, which is 100.25 − 20.10 + 5.00. The framework removed the filter without knowing the correct result and recorded an adopted experience (c1), mentioning 1 script and 62 consistently active characters, with justification, modification on scripts/summarize.py, observation, transferable lesson, proof, and a high confidence level.
Brief IA — L'actualité IA en français
L'essentiel de l'actualité de l'intelligence artificielle, décrypté et expliqué chaque jour.