What Hermes Agent remembers
Hermes Agent keeps bounded, curated memory that persists across sessions, so it can remember preferences, projects, environment facts and things it has learned (Hermes memory guide). Two files make up this memory. MEMORY.md holds the agent's personal notes, such as environment facts and conventions, with a limit of 2,200 characters, about 800 tokens. USER.md holds your profile, with preferences, communication style and expectations, limited to 1,375 characters, about 500 tokens.
Both files are stored in ~/.hermes/memories/ and injected into the system prompt as a frozen snapshot at session start (Hermes memory guide). The guide also names two context files, SOUL.md and AGENTS.md, and tells the agent to skip saving their content into memory. Persistent memory totals roughly 1,300 tokens, while session search capacity is unlimited across all stored sessions (Hermes memory guide).
How the agent writes to memory
The agent manages its own memory via the memory tool, which can add, replace or remove entries (Hermes memory guide). It saves automatically, you do not need to ask. There is no read action, because memory content is already injected into the system prompt at session start. If the substring used by replace or remove matches multiple entries, the tool returns an error and asks for a more specific match (Hermes memory guide).
Exact duplicate entries are rejected automatically (Hermes memory guide). Entries are also scanned for injection and exfiltration patterns before being accepted, since they land in the system prompt. If you would rather approve saves first, set memory.write_approval to true (Hermes memory guide).
Limits to know
Memory does not auto-compact. A write that would exceed the limit makes the memory tool return an error instead of silently dropping entries (Hermes memory guide). The system prompt block is captured once at session start and never changes mid-session, which is intentional and preserves the LLM's prefix cache for performance. Changes made during a session are persisted to disk immediately, but they do not appear in the system prompt until the next session starts (Hermes memory guide).
When memory is above 80% capacity, visible in the system prompt header, the guide says to consolidate entries before adding new ones (Hermes memory guide). One caution from the same guide: two agent processes sharing one Hermes home directory will compound each other's memory writes into state neither of them, nor you, authored.
Session search covers every conversation
All CLI and messaging sessions are stored in SQLite at ~/.hermes/state.db with FTS5 full-text search, and you search them with the session_search tool (Hermes memory guide). Search queries return actual messages from the database, with no LLM summarization and no truncation. Persistent memory holds roughly 1,300 tokens in total, while session search reaches all stored sessions.
The documented practice is to run /new at natural boundaries, such as a finished task, a change of topic, or the start of a day, so memory and session search pay off (Hermes memory guide). On messaging platforms a chat is one continuous session. Shutting the machine down overnight does not end it, and the next message picks up exactly where it left off.
External memory providers
Hermes ships with 8 external memory provider plugins, including Honcho, OpenViking, Mem0, Hindsight, Holographic, RetainDB, ByteRover and Supermemory (Hermes memory guide). External providers run alongside built-in memory, never replacing it, and add capabilities like knowledge graphs, semantic search, automatic fact extraction and cross-session user modeling (Hermes memory guide).
KnowMan is a personal knowledge base that saves articles and links, reads and tags them, answers questions with citations, and keeps memories such as claims, decisions and playbooks (personal knowledge base guide). The next section covers its MCP server.
The KnowMan MCP server
KnowMan also provides an open-source MCP client, package @knowman/mcp, that runs locally as a stdio server with npx -y @knowman/mcp on Node 22 or newer, and a hosted server at https://api.knowman.io/mcp (MCP server knowledge base guide). The hosted server can be used with OAuth sign-in or an API key. Its tools include kb_search for finding saved items by keyword or meaning, kb_ask for answers with citations, kb_memories for saved claims, decisions and playbooks, kb_get_item for the readable content of one item, kb_save to save a URL, and kb_recent for recent items.
The client configurations documented for the KnowMan MCP server cover Claude Desktop, Claude Code and Cursor (Claude knowledge base guide). For the wider pattern of durable context across sessions, see persistent memory for AI agents.
Use hosted KnowMan with Hermes Agent
KnowMan also offers a hosted MCP server at https://api.knowman.io/mcp. In clients that support remote MCP servers, add this server URL and sign in through the KnowMan consent page with OAuth, or use an API key as an Authorization: Bearer header.
KnowMan's open-source local MCP client is available at GitHub. It runs locally with npx -y @knowman/mcp on Node 22 or newer.
Questions people ask
Where does Hermes Agent store memory?
In two files under ~/.hermes/memories/: MEMORY.md for the agent's notes, capped at 2,200 characters, and USER.md for your profile, capped at 1,375 characters. Both are injected into the system prompt as a frozen snapshot at session start. See the Hermes memory guide.
Why does memory not update during a session?
The system prompt injection is captured once at session start and never changes mid-session, intentionally, to preserve the LLM's prefix cache for performance. Writes are persisted to disk immediately but appear in the system prompt only when the next session starts. See the Hermes memory guide.
What happens when Hermes memory is full?
Memory does not auto-compact, so the memory tool returns an error instead of silently dropping entries. The guide says to consolidate entries before adding new ones once memory is above 80% capacity, which is visible in the system prompt header. See the Hermes memory guide.
Can KnowMan add long-term memory to Hermes Agent?
KnowMan is a personal knowledge base that saves articles and links, reads and tags them, answers questions with citations, and keeps memories such as claims, decisions and playbooks (personal knowledge base guide). Its MCP server is a local stdio server, and the client configurations documented for it cover Claude Desktop, Claude Code and Cursor (Claude knowledge base guide).