Cognee
Cognee is the open-source AI memory platform for agents. Give your AI agents persistent long-term memory across sessions with a self-hosted knowledge graph engine.
Install / Use
npx skills add topoteretes/cogneeInstalls into whichever agent you are using.
README
Cognee - The Open-Source AI Memory Platform for Agents
<p align="center"> <a href="https://www.youtube.com/watch?v=8hmqS2Y5RVQ&t=13s">Demo</a> . <a href="https://docs.cognee.ai/">Docs</a> . <a href="https://cognee.ai">Learn More</a> · <a href="https://discord.gg/NQPKmU5CCg">Join Discord</a> · <a href="https://www.reddit.com/r/AIMemory/">Join r/AIMemory</a> . <a href="https://github.com/topoteretes/cognee-community">Community Plugins & Add-ons</a> </p>
<a href="https://github.com/sponsors/topoteretes"><img src="https://img.shields.io/badge/Sponsor-❤️-ff69b4.svg" alt="Sponsor"></a>
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
<p align="center"> 🌐 This README is also available in: : <!-- Keep these links. Translations will automatically update with the README. --> <a href="https://www.readme-i18n.com/topoteretes/cognee?lang=de">Deutsch</a> | <a href="https://www.readme-i18n.com/topoteretes/cognee?lang=es">Español</a> | <a href="https://www.readme-i18n.com/topoteretes/cognee?lang=fr">Français</a> | <a href="https://www.readme-i18n.com/topoteretes/cognee?lang=ja">日本語</a> | <a href="README_ko.md">한국어</a> | <a href="https://www.readme-i18n.com/topoteretes/cognee?lang=pt">Português</a> | <a href="https://www.readme-i18n.com/topoteretes/cognee?lang=ru">Русский</a> | <a href="https://www.readme-i18n.com/topoteretes/cognee?lang=zh">中文</a> </p> <p align="center"> <img src="assets/cognee-demo.gif" alt="Cognee Demo" width="80%" /> </p> </div>📄 Read the research paper: Optimizing the Interface Between Knowledge Graphs and LLMs for Complex Reasoning — Markovic et al., 2025
About Cognee
Cognee is an open-source AI memory platform for AI Agents. Ingest data in any format, and Cognee continuously builds a self-hosted knowledge graph that gives your agents persistent long-term memory across sessions. Cognee combines vector embeddings, graph reasoning, and cognitive-science-grounded ontology generation to make documents both searchable by meaning and connected by relationships that evolve as your knowledge does.
:star: Help us reach more developers and grow the cognee community. Star this repo!
:books: Check our detailed documentation for setup and configuration.
:crab: Available as a plugin for your OpenClaw — cognee-openclaw
✴️ Available as a plugin for your Claude Code — claude-code-plugin
🦀 Available as a Rust client — cognee-rs
🟦 Available as a TypeScript client — @cognee/cognee-ts
Why use Cognee:
- Easily Build Company Brain - unify data from various sources in one place and enable Agents with your domain knowledge
- Knowledge infrastructure — unified ingestion, graph/vector search, runs locally, ontology grounding, multimodal
- Persistent and Learning Agents - learn from feedback, context management, cross-agent knowledge sharing
- Reliable and Trustworthy Agents - agentic user/tenant isolation, traceability, OTEL collector, audit traits
How it Works
<p align="center"> <img src="assets/remember.svg" alt="Cognee Products" width="80%" /> </p> <p align="center"> <img src="assets/recall.svg" alt="Cognee Recall" width="80%" /> </p>Basic Usage & Feature Guide
To learn more, check out this short, end-to-end Colab walkthrough of Cognee's core features.
Quickstart
Let’s try Cognee in just a few lines of code.
Prerequisites
- Python 3.10 to 3.14
Step 1: Install Cognee
You can install Cognee with pip, poetry, uv, or your preferred Python package manager.
uv pip install cognee
Step 2: Configure the LLM
import os
os.environ["LLM_API_KEY"] = "YOUR OPENAI_API_KEY"
Alternatively, create a .env file using our template.
To integrate other LLM providers, see our LLM Provider Documentation.
Step 3: Run the Pipeline
Cognee's API gives you four operations — remember, recall, forget, and improve:
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())
Use the Cognee CLI
cognee-cli remember "Cognee turns documents into AI memory."
cognee-cli recall "What does Cognee do?"
cognee-cli forget --all
To open the local UI, run:
cognee-cli -ui
Note: The MCP server launched by
cognee-cli -uiruns inside a Docker container. Docker Desktop, Colima, or any OCI-compatible runtime with a workingdockerCLI is required. See Docker & Colima Setup for details.
Run with Docker
Prefer containers? Cognee publishes prebuilt images to Docker Hub on every push to main:
cognee/cognee (the API server) and
cognee/cognee-mcp (the MCP server).
Option A — Docker Compose (build from source)
Clone the repo, create a .env with at least LLM_API_KEY, then:
cp .env.template .env # then edit .env and set LLM_API_KEY
# Start the API server (http://localhost:8000)
docker compose up
# Optional profiles (combine as needed):
docker compose --profile ui up # + frontend on http://localhost:3000
docker compose --profile mcp up # + MCP server on http://localhost:8001
docker compose --profile postgres up # + Postgres/PGVector
docker compose --profile neo4j up # + Neo4j
The
cogneeandcognee-mcpservices publish different host ports (8000vs8001), so you can run both at once.
Option B — Pull the prebuilt image (no clone required)
# Create a minimal .env in the current directory
echo 'LLM_API_KEY="YOUR_OPENAI_API_KEY"' > .env
# API server
docker run --env-file ./.env -p 8000:8000 --rm -it cognee/cognee:main
# MCP server (HTTP transport)
docker pull cognee/cognee-mcp:main
docker run -e TRANSPORT_MODE=http --env-file ./.env -p 8000:8000 --rm -it cognee/cognee-mcp:main
See the MCP server README for SSE/stdio transports, optional extras, and MCP client configuration.
Use with AI Agents
Claude Code
Install the Cognee memory plugin to give Claude Code persistent memory across sessions. The plugin captures prompts, tool traces, and assistant responses into session memory, injects relevant context on every prompt, and syncs session memory into the permanent knowledge graph at session end.
Install from the Claude Code marketplace. The recommended way is from your shell, before launching Claude Code, so the first claude launch is a clean session that bootstraps memory automatically:
# Add the marketplace and install the plugin (one-time, user-scoped)
claude plugin marketplace add topoteretes/cognee-integrations
claude plugin install cognee-memory@cog
Related Skills
codebase-memory-mcp
38.2kHigh-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.
codebase-memory-mcp
38.2kHigh-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.
codebase-memory-mcp
38.2kHigh-performance code intelligence MCP server. Indexes codebases into a persistent knowledge graph — average repo in milliseconds. 158 languages, sub-ms queries, 99% fewer tokens. Single static binary, zero dependencies.
tabularis
4.0kOpen-source desktop SQL workspace for PostgreSQL, MySQL/MariaDB, SQLite and 15+ more databases like DuckDB, ClickHouse, Redis and Firestore. Built-in MCP server for Claude, Cursor and Devin, SQL notebooks and visual EXPLAIN.
