16 Telegram Connector Guide
May 19, 2026 ยท View on GitHub
Use this guide when you want DeepScientist to continue a quest through Telegram.
Telegram in the current open-source runtime uses the built-in polling path:
- no public webhook is required
- the main credential is the BotFather token
- direct messages can auto-bind to the latest active quest when enabled
1. What Telegram support includes
DeepScientist currently supports Telegram through:
TelegramPollingServicefor inbound pollingGenericRelayChannelfor bindings, inbox/outbox, targets, and runtime statusTelegramConnectorBridgefor direct outbound sends through the Bot API
This means Telegram already fits the same quest-binding model as the other connector surfaces.
2. Recommended setup path
- Open BotFather.
- Run
/newbot. - Save the generated bot token.
- Open
Settings > Connectors > Telegram. - Enable Telegram.
- Keep
transport: polling. - Fill
bot_token. - Save the connector.
- Send one real private message such as
/startor/helpto the bot. - Return to DeepScientist and verify that the runtime has discovered the target conversation.
2.1 Settings page at a glance
Route:
Use this page to:
- keep
transport: polling - fill
bot_token - inspect target discovery and runtime state after the first message

3. Important config fields
Main fields:
enabledtransportbot_namebot_tokencommand_prefixrequire_mention_in_groupsdm_policyallow_fromgroup_policygroup_allow_fromgroupsauto_bind_dm_to_active_quest
For the full field reference, see 01 Settings Reference.
4. Binding model
Telegram conversations are normalized into quest-aware connector ids like:
telegram:direct:<chat_id>telegram:group:<chat_id>
DeepScientist binds quests to those normalized conversation ids, not to transient webhook state.
Important rules:
- one quest keeps local access plus at most one external connector target
- direct messages can auto-follow the latest active quest when auto-bind is enabled
- bindings can be changed later from the project settings page
If several quests are running, read 34 Multitask Entry Guide first. Do not put every task into one chat entry.
5. Group chat behavior
By default:
- Telegram direct messages are allowed
- group behavior depends on
group_policy - if
require_mention_in_groupsistrue, the bot only reacts when explicitly mentioned or when a command is used
This is the recommended default for larger shared groups.
6. Outbound delivery
Telegram outbound delivery currently focuses on text-first quest updates:
- progress
- milestone summaries
- binding notices
- structured quest replies
The current bridge uses sendMessage through the Bot API.
7. Troubleshooting
Telegram does not appear in Settings
Telegram may be hidden by the system connector gate. Confirm that:
config.connectors.system_enabled.telegramistrue
Validation says credentials are missing
Check that:
bot_tokenis filled- or
bot_token_envpoints at a real environment variable
The bot receives no messages
Check that:
- the bot token is correct
- the bot was started from Telegram at least once
transportis stillpolling- no stale public webhook is intercepting updates
Group messages do not trigger the bot
Check:
group_policygroupsgroup_allow_fromrequire_mention_in_groups
The quest does not continue from Telegram
Check that:
- the conversation is bound to the intended quest
- or
auto_bind_dm_to_active_questis enabled for direct-message pairing