zep
Zep is a memory service for agents that treats time as first-class. Every fact in memory has an 'asserted at' and 'invalidated at' timestamp — so your agent can correctly answer 'who was the CX lead in Q1?' even after the role changed. It's the right pick when audit trails or temporal reasoning matter.
- Compliance-sensitive industries (healthcare, finance, aerospace)
- Relationship-heavy work (agencies, VCs, sales orgs) where roles change
- Long-running agents where the world changes faster than the agent's beliefs
What you'll do
Zep ships as a docker-compose-ready service. You call it via HTTP or the Python SDK. Budget 15 minutes.
Before you start
- Docker + docker compose installed
- An OpenAI or Anthropic API key (for extraction)
- Python 3.10+ if you want to use the SDK
Step-by-step install
- 011. Clone the repo
git clone https://github.com/getzep/zep.git cd zep
- 022. Configure
Copy .env.example to .env. Set your LLM API key. Defaults for ports and storage are fine to start.
- 033. Spin it up
docker compose handles Postgres, the Go server, and supporting services.
docker compose up -d
- 044. Verify it's running
Visit http://localhost:8000/api/v2/health — should return healthy.
- 055. Use the Python SDK
Install the SDK and write a minimal test.
pip install zep-python # test.py from zep_python import ZepClient client = ZepClient(base_url="http://localhost:8000") # Add a memory for a user client.memory.add( session_id="amara-session", messages=[{"role": "user", "content": "I'm the CX lead, effective April 15 2026."}] ) # Recall later results = client.memory.search(session_id="amara-session", text="who is the CX lead?") print(results)
Your first 10 minutes
- 01Add a few facts with timestamps. Invalidate one (e.g. 'Amara is no longer CX lead as of 2026-06-01').
- 02Ask a temporal question: 'Who was CX lead on 2026-05-15?' Confirm zep returns the right answer.
- 03Connect via MCP bridge (community — check the repo) if you want zep behind Claude Code.
- 04Read the zep docs on graph traversal — it's where the real power is.
- 05Add Cognition CLO for per-employee retention modeling.
Troubleshooting
Docker compose fails on pgvector.
Make sure you're using the compose file from the repo (not an old version). It includes the correct Postgres image with pgvector preinstalled.
Queries are slow.
Zep's default config is conservative. Tune the ANN index parameters for your dataset size — docs have a tuning guide.
zep holds the knowledge. Cognition CLO models retention per employee per concept using a Weibull forgetting curve — so you see decay before it becomes a missed SOP or a failed audit.