openclaw - 💡(How to fix) Fix Feishu: DM branched topic windows (话题) — replies go to main window

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…

When a user opens a branched topic window (话题) in a Feishu DM conversation with an OpenClaw bot and sends messages inside the thread, the bot's replies appear in the main DM window instead of staying inside the thread.

Root Cause

From the logs, thread messages are dispatched to the regular DM session with no thread differentiation:

feishu[default]: received message from ou_xxx in oc_xxx (p2p)
feishu[default]: dispatching to agent (session=agent:main:feishu:direct:ou_xxx)

The session key has no :thread: suffix. The Feishu SDK correctly extracts root_id and thread_id from incoming events (visible in @larksuiteoapi/node-sdk normalize at line 89313), and the send module (send-DzKN5HU0.js) already supports replyToMessageId + replyInThread parameters. The gap is that the DM routing path doesn't pass root_id/thread_id through to the outbound delivery context.

Fix Action

Fix / Workaround

From the logs, thread messages are dispatched to the regular DM session with no thread differentiation:

feishu[default]: received message from ou_xxx in oc_xxx (p2p)
feishu[default]: dispatching to agent (session=agent:main:feishu:direct:ou_xxx)

Code Example

feishu[default]: received message from ou_xxx in oc_xxx (p2p)
feishu[default]: dispatching to agent (session=agent:main:feishu:direct:ou_xxx)
RAW_BUFFERClick to expand / collapse

Feishu: DM branched topic windows (话题) — replies go to main window

Summary

When a user opens a branched topic window (话题) in a Feishu DM conversation with an OpenClaw bot and sends messages inside the thread, the bot's replies appear in the main DM window instead of staying inside the thread.

Environment

  • OpenClaw version: 2026.5.7
  • Feishu channel, WebSocket mode
  • streaming: false, dmPolicy: "pairing", session.dmScope: "per-channel-peer"

Steps to reproduce

  1. Open a DM chat with the OpenClaw bot in Feishu
  2. Reply to any message to create a branched topic window (话题)
  3. Send a message inside the branched topic window
  4. Observe: the bot's reply appears in the main DM window, not inside the topic

Expected behavior

The bot should reply inside the branched topic window, the same way it works for group threads with groupSessionScope: "group_topic".

Analysis

From the logs, thread messages are dispatched to the regular DM session with no thread differentiation:

feishu[default]: received message from ou_xxx in oc_xxx (p2p)
feishu[default]: dispatching to agent (session=agent:main:feishu:direct:ou_xxx)

The session key has no :thread: suffix. The Feishu SDK correctly extracts root_id and thread_id from incoming events (visible in @larksuiteoapi/node-sdk normalize at line 89313), and the send module (send-DzKN5HU0.js) already supports replyToMessageId + replyInThread parameters. The gap is that the DM routing path doesn't pass root_id/thread_id through to the outbound delivery context.

What I tried (doesn't work)

  • replyToMode: "all" — not a valid Feishu config key, schema validation rejects it
  • replyInThread: "enabled" — valid config but only creates threads from bot replies in groups; doesn't make the bot respond within existing DM threads

What exists for groups but not DMs

FeatureGroupsDMs
Thread session isolationgroupSessionScope: "group_topic"No equivalent
Topic session modetopicSessionMode: "enabled"No equivalent
Reply in threadreplyInThread: "enabled"Only creates threads, doesn't follow existing ones

Feature request

  1. DM thread-aware session routing: When a DM message has root_id, append :thread:<root_id> (or similar) to the session key, similar to how Discord/Slack threads work
  2. DM thread-aware reply routing: Use the Feishu Reply API (/im/v1/messages/:message_id/reply) with the thread root message to keep replies inside the branched topic window
  3. Optionally, a config key like dmTopicSessionMode: "enabled" to control this behavior

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…

FAQ

Expected behavior

The bot should reply inside the branched topic window, the same way it works for group threads with groupSessionScope: "group_topic".

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 Feishu: DM branched topic windows (话题) — replies go to main window