channel-bot
Installation
SKILL.md
Messaging Channels (Telegram / Slack)
Channels are a thick service at backend/app/services/channels/: per-platform adapters plus a router that funnels inbound messages into the same agent pipeline as the web chat.
Layout
| File | Responsibility |
|---|---|
base.py |
Shared channel adapter interface |
telegram.py |
Telegram adapter (aiogram v3) |
slack.py |
Slack adapter (Events API + Socket Mode) |
router.py |
Maps an inbound platform message → conversation/session → agent run → reply |
chart_render.py |
Renders chart tool output as PNG for channels |
Bots are stored in the DB (channel_bot), with per-user identity (channel_identity) and per-thread session (channel_session) tables. Bot tokens are encrypted at rest with CHANNEL_ENCRYPTION_KEY (Fernet).