Appearance
Messaging gateways
Hermes can talk to you on 20+ platforms while running on your local machine or a remote server. The agent stays put; you reach it from your phone.
Supported platforms
Telegram, Discord, Slack, WhatsApp, Signal, Matrix, Email, SMS, Microsoft Teams, and more.
Typical setup: Telegram + local Hermes
This is the pattern I use: Hermes + Ollama on my laptop, Telegram bot for mobile access.
bash
hermes gateway setup # interactive wizard, pick TelegramPaste your bot token when prompted. Then run the gateway:
bash
hermes gateway run # foreground (simplest)
hermes gateway install # install as a background service (launchd/systemd)
hermes gateway start # start the installed service
hermes gateway status # check it's alive
hermes gateway restart # after config changesHermes runs a gateway process that bridges Telegram messages to the local agent.
Architecture
text
Phone (Telegram)
│
▼
Hermes Gateway ←── runs on your machine/server
│
▼
Hermes Agent + Ollama (local)Your messages go to your machine. The model runs locally. Responses come back to Telegram.
Offline considerations
- The model inference is offline.
- Telegram needs internet for message delivery (phone ↔ your machine).
- If you want 100% air-gapped, use CLI only.
For most "local agent, mobile access" setups, Telegram + local Ollama is the sweet spot.
Cleaner replies on your phone
By default the gateway can show tool calls and reasoning inline, which is noisy on mobile. Control how much shows with display.tool_progress:
yaml
display:
tool_progress: "off" # off | new | all | verboseoff sends only the final answer; new shows brief one-liners as tools run. For messaging, off or new is usually what you want. Restart the gateway after changing it.
Voice mode
Hermes supports real-time voice on CLI, Telegram, and Discord. Requires a TTS provider (can be local with the right setup) and adds complexity. Start with text; add voice later.
Security
- Restrict who can talk to your bot (allowlist user IDs, or DM pairing so the first user claims access).
- Keep
approvals.mode: manualfor shell access via messaging. Notesudocan't prompt over a gateway, so avoid it there. - Don't expose the gateway port to the public internet without auth.
Real use case
I send a Telegram message: "build the hermes docs and tell me if it passes." Hermes runs npm run build locally, reads the output, and replies on Telegram. I never open the laptop.
See Daily briefings via Telegram for a full workflow.
Next: Real use cases.