Overview
FeishuChannelExtension bridges inbound messages from a Feishu (Lark) bot into the VeADK Runner.
This page treats Feishu as an inbound message channel: messages from Feishu users trigger the agent. To let the agent call Feishu capabilities, see Feishu tools.
Runner’s user identity, and the thread the message belongs to becomes the session identity; when there is no thread, it falls back to the current group or direct chat as the session. In 1.0.5 it extracts text from plain messages, interactive cards, and merged-forward messages and supports the synchronous Channel SDK lifecycle.
Environment & prerequisites
Installation:TOOL_FEISHU_CHANNEL_APP_IDTOOL_FEISHU_CHANNEL_APP_SECRETTOOL_FEISHU_CHANNEL_TRANSPORT: defaults towsTOOL_FEISHU_CHANNEL_STREAMING: whether to enable streaming output, defaults tofalseTOOL_FEISHU_CHANNEL_REACTIONS: whether to reply with a “received” reaction on incoming messages, defaults tofalse
config.yaml:
config.yaml
Usage
examples/channel/feishu_bot.py
Notes
- The Feishu WebSocket long-connection mode is used by default, so as long as the bot has subscribed to message events, you can start the connection directly.
- Replies are sent as replies to the original message by default, keeping VeADK output attached to the current Feishu message thread.
- Override the default identity mapping via
session_id_factoryanduser_id_factory. connect()anddisconnect()support both async clients and synchronous Channel SDK clients exposingstart()/stop().