Skip to main content

HarnessMemory for Hermes

Hermes MemoryProvider plugin backed by harness-memory.

For the full server-side OpenClaw + Hermes usage guide, see:

docs/harnessmemory-openclaw-hermes-usage.md

Install

From PyPI — pip install harness-memory-hermes pulls in harness-memory as a normal dependency, so this one command is enough:

pip install harness-memory-hermes

harness-memory-hermes install \
  --hermes-home ~/.hermes \
  --hermes-source ~/.hermes/hermes-agent \
  --force

harness-memory-hermes doctor \
  --hermes-home ~/.hermes \
  --hermes-source ~/.hermes/hermes-agent

From a monorepo source checkout, install this plugin package (editable) instead of PyPI:

python3 -m venv ~/.venv/harnessmemory
~/.venv/harnessmemory/bin/pip install -e ~/harness-memory/plugins/hermes

~/.venv/harnessmemory/bin/harness-memory-hermes install \
  --hermes-home ~/.hermes \
  --hermes-source ~/.hermes/hermes-agent \
  --source-dir ~/harness-memory/plugins/hermes/harnessmemory \
  --force

~/.venv/harnessmemory/bin/harness-memory-hermes doctor \
  --hermes-home ~/.hermes \
  --hermes-source ~/.hermes/hermes-agent

--source-dir only matters if you want to install from a specific checkout path rather than wherever pip put this package; it defaults to this package's own installed location.

The installer copies this provider to:

< HERMES_SOURCE >/plugins/memory/harnessmemory/

and activates it by setting:

memory:
  provider: harnessmemory

Manual install shape

If you do not use harness-memory-hermes install (e.g. Hermes' own native plugins install <git-url> flow), copy this directory into Hermes' memory plugin directory as:

< HERMES_SOURCE >/plugins/memory/harnessmemory/

Then activate:

hermes config set memory.provider harnessmemory

or edit ~/.hermes/config.yaml so memory.provider is harnessmemory.

Hermes' Python environment must also be able to import harness_memory. For source deployments, either install the project into Hermes' venv or add the source src/ directory through a .pth file.

Data path and config

By default the provider stores data under the active Hermes profile:

$HERMES_HOME/harnessmemory/memory.sqlite
$HERMES_HOME/harnessmemory.json

Do not hard-code ~/.hermes; Hermes profiles rely on hermes_home isolation.

Host Markdown indexing is separate from HarnessMemory's own SQLite store. By default the provider watches $HERMES_HOME/memories for Hermes built-in memory files:

  • MEMORY.md
  • USER.md
  • allowlisted topical Markdown such as topics/*.md and projects/*.md

It does not scan $HERMES_HOME/state.db, sessions/, logs/, or arbitrary **/*.md.

harnessmemory.json supports the fields exposed through hermes memory setup:

{
  "profile": "balanced",
  "namespace": "hermes__default",
  "db_path": "$HERMES_HOME/harnessmemory/memory.sqlite",
  "recall": {
    "default_max_results": 5,
    "default_corpus": "all",
    "raw_policy": "fallback",
    "layer_order": ["atom", "page", "raw"]
  },
  "capture": {
    "include_roles": ["user", "assistant"],
    "min_message_chars": 0,
    "include_tool_calls": false,
    "include_tool_results": false,
    "skip_memory_echo": true,
    "host_files_watcher": true
  },
  "host_files_root": "$HERMES_HOME/memories",
  "host_files_allow": ["topics/*.md", "projects/*.md"],
  "privacy": {
    "redact_secrets": true,
    "redact_patterns": [],
    "store_raw_content": true,
    "store_tool_payloads": false
  }
}

capture and privacy apply to sync_turn(), on_memory_write(), and on_pre_compress() writes. recall applies to memory_search.

Exposed model tools

  • memory_search
  • memory_get

Provider CLI

When memory.provider=harnessmemory, Hermes exposes:

hermes harnessmemory status
hermes harnessmemory search "query" -n 5 --corpus all
hermes harnessmemory show raw/2026-06-04/evt_xxx.md --lines 40

These commands use the same memory_search / memory_get contract exposed to the model.

Lifecycle

  • prefetch(query) recalls context before a model call.
  • sync_turn(user, assistant) writes L0 raw events in a background thread.
  • on_memory_write(action, target, content) mirrors built-in MEMORY.md / USER.md writes.
  • on_pre_compress(messages) captures context before compression.

Release files for harness-memory-hermes 0.3.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for harness-memory-hermes 0.3.0
File Size Uploaded
harness_memory_hermes-0.3.0.tar.gz 13.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for harness-memory-hermes 0.3.0
File Interpreter ABI Platform
harness_memory_hermes-0.3.0-py3-none-any.whl Python 3 none any Details

Total release size: 31.5 kB

Release files / harness_memory_hermes-0.3.0.tar.gz

Download URL harness_memory_hermes-0.3.0.tar.gz
Size 13.4 kB
Tags Source
SHA-256 checksum
How to use checksums
9347998d0fa52d03b1f59e20a654e032a80d2b9c44dc158fd684fa4cbf6b8ff7
BLAKE2b-256 checksum
How to use checksums
ae8507a40e846554e449d3dab7a5780f0f116076ffa46a9fae42dd4427118323
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release files / harness_memory_hermes-0.3.0-py3-none-any.whl

Download URL harness_memory_hermes-0.3.0-py3-none-any.whl
Size 18.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ff79cdbedb7e76c54b586ff0e59ba53465a92076b06cf109a54dd1e8e67e8975
BLAKE2b-256 checksum
How to use checksums
6c6def50bb4c9149dd65896d3de24c9ef0005a319296b6d928c759e18c840ec0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.12.3

Release history Release notifications | RSS feed

This release

0.3.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page