openclaw - 💡(How to fix) Fix Feishu group chat delivery fails with 400: group chat_id sent as open_id [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#77735Fetched 2026-05-06 06:22:15
View on GitHub
Comments
1
Participants
2
Timeline
4
Reactions
2
Timeline (top)
closed ×1commented ×1mentioned ×1subscribed ×1

Error Message

lane task error: lane=session:agent:tech:feishu:group:oc_b73f99293486353055ef6cf3e05cd0b4 durationMs=301352 error="FailoverError: LLM request timed out."

Root Cause

The delivery layer is sending the group chat ID (oc_b73f99293486353055ef6cf3e05cd0b4) as an open_id parameter to the Feishu API, instead of using the correct chat_id parameter. Feishu returns:

Invalid ids: [group:oc_b73f99293486353055ef6cf3e05cd0b4]

Fix Action

Fix / Workaround

Delivery — Failed to Post to Group

[feishu] feishu[tech]: dispatch complete (queuedFinal=false, replies=0)
sessions_send announce delivery failed
delivery-recovery Retry failed: Request failed with status code 400
Invalid ids: [group:oc_b73f99293486353055ef6cf3e05cd0b4]

Code Example

Invalid ids: [group:oc_b73f99293486353055ef6cf3e05cd0b4]

---

[agent:nested] session=agent:tech:feishu:group:oc_b73f99293486353055ef6cf3e05cd0b4
"百胜 6,904 chunks,继续跑着。"Agent DID produce a reply

---

[feishu] feishu[tech]: dispatch complete (queuedFinal=false, replies=0)
sessions_send announce delivery failed
delivery-recovery Retry failed: Request failed with status code 400
Invalid ids: [group:oc_b73f99293486353055ef6cf3e05cd0b4]

---

phase transition rejected (from=idle, to=completed, source=onIdle)
elapsed=62054ms, replies=0

---

lane task error: lane=session:agent:tech:feishu:group:oc_b73f99293486353055ef6cf3e05cd0b4
durationMs=301352 error="FailoverError: LLM request timed out."

---

{
  "channels": {
    "feishu": {
      "accounts": {
        "tech": {
          "streaming": {
            "useStreamingCards": true,
            "replyMode": "streaming"
          },
          "groupAllowFrom": ["oc_b73f99293486353055ef6cf3e05cd0b4"]
        }
      }
    }
  }
}
RAW_BUFFERClick to expand / collapse

Bug Description

Feishu group chat @mention → agent responds successfully, but the reply delivery to the Feishu group fails with HTTP 400. The same agent works perfectly in DM (private chat) context.

Root Cause

The delivery layer is sending the group chat ID (oc_b73f99293486353055ef6cf3e05cd0b4) as an open_id parameter to the Feishu API, instead of using the correct chat_id parameter. Feishu returns:

Invalid ids: [group:oc_b73f99293486353055ef6cf3e05cd0b4]

Evidence

Agent Session — Reply Generated Successfully

[agent:nested] session=agent:tech:feishu:group:oc_b73f99293486353055ef6cf3e05cd0b4
"百胜 6,904 chunks,继续跑着。" ← Agent DID produce a reply

Delivery — Failed to Post to Group

[feishu] feishu[tech]: dispatch complete (queuedFinal=false, replies=0)
sessions_send announce delivery failed
delivery-recovery Retry failed: Request failed with status code 400
Invalid ids: [group:oc_b73f99293486353055ef6cf3e05cd0b4]

Streaming Card — Timed Out Waiting for Delivery

phase transition rejected (from=idle, to=completed, source=onIdle)
elapsed=62054ms, replies=0

LLM — Timed Out After 5 Minutes

lane task error: lane=session:agent:tech:feishu:group:oc_b73f99293486353055ef6cf3e05cd0b4
durationMs=301352 error="FailoverError: LLM request timed out."

Reproduction

  1. Configure a Feishu bot account with useStreamingCards: true and replyMode: "streaming"
  2. Enable requireMention: true for the Feishu group
  3. @mention the bot in the Feishu group chat
  4. Agent generates a reply (confirmed in logs)
  5. Reply delivery fails with 400 — group oc_xxx ID sent as open_id instead of chat_id

Expected Behavior

Group chat replies should use the Feishu chat_id (oc_xxx format) API endpoint, not the open_id (ou_xxx format) endpoint.

Environment

  • OpenClaw version: v2026.5.3-1
  • Channel: Feishu (Lark)
  • Chat type: group (not p2p)
  • Agent: tech (custom agent with useStreamingCards: true)
  • OS: Darwin 25.5.0 (arm64)

Impact

All Feishu group chat bots are completely non-functional. DMs work fine. This is a delivery routing regression — the agent generates replies but they never reach the group.

Config Snippet

{
  "channels": {
    "feishu": {
      "accounts": {
        "tech": {
          "streaming": {
            "useStreamingCards": true,
            "replyMode": "streaming"
          },
          "groupAllowFrom": ["oc_b73f99293486353055ef6cf3e05cd0b4"]
        }
      }
    }
  }
}

Notes

  • Verified that the agent session completes and produces output
  • Verified that DM delivery (same agent, private chat) works flawlessly
  • The sessions_send backend DM chat works perfectly — this confirms the agent logic is fine
  • Issue is specifically in the Feishu group message delivery path
  • Hermes (another debugging tool) independently confirmed the same root cause: replyResolver collects the reply but delivery routes it through the wrong Feishu API parameter type

extent analysis

TL;DR

The most likely fix is to update the delivery layer to send the chat_id parameter instead of open_id when sending replies to Feishu group chats.

Guidance

  • Verify that the groupAllowFrom configuration is correctly set to include the Feishu group ID (oc_b73f99293486353055ef6cf3e05cd0b4) to ensure the agent is allowed to respond to the group.
  • Update the delivery layer to use the correct chat_id parameter when sending replies to Feishu group chats, instead of sending the group chat ID as an open_id parameter.
  • Test the fix by reproducing the issue and verifying that the reply is delivered successfully to the Feishu group chat.
  • Review the Feishu API documentation to ensure that the correct parameters are being used for group chat replies.

Example

No code snippet is provided as the issue is related to the configuration and usage of the Feishu API, and the exact code changes required are not specified.

Notes

The issue is specific to Feishu group chat replies and does not affect DM (private chat) replies. The root cause has been identified as the incorrect usage of the open_id parameter instead of the chat_id parameter when sending replies to Feishu group chats.

Recommendation

Apply a workaround to update the delivery layer to use the correct chat_id parameter when sending replies to Feishu group chats, as this is the most likely fix for the issue. This change should resolve the delivery routing regression and allow Feishu group chat bots to function correctly.

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 Feishu group chat delivery fails with 400: group chat_id sent as open_id [1 comments, 2 participants]