hermes-agent/website/docs/user-guide/messaging
kshitijk4poor d4178e0977 feat(gateway): add require_mention_channels for per-channel mention overrides
Adds a new `require_mention_channels` config key (and corresponding env
vars) across all 7 gateway platforms that have mention-gating. This is
the inverse of `free_response_channels` — channels listed here always
require @mention even when the global `require_mention` setting is false.

Use case: a user runs multiple channels, most with a single agent where
no mention is needed, but a few 'agent group' channels where mentions
make sense to avoid noise. Previously this required require_mention=true
globally and listing every non-group channel in free_response_channels.

Priority logic (highest wins):
1. DMs → always respond
2. Channel in free_response_channels → never require mention
3. Channel in require_mention_channels → always require mention
4. Global require_mention setting → fallback

Also refactors:
- Mattermost: inline os.getenv() → proper helper methods matching
  Discord/Slack pattern, adds config.yaml support via config.extra
- Matrix: cached __init__ vars → helper methods with config.extra
  support
- Mattermost config bridging: adds missing YAML→env bridging in
  gateway/config.py (was completely absent)

New env vars:
- DISCORD_REQUIRE_MENTION_CHANNELS
- SLACK_REQUIRE_MENTION_CHANNELS
- TELEGRAM_REQUIRE_MENTION_CHATS
- WHATSAPP_REQUIRE_MENTION_CHATS
- DINGTALK_REQUIRE_MENTION_CHATS
- MATTERMOST_REQUIRE_MENTION_CHANNELS
- MATRIX_REQUIRE_MENTION_ROOMS

Naming follows each platform's convention (channels/chats/rooms).
Fully backward compatible — empty by default, no behavior change.

Requested by community member neeldhara on PR #3664.
2026-04-22 10:39:08 +05:30
..
_category_.json feat: add documentation website (Docusaurus) 2026-03-05 05:24:55 -08:00
bluebubbles.md fix(bluebubbles): auto-register webhook with BlueBubbles server on connect 2026-04-10 03:21:45 -07:00
dingtalk.md feat(gateway): add require_mention_channels for per-channel mention overrides 2026-04-22 10:39:08 +05:30
discord.md feat(gateway): add require_mention_channels for per-channel mention overrides 2026-04-22 10:39:08 +05:30
email.md docs: comprehensive docs audit — fix 12 stale/missing items across 10 pages (#3618) 2026-03-28 15:26:35 -07:00
feishu.md docs(feishu): tighten processing reactions section 2026-04-20 02:04:57 -07:00
homeassistant.md docs: fix 40+ discrepancies between documentation and codebase (#5818) 2026-04-07 10:17:44 -07:00
index.md docs(dingtalk): document AI Cards, emoji reactions, and display settings 2026-04-17 19:26:53 -07:00
matrix.md feat(gateway): add require_mention_channels for per-channel mention overrides 2026-04-22 10:39:08 +05:30
mattermost.md feat(gateway): add require_mention_channels for per-channel mention overrides 2026-04-22 10:39:08 +05:30
open-webui.md docs: correctness audit — fix wrong values, add missing coverage (#11972) 2026-04-18 01:45:48 -07:00
qqbot.md docs: correctness audit — fix wrong values, add missing coverage (#11972) 2026-04-18 01:45:48 -07:00
signal.md docs: comprehensive docs audit — cover 13 features from last week's PRs (#5815) 2026-04-07 10:21:03 -07:00
slack.md feat(gateway): add require_mention_channels for per-channel mention overrides 2026-04-22 10:39:08 +05:30
sms.md update docks with changes made 2026-04-11 14:05:38 -07:00
telegram.md feat(gateway): add require_mention_channels for per-channel mention overrides 2026-04-22 10:39:08 +05:30
webhooks.md feat(webhook): direct delivery mode for zero-LLM push notifications (#12473) 2026-04-19 05:18:19 -07:00
wecom-callback.md docs: comprehensive update for recent merged PRs (#9019) 2026-04-13 10:50:59 -07:00
wecom.md docs: fix 40+ discrepancies between documentation and codebase (#5818) 2026-04-07 10:17:44 -07:00
weixin.md fix(packaging): include qrcode in messaging extra 2026-04-17 06:50:36 -07:00
whatsapp.md feat(gateway): add require_mention_channels for per-channel mention overrides 2026-04-22 10:39:08 +05:30