WebHarbor Puts 153 Fake Real Websites in a Box for Agents to Train On
A new arXiv paper rebuilds 153 real web services as dockerized, deterministic environments so GUI agents can be evaluated and trained without the chaos of the live web, and a small Qwen model shows the payoff.
TL;DR: WebHarbor rebuilds 153 real websites as dockerized, deterministic copies so GUI agents can be tested and trained without the live web breaking under them, and a 4B Qwen agent trained inside it holds its own against bigger open-source agents.
If you have ever tried to benchmark a web agent against the actual internet, you already know the problem. The page changes. The login wall moves. A promo banner you did not account for eats three steps of your task. You run the same eval twice and get two different numbers, and neither tells you whether your agent improved or whether Amazon just redesigned a button.
“WebHarbor: Docking Real Websites for Evolving GUI Agent Environments,” posted to arXiv across cs.AI, cs.CL, and cs.LG, goes after that exact mess. The team (code and data at github.com/aiming-lab/WebHarbor) built 153 executable, dockerized website environments that reconstruct the visual interfaces, content, and workflows of real services under deterministic control. On top of those environments sit 3,518 tasks, including the multi-step and post-authentication flows that most prior work skips.
What is actually broken about testing agents on live websites?
Two failure modes, and they pull in opposite directions.
Live-site evaluation is realistic but unstable. Content shifts, rate limits and bot detection block you, and anything behind a login is mostly off-limits because you cannot script real accounts at scale without tripping terms of service. So the hard, valuable workflows (the ones that happen after you sign in) are precisely the ones you cannot measure reliably.
Synthetic environments fix stability but usually trade away fidelity. The paper’s framing is that existing synthetic setups “lack functional depth and visual fidelity.” Translation: they look like a toy, they only support a shallow slice of what the real site does, and an agent that aces them tells you little about one loose in the wild.

WebHarbor’s pitch is to take both horns. Deterministic control, so a run is reproducible. High visual and functional fidelity, so the reproducibility means something. That combination is the whole point. A benchmark you cannot rerun is a demo, and a benchmark that is reproducible but fake is a different kind of lie.
How did they build 153 websites without a 500-person team?
This is the part I find most interesting, because it is a glimpse of how these datasets get made now.
The team describes a task-driven human-agent collaboration loop. Environments are not frozen artifacts. They evolve. When a new task needs functionality the environment does not yet support, coding agents implement the required changes, and human contributors audit three things: visual fidelity, functional correctness, and task validity. So the websites grow their feature surface as the task set demands it, instead of someone trying to clone an entire site up front and guess which features matter.
That is a sensible division of labor. Coding agents handle the grind of generating pages and wiring up flows. Humans do the judgment work that agents are still bad at: does this actually look right, does the workflow actually complete, is this task even answerable. It is roughly the inverse of the usual synthetic-data complaint. Instead of generating slop at volume and hoping, they let the task define what has to exist and verify each addition.

The honest caveat: I am reading the abstract, not auditing the repo. “Faithfully reconstruct” and “high-fidelity” are the authors’ words, and fidelity is exactly the axis that is easy to overclaim and hard to verify from a paper. 153 environments across 3,518 tasks is a lot of surface area to keep visually and functionally true to the originals. The audit process they describe is the right process. Whether it held across all 153 is something the community will have to pressure-test by running against the public code.
Does a small model actually benefit, or is this just an eval harness?
Here is the result that makes this more than a cleaner leaderboard. WebHarbor is not only for evaluation. Because the environments are deterministic and cheap to spin up, they double as training grounds for reinforcement learning.
The team trained a Qwen 4B-level GUI agent with RL inside WebHarbor and reports that it generalizes to unseen tasks and performs competitively with leading open-source GUI web agents across four benchmarks. Read that carefully. A 4B model is small. The claim is not that it tops a closed frontier system, it is that RL in a high-fidelity sandbox lets a small agent punch at the level of open-source agents that are typically larger or trained on far more.
That is the economically interesting direction. You cannot run thousands of RL episodes against live Amazon without getting banned and without your reward signal drifting as the site changes. A dockerized copy gives you unlimited resets, a stable reward, and no legal landmines. The abstract calls this “cost-efficient RL,” and that framing matters more than the specific benchmark numbers, which the abstract does not spell out. Reproducible training infrastructure for agents is the bottleneck, not another model.
I want to see the per-benchmark breakdown before I treat “competitive” as settled. “Competitive across four benchmarks” can mean clearly ahead on one and barely behind on three, or the reverse. The abstract does not give the table, so take the headline as the authors’ summary of their own results, not a confirmed ranking.
What should a builder do with this?
If you ship anything agentic that touches the browser, clone the repo and run your current agent against WebHarbor’s post-authentication tasks first. Those logged-in, multi-step flows are where most home-grown evals go quiet, because they are the hardest to set up against real sites, and they are exactly where production agents fail in ways that embarrass you later. A deterministic environment means you can finally bisect a regression instead of blaming the weather.
The catch most people will miss: a sandbox is a proxy, not the territory. An agent tuned to perfection inside 153 reconstructed sites can still faceplant on the hundredth real site it has never seen, because the real web has adversarial banners, A/B tests, and consent popups that no reconstruction fully captures. Use WebHarbor to get reproducible signal and cheap RL iterations, then validate the winner against a small set of live targets before you trust it with a real account. Treat the stable number as your development compass and the messy live run as your reality check. The value here is that you finally get both, instead of being forced to pick one.