MEMORY.md and USER.md. supermemory adds structure and isolation (profile-scoped and optional multi-container tags) plus retrieval that goes beyond a single flat file.
Get Your API Key
Create a supermemory API key from the API Keys page in the console. Duringhermes memory setup you can paste it when prompted, or persist it in your environment:
Install the memory provider
How It Works
Once configured, the provider runs through Hermes’s normal memory lifecycle:- Prefetch — Relevant memory context can be loaded before each turn.
- Turn capture — Cleaned user/assistant turns can be stored after each completed response.
- Session ingest — The full session can be ingested at session end for richer graph updates.
- Explicit tools — Search, store, forget, and profile tools are available to the model when appropriate.
- Built-in file memory — This does not replace
MEMORY.md/USER.md; mirroring behavior depends on Hermes version and config (see upstream README).
Tools
Kebab-case names are registered for the agent; snake_case aliases remain supported.Commands
Interactive setup: pick supermemory and enter your API key.Environment variables
These variables configure the supermemory provider (for example in your shell or Hermes env file):Multi-container tags
By default, recall and capture use a single primarycontainer_tag (optionally profile-scoped with {identity}). Multi-container mode adds extra named tags so the model can read and write specific namespaces — for example work vs personal, or one bucket per project.
How to enable — In $HERMES_HOME/supermemory.json, set:
enable_custom_container_tagstotruecustom_containersto an array of allowed tag strings (e.g.work,personal,project-alpha)custom_container_instructions(recommended) — short guidance the provider injects into the system prompt so Hermes knows when to use which tag
container_tag stays the default namespace; listed custom tags are additional allowlisted namespaces.
How it works
supermemory_search,supermemory_store,supermemory_forget, andsupermemory_profileaccept an optionalcontainer_tagargument. The tag must be either the primarycontainer_tag(after template resolution) or one ofcustom_containers.- Automatic behavior (turn sync, prefetch, mirroring built-in memory writes, session-end ingest) always uses the primary container only — it does not pick a custom tag for you.
- Instructions in
custom_container_instructionssteer the model toward passing the rightcontainer_tagon tool calls when the user’s intent matches a namespace (e.g. “check my personal notes” →personal).
Config file
Create or edit$HERMES_HOME/supermemory.json. Common keys:
Example profile-scoped container:
Self-hosted API
If you run your own supermemory API, setbase_url (and any other host-specific options) in supermemory.json or via env as documented in the upstream plugin README — alongside your key and container settings.
Next Steps
Hermes + plugin README
Full config table, env vars, and multi-container details.
OpenClaw Plugin
Multi-platform memory for Telegram, WhatsApp, Discord, and more.