MemoryLake memory plugin for hermes-agent — persistent memory, document retrieval, web search, and open data access.
Project description
memorylake-hermes
MemoryLake memory plugin for hermes-agent. Gives the agent persistent long-term memory, document retrieval, web search, and open data access via the MemoryLake platform API.
Features
-
7 tools exposed to the LLM:
Tool Description memorylake_searchUnified semantic search across memories AND uploaded documents memorylake_storeSave facts, preferences, decisions to long-term memory memorylake_listList all stored memories for the user memorylake_forgetDelete a specific memory by ID memorylake_downloadGet pre-signed download URL for a document memorylake_web_searchWeb search across 12 domains (web, academic, news, code, ...) memorylake_open_dataSearch open datasets (arXiv, PubMed, SEC, FRED, patents, ...) -
Auto-capture: every conversation turn is sent to MemoryLake for server-side memory extraction (background, non-blocking).
-
Conflict detection: surfaces unresolved memory conflicts in search results.
-
Two recall modes:
tool_driven(default) — the model is instructed to callmemorylake_searchas its first action every turn, ensuring consistent memory recall regardless of model.prefetch— the framework runs a unified search before the LLM call and injects results into context automatically.
Installation
# Auto-detect hermes-agent location, symlink (dev mode)
./install.sh
# Explicit path
./install.sh /path/to/hermes-agent
# Copy files instead of symlink
./install.sh --copy
The plugin is installed to plugins/memory/memorylake/ inside hermes-agent.
Configuration
Set in ~/.hermes/.env:
MEMORYLAKE_API_KEY=sk-... # Required — get at https://app.memorylake.ai
MEMORYLAKE_PROJECT_ID=proj-... # Required — from your MemoryLake project
Then enable the provider in ~/.hermes/config.yaml:
memory:
provider: memorylake
Optional Environment Variables
| Variable | Default | Description |
|---|---|---|
MEMORYLAKE_HOST |
https://app.memorylake.ai |
MemoryLake server URL |
MEMORYLAKE_USER_ID |
default |
User identifier (auto-set to platform user ID in gateway mode) |
MEMORYLAKE_TOP_K |
5 |
Max recall results |
MEMORYLAKE_SEARCH_THRESHOLD |
0.3 |
Min similarity score (0-1) |
MEMORYLAKE_RERANK |
true |
Rerank search results |
MEMORYLAKE_MEMORY_MODE |
tool_driven |
Recall mode: tool_driven or prefetch |
MEMORYLAKE_AUTO_UPLOAD |
true |
Auto-upload user documents to MemoryLake |
MEMORYLAKE_WEB_SEARCH_INCLUDE_DOMAINS |
Comma-separated list of domains to include in web search | |
MEMORYLAKE_WEB_SEARCH_EXCLUDE_DOMAINS |
Comma-separated list of domains to exclude from web search | |
MEMORYLAKE_WEB_SEARCH_COUNTRY |
Country code for web search results | |
MEMORYLAKE_WEB_SEARCH_TIMEZONE |
Timezone for web search results |
Config can also be set via ~/.hermes/memorylake.json (overrides env vars).
Memory Modes
tool_driven (default, recommended)
The system prompt instructs the model to call memorylake_search as its first action on every turn. A per-turn reminder is also injected. This ensures consistent memory recall regardless of which LLM provider you use.
prefetch
The framework calls prefetch() before each LLM call, running a parallel unified search (memories + documents) with the current user message. Results are injected into context automatically. The model does not need to call any tool to receive memory context.
License
Proprietary. Requires a MemoryLake API key.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file memorylake_hermes-1.1.1.tar.gz.
File metadata
- Download URL: memorylake_hermes-1.1.1.tar.gz
- Upload date:
- Size: 29.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
de365565ffe3dedb3a4b784f3fdb241fa526243b5fb12e6d4b60d917df146772
|
|
| MD5 |
5e3f24c158084ac1458abc046a0bee7b
|
|
| BLAKE2b-256 |
e244ed49d901000b23e6fca3f7aaf7b124a00b5fa46912579dd1ed85d2ce7ef8
|
Provenance
The following attestation bundles were made for memorylake_hermes-1.1.1.tar.gz:
Publisher:
pypi.yml on memorylake-ai/memorylake-hermes
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
memorylake_hermes-1.1.1.tar.gz -
Subject digest:
de365565ffe3dedb3a4b784f3fdb241fa526243b5fb12e6d4b60d917df146772 - Sigstore transparency entry: 1316942677
- Sigstore integration time:
-
Permalink:
memorylake-ai/memorylake-hermes@b80128bb0751b8d694a3f9ec013f8c61e505a391 -
Branch / Tag:
refs/tags/v1.1.1 - Owner: https://github.com/memorylake-ai
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@b80128bb0751b8d694a3f9ec013f8c61e505a391 -
Trigger Event:
push
-
Statement type:
File details
Details for the file memorylake_hermes-1.1.1-py3-none-any.whl.
File metadata
- Download URL: memorylake_hermes-1.1.1-py3-none-any.whl
- Upload date:
- Size: 36.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ca3e2aeec110ad94a8140b3b81ff736354567d50ef0ea46c7db9acfd09a26c86
|
|
| MD5 |
f5b4836208bf579f9329bfcfc5384779
|
|
| BLAKE2b-256 |
46dd238fd6271c098a480efe493aa8f0941b95c1a75cf9fc53c05b1bd13a4708
|
Provenance
The following attestation bundles were made for memorylake_hermes-1.1.1-py3-none-any.whl:
Publisher:
pypi.yml on memorylake-ai/memorylake-hermes
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
memorylake_hermes-1.1.1-py3-none-any.whl -
Subject digest:
ca3e2aeec110ad94a8140b3b81ff736354567d50ef0ea46c7db9acfd09a26c86 - Sigstore transparency entry: 1316942691
- Sigstore integration time:
-
Permalink:
memorylake-ai/memorylake-hermes@b80128bb0751b8d694a3f9ec013f8c61e505a391 -
Branch / Tag:
refs/tags/v1.1.1 - Owner: https://github.com/memorylake-ai
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
pypi.yml@b80128bb0751b8d694a3f9ec013f8c61e505a391 -
Trigger Event:
push
-
Statement type: