#Telegram Groups
1 messages · Page 1 of 1 (latest)
For Telegram groups there are two separate permission layers:
- Telegram-side visibility
- Add your bot to the group.
- In BotFather, use
/setprivacyand disable Privacy Mode if you want it to see all group messages. - Or make the bot a group admin. Admin bots receive all group messages.
- After changing privacy mode, remove and re-add the bot to the group so Telegram applies it.
- OpenClaw-side access/activation
OpenClaw needs the group allowed underchannels.telegram.groups, and group sender policy needs to match who may trigger it.
For a private group you created just for the agent, a simple “listen/reply without mention” config is:
{
channels: {
telegram: {
enabled: true,
botToken: "123:abc",
// DM access is separate from group access
dmPolicy: "pairing",
// Group sender access
groupPolicy: "open",
// Which Telegram groups are admitted
groups: {
"-1001234567890": {
requireMention: false
}
}
}
}
}
Replace -1001234567890 with your Telegram group chat ID. You can get it by:
- running
openclaw logs --followand sending a message in the group, then readingchat.id - or calling Telegram Bot API
getUpdates - or forwarding a group message to a helper like
@getidsbot
If you only want specific people in that group to trigger OpenClaw, keep groupPolicy: "allowlist" and use numeric Telegram user IDs:
{
channels: {
telegram: {
groups: {
"-1001234567890": {
requireMention: true,
allowFrom: ["8734062810"]
}
}
}
}
}
Important bit: negative IDs like -100... are group IDs and go under channels.telegram.groups. User IDs go in allowFrom / groupAllowFrom.
Docs:
https://docs.openclaw.ai/channels/telegram
https://docs.openclaw.ai/channels/groups
If it still doesn’t respond, first thing to check is your version with openclaw --version, then openclaw status --all and openclaw logs --follow.
can i put *
Yes, but it depends where you put it:
groups: { "*": { ... } }= allow all Telegram groups the bot is in.groupAllowFrom: ["*"]= allow any user inside allowed groups to trigger it.allowFrom: ["*"]with open DM policy = allow anyone to DM the bot, which I would avoid unless you really mean public access.
For your private agent-only Telegram group, this is usually fine:
{
channels: {
telegram: {
groupPolicy: "open",
groups: {
"*": { requireMention: false }
}