By default, a subagent runs on the same model as the chat that started it. Subagent model selection lets a delegation choose its own route instead: a provider, a model and, optionally, a reasoning effort, all from a list of allowed routes. Use it when part of the work suits a different model or effort.
Subagent model selection is part of the subagent settings, and it is off by default. When it is on, it carries a list of allowed models: the routes a delegation may choose from. An enabled setting must name at least one model; an empty list is refused with enabled subagent model selection requires at least one allowed model. Subagent settings describes the settings surface.
The choice is recorded once per chat:
Choosing a model also needs a delegation target that accepts per-child options. A target that does not keeps its fixed route; Choosing and enabling a delegation backend compares the targets.
While a delegation tool in the chat has model selection on, Oda can read the routes it may use with list_subagent_models. A lookup changes nothing about the chat; it only lists what is available.
<provider-id> - <name>.provider, it lists that provider's advertised models: <provider>/ <model-id> - <name>, with a description after a colon when the model has one.provider and model, it lists that model's reasoning efforts, with the default marked (default).When there is nothing to show, the lookup says so:
(no LLM providers): no provider is inside the chat's allowed list.(no advertised models for <provider>): the provider advertises no models.(no advertised reasoning efforts): that model offers no reasoning efforts.Two rules shape the answer:
LLM provider "<id>" is not allowed for this Session), and it never appears among the available alternatives.A lookup with a mistake is refused as well: a model named without its provider (`model` requires `provider`), a provider named as a blank string (`provider` must be non-empty), or a provider Oda does not know, which reports what is available (LLM provider "<id>" is not registered; available providers: <list>).
A delegation names its choice with three fields: provider, model and reasoning_effort. The call itself is described in Delegating work to subagents.
child LLM `provider` and `model` must be supplied together.child LLM `reasoning_effort` must be non-empty. An effort on its own works only when the model is already decided for the call.child LLM route "<provider>/ <model>" is not allowed for this Session.child model selection is disabled for this tool instance.Choosing the chat's own model and effort is covered in Chat with Oda.
It is part of the subagent settings and off by default. When it is on, it carries the allowed list of models a delegation may choose from; Subagent settings describes the settings surface.
The routes on the allowed list recorded for its chat. Oda can look up what is available with list_subagent_models, and the lookup is trimmed to what the chat allows. The providers themselves are managed in Settings > Models; see Set up models and providers.
No. Each chat keeps the decision it started with; changing the setting does not change existing chats, and a chat restored without a recorded decision stays without model selection.
Either model selection is off for the delegation tool (child model selection is disabled for this tool instance), or the route is outside the allowed list recorded for the chat (child LLM route "<provider>/). A half-named route and a blank effort are refused too.
Yes, as long as a model is already decided for the call: the chat's own model, a route configured for the delegation tool, or the provider's own default.
When a delegation changes the model but names no effort, the inherited effort is cleared, and the new model resolves its own default. Name an effort together with the model to keep a specific one.
No. The lookup only lists routes; it changes nothing about the chat or its current model.
(no LLM providers) means no provider is inside the chat's allowed list; (no advertised models for <provider>) means the provider advertises none; (no advertised reasoning efforts) means the model offers no reasoning efforts.
Yes. A subagent chat takes the decision recorded for the chat that started it.
Those that accept per-child options; a target that does not keeps its fixed route. Choosing and enabling a delegation backend compares the targets.