hermes-agent/gateway/platforms
Teknium 839f798b74
feat(telegram): add group mention gating and regex triggers (#3870)
Adds Discord-style mention gating for Telegram groups:
- telegram.require_mention: gate group messages (default: false)
- telegram.mention_patterns: regex wake-word triggers
- telegram.free_response_chats: bypass gating for specific chats

When require_mention is enabled, group messages are accepted only for:
- slash commands
- replies to the bot
- @botusername mentions
- regex wake-word pattern matches

DMs remain unrestricted. @mention text is stripped before passing to
the agent. Invalid regex patterns are ignored with a warning.

Config bridges follow the existing Discord pattern (yaml → env vars).

Cherry-picked and adapted from PR #1977 by mcleay. Fixed ChatType
comparison to work without python-telegram-bot installed (uses string
matching instead of enum, consistent with other entity_type checks).

Co-authored-by: mcleay <mcleay@users.noreply.github.com>
2026-03-29 21:53:59 -07:00
..
__init__.py Enhance CLI with multi-platform messaging integration and configuration management 2026-02-02 19:01:51 -08:00
ADDING_A_PLATFORM.md docs: finish cron terminology cleanup 2026-03-14 19:20:58 -07:00
api_server.py feat: add profiles — run multiple isolated Hermes instances (#3681) 2026-03-29 10:41:20 -07:00
base.py fix(gateway): replace print() with logger calls in BasePlatformAdapter (#3669) 2026-03-28 22:25:35 -07:00
dingtalk.py fix(dingtalk): requirements check passes with only one credential set 2026-03-17 03:50:45 -07:00
discord.py fix: store token lock identity at acquire time for Slack and Discord 2026-03-29 11:09:17 -07:00
email.py fix(email): close SMTP and IMAP connections on failure (#3804) 2026-03-29 15:38:32 -07:00
feishu.py feat(gateway): add Feishu/Lark platform support (#3817) 2026-03-29 18:17:42 -07:00
homeassistant.py fix(gateway): add request timeouts to HA, Email, Mattermost, SMS adapters (#3258) 2026-03-26 14:36:07 -07:00
matrix.py refactor: consolidate ~/.hermes directory layout with backward compat (#3610) 2026-03-28 15:22:19 -07:00
mattermost.py feat(mattermost): configurable mention behavior — respond without @mention (#3664) 2026-03-28 22:17:43 -07:00
signal.py feat: add profiles — run multiple isolated Hermes instances (#3681) 2026-03-29 10:41:20 -07:00
slack.py fix: store token lock identity at acquire time for Slack and Discord 2026-03-29 11:09:17 -07:00
sms.py fix: store asyncio task references to prevent GC mid-execution (#3267) 2026-03-26 14:36:24 -07:00
telegram.py feat(telegram): add group mention gating and regex triggers (#3870) 2026-03-29 21:53:59 -07:00
telegram_network.py fix(telegram): honor proxy env vars in fallback transport (salvage #3411) (#3591) 2026-03-28 14:23:27 -07:00
webhook.py feat: add profiles — run multiple isolated Hermes instances (#3681) 2026-03-29 10:41:20 -07:00
wecom.py feat(gateway): add WeCom (Enterprise WeChat) platform support (#3847) 2026-03-29 21:29:13 -07:00
whatsapp.py fix(whatsapp): reuse persistent aiohttp session across requests (#3818) 2026-03-29 16:25:20 -07:00