How Hermes Agent memory works, and the open source way a team shares it
Hermes Agent remembers through two small curated files, MEMORY.md and USER.md, that the agent writes itself. That works for one operator. For a team, Kortix is the open-source AI Operating System whose agents, memory and connectors live in one git repo you own.
Where a project's memory lives
kortix.yamlAGENTS.mdagents/<name>.mdskills/<name>/SKILL.mdmemory/MEMORY.mdtools/<name>.tsharnesses/opencode/Kortix keeps memory in the project repository, so a remembered fact is a file a person can read, diff and review.
How Hermes Agent memory works
Hermes Agent's built-in memory is two small text files rather than a database. MEMORY.md holds the agent's own notes and is capped at 2,200 characters; USER.md holds a profile of you and is capped at 1,375. Both sit in the Hermes home directory and are injected into the system prompt as a frozen snapshot at the start of each session (Persistent Memory).
The agent manages its own memory with a memory tool that can add, patch or remove entries, and Hermes nudges it to persist knowledge as it works. The limits are deliberate. When a write would overflow, the tool returns an error and the agent consolidates or removes entries itself before retrying. Because the snapshot freezes at session start, a fact saved in one session appears only in the next.
External providers, one at a time
Hermes can add an external provider for knowledge beyond the two files. RetainDB and ByteRover ship as plugins, and Honcho, Hindsight, Supermemory and others install from the plugin catalog. Only one external provider can be active at a time, and the built-in memory stays active alongside it (Memory Providers). A provider syncs conversation turns and mirrors memory writes, so the authoritative record can live in a cloud service such as Honcho Cloud.
The gap when a team shares one agent
Hermes memory is scoped per profile by design. Its documentation warns that pointing two agent processes at one Hermes home directory lets automatic writes compound into state neither of them authored. A shared team agent therefore runs one operator's curated notes, or mirrors them to a single external provider. There is no built-in way for a whole team to review a remembered fact, attribute it to a source, or roll it back.
How Kortix stores team memory
Kortix is the open-source AI Operating System, and its memory is a folder in the project's git repo. memory/MEMORY.md is the index, with one line per file, and the memory tool reads and writes only inside memory/. Kortix does not inject memory into every prompt; an agent reads the index at the start of a task and then the files it points to (Read the docs). A memory edit is an ordinary file change on the session branch, and other sessions see it only after a change request merges it into the default branch. The practical difference is memory the whole team can review and version like code.
For the wider switch, read /migrate-from-hermes and /hermes-for-teams.
Kortix memory and Hermes Agent memory side by side
The Hermes column states what Hermes's own documentation says; the Kortix column states what Kortix's documentation says.
| Option | memory model | where memory is stored | who it is shared with | how it is reviewed and versioned | roles and permissions | self-hosting |
|---|---|---|---|---|---|---|
| Kortix | A memory folder an agent curates, indexed by MEMORY.md | Files under memory/ in the project git repo | The whole project, once a change request merges | Ordinary git commits and diffs, merged by change request | Per-resource permissions for people and agents. Roles, groups, and an audit trail. | Run it on Kortix Cloud, in your VPC, or self-host free |
| Hermes Agent | Bounded curated files, MEMORY.md and USER.md, written by the agent | Files in the Hermes home directory; optional external provider | One profile; two writers compound each other's entries | Per file; no review or versioning step | Per-profile isolation and command-approval modes | Self-hosted by design on your own server |
Questions about Hermes Agent memory
- Where does Hermes Agent store memory?
- In two files in the Hermes home directory,
MEMORY.mdandUSER.md, under the profile's memories folder.MEMORY.mdis capped at 2,200 characters andUSER.mdat 1,375, and both are injected into the system prompt at the start of a session. - Can Hermes Agent use an external memory database?
- Yes. It ships with the RetainDB and ByteRover plugins and can install Honcho, Hindsight, Supermemory and others from its catalog. Only one external provider can be active at a time, and the built-in files stay active alongside it.
- How does Kortix make memory shared by a team?
- Kortix stores memory as files under
memory/in the project git repo, which every session clones. A memory edit is a file change on the session branch and reaches the default branch only through a change request a person reviews.
Give your team memory it can review.
Start with one agent and grow from there.
Open source · Any model, your keys · Self-host, VPC, or on-prem