I Gave My AI Agent a Memory Upgrade
My AI agent remembers 2,200 characters about me. Like what I’d tell a new colleague over coffee — I’m a Malaysian Chinese AI engineer, ex-SJTU, I build stuff with Python, Dagster, Cloudflare Workers, and the occasional Angular app.
But ask it about anything beyond those 2,200 characters and it draws a blank. My friends, my dog, the projects I shipped last month — none of that fits.
It works for the basics. But it’s like having a brilliant assistant with goldfish memory. Hermes ships with two memory files — facts about me, facts about the environment. Combined about 1,300 tokens. Less than a page. Great for your name and the server hostname, but ask “didn’t we discuss this before” and it’s gone.
Did some Reddit and Google. Came across Mnemosyne, a Hermes-first memory layer that lives in SQLite. No cloud, no API keys. Three tiers:
- 工作记忆 (working memory) — what’s hot, injected every turn
- 长期记忆 (episodic memory) — consolidated from working, persists long-term
- 知识图谱 (knowledge graph) — structured facts with relationships
Installed it, flipped the config. Now the agent remembers past conversations via vector search, auto-consolidates without me asking, and queries relationships between things it knows.
I swore at it. Called it a fuck. Wanted to see if it’d stick or block me.
It didn’t block anything. The agent heard it, responded, moved on. The raw “you fuck” is in the session history but won’t make it into durable memory. The consolidation looks for facts, not outbursts.
What sticks:
- ✔️ “KJ doesn’t use draft toggles — just publish”
- ✔️ “KJ prefers the ‘tell a colleague over coffee’ framing”
- ❌ “KJ called me a fuck at 11:06”
Only actionable corrections survive. The emotional part evaporates like a cache miss.
It also has 100% abstention accuracy — if it’s not sure, it drops it instead of guessing. Most memory systems reach for anything when they don’t have a real match. Mnemosyne says “I don’t know.” That’s the right behavior for something you rely on.
Haven’t used it long enough to know what actually changes day-to-day. The vector search works — I can reference past conversations and it finds them. The consolidation runs without me thinking about it. I’m curious how it holds up after weeks. That’s the real test.
The whole thing — including a heavy rewrite of docs.solarsens.co and some heavy implementation sessions — ran about ¥22.64 across 4,067 requests.
The spikes (¥7 on Jul 27, ¥6.87 on Jul 24) were the heavy sessions. Normal usage is under a yuan. Prompt cache hits cover about 90% of input tokens. All paid to DeepSeek. Mnemosyne is MIT licensed — the software was free.