modelRequired
string
Nonempty service-specific model identifier; no local catalog or availability probe is used.
promptOptional
string | undefined
Nonempty text sent as a single user message. Set exactly one of prompt and messages.
messagesOptional
readonly ModelMessage[] | undefined
Conversation history starting and ending with a user message. Each tool call needs exactly one result in the next user message; reasoning blocks from another provider or model are dropped before sending.
systemOptional
string | undefined
Instructions sent as the Chat Completions system message, the Responses instructions or the Anthropic system text.
toolsOptional
readonly ModelToolSpec[] | undefined
Tools the model may call, with unique names and JSON Schema inputs. The provider translates them to its function or tool format; it never executes them.
maxOutputTokensOptional
number | undefined
Positive output token limit, sent as max_completion_tokens (Chat Completions), max_output_tokens (Responses) or max_tokens (Anthropic). Anthropic requests fail with code configuration without it; inside a harness it defaults to the agent model’s limit.
reasoningOptional
ModelReasoning | undefined
Reasoning effort for this request. OpenAI protocols send the value unchanged as reasoning_effort or reasoning.effort; Anthropic maps none to disabled thinking, low to max to adaptive thinking at that effort, and rejects minimal.
cacheOptional
boolean | undefined
Ask Anthropic to cache the conversation prefix with an automatic breakpoint. OpenAI caches stable prefixes automatically and ignores the flag.
signalOptional
AbortSignal | undefined
Cancellation signal for this request, combined with the provider deadline. Aborting rejects with code aborted; the provider stays reusable.