Diagram

How each one gets memories in

agentmemory

Hooks capture the session

Plugins and hooks for Claude Code and other agents record session events, with secret scrubbing. A local server (port 3111 by default) runs on the iii-engine runtime. Keyless mode searches with BM25; set an embedding provider for semantic recall.

XERJ

The agent decides what to save

The agent calls the memory store tool or POST /_memory/ns. One binary holds memory next to logs, docs and code. Recall is BM25 by default, semantic or hybrid with the built-in MiniLM model.

agentmemory details are from its README on 2026-10-31. In our test both were driven the same way: one write call per memory over HTTP, no hooks.