Memanto is a Memory Agent; a companion agent that manages the memories of your other agents:
what to keep, what conflicts, what expires, and who needs to know.
pip install memanto
Every platform will store your agents' memory. None of them will manage it.Managing it across platforms is against their interest. That is the job of a Memory Agent.
Persistence is solved. Claude, Bedrock, Cursor, and every vector store will happily keep what your agents write. None of them will tell you that two of your agents now believe opposite things about your auth service, that a preference from March has quietly outranked a decision from last week, or that the agent you spun up this morning is about to redo work another one finished and reverted.
Storage is a filing cabinet. Memanto is the chief of staff; it decides what goes in, watches the access, resolves what contradicts, discards what's stale, and briefs each agent before it acts.
Memanto isn't a library you call. It's a second agent that runs beside your fleet and does six things on its own judgment. Each one is a real behavior with a command behind it, nothing here is a roadmap item.
| What Memanto does | Run it | |
|---|---|---|
| Observes & extracts | ||
| Watches the interaction streams of the agents it serves and pulls durable knowledge out of ephemeral traffic — decisions, preferences, facts, failures — instead of archiving transcripts wholesale. | memanto remember --from-conversation |
|
| Consolidates | ||
| Merges extracted memories into one canonical estate. Duplicates collapse, fragments join, repeated observations strengthen confidence instead of multiplying rows. | memanto schedule enable |
|
| Reconciles | ||
| When new knowledge contradicts old, Memanto supersedes rather than appends — preserving what was believed and when. "What's true now" and "what did we believe then" stay different questions. | memanto conflicts |
|
| Forgets | ||
| Decay, expiry, and deliberate deletion are policies it executes, not cleanup you remember to do. An estate that only grows becomes noise; managed forgetting is what keeps recall sharp at month twelve. | memanto forget |
|
| Briefs | ||
| Before an agent acts, Memanto hands it the minimal relevant slice of the estate. Your agents don't query anything — they get briefed by a colleague. | memanto agent bootstrap |
|
| Moves knowledge | ||
| Through the Open Knowledge Format, the estate crosses frameworks and vendors — so a fleet spanning Claude Code, Cursor, and your own stack shares one memory instead of five silos. | memanto memory export --okf |
And it does this while you're asleep. memanto schedule enable
and the loop runs daily: new memories curated, duplicates merged across agents, contradictions flagged for your review. You come back to a fleet that knows more than it did yesterday, without having sorted anything yourself.
pip install memanto
memanto # "On-Prem" (Docker, no account) or "Cloud" (free key)
memanto connect claude-code # also: cursor, codex, windsurf, cline, goose, copilot…
Your agents now share one managed estate. No code changes, no wrapper, no rewrite of your agent loop.
memanto remember "Auth migrated to JWT — session cookies deprecated" --type decision
memanto recall "how does auth work"
memanto answer "why did we drop session cookies?" # grounded, no extra API key
memanto recall "deployment policy" --as-of 2026-08-05
memanto recall "deployment policy" --changed-since v2.1
macOS, Linux, Windows. memanto ui
opens a local dashboard over the whole estate — browse it, search it, audit it.
This is the part that matters in two years, and it's the part every platform-native memory feature is designed to prevent.
Your estate is a file. memanto memory export --okf
gives you the Open Knowledge Format — plain Markdown, readable, diffable, committable, greppable. Not a proprietary dump you can technically request. The actual working format.
It moves. memanto migrate
imports from Mem0, Letta, Supermemory, or any OKF bundle. The same command works in reverse. OKF is an open interchange format any framework or vendor can implement — including ours' competitors, deliberately.
It runs on your machine. Local Docker + Ollama, no account, no API key, nothing leaves your infrastructure. Or free cloud, or your own hosting. memanto config backend
switches between them in one command, and the estate comes with you.
MIT. No open-core tier waiting to gate the useful half. No feature flags, no seat limits, no rug pull.
There is no lock-in because there is nothing to lock.
Nothing leaves your machine in on-prem mode. Docker + Ollama, no account, no outbound calls. The full loop — extraction, consolidation, reconciliation, briefing — runs locally.
Scoped by default. Each agent gets its own namespace. Your production-ops agent doesn't read your scratch experiments; you provision exactly what each one should know and nothing more.
Every belief is traceable. Confidence score, source, timestamp, and what it superseded. When an agent acts on something, you can walk back to where that belief entered the fleet and when — which is the difference between an auditable estate and a black box.
| Memory storage | Memanto |
|
|---|---|---|
| What it is | A database with an SDK — write, embed, retrieve | An agent with judgment over your fleet's memory |
| Core behavior | Persist | Curate, reconcile, consolidate, forget, brief |
| Who decides what's kept | You, in application code | Memanto, on policy you set once |
| When two agents disagree | Last write wins, silently | Both versioned, surfaced for review |
| Forgetting | A DELETE you remember to run |
A first-class policy that runs on schedule |
| Scope | One app, one stack, one vendor's walls | A fleet, across stacks and vendors |
| Your data | Exportable in theory | The working format is portable Markdown |
Storage substrates sit beneath Memanto — vector stores, filesystems, and platform-native memory features are all backends it manages. Their commoditization is good for you: it makes the substrate free and leaves the management to something that's actually good at it.
⭐ Star the repo if Memanto is managing your fleet's memory
It's the signal that tells us to keep building this in the open, under MIT, with nothing held back.
One pip install. No vector store to provision, no embedding pipeline, no reranker, no schema migration, no backend to babysit. The retrieval engine ships in the box.
Works with what you already run. memanto connect claude-code
— same for Cursor, Codex, Windsurf, Cline, Continue, Goose, Copilot, and more. One command each.
Searchable the moment it's written. No extraction pass at write time, no graph to rebuild, no indexing queue. remember
returns and every agent in the fleet can already recall it.
Typed, not soup. 13 memory categories — instruction
, fact
, decision
, goal
, preference
, relationship
, and more — so recall is filterable instead of one undifferentiated blob.
A dashboard, not a log file. memanto ui
for the whole estate. memanto daily-summary
for a readable digest of what changed across your agents. memanto status
for registered agents, sessions, and health.
Full CLI reference
| Capability | Commands | What it does |
|---|---|---|
| System status | memanto status |
|
| Environment, configuration, server health, active session, registered agents. | ||
| Local REST API + web UI | memanto serve , memanto ui |
|
| Run the REST API locally and open an interactive browser UI. | ||
| Agent lifecycle | memanto agent ... |
|
Create/list/delete agents, activate sessions, run agent bootstrap . |
||
| Memory capture at scale | memanto remember |
|
Single memories, batch JSON, or --from-conversation to extract from chat logs. |
||
| Editing & deletion | memanto edit , memanto forget |
|
| Update fields on a memory, or permanently delete a bad one. | ||
| File ingestion | memanto upload |
|
| Bring .pdf, .docx, .xlsx, .json, .txt, .csv, .md into an agent's namespace. | ||
| Advanced recall | memanto recall |
|
Standard search plus temporal queries (--as-of , --changed-since ) with filters. |
||
| Grounded answers | memanto answer |
|
| Generate answers from retrieved memory context. | ||
| Daily intelligence | memanto daily-summary , memanto conflicts |
|
| Summaries, contradiction detection, interactive resolution. | ||
| Sessions & automation | memanto session ... , memanto schedule ... |
|
| Inspect sessions, enable scheduled daily runs. | ||
| Estate export & sync | memanto memory export , memanto memory sync |
|
Export structured Markdown, sync MEMORY.md into projects. --okf for a portable |
||
| Import & migration | memanto migrate |
|
| Import from Mem0, Letta, Supermemory, or an OKF bundle. | ||
| Configuration | memanto config show |
|
| API key status, active agent/session, server settings, schedule time. | ||
| Fleet integration | memanto connect ... |
|
| Claude Code, Codex, Cursor, Windsurf, Antigravity, Gemini CLI, Cline, Continue, OpenCode, Goose, Roo, GitHub Copilot, Augment. |
Memory types: instruction
, fact
, decision
, goal
, commitment
, preference
, relationship
, context
, event
, learning
, observation
, artifact
, error
memanto remember "User prefers concise answers" --type preference
memanto recall "user communication style" --type preference
Complete reference: CLI User Guide
Install options — fully local vs. free cloud
Fully local. No account, no API key, nothing leaves your machine:
pip install memanto
memanto # choose "On-Prem" — guides through Docker + Ollama setup
Requires Docker.
Free cloud. No card, ~60 seconds:
pip install memanto
memanto # choose "Cloud" — paste your free API key
Free key at console.moorcheh.ai/api-keys — 100K free operations.
Switch any time: memanto config backend
Architecture
Recall is powered by an information-theoretic semantic engine that ships in the box — as a local Docker container or as a free cloud service. The memanto
CLI manages either for you. Storage substrates beneath it are pluggable; Memanto is the agent above them.
On-prem:
SDKs & REST API
TypeScript / Node.js — @moorcheh-ai/memanto boots a local Memanto server via
uvx
and exposes an ergonomic client (remember
/ recall
/ answer
).REST API — start with memanto serve
. Endpoint reference at docs.memanto.ai/api and http://localhost:8000/docs
while running.
Recall is more than search |
Setup & demoLocal dashboard tourDocs →Memanto: Typed Semantic Memory with Information-Theoretic Retrieval for Long-Horizon Agents
On public recall benchmarks we report 89.8% on LongMemEval and 87.1% on LoCoMo. Datasets and harness are open at huggingface.co/moorcheh — run them yourself.
A caveat we'd rather say out loud: cross-project scores on these benchmarks are not comparable. Reader model, judge model, judge prompt, and retrieval budget each move results by several points, and no two published runs share a configuration. Treat every number in this category — including ours — as directional. What a Memory Agent should eventually be measured on isn't recall at all, but estate quality over time: contradiction rate, staleness, and precision at month six.
@misc{abtahi2026memantotypedsemanticmemory,
title={Memanto: Typed Semantic Memory with Information-Theoretic Retrieval for Long-Horizon Agents},
author={Seyed Moein Abtahi and Rasa Rahnema and Hetkumar Patel and Neel Patel and Majid Fekri and Tara Khani},
year={2026},
eprint={2604.22085},
archivePrefix={arXiv},
primaryClass={cs.AI},
url={https://arxiv.org/abs/2604.22085},
}
Questions: support@moorcheh.ai · @moorcheh_ai