Configuration precedence and plugins
Section ID: Guide/jf4cstc3ng#overview
Generation configuration can come from a profile, conversation defaults and a per-send override. This reference defines their precedence and the plugin configuration passed into generation.
System prompt
Section ID: Guide/jf4cstc3ng#configuration-system-prompt
Set defaultGenerationConfig.systemPrompt through update-default-generation-config, or supply it in the per-turn generation override. update-default-generation-config replaces the complete stored configuration, so read and retain the existing model, limits and other defaults before adding the prompt. A per-send override has different merge behavior. settings.systemPrompt is not a recognized field and is ignored. The selected profile and per-turn overrides can replace the thread’s prompt; see configuration precedence.
Generation configuration precedence
Section ID: Guide/jf4cstc3ng#configuration-how-settings-combine
The platform resolves a final GenerationConfig for each generation call by merging three layers:
Generation configuration precedence
Profile or thread defaults form the base; populated per-send fields override that base, and a platform default model fills an unset model.
Resolution rules:
-
systemPrompt: per-send override wins > active profile > thread default. The active profile's prompt is first rendered with the current prompt variables.
-
Memory config: if the active profile omits
mem0config entirely, the thread default'smem0config is inherited (special case — other fields are not inherited this way). -
Model: if nothing in the chain sets a model, the platform substitutes its own default.
-
Per-send fields:
overrideGenerationConfigmerges field-by-field — set a field to override it for that send; omit it to keep the base value. -
MCP servers: follow the three-tier replacement rule described in MCP server selection, not field-by-field merging.
Plugins
Section ID: Guide/jf4cstc3ng#configuration-plugins
plugins is a list of PluginConfig objects that activate pre/post-processing behaviour. Two built-in plugins:
PDF parsing — attach a pdf block to configure the extraction engine:
See GenerationConfigInput for the full field contract. This excerpt illustrates the relevant choices; replace identifiers with your own authorized values.
plugins[0].id: text file-parser.plugins[0].pdf.engine: text mistral-ocr.
Configuration excerpt: GenerationConfig fields.
Engines: pdf-text (default, text extraction), mistral-ocr (OCR via Mistral), native (provider-native parsing).
Web search — attach a web block:
See GenerationConfigInput for the full field contract. This excerpt illustrates the relevant choices; replace identifiers with your own authorized values.
plugins[0].id: text web-search.plugins[0].web.engine: text native.plugins[0].web.maxResults: number 5.plugins[0].web.searchPrompt: text Find recent news about....plugins[0].web.webSearchOptions.searchContextSize: text medium.
Configuration excerpt: GenerationConfig fields.
searchContextSize accepts low, medium, or high.
Document ID: Guide/jf4cstc3ng