Meet the project
Hindsight is a memory layer for AI agents, published by Vectorize AI, Inc. under the MIT licence. The repository was created on 30 October 2025; on 17 October 2026 it had 50,478 stars, 6,106 forks and 129 open issues, its last push was on 16 October, and version 1.0.0 had been out for four days, following 0.10.3 on 8 October. The design rests on a paper by Latimer, Boschi, Neeser, Bartholomew, Srivastava, Wang and Ramakrishnan of Vectorize and Virginia Tech (arXiv 2512.12818, December 2025).
Three calls carry the whole idea. 'retain' hands a piece of text to a language model, which pulls out the facts, the dates, the entities and the relationships between them. 'recall' runs semantic search, keyword search, a graph walk and a time filter in parallel, fuses the rankings, reranks the result with a cross-encoder and trims it to a token limit. 'reflect' reasons over the whole memory bank with dispositions set per bank (how sceptical, how literal, how empathetic), and that is where repeated experience becomes something like a belief. It is also where a memory starts to make decisions.
Read the benchmark claim carefully
The README leads with 94.6% on LongMemEval. That figure comes from Vectorize's own benchmarks site, run with Vectorize's own harness and a Gemini model generating and judging; I could not find which model produced the answers. The paper's own Table 3, on the 500-question S setting with GPT-OSS-120B as judge, reports 83.6% with a 20-billion-parameter open model, 89.0% with GPT-OSS-120B and 91.4% with Gemini-3 Pro, and it takes its baseline scores from Supermemory's own report rather than rerunning them.
The README says the result was 'independently reproduced' by Virginia Tech's Sanghani Center and The Washington Post, and in the next breath that 'other scores are self-reported by software vendors'. I found no write-up of either reproduction. The authors supply the strongest caveat themselves: LongMemEval and LoComo date from the era of 32,000-token context windows, and they concede that 'a naive "dump everything into context" approach scores competitively'. Vectorize's own blog post of 21 May 2026 then ranks Chronos at 95.6%, above Hindsight, with Mastra at 92.8% and Honcho at 90.4% close behind, a spread of about five points at the top of a list Vectorize compiled itself. A benchmark its own champions call saturated cannot choose a memory system for you.
Notice the shifting taxonomy
The paper describes four networks: world facts, the agent's own experiences, opinions carrying a confidence between 0 and 1 and a timestamp, and neutral observations about entities, while the current README lists world facts, experiences, observations and mental models; opinions have gone, and observations are now 'consolidated, evidence-backed beliefs'. Nothing in the README explains what happened to the confidence score, and anyone building on the paper should read the code before relying on it.
Give the agent a memory
The design I would build on it is for an energy firm's operations agent, the kind that drafts maintenance work orders and answers technicians about particular battery strings at particular sites. Every correction an engineer makes to a draft goes into memory through 'retain', tagged with the site and the asset, and so does every tool call that failed, so that before it drafts the next order the agent can call 'recall' with the site and the question in hand, so it reads what went wrong last time before repeating it. A scheduled 'reflect' pass gathers corrections that keep recurring into proposed rules, and an engineer approves or rejects each one before the agent may treat it as standing practice. The solution draws this out in full.
Everything runs in-house. Hindsight stores memory in PostgreSQL with pgvector, ships a single container with an embedded Postgres for trials and a compose file for an external database, and accepts Ollama, LM Studio or llama.cpp as its model provider, while embeddings default to BAAI/bge-small-en-v1.5 running on the CPU and the reranker is a local MiniLM model. Site records need never leave the building.
Expect trouble from small models
Extraction is only as good as the model doing it, and a small local model will sometimes return malformed JSON. The project knows this: its configuration documents HINDSIGHT_API_LLM_STRICT_SCHEMA, with per-operation switches for retain and reflect, and I would turn it on from the first day. Two other things deserve a check before production. The README carries an Umami tracking pixel, and I found nothing either way about telemetry from the server itself; there is also a Cloud tier, and I have not checked which features it gates.
See the design, its diagram and the demo at the solution. The memory is promising; the headline number is marketing.