Skip to content

Bug: Webchat streaming responses get replaced/overwritten by subsequent tool calls #31895

@drkyleahuggins

Description

@drkyleahuggins

Problem

In the webchat interface, when an agent sends a text response and then immediately makes tool calls in the same turn, the original streamed text response gets replaced/overwritten by the tool call output or the next streamed response. The user loses the message they were actively reading.

This is extremely frustrating in practice. The user sees a thoughtful multi-paragraph response streaming in, starts reading it, and then it vanishes and gets replaced by a new response generated after the tool calls complete.

Steps to Reproduce

  1. Open webchat session
  2. Ask a question that requires the agent to both explain something AND perform tool calls
  3. Agent streams a text response, then immediately calls tools (e.g., file reads, exec, web_search)
  4. The original text response disappears and is replaced by the post-tool-call response

Expected Behavior

All streamed text responses should persist in the chat. Tool call results and subsequent responses should appear as NEW messages below the original, not replace it.

Workaround

Agent can avoid immediate tool calls after sending informational text, but this significantly hampers the agent's ability to work efficiently (must artificially split work into multiple turns).

Impact

High frustration for users. Creates trust issues when agents repeatedly lose messages the user was reading. Documented as a recurring complaint.

Environment

  • OpenClaw 2026.2.25
  • Webchat interface (browser)
  • macOS (arm64)
  • Affects all models (Sonnet, Opus, Haiku)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions