openclaw - 💡(How to fix) Fix [Bug] MiniMax-M2.7 streaming not working - content field contains thinking tags mixed with response [3 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
openclaw/openclaw#59824Fetched 2026-04-08 02:40:07
View on GitHub
Comments
3
Participants
2
Timeline
8
Reactions
0
Author
Participants
Timeline (top)
commented ×3mentioned ×2subscribed ×2cross-referenced ×1

Root Cause

Compared SSE responses between GLM-5 (working) and MiniMax-M2.7 (broken):

Fix Action

Workaround

Use dashscope/MiniMax-M2.5 (alias: MiniMax-Dash) instead, which does not have this issue and streams correctly.

Code Example

data: {"choices":[{"delta":{"content":null,"reasoning_content":"Let","role":"assistant"}}]}
data: {"choices":[{"delta":{"content":null,"reasoning_content":" me think about...","role":"assistant"}}]}

---

data: {"choices":[{"delta":{"content":"(think)\nThe user said hi, we should respond...","role":"assistant","name":"MiniMax AI","audio_content":""}}]}
data: {"choices":[{"delta":{"content":" Okay, greeting back...","role":"assistant","name":"MiniMax AI","audio_content":""}}]}
RAW_BUFFERClick to expand / collapse

Bug Description

Problem: Streaming output does not work with minimax-cn/MiniMax-M2.7 model in Feishu channel. The response appears all at once instead of streaming token by token.

Expected: Streaming should work the same as GLM-5 (dashscope provider) which streams correctly.

Actual: minimax-cn/MiniMax-M2.7 shows no streaming, waits for complete response before displaying.

Environment

  • OpenClaw version: 2026.4.1 (da64a97)
  • Channel: Feishu
  • Model: minimax-cn/MiniMax-M2.7

Root Cause Analysis

Compared SSE responses between GLM-5 (working) and MiniMax-M2.7 (broken):

GLM-5 (dashscope) - Streaming works correctly ✅

data: {"choices":[{"delta":{"content":null,"reasoning_content":"Let","role":"assistant"}}]}
data: {"choices":[{"delta":{"content":null,"reasoning_content":" me think about...","role":"assistant"}}]}
  • delta.content is null
  • Thinking is in a separate reasoning_content field
  • Clean separation between thinking and response

MiniMax-M2.7 (minimax-cn) - Streaming broken ❌

data: {"choices":[{"delta":{"content":"(think)\nThe user said hi, we should respond...","role":"assistant","name":"MiniMax AI","audio_content":""}}]}
data: {"choices":[{"delta":{"content":" Okay, greeting back...","role":"assistant","name":"MiniMax AI","audio_content":""}}]}
  • delta.content contains BOTH thinking tags and actual response text mixed together
  • Content example: (think)\nThe user says "hi". We need to respond.
  • Additional fields present: name, audio_content, input_sensitive, output_sensitive, etc.

Hypothesis

OpenClaw's SSE streaming parser likely:

  1. Reads delta.content and displays it when non-null
  2. Does not understand the (think) thinking tags embedded within the content string
  3. Treats the entire (think)\n... sequence as plain text, causing incorrect streaming display behavior

The thinking tags in the content field confuse the streaming display logic.

Workaround

Use dashscope/MiniMax-M2.5 (alias: MiniMax-Dash) instead, which does not have this issue and streams correctly.

Config Changes Tried

  1. Changed minimax-cn baseUrl from /anthropic to /v1
  2. Changed minimax-cn api from anthropic-messages to openai-completions
  3. Added no_proxy for api.minimaxi.com

None of these fixed the streaming issue. The root cause is in how OpenClaw parses the SSE content field when it contains mixed thinking tags.

Expected Behavior

MiniMax-M2.7 streaming should work like GLM-5, with tokens appearing progressively in the chat interface.


Reporter: 骆伟雄 (ou_97861c3cd1c00cff9d8002f2e68bdb94) Reported via: OpenClaw ops agent

extent analysis

TL;DR

The most likely fix for the streaming issue with minimax-cn/MiniMax-M2.7 is to modify OpenClaw's SSE streaming parser to handle the (think) thinking tags embedded in the delta.content field.

Guidance

  • Investigate and modify the OpenClaw SSE streaming parser to correctly handle delta.content fields containing mixed thinking tags and actual response text.
  • Consider using a temporary workaround by switching to dashscope/MiniMax-M2.5 (alias: MiniMax-Dash) which does not have this issue and streams correctly.
  • Review the differences in SSE response formats between GLM-5 and MiniMax-M2.7 to better understand the root cause of the issue.
  • Verify that the issue is not related to the config changes tried (e.g., baseUrl, api, no_proxy) and focus on the parsing logic.

Example

No code snippet is provided as the issue does not contain enough information about the OpenClaw SSE streaming parser implementation.

Notes

The root cause of the issue seems to be related to the parsing logic of the OpenClaw SSE streaming parser, which does not understand the (think) thinking tags embedded in the delta.content field. The provided workaround using dashscope/MiniMax-M2.5 may not be a long-term solution.

Recommendation

Apply the workaround by using dashscope/MiniMax-M2.5 (alias: MiniMax-Dash) until the OpenClaw SSE streaming parser is modified to correctly handle the (think) thinking tags. This will allow for correct streaming behavior while the parser issue is being addressed.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

openclaw - 💡(How to fix) Fix [Bug] MiniMax-M2.7 streaming not working - content field contains thinking tags mixed with response [3 comments, 2 participants]