explaingit

mukundakatta/hermes-agentmemory

4PythonAudience · developerComplexity · 3/5ActiveLicenseSetup · moderate

TLDR

Auditable pull-model memory plugin for Hermes Agent. Synchronous writes, real deletes, and a trace log of every recall, built on the Claude API.

Mindmap

mindmap
  root((hermes-agentmemory))
    Inputs
      Agent recall calls
      Forget commands
      Drift queries
    Outputs
      Synthesized summaries
      trace.jsonl audit log
      Drift snapshots
    Use Cases
      Add audit trail to agent memory
      Hard delete past events
      Inspect retrieval quality
    Tech Stack
      Python
      Anthropic SDK
      Hermes Agent
      JSONL

Things people build with this

USE CASE 1

Give Hermes Agent a memory plugin that logs every retrieval to a file

USE CASE 2

Replace Mem0 or Honcho when you need real deletes for privacy or GDPR

USE CASE 3

Track retrieval drift over a rolling window of agent sessions

USE CASE 4

Force memory injection to be explicit and visible to the user

Tech stack

PythonAnthropic SDKHermes AgentJSONL

Getting it running

Difficulty · moderate Time to first run · 30min

Requires an existing Hermes Agent install and an ANTHROPIC_API_KEY for the summarizer.

MIT license lets you use, modify, and ship the code freely as long as the copyright notice stays in.

In plain English

This project is a memory plugin for Hermes Agent, an open-source AI agent. The plugin lets the agent store and recall things from past conversations, but it does so in a way the author calls pull-model and auditable. The agent only retrieves memory when it explicitly asks for it, and every retrieval is written to a log file the user can read. The README spends most of its space explaining why this exists when Hermes already has memory backends like Mem0 and Honcho. The author argues those backends consolidate events into derived summaries in the background, which makes two things awkward. Deletes are not always real, because the original event can still influence a summary that was already built. And memory injection is opaque, because the user does not get to see what was pulled in until something goes wrong. This plugin, in contrast, never does background work, performs writes synchronously, deletes events fully, and writes a trace record every time it prefetches. Installation is a clone into the Hermes user-plugins directory, a pip install of the anthropic Python client, and a config command that points Hermes at the new provider. The summarizer calls the Claude API, so an ANTHROPIC_API_KEY is required. Other settings include the Claude model id, how many past events to pull per prefetch, the token budget for the summary, and the path of the trace log file. The plugin exposes three tools to the agent: recall to surface matching past events, forget to delete a session or a single event with no tombstone left behind, and drift to report on retrieval quality over a rolling window. A tail of the trace.jsonl file shows the intent, the event ids used, the summary, and the drift snapshot for each call. The README is honest about a trade-off: the first turn of each session pays a small delay because the summary is built on demand rather than pre-warmed. The plugin is released under the MIT license.

Copy-paste prompts

Prompt 1
Swap the Claude summarizer in hermes-agentmemory for a local Ollama model and keep the same trace format
Prompt 2
Add a CLI subcommand to hermes-agentmemory that tails trace.jsonl and pretty-prints recall events
Prompt 3
Write a pytest suite that proves forget removes events with no influence on later summaries
Prompt 4
Extend hermes-agentmemory with a per-user token budget setting in the config file
Prompt 5
Build a small web viewer that loads trace.jsonl and shows drift as a chart over time
Open on GitHub → Explain another repo

Generated 2026-05-22 · Model: sonnet-4-6 · Verify against the repo before relying on details.