mirror of
https://github.com/NousResearch/hermes-agent.git
synced 2026-04-25 00:51:20 +00:00
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. |
||
|---|---|---|
| .. | ||
| docs | ||
| scripts | ||
| src | ||
| static | ||
| .gitignore | ||
| docusaurus.config.ts | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| sidebars.ts | ||
| tsconfig.json | ||
Website
This website is built using Docusaurus, a modern static website generator.
Installation
yarn
Local Development
yarn start
This command starts a local development server and opens up a browser window. Most changes are reflected live without having to restart the server.
Build
yarn build
This command generates static content into the build directory and can be served using any static contents hosting service.
Deployment
Using SSH:
USE_SSH=true yarn deploy
Not using SSH:
GIT_USER=<Your GitHub username> yarn deploy
If you are using GitHub pages for hosting, this command is a convenient way to build the website and push to the gh-pages branch.
Diagram Linting
CI runs ascii-guard to lint docs for ASCII box diagrams. Use Mermaid (````mermaid`) or plain lists/tables instead of ASCII boxes to avoid CI failures.