Skip to content

[Slack] Native streaming (chatStream) bypasses markdownToSlackMrkdwn conversion #31892

@haynzz

Description

@haynzz

Description

When (Slack 'Agents & AI Apps' streaming via //), outbound messages are sent as raw markdown without being converted to Slack mrkdwn format. This causes to render as literal instead of bold text.

The non-streaming path correctly applies (in ), but the streaming path in passes raw text directly to without conversion.

Root Cause

In , the function calls and with the raw agent output. Neither function applies before sending to the Slack API.

The field in Slack's streaming API does not auto-convert standard markdown () to Slack mrkdwn () — it passes through raw.

Steps to Reproduce

  1. Set and
  2. Send any message that triggers an agent response with bold text
  3. Observe rendered literally in Slack

Expected Behavior

The streaming path should apply conversion before sending chunks to the Slack streaming API, matching the non-streaming path behavior.

Workaround

Set to fall back to the non-streaming delivery path which correctly converts markdown.

Environment

  • OpenClaw version: 2026.2.26
  • Channel: Slack (Socket Mode)
  • Config: ,

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions