Bug Description
Here’s a shorter, tech-focused summary you can paste into Bug Description:
On Windows 11 with Docker Desktop, I’m running nousresearch/hermes-agent via gateway run with C:\Users\User\.hermes mounted to /opt/data. After enabling WhatsApp in the initial setup, the WhatsApp bridge repeatedly fails to install its npm dependencies and times out on every gateway start. Even after explicitly disabling WhatsApp in both .env (removing or commenting WHATSAPP_ENABLED and related vars) and config.yaml (commenting out the whatsapp entry in platform_toolsets), the gateway still always starts the WhatsApp bridge and spams logs with:
Installing WhatsApp bridge dependencies...
Failed to install dependencies: Command '['npm', 'install', '--silent']' timed out after 60 seconds
- Multiple
Bridge process died (exit code 1) and Check log: /opt/data/whatsapp/bridge.log lines
Giving up reconnecting whatsapp after 20 attempts
In parallel, Telegram is configured with a BotFather token and my numeric user ID, but Hermes frequently logs network warnings and fails to send messages with Forbidden: the bot can't send messages to the bot, plus occasional ReadTimeout / TimedOut errors when polling get_updates. I’ve tried editing .env and config.yaml on the host and inside /opt/data in the container, restarting the container multiple times, and verifying that the WhatsApp settings are commented out, but the WhatsApp bridge still starts and fails on every boot, and Telegram still can’t send messages reliably.
Steps to Reproduce
1.On Windows 11 with Docker Desktop, pull and run nousresearch/hermes-agent using the Docker instructions, mounting C:\Users\User.hermes to /opt/data and running gateway run.
2.In the initial setup, enable WhatsApp in the gateway (self-chat) and complete the wizard.
3.Start the gateway container and observe that the WhatsApp bridge tries to install npm dependencies and fails with a 60s timeout on every start.
4.Edit /opt/data/.env and /opt/data/config.yaml (via host mount) to disable WhatsApp: comment out WhatsApp env vars and remove the whatsapp entry from platform_toolsets. Restart the container.
5.Observe that despite these changes, the gateway still starts the WhatsApp bridge on every boot, logs repeated npm timeout errors, and eventually gives up after 20 reconnect attempts.
6.Configure Telegram in .env with a valid BotFather token and your numeric user ID for TELEGRAM_ALLOWED_USERS and TELEGRAM_HOME_CHANNEL.
7.Start the gateway again and send messages to the bot; observe network warnings and ERROR gateway.platforms.telegram: [Telegram] Failed to send Telegram message: Forbidden: the bot can't send messages to the bot, along with occasional ReadTimeout / TimedOut errors during get_updates.
Expected Behavior
Hermes gateway should respect configuration changes and allow me to fully disable WhatsApp and run only Telegram (or other platforms) without attempting to start the WhatsApp bridge. After updating .env and config.yaml, the gateway should no longer install or run the WhatsApp bridge at all, and Telegram should be able to send and receive messages normally without permission or timeout errors.
Actual Behavior
Even after commenting out all WhatsApp-related settings in .env and removing the whatsapp entry from platform_toolsets in config.yaml, the gateway continues to start the WhatsApp bridge on every boot, repeatedly tries to run npm install --silent, and fails with 60‑second timeouts and multiple “Bridge process died (exit code 1)” messages before giving up after 20 attempts. At the same time, Telegram is configured with a valid bot token and my numeric user ID, but Hermes frequently logs network warnings and fails to send messages with ERROR gateway.platforms.telegram: [Telegram] Failed to send Telegram message: Forbidden: the bot can't send messages to the bot, along with occasional ReadTimeout / TimedOut errors when calling get_updates.
Affected Component
Gateway (Telegram/Discord/Slack/WhatsApp)
Messaging Platform (if gateway-related)
WhatsApp
Debug Report
I’m running Hermes only via the Docker gateway image on Windows 11, and I don’t have the standalone hermes CLI installed on the host. Because of that I’m not able to run hermes debug share or /debug as suggested. All relevant environment info, config snippets, and log excerpts are included above in this issue instead.
Operating System
Windows 11
Python Version
3.13.5
Hermes Version
0.13.0
Additional Logs / Traceback (optional)
Below are representative log snippets from docker logs -f hermes showing the WhatsApp bridge failures and the Telegram errors:
[Whatsapp] Installing WhatsApp bridge dependencies...
[Whatsapp] Failed to install dependencies: Command '['npm', 'install', '--silent']' timed out after 60 seconds
[Whatsapp] Disconnecting (external bridge left running)
WARNING gateway.run: ✗ whatsapp failed to connect
[Whatsapp] Bridge process died (exit code 1)
[Whatsapp] Check log: /opt/data/whatsapp/bridge.log
...
WARNING gateway.run: Giving up reconnecting whatsapp after 20 attempts
WARNING gateway.platforms.telegram_network: [Telegram] Primary api.telegram.org connection failed (); trying fallback IPs 149.154.166.110
WARNING gateway.platforms.telegram_network: [Telegram] Primary api.telegram.org path unreachable; using sticky fallback IP 149.154.166.110
ERROR telegram.ext.Updater: Error while calling `get_updates` one more time to mark all fetched updates. Suppressing error to ensure graceful shutdown.
...
httpx.ReadTimeout
ERROR gateway.platforms.telegram: [Telegram] Failed to send Telegram message: Forbidden: the bot can't send messages to the bot
Traceback (most recent call last):
File "/opt/hermes/gateway/platforms/telegram.py", line 1266, in send
msg = await self._bot.send_message(
...
telegram.error.Forbidden: Forbidden: the bot can't send messages to the bot
Root Cause Analysis (optional)
No response
Proposed Fix (optional)
No response
Are you willing to submit a PR for this?
Bug Description
Here’s a shorter, tech-focused summary you can paste into Bug Description:
On Windows 11 with Docker Desktop, I’m running
nousresearch/hermes-agentviagateway runwithC:\Users\User\.hermesmounted to/opt/data. After enabling WhatsApp in the initial setup, the WhatsApp bridge repeatedly fails to install its npm dependencies and times out on every gateway start. Even after explicitly disabling WhatsApp in both.env(removing or commentingWHATSAPP_ENABLEDand related vars) andconfig.yaml(commenting out thewhatsappentry inplatform_toolsets), the gateway still always starts the WhatsApp bridge and spams logs with:Installing WhatsApp bridge dependencies...Failed to install dependencies: Command '['npm', 'install', '--silent']' timed out after 60 secondsBridge process died (exit code 1)andCheck log: /opt/data/whatsapp/bridge.loglinesGiving up reconnecting whatsapp after 20 attemptsIn parallel, Telegram is configured with a BotFather token and my numeric user ID, but Hermes frequently logs network warnings and fails to send messages with
Forbidden: the bot can't send messages to the bot, plus occasionalReadTimeout/TimedOuterrors when pollingget_updates. I’ve tried editing.envandconfig.yamlon the host and inside/opt/datain the container, restarting the container multiple times, and verifying that the WhatsApp settings are commented out, but the WhatsApp bridge still starts and fails on every boot, and Telegram still can’t send messages reliably.Steps to Reproduce
1.On Windows 11 with Docker Desktop, pull and run nousresearch/hermes-agent using the Docker instructions, mounting C:\Users\User.hermes to /opt/data and running gateway run.
2.In the initial setup, enable WhatsApp in the gateway (self-chat) and complete the wizard.
3.Start the gateway container and observe that the WhatsApp bridge tries to install npm dependencies and fails with a 60s timeout on every start.
4.Edit /opt/data/.env and /opt/data/config.yaml (via host mount) to disable WhatsApp: comment out WhatsApp env vars and remove the whatsapp entry from platform_toolsets. Restart the container.
5.Observe that despite these changes, the gateway still starts the WhatsApp bridge on every boot, logs repeated npm timeout errors, and eventually gives up after 20 reconnect attempts.
6.Configure Telegram in .env with a valid BotFather token and your numeric user ID for TELEGRAM_ALLOWED_USERS and TELEGRAM_HOME_CHANNEL.
7.Start the gateway again and send messages to the bot; observe network warnings and ERROR gateway.platforms.telegram: [Telegram] Failed to send Telegram message: Forbidden: the bot can't send messages to the bot, along with occasional ReadTimeout / TimedOut errors during get_updates.
Expected Behavior
Hermes gateway should respect configuration changes and allow me to fully disable WhatsApp and run only Telegram (or other platforms) without attempting to start the WhatsApp bridge. After updating .env and config.yaml, the gateway should no longer install or run the WhatsApp bridge at all, and Telegram should be able to send and receive messages normally without permission or timeout errors.
Actual Behavior
Even after commenting out all WhatsApp-related settings in .env and removing the whatsapp entry from platform_toolsets in config.yaml, the gateway continues to start the WhatsApp bridge on every boot, repeatedly tries to run npm install --silent, and fails with 60‑second timeouts and multiple “Bridge process died (exit code 1)” messages before giving up after 20 attempts. At the same time, Telegram is configured with a valid bot token and my numeric user ID, but Hermes frequently logs network warnings and fails to send messages with ERROR gateway.platforms.telegram: [Telegram] Failed to send Telegram message: Forbidden: the bot can't send messages to the bot, along with occasional ReadTimeout / TimedOut errors when calling get_updates.
Affected Component
Gateway (Telegram/Discord/Slack/WhatsApp)
Messaging Platform (if gateway-related)
WhatsApp
Debug Report
I’m running Hermes only via the Docker gateway image on Windows 11, and I don’t have the standalone hermes CLI installed on the host. Because of that I’m not able to run hermes debug share or /debug as suggested. All relevant environment info, config snippets, and log excerpts are included above in this issue instead.Operating System
Windows 11
Python Version
3.13.5
Hermes Version
0.13.0
Additional Logs / Traceback (optional)
Root Cause Analysis (optional)
No response
Proposed Fix (optional)
No response
Are you willing to submit a PR for this?