-
-
Notifications
You must be signed in to change notification settings - Fork 69.7k
[Bug] Per-model params.thinking silently ignored — thinkingDefault always wins #30399
Description
Per-model params.thinking in agents.defaults.models["provider/model"].params.thinking is accepted by the config schema but never consulted during thinking-level resolution. The global thinkingDefault always takes precedence.
Reproduction:
Set thinkingDefault: low globally, and params.thinking: high on a specific model. session_status shows Think: low regardless.
Root cause:
resolveThinkingDefault() checks cfg.agents.defaults.thinkingDefault first and returns immediately — never looks at per-model params. Per-model params ARE loaded via resolveExtraParams() but thinking is ignored by createStreamFnWithExtraParams().
Fix location:
resolveThinkingDefault() in model-selection module. Add per-model params.thinking check before global thinkingDefault fallback.
Workaround: Set thinkingDefault globally to desired level, or use /thinking per-session.
Version: openclaw 2026.2.26 (bc50708)