General configuration for the LLM
OptionalaspectRatio?: `${number}:${number}`Image aspect ratio, for example 16:9
OptionalfrequencyPenalty?: numberPenalizes tokens according to how often they appear.
OptionalmaxImagesPerCall?: numberMaximum images to request per provider call
OptionalmaxOutputTokens?: numberMaximum number of tokens in the response.
Tool-loop iterations when stopWhen is omitted. Always a positive integer after load (default 10).
OptionalmaxTokens?: numberMaximum number of tokens in the response.
OptionalmessageOptions?: Record<string, Record<string, Record<string, unknown>>>Named, reusable per-message providerOptions sets, referenced from message blocks via the
options="<name>" attribute. Each value is a provider-namespaced options object, e.g.
{ anthropic: { cacheControl: { type: 'ephemeral' } } }.
Model name/identifier
Optionaln?: numberNumber of images to generate
OptionalpresencePenalty?: numberPenalizes tokens that already appear in the prompt or generated output.
LLM provider.
Built-in: 'anthropic', 'openai', 'azure', 'amazon-bedrock', 'google-vertex',
'perplexity'. Legacy aliases 'bedrock' and 'vertex' are deprecated but still accepted
in prompts and normalized to their canonical names with a warning. Custom providers
registered via registerProvider are also accepted.
OptionalproviderOptions?: Record<string, unknown>Provider-specific options
Optionalseed?: numberRandom seed for deterministic text or image generation when supported
Optionalsize?: `${number}x${number}`Image size, for example 1024x1024
Skill file or directory paths relative to the prompt file. Always a string[] after load ([] if unset).
OptionalstopSequences?: string[]Sequences that stop text generation when produced.
Optionaltemperature?: numberGeneration temperature. Supported range and behavior vary by provider.
Optionaltools?: Record<string, Record<string, unknown>>Provider-specific tools with configuration.
OptionaltopK?: numberLimits sampling to the top K token choices.
OptionaltopP?: numberNucleus sampling value. Usually set instead of temperature.
Base directory for resolving relative prompt resources such as skills.
The whole trimmed prompt body when its first meaningful token is plain text. Always set after
loadPrompt: a non-empty string with messages: [] for instruction mode, or null when the
body starts with markup and is parsed into messages.
Array of messages in the conversation
Prompt name used in tracing and errors.
Interpolation values associated with the prompt. Defaults to {} when validated.
Configuration for LLM prompt generation.
Example