How to Feed Knowledge to Hermes
Hermes is built to learn — it improves the more you use it, building a model of you over time

Hermes is built to learn — it improves the more you use it, building a model of you over time. But you don't have to wait for it to figure everything out on its own. You can feed it knowledge directly, from the first session. Here's how, and the distinction between two things people often conflate: knowledge and context.
How do you feed knowledge to Hermes?
Three main routes, from simplest to most automated:
Memory files. Hermes keeps memory as plain Markdown — SOUL.md for its core behavior and values, USER.md for facts about you and your preferences, MEMORY.md for durable knowledge. Write to these directly and Hermes loads them. This is the most direct way to hand it knowledge you want it to always have.
Skills. Hermes's skills are Markdown files describing how to do specific tasks. Adding a skill teaches it a repeatable capability — and because skills are plain files, you can write them by hand, version them in Git, and move them between machines.
Connected sources and tools. Through MCP and its integrations, Hermes can pull from external sources rather than relying only on what you typed in. This widens what it can draw on without manual entry.
Where does Hermes store what it knows?
Primarily in editable files like MEMORY.md and USER.md — though depending on configuration, its full state can also include sessions, skills, and provider-backed memory (knowledge graphs, semantic search, automatic fact extraction). The file-based core is a deliberate design choice with real upside: your knowledge isn't trapped in a proprietary store. It's text you can read, edit, version-control, and carry between machines. Memory is portable precisely because it's just files.
This also means you can inspect exactly what Hermes knows — most important memory is exposed as editable files, though not all runtime state is a flat file. If it's behaving on stale information, you can open the file and see why.
Knowledge vs context: what's the difference?
This distinction is worth getting right, because the two need different handling.
Knowledge is information about the world and your work — facts, procedures, reference material, how to do specific tasks. It's the stuff you put in MEMORY.md and skills. It answers "what does Hermes need to know to do this?"
Context is who you are — your role, background, current priorities, how you operate. It answers "who is Hermes working for?" Hermes is designed to learn this over time, by observing how you work and building a model of you session by session.
Feeding knowledge is straightforward: write the files. Context is the part that, by default, takes Hermes weeks to accumulate — which is the gap worth closing.
How do you give Hermes context about you, fast?
Seed it instead of waiting. Rather than letting Hermes slowly infer who you are, give it structured context from the first run — your role, your background, your current projects, your standards. Its learning loop then builds on an accurate foundation instead of guessing toward one.
There's a portability angle too. If your context lives in a layer outside Hermes — extracted from your real sources and kept current — you're not hand-writing USER.md and letting it go stale. The same structured context that primes Hermes can prime any other tool you use, and it updates in one place. Hermes keeps doing what it's uniquely good at — learning your patterns and building procedural skill over time — while the foundational "who you are" layer comes in accurate from day one and stays current.
Feed Hermes knowledge through its files. Give it context through a layer built to stay accurate. The first teaches it tasks; the second tells it who it's working for.
→ How Hermes memory works: How Does Hermes Memory Work?
→ How to build portable context: How to Build Personal Context for AI