---
title: Multi-Hermes Strategy — v0.12 max-capability rollout
created: 2026-05-06
updated: 2026-05-06
type: investigation
status: draft-awaiting-rocky-decision
drafted-by: cowork-hq
related:
  - "[[Hermes-as-COO-Architecture-2026-05-03]]"
  - "[[hermes-2026-04-30-self-audit]]"
  - "[[hermes-skill-audit-2026-05-01]]"
  - "[[Session-2026-05-06-Wave1-2-3-Summary]]"
  - "[[HQQueue]]"
---

# Multi-Hermes Strategy — v0.12 max-capability rollout

> Drafted 2026-05-06 ~22:15 AEST by cowork-hq. Supersedes single-profile assumption in [[Hermes-as-COO-Architecture-2026-05-03]] **only if** Rocky decides to upgrade. Pacing question is the load-bearing decision; strategy below is conditional on "yes upgrade."

## TL;DR

1. **Hermes v0.12.0 (2026-04-30) ships the multi-agent Kanban primitive natively** — durable SQLite board, profiles claim tasks, dispatcher spawns each profile as its own OS process. Replaces the COO-Inbox.md queue we specced 2026-05-03.
2. **Six profiles at full capacity**: `hermes-coo` (orchestrator, Claude API) + `hermes-opsman` / `hermes-rr` / `hermes-siteops` (project lanes, MiniMax) + `hermes-claw` (broad-bash dispatched executor, MiniMax) + `hermes-curator` (built-in v0.12 skill-library hygiene).
3. **One Telegram bot per profile** — kills the two-agent-one-chat problem flagged in the 2026-05-01 self-audit.
4. **Inference cost-tiered**: cheap MiniMax for workers, Claude API only for `hermes-coo` triage + dispatched-heavy fallback.
5. **Phased over 5-7 evenings**, ~11 hours focused VPS work. Don't do it in one sitting.
6. **Pacing pushback** at the bottom — read before committing. Single-profile v0.11 may still be the right answer for the next 1-2 weeks.

---

## What changed since 2026-05-03

The earlier architecture doc assumed single-profile Hermes + Claude Code CLI dispatcher (Architecture B). v0.12.0 changes the calculus:

- **Multi-agent Kanban** — SQLite-backed task board shared across all Hermes profiles on a host. Tasks carry `assignee` (profile name), dependency links, `workspace_kind` (scratch / worktree / dir:path), and tenant namespace. Dispatcher atomically claims ready tasks and spawns the assigned profile as its own OS process — not in-process subagents. This is the dispatcher pattern we were going to hand-build, shipped native.
- **Autonomous Curator** — gateway-cron-driven, default 7-day cycle, grades/prunes/consolidates skill library, writes per-run `REPORT.md`. Overlaps with Wave 1.4 `vault-curator.py` (vault frontmatter focus); they're complementary, not competing.
- **+4 inference providers, +2 messaging platforms (Teams), Spotify + Google Meet native, ~57% TUI cold-start cut.**

Wave 1.3 today locked Architecture A on v0.11. The Kanban primitive arguably makes A vs B moot — Hermes natively supports the dispatcher pattern now without needing CC CLI on the VPS.

## Profile roster

| Profile | Lane | Workspace | Inference | Skills loaded |
|---|---|---|---|---|
| `hermes-coo` | Orchestrator only — no project content edits | `dir:HQ-Vault/_System/` (read-write to AgentLog, Kanban, escalation surface) | **Claude API** (triage quality matters) | `coo-inbox`, `kanban-route`, `escalate-telegram` |
| `hermes-opsman` | LFCS execution | `dir:HQ-Vault/11_OpsMan_LFCS/` | MiniMax-M2.7 | All `lfcs-*` skills (10+, per [[hermes-skill-audit-2026-05-01]]) |
| `hermes-rr` | RateRight execution | `dir:HQ-Vault/10_RateRight/` | MiniMax | `hunt`, `matchmaker`, `post`, `pulse` (mirrored Wave 3.1 today) |
| `hermes-siteops` | Site ops execution | `dir:HQ-Vault/12_SiteOps/` | MiniMax | `siteops-induction-pack`, `siteops-itp-generate` (Wave 3.4 today) |
| `hermes-claw` | Successor to OpenClaw — broad bash, dispatched only | `scratch` (no vault write without explicit task) | MiniMax | `bash-runner`, `service-status`, `log-tail` |
| `hermes-curator` | v0.12 native — skill library hygiene | gateway-internal | MiniMax | (built-in) |

Six profiles. Five active workers + one orchestrator. Curator runs on its own 7-day cycle, doesn't enter the dispatch loop.

## Coordination model — Kanban replaces COO-Inbox.md

Migrate the inbox concept entirely into Kanban. Flow:

1. Rocky / Cowork writes a task to Kanban (or via `_System/HQQueue.md` → `kanban-import` skill on cron pulls into board).
2. `hermes-coo` polls every 5 min. For each unassigned task: classifies, sets `assignee: hermes-<lane>`, sets `safety_class`.
3. Profile dispatcher atomically claims tasks where `assignee == self`, spawns a fresh OS process per task. v0.12 dispatch model — not in-process subagents.
4. Profile executes against its scoped workspace, writes result back to Kanban task + `_AgentLog/<profile>-{date}.md`.
5. Cross-project tasks: `hermes-coo` creates parent task with no assignee + child dependencies on per-project tasks. Closes parent when all children close. Enables LFCS-bid-won → RR-signup-followup → SiteOps-mobilisation chains.

Tenant namespacing per profile = hard scope. `hermes-rr` literally cannot touch LFCS folder via misrouted task; assignee validation rejects at claim time.

## Telegram surface — one bot per profile

Per [[hermes-2026-04-30-self-audit]] flagged the two-agent-one-chat problem. Six bots:

- `@hq_coo_bot` — orchestrator escalations, Rocky reply parsing
- `@opsman_lfcs_bot` (existing) — LFCS-only
- `@rr_ops_bot` — RateRight-only
- `@siteops_bot` — SiteOps-only
- `@claw_bot` — VPS infrastructure alerts
- (no curator bot — Curator writes REPORT.md, doesn't escalate)

`@hq_coo_bot` is the meta-channel: any safety-class-blocked task across profiles bubbles up here. Rocky watches one chat in The Window.

## Inference cost tiering

- **MiniMax** (cheap, fast): all 4 worker profiles + claw. Burn it.
- **Claude API** (expensive, smart): `hermes-coo` triage only. Plus dispatched-heavy via Architecture-B fallback when coo flags `complexity: heavy + safety_class: real`.
- **GPT-4o-mini**: vision-only fallback (already wired per audit).

Hard cap per profile via env var. Wire `cost_usd` into `events.ndjson` (TODO from Wave 2.1). Telegram alert at 80% of daily cap to `@hq_coo_bot`.

Realistic budget: $5-10/day across the lot at steady-state. Heavy-debug days might spike to $30. Cap at $50/day hard limit, alert at $25.

## Curator + protected skills list

v0.12 Curator will prune skills it judges dead. Add to Curator config:

```yaml
protected:
  - lfcs-*
  - hunt
  - matchmaker
  - post
  - pulse
  - siteops-*
  - coo-inbox
  - kanban-route
  - escalate-telegram
```

Anything outside protect-list is fair game. Run Curator on **14-day cycle** initially (default 7) to give changes time to settle before pruning. Read `REPORT.md` weekly during The Window.

## Vault-write discipline (no change to existing protocol)

Every profile follows the existing AI Team Protocol (`_System/CLAUDE.md`):

- Daily note append (`01_Daily/{today}.md` under `## HH:MM — hermes-<profile> — title`)
- Project `_Log.md` one-liner
- `_AgentLog/<profile>-{date}.md` for autonomous activity
- `events.ndjson` skill-run emission via `log-event.sh`
- Commit prefix `hermes-<profile>:`

`auto-sync.sh` extended to handle the additional lanes (currently OpsMan-scoped per Wave 1.2 patch).

## Safety rails — apply per-profile, not globally

Eight blocked classes from [[Hermes-as-COO-Architecture-2026-05-03]] still apply. Two additions for multi-profile:

9. **Cross-lane writes blocked at workspace level.** `hermes-rr` cannot write to `11_OpsMan_LFCS/` regardless of task content. Enforced by profile workspace scoping — not a soft rule, a hard binding.
10. **No profile can spawn another profile.** Only `hermes-coo` creates tasks with assignees. Prevents recursive escalation loops.

## Phased rollout — 5-7 evenings

| Phase | When | Effort | What |
|---|---|---|---|
| 0 | Tonight | 30 min | Tag v0.11 state on VPS. Dump `~/.hermes/` config + skills to `~/hermes-pre-v0.12-backup/`. Sanity-test current cron unaffected. |
| 1 | Eve 2 | 2 hr | Upgrade gateway to v0.12. Smoke-test current `hermes-opsman` profile alone. Curator OFF until Phase 4. |
| 2 | Eve 3 | 3 hr | Spin up `hermes-rr` + `hermes-siteops` profiles. `cron_mode: deny` on both — manual ticks only for observation period. |
| 3 | Eve 4 | 3 hr | Build `hermes-coo` orchestrator. Stand up Kanban board. Wire `@hq_coo_bot`. Manual ticks. |
| 4 | Eve 5 | 2 hr | Flip `cron_mode: allow` on coo. Workers stay manual another 48 hr to watch routing accuracy. Curator on at 14-day cycle. |
| 5 | Eve 7 | 1 hr | Flip `cron_mode: allow` on workers. Migrate OpenClaw → `hermes-claw`. Retire OpenClaw if redundant. |

Total: ~11 hours of focused VPS work over 5-7 evenings.

## Pacing pushback — read before Phase 0

**You asked for max capability. Here's the mirror:**

1. **Architecture A was locked 8 hours ago.** Whip-flipping to a 6-profile Kanban dispatcher in 24 hours is decision noise. The right move is probably to *prove* the v0.11 single-profile setup works for 1-2 weeks first, see what actually fails, then upgrade with concrete pain points to fix.

2. **v0.12 is 6 days old.** 1,096-commit jump from v0.11. Bug discovery curve still steep. Production-traffic data is ~1 week thin. Betting your only autonomous infrastructure on a release that hasn't seen 2 weeks of community shake-down is risk you can avoid by waiting.

3. **Real bottleneck isn't agent count — it's site time.** 5:30am-6pm you're unreachable. More autonomous agents help only if they can *finish* work without you, not just queue more decisions for The Window. The escalation rate of MiniMax-quality triage on novel problems is unknown. Could be 80% punt-to-Rocky, in which case 6 profiles = 6× the punt volume.

4. **Four outstanding COO items** (nginx buffer, rivet dual-mapping, Stripe smoke, flodeliffre provenance — see [[HQQueue]] entries 2026-05-03) could test single-profile capability *before* you scale. If `hermes-opsman` on v0.11 can't close those autonomously, scaling to 6 profiles won't fix the underlying reasoning gap.

5. **Curator could prune a skill you depend on.** "Protected list" config is a guardrail, not a guarantee. Mistakes here are reversible only via git revert. Annoying but not catastrophic.

## Recommended actual sequence

- **Don't upgrade yet.** Run the 4 outstanding COO items through v0.11 single-profile `hermes-opsman` over the next week. Measure punt rate (escalations / total tasks).
- **If punt rate <30%** → upgrade is justified, run the 5-evening plan above.
- **If punt rate ≥30%** → bottleneck is reasoning quality, not agent count. Architecture B (CC CLI dispatch from the original 2026-05-03 doc) becomes the right answer, not multi-profile expansion.
- **Re-decide at end of Week of 2026-05-11.**

## Open decisions for Rocky

1. **Upgrade now vs prove single-profile first?** Recommendation: prove first. 1-week trial.
2. **If upgrading: 6 profiles or fewer?** Could trim claw initially (rely on `hermes-opsman` bash) and retire OpenClaw later. 5 profiles is still full coverage.
3. **Anthropic API budget cap?** Soft $25/day, hard $50/day. Adjustable.
4. **Curator cycle: 7 or 14 days?** Recommend 14 initially, dial down once protected list is proven.
5. **Where does Kanban DB live for backup?** `~/.hermes/kanban.db` is default. Add to nightly config-backup tar (currently 03:00 UTC, 7-day retention).

## What this unblocks if wired

- 24/7 autonomous COO with project-scoped lanes (matches [[_System/CLAUDE.md]] lane rules natively).
- Cross-project task chains (LFCS-bid-won → RR-signup-followup → SiteOps-mobilisation).
- Self-pruning skill library (Curator).
- Cost-tiered inference (cheap triage, expensive only for heavy reasoning).
- Telegram becomes a real ops channel with per-bot scope (no two-agent-one-chat).
- Vault stays single source of truth; Kanban is operational queue, vault is institutional memory.

## Sources

- [Hermes Agent v0.12.0 Release (GitHub)](https://github.com/NousResearch/hermes-agent/releases/tag/v2026.4.30)
- [Kanban (Multi-Agent Board) docs](https://hermes-agent.nousresearch.com/docs/user-guide/features/kanban)
- [Kanban tutorial](https://hermes-agent.nousresearch.com/docs/user-guide/features/kanban-tutorial)
- [Nous Research's Hermes Agent Adds Multi-Agent Kanban Workflow — Proudfrog (2026-05-04)](https://proudfrog.com/en/news/2026-05-04-nous-researchs-hermes-agent-adds-multi-agent)
- [[Hermes-as-COO-Architecture-2026-05-03]] (prior architecture, single-profile + CC CLI dispatch assumption)
- [[hermes-2026-04-30-self-audit]] (current Hermes v0.11 state)
- [[hermes-skill-audit-2026-05-01]] (skill catalog)
- [[Session-2026-05-06-Wave1-2-3-Summary]] (Architecture A lock-in context)
