Bug
When using the message tool to send to a Telegram forum group topic, the message_thread_id is not included in the Telegram Bot API sendMessage call. All messages land in the General topic regardless of the target format used.
Reproduction
- Have a Telegram group with Forum Topics enabled
- Configure topics in
openclaw.json with topic IDs
- Use the message tool with various target formats:
telegram:-100xxx:285
telegram:-100xxx:topic:285
- Message always arrives in General (topic 1)
Expected
Message should arrive in the specified topic (thread_id=285 in this case).
Workaround
Calling the Telegram Bot API directly with message_thread_id parameter works correctly:
curl -s "https://api.telegram.org/bot$TOKEN/sendMessage" \
-d "chat_id=-100xxx" \
-d "message_thread_id=285" \
-d "text=test"
Environment
- OpenClaw: 2026.2.25
- macOS 26.3 (arm64)
- Node 25.6.0
- Bot has
can_manage_topics: true
- Group is a supergroup with
is_forum: true
Notes
Inbound topic routing works correctly after enabling can_manage_topics — each topic creates its own session (topic:<id>). The issue is only with outbound delivery via the message tool.
Bug
When using the
messagetool to send to a Telegram forum group topic, themessage_thread_idis not included in the Telegram Bot APIsendMessagecall. All messages land in the General topic regardless of the target format used.Reproduction
openclaw.jsonwith topic IDstelegram:-100xxx:285telegram:-100xxx:topic:285Expected
Message should arrive in the specified topic (thread_id=285 in this case).
Workaround
Calling the Telegram Bot API directly with
message_thread_idparameter works correctly:Environment
can_manage_topics: trueis_forum: trueNotes
Inbound topic routing works correctly after enabling
can_manage_topics— each topic creates its own session (topic:<id>). The issue is only with outbound delivery via the message tool.