Cognee - The Open-Source AI Memory Platform for Agents
Demo . Docs . Learn More · Join Discord · Join r/AIMemory . Community Plugins & Add-ons
Cognee is the open-source AI memory platform that gives AI agents persistent long-term memory across sessions. Ingest data in any format, build a self-hosted knowledge graph, and let every agent recall, connect, and act with full context
🌐 This README is also available in:
Deutsch | Español | Français | 日本語 | 한국어 | Português | Русский | 中文
📄 Read the research paper: Optimizing the Interface Between Knowledge Graphs and LLMs for Complex Reasoning — Markovic et al., 2025
When to use Cognee
- Build a Company Brain. Bring documentation, conversations, tickets, code, and agent work into shared memory. Help your team and agents connect a decision to the discussion and implementation behind it. Explore Company Brain.
- Give agents memory across runs. Retain project context, past decisions, fixes, and learned rules. Distill useful session lessons into durable knowledge that another session can retrieve. Connect your agent.
- Ground agents in your domain. Structure memory around the entities and relationships your application needs, with custom data models and ontologies. Explore ontologies.
Choose your starting point
| I want to… | Start here |
|---|---|
| See a memory graph without an API key | Bundled demo |
| Build with text, code, and session memory | Python quickstart |
| Give an existing agent memory | Plugins and MCP |
| Run Cognee on my infrastructure | Deployment options |
| Use a managed service | Cognee Cloud |
Quickstart
Requires Python 3.10–3.14.
You can install Cognee with pip, uv, or your preferred Python package manager.
uv pip install cognee
Try it without an API key
cognee-cli demo
Step 2: Configure the LLM
import os
os.environ["LLM_API_KEY"] = "YOUR OPENAI_API_KEY"
Alternatively, create a .env file using our template.
The default uses OpenAI for language models and embeddings. Processing and generated answers make provider calls. See installation, other providers, or local Ollama models for other setups.
import cognee
import asyncio
async def main():
# Store permanently in the knowledge graph (runs add + cognify + improve)
await cognee.remember("Cognee turns documents into AI memory.")
# Store in session memory (fast cache, syncs to graph in background)
await cognee.remember("User prefers detailed explanations.", session_id="chat_1")
# Query with auto-routing (picks best search strategy automatically)
results = await cognee.recall("What does Cognee do?")
for result in results:
print(result)
# Query session memory first, fall through to graph if needed
results = await cognee.recall("What does the user prefer?", session_id="chat_1")
for result in results:
print(result)
# Delete when done
await cognee.forget(dataset="main_dataset")
if __name__ == '__main__':
asyncio.run(main())
How Cognee works
Cognee builds connected memory from different sources. Text becomes entities, relationships, and searchable chunks; code becomes a graph of symbols and dependencies. Session distillation curates accepted lessons into permanent memory.
At query time, retrieval selects relevant graph, vector, or code context. Your application can inspect the retrieved evidence and use it to answer a question or continue an agent task.
| Operation | What it does | Learn more |
|---|---|---|
remember |
Store content or code in permanent memory, or in a session when a session ID is supplied. | Store memory |
recall |
Retrieve context and answers, using automatic routing or a chosen search strategy. | Query memory |
improve |
Enrich memory, apply feedback, and bridge session knowledge into the graph. | Improve memory |
forget |
Remove a specific item or dataset. | Delete memory |
Explore the architecture and session lifecycle.
Connect your agent
Install the Claude Code plugin:
claude plugin marketplace add topoteretes/cognee-integrations
claude plugin install cognee-memory@cognee
or Codex plugin
Make sure to enable hooks:
# ~/.codex/config.toml
[features]
hooks = true
codex plugin marketplace add topoteretes/cognee-integrations --ref main
codex plugin add cognee@cognee
Follow the plugin setup guide to configure local or remote memory.
| Interface | Start here |
|---|---|
| Claude Code memory plugin | Install and configure the plugin |
| OpenClaw memory plugin | Install @cognee/cognee-openclaw |
| Cursor, Cline, and other M |