# hindsight

> Memory server that lets AI agents store, search and learn from past interactions

- Repository: https://github.com/vectorize-io/hindsight
- Category: Memory, RAG & data
- Stars: 52,795 · Forks: 6,213 · Language: Python · License: MIT
- Experience: Some experience
- Page: https://ir.adyog.com/repos/vectorize-io/hindsight/

Agents forget. Each new chat starts blank unless you add a way to save and look up past information. Hindsight is a server that does this job. Your agent sends it information to keep, and later asks it questions.

You work with it through three operations: retain (store something), recall (search stored memories) and reflect (generate an answer shaped by what it knows). Memories live in named banks, such as one per user or per code repo. It runs on an LLM you choose, and the Docker setup keeps data in an embedded Postgres.

The README says it aims at agents that learn, not just recall conversation history, and sets itself against plain RAG and knowledge graphs. It cites top results on the LongMemEval benchmark and notes that other vendors' scores are self-reported. Treat those claims as the authors' own and check the live benchmark page.

## What it does

- **Retain, recall, reflect**: Three core calls cover storing information, searching it, and producing an answer based on stored memories. Memories are grouped into banks.
- **Two-line LLM wrapper**: The hindsight-litellm package wraps an OpenAI or Anthropic client. It recalls relevant memories before each call and saves the conversation after it.
- **Many ways to run it**: Run it with Docker, Docker Compose with external Postgres, pip, a Helm chart on Kubernetes, or embedded in Python. A hosted Hindsight Cloud option also exists.
- **Wide LLM provider support**: It works with 25+ providers, including hosted ones, local ones such as Ollama and LM Studio, and any OpenAI-compatible endpoint.
- **Coding agent memory**: One npx package sets up per-repo memory for coding agents such as Claude Code, Codex CLI and Cursor CLI, built from git history and past sessions.

## What you could build

- Add long-term memory to a chatbot so it remembers each user across sessions.
- Give a coding agent persistent knowledge of a repo's architecture and conventions.
- Wrap an existing OpenAI or Anthropic client to get memory with almost no code changes.
- Connect memory to agent frameworks like LangGraph, CrewAI or LlamaIndex.
- Run a fully local memory setup using Ollama or LM Studio as the LLM.

## Who it's for

Developers building agents or chatbots who are comfortable with Docker or pip and have an LLM API key or a local model.

## Get started

Start the server with Docker, passing your LLM API key. Then install a client, such as the Python one, and call retain and recall against http://localhost:8888. The UI is on port 9999.

```
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
```
```
pip install hindsight-client -U
```

Tags: agent-memory, llm, agents, rag, self-hosted
