Replay H CUA Perf Computer-Use Agent Traces
H CUA Perf is 477 sessions (18,224 requests) recorded from H Company’s computer-use agent on CUA-Gym desktop tasks. License: CC BY 4.0.
Each record is one real chat-completion request:
- the full text history of the session so far
- 10 tool definitions
- the latest screenshot
- the recorded completion length
- the time the agent waited before sending it, tool execution included
Prompts grow with every turn and a sliding window bounds the screenshots per request, so the replay exercises prefix caching, multimodal prefill and tool-call parsing the way a real agent does. The dataset card describes the record schema.
Server
The server needs a vision model, a tool parser, a context window as large as the model allows and an image limit at least as large as the screenshot window.
--enable-prompt-tokens-details is what lets AIPerf report prompt-cache hits.
Replay
Some requests are larger than the 128k-token context of the example server; max_trace_length=40 and the small screenshot window keep the example’s requests under it.
Each session is one multi-turn conversation: a request is sent, the response awaited, the recorded wait slept, then the next recorded request is sent. There are no timestamps, so --fixed-schedule does not apply.
The screenshot window, the session selection and the request shaping are --dataset-filter options:
Replay a local build
A build derived with the dataset’s trace_processor.py is replayed from disk. Point --input-file at the trace and name the format:
trace_processor.py writes the trace, zstd-compressed when the output path ends in .zst, and its h_cua.meta.json manifest beside it with the trace’s sha256; any other file is refused. A manifest without a sha256 comes from an older copy of the script: download it again and derive the build again. Every session of the build is loaded. --dataset-filter applies to --public-dataset only: a derived build already carries its screenshot window and session selection, so shape it when deriving it.