hindsight (vectorize-io/hindsight)

claude-code
Searching Database…

51.9K ·GitHub
What is this?Hindsight is an agent memory system that helps AI agents learn over time instead of just recalling raw conversation history, aiming to outperform RAG and knowledge-graph approaches on long-term memory tasks.
Is this a library I import or a server I run?It is mainly a server (run via Docker, bare metal, Kubernetes, or Hindsight Cloud) that you talk to through Python, Node.js, Go, CLI or REST clients, though an embedded mode (pg0) lets you run it with no server at all.
How do I get it running?The recommended path is Docker to start a server exposing an API and UI; alternatives are pip for bare metal, a Helm chart for Kubernetes, or signing up for the managed Hindsight Cloud and pointing a client at it.
Which LLM providers does it need?Hindsight works with 25+ LLM providers including hosted ones like OpenAI, Anthropic and Gemini, fully local ones like Ollama and LM Studio, any OpenAI-compatible endpoint, and it can piggyback on existing ChatGPT Plus/Pro or Claude Pro/Max subscriptions without a separate API key.
Any install pitfalls I should know about?On Intel-based Macs the standard bare-metal pip install is only partially supported; you need the hindsight-all-slim package variant instead of the regular package.
How is Hindsight different from plain RAG or a knowledge graph?Instead of just embedding and retrieving text chunks, Hindsight extracts facts, entities and relationships into biomimetic structures (world facts, experiences, observations, mental models) and consolidates them over time into refined beliefs, which it says outperforms RAG and knowledge-graph approaches on long-term memory benchmarks like LongMemEval.
What do retain, recall and reflect actually do?Retain extracts facts and relationships from new input and stores them; recall runs four parallel strategies (semantic, BM25 keyword, graph, temporal) and merges the results with reranking; reflect does deeper analysis across memories to answer open-ended questions, like a sales agent reflecting on why some outreach worked.
Can I add memory to my agent without rewriting its logic?Yes, the LLM Wrapper lets you swap your existing LLM client (e.g. OpenAI or Anthropic SDK) for a wrapped version in about two lines of code, and memories are then stored and retrieved automatically on every call.
What is a memory bank in Hindsight?A bank is an isolated memory store, essentially one brain per user, agent or project, with strict isolation so there's no cross-bank leakage, and each bank can carry its own disposition traits that shape how reflect reasons over it.
Size
787.9 MB
Stars
51.9K
Age
11mo
Commits · 90 Days