From eed580d310b777d2328474320d1c04a64c7d832e Mon Sep 17 00:00:00 2001 From: damaozi <1811866786@qq.com> Date: Sat, 31 Jan 2026 23:46:38 +0800 Subject: [PATCH] fix(config): clamp maxTokens to contextWindow to prevent invalid configurations Closes #5308 When users configure maxTokens larger than contextWindow (e.g., maxTokens: 40960 with contextWindow: 32768), the model may fail silently. This fix clamps maxTokens to be at most contextWindow, preventing such invalid configurations. --- src/config/defaults.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/config/defaults.ts b/src/config/defaults.ts index 3e588270456..576c49a4034 100644 --- a/src/config/defaults.ts +++ b/src/config/defaults.ts @@ -215,7 +215,9 @@ export function applyModelDefaults(cfg: OpenClawConfig): OpenClawConfig { } const defaultMaxTokens = Math.min(DEFAULT_MODEL_MAX_TOKENS, contextWindow); - const maxTokens = isPositiveNumber(raw.maxTokens) ? raw.maxTokens : defaultMaxTokens; + // Clamp maxTokens to contextWindow to prevent invalid configurations + const rawMaxTokens = isPositiveNumber(raw.maxTokens) ? raw.maxTokens : defaultMaxTokens; + const maxTokens = Math.min(rawMaxTokens, contextWindow); if (raw.maxTokens !== maxTokens) { modelMutated = true; }