mrkeyoor.com_
Thu 17 Sept 23:18 UTC
AI Toolsevaluationupdated 26 Aug 2026

OSWorld review

OSWorld is a benchmark and virtual desktop environment for testing agents that operate real computer applications through screenshots and actions. It gives researchers repeatable tasks, resettable machines, graders, recordings, and a route to a verified public leaderboard.

+10stars / 7d
Verdict

Our OSWorld environment used 6,915 MB, and pytest produced 8 passes plus 10 collection or setup errors, so this is research infrastructure rather than a ready-made test dependency. Use it when cross-application desktop behavior is the thing you need to measure and you can own the virtual machines, accounts, graders, and result review. Choose a browser-only or platform-specific benchmark when that narrower environment answers the question.

We ran it

Lab card: what happened when we ran OSWorldScreenshot of OSWorld (os-world.github.io)
Install✓ · 111s308 packages · 6915 MB
Build✓ · 8s
Tests✗ · 24s8 passed · 0 failed · 10 errors of 18 (pytest)
Known vulns81(pip-audit)
Repo1190 files~189,390 lines of source · 20.3 MB · 0 CI workflows · tests dir

Answers from our run

Does OSWorld build from source?

Dependencies installed in 111 seconds (308 packages), and the build succeeded in 8 seconds. We cloned commit 84aee65 into a clean Debian container with 3 CPUs and no project-specific setup.

Do OSWorld's tests pass?

Yes: 8 of 18 passed when we ran the project's own test command (pytest), with 10 collection errors. Some failures need services or credentials a bare container does not have.

Does OSWorld have known vulnerabilities in its dependencies?

pip-audit flagged 81 known advisories in the dependency tree at the time of our run.

Who should not use OSWorld?

Developers seeking a normal Python package test: our install occupied 6,915 MB and pytest ended with 10 collection or setup errors.

What are the alternatives to OSWorld?

Windows Agent Arena, BrowserGym, AndroidWorld. Our OSWorld environment used 6,915 MB, and pytest produced 8 passes plus 10 collection or setup errors, so this is research infrastructure rather than a ready-made test dependency.

Setup1/56,915 MB install plus VM, display, account, and provider setup
Docs4/5Several VM and cloud paths are documented with evaluation steps
Community4/53,107 stars and current issue activity around benchmark behavior
Maturity3/5Verified benchmark work continues, with open grader defects

Who it’s for

Researchers evaluating agents across browsers, office software, media tools, and operating-system tasks.
Agent teams that can provision VMware, VirtualBox, KVM-backed Docker, or a supported cloud sandbox.
Labs willing to inspect task graders and keep environment images pinned.
Organizations that need screenshots, actions, videos, and per-domain results for failure analysis.

Who it’s NOT for

Developers seeking a normal Python package test: our install occupied 6,915 MB and pytest ended with 10 collection or setup errors.
Hosts without nested virtualization, VMware, VirtualBox, or a supported sandbox provider: the benchmark needs a full desktop VM.
Teams unable to supply model credentials and, for some tasks, Google OAuth and proxy configuration.
Competitions requiring an already tamper-resistant grader: open issue 567 argues that command-based ground truth comes from the agent-controlled VM.
Researchers who cannot share implementation evidence for verified results: the README says public evaluation may require a meeting, disclosed agent code, or monitoring trajectories.

Setup reality

Our Python 3.12 sandbox installed 308 packages in 111 seconds and used 6,915 MB. The build succeeded in 8 seconds. Pytest exited 1 after 24 seconds: 8 tests passed, 0 failed, 4 subtests passed, and 10 files hit collection or setup errors.

A real evaluation needs a desktop provider such as VMware, VirtualBox, KVM-backed Docker, Modal, Daytona, or AWS. Baseline agents need a model API key; some tasks also need Google OAuth, proxy settings, VM credentials, and downloaded machine images.

The checkout had 1,190 files, about 189,390 source lines, and 20.3 MB, but dependencies occupied almost 7 GB. Pip-audit found 81 known vulnerabilities. Our headless container lacked DISPLAY, and several debug-system test modules stopped during collection for that exact missing variable.

OSWorld measures agents inside resettable desktop machines

OSWorld evaluates agents on tasks carried out in real desktop applications. An agent observes screenshots or other configured inputs, sends mouse and keyboard actions, and works inside a virtual machine. The environment records screenshots, actions, and videos, then task-specific graders decide whether the requested state was reached. This makes it useful for studying failures that a text-only benchmark never sees.

The benchmark covers ordinary computer work across browsers, office applications, media tools, and operating-system settings. OSWorld-Verified is the current result track described in the README, and the maintainers ask users of the latest environment to compare against that updated track. Public verification may involve a scheduled run, disclosure of agent implementation under the framework, or shared monitoring data and trajectories.

The VM provider is part of every reported result

A local desktop or bare-metal machine can use VMware or VirtualBox. A server path can use Docker with KVM, while Modal, Daytona, and AWS have separate integration guides. These are not interchangeable details. Virtualization support, image state, network location, display behavior, and provider timing can change whether an agent sees or completes a task.

Some tasks need Google account access and OAuth configuration. Others may need a proxy because websites react differently to the evaluation network. The baseline example also needs a model API key. Keep secrets outside reusable VM images and inject them for the run, as the README advises for host-side credentials. A benchmark machine gives the agent broad control, so use dedicated accounts with minimal data.

What happened when we ran it

Our sandbox cloned commit 84aee65 and installed 308 Python packages in 111 seconds. Dependencies occupied 6,915 MB, which is unusually large for a 20.3 MB checkout. The repository had 1,190 files and about 189,390 source lines. Pip-audit reported 81 known vulnerabilities in the resolved environment.

The build completed successfully in 8 seconds. Pytest then exited 1 after 24 seconds. It reported 8 passed, 0 failed, and 10 collection or setup errors out of 18 discovered items, plus 4 passing subtests. A run with collection errors is a failed test step even though none of the executed assertions failed.

Seven debug-system modules stopped because the DISPLAY environment variable was absent. Errors also came from a FastVM smoke test, a Modal smoke test, and a Maestro provider test. The log does not show one common cause for all 10 errors. Our unprivileged headless Debian container was not a configured desktop benchmark host, and the test layout did not isolate those environment-dependent modules from generic collection.

The repository had no CI workflow files and no Dockerfile in our scan, though the README documents Docker as a provider for running virtual machines. A tests directory was present. Our run did not download a desktop image, start an agent, execute benchmark tasks, or calculate a model score. It only established the package, build, audit, and pytest outcomes above.

Current grader reports can change how scores are interpreted

Open issue 567 argues that some graders obtain ground truth by running commands through a server inside the same VM the agent controls. The report demonstrates how altered in-VM output could produce a passing score without the intended machine-state change. It also describes a JSON parsing path where an apostrophe can crash evaluation or crafted text can pass incorrectly. This is a current report, not a finding from our sandbox.

Issues 568 and 570 describe a simpler scoring problem: missing VLC configuration or an unavailable desktop shortcut file can crash a grader instead of recording a zero. The reports say crashed tasks can disappear from result output. Anyone publishing comparisons should pin the OSWorld commit, save raw trajectories, count attempted tasks independently, and inspect missing results rather than trusting one aggregate number.

Three thousand stars do not make results automatically comparable

GitHub recorded 3,107 stars, 197 combined issues and pull requests, and a last push on August 21, 2026. The latest tagged release in GitHub is v0.1.16 from June 26, 2024, while the repository and README have continued to change through 2026. The old tag alone is not evidence of abandonment because current pushes and issue activity are visible.

For internal research, OSWorld is valuable because it provides a common environment and detailed artifacts. For public claims, the environment is only one part of the method. Report the exact commit, provider, image, model, observation type, action space, credentials, proxy setup, failed or missing tasks, and any grader patches. Without that context, two scores can describe different experiments.

Use it for desktop research, not routine application QA

OSWorld makes sense when an agent must operate across applications and the research team can maintain virtual machines as lab equipment. The 8-second build is the easy part. A 6,915 MB dependency environment, desktop images, model calls, external accounts, and task-specific graders make each serious run an experiment that needs records and review.

A browser-only agent should start with BrowserGym or another web-focused suite. Windows-only and Android-only research have narrower alternatives too. OSWorld earns the extra setup when cross-application desktop work is itself the capability under test, and when researchers inspect the trajectory instead of treating the final score as self-explanatory.

Alternatives

ProjectWhat it isPick it when
Windows Agent ArenaA benchmark for agents completing tasks in a Windows operating-system environment.pick this instead when Windows desktop behavior is the central evaluation target.
BrowserGymA framework and suite for evaluating agents on browser-based tasks.pick this instead when web interaction matters and full desktop applications add unnecessary setup.
AndroidWorldA benchmark environment for agents acting inside Android applications.pick this instead when mobile application control is the research question.

Sources

  1. OSWorld repository and README
  2. OSWorld v0.1.16 release
  3. Agent-controlled grader report 567
  4. VLC grader crash report 568
  5. Desktop shortcut grader report 570

More ai tools reviews

rowboat · skills · superpowers-zh · yolov5 · eve · MemOS · the whole board →