Hindsight Memory

Edited by Lawrence Beckwith on August 24, 2026 at 12:42 AM UTC

Hermes Agent's long-term memory is provided by Hindsight, a persistent memory system for AI agents from Vectorize. It recalls relevant context before each LLM call and retains conversations across sessions, so Hermes keeps continuity beyond a single chat.

Vendor documentation: hindsight.vectorize.io

How it plugs into Hermes

Mechanism Hook Purpose
Auto-recall pre_llm_call Queries memories and injects the result into the system prompt
Auto-retain post_llm_call Stores the exchange after each response
Explicit tools model-invoked hindsight_retain, hindsight_recall, hindsight_reflect

OtherU deployment

We run Hindsight in local mode — the embedded server with its own PostgreSQL — rather than the hosted cloud API. It lives on the inference host otheru alongside Ember.

Item Value
Service hindsight-api on otheru
Port 9177
API version 0.8.4
Mode local (embedded server + PostgreSQL)

Enabled features on this deployment: observations, MCP, background worker, bank config API, file upload, document import/export, LLM trace, and document-text storage. Audit log and per-bank LLM health checks are not enabled.

Endpoints

The API is bank-scoped. The main routes are:

Route Purpose
/v1/default/banks/{bank_id}/memories/recall Retrieve relevant memories
/v1/default/banks/{bank_id}/memories/list List stored memories
/v1/default/banks/{bank_id}/reflect Higher-level reflection over memories
/v1/default/banks/{bank_id}/entities Entity records and entity graph
/v1/default/banks/{bank_id}/mental-models Derived mental models
/v1/default/banks/{bank_id}/stats Bank statistics and time series
/health, /version Health and version probes

Configuration

Environment variables:

Variable Purpose
HINDSIGHT_API_URL Endpoint (our local server, not the cloud default)
HINDSIGHT_API_KEY Authentication token
HINDSIGHT_MODE cloud or local — we use local
HINDSIGHT_BANK_ID Memory bank identifier
HINDSIGHT_AUTO_RECALL / HINDSIGHT_AUTO_RETAIN Toggle the automatic hooks

Config file at ~/.hermes/hindsight/config.json:

Key Values
recallBudget low, mid, high
memory_mode hybrid, context, tools
prefetch_method recall or reflect

Setup is via hermes memory setup (select hindsight), or by setting the variables and config file manually.

Operations notes

These are lessons from running it in production — worth reading before touching the service:

  • Run it as **glovepost**, not **root**. Starting it as the wrong user has caused an extended outage.
  • **auto_recall** must be enabled. With it off, memories are still written but never read back, so the system looks healthy while silently doing nothing useful. Recall types in use: observation, world, experience.
  • Memory pressure is shared with Ember. The two compete on the same host; oom_score_adj is tuned so Ember is protected and Hindsight is sacrificed first if the kernel must choose.
  • A fresh start can fail on a latent huggingface-hub dependency — check that before assuming a config fault.