Hermes Plugin
Two Hermes paths: runtime-managed and local-first through `coppermind patch hermes`, or the advanced standalone cloud-connected package.
Hermes is the best fit when you want Coppermind woven into the session lifecycle instead of surfaced mainly as explicit tools.
Recommended path: runtime-managed Hermes
For most users, this is the right path:
npm install -g coppermind
coppermind setup
coppermind patch hermes
coppermind daemon start
coppermind doctor
What this gives you:
- local-first setup
- no Coppermind account required
- runtime-managed Hermes patching
coppermind doctoras the repair surface
What coppermind patch hermes does
The patcher installs the managed Coppermind integration into the normal Hermes path and writes the required runtime configuration for the local Coppermind daemon.
You should not need to wire the local backend yourself.
Secondary path: standalone published package
Use the standalone package only when you explicitly want the cloud-connected route:
pip install hermes-coppermind
export COPPERMIND_API_KEY="***"
export COPPERMIND_BASE_URL="https://api.coppermindapi.com"
export COPPERMIND_USER_ID="your-session-or-user-id"
That is an advanced path. It is not the default onboarding story.
How Hermes uses memory
Hermes integration is lifecycle-driven:
- retrieve memory before the model call
- ingest useful context after the model call
- optionally persist a higher-level summary at session boundaries
This makes Hermes feel more like memory is built into the conversation loop.
How to verify it worked
- start a Hermes session
- mention a concrete fact worth remembering
- continue the session or start the next one
- confirm the earlier fact is retrieved when relevant
If the integration is healthy, capture and retrieval happen without interrupting the normal session flow.
Failure behavior
Hermes should fail soft. If retrieval or ingest fails, the session should continue and the failure should surface through diagnostics and logs rather than hard-breaking the conversation turn.
When to choose MCP instead
Use the local MCP path instead if you want:
- explicit memory tools
- visible tool invocation
- one generic integration shape across multiple clients
In that case, start with Cursor and Other MCP Clients or the client-specific guide you are using.