Agent definition
Models and placement
Agent definition fields for models and placement.
For: Plugin authors looking up agent fields.
Look up the fields below when editing an agent definition.
model.primary
string
The model, as
<provider>/<model>, for example anthropic/claude-sonnet-5-5, or local/<model> for a model a node serves. Required unless the runtime is a harness or the agent asks for an alias with model.use.model.fallback
string[]
Models tried in order when the primary fails.
model.use
string
A model alias of the tenant, such as
smart, instead of primary: each tenant maps it to models of its own providers, and the edge picks one when the job starts (Models and keys). Every tenant has the standard aliasesdefault, fast and smart; prefer them.model.needs
string[]
What the alias's model must be able to do:
tools, vision, structured_output, thinking, pdf, audio, web_search, prompt_cache.model.min_context
tokens
The smallest context window the agent works with, such as
128k or 1m.model.placement
string
For a
local/<model>: node (the default) sends the agent's jobs to the nodes that serve the model; fleet runs them anywhere and sends each model call to the model's queue on the GPU nodes that serve it to the fleet (local models).model.wait
duration
With
placement: fleet, how long a model call waits for a slot before it falls back to model.fallback; 60s when unset. An agent with data: local never falls back.model.priority
integer
Temporal's priority key, 1 (served first) to 5 (last), for the agent's model calls on the fleet's model queues (
model.placement: fleet, or a model that resolves to one); unset is 3. See Local models.model.cascade
string[]
One to three models, aliases or
<provider>/<model>, that a failed round restarts on in turn: a round whose answer fails the outcome check (grader, judge, reviewer or verify script) or breaks the output contract after its retries starts again on the next one, as a new conversation with the task, the last answer, the reasons and the earlier tool calls. Provider errors still go to model.fallback.Needs model.primary or model.use as the first round's model, also for a harness agent, and outcome or an output schema; local models only with data: local, and every local/ model in it is required of the job's node; not with placement: fleet; refused on openai-agents and remote agents (CascadeUnsupported). See A cascade.model.vendor_reason
string
Why the agent names a vendor's model (
model.primary, a fallback or a cascade step) instead of asking for an alias: the vendor's own feature it needs, in one sentence on one line, at most 300 characters, such as Runs on the OpenAI Agents SDK, whose hand-offs need an OpenAI model. Only beside a vendor's model; local/ and test/ models need none. plugin lint --verified fails a verified plugin's agent that names a vendor's model without it (OZ-S016); for other plugins, lint suggests an alias instead, and says nothing once the reason is given.model.effort
string
How hard the agent's model thinks, whichever model the tenant gives it:
low, medium, high, xhigh or max. Unset runs the model at its own default. The tenant's alias may give a target a default, a mapping rule may change it, and the tenant's ceiling may lower it; a level a model lacks is rounded to the nearest one it has, and the job's trace says so (effort_adjusted).It applies to pydantic-ai, openai-agents and harness agents, and to the agent's judge, fallbacks, cascade steps and best-of candidates; plugin lint warns where it does nothing (a remote agent, a test/ model, a harness that does not say it honours it). A thinking token budget is never set. See Reasoning effort.requires.labels
map
Labels a node must have to run the agent.