PreparedTask -> RunResult contract.
Harnesses should not own benchmark scoring. They run the agent, collect trajectory and output, and return normalized data for the benchmark and analyzers.
What Harnesses Own
Compatibility
Declare whether the harness supports the selected environment and model protocol.
Session setup
Start any local process, remote entrypoint, tmux session, or framework session needed for tasks.
Task execution
Consume
PreparedTask and return RunResult with prediction, trajectory, errors, and metadata.Cleanup
Close sessions without deleting benchmark-owned result artifacts.
Core Interface
Harness Families
Usage: GUI Grounding Harness
screenspot prepares image and instruction data. qwen3vl_gui sends the prepared GUI grounding request to the model endpoint. ScreenSpot still owns scoring.
Usage: Coding Agent Harness
/testbed; the Modal recipe selects the task image; mini_swe_agent runs the repair workflow against that workspace.
Usage: Terminal Agent Harness
What Harnesses Return
Good harness output includes:- final prediction or generated files;
- structured trajectory steps;
- model usage, latency, and tool-call metadata when available;
- error fields that can be parsed by analyzers;
- enough workspace or command context for benchmark evaluation.
