agentos.guide › blog
Hermes Agent Telegram turns your Agent OS into something you can message from anywhere, and the quickest way to set it up is to let the agent do most of the typing.
Below is a short quick start, five prompts to paste into your agent, and the daily routine I'd build once the bot answers.
Every setting traces back to the official Hermes Telegram docs at release v0.23.1.
If you'd like my team to help decide what your Telegram agent should handle, book a free SEO strategy session.
First, create the bot.
In the Agent OS desktop app or dashboard, open Messaging → Telegram and press Create with QR.
Scan it with your phone, and Hermes makes the bot, finds your Telegram ID, saves both into your profile and restarts the gateway.
No desktop app on that machine? Make the bot with @BotFather and /newbot, and grab your numeric ID from @userinfobot.
Second, make the gateway permanent.
hermes gateway setup
hermes gateway install
Third, send the bot "hello" from your phone.
The answer should arrive within seconds; if it doesn't, check the gateway log for a token error before anything else.
The messaging gateway is the background process that owns your sessions, so since v0.23.0 the Telegram chat and your desktop chat are the same conversation.
Once the bot replies, ask the agent to check its own setup.
Read ~/.hermes/.env and ~/.hermes/config.yaml and report on my Telegram setup.
Tell me:
1. Is TELEGRAM_ALLOWED_USERS set, and to which numeric IDs?
2. Is GATEWAY_ALLOW_ALL_USERS set anywhere? If yes, flag it.
3. Is require_mention on for groups?
4. Is the gateway installed as a service?
Do not change anything. Do not print the bot token.
The default is already safe: the gateway refuses anyone not allowlisted or paired.
This prompt simply confirms nobody has loosened it.
Groups need two things from you that the agent can't do: a BotFather setting and a re-add.
I'm adding you to a Telegram group for my team.
Walk me through it step by step:
- turning off Group Privacy in BotFather (/mybots, Bot Settings, Group Privacy)
- removing and re-adding the bot so the change applies
- finding the group's chat ID
Then add that ID to TELEGRAM_GROUP_ALLOWED_CHATS, set telegram.require_mention: true,
show me the diff, and wait for my "go" before restarting the gateway.
Privacy mode is on by default, so without this the bot only sees commands and replies aimed at it.
The re-add matters because Telegram caches the old privacy state per group.
Want staff to chat with the agent but not change its settings? Add allow_admin_from for yourself and a short user_allowed_commands list for everyone else.
Group IDs are negative numbers, and they belong in the chats list rather than the users list.
🔥 Get the Agent OS with Telegram ready to switch on
Inside the AI Profit Boardroom: step-by-step video trainings, the installable Agent OS, four coaching calls a week and 3,400+ members sharing the prompts they give their agents.
Pairing beats collecting IDs by hand.
A teammate just messaged the Telegram bot and got pairing code XKGH5N7P.
Run: hermes pairing approve telegram XKGH5N7P
Then run hermes pairing list and show me everyone who now has access.
If anyone is listed that I don't recognise, tell me before doing anything else.
Codes expire after an hour and are rate-limited, according to the team Telegram assistant guide.
When someone leaves, swap the approve line for hermes pairing revoke telegram USER_ID.
Scheduled results need somewhere to land.
Send /sethome in the chat you want, then paste this.
Create a cron job called morning-brief.
Schedule: 7am, Monday to Friday.
Task: read ~/notes/today.md and ~/notes/open-jobs.md and send me at most
five bullets: today's priorities first, then anything overdue.
Deliver to my Telegram home channel.
Write the prompt so it works in a fresh session with no memory of this chat.
Run it once now so I can check the output.
The last instruction matters: scheduled prompts start fresh, so they must carry every path and detail.
Using forum topics in your DM? Point cron deliveries at a dedicated topic with TELEGRAM_CRON_THREAD_ID, so briefs don't land in the system-only lobby.
Briefs ring your phone by default, while tool-progress messages arrive silently under the standard important notification mode.
For the full scheduling options, see our Hermes cron job guide.
Check whether ffmpeg is installed and whether faster-whisper is available for local
speech-to-text. Tell me which STT provider is configured.
If ffmpeg is missing, give me the install command for this OS and wait.
Then set voice replies on for this chat with /voice on.
Incoming voice notes are transcribed before the agent reads them, and the local engine needs no API key.
Without ffmpeg, Edge TTS replies arrive as audio files instead of round voice bubbles.
Members of the AI Profit Boardroom get this voice setup walked through on video, inside the installable Agent OS.
Works in your DM but ignores the group? Hand the agent the docs' checklist.
The Telegram bot answers my DMs but stays silent in group -100XXXXXXXXXX.
Check these in order and tell me which one fails:
1. Does the gateway log show the group message arriving at all?
2. Is the sender in TELEGRAM_ALLOWED_USERS or TELEGRAM_GROUP_ALLOWED_USERS,
or is the group in TELEGRAM_GROUP_ALLOWED_CHATS?
3. Is telegram.require_mention true, and did the message mention the bot?
4. Is any other Hermes profile using the same bot token?
Don't edit any files. Give me the fix and wait.
If step 1 fails, the answer is on Telegram's side: privacy mode is still on, or the bot wasn't re-added after you changed it.
Making the bot a group admin also gets it every message, without touching the global privacy switch.
Step 4 catches a sneaky one: two running gateways can't poll with one token, so every profile needs its own bot.
| Setting | What it does |
|---|---|
require_mention | Bot answers in groups only when mentioned, replied to or commanded |
TELEGRAM_GROUP_ALLOWED_USERS | Lets named people use the bot in groups without DM access |
allow_admin_from | Splits admins from regular users for slash commands |
channel_prompts | Gives a group or forum topic its own standing instructions |
drop_pending_on_cold_boot | Discards messages queued while the gateway was off |
TELEGRAM_WEBHOOK_URL | Webhook mode for cloud hosts that sleep when idle |
Two limits to plan around: files over 20 MB are refused on the public Bot API, and the documented fix is a self-hosted Bot API server that raises the cap to 2 GB.
If you run several projects through one bot, DM topics are worth a look: each topic becomes its own isolated session, and a topic can load a skill automatically when a new session starts.
They need Threaded Mode switched on in the BotFather Mini App first, which the classic /mybots menu doesn't show.
With Team Gateway on, a shared Hermes bot carries your Telegram traffic and the card says Via Team Gateway.
Press Link Telegram, then send the one-time /link code to the shared bot from your account.
The gateway must be running for the button to work, and the flow arrived in v0.22.7.
/bg so the main chat stays free./new so tomorrow starts with a clean session, since gateway chats never reset on their own.A café owner: she voice-notes the day's waste and low stock after closing; the agent logs it to a file and adds it to tomorrow's 7am brief.
A dog groomer: he sends a photo of the paper diary each evening; the agent types up tomorrow's list and drafts reminder texts marked "draft only" for him to send himself.
A tutoring business: the two tutors share a group with require_mention on; either one writes "@tutorbot draft a progress note from these points", and the bot replies in the thread.
A cleaning company: the owner pairs each supervisor with a one-time code; supervisors voice-note finished jobs from site, and the agent compiles them into an end-of-day summary in the owner's DM.
In every case a person sends anything that reaches a customer, and the bot never messages people in bulk.
Write "draft only" into any prompt that produces a customer message, since Hermes approvals cover risky commands, not outgoing texts.
📞 Want a plan for your own business?
Book a free SEO strategy session and my team will look at which of your daily jobs an agent can take on first.
GATEWAY_ALLOW_ALL_USERS=true on a bot that can reach a terminal.Want the rest of the Agent OS built around it? The AI Profit Boardroom has the full walkthroughs.
Mostly. It can edit the config, approve pairing codes and create scheduled jobs, but you still change BotFather settings and re-add the bot to groups yourself.
To the home channel. Send /sethome in the chat you want, and cron jobs deliver their results there.
Scheduled jobs run in fresh sessions with no memory of past conversations, so the prompt must include every file path and instruction it needs.
Yes. Since v0.23.0 one gateway per machine owns every session, so Telegram and the desktop app share one history.
Paste the five prompts in order, and if you want my team to pick the jobs worth automating, book a free strategy session and get your Hermes Agent Telegram routine running this week.
About Julian
I'm Julian Goldie, an AI entrepreneur, SEO expert and the founder of the AI Profit Boardroom, which has 3,400+ members.
I help business owners scale with AI agents, automation and SEO.
My YouTube channel has 400,000+ subscribers, and I run Goldie Agency, a seven-figure SEO agency.
→ Hermes Agent Slack: Run Your Agent In Slack From Your Agent OS
→ Hermes Agent WhatsApp: Five Prompts To Run In Your Agent OS
→ Hermes Agent Discord: Run Your Server Bot In Your Agent OS
→ Hermes Agent Cron Job: Schedule, Stop And Recover Jobs In Your Agent OS With 5 Copy-Paste Prompts
The installable system behind every guide on this site — dashboard, agents, memory and pipelines — updated as new tools land, with 3,400+ members and four coaching calls a week.
Join the AI Profit Boardroom →📺 Video notes + links to the tools 👉
🎥 Learn how I make these videos 👉