Install
openclaw skills install tg-groupchat-setupConfigure a MoltBot agent to participate in a Telegram group chat. Automates adding the group to the allowlist, setting mention patterns, and configuring sender permissions — all via a single gateway config patch. Use when the user wants to set up their bot in a Telegram group, enable cross-bot communication, or configure group mention gating.
openclaw skills install tg-groupchat-setupAutomate the configuration needed for a MoltBot agent to work in a Telegram group.
requireMention: truegroupAllowFrom with specified user IDs / @usernamesmentionPatterns so the bot responds to its name and @usernameBefore running this skill, the user must:
/mybots → select bot → Bot Settings → Group Privacy → Turn off
(See references/telegram-privacy-mode.md for details)The user provides:
group_id: Telegram group ID (e.g., -1001234567890)allowed_users: List of Telegram user IDs or @usernames who can trigger the botExample prompt:
"Set up my bot in Telegram group -1001234567890. Allow users 123456789 and @some_user to ping me."
Run the detection script to get the bot's name and username:
bash skills/groupchat-setup/scripts/detect_bot_info.sh
This reads the bot token from the gateway config and returns the bot's name and username.
If the script is unavailable, extract the bot token from channels.telegram.botToken in the
gateway config and call https://api.telegram.org/bot<TOKEN>/getMe.
From the detected bot info, construct mention patterns:
@<username> (e.g., @my_awesome_bot)<name> lowercase (e.g., mybot)@<name> lowercase (e.g., @mybot)Remove duplicates. Patterns are case-insensitive regexes.
Use the gateway tool with action: "config.patch" to apply:
{
"channels": {
"telegram": {
"groups": {
"<group_id>": {
"requireMention": true
}
},
"groupAllowFrom": ["<user1>", "<user2>"]
}
},
"messages": {
"groupChat": {
"mentionPatterns": ["@bot_username", "bot_name", "@bot_name"]
}
}
}
Important: If groupAllowFrom or mentionPatterns already have values, merge them
(do not overwrite). Read the current config first with gateway action: "config.get",
merge arrays, then patch.
After the gateway restarts, send a test message to the group confirming the setup:
"✅ Bot configured for this group! I'll respond when someone mentions my name. Allowed users: [list]."
requireMention: true means the bot only responds when explicitly mentioned — it won't spam every message.groupAllowFrom restricts which senders can trigger the bot. Without it, messages from unknown senders may be dropped.groupPolicy: "allowlist" is the Telegram default — only explicitly listed groups are active.