Skip to content

[Feature]: Shared State Layer for Persistent Multi-Agent Teams — Domain-Owned File Bus #4529

@DevOPsJourneyman

Description

@DevOPsJourneyman

Problem or Use Case

Parent: Part of #344 (Phase 4 — Persistent Agent Teams)

Overview

This proposal is distinct from #377 (Shared Memory Pools), which addresses temporary state passing between ephemeral sub-agents within a single workflow execution. This issue addresses persistent shared state across independent, long-running specialist agents that survive across sessions — the use case described in #344 Phase 4.

A lightweight shared state layer for teams of persistent Hermes agents, where each agent owns one domain file, all agents can read all files, and no agent can overwrite another's domain data.


The Problem

As users build multi-agent Hermes teams with specialist roles, two problems emerge immediately:

Scope bleed — Without a shared data layer, each agent accumulates context for everything it touches. Scope bleeds because data has no home.

No cross-agent awareness — Agent A has no way to inform Agent B's decisions. A health agent that knows today was a poor sleep night can't signal the study agent to reduce session intensity. Agents operate in silos even when their domains are deeply interconnected.


Production Context

Validated in a live personal agent team running on Hermes across isolated LXC containers on a self-hosted Proxmox cluster.
Scope bleed is the primary failure mode of single-agent-does-everything designs. Cross-session context loss is solved by agents reading shared state at startup.

Proposed Solution


Proposed Solution

A shared file bus with domain ownership rules — plain markdown files, one per domain, each owned by exactly one agent. Every agent reads all files. Only the domain owner writes to theirs.

Domain files live in a shared directory (e.g., ~/.hermes/team-context/). At session start, each agent reads all files in the directory. Each agent writes only to its own file. No locking protocol needed — ownership is enforced by convention.

Example file schema:

## health.md (owned by health-agent)                                                                                                                                                      
---                                                                                                                                                                                         
owner: health-agent
last_updated: 2026-04-02                                                                                                                                                                    
---                                                                                                                                                                                         
sleep_quality: poor
energy_level: low                                                                                                                                                                           
recommendation: reduce cognitive load today                                                                                                                                               

Related Issues


Ask

Community discussion before any PR — is this the right abstraction, and should Hermes support it natively?

Alternatives Considered

1. Filesystem as implicit shared state (current workaround)

Already exists — agents can read/write files. Fragile: no schema, no ownership rules, no guaranteed naming convention. Works until it doesn't.

2. Parent agent as relay

Current pattern in delegate_task — upstream results passed through parent. Burns tokens, risks information loss through summarization, doesn't work for persistent teams that don't have a parent.

3. #377 Shared Memory Pool

Scoped to ephemeral workflow execution, cleaned up at workflow end. Doesn't survive across sessions. Wrong layer for a persistent team.

4. Shared SQLite / structured database

Heavier than needed, introduces a dependency, harder for agents to inspect and reason about. Markdown files are directly readable in agent context.

Feature Type

New tool

Scope

Small (single file, < 50 lines)

Contribution

  • I'd like to implement this myself and submit a PR

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions