# Guide to Hermes Desktop Bot Mode (Tonbi's AI Garage)

Tonbi's AI Garage walks the official Hermes Agent Desktop Bot Mode UI (bots as profiles that can message each other and sit in group threads), then has a "Bot HR" spawn specialist bots from a racing-game spec and a Boss Bot orchestrate a playable demo. This page is a source summary only (video-claimed vs docs-confirmed).

Tags: youtube-inbox, source, hermes-agent, bot-mode, multi-agent, tonbi, nous-research, desktop

## Who / what

| Field | Value |
|---|---|
| Speaker | Tonbi (channel: Tonbi's AI Garage) |
| Channel | [Tonbi's AI Garage](https://www.youtube.com/@TonbisAIGarage) |
| Title | Guide to Hermes Desktop Bot Mode: Real Multi-Agent Teams, Real Work |
| Upload | 2026-08-20 (Supadata uploadDate) |
| Duration | 1283s (~21m 23s) |
| Form | Product guide + live team demo |
| Watch | https://www.youtube.com/watch?v=2Q-xW88YARg |
| Playlist | Inbox `PLN44szKHr11c` |

Description (Supadata): a racing game "wasn't built in one agent session — a team of five Hermes bots planned it, split the work, and built it while I did other things." Nous Research "just shipped Bot Mode in the Hermes Agent desktop app." Walkthrough named: bots as profiles; creating one (avatars, models, cloning settings); "the agent inbox that lets bots message each other"; pinning/hiding; grouping into teams with threads; then a "Bot HR" that spins up specialist bots from a racing-game spec, a Boss Bot to orchestrate, and a playable result. Description links https://github.com/NousResearch/hermes-agent. Description also promotes Agent Wikis (agentwikis.com; Pro $9.99/mo) and a newsletter at onchainaigarage.com.

Description timestamps (from the description text, not a timed caption dump): 0:00 game built by a team of five bots; 0:44 what Bot Mode is; 2:26 Bots tab / sessions / creating a bot; 5:20 bot-to-bot messaging ("agent inbox"); 6:44 pin, hide, edit + adding to a group; 8:21 Bot HR; 11:20 why it picked different models; 12:43 team plans the game; 14:28 Boss Bot orchestrates; 19:36 playable result.

## Video-claimed

Attributed to Tonbi / this video (and the video description). ASR garbles "Claude Code" as cloud code, "SOUL.md" as sole MD, "Nous Portal" as news portal, "Race QA" as Grace QA, "WebGL" as WebGLE. Wording below uses the intended product names. Model SKUs spoken in captions are left as ASR (not guessed into a catalog name) unless an official page also names them. Not confirmed on the official pages listed under **Docs-confirmed**.

### What he says Bot Mode is

- Earlier this week Nous Research released Hermes Agent Desktop Bot Mode: "a new way for agent profiles to communicate and work together." He has tested it in a couple of X videos; this is "one full video, a full guide … because the official version is out and there have been a lot of changes."
- "Bots themselves are not necessarily new concept, they're just profiles." Existing profiles already show up on the Bots tab. What changed is how they work together and communicate, plus the interface/UI.
- He always uses a lot of profiles; Bot Mode "makes it a lot easier and can really change your workflow."
- The racing-game opener: not built in Claude Code and not in a single Hermes session. Built in Bot Mode "by not one, but a team of five different agents. One kind of orchestrator agent and then four worker specialist agents." By the end you see how they were set up. Description: five bots "planned it, split the work, and built it while I did other things."
- Closing: "This literally just came out yesterday." Still bugs; he is still experimenting on "the best way to use bot mode." Asks commenters for tips.

### UI walkthrough (as shown)

- Desktop usually shows Sessions (new session, session list). Bot Mode is "this little tab on the top": switch from Sessions to Bots.
- Bots pane: "each bot having a single session." Right-click a bot → check sessions to see all of them; filter/search sessions by name; go back; chat as in a normal session.
- Create: click to create a new agent/bot. Avatar options he clicks through: random shapes with colors; generate based on a description; upload an image; or a pet (picks "boba"). Names the demo bot **boss bot** / project leader: "This bot reviews work and guides other bots when needed."
- Advanced (he says this will be familiar if you make profiles): clone from other profiles' settings; start fresh with bundled skills; set default provider/model; change SOUL.md; **create empty** (skips bundled skills); capabilities = skills, tools, MCP — "decide exactly what skills and tools it wants"; "skills hub" listed in that UI. Then Create agent → "waking up boss bot." New session: it introduces itself. Default model in this create: **Grok 4.6**.
- Bot-to-bot: from **report bot**, he asks it to send a message to **bot bot** asking it to introduce itself and report the reply. "Active now" shows the bots that are working. He calls the dedicated agent-to-agent session an **agent inbox**. He shows the send command, bot bot's reply ("I'm bot bot a persistent Hermes test agent … focused on validating … bot plugin behavior"), and that session listed under bot bot's sessions as the agent inbox.
- Other roster actions he shows: pin to the top; hide; unhide; edit profile (description, image); start new chats; check sessions; add to a group.
- Groups: "the real superpower." He already has two teams with multiple bots; adds a bot to **racing car game**. Group conversation is already ongoing for planning. He later calls group "threads" "really just sessions" you can collapse; he starts a separate thread to talk to Boss Bot so he is "not disturbing" the workers.

### Bot HR + racing team (demo)

- Idea (he says he posted on X): a bot whose only task is to decide what other bots should be made from a project, instead of manually creating several new agents per project. Description: "Bot HR."
- Create Bot HR. Description he types: "you are a bot who makes other bots based on project requirements and tells them their role."
- Hands Bot HR a spec for a racing car game, "kind of vaguely based on Days of Thunder, the arcade game." He had tried the spec with a local model and "it didn't work out so well." Prompt: create some agents for this project; select their model from available ones to fit their role; path to the spec.
- Result he reads: natural scope split into render, gameplay, technical art, and independent browser QA. "Creating four isolated project profiles now with a shared working directory set to the briefs folder." It writes SOUL.md files (example mission he reads: Race WebGL lead — "Lead the raw WebGL 2 browser racing implementation for this project").
- Reuse claim: specialist bots "develop their own skills throughout time"; a gameplay engineer’s skills might transfer to other games even if not racing. This specific racing set is for this game.
- Four members shown; Race gameplay introduces itself as gameplay engineer owning vehicle physics, collision response, AI field, race state, and "even knows what his teammates are."
- He creates a **racing car game team** group and moves the four in.

### Model choices (Bot HR, ASR)

Spoken as captions, not verified against a model catalog:

- Race gameplay: "Quinn 3 8 max" through his "news portal" account (ASR: likely Qwen via Nous Portal; exact SKU not confirmed).
- Race QA: Grok — later "Grok 4.5."
- Tech art: GLM — later "GLM 5.2."
- WebGL lead: "GBT 5.6 tera" (ASR: likely a GPT-5.6 variant; exact SKU not confirmed).

He asks Bot HR why. Captions: gameplay is "a large amount of iterative relatively self-contained implementation work" / "strong high throughput coding model"; tech art "needs to translate detailed visual target into procedural geometry" / GLM "suited to generative and creative implementation tasks." First-run Bot HR "it'll learn on its own" as it gets more projects; "on first glance I think they're fairly good."

### Planning, Boss Bot, build

- In the group: everyone introduce yourselves and your role; look at the spec (he also gave the markdown file); decide phases and role division; "Just plan it no coding yet."
- Race gameplay proposes a phase structure; Race tech art accepts and maps **P1 / P2 / P3**; P1 described as parallel, "no blockers." A bot asks WebGL lead about materials/textures format, atlas dimensions; WebGL lead answers with a "closed sample contract" plus ID checkpoints and a target texture atlas. They update docs and debate the plan.
- He then adds **Boss Bot** as orchestrator: introduce yourself and get familiar. Two reply options he points at: reply in this thread/session, or create a new thread.
- Four phases; each bot has a job. He tells them they know what they need to make: "start working on this project based on this plan … report back when you are done with the task or if you hit any blockers need help from me." Boss Bot "already taking charge" with start instructions. Gameplay starts "the core sim"; QA writing tests; they launch a local server themselves.
- He generates a group icon (small racing-car image). Tells Boss Bot to check in every 20 minutes and push bots who need to start. He finds the lack of visible tool calls "a little unnerving" but "according to BossBot. Stuff is being built."
- Later check-in (he has been on other projects): some items closed; visuals P2 in progress; **P4** is Playwright to test the game; Race WebGL working on visuals. Test images start to look like a game with cars.
- Stops when Boss Bot gives a rundown of who did what and they have a playable game.

### Playable result (his verdict)

- Demo he drives: "quite basic the graphics. I didn't give them any assets." "The mechanics feel good though. Like the driving aspect feels very smooth." He is controlling a car numbered 51; finishes fourth. "This is very functional game." More advanced graphics would need "actual graphic assets."
- "This was built in the bot mode. And this is the first game." Useful especially "if you're trying to develop specialized profiles with specialized skills."

### Promo (video / description, not Hermes)

- Agent Wikis (agentwikis.com): free LLM wikis he uses for these videos; Pro $9.99/month for "super-sized" wikis. Newsletter: onchainaigarage.com.

### Lines from the transcript (ASR-corrected spelling)

- "This wasn't built in Claude Code or even in a single Hermes agent session. It was built in bot mode in Hermes agent by not one, but a team of five different agents."
- "Bots themselves are not necessarily a new concept, they're just profiles."
- "What has changed is how they can work together and communicate with one another, as well as just the interface and the UI."
- "Each one has an agent inbox, which is just like a dedicated session for agent to agent communication."
- "I had an idea to create a bot HR basically whose only task is to really decide what other bots should be made based on a project."
- "This literally just came out yesterday."
- "I do think it's quite interesting and could potentially change the way we use Hermes Agent and build projects."

## Docs-confirmed

Checked read-only on ingest against the official pages below. Quotes are from those pages. Features not on these pages are not stated here as confirmed. View/like/duration above are Supadata snapshots, not from these docs.

### https://hermes-agent.nousresearch.com/docs/user-guide/bot-mode

- "Bot Mode turns your Hermes profiles into a roster of named Bots. Each Bot has its own role, model, memory, skills, and avatar; Bots run recurring routines, deliberate together in group chats, and message each other directly."
- Ships built into the desktop app, on by default, no install. "Bots tab next to Sessions in the left sidebar," with a Routines tile docked beside the conversation while the Bots tab is active.
- "A Bot is a Hermes profile — isolated config, memory, skills, credentials, and chat history under `~/.hermes/profiles/<name>/`." UI over that primitive. CLI: `hermes -p <name> chat`; routines appear in `hermes cron list`. "No core patches, no background daemons, no extra storage."
- Roster: avatar, latest-message preview, timestamp. Click a Bot → its "canonical, persistent Bot Chat" created (and pinned) when the Bot is born. **Active now** strip: gateway-busy profile plus any Bot that wrote within the last 90 seconds; chips open that Bot's chat; strip does not reorder the roster; disappears when idle. Search filters the roster. Hide (right-click → Hide Bot) is display-only: `@mentions` still resolve, group membership untouched, routines keep running; eye toggle reveals hidden Bots; hidden Bots do not toast; unread activity is silent with an eye badge; hidden state is in profile metadata.
- Canonical Bot Chat is a "forever-chat": `/new` (or `/reset`) is rerouted to `/compact`. Regular sessions on the same profile keep `/new`.
- New Agent: Name, Title, Description; Bot introduces itself as the first message of Bot Chat. Advanced: clone from an existing profile (config, skills, SOUL, memory) or Fresh profile; Create empty skips bundled skills; model & provider pin (different Bots can use different models; unset inherits launch profile); custom SOUL.md; per-skill, per-toolset, per-MCP-server enablement; shared keys by default (one OAuth/token pool with the main profile). Multi-connection **Create on** picker when more than one connection is registered. Edit Profile / Duplicate / Delete Profile (default profile cannot be deleted).
- Avatars: blob faces (default, from the name); geometric faces ("classic 7 shapes × 10 colors"); uploaded image; AI-generated portrait when an image backend is configured; pixel pet from the petdex (`hermes pets`). Look/title/description stored in profile metadata.
- Routines: recurring tasks attached to the Bot; "plain Hermes cron jobs namespaced `[bot:] <name>`"; runs land in the Bot's own chat history. Structured schedule picker plus Advanced raw schedule string.
- Groups: right-click local Bot → Manage groups; 2–6 Bots in Open chat. Your message triggers up to three serial rounds; `@`-mentioned Bots respond (everyone when nobody is mentioned); `@user` escalates with a needs-you badge; hard caps "10 messages per send, 3 rounds." Each member keeps its own persistent `Group: <name>` session. Rooms can span machines with `@name-device` handles.
- Bot-to-bot: `@mentions` in any chat hand off and report back; names validated against the live roster. Direct messages via CLI into the teammate's Bot Chat (`hermes -p <name> chat …`); file transport so the body is not shell-interpreted. Messaging protocol is injected into canonical Bot Chat only (`agent.bot_mode_protocol`, default on). "Bot-to-bot delivery is per-invocation: the receiving Bot picks the message up when it next runs. Live interrupt of a Bot mid-conversation is future work." Cross-machine: Connections + `hermes peer dm`.
- Turn off: Settings → Plugins → Bots; unregister live, no restart. "Bot Mode never owns your data, it only renders it." Preference to hide canonical Bot Chats from the regular sidebar session list.

The bot-mode page as fetched does **not** name "agent inbox," "Bot HR," Skills Hub, a racing-game template, Playwright as a Bot Mode feature, or a 20-minute check-in schedule.

### https://hermes-agent.nousresearch.com/docs/user-guide/desktop (Bot Mode section)

- On by default: "a 'one chat per agent' roster where every Hermes profile appears as a bot" with avatar (geometric face, uploaded image, AI-generated portrait, or pixel pet), canonical Bot Chat, and Routines (Hermes cron). Roster is a **Sessions | Bots** tab strip in the left sidebar (older stacked layout re-homed once).
- Create from the roster: Name / Title / Description plus Advanced (model, SOUL, skills, toolsets, MCP servers). "Group them into sections, and open group chats where several bots deliberate." Group chats: "standalone Discord-style rows in the roster — stacked member avatars, member count, a preview of the latest room line, and the 'needs you' badge — interleaved with the bot rows in the same **pin+recency** ordering."
- `@researcher have a look at this` handoff; bots reach each other's Bot Chats via `hermes -p <name> chat`. `agent.bot_mode_protocol` default on.
- Canonical Bot Chat and group-chat member sessions "are always hidden from the global Sessions sidebar. They live in the Bots pane (roster rows, room views, and each bot's **session browser**)."
- Hide Bot / Unhide / eye toggle as on the bot-mode page. Off switch: Settings → Plugins → Bots.

### https://hermes-agent.nousresearch.com/docs/user-guide/profiles

- A profile is a separate Hermes home: own `config.yaml`, `.env`, `SOUL.md`, memories, sessions, skills, cron, state. Path: `~/.hermes/profiles/<name>/` (default profile is `~/.hermes`).
- `hermes profile create`; `--clone` copies config/`.env`/SOUL.md/skills with fresh sessions/memory; `--clone-all` copies more (not session history). `hermes -p <name> chat`. Cannot delete the default profile.
- Profiles vs workspace: `terminal.cwd` is the tool working directory; a profile does not sandbox filesystem access. "SOUL.md can guide the model, but it does not enforce a workspace boundary."
- Display name on the default profile appears in the desktop app "including the Bot Mode roster."

## Overlap / gaps (source vs docs, not advice)

- Bots = profiles, Bots tab next to Sessions, create with name/description/avatar/model/SOUL/skills/tools/MCP, hide, group chats, bot-to-bot messages, different models per bot: video walkthrough and the official Bot Mode + Desktop pages match at that level.
- Video "each bot having a single session" matches docs' canonical Bot Chat. Docs add: that chat is pinned at birth, `/new` becomes `/compact`, and Bot Mode sessions are hidden from the global Sessions sidebar. Video "right-click → check sessions" matches Desktop's "session browser" in the Bots pane.
- Video "agent inbox" is his name for the dedicated agent-to-agent session. Docs name that surface the canonical **Bot Chat** plus an injected messaging protocol (`agent.bot_mode_protocol`). They also describe `@mention` handoff in any chat and CLI `hermes -p <name> chat`. The video demo is an explicit "send a message to bot bot … tell me the response," not an `@mention` typed in the composer.
- Video pin-to-top: Desktop docs say group/bot rows share "**pin+recency** ordering." The dedicated bot-mode page as fetched describes hide/search/active-now, not a Pin command by that name.
- Video avatar: shapes+colors, generate-from-description, upload, pet "boba." Docs: geometric 7×10, AI-generated portrait when an image backend is configured, upload, pixel pet / `hermes pets`. Blob faces (name-derived default) are docs-only in this ingest.
- Video Advanced "create empty" / clone / SOUL.md / skills+tools+MCP: matches docs Create empty, clone, custom SOUL.md, per-skill/toolset/MCP. Video "skills hub" in that dialog is not named on the fetched bot-mode or desktop pages.
- Video Active now: docs confirm the strip (busy + wrote in last 90 seconds).
- **Bot HR that creates other bots from a spec** is his workflow, not a named product feature on the fetched pages. Docs' create path is the New Agent dialog (or CLI `hermes profile create`). The video shows Bot HR writing SOUL.md files and "four isolated project profiles" with a shared working directory "briefs folder." Profiles docs say `terminal.cwd` is how you pin a working directory; they do not describe a bot spawning teammates.
- Group size in the racing demo (four specialists, then Boss Bot added) sits inside the docs Open-chat range (2–6 Bots). Docs also cap rounds/messages (3 rounds, 10 messages per send) and `@user` needs-you — not shown as numbers in the video.
- "Check in every 20 minutes" is his instruction to Boss Bot in the demo, not a documented default routine. Docs do have a Routines / cron pane on the Bots tab; the video does not show that picker for the 20-minute check-in.
- Model SKUs, Days of Thunder spec, Playwright as phase P4, car 51 / fourth place, "came out yesterday," X testing videos, Agent Wikis pricing: video/description only.
- Multi-machine Create on, `hermes peer`, blob faces, `/compact` reroute, `agent.bot_mode_protocol`, CLI parity table: docs only (not in this video).
- Same-channel contrast (not a product claim): [[youtube-hermes-kanban-multi-agent]] said there is no chatting between agents — "just the board." This video is the opposite coordination style (group threads + inbox). Both can be true of different Hermes surfaces; this page does not pick one.

## Sources

1. YouTube: https://www.youtube.com/watch?v=2Q-xW88YARg
2. Raw ingest: `raw/youtube-inbox/2Q-xW88YARg/` (metadata.json, transcript.txt, notes.md, source.url)
3. Channel: Tonbi's AI Garage https://www.youtube.com/channel/UCqB1bhMwGsW-yefBxYwFCCg · https://www.youtube.com/@TonbisAIGarage
4. Transcript: Supadata v1 mode=native text=true, lang=en, 17687 chars. ASR spellings are not authoritative.
5. https://hermes-agent.nousresearch.com/docs/user-guide/bot-mode
6. https://hermes-agent.nousresearch.com/docs/user-guide/desktop
7. https://hermes-agent.nousresearch.com/docs/user-guide/profiles
8. Description also links https://github.com/NousResearch/hermes-agent (not fetched as a primary page this ingest)

## Related pages

- [[hermes-agent]]
- [[youtube-hermes-desktop-plugins]] (same channel: Desktop plugin SDK / placements; Bot Mode is the bundled Bots plugin)
- [[youtube-hermes-kanban-multi-agent]] (same channel: board-as-bus, explicitly no agent-to-agent chat)
- [[hermes-plugin-perseus-vault]]
- [[grok-bot]] (managed teammates / group chat vs local Bot Mode roster)
- [[grok-bot-vs-hermes-agent]]
- [[youtube-ai-agent-workforce]] (multi-agent team pitched in a different product)
- [[youtube-shockwave-stephen-pope]] (speaker there says he liked Hermes UX less than Shockwave)
