A Hermes group chat puts two to six of your Hermes bots in one room, where they read the same thread, reply in turns and hand questions back to you.
Each bot is a full Hermes profile with its own model, SOUL.md, skills and memory, so a room is really a small team of specialists talking in one place.
Hermes v0.22.6 shipped on 2 Nov 2026 and its notes list four Desktop group chat additions: rename, disband, mentions and attachment paste.
Below is the order I'd set a room up in, the settings that matter, and the traps the docs warn about.
Want my team to map which bots your business should seat in a room? Book a free SEO strategy session and we'll plan it with you.
Step 0: Check Which Build You Are On
The v0.22.6 release notes split updates by install type.
- CLI: run
hermes updateor re-run the installer one-liner. - Microsoft Store app: updates through the Store.
- Docker / Hermes Cloud: pull
nousresearch/hermes-agent:stableor:latest. - Desktop from the .exe / .dmg installer: no change in this release; it picks up v0.22.6 with the next bundled release.
So if you run the installer build of Desktop, the new rename, disband, mention and paste behaviour lands when that bundle ships.
Everything else in this walkthrough comes from the current Bot Mode docs, which already describe how rooms work.
Step 1: Build The Bots Before You Build The Room
A room is only as good as its members, so I build the bots first.
Bot Mode is built into Hermes Desktop and is on by default; it shows up as a Bots tab beside Sessions in the left sidebar.
Hit New Agent and fill in three fields: Name, Title and Description.
Then open Advanced, because that is where a room gets its range:
- Model & provider pin. Give each bot its own model; different bots can run different models side by side.
- Custom SOUL.md. Write the persona and standing rules for that seat.
- Per-skill, per-toolset and per-MCP-server switches. Tick only what that specialist needs.
- Clone from an existing profile or start a Fresh profile.
- Copy API keys from the main profile is on by default, but single-use OAuth logins are not copied.
For an OAuth provider, sign the new bot in yourself with hermes -p <name> auth add <provider>.
My starting trio is a researcher, a builder and a reviewer, each with a title that says exactly what it does.
The title matters more than it looks: every bot's system prompt carries the teammate roster with names and roles.
Step 2: Create The Room
The docs give you two ways in.
- New Group Chat. Pick the members, set the name, and optionally add a room picture you upload or generate (generation needs an image backend configured).
- Right-click a local bot → Manage groups. Add that bot to any number of existing groups, or create a new one inline.
A room holds 2–6 bots.
New Group Chat first checks how the active gateway runs rooms; groups managed by one gateway only offer bots on the active connection.
Name the room for the job, not the members: "Launch review" ages better than "Researcher + Builder".
🔥 Want ready-made bot rosters instead of building every seat from scratch? Inside the AI Profit Boardroom you get step-by-step video trainings, the installable Agent OS, four coaching calls a week and 3,400+ members running agents like these. → Join the AI Profit Boardroom
Step 3: Know What The Roster Row Is Telling You
Once it exists, the room sits in the Bots roster as its own Discord-style row.
That row shows stacked member avatars, the member count, a preview of the latest room line, a timestamp and the needs you badge.
Room rows and bot rows share one list, ordered by pins first and recency after.
A bot that sits in three rooms still has exactly one DM row, while each room gets a row of its own.
Click the room row and it opens as a tab that takes over the main chat window; older Desktop builds open it inside the bots side panel instead.
Housekeeping options from the right-click menu:
- Pin to top keeps a daily room above everything unpinned; Unpin drops it back into recency order.
- Move to section files it under one of your own section headings, or drag the row onto a heading.
- Remove from section sends it back to the group-chat bucket.
- Move up / Move down arrows set its position among rooms without crossing the pinned boundary.
Pins, sections and manual order are saved on that Desktop, not synced.
Step 4: Send The First Message The Right Way
One message from you starts up to three serial rounds of member turns.
If you @-mention bots, only those bots are in the round; if you mention nobody, every member gets the turn.
Each bot then replies briefly or passes, and the room settles once a full round goes quiet.
A room can't spin forever: each send is capped at 10 messages and 3 rounds.
So my first message always names the lead: @researcher pull the three facts we need, then @reviewer check them.
Expect silence from bots with nothing new to add; the docs say speaking is each member's own choice.
The composer starts as one row, grows as you type up to half the window, and Enter sends while Shift+Enter adds a newline.
Step 5: Use Mentions, Replies And Threads On Purpose
Mentions are the steering wheel of a room.
@namepulls a specific bot in; bots use it on each other too.@useris how a bot escalates a judgement call to you, and it lights the needs-you badge.@hermeshands off to the primary bot, even in older saved rooms.@all/@everyoneaddress the whole room.
In the transcript, routed mentions render as accent-coloured inline references; email addresses and any @words Hermes doesn't recognise are left as plain text.
Hover a bot's message and pick Reply to @handle to seed that handle into the composer, so only that bot receives your next send.
To keep going on one topic without reshuffling the room, use Reply in thread.
Renamed bots stay taggable: a bot titled Research Buddy answers to @research-buddy and @researchbuddy, and the old profile name keeps resolving.
Step 6: Answer Approvals And Hold Bots When Needed
Pending questions and command approvals also light the needs-you badge on the room row.
An approval inside the room answers on the click: once, session, always or deny sends straight away.
The Stop button cancels queued continuations and holds members until you release them.
To release, @mention the held bot or address the whole room with @all or @everyone; any wording works.
To hold one bot by text, put stop, halt or pause right next to its mention, like stop @builder.
The same word anywhere else is read as prose, and words inside code, quotes or blockquotes never hold anyone.
Once released, a held bot catches up: its first turn includes every message it missed.
If your room never uses "stop" as a command, switch off Detect stop directives in the group settings dialog.
Step 7: Rename, Re-Picture, Re-Seat Or Disband
The gear in the room header opens Group settings.
From there you rename the room or set, replace or remove its picture at any time.
History survives a rename, because the room log, memberships, the picture and each member's room session all move across with it.
A name that is already taken is rejected, not quietly suffixed.
Manage members (the people icon in the header, or the button inside Group settings) opens a checklist of current members plus every local and Connections bot.
Tick changes, hit Save members, and the room keeps its history; a removed bot takes no more turns and an added bot reads recent history on its first turn.
Disband a room and it's gone for good on every client, even clients that weren't online when you did it.
Recreate a group with the same name and you get a genuinely fresh room, not the old one back.
The Context Limits That Shape Every Turn
When a member takes a turn, it sees all room messages posted after its previous turn.
That window tops out at about 200 messages or 32,000 characters of transcript, whichever fills first.
A single oversized message is cut to a marked 8,000-character excerpt, and if the window still overflows the prompt says how many earlier messages were dropped.
Practical rule: paste long documents into one bot's own chat and post a summary to the room.
📞 Planning a multi-bot setup for client work? Book a free SEO strategy session and my team will walk through which seats, models and approvals fit your workflow. → Grab your free strategy session
Gotcha: Empty Replies Mean Compress History
Every member keeps a hidden room session that grows with each turn.
When it grows large enough, that member starts answering with empty replies and the message The model returned no response after processing tool results.
Fix it in Group settings: each member has a Compress history button that runs the same compression as /compress on that hidden session.
Compress one member at a time; the room log itself is untouched.
That hidden session is an ordinary Hermes session titled Group: <room> · <thread>, so you can resume it from the CLI, and a routine can post into it.
Routines are Hermes cron jobs under the hood; the Hermes agent cron job walkthrough covers scheduling them.
Gotcha: Keep Every Member On One Gateway
When every member lives on the same gateway, that gateway owns turn scheduling through a durable driver.
Closing Desktop, or losing its connection, then does not stop a room mid-discussion; Desktop catches up from the room log when it reconnects.
The gateway's groups.capabilities reports driver: true when this applies.
Room state lives in the install's root shared-state.db.
Older rooms with members on several machines run each member's turns on its own gateway, and members carry a device badge like dixie · Mac Mini.
The multi-connection Desktop guide also notes that direct bot mentions and delegation stay gateway-local by default.
Raise The Discussion Ceilings (Server-Hosted Rooms)
The configuration reference exposes two knobs for native server-hosted rooms:
hosted_rooms:
discussion:
max_rounds: 3 # default
max_messages: 10 # default
Values must be positive integers; anything else is ignored with a gateway-log warning and the defaults apply.
Put the block in the config.yaml of the Hermes home that holds the room store, beside shared-state.db, not in a member's profile.
Restart every process sharing that store, because each one reads the keys once at startup.
The docs' own example is max_rounds: 6 and max_messages: 30 for a bigger, still bounded room.
These ceilings do not cover Desktop renderer-driven or mirrored rooms.
Watch Members Work From A Plugin
The durable room log records turn.started and turn.settled.
What a member does in between, its tools, approvals and streamed text, reaches plugins through the on_room_member_activity hook.
That is the hook to use if you want live member status or tool cards in your own client.
Failures show up too: an unresolved one stays in the collapsed Activity summary, named like builder hit an error — <first line>.
Re-address the member to try again; an ambiguous submit failure is not resubmitted for you.
Not To Be Confused With Telegram And Discord Groups
Separate feature, same word: the messaging gateway also serves group chats on platforms like Discord, Telegram and Slack.
There, group_sessions_per_user: true is the default, giving each sender their own session in a shared channel; false makes the whole channel one shared conversation.
That setting is about people talking to one agent in a platform group, not bots deliberating in a Desktop room.
If you want the room set up with a team that runs these daily, the AI Profit Boardroom coaching calls are the place to bring your config.
Also On Our Network
- 🌐 Whether a room of AI bots pays off for a shop, firm or agency
- 🌐 A nine-point scorecard rating multi-bot rooms on control, context and durability
- 🌐 Five copy-paste prompts that run a council of bots in your Agent OS
- 🌐 Which AI model to seat in each bot chair, by real GoldieBench scores
- 🌐 The complete Hermes group chat guide on the AI Profit Boardroom blog
FAQ: Hermes Group Chat
How many bots can sit in one Hermes group chat?
Between two and six. Manage members keeps the room inside that 2–6 range when you add or remove bots.
Why is one bot in my room sending empty replies?
Its hidden room session has grown too large. Open Group settings and press Compress history for that member; it runs the same compression as /compress and leaves the room log alone.
Do all bots answer every message?
No. Mentioned bots respond, everyone responds when nobody is mentioned, and each bot can pass. The room settles when a full round stays silent.
Will the room stop if I close Hermes Desktop?
Not when every member is on the same gateway. That gateway runs the turns through a durable driver and Desktop catches up from the room log later.
When does the installer Desktop app get the v0.22.6 group chat changes?
With the next bundled Desktop release. The CLI updates now with hermes update, and the Microsoft Store app updates through the Store.
📺 Video notes + links to the tools 👉
🎥 Learn how I make these videos 👉
🆓 Get a FREE AI Course + Community + 1,000 AI Agents 👉
About Julian
I'm Julian Goldie, an SEO entrepreneur, author and founder of the AI Profit Boardroom, which has 3,400+ members.
I help business owners scale with AI agents, automation and SEO.
- I've built a 7-figure SEO and link building agency, Goldie Agency, with a team of 70+ SEO experts.
- I've grown a YouTube channel to 400,000+ subscribers.
- I wrote "Link Building Mastery".
- My Udemy courses have taught over 29,000 students.
→ Get my best AI training inside the AI Profit Boardroom
Build three bots tonight, seat them in one room, and if you want my team to plan the roster with you, book a free strategy session and bring your Hermes group chat idea.











