Bug type
Regression (worked before, now fails)
Summary
I just updated OpenClaw from 2026.3.2 to 2026.3.8. I found out that my agent now always sends text before calling a tool (e.g. role":"assistant", content: [ {"type":"text","text":"Blabla"}, {"type":"toolCall",...} ]).
This leads to much more messages being sent in the channel, most of which are quite unpersonal since they resemble neutral actions caused by a system prompt (as it seems).
I've managed to find out that this bug was introduced by the jump from version 2026.3.2 to 2026.3.7 (by downgrading). Before there were no {"type":"text"} calls before tool calls in the same request.
Before (no {"type":"text", ...} before the tool call):
{"type":"message","id":"7d33653f","parentId":"4541d9a1","timestamp":"2026-03-13T12:47:12.949Z","message":{"role":"assistant","content":[{"type":"toolCall","id":"ollama_call_fc556e19-48ea-4ece-a09b-e4a3591a828c","name":"web_search","arguments":{"count":10,"query":"Lionell Messi"}}],"stopReason":"toolUse","api":"ollama","provider":"ollama","model":"glm-5:cloud","usage":{"input":23501,"output":220,"cacheRead":0,"cacheWrite":0,"totalTokens":23721,"cost":{"input":0,"output":0,"cacheRead":0,"cacheWrite":0,"total":0}},"timestamp":1773406032947}}
After (always {"type":"text", ...} before tool call):
{"type":"message","id":"7d33653f","parentId":"4541d9a1","timestamp":"2026-03-13T12:47:12.949Z","message":{"role":"assistant","content":[{"type":"text","text":"It is a football player. Let me see if there are any other relevant results:"},{"type":"toolCall","id":"ollama_call_fc556e19-48ea-4ece-a09b-e4a3591a828c","name":"web_search","arguments":{"count":10,"query":"Lionell Messi"}}],"stopReason":"toolUse","api":"ollama","provider":"ollama","model":"glm-5:cloud","usage":{"input":23501,"output":220,"cacheRead":0,"cacheWrite":0,"totalTokens":23721,"cost":{"input":0,"output":0,"cacheRead":0,"cacheWrite":0,"total":0}},"timestamp":1773406032947}}
Steps to reproduce
- Configure Matrix channel (propably this does not only affect the Matrix channel)
- Write a prompt that will trigger more than just a single response (e.g. via tool call)
- See that multiple messages appear with the first one being a summary of the prompt in third person.
Expected behavior
The agent only send messages after each agentic turn and tool calls remain dedicated and filtered message objects.
{"type":"message","id":"7d33653f","parentId":"4541d9a1","timestamp":"2026-03-13T12:47:12.949Z","message":{"role":"assistant","content":[{"type":"toolCall","id":"ollama_call_fc556e19-48ea-4ece-a09b-e4a3591a828c","name":"web_search","arguments":{"count":10,"query":"Lionell Messi"}}],"stopReason":"toolUse","api":"ollama","provider":"ollama","model":"glm-5:cloud","usage":{"input":23501,"output":220,"cacheRead":0,"cacheWrite":0,"totalTokens":23721,"cost":{"input":0,"output":0,"cacheRead":0,"cacheWrite":0,"total":0}},"timestamp":1773406032947}}
Actual behavior
The agent always send a text message in the same request before each tool call, which get sent into the channel.
{"type":"message","id":"7d33653f","parentId":"4541d9a1","timestamp":"2026-03-13T12:47:12.949Z","message":{"role":"assistant","content":[{"type":"text","text":"It is a football player. Let me see if there are any other relevant results:"},{"type":"toolCall","id":"ollama_call_fc556e19-48ea-4ece-a09b-e4a3591a828c","name":"web_search","arguments":{"count":10,"query":"Lionell Messi"}}],"stopReason":"toolUse","api":"ollama","provider":"ollama","model":"glm-5:cloud","usage":{"input":23501,"output":220,"cacheRead":0,"cacheWrite":0,"totalTokens":23721,"cost":{"input":0,"output":0,"cacheRead":0,"cacheWrite":0,"total":0}},"timestamp":1773406032947}}
Especially the first message in a turn always is a "summary" of my prompt but referring to me in third person. This really makes this conversation feel unpersonal. I did not manage to fix this through the AGENTS.md (I think this part of the system prompt?)
OpenClaw version
2026.3.8
Operating system
Ubuntu Server 24.02 LTS
Install method
Custom docker compose stack, but using the official Docker image
Model
ollama/glm-5:cloud
Provider / routing chain
openclaw > local Ollama instance as "cloud proxy" > Ollama Cloud
Config file / key location
nothing that i can think of that has to do with this problem
Additional provider/model setup details
No response
Logs, screenshots, and evidence
In this image you can see that the first message always refers to me (Leon) in third person. This makes the conversation really feel unpersonal and I did not manage to fix this through the AGENTS.md (I think this part of the system prompt?)
Impact and severity
Affected: Matrix channel users
Severity: just annoying, but seems to be unintended
Frequency: always if there is more then one step in the agentic turn
Consequence: it is annoying and sometimes, the batching of all those messages causes rate limit hits on the Matrix server (already reported in #45118)
Additional information
I have not found a way to work around this.
Maybe it would be nice to have a config field to filter out all text messages that are within the same request as the tool call? I don't know if this is intended, but it makes the conversation feel unnatural and I think having the possibility to change this behavior would be nice.
Bug type
Regression (worked before, now fails)
Summary
I just updated OpenClaw from 2026.3.2 to 2026.3.8. I found out that my agent now always sends text before calling a tool (e.g.
role":"assistant", content: [ {"type":"text","text":"Blabla"}, {"type":"toolCall",...} ]).This leads to much more messages being sent in the channel, most of which are quite unpersonal since they resemble neutral actions caused by a system prompt (as it seems).
I've managed to find out that this bug was introduced by the jump from version 2026.3.2 to 2026.3.7 (by downgrading). Before there were no
{"type":"text"}calls before tool calls in the same request.Before (no
{"type":"text", ...}before the tool call):After (always
{"type":"text", ...}before tool call):Steps to reproduce
Expected behavior
The agent only send messages after each agentic turn and tool calls remain dedicated and filtered message objects.
Actual behavior
The agent always send a text message in the same request before each tool call, which get sent into the channel.
Especially the first message in a turn always is a "summary" of my prompt but referring to me in third person. This really makes this conversation feel unpersonal. I did not manage to fix this through the AGENTS.md (I think this part of the system prompt?)
OpenClaw version
2026.3.8
Operating system
Ubuntu Server 24.02 LTS
Install method
Custom docker compose stack, but using the official Docker image
Model
ollama/glm-5:cloud
Provider / routing chain
openclaw > local Ollama instance as "cloud proxy" > Ollama Cloud
Config file / key location
nothing that i can think of that has to do with this problem
Additional provider/model setup details
No response
Logs, screenshots, and evidence
In this image you can see that the first message always refers to me (Leon) in third person. This makes the conversation really feel unpersonal and I did not manage to fix this through the AGENTS.md (I think this part of the system prompt?)
Impact and severity
Affected: Matrix channel users
Severity: just annoying, but seems to be unintended
Frequency: always if there is more then one step in the agentic turn
Consequence: it is annoying and sometimes, the batching of all those messages causes rate limit hits on the Matrix server (already reported in #45118)
Additional information
I have not found a way to work around this.
Maybe it would be nice to have a config field to filter out all text messages that are within the same request as the tool call? I don't know if this is intended, but it makes the conversation feel unnatural and I think having the possibility to change this behavior would be nice.