Skip to main content
verifiers offers built-in support for Harbor via the HarborTaskset class. Creating a Harbor-based taskset is straightforward in most cases:
You can also write custom code for your tasksets. A common customization is to set images for tasks that don’t come with one in their task.toml:
To create and reuse images for your tasksets, build the Dockerfile with Docker and push it to a registry, then set the resulting image reference as the task’s image field. On the prime runtime any pullable image reference just works: the first sandbox to use an image makes the platform build and cache what it needs from it (for VM sandboxes this build can take ~10 minutes — the eval dashboard marks affected rollouts as build and a warning is logged); every later sandbox on the same reference starts in seconds.

Additional features

By default, each task’s declared agent and verifier timeouts are ignored (ignore_timeouts = true): Harbor task timeouts are authored against Harbor’s own runtime, so enforcing them confounds model capability with the speed of your inference stack. Set ignore_timeouts = false (or pass --no-env.taskset.ignore-timeouts) to apply them, e.g. for a faithful comparison against the Harbor implementation. With ignore_timeouts = false, every Harbor taskset can also be modified with a timeout_multiplier, and any Harbor taskset with a resource_multiplier:
The timeout_multiplier multiplies both the agent and verifier timeout, while the resource_multiplier multiplies the task’s CPU, memory and disk space. You might want to use these multipliers when the tasks set too tight limits and/or the agent is slow.

Network policies

Harbor’s effective agent network policy is applied to Docker harness runtimes. An [agent].network_mode override takes precedence over the [environment] baseline; legacy [environment].allow_internet is normalized by Harbor’s schema. Trusted task and harness setup remains online. The policy starts immediately before the agent and stays active through finalization and scoring. Interception and MCP URLs are added automatically; evaluator-provided allow entries add exceptions and block entries can narrow them. Restricted Harbor tasks require the Docker runtime because the other runtimes do not provide framework-aware URL filtering.

Shortcomings

verifiers does not have parity with Harbor yet, so some features are missing and currently being worked on. The most notable missing features right now are: