cua-speedrun 0.3.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- cua_speedrun-0.3.0/.gitignore +30 -0
- cua_speedrun-0.3.0/PKG-INFO +250 -0
- cua_speedrun-0.3.0/README.md +125 -0
- cua_speedrun-0.3.0/agents/claude/agent.json +7 -0
- cua_speedrun-0.3.0/agents/claude/agent.py +739 -0
- cua_speedrun-0.3.0/agents/claude/init.py +57 -0
- cua_speedrun-0.3.0/agents/claude_code/agent.json +7 -0
- cua_speedrun-0.3.0/agents/claude_code/agent.py +440 -0
- cua_speedrun-0.3.0/agents/claude_code/init.py +156 -0
- cua_speedrun-0.3.0/agents/codex_cli/agent.json +7 -0
- cua_speedrun-0.3.0/agents/codex_cli/agent.py +327 -0
- cua_speedrun-0.3.0/agents/codex_cli/init.py +155 -0
- cua_speedrun-0.3.0/agents/gemini35/agent.json +7 -0
- cua_speedrun-0.3.0/agents/gemini35/agent.py +817 -0
- cua_speedrun-0.3.0/agents/gemini35/init.py +35 -0
- cua_speedrun-0.3.0/agents/gemini3_flash_preview/agent.json +7 -0
- cua_speedrun-0.3.0/agents/gemini3_flash_preview/agent.py +996 -0
- cua_speedrun-0.3.0/agents/gemini3_flash_preview/init.py +34 -0
- cua_speedrun-0.3.0/agents/gemini_new/agent.json +7 -0
- cua_speedrun-0.3.0/agents/gemini_new/agent.py +1087 -0
- cua_speedrun-0.3.0/agents/gemini_new/init.py +34 -0
- cua_speedrun-0.3.0/agents/glm5v_turbo/agent.json +7 -0
- cua_speedrun-0.3.0/agents/glm5v_turbo/agent.py +1283 -0
- cua_speedrun-0.3.0/agents/glm5v_turbo/init.py +43 -0
- cua_speedrun-0.3.0/agents/glm_cua/agent.json +7 -0
- cua_speedrun-0.3.0/agents/glm_cua/agent.py +800 -0
- cua_speedrun-0.3.0/agents/glm_cua/init.py +30 -0
- cua_speedrun-0.3.0/agents/gpt54/agent.json +7 -0
- cua_speedrun-0.3.0/agents/gpt54/agent.py +772 -0
- cua_speedrun-0.3.0/agents/gpt54/init.py +27 -0
- cua_speedrun-0.3.0/agents/kimi_k3/agent.json +7 -0
- cua_speedrun-0.3.0/agents/kimi_k3/agent.py +904 -0
- cua_speedrun-0.3.0/agents/kimi_k3/init.py +33 -0
- cua_speedrun-0.3.0/agents/meta/agent.json +7 -0
- cua_speedrun-0.3.0/agents/meta/agent.py +1497 -0
- cua_speedrun-0.3.0/agents/meta/init.py +26 -0
- cua_speedrun-0.3.0/agents/minimax_m3/agent.json +7 -0
- cua_speedrun-0.3.0/agents/minimax_m3/agent.py +915 -0
- cua_speedrun-0.3.0/agents/minimax_m3/init.py +29 -0
- cua_speedrun-0.3.0/agents/qwen35vl/agent.json +4 -0
- cua_speedrun-0.3.0/agents/qwen35vl/agent.py +830 -0
- cua_speedrun-0.3.0/agents/qwen35vl/init.py +262 -0
- cua_speedrun-0.3.0/agents/qwen3vl/agent.json +4 -0
- cua_speedrun-0.3.0/agents/qwen3vl/agent.py +322 -0
- cua_speedrun-0.3.0/agents/qwen3vl/init.py +276 -0
- cua_speedrun-0.3.0/benchmarks/cua-world-26/README.md +52 -0
- cua_speedrun-0.3.0/benchmarks/cua-world-26/benchmark-source.yaml +750 -0
- cua_speedrun-0.3.0/benchmarks/cua-world-26/setup-patches/dhis2.yaml +69 -0
- cua_speedrun-0.3.0/benchmarks/cua-world-26/setup-patches/jstock.yaml +129 -0
- cua_speedrun-0.3.0/benchmarks/cua-world-26/setup-patches/odoo.yaml +56 -0
- cua_speedrun-0.3.0/benchmarks/cua-world-26/setup-patches/oracle.yaml +122 -0
- cua_speedrun-0.3.0/benchmarks/cua-world-26/setup-patches/rocket-chat.yaml +5 -0
- cua_speedrun-0.3.0/benchmarks/cua-world-26/setup-patches/splunk.yaml +56 -0
- cua_speedrun-0.3.0/benchmarks/cua-world-offline/benchmark-source.yaml +3860 -0
- cua_speedrun-0.3.0/benchmarks/my-pc-bench/README.md +19 -0
- cua_speedrun-0.3.0/benchmarks/my-pc-bench/benchmark-source.yaml +131 -0
- cua_speedrun-0.3.0/benchmarks/mypcbench-image.json +19 -0
- cua_speedrun-0.3.0/benchmarks/osworld-50/benchmark-source.yaml +141 -0
- cua_speedrun-0.3.0/benchmarks/osworld-image.json +17 -0
- cua_speedrun-0.3.0/benchmarks/osworld-offline/benchmark-source.yaml +646 -0
- cua_speedrun-0.3.0/benchmarks/osworld2-52/benchmark-source.yaml +76 -0
- cua_speedrun-0.3.0/benchmarks/osworld2-offline/benchmark-source.yaml +132 -0
- cua_speedrun-0.3.0/catalog/benchmarks.yaml +8 -0
- cua_speedrun-0.3.0/catalog/tracks.yaml +7 -0
- cua_speedrun-0.3.0/pyproject.toml +138 -0
- cua_speedrun-0.3.0/scripts/build_mypcbench_modal_image.py +144 -0
- cua_speedrun-0.3.0/scripts/build_mypcbench_subset.py +352 -0
- cua_speedrun-0.3.0/scripts/build_osworld_modal_base.py +361 -0
- cua_speedrun-0.3.0/scripts/build_osworld_modal_qcow2.py +157 -0
- cua_speedrun-0.3.0/scripts/build_osworld_subset.py +149 -0
- cua_speedrun-0.3.0/scripts/import_cua_world_long.py +435 -0
- cua_speedrun-0.3.0/scripts/import_osworld2.py +520 -0
- cua_speedrun-0.3.0/scripts/import_osworld_eval.py +239 -0
- cua_speedrun-0.3.0/scripts/mypcbench_shared/canonical/LICENSE +21 -0
- cua_speedrun-0.3.0/scripts/mypcbench_shared/canonical/README.md +10 -0
- cua_speedrun-0.3.0/scripts/mypcbench_shared/canonical/osworld_full_traj_judge.py +537 -0
- cua_speedrun-0.3.0/scripts/mypcbench_shared/canonical/provenance.json +8 -0
- cua_speedrun-0.3.0/scripts/mypcbench_shared/mypcbench_setup.py +315 -0
- cua_speedrun-0.3.0/scripts/mypcbench_shared/mypcbench_verifier.py +283 -0
- cua_speedrun-0.3.0/scripts/mypcbench_shared/native_delta.sh +103 -0
- cua_speedrun-0.3.0/scripts/mypcbench_shared/native_image.py +31 -0
- cua_speedrun-0.3.0/scripts/osworld2_adapter.py +786 -0
- cua_speedrun-0.3.0/scripts/osworld2_seed_modal.py +221 -0
- cua_speedrun-0.3.0/scripts/osworld_shared/osworld_setup.py +484 -0
- cua_speedrun-0.3.0/scripts/osworld_shared/osworld_verifier.py +367 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/chrome__3299584d-8f11-4457-bf4c-ce98f7600250.json +17 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/chrome__6766f2b8-8a72-417f-a9e5-56fcaa735837.json +17 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/chrome__9656a811-9b5b-4ddf-99c7-5117bcef0626.json +17 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/multi_apps__2373b66a-092d-44cb-bfd7-82e86e7a3b4d.json +17 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/multi_apps__48d05431-6cd5-4e76-82eb-12b60d823f7d.json +16 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/multi_apps__716a6079-22da-47f1-ba73-c9d58f986a38.json +17 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/multi_apps__9f3bb592-209d-43bc-bb47-d77d9df56504.json +17 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/multi_apps__a74b607e-6bb5-4ea8-8a7c-5d97c7bbcd2a.json +17 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/os__37887e8c-da15-4192-923c-08fa390a176d.json +16 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/os__4783cc41-c03c-4e1b-89b4-50658f642bd5.json +16 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/os__4d117223-a354-47fb-8b45-62ab1390a95f.json +20 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/os__5812b315-e7bd-4265-b51f-863c02174c28.json +17 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/os__5c1075ca-bb34-46a3-a7a0-029bd7463e79.json +20 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/os__5ced85fc-fa1a-4217-95fd-0fb530545ce2.json +16 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/os__6f56bf42-85b8-4fbb-8e06-6c44960184ba.json +16 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/os__a462a795-fdc7-4b23-b689-e8b6df786b78.json +10 -0
- cua_speedrun-0.3.0/scripts/osworld_task_patches/vs_code__982d12a5-beab-424f-8d38-d2a48429e511.json +20 -0
- cua_speedrun-0.3.0/scripts/prepare_osworld2_modal.py +74 -0
- cua_speedrun-0.3.0/scripts/prepare_osworld_qcow2.sh +468 -0
- cua_speedrun-0.3.0/scripts/prepare_osworld_qcow2_apptainer.sh +112 -0
- cua_speedrun-0.3.0/scripts/select_representative_tasks.py +709 -0
- cua_speedrun-0.3.0/src/cua_speedrun/__init__.py +6 -0
- cua_speedrun-0.3.0/src/cua_speedrun/algorithms/__init__.py +6 -0
- cua_speedrun-0.3.0/src/cua_speedrun/algorithms/per_task_v1.py +83 -0
- cua_speedrun-0.3.0/src/cua_speedrun/algorithms/shared_agent_no_preload_v1.py +3 -0
- cua_speedrun-0.3.0/src/cua_speedrun/algorithms/shared_agent_v2.py +435 -0
- cua_speedrun-0.3.0/src/cua_speedrun/benchmark_preparation.py +82 -0
- cua_speedrun-0.3.0/src/cua_speedrun/benchmark_sources.py +229 -0
- cua_speedrun-0.3.0/src/cua_speedrun/cli.py +321 -0
- cua_speedrun-0.3.0/src/cua_speedrun/client.py +118 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/__init__.py +49 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/benchmark.py +170 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/custom_benchmarks.py +82 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/dashboard.py +177 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/dashboard_api.py +271 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/dashboard_client.py +973 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/dependencies.py +216 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/diagnostics.py +46 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/doctor.py +92 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/doctor_dashboard.py +156 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/doctor_local.py +251 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/install.py +127 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/install_assets.py +189 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/local_evaluations.py +293 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/paths.py +152 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/setup.py +91 -0
- cua_speedrun-0.3.0/src/cua_speedrun/commands/status_tui.py +673 -0
- cua_speedrun-0.3.0/src/cua_speedrun/compute_runners/__init__.py +17 -0
- cua_speedrun-0.3.0/src/cua_speedrun/compute_runners/base.py +130 -0
- cua_speedrun-0.3.0/src/cua_speedrun/compute_runners/config.py +90 -0
- cua_speedrun-0.3.0/src/cua_speedrun/compute_runners/local.py +464 -0
- cua_speedrun-0.3.0/src/cua_speedrun/compute_runners/local_sandbox.py +544 -0
- cua_speedrun-0.3.0/src/cua_speedrun/compute_runners/slurm.py +1296 -0
- cua_speedrun-0.3.0/src/cua_speedrun/compute_runners/slurm_worker.py +379 -0
- cua_speedrun-0.3.0/src/cua_speedrun/compute_runners/templates/slurm/cpu-array.yaml +42 -0
- cua_speedrun-0.3.0/src/cua_speedrun/compute_runners/templates/slurm/default.yaml +46 -0
- cua_speedrun-0.3.0/src/cua_speedrun/config.py +24 -0
- cua_speedrun-0.3.0/src/cua_speedrun/environment_instance.py +124 -0
- cua_speedrun-0.3.0/src/cua_speedrun/envs/__init__.py +57 -0
- cua_speedrun-0.3.0/src/cua_speedrun/envs/_pyautogui_keyboard.py +321 -0
- cua_speedrun-0.3.0/src/cua_speedrun/envs/base.py +98 -0
- cua_speedrun-0.3.0/src/cua_speedrun/envs/cua_world_runtime.py +154 -0
- cua_speedrun-0.3.0/src/cua_speedrun/envs/gym_anything.py +1153 -0
- cua_speedrun-0.3.0/src/cua_speedrun/envs/keyboard.py +33 -0
- cua_speedrun-0.3.0/src/cua_speedrun/envs/modal_native.py +601 -0
- cua_speedrun-0.3.0/src/cua_speedrun/eval_algorithms.py +119 -0
- cua_speedrun-0.3.0/src/cua_speedrun/evaluation_runtime.py +230 -0
- cua_speedrun-0.3.0/src/cua_speedrun/evaluator_environment.py +94 -0
- cua_speedrun-0.3.0/src/cua_speedrun/events.py +192 -0
- cua_speedrun-0.3.0/src/cua_speedrun/execution_placements.py +167 -0
- cua_speedrun-0.3.0/src/cua_speedrun/executor.py +938 -0
- cua_speedrun-0.3.0/src/cua_speedrun/gateway.py +713 -0
- cua_speedrun-0.3.0/src/cua_speedrun/leaderboard.py +166 -0
- cua_speedrun-0.3.0/src/cua_speedrun/local_runtime.py +257 -0
- cua_speedrun-0.3.0/src/cua_speedrun/parallelism.py +219 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/__init__.py +0 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/agent_runtime.py +71 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/batching.py +15 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/cancel.py +21 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/control.py +115 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/env_plane.py +82 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/modal_agent.py +589 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/modal_env.py +549 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/modal_native_env.py +221 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/modal_native_env_plane.py +42 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/network_policy.py +44 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/osworld_modal_base.py +402 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/plane_common.py +97 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/run.py +1558 -0
- cua_speedrun-0.3.0/src/cua_speedrun/remote/snapshot_cache.py +97 -0
- cua_speedrun-0.3.0/src/cua_speedrun/resources.py +80 -0
- cua_speedrun-0.3.0/src/cua_speedrun/runlog.py +95 -0
- cua_speedrun-0.3.0/src/cua_speedrun/runplan.py +689 -0
- cua_speedrun-0.3.0/src/cua_speedrun/runtime_environment.py +46 -0
- cua_speedrun-0.3.0/src/cua_speedrun/scoring.py +145 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/__init__.py +6 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/admin.py +80 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/api.py +894 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/cancellation.py +222 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/catalog.py +148 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/comparison_web.py +108 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/db.py +377 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/enqueue.py +138 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/evaluations.py +940 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/frontier.py +546 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/insights.py +435 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/invites.py +51 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/plans.py +106 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/publishing.py +124 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/quota.py +65 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/run_export.py +117 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/seeds.py +166 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/static/app.js +681 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/static/frontier.css +583 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/static/instrument.css +488 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/static/leaderboard.js +1188 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/static/pareto-surface.js +218 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/static/results.css +181 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/store.py +30 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/task_cost.py +94 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates/_result_inspector.html +23 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates/card.html +21 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates/compare.html +140 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates/entry.html +17 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates/layout.html +83 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates/leaderboard.html +245 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates/me.html +88 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates/methodology.html +21 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates/run.html +128 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates/submit.html +232 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates/task.html +80 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates/tracks.html +165 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates/trajectory.html +52 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/templates_catalog.py +125 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/usersecrets.py +36 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/web.py +831 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/web_records.py +103 -0
- cua_speedrun-0.3.0/src/cua_speedrun/service/worker.py +809 -0
- cua_speedrun-0.3.0/src/cua_speedrun/specs.py +142 -0
- cua_speedrun-0.3.0/src/cua_speedrun/submission.py +42 -0
- cua_speedrun-0.3.0/src/cua_speedrun/task_jobs.py +60 -0
- cua_speedrun-0.3.0/third_party/gym-anything/LICENSE +21 -0
- cua_speedrun-0.3.0/third_party/gym-anything/benchmarks/cua_world/environments/preset_gnome_systemd/env.json +7 -0
- cua_speedrun-0.3.0/third_party/gym-anything/benchmarks/cua_world/environments/preset_gnome_systemd/tasks/terminal/task.json +9 -0
- cua_speedrun-0.3.0/third_party/gym-anything/benchmarks/cua_world/environments/preset_gnome_systemd/tasks/terminal/verifier.py +21 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/.gitignore +0 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/__init__.py +39 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/api.py +5 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/cli.py +1290 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/compatibility.py +250 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/config/__init__.py +51 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/config/loading.py +150 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/config/presets.py +55 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/config/validators.py +84 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/contracts.py +94 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/dashboards/__init__.py +1 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/dashboards/trajectory/__init__.py +16 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/dashboards/trajectory/app.py +355 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/dashboards/trajectory/run_store.py +1206 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/dashboards/trajectory/templates/index.html +805 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/doctor.py +648 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/env.py +1381 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/extras_cli.py +244 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/installers.py +311 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/integrations/__init__.py +13 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/integrations/harbor/__init__.py +39 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/integrations/harbor/agent.py +337 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/integrations/harbor/compile.py +298 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/integrations/harbor/container.py +357 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/integrations/harbor/environment.py +321 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/integrations/prime_rl/__init__.py +12 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/integrations/prime_rl/hub.py +251 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/integrations/prime_rl/verifiers.py +638 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/__init__.py +189 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/android-14.json +28 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/android-avd-34.json +27 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/android-avd-35.json +27 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/apptainer-xfce-gpu.json +76 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/apptainer_xfce_gpu/apptainer.def +143 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/macos.json +53 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/ubuntu-gnome-systemd.json +27 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/ubuntu-gnome-systemd_highres.json +27 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/ubuntu-gnome-systemd_highres_gimp.json +27 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/ubuntu-gnome.json +19 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/ubuntu_gnome_systemd/Dockerfile +82 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/ubuntu_gnome_systemd/tigervnc@.service +15 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/ubuntu_gnome_systemd/xstartup +11 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/ubuntu_gnome_systemd_highres/Dockerfile +155 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/ubuntu_gnome_systemd_highres/tigervnc@.service +15 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/ubuntu_gnome_systemd_highres/xstartup +11 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/ubuntu_gnome_systemd_highres_gimp/Dockerfile +152 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/ubuntu_gnome_systemd_highres_gimp/tigervnc@.service +15 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/ubuntu_gnome_systemd_highres_gimp/xstartup +11 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/windows-11.json +53 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/x11-lite.json +21 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/x11_lite/Dockerfile +14 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/x11_lite/hooks/post_start.sh +3 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/x11_lite/hooks/pre_start.sh +3 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/presets/x11_lite/start_app.sh +21 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/recording/__init__.py +9 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/registry.py +330 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/remote/__init__.py +6 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/remote/client.py +749 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/remote/dashboard_app.py +609 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/remote/dashboard_template.py +978 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/remote/master.py +1718 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/remote/monitoring/__init__.py +20 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/remote/monitoring/decorators.py +236 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/remote/monitoring/metrics.py +500 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/remote/monitoring/session.py +372 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/remote/monitoring/templates/dashboard.html +859 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/remote/worker.py +1451 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/remote/worker_reset_policy.py +68 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runners/__init__.py +31 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/__init__.py +1 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/post_reset.py +96 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/recording/__init__.py +4 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/recording/ffmpeg.py +107 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/recording/frames.py +56 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/__init__.py +25 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/apptainer_direct.py +1350 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/avd_apptainer.py +1894 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/avd_container.def +28 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/avd_native.py +83 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/avd_sdk_manager.py +636 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/avf.py +967 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/base.py +202 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/build_android_qcow2_apptainer.py +510 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/build_base_qcow2.py +222 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/build_base_qcow2_nodocker.py +737 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/build_windows_qcow2.py +359 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/build_windows_qcow2_apptainer.py +1017 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/docker.py +1223 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/linux_uinput_fast_inputd.py +593 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/local.py +95 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native.py +935 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native_assets/bootstrap.sh +39 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native_assets/fast_io_server.c +1106 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native_assets/ga-fast-io.service +18 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native_assets/ga-snap-transitions.service +14 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native_assets/ga-vnc.service +18 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native_assets/namespace_exec.sh +16 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native_assets/snap_mounts.sh +67 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native_assets/snap_transitions.sh +58 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native_assets/snap_wrapper.sh +28 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native_assets/systemd_init.sh +17 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native_assets/xstartup +11 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native_fast_io.py +529 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_native_image.py +213 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_runner.py +550 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/modal_shim.py +195 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/qemu_apptainer.py +4271 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/qemu_dbus_display.py +321 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/qemu_native.py +468 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/use_computer.py +375 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/vnc_utils.py +705 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/windows_pyautogui_client.py +349 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/windows_pyautogui_server.py +323 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/windows_setup/install_pyautogui_server.ps1 +90 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/runtime/runners/windows_setup/windows_pyautogui_server.py +323 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/security.py +79 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/specs.py +529 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/tui/__init__.py +0 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/tui/progress.py +277 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/tui/session.py +136 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/utils/__init__.py +0 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/utils/jsonl.py +23 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/utils/merge.py +38 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/utils/yaml.py +30 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/validators.py +5 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/vector.py +43 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/verification/__init__.py +30 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/verification/contracts.py +5 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/verification/imports.py +109 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/verification/pipeline.py +70 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/verification/reports.py +127 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/verification/runner.py +331 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/verification/specs.py +419 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/verification/status.py +187 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/verification/vlm_checklist.py +615 -0
- cua_speedrun-0.3.0/third_party/gym-anything/src/gym_anything/vlm.py +572 -0
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
.env
|
|
2
|
+
.DS_Store
|
|
3
|
+
__pycache__/
|
|
4
|
+
*.pyc
|
|
5
|
+
*.egg-info/
|
|
6
|
+
.venv/
|
|
7
|
+
runs/
|
|
8
|
+
dist/
|
|
9
|
+
.pytest_cache/
|
|
10
|
+
artifacts/
|
|
11
|
+
episode_*/
|
|
12
|
+
*.qcow2
|
|
13
|
+
*.qcow2.zip
|
|
14
|
+
benchmark-assets/osworld/
|
|
15
|
+
|
|
16
|
+
leaderboard/
|
|
17
|
+
.claude/
|
|
18
|
+
platform.db
|
|
19
|
+
platform.db-shm
|
|
20
|
+
platform.db-wal
|
|
21
|
+
store/
|
|
22
|
+
|
|
23
|
+
# Generated build and local development files.
|
|
24
|
+
_site/
|
|
25
|
+
build/
|
|
26
|
+
.ruff_cache/
|
|
27
|
+
/coverage.xml
|
|
28
|
+
/.coverage
|
|
29
|
+
/src/cua_speedrun/fast_io_client
|
|
30
|
+
/src/cua_speedrun/fast_io_client.sha256
|
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
Metadata-Version: 2.5
|
|
2
|
+
Name: cua-speedrun
|
|
3
|
+
Version: 0.3.0
|
|
4
|
+
Summary: A benchmark and leaderboard for the speed of computer-use agents
|
|
5
|
+
Requires-Python: >=3.10
|
|
6
|
+
Requires-Dist: dbus-next>=0.2.3
|
|
7
|
+
Requires-Dist: fastapi>=0.115
|
|
8
|
+
Requires-Dist: huggingface-hub>=0.35.0
|
|
9
|
+
Requires-Dist: itsdangerous>=2.2
|
|
10
|
+
Requires-Dist: jinja2>=3.1
|
|
11
|
+
Requires-Dist: jsonschema>=4.20
|
|
12
|
+
Requires-Dist: modal>=1.0
|
|
13
|
+
Requires-Dist: numpy>=1.26
|
|
14
|
+
Requires-Dist: paramiko>=3.4
|
|
15
|
+
Requires-Dist: pillow>=10.0
|
|
16
|
+
Requires-Dist: pycryptodome>=3.20
|
|
17
|
+
Requires-Dist: python-dotenv
|
|
18
|
+
Requires-Dist: python-multipart>=0.0.9
|
|
19
|
+
Requires-Dist: pyyaml>=6.0
|
|
20
|
+
Requires-Dist: requests>=2.31
|
|
21
|
+
Requires-Dist: rich>=13.0
|
|
22
|
+
Requires-Dist: sqlalchemy>=2.0
|
|
23
|
+
Requires-Dist: uv==0.10.2
|
|
24
|
+
Requires-Dist: uvicorn[standard]>=0.30
|
|
25
|
+
Provides-Extra: all
|
|
26
|
+
Requires-Dist: beautifulsoup4; extra == 'all'
|
|
27
|
+
Requires-Dist: borb<3; extra == 'all'
|
|
28
|
+
Requires-Dist: chardet; extra == 'all'
|
|
29
|
+
Requires-Dist: cssselect; extra == 'all'
|
|
30
|
+
Requires-Dist: easyocr; extra == 'all'
|
|
31
|
+
Requires-Dist: fastdtw; extra == 'all'
|
|
32
|
+
Requires-Dist: formulas; extra == 'all'
|
|
33
|
+
Requires-Dist: gdown; extra == 'all'
|
|
34
|
+
Requires-Dist: gymnasium~=0.28.1; extra == 'all'
|
|
35
|
+
Requires-Dist: imagehash; extra == 'all'
|
|
36
|
+
Requires-Dist: librosa; extra == 'all'
|
|
37
|
+
Requires-Dist: lxml; extra == 'all'
|
|
38
|
+
Requires-Dist: mutagen; extra == 'all'
|
|
39
|
+
Requires-Dist: numpy; extra == 'all'
|
|
40
|
+
Requires-Dist: odfpy; extra == 'all'
|
|
41
|
+
Requires-Dist: opencv-python-headless; extra == 'all'
|
|
42
|
+
Requires-Dist: openpyxl; extra == 'all'
|
|
43
|
+
Requires-Dist: pandas; extra == 'all'
|
|
44
|
+
Requires-Dist: paramiko; extra == 'all'
|
|
45
|
+
Requires-Dist: pdfplumber; extra == 'all'
|
|
46
|
+
Requires-Dist: pillow; extra == 'all'
|
|
47
|
+
Requires-Dist: playwright; extra == 'all'
|
|
48
|
+
Requires-Dist: pyacoustid; extra == 'all'
|
|
49
|
+
Requires-Dist: pydrive; extra == 'all'
|
|
50
|
+
Requires-Dist: pygame; extra == 'all'
|
|
51
|
+
Requires-Dist: pymupdf; extra == 'all'
|
|
52
|
+
Requires-Dist: pypdf; extra == 'all'
|
|
53
|
+
Requires-Dist: pypdf2; extra == 'all'
|
|
54
|
+
Requires-Dist: python-docx; extra == 'all'
|
|
55
|
+
Requires-Dist: python-dotenv; extra == 'all'
|
|
56
|
+
Requires-Dist: python-pptx; extra == 'all'
|
|
57
|
+
Requires-Dist: pytz; extra == 'all'
|
|
58
|
+
Requires-Dist: rapidfuzz; extra == 'all'
|
|
59
|
+
Requires-Dist: requests-toolbelt~=1.0.0; extra == 'all'
|
|
60
|
+
Requires-Dist: scikit-image; extra == 'all'
|
|
61
|
+
Requires-Dist: scipy; extra == 'all'
|
|
62
|
+
Requires-Dist: tldextract; extra == 'all'
|
|
63
|
+
Requires-Dist: xmltodict; extra == 'all'
|
|
64
|
+
Provides-Extra: dev
|
|
65
|
+
Requires-Dist: httpx<0.28,>=0.27; extra == 'dev'
|
|
66
|
+
Requires-Dist: pytest>=8.0; extra == 'dev'
|
|
67
|
+
Provides-Extra: gym
|
|
68
|
+
Requires-Dist: dbus-next>=0.2.3; extra == 'gym'
|
|
69
|
+
Requires-Dist: jsonschema>=4.20; extra == 'gym'
|
|
70
|
+
Requires-Dist: numpy>=1.26; extra == 'gym'
|
|
71
|
+
Requires-Dist: paramiko>=3.4; extra == 'gym'
|
|
72
|
+
Requires-Dist: pillow>=10.0; extra == 'gym'
|
|
73
|
+
Requires-Dist: pycryptodome>=3.20; extra == 'gym'
|
|
74
|
+
Requires-Dist: rich>=13.0; extra == 'gym'
|
|
75
|
+
Provides-Extra: modal
|
|
76
|
+
Requires-Dist: modal>=1.0; extra == 'modal'
|
|
77
|
+
Provides-Extra: osworld
|
|
78
|
+
Requires-Dist: beautifulsoup4; extra == 'osworld'
|
|
79
|
+
Requires-Dist: borb<3; extra == 'osworld'
|
|
80
|
+
Requires-Dist: chardet; extra == 'osworld'
|
|
81
|
+
Requires-Dist: cssselect; extra == 'osworld'
|
|
82
|
+
Requires-Dist: easyocr; extra == 'osworld'
|
|
83
|
+
Requires-Dist: fastdtw; extra == 'osworld'
|
|
84
|
+
Requires-Dist: formulas; extra == 'osworld'
|
|
85
|
+
Requires-Dist: gdown; extra == 'osworld'
|
|
86
|
+
Requires-Dist: gymnasium~=0.28.1; extra == 'osworld'
|
|
87
|
+
Requires-Dist: imagehash; extra == 'osworld'
|
|
88
|
+
Requires-Dist: librosa; extra == 'osworld'
|
|
89
|
+
Requires-Dist: lxml; extra == 'osworld'
|
|
90
|
+
Requires-Dist: mutagen; extra == 'osworld'
|
|
91
|
+
Requires-Dist: numpy; extra == 'osworld'
|
|
92
|
+
Requires-Dist: odfpy; extra == 'osworld'
|
|
93
|
+
Requires-Dist: opencv-python-headless; extra == 'osworld'
|
|
94
|
+
Requires-Dist: openpyxl; extra == 'osworld'
|
|
95
|
+
Requires-Dist: pandas; extra == 'osworld'
|
|
96
|
+
Requires-Dist: paramiko; extra == 'osworld'
|
|
97
|
+
Requires-Dist: pdfplumber; extra == 'osworld'
|
|
98
|
+
Requires-Dist: pillow; extra == 'osworld'
|
|
99
|
+
Requires-Dist: playwright; extra == 'osworld'
|
|
100
|
+
Requires-Dist: pyacoustid; extra == 'osworld'
|
|
101
|
+
Requires-Dist: pydrive; extra == 'osworld'
|
|
102
|
+
Requires-Dist: pygame; extra == 'osworld'
|
|
103
|
+
Requires-Dist: pymupdf; extra == 'osworld'
|
|
104
|
+
Requires-Dist: pypdf; extra == 'osworld'
|
|
105
|
+
Requires-Dist: pypdf2; extra == 'osworld'
|
|
106
|
+
Requires-Dist: python-docx; extra == 'osworld'
|
|
107
|
+
Requires-Dist: python-dotenv; extra == 'osworld'
|
|
108
|
+
Requires-Dist: python-pptx; extra == 'osworld'
|
|
109
|
+
Requires-Dist: pytz; extra == 'osworld'
|
|
110
|
+
Requires-Dist: rapidfuzz; extra == 'osworld'
|
|
111
|
+
Requires-Dist: requests-toolbelt~=1.0.0; extra == 'osworld'
|
|
112
|
+
Requires-Dist: scikit-image; extra == 'osworld'
|
|
113
|
+
Requires-Dist: scipy; extra == 'osworld'
|
|
114
|
+
Requires-Dist: tldextract; extra == 'osworld'
|
|
115
|
+
Requires-Dist: xmltodict; extra == 'osworld'
|
|
116
|
+
Provides-Extra: platform
|
|
117
|
+
Requires-Dist: fastapi>=0.115; extra == 'platform'
|
|
118
|
+
Requires-Dist: itsdangerous>=2.2; extra == 'platform'
|
|
119
|
+
Requires-Dist: jinja2>=3.1; extra == 'platform'
|
|
120
|
+
Requires-Dist: python-multipart>=0.0.9; extra == 'platform'
|
|
121
|
+
Requires-Dist: sqlalchemy>=2.0; extra == 'platform'
|
|
122
|
+
Requires-Dist: uv==0.10.2; extra == 'platform'
|
|
123
|
+
Requires-Dist: uvicorn[standard]>=0.30; extra == 'platform'
|
|
124
|
+
Description-Content-Type: text/markdown
|
|
125
|
+
|
|
126
|
+
# cua-speedrun
|
|
127
|
+
|
|
128
|
+
Compare computer-use agents by performance, time, and cost on real desktop tasks.
|
|
129
|
+
|
|
130
|
+
## Quickstart
|
|
131
|
+
|
|
132
|
+
Install and configure your credentials:
|
|
133
|
+
|
|
134
|
+
```bash
|
|
135
|
+
pip install cua-speedrun
|
|
136
|
+
cua-speedrun setup
|
|
137
|
+
cua-speedrun benchmark --dataset osworld-50 --agent qwen3vl
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
Models and desktop images are prepared on first use and cached. Data lives in
|
|
141
|
+
`~/.local/share/cua-speedrun`; set `CUA_SPEEDRUN_HOME` to use another location.
|
|
142
|
+
Use `cua-speedrun doctor` to inspect your installation.
|
|
143
|
+
|
|
144
|
+
## Run an evaluation
|
|
145
|
+
|
|
146
|
+
Evaluations run on Modal by default, using credentials from `setup`, your
|
|
147
|
+
Modal CLI profile, or environment variables. For an API agent:
|
|
148
|
+
|
|
149
|
+
```bash
|
|
150
|
+
export ANTHROPIC_API_KEY="your-api-key"
|
|
151
|
+
cua-speedrun benchmark --dataset osworld-50 --agent claude
|
|
152
|
+
```
|
|
153
|
+
|
|
154
|
+
The command follows progress until the evaluation finishes. To launch and
|
|
155
|
+
inspect evaluations in a browser, run `cua-speedrun dashboard`.
|
|
156
|
+
|
|
157
|
+
- Add `--parallel-evaluations 4` to run four agent replicas in parallel.
|
|
158
|
+
- Bundled GPU agents select their GPU automatically; override it with `--gpu L40S`.
|
|
159
|
+
- Add `--no-preload` to disable environment preloading.
|
|
160
|
+
- To use local Linux hardware, add `--compute local --environment local`.
|
|
161
|
+
Local desktops require KVM/QEMU.
|
|
162
|
+
|
|
163
|
+
Inspect results or download trajectories:
|
|
164
|
+
|
|
165
|
+
```bash
|
|
166
|
+
cua-speedrun evaluations
|
|
167
|
+
cua-speedrun status RUN_ID
|
|
168
|
+
cua-speedrun export RUN_ID
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
Use `cua-speedrun catalog` to list available agents and benchmarks, or
|
|
172
|
+
`cua-speedrun help benchmark` for more options.
|
|
173
|
+
|
|
174
|
+
## Benchmarks
|
|
175
|
+
|
|
176
|
+
| Benchmark | Tasks |
|
|
177
|
+
| --- | ---: |
|
|
178
|
+
| `cua-world-26` | 26 |
|
|
179
|
+
| `osworld-50` | 50 |
|
|
180
|
+
| `osworld2-52` | 52 |
|
|
181
|
+
| `my-pc-bench` | 38 |
|
|
182
|
+
| `cua-world-offline` | 143 |
|
|
183
|
+
| `osworld-offline` | 295 |
|
|
184
|
+
| `osworld2-offline` | 63 |
|
|
185
|
+
|
|
186
|
+
The `offline` variants contain the full offline task sets; the smaller variants
|
|
187
|
+
are representative subsets. MyPCBench also requires a
|
|
188
|
+
`MYPCBENCH_JUDGE_API_KEY` for its evaluator; see its
|
|
189
|
+
[setup instructions](benchmarks/my-pc-bench/README.md).
|
|
190
|
+
|
|
191
|
+
## Bring your own agent
|
|
192
|
+
|
|
193
|
+
Start from an implementation in [`agents/`](agents/). Each agent has two files:
|
|
194
|
+
|
|
195
|
+
- `init.py` prepares dependencies or starts a model server before task timing begins.
|
|
196
|
+
- `agent.py` receives the environment URL and task description, then interacts
|
|
197
|
+
through [`Computer`](src/cua_speedrun/client.py).
|
|
198
|
+
|
|
199
|
+
Submit the folder directly:
|
|
200
|
+
|
|
201
|
+
```bash
|
|
202
|
+
cua-speedrun validate --agent ./my-agent
|
|
203
|
+
cua-speedrun benchmark --dataset osworld-50 --agent ./my-agent
|
|
204
|
+
```
|
|
205
|
+
|
|
206
|
+
Additional packages can be installed by `init.py`; the submission uploads
|
|
207
|
+
`init.py` and `agent.py`. An optional `agent.json` declares `gpu` and
|
|
208
|
+
`required_environment_variables`. To contribute an agent, add its folder to
|
|
209
|
+
`agents/`; it is discovered automatically.
|
|
210
|
+
|
|
211
|
+
## Bring your own benchmark
|
|
212
|
+
|
|
213
|
+
A benchmark is a folder with a `manifest.yaml`, task folders containing
|
|
214
|
+
`task.yaml`, and its environment setup and verifier. The manifest lists tasks:
|
|
215
|
+
|
|
216
|
+
```yaml
|
|
217
|
+
name: my-benchmark
|
|
218
|
+
version: "1"
|
|
219
|
+
tasks: [tasks/my-task]
|
|
220
|
+
```
|
|
221
|
+
|
|
222
|
+
Each `task.yaml` specifies `task_id`, `description`, and an `env` mapping:
|
|
223
|
+
|
|
224
|
+
```yaml
|
|
225
|
+
task_id: my-task
|
|
226
|
+
description: The task for the agent to complete.
|
|
227
|
+
env:
|
|
228
|
+
kind: gym-anything
|
|
229
|
+
env_dir: ${BENCHMARK_DIR}/environment
|
|
230
|
+
task_id: my-task
|
|
231
|
+
```
|
|
232
|
+
|
|
233
|
+
Keep the [Gym-Anything environment](https://github.com/cmu-l3/gym-anything)
|
|
234
|
+
and its task setup/verifier inside the benchmark folder. Then:
|
|
235
|
+
|
|
236
|
+
```bash
|
|
237
|
+
cua-speedrun validate --dataset ./my-benchmark
|
|
238
|
+
cua-speedrun benchmark --dataset ./my-benchmark --agent ./my-agent
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
The benchmark is copied into the installation. Increase its version when
|
|
242
|
+
changing a registered task set. To contribute it, add the folder under
|
|
243
|
+
`benchmarks/` and its name to `catalog/benchmarks.yaml`; packaging is automatic.
|
|
244
|
+
|
|
245
|
+
## Repository structure
|
|
246
|
+
|
|
247
|
+
- [`agents/`](agents/) — agent implementations.
|
|
248
|
+
- [`benchmarks/`](benchmarks/) — task sets and benchmark definitions.
|
|
249
|
+
- [`src/cua_speedrun/`](src/cua_speedrun/) — execution, timing, scoring, and the dashboard.
|
|
250
|
+
- [`src/cua_speedrun/compute_runners/`](src/cua_speedrun/compute_runners/) — local and Slurm runners.
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
# cua-speedrun
|
|
2
|
+
|
|
3
|
+
Compare computer-use agents by performance, time, and cost on real desktop tasks.
|
|
4
|
+
|
|
5
|
+
## Quickstart
|
|
6
|
+
|
|
7
|
+
Install and configure your credentials:
|
|
8
|
+
|
|
9
|
+
```bash
|
|
10
|
+
pip install cua-speedrun
|
|
11
|
+
cua-speedrun setup
|
|
12
|
+
cua-speedrun benchmark --dataset osworld-50 --agent qwen3vl
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
Models and desktop images are prepared on first use and cached. Data lives in
|
|
16
|
+
`~/.local/share/cua-speedrun`; set `CUA_SPEEDRUN_HOME` to use another location.
|
|
17
|
+
Use `cua-speedrun doctor` to inspect your installation.
|
|
18
|
+
|
|
19
|
+
## Run an evaluation
|
|
20
|
+
|
|
21
|
+
Evaluations run on Modal by default, using credentials from `setup`, your
|
|
22
|
+
Modal CLI profile, or environment variables. For an API agent:
|
|
23
|
+
|
|
24
|
+
```bash
|
|
25
|
+
export ANTHROPIC_API_KEY="your-api-key"
|
|
26
|
+
cua-speedrun benchmark --dataset osworld-50 --agent claude
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
The command follows progress until the evaluation finishes. To launch and
|
|
30
|
+
inspect evaluations in a browser, run `cua-speedrun dashboard`.
|
|
31
|
+
|
|
32
|
+
- Add `--parallel-evaluations 4` to run four agent replicas in parallel.
|
|
33
|
+
- Bundled GPU agents select their GPU automatically; override it with `--gpu L40S`.
|
|
34
|
+
- Add `--no-preload` to disable environment preloading.
|
|
35
|
+
- To use local Linux hardware, add `--compute local --environment local`.
|
|
36
|
+
Local desktops require KVM/QEMU.
|
|
37
|
+
|
|
38
|
+
Inspect results or download trajectories:
|
|
39
|
+
|
|
40
|
+
```bash
|
|
41
|
+
cua-speedrun evaluations
|
|
42
|
+
cua-speedrun status RUN_ID
|
|
43
|
+
cua-speedrun export RUN_ID
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Use `cua-speedrun catalog` to list available agents and benchmarks, or
|
|
47
|
+
`cua-speedrun help benchmark` for more options.
|
|
48
|
+
|
|
49
|
+
## Benchmarks
|
|
50
|
+
|
|
51
|
+
| Benchmark | Tasks |
|
|
52
|
+
| --- | ---: |
|
|
53
|
+
| `cua-world-26` | 26 |
|
|
54
|
+
| `osworld-50` | 50 |
|
|
55
|
+
| `osworld2-52` | 52 |
|
|
56
|
+
| `my-pc-bench` | 38 |
|
|
57
|
+
| `cua-world-offline` | 143 |
|
|
58
|
+
| `osworld-offline` | 295 |
|
|
59
|
+
| `osworld2-offline` | 63 |
|
|
60
|
+
|
|
61
|
+
The `offline` variants contain the full offline task sets; the smaller variants
|
|
62
|
+
are representative subsets. MyPCBench also requires a
|
|
63
|
+
`MYPCBENCH_JUDGE_API_KEY` for its evaluator; see its
|
|
64
|
+
[setup instructions](benchmarks/my-pc-bench/README.md).
|
|
65
|
+
|
|
66
|
+
## Bring your own agent
|
|
67
|
+
|
|
68
|
+
Start from an implementation in [`agents/`](agents/). Each agent has two files:
|
|
69
|
+
|
|
70
|
+
- `init.py` prepares dependencies or starts a model server before task timing begins.
|
|
71
|
+
- `agent.py` receives the environment URL and task description, then interacts
|
|
72
|
+
through [`Computer`](src/cua_speedrun/client.py).
|
|
73
|
+
|
|
74
|
+
Submit the folder directly:
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
cua-speedrun validate --agent ./my-agent
|
|
78
|
+
cua-speedrun benchmark --dataset osworld-50 --agent ./my-agent
|
|
79
|
+
```
|
|
80
|
+
|
|
81
|
+
Additional packages can be installed by `init.py`; the submission uploads
|
|
82
|
+
`init.py` and `agent.py`. An optional `agent.json` declares `gpu` and
|
|
83
|
+
`required_environment_variables`. To contribute an agent, add its folder to
|
|
84
|
+
`agents/`; it is discovered automatically.
|
|
85
|
+
|
|
86
|
+
## Bring your own benchmark
|
|
87
|
+
|
|
88
|
+
A benchmark is a folder with a `manifest.yaml`, task folders containing
|
|
89
|
+
`task.yaml`, and its environment setup and verifier. The manifest lists tasks:
|
|
90
|
+
|
|
91
|
+
```yaml
|
|
92
|
+
name: my-benchmark
|
|
93
|
+
version: "1"
|
|
94
|
+
tasks: [tasks/my-task]
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
Each `task.yaml` specifies `task_id`, `description`, and an `env` mapping:
|
|
98
|
+
|
|
99
|
+
```yaml
|
|
100
|
+
task_id: my-task
|
|
101
|
+
description: The task for the agent to complete.
|
|
102
|
+
env:
|
|
103
|
+
kind: gym-anything
|
|
104
|
+
env_dir: ${BENCHMARK_DIR}/environment
|
|
105
|
+
task_id: my-task
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
Keep the [Gym-Anything environment](https://github.com/cmu-l3/gym-anything)
|
|
109
|
+
and its task setup/verifier inside the benchmark folder. Then:
|
|
110
|
+
|
|
111
|
+
```bash
|
|
112
|
+
cua-speedrun validate --dataset ./my-benchmark
|
|
113
|
+
cua-speedrun benchmark --dataset ./my-benchmark --agent ./my-agent
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
The benchmark is copied into the installation. Increase its version when
|
|
117
|
+
changing a registered task set. To contribute it, add the folder under
|
|
118
|
+
`benchmarks/` and its name to `catalog/benchmarks.yaml`; packaging is automatic.
|
|
119
|
+
|
|
120
|
+
## Repository structure
|
|
121
|
+
|
|
122
|
+
- [`agents/`](agents/) — agent implementations.
|
|
123
|
+
- [`benchmarks/`](benchmarks/) — task sets and benchmark definitions.
|
|
124
|
+
- [`src/cua_speedrun/`](src/cua_speedrun/) — execution, timing, scoring, and the dashboard.
|
|
125
|
+
- [`src/cua_speedrun/compute_runners/`](src/cua_speedrun/compute_runners/) — local and Slurm runners.
|