# Hermes Agent bot not responding in your chat app

> What to check when your Hermes bot on Telegram, Discord or another chat app stays silent, replies 'unauthorized', or works in DMs but not in groups.

Canonical: https://hermeswatcher.com/troubleshoot/gateway-bot-not-responding  
Section: Troubleshooting · Messaging & the gateway  
Last reviewed: Oct 29, 2026  
Basis: Explained from the official Hermes Agent docs and repository (Nous Research). Steps follow the linked official sources.

## What you see

You message your Hermes bot and nothing comes back. Or it replies that you're unauthorized, or it answers direct messages but ignores a group, or it worked yesterday and stopped after a restart or update.

## Likely causes

A silent bot can fail at process health, inbound transport, authorization, trigger or session routing, model or tool execution, or outbound delivery. Check each stage with logs and one harmless private message from an authorized account. An authorization failure can look like an outage, so read the log before reinstalling. Use [messaging platforms](https://hermeswatcher.com/messaging.md) to find the route-specific guide.

- The gateway process isn't running, or is stuck in a degraded state.
- Your user ID isn't on the platform allowlist and you haven't been paired. The gateway denies unknown users by default.
- In Telegram groups, privacy mode is on, or telegram.require_mention is filtering messages that don't mention the bot.
- The platform adapter is disabled in config.yaml (platforms.<name>.enabled: false overrides credentials in .env), or the circuit breaker paused it.
- The bot token is invalid or revoked, or the same token is being used by another profile's gateway.
- Both a user and a system service are installed, causing confusing behaviour.

## Check this first

- `hermes gateway status`, then `hermes gateway start` if it isn't running.
- tail -50 ~/.hermes/logs/gateway.log (on Linux, journalctl --user -u hermes-gateway -f).
- hermes status for a one-screen summary of model, gateway and platforms.
- `hermes pairing list` shows pairing state. An allowlist is a list of approved users or chats; a restrictive policy may suppress new DM codes. Do not assume a missing code means that the gateway is down.
- For Telegram, confirm your numeric user ID with @userinfobot and compare it to `TELEGRAM_ALLOWED_USERS` in ~/.hermes/.env.
- /platform list from any working chat to see whether an adapter is paused.
- Email: check `EMAIL_AUTHSERV_ID` against the receiving server's topmost Authentication-Results header and confirm the From domain passed authentication. An allowed address alone does not authenticate the sender. Keep sender authentication enabled.
- SMS: `SMS_WEBHOOK_URL` must exactly match the public URL configured in Twilio so signature validation can succeed. Check signature errors without disabling validation.
- Slack: check scopes, the event subscription for the conversation type and channel membership. Reinstall the app after changing scopes or events. One-to-one DMs use `message.im`; channels also need their channel events and history scopes.
- WhatsApp Cloud API: check the App Secret, exact verify-token match, current public callback URL and `messages` subscription. Keep request signature validation enabled. Read [How to set up Hermes Agent on WhatsApp with the Business Cloud API](https://hermeswatcher.com/learn/hermes-agent-whatsapp-business-cloud-api-setup.md).
- BlueBubbles: the server must be able to call the Hermes webhook back. A successful Hermes-to-BlueBubbles REST check does not prove reverse reachability. Inspect webhook registration and the explicit adapter enabled setting, then send one allowed message from another device.
- Open WebUI: check `/v1/models` using the profile's bearer key from the Open WebUI server's network. A green connection check or `/health` response alone does not prove model listing or agent replies. See [How to set up Hermes Agent with Open WebUI and the API server](https://hermeswatcher.com/learn/hermes-agent-open-webui-setup.md).

## Fix

- Not running or 'Degraded': restart with `hermes gateway restart`, which drains active turns first.
- Unauthorized: inspect the relevant allowlist and approved pairings. Add only the intended user's ID, or approve a code that was actually issued with `hermes pairing approve <platform> <code>`. Codes expire after one hour. Explicit allowlists can suppress new prompts; keep allow-all disabled.
- Ignored in Telegram groups: turn off Group Privacy via @BotFather (/mybots, Bot Settings, Group Privacy) or make the bot an admin, then remove and re-add the bot, because Telegram caches the privacy state at join time. If require_mention is on, mention the bot or reply to it.
- Paused platform: check the log and the provider's status page, then /platform resume <name>; it doesn't resume on its own.
- Credentials present but adapter won't start: remove platforms.<name>.enabled: false from config.yaml.
- Token problems: replace a revoked or invalid token using the platform's official process, update the active profile's .env and restart the gateway. Give each profile its own bot credentials. Keep tokens out of logs you share, screenshots and Git.
- macOS gateway can't find tools or LAN devices: rerun `hermes gateway install` to refresh the launchd service.
- WSL disconnects: when systemd is unavailable or unreliable, the FAQ documents foreground `hermes gateway` or tmux as a workaround. tmux can survive terminal disconnection, but cannot survive WSL or host termination. Check WSL startup and host power behavior before relying on it for availability.
- Windows crash: Task Scheduler supervises the launcher rather than later gateway crashes. Check `hermes gateway status` and use `hermes gateway start` if the process has stopped. A registered task alone does not establish a running bot.
- Discord privileged-intent error: enable Message Content Intent. Server Members Intent is needed for username or role allowlists, rather than every numeric-ID-only setup. Check server-channel mention rules separately from authorization.

## If it still fails

Run the gateway in the foreground with `hermes gateway` so you can inspect one message from an authorized account. If nothing appears, check adapter state and inbound transport before assuming the model is at fault. Telegram webhook mode needs a reachable public HTTPS `TELEGRAM_WEBHOOK_URL` and `TELEGRAM_WEBHOOK_SECRET`; polling mode does not. Slack Socket Mode and the WhatsApp bridge need outbound access, while WhatsApp Cloud API needs a public webhook. A webhook is an HTTP callback from another service; a public HTTPS URL is an internet-reachable encrypted address. A tunnel can forward that address to the local listener.

Proxy connection errors can sometimes be addressed with `gateway.trust_env: false`, after checking the log and required proxy setup. If messages arrive but replies do not, follow [Hermes Agent task finished but no message arrived](https://hermeswatcher.com/troubleshoot/task-finished-but-no-delivery.md). Inspect the served profile set before creating another gateway or service; current multiplexing may already own the bot. Keep only the intended service topology.

If the host is off, asleep, offline or WSL has stopped, Hermes cannot process messages or scheduled jobs. Restarting the app on your phone does not restart the host. Protect credentials during diagnosis and use a single permitted private destination for checks.

## Keep it running

The bot is silent while its computer sleeps or is switched off. Keep the Hermes host awake and online whenever you need replies. A background service does not prevent sleep.

## Official docs

Reviewed Oct 29, 2026 against the official Hermes docs.

[Official Hermes gateway troubleshooting docs](https://hermes-agent.nousresearch.com/docs/user-guide/messaging/)

## Related guides

- [All messaging platforms](https://hermeswatcher.com/messaging.md)
- [Hermes Agent messaging gateway explained](https://hermeswatcher.com/learn/messaging-gateway-explained.md)
- [Hermes Agent task finished but no message arrived](https://hermeswatcher.com/troubleshoot/task-finished-but-no-delivery.md)
- [Hermes Agent profiles: separate agents for separate jobs](https://hermeswatcher.com/learn/profiles-separate-agents.md)
- [How to set up Hermes Agent on Telegram](https://hermeswatcher.com/learn/hermes-agent-telegram-setup.md)
- [How to set up Hermes Agent on Discord](https://hermeswatcher.com/learn/hermes-agent-discord-setup.md)
- [How to set up Hermes Agent on WhatsApp with the Baileys bridge](https://hermeswatcher.com/learn/hermes-agent-whatsapp-setup.md)
- [How to set up Hermes Agent on WhatsApp with the Business Cloud API](https://hermeswatcher.com/learn/hermes-agent-whatsapp-business-cloud-api-setup.md)
- [How to set up Hermes Agent with Open WebUI and the API server](https://hermeswatcher.com/learn/hermes-agent-open-webui-setup.md)

## Related tools

- [Turn a crowded inbox into a review queue](https://hermeswatcher.com/workflows/inbox-triage.md)
- [Wake up to a useful research briefing](https://hermeswatcher.com/workflows/daily-research-briefing.md)
- [Telegram: reach Hermes from a private bot conversation](https://hermeswatcher.com/tools/telegram.md)
- [Discord: keep agent conversation scoped to the right people](https://hermeswatcher.com/tools/discord.md)
- [Deployment: separate the agent host from its execution sandbox](https://hermeswatcher.com/tools/deployment.md)

## Sources

- [Messaging Gateway (official docs)](https://hermes-agent.nousresearch.com/docs/user-guide/messaging/)
- [Telegram setup (official docs)](https://hermes-agent.nousresearch.com/docs/user-guide/messaging/telegram)
- [FAQ and Troubleshooting (official docs)](https://hermes-agent.nousresearch.com/docs/reference/faq)
- [Security (official docs)](https://hermes-agent.nousresearch.com/docs/user-guide/security)
- [Gateway authorization and pairing policy (pinned source)](https://github.com/NousResearch/hermes-agent/blob/088f657ecf77674c7b8e2ededf4e3576d82e042c/gateway/authz_mixin.py#L653-L773)
- [Discord setup](https://hermes-agent.nousresearch.com/docs/user-guide/messaging/discord)
- [Email sender authentication](https://hermes-agent.nousresearch.com/docs/user-guide/messaging/email)
- [SMS signature validation](https://hermes-agent.nousresearch.com/docs/user-guide/messaging/sms)
- [Slack setup](https://hermes-agent.nousresearch.com/docs/user-guide/messaging/slack)
- [WhatsApp Business Cloud API](https://hermes-agent.nousresearch.com/docs/user-guide/messaging/whatsapp-cloud)
- [BlueBubbles setup](https://hermes-agent.nousresearch.com/docs/user-guide/messaging/bluebubbles)
- [Open WebUI setup](https://hermes-agent.nousresearch.com/docs/user-guide/messaging/open-webui)
- [API server authentication](https://hermes-agent.nousresearch.com/docs/user-guide/features/api-server)
- [Multi-profile gateway operation](https://hermes-agent.nousresearch.com/docs/user-guide/multi-profile-gateways)

---

HermesWatcher is an independent guide. It is not affiliated with or endorsed by Nous Research. The [official Hermes Agent documentation](https://hermes-agent.nousresearch.com/docs) and [repository](https://github.com/NousResearch/hermes-agent) from Nous Research are the authority; each page here lists the official sources it was written from. If this site and the official docs disagree, trust the official docs. Index for agents: https://hermeswatcher.com/llms.txt
