Skip to main content
The completion window is a single field with three settings. immediate answers now. priority answers soon. loose answers eventually. These three strings — immediate, priority, loose — are exactly what travel on the wire. The model is identical in all three; what changes is the tariff and the latency. Because the trade-off is a property of the task rather than the deployment, you pick a window per request.

Choosing per request

The window can be set on the agent as a default and overridden per session.
The same model runs in every lane — only latency and price move:
An agent a person is watching should be on immediate. An agent that starts at midnight and delivers at nine has no reason to be, and pays materially less for the same model. Being able to say which one a given task is — per request rather than per deployment — is the feature.

What the window is worth

From the benchmark, Vetta against the cheapest competing cell in the same window (dollars per completed task; completions of 16 in brackets): priority is the interesting setting: it completes 13 of 16 — the highest completion count of any cell in the study — at $0.2332 per completed task, 21.6% below Vetta’s own immediate default. It finishes more work and costs less; the only thing it spends is time.

A cheap bill is not automatically a saving

A looser window is genuinely cheaper per token, but part of a low loose bill is the agent simply doing less work inside the same wall-clock cap. Decomposed as total = rate x volume, the tariff discount alone lands between 0.69x and 0.80x across harnesses; anything beyond that is reduced volume, not a discount. Vetta reports cost per completed task precisely so a window that looks cheap because trials died early is not mistaken for a real saving. See Benchmarks for the full decomposition.
The window is served on supported models only. On an unsupported model, a request for priority or loose is refused with a typed error — window_unavailable, HTTP 400 — rather than quietly downgraded to the default. See Model router & inference.

Fields

The window field takes one of three settings, and the same string travels on the wire: immediate is the default and is available on every model; priority and loose require a pool-supported model. Precedence is session.window over agent.window over the org default.

Next: budgets

Every call priced before it is made.