Hermes Agent 64a0f56453 deploy: ship ump-recall-sidecar.service as installable unit
Until now the ump-recall sidecar was started ad-hoc as a background process
and died with the session. This commit ships the systemd unit file that
makes it persist across reboots and Hermes gateway restarts.

The unit:
  - Listens on 127.0.0.1:4380 (the sidecar port the MCP shim uses)
  - Depends on ump-memory.service (canonical ump store at :4317)
  - Reads env from /etc (UMP_URL, QDRANT_URL, OLLAMA_URL, GRAPH_FILE)
  - Restarts on crash (RestartSec=3)
  - Logs to journal under SyslogIdentifier=ump-recall-sidecar

Verifies cleanly via:  curl http://127.0.0.1:4380/health
Returns upstreams reachable + graph loaded.

Install (idempotent):
  sudo cp deploy/ump-recall-sidecar.service /etc/systemd/system/
  sudo systemctl daemon-reload
  sudo systemctl enable --now ump-recall-sidecar.service
2026-07-13 21:30:44 -07:00
2026-07-13 02:21:03 +00:00

self-directed-learning

Self-directed learning framework for Hermes / Krystie — multi-strategy retrieval over UMP memory, with skill detection, decay, and triadic review.

What this is

A continuous-learning loop for AI agents:

  • Retrieval substrate — multi-strategy (FTS5 + vector + graph) RRF fusion with ACT-R re-ranking, served as an MCP shim so Hermes/Krystie can use it transparently through their existing UMP tool surface.
  • Memory hygiene — nightly decay (per-kind rates, atomic writes, automatic backups), access tracking (frequency + last_accessed_at) feeding the decay and re-ranker.
  • Knowledge graph — entity extraction + typed relations + co-occurrence edges; BFS expansion surfaces related URNs even when the direct text doesn't match.
  • Triadic review — Claude + Codex (via Hermes OAuth / ChatGPT Pro subscription) as independent judges for claims before they're written to long-term memory.
  • Cron-driven framework — skill gap detection, spaced repetition, foraging, reflective journaling, self-measure. All run autonomously and feed back into the retrieval substrate.

Phases shipped

Phase What Tests
1 Sidecar on :4380 + 3-channel RRF baseline 0.500 → 1.000 (+50pp)
2 Graph channel (typed relations + co-occurrence) 12 unique top-5 graph-only wins
3 ACT-R re-ranker 84% top-5 retention, 4/20 #1 changes
4 Decay script 20/20 tests, nightly cron
5 Access tracking 28/28 tests, feeds decay + re-ranker
6 Co-occurrence edges (in code) (tests pending)
7 Triadic review (judge.py) Claude + Codex wired

Stack

  • Language: Node.js 18+ (sidecar, MCP shim), Python 3.11+ (decay, framework scripts)
  • Dependencies: UMP (@universalmemoryprotocol/core 0.1.0), Ollama (snowflake-arctic-embed2 1024-dim), Qdrant (memories_ump collection), Express, undici, MCP SDK 1.29.
  • Repo: http://100.81.59.99/sami7777/self-directed-learning (DNS3 Gitea)
  • Local path: /root/ump-recall/ (directory name kept for stability of running processes; only the repo was renamed)

Run

npm start                          # sidecar on :4380
node src/ump-recall-mcp.js         # MCP shim (stdio)
python3 scripts/ump_decay.py --apply    # nightly decay
python3 scripts/judge.py --claim "..."  # Claude + Codex review
npm test                           # full test suite

Architecture

See /root/.hermes/skills/autonomous-ai-agents/agent-self-improvement-framework/ for the full framework spec.

S
Description
Self-directed learning framework for Hermes/Krystie: multi-strategy retrieval (3-channel RRF + ACT-R re-rank), decay, access tracking, triadic review (Claude + Codex judges). Replaces ump-recall.
Readme MIT 170 KiB
Languages
JavaScript 52.1%
Python 47.9%