Google this week open-sourced EnvHarness, a framework that wraps existing agent-training environments and introduces a layer of programmable components designed to dynamically adapt scenarios to an agent's identified weaknesses.
In a paper describing the work, the researchers argued that typical self-evolving agents improve by rewriting their prompts and acquiring new skills but rarely adapt the environments in which they operate. "An agent that keeps improving against a frozen benchmark eventually stops learning from it," the authors wrote. "The start states, the rules and the feedback are the same for every learner at every stage, so once the agent can solve the tasks, the environment has nothing further to teach."
The team also noted that generating custom environments is expensive, requiring domain-specific pipelines and often relying on costly or unreliable verifiers, and the resulting environments remain static.
EnvHarness addresses this by acting as a plug-in layer that intercepts the standard reset() and step() interface used to interact with an environment. It provides three kinds of composable components: setup, which customises the initial state; rule, which constrains state transitions in response to an agent's actions; and link, which customises the observation presented to the agent.
A companion tool called EnvRigger automates the adaptation process by analysing agent behaviour, identifying recurring weaknesses, generating targeted modifications, and validating them through fresh interactions. "Repeatedly executing the EnvRigger loop enables continuous co-evolution between the agent and its environment, unlocking compounding performance gains that scale effectively with the number of customized tasks," the researchers said.
In experiments across benchmarks including WebArena, SWE-bench Verified, and ALFWorld, adding the EnvHarness layer improved performance for models including Gemini 3.1 Flash-Lite, Qwen3.6 27B, Gemini 3.5 Flash, and Claude Sonnet 4.6, with gains ranging from 2.9 to 3.7 percentage points.