---
title: "Delegation and human decisions"
description: "Agent definition fields for delegation and human decisions."
canonical_url: "https://docs.oz0.ai/reference/agent-definition/coordination"
---
# Delegation and human decisions

> Agent definition fields for delegation and human decisions.

For: Plugin authors looking up agent fields.

Look up the fields below when editing an agent definition.

<field-group>
<field name="delegation.allow" type="string[]">

Agents `oz.delegate` may start.

</field>

<field name="delegation.max_depth" type="integer">

How deep a chain of delegations may go. Unset means 1.

</field>

<field name="delegation.max_children" type="integer">

Delegations per job. Unset means no limit.

</field>

<field name="handoffs" type="string[]">

For `openai-agents` agents: other `openai-agents` agents of the same plugin that may take the conversation over in the same job (the SDK's hand-offs). Each must be in `delegation.allow`; a chain of hand-offs is at most `delegation.max_depth` long, and hand-offs count against `delegation.max_children`. A target answers with the output contract of the agent the job started on; `plugin lint` warns when its own differs.

<field name="delegation.best_of" type="map">

Runs every delegation as a best-of of the agent delegated to: `n`, `models`, and `judge` with `rubric`, or `grader`, as under `best_of`. See [Outcome checks and patterns](https://docs.oz0.ai/improve/outcome-checks).

</field>
</field>
</field-group>

<field name="approvals" type="object">

The deadline and the escalation ladder of the approvals this agent waits for, where its tools and the tenant's rules set none: `deadline` (1m to 720h), `escalation` (`off` with `escalation_reason`, or at most five steps `{at, to}`, as a tool's `approval`). Its questions keep `ask_user.timeout` and climb this ladder too. See [Approvals](https://docs.oz0.ai/agents/approvals/configure#deadlines).

</field>

<field name="ask_user.timeout" type="duration">

How long a question from `oz.ask_user` waits for an answer. Unset means 24h. See [Asking people](https://docs.oz0.ai/agents/asking-people).

</field>

<field name="ask_user.on_timeout" type="string">

`continue` (the default): the agent is told nobody answered and goes on. `fail`: the job fails with `QuestionTimedOut`.

</field>

<field name="colleagues.ask" type="string[]">

The agents `oz.ask_colleague` may ask. Unset means any colleague: the agent's parent job, a sibling or a child, while it runs. See [Colleagues and the board](https://docs.oz0.ai/agents/colleagues).

</field>

<field name="colleagues.answer" type="boolean">

`false` refuses every colleague's question. Unset means the agent answers.

</field>

<field name="colleagues.max_questions" type="integer">

Questions one job of the agent may ask. Unset means 10; at most 100.

</field>

<field name="colleagues.timeout" type="duration">

How long a question waits for its answer. Unset means 5m; at most 1h.

</field>

::

[Back to the agent definition](https://docs.oz0.ai/reference/agent-definition).


## Sitemap

See the full [sitemap](https://docs.oz0.ai/sitemap.md) for all pages.
