openclaw - ✅(Solved) Fix [Bug]: Feishu streaming card messages not searchable — interactive card content not indexed by Feishu search [1 pull requests, 1 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#74767Fetched 2026-05-01 05:41:31
View on GitHub
Comments
1
Participants
2
Timeline
10
Reactions
2
Author
Timeline (top)
mentioned ×4subscribed ×4commented ×1cross-referenced ×1

Messages delivered via Feishu interactive card streaming mode are not searchable in Feishu's built-in conversation search ("搜索会话内容"). The same content delivered as a plain text message (streaming disabled) is searchable.

Root Cause

Feishu interactive cards are created empty and then progressively updated. Feishu's search index likely only indexes the initial card creation content (empty/minimal), not the final updated content. This means all streaming card replies become invisible to search.

Fix Action

Fix / Workaround

  • Users cannot find historical conversations via Feishu search
  • Workaround: disable streaming (channels.feishu.streaming: false)
  • This is a significant UX regression when streaming is enabled

PR fix notes

PR #74808: fix(feishu): add searchable streaming fallback

Description (problem / solution / changelog)

Summary

  • add an opt-in channels.feishu.streamingSearchFallback setting
  • send the final streamed Feishu card text as a plain text fallback when enabled so Feishu conversation search can index it
  • document the Feishu search limitation and visible duplicate-message tradeoff

Fixes #74767

Tests

  • pnpm test extensions/feishu/src/reply-dispatcher.test.ts extensions/feishu/src/streaming-card.test.ts
  • pnpm test extensions/feishu/src/tools-config.test.ts extensions/feishu/src/policy.test.ts extensions/feishu/src/accounts.test.ts
  • pnpm exec oxfmt --check --threads=1 extensions/feishu/src/reply-dispatcher.ts extensions/feishu/src/streaming-card.ts extensions/feishu/src/reply-dispatcher.test.ts docs/channels/feishu.md extensions/feishu/src/config-schema.ts extensions/feishu/openclaw.plugin.json

Changed files

  • docs/channels/feishu.md (modified, +4/-0)
  • extensions/feishu/openclaw.plugin.json (modified, +2/-0)
  • extensions/feishu/src/config-schema.ts (modified, +2/-0)
  • extensions/feishu/src/reply-dispatcher.test.ts (modified, +69/-0)
  • extensions/feishu/src/reply-dispatcher.ts (modified, +31/-1)
RAW_BUFFERClick to expand / collapse

Summary

Messages delivered via Feishu interactive card streaming mode are not searchable in Feishu's built-in conversation search ("搜索会话内容"). The same content delivered as a plain text message (streaming disabled) is searchable.

Steps to Reproduce

  1. Enable Feishu streaming card mode (channels.feishu.streaming: true or similar)
  2. Send a message to the agent, receive a long reply via streaming card
  3. Wait for the reply to complete (card stops updating)
  4. Open Feishu conversation search (搜索会话内容)
  5. Search for a distinctive keyword that appears in the reply
  6. Result: "找不到相关信息" (No results found)

Expected Behavior

All message content should be searchable in Feishu's conversation search, regardless of delivery mode.

Actual Behavior

  • Streaming card messages: not searchable
  • Plain text messages (streaming off): searchable ✅

Analysis

Feishu interactive cards are created empty and then progressively updated. Feishu's search index likely only indexes the initial card creation content (empty/minimal), not the final updated content. This means all streaming card replies become invisible to search.

Impact

  • Users cannot find historical conversations via Feishu search
  • Workaround: disable streaming (channels.feishu.streaming: false)
  • This is a significant UX regression when streaming is enabled

Environment

  • OpenClaw: 2026.4.24
  • Channel: Feishu (飞书)
  • Streaming mode: interactive card (block streaming)

Evidence

Screenshot showing a message containing "per-call timeoutMs" that is visible in the chat but returns no results when searched:

The message was delivered via streaming card on 2026-04-25. Feishu search returns "找不到相关信息".

Suggested Fix

Consider:

  1. After streaming completes, send a final plain-text fallback message (hidden or replacing the card) so Feishu can index it
  2. Or document this as a known limitation of Feishu streaming mode
  3. Or switch to a streaming approach that Feishu can index (if one exists)

extent analysis

TL;DR

Send a final plain-text fallback message after streaming completes to enable Feishu search indexing.

Guidance

  • Verify that the issue is indeed caused by Feishu's search index only indexing the initial card creation content by checking the search results for other streaming card messages.
  • Consider implementing a fallback message solution, such as sending a hidden plain-text message with the same content as the streaming card after it completes.
  • Test the fallback message solution to ensure it does not cause any usability issues or interfere with the streaming card functionality.
  • If the fallback message solution is not feasible, document this limitation and consider alternative streaming approaches that Feishu can index.

Example

// Pseudocode example of sending a final plain-text fallback message
afterStreamingCompletes() {
  const fallbackMessage = getStreamingCardContent();
  sendPlainMessage(fallbackMessage);
}

Notes

This solution assumes that sending a final plain-text message will allow Feishu to index the content. However, this may not be the case if Feishu's search index has specific requirements or limitations.

Recommendation

Apply workaround: Send a final plain-text fallback message after streaming completes, as this is a relatively simple solution that can mitigate the search indexing issue.

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 - ✅(Solved) Fix [Bug]: Feishu streaming card messages not searchable — interactive card content not indexed by Feishu search [1 pull requests, 1 comments, 2 participants]