Channels Overview
Channels let you connect Xagent to external chat platforms so users can interact with agents and tasks outside the web app. In the current Xagent implementation, channels are user-owned integrations:- A signed-in Xagent user creates the channel
- The channel stores platform credentials and access settings
- Incoming channel messages create or continue tasks in that user’s workspace
What channels are for
Use channels when you want Xagent to be reachable through messaging platforms such as:- Telegram
- Feishu
- Personal assistant bots
- Internal team bots
- Lightweight task intake from chat
- Running the same Xagent workflow from a messaging surface instead of the web UI
How channels work
At a high level, the flow is:- Create a bot or app on the target platform
- Add the credentials in Xagent
- Activate the channel
- Send messages from the external platform
- Xagent creates or continues tasks for that conversation
/api/channels endpoints.
Shared channel concepts
All channels currently follow the same basic model:channel_type: the platform type, such astelegramorfeishuchannel_name: a readable display nameconfig: platform-specific configurationis_active: whether the bot or app should currently be running
config are stored as protected channel secrets.
Access model
Channels are not global public bots by default. They belong to a specific Xagent user account. That means:- the configured channel runs on behalf of the owning Xagent user
- tasks created from the channel are associated with that owner’s workspace
- optional platform-user allowlists can be used to limit who may interact with the bot
Conversation behavior
Channel conversations map into Xagent task execution. In practice, that means users can:- send a new request from chat
- continue an existing thread
- upload files when the platform supports attachments
- receive task results back in the same channel
Available integrations
Telegram
Telegram is currently documented in detail and supports:- bot-token setup via BotFather
- per-channel activation
- optional
allowed_usersfiltering - text, attachments, and basic task lifecycle commands