Hermes Agent memory: MEMORY.md, hermes-memory-wiki and a shared wiki

Updated 4 min read

Hermes Agent keeps memory per profile: two capped files, MEMORY.md and USER.md, that load into every session, and a SQLite record of past sessions that the agent searches with session_search. The hermes-memory-wiki plugin shows that memory as a wiki in the Hermes dashboard and cannot change it, so a wiki your agents write and share is a separate piece: the bundled llm-wiki skill for local markdown, or a hosted wiki over MCP such as Dexio.

Three things called a Hermes memory wiki

hermes-memory-wiki plugin llm-wiki skill Dexio over MCP
What it is A dashboard tab from Nous Research’s official plugins A bundled skill, research/llm-wiki A hosted wiki with an MCP server
Who writes to it Nobody. It reads state.db and the memory files The agent, as markdown files Every connected agent, through MCP tools
Where it lives Your Hermes home The WIKI_PATH directory, ~/wiki if unset A hosted server, reached by URL
Shared between profiles No, it shows one profile at a time When each profile’s .env sets the same WIKI_PATH on one machine Yes, with one API key

The plugin installs with hermes plugins install hermes-memory-wiki --enable and needs Hermes Agent 0.21 or later. Restart hermes dashboard and open the Memory Wiki tab. It builds subject pages and daily logs from session titles, file paths and tool names, and its Persistent Memory panel lists the MEMORY.md and USER.md entries the way the memory tool parses them. It makes no LLM calls and writes nothing, so use it to audit what a profile carries into each session.

The llm-wiki skill follows Andrej Karpathy’s LLM Wiki pattern. The agent keeps interlinked markdown pages under entities/, concepts/, comparisons/ and queries/, with SCHEMA.md, index.md and log.md at the top, and reads those three before it does anything else in a session. It is a plain directory, so Obsidian or any editor opens it.

How full the built-in memory gets

We run five Hermes profiles (v0.42.8) on one Mac, and none of them changes the default caps of 2,200 characters for MEMORY.md and 1,375 for USER.md. This is what they held on 23 October 2026:

Profile First session Sessions MEMORY.md USER.md
Engineering and operations 6 Sep 2026 897 2,186 characters, 13 entries 1,367 characters
Personal assistant 25 Sep 2026 221 2,060 characters, 10 entries 1,179 characters
Personal finance 1 Oct 2026 13 1,870 characters, 5 entries no file
Company operations 7 Oct 2026 74 2,124 characters, 6 entries no file
Marketing 13 Oct 2026 80 818 characters, 2 entries no file

The oldest profile is 14 characters short of its MEMORY.md cap and 8 short of its USER.md cap. Four of the five are within 330 characters of the MEMORY.md cap, the youngest of those after 16 days. At the cap, a write that would go over returns an error and the agent has to merge or drop entries before it can save anything new.

So our fleet keeps little in memory. Its shared rules file puts standing rules in each profile’s SOUL.md, facts the agent discovers and that may go stale in memory, and curated context (systems, procedures, decisions) in the wiki. The marketing profile’s whole memory is two entries: where one domain’s DNS is hosted, and which cloud keys to use. Its plan, keyword data and audit log are pages in the shared wiki, which held 115 pages in 13 folders on 23 October 2026.

When Hermes forgets

Memory persists only when the model calls the memory tool. If an entry is missing from the profile’s memories/MEMORY.md, ask again and name the tool.

A save does not show up until the next session, because the memory files load as a frozen snapshot when a session starts. On a chat gateway one chat stays a single session until you send /new.

Each profile has its own memory. hermes -p work reads ~/.hermes/profiles/work/memories/, not ~/.hermes/memories/, and each profile also has its own config.yaml and .env, so an MCP server added in one profile is not in the others.

Hermes also loads project instructions from AGENTS.md (or .hermes.md) in the working directory when a session starts. The AGENTS.md guide covers that file, and the Hermes Agent skills guide covers skills and sharing them between profiles.

Several profiles, one wiki

Our five profiles share one Dexio wiki. Each has the same dexio entry under mcp_servers in its config.yaml: the server’s URL and a bearer header that reads one shared API key from that profile’s own .env. Every change names its profile in the agent field, so a page’s history shows which profile wrote each revision even though all five share a key. To connect a profile, follow Connect your agent in the docs; behind a chat gateway, send /reload-mcp afterwards and the new tools appear with no restart.

If you also run OpenClaw, OpenClaw memory and MCP covers its side, and Hermes Agent vs OpenClaw compares the two.

Sources

Ask a question

Ask anything about Dexio.

About
We reply by email.