Built on the
maximem-vity-sdk Python client. The plugin and its dependencies install into Hermes’ own Python environment.Features
- Long-term memory: Stores facts, preferences, episodes, knowledge, and user profiles in a private cloud-vault. Recalls them semantically across sessions.
- Auto-recall: Fetches relevant memories and injects them as context before each turn.
- Auto-capture: Saves the user/assistant exchange to long-term memory after each turn.
- Memory mirroring: When Hermes’ built-in memory tool records a fact, it is also stored in Vity so it participates in semantic recall.
- Bounded, non-blocking: Recall is time-boxed and degrades to no-memory-this-turn rather than hanging; captures and mirroring run on background threads, so the reply is never blocked.
- Agent tools:
vity_recall,vity_profile,vity_store,vity_forgetfor agent-driven memory operations. - CLI commands: Terminal memory management with
hermes maximem_vity.
API key
You’ll need a Maximem API key to use this plugin.- Sign up or log in at app.maximem.ai.
- Open API Keys in the sidebar.
- Click Generate New Key.
- Copy your key (starts with
mx_...).
Installation
hermes-maximem-vity install does everything in one step:
- Copies the plugin into
~/.hermes/plugins/maximem_vity/, where Hermes discovers it. - Prompts for your API key and saves it to
~/.hermes/.env(no duplicates). - Activates the provider (
memory.provider: maximem_vity).
✅ All set! when finished. Start the agent with hermes.
Already had Hermes (or the gateway) running during install? Restart it to load the newly-activated provider — gateway users run
hermes gateway restart.Non-interactive installs
Pass the key as a flag to skip the prompt — useful for scripted or CI setups:Hitting a PEP-668 "externally-managed-environment" or "pip: command not found" error?
Hitting a PEP-668 "externally-managed-environment" or "pip: command not found" error?
System Python (e.g. Homebrew) blocks global You don’t need to match Python versions — the
pip install. Use pipx (recommended) or a virtual environment:maximem-vity-sdk dependency is installed into Hermes’ own environment automatically.Verify installation
Update or remove
The installer always overwrites, so re-running it is how you upgrade:Configuration
API key (required)
The API key is a secret and is stored in~/.hermes/.env.
The API key owns the memory space — use a separate key per account that needs isolated memories.
Changing your key — a plain re-install keeps the existing key (you’ll see
already configured). To replace it, pass the new key explicitly; it’s written de-duplicated, so no stale copies are left behind:
~/.hermes/.env directly, then restart Hermes (gateway users: hermes gateway restart).
Tunables (optional)
Non-secret options live in$HERMES_HOME/vity.json, which is created on install.
Self-hosted backend (optional)
To point the plugin at a non-default Maximem API URL, setMAXIMEM_ENDPOINT (or endpoint in vity.json).
How it works
Once installed and configured, the plugin works automatically:- Recall before each turn — a semantic search runs against your current message. It is bounded by
recall_timeout(default 6s): if matches return in time they are injected as context; otherwise the turn proceeds with no memory rather than waiting. - Capture after each turn — the user/assistant exchange is saved to long-term memory.
- Memory mirroring — when Hermes’ built-in memory tool records a fact, it is also stored in Vity so it participates in semantic recall.
Recall runs synchronously on the pre-turn path but is time-boxed, so a slow or unhealthy backend degrades to no-memory-this-turn instead of hanging. Capture and memory-mirroring writes run on background threads, so they never block the reply.
Agent tools
The plugin exposes four tools to the agent:
In chat, this is transparent: ask the agent to “remember that…” and it calls
vity_store; ask “what do you know about…” and it calls vity_recall. No special commands are required.
Example interaction:
CLI commands
Manage memory directly from your terminal.Troubleshooting
”API key not found” error
Confirm the key and connection:maximem-vity-sdk not installed even after pip install
Hermes runs inside its own isolated environment, which is usually not the Python that ran pip install (e.g. Anaconda or system Python). The SDK must live in Hermes’ environment — and hermes-maximem-vity install puts it there for you. Just re-run it:
Memories not being recalled
-
Check config: ensure
auto_recallistruein$HERMES_HOME/vity.json. -
Check prompt length: prompts shorter than
min_prompt_length(default: 5) won’t trigger recall. -
Verify the provider is active:
Confirm
maximem_vityshows as active. If not, runhermes config set memory.provider maximem_vity.
Provider unset after setup
The interactivehermes memory setup wizard can drop pasted input. Set the provider directly instead:
Windows: hermes-maximem-vity is “not recognized as a command”
pip install --user on Windows drops the console script in a Scripts folder that isn’t on PATH. Add it for the current PowerShell session, then run install:
& "$(python -m site --user-base)\Python313\Scripts\hermes-maximem-vity.exe" install. To make it permanent, add that Scripts folder to your user PATH in Environment Variables.
Support
- Documentation: docs.maximem.ai/vity
- API keys: app.maximem.ai/api-keys
- Email: [email protected]
- Twitter / X: @MaximemAI