fix(feishu): add extra_ua_tags=["channel"] to FeishuWSClient for group @mention delivery

Without this UA tag the Feishu server does not push group @mention events
over the WebSocket transport. The "channel" tag tells the server to use
the Channel protocol which enables group-message routing in addition to P2P
direct messages.

Root cause: FeishuWSClient was created without any UA signaling tag, so the
server defaulted to the basic DM-only push mode. Group @mention events were
silently dropped before reaching Hermes.

Fixes https://github.com/NousResearch/hermes-agent/issues/50656

Also adds a regression test verifying the UA tag is present in the
FeishuWSClient constructor call.
This commit is contained in:
luxuguang-leo 2026-06-26 14:18:00 +08:00 committed by Teknium
parent 07271a6f62
commit 949e4cb72a
2 changed files with 65 additions and 0 deletions

View file

@ -4730,6 +4730,12 @@ class FeishuAdapter(BasePlatformAdapter):
log_level=lark.LogLevel.INFO,
event_handler=self._event_handler,
domain=domain,
# Channel SDK signaling tag: without this UA tag the Feishu
# server does not push group @mention events over the WebSocket
# transport. The tag tells the server to use the Channel protocol
# which enables group-message routing in addition to P2P DM.
# See https://github.com/NousResearch/hermes-agent/issues/50656
extra_ua_tags=["channel"],
)
self._ws_future = loop.run_in_executor(
None,