Hindsight is an agent memory system for developers building AI agents that need to learn over time, not just recall past conversations. Instead of relying purely on vector search or a knowledge graph, it organizes memory into world facts, experiences, observations, and mental models, then exposes three operations (retain, recall, reflect) that agents use to store and act on what they've learned. It's built for teams working with LangChain, CrewAI, coding agents like Claude Code or Cursor, or any custom agent stack that needs persistent, structured memory.
retain stores new information and extracts facts, entities, and temporal data via an LLM; recall searches memories; reflect generates disposition-aware responses grounded in memory.wrap_openai()/wrap_anthropic() and memory is retained and recalled automatically, no other code changes.Hindsight fits agents that need to remember and act on information across sessions: a customer support agent that should recall a user's history, a coding agent that needs to retain architectural decisions and conventions across a project, or a personal assistant that should build an evolving understanding of a person rather than just replaying chat logs. It's also a good fit if you already have an OpenAI/Anthropic client in production and want memory added with a two-line wrapper change rather than a rearchitecture.
It's less useful for simple, stateless request/response tools that never need history, or for cases where a plain vector database already covers your retrieval needs and you don't need fact extraction, temporal reasoning, or consolidated "mental models." If you just need document search (classic RAG over static content), a simpler embedding store may be a better fit than running a memory system built around agent learning.
The fastest path is Docker:
export OPENAI_API_KEY=sk-xxx
docker run -it --pull always --name hindsight --restart unless-stopped -p 8888:8888 -p 9999:9999 \
-e HINDSIGHT_API_LLM_API_KEY=$OPENAI_API_KEY \
-v hindsight-data:/home/hindsight/.pg0 \
ghcr.io/vectorize-io/hindsight:latest
This exposes the API on port 8888 and a UI on port 9999. For bare-metal installs via pip:
pip install hindsight-api
export HINDSIGHT_API_LLM_API_KEY=sk-xxx
hindsight-api
Kubernetes deployments use the Helm chart:
helm install hindsight oci://ghcr.io/vectorize-io/charts/hindsight \
--set api.llm.provider=openai \
--set api.llm.apiKey=sk-xxx \
--set postgresql.enabled=true
Once a server is running, connect a client:
pip install hindsight-client -U
npm install @vectorize-io/hindsight-client
go get github.com/vectorize-io/hindsight/hindsight-clients/go
from hindsight_client import Hindsight
client = Hindsight(base_url="http://localhost:8888")
client.retain(bank_id="my-bank", content="Alice works at Google as a software engineer")
client.recall(bank_id="my-bank", query="What does Alice do?")
For quick prototyping without running a separate server, install the embedded package:
pip install hindsight-all -U
A managed cloud option is also available, reachable at https://api.hindsight.vectorize.io, which skips self-hosting entirely.