Some checks failed
Forge CI / smoke-and-build (pull_request) Failing after 53s
fact_feedback tool existed but was never called automatically. Trust scores never changed after initial assignment. Facts lived forever regardless of accuracy. Changes: - MemoryProvider: add get_prefetched_fact_ids() for feedback loop - HolographicMemoryProvider: track fact IDs returned by prefetch() - MemoryManager: auto_calibrate_feedback() detects corrections and applies helpful/unhelpful feedback automatically - Correction detection: regex patterns for 'no', 'wrong', 'actually', 'i said', 'correction:', 'undo', etc. - MemoryManager: get_pruning_candidates() for below-threshold facts - Wired into run_agent.py: calibration runs after prefetch, before tool loop Trust mechanics: - Successful interaction: trust += 0.05 per fact (helpful) - Correction detected: trust -= 0.10 per fact (unhelpful) - Trust clamped to [0.0, 1.0] - Facts below threshold (default 0.15) are pruning candidates Tests: 23 new tests, all passing. 139 total memory tests green. Refs: Timmy_Foundation/hermes-agent#252
Holographic Memory Provider
Local SQLite fact store with FTS5 search, trust scoring, entity resolution, and HRR-based compositional retrieval.
Requirements
None — uses SQLite (always available). NumPy optional for HRR algebra.
Setup
hermes memory setup # select "holographic"
Or manually:
hermes config set memory.provider holographic
Config
Config in config.yaml under plugins.hermes-memory-store:
| Key | Default | Description |
|---|---|---|
db_path |
$HERMES_HOME/memory_store.db |
SQLite database path |
auto_extract |
false |
Auto-extract facts at session end |
default_trust |
0.5 |
Default trust score for new facts |
hrr_dim |
1024 |
HRR vector dimensions |
Tools
| Tool | Description |
|---|---|
fact_store |
9 actions: add, search, probe, related, reason, contradict, update, remove, list |
fact_feedback |
Rate facts as helpful/unhelpful (trains trust scores) |