Hermes + Memanto: Persistent Memory Agent
This package adds Memanto as a memory agent for the Hermes agent. Memanto gives Hermes typed long-term memory with confidence and provenance, semantic recall, and RAG-style answers, backed by the Moorcheh vector platform.
Unlike a passive "memory layer", every namespace in Memanto is a first-class
agent (memanto agent create/activate), so this provider maps one Hermes
identity to one Memanto agent.
What you get
- Auto-recall — relevant memories are injected before each turn.
- Turn capture — conversation turns are stored as
eventmemories. - Explicit tools —
memanto_remember,memanto_recall,memanto_answer. - Memory mirroring — Hermes' built-in
memorywrites are echoed into Memanto. - Profile isolation —
agent_id: hermes-{identity}scopes memory per Hermes profile.
Why a standalone plugin?
Hermes' built-in providers under plugins/memory/ are a closed set; new memory
backends ship as standalone plugins that users install into
~/.hermes/plugins/. Hermes discovers a memory provider as a directory
under $HERMES_HOME/plugins/<name>/ containing an __init__.py that exposes
register(ctx) plus a plugin.yaml. This package ships exactly that, plus an
installer that drops it into place.
Prerequisites
- Python 3.10+
- A running Hermes agent install
- A Moorcheh API key (free tier: 100K ops/month)
Install
# 1. Install this package (pulls in the memanto SDK)
pip install hermes-memanto
# 2. Drop the plugin into your Hermes home (~/.hermes/plugins/memanto/)
hermes-memanto-install
# 3. Configure your key + select the provider
export MOORCHEH_API_KEY=... # https://console.moorcheh.ai/api-keys
hermes config set memory.provider memanto
hermes memory setup will also list memanto once the plugin is installed,
and writes MOORCHEH_API_KEY into ~/.hermes/.env for you.
From a source checkout
git clone https://github.com/moorcheh-ai/memanto.git
cd memanto/integrations/hermes-agents
pip install -e .
hermes-memanto-install # or: hermes-memanto-install --hermes-home /path/to/.hermes
The installer copies hermes_memanto/provider.py verbatim as the plugin's
__init__.py, so the installed plugin is self-contained and only needs the
memanto SDK at runtime (declared in its plugin.yaml).
Configuration
After install, settings live in $HERMES_HOME/memanto.json:
| Key | Default | Description |
|---|---|---|
agent_id |
hermes-{identity} |
Memanto agent id (memory namespace). {identity} expands to the Hermes profile name. |
pattern |
tool |
Agent pattern used when auto-creating: support, project, or tool. |
auto_recall |
true |
Inject relevant memories before each turn. |
auto_capture |
true |
Store cleaned conversation turns as event memories. |
auto_create |
true |
Create the agent on first use if it does not exist. |
mirror_memory_writes |
true |
Echo Hermes' built-in memory writes into Memanto. |
max_recall_results |
10 |
Max memories formatted into prefetch context (1–100). |
min_confidence |
null |
Drop recalled memories below this confidence (0.0–1.0). |
session_duration_hours |
null |
Override Memanto session lifetime. |
| Environment variable | Description |
|---|---|
MOORCHEH_API_KEY |
Moorcheh API key (required). |
MEMANTO_AGENT_ID |
Override the agent id (takes priority over the config file). |
Tools exposed to Hermes
| Tool | Description |
|---|---|
memanto_remember |
Store a durable fact, preference, decision, goal, or instruction. |
memanto_recall |
Search memories by semantic similarity. |
memanto_answer |
Answer a question grounded only in stored memories (RAG). |
Memory types follow Memanto's taxonomy: fact, preference, goal,
decision, artifact, learning, event, instruction, relationship,
context, observation, commitment, error.
Development
pip install -e ".[dev]"
pytest # provider unit tests (no network; SdkClient is faked)
ruff check .
How it relates to the other integrations
| Integration | Package | What it does |
|---|---|---|
integrations/mcp |
memanto-mcp |
MCP server for any MCP-compatible client (Claude, Cursor). |
integrations/crewai |
crewai-memanto |
CrewAI tools for multi-agent memory sharing. |
integrations/agentcore |
memanto-agentcore |
Amazon Bedrock AgentCore Runtime — cross-session recall/retain. |
integrations/hermes-agents |
hermes-memanto |
This — a memory provider for the Hermes agent. |
integrations/langfuse |
langfuse-memanto |
Turns Langfuse errors and anomalies into memories, live from your app. |
They all talk to the same Moorcheh-backed Memanto agents, so memory written by
one is recallable from the others when they share an agent_id.
Support
Metadata
Release files for hermes-memanto 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| hermes_memanto-0.1.1.tar.gz | 20.3 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| hermes_memanto-0.1.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 37.9 kB
Release files / hermes_memanto-0.1.1.tar.gz
| Download URL | hermes_memanto-0.1.1.tar.gz |
|---|---|
| Size | 20.3 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c4f99b934053a7336503542592a628281f0c120c745617257175b0cf6c66c496
|
|
BLAKE2b-256 checksum How to use checksums |
fda82cf8ad54d2aa495bdad3b7bce8a8509d5518a347a4d31e71f129e8fd14a6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Release files / hermes_memanto-0.1.1-py3-none-any.whl
| Download URL | hermes_memanto-0.1.1-py3-none-any.whl |
|---|---|
| Size | 17.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
1d3a573af48edef69f4d891a85b4a3af70b56203669f941724a8a512d77bdad4
|
|
BLAKE2b-256 checksum How to use checksums |
be8780fc80cb9731694455cb906b74d97060bcca1e958832cab456cd26284ce1
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|