Ollama thinking models produce empty responses — think: false not sent in API requests
Summary
When Ollama 0.18.0+ serves thinking-capable models (e.g., qwen3.5:35b), it streams thinking tokens in a separate thinking field. OpenClaw only reads chunk.message.content — when the model spends its output budget on thinking and produces no text/tool_calls, OpenClaw sees content: [] → subagent "failed to produce results."
Related to #34722 (field name mismatch), but the deeper issue is that think: false should be sent in the request body for models where thinking is not desired (subagents, cron jobs, tool-calling tasks).
Affected code
All Ollama API request builders in dist files. The request body should include:
This prevents thinking tokens from being generated at all, reducing token usage ~60% and ensuring content/tool_calls are returned.
Steps to reproduce
- Run Ollama 0.18.0 with
qwen3.5:35b
- Spawn a subagent on
ollama/qwen3.5:35b
- Subagent returns empty — session JSONL shows
output: 62, content: [], stopReason: "stop"
- Direct Ollama API test confirms: all tokens in
thinking field, content: ""
Impact
All thinking-capable Ollama models silently produce empty responses in subagents. This includes qwen3.5, kimi-k2.5, glm-5, etc.
Workaround
Patch 6 dist files to add think: false to the request body for Ollama API calls.
Environment
- OpenClaw 2026.3.13
- Ollama 0.18.0
- Model: qwen3.5:35b (23GB)
Ollama thinking models produce empty responses —
think: falsenot sent in API requestsSummary
When Ollama 0.18.0+ serves thinking-capable models (e.g.,
qwen3.5:35b), it streams thinking tokens in a separatethinkingfield. OpenClaw only readschunk.message.content— when the model spends its output budget on thinking and produces no text/tool_calls, OpenClaw seescontent: []→ subagent "failed to produce results."Related to #34722 (field name mismatch), but the deeper issue is that
think: falseshould be sent in the request body for models where thinking is not desired (subagents, cron jobs, tool-calling tasks).Affected code
All Ollama API request builders in dist files. The request body should include:
think: falseThis prevents thinking tokens from being generated at all, reducing token usage ~60% and ensuring content/tool_calls are returned.
Steps to reproduce
qwen3.5:35bollama/qwen3.5:35boutput: 62, content: [], stopReason: "stop"thinkingfield,content: ""Impact
All thinking-capable Ollama models silently produce empty responses in subagents. This includes qwen3.5, kimi-k2.5, glm-5, etc.
Workaround
Patch 6 dist files to add
think: falseto the request body for Ollama API calls.Environment