cognee-community skill
Use when the user needs something that ships outside cognee core — community database adapters (Qdrant, Milvus, Weaviate, Redis, Pinecone, FalkorDB, Memgraph, DuckDB, NetworkX, …), data-source connectors (Slack, Gmail, Notion, Confluence, Google Drive), custom tasks/pipelines/retrievers (Exa, ScrapeGraph, codify), Keywords AI observability — or wants to contribute a package to the cognee-community repo.
Is the cognee-community skill safe?
Clean: nothing in its files matched our rules. We read 1 file in the folder on 2026-09-28.
No findings.
Install the cognee-community skill
A skill is a folder. Copy it into your agent's skills folder and the agent loads it when the task matches its description.
git clone --depth 1 https://github.com/topoteretes/cognee.git /tmp/cognee mkdir -p ~/.claude/skills cp -r /tmp/cognee/.claude/skills/cognee-community ~/.claude/skills/cognee-community
In the Claude apps, zip the folder and upload it from the Skills settings. The folder on GitHub
The instructions your agent would load
SKILL.md as published, without the frontmatter. Read it on GitHub
Use and contribute cognee-community packages
Community-maintained plugins live in a separate monorepo: https://github.com/topoteretes/cognee-community. Everything installable is under packages/; experimental/ holds demos (n8n nodes, dlt demos, bauplan, tower) that are not published packages. Each package publishes to PyPI as cognee-community--- and imports as the same name with underscores.
Package families
Using a database adapter
Install, then import the package's register module before cognee touches any engine — registration is what makes the provider name valid:
uv pip install cognee-community-vector-adapter-qdrantimport cognee
from cognee import config
from cognee_community_vector_adapter_qdrant import register # noqa: F401
config.set_vector_db_config(
{
"vector_db_provider": "qdrant",
"vector_db_url": "http://localhost:6333",
"vector_db_key": "...",
"vector_dataset_database_handler": "qdrant", # only if the adapter ships one
}
)The register.py calls usevectoradapter(name, AdapterClass) / usegraphadapter(...). Setting VECTORDBPROVIDER/GRAPHDATABASEPROVIDER to a community name without the register import raises "Unsupported vector database provider". Hybrid adapters (e.g. falkordb) register as both graph and vector — set both configs to the same provider name.
Multi-tenancy caveat: with ENABLEBACKENDACCESSCONTROL=true (the default), both backends must have a dataset-database handler or cognee raises EnvironmentError. Community adapters that ship one (registered via usedatasetdatabasehandler in their register.py): qdrant, moss, singlestore, turbopuffer (vector + graph), falkordb, arcadedb, helixdb. All other community adapters need ENABLEBACKENDACCESS_CONTROL=false.
Using a connector
Connectors expose a dlt source you hand straight to remember(); they reuse core's DLT ingestion path, so snapshot sync and forget-on-delete work with no core changes:
from cognee_community_connector_slack import slack_export_source
await cognee.remember(
slack_export_source("/path/to/slack-export"),
dataset_name="team-slack-export", # use a dedicated dataset
max_rows_per_table=0,
)Same shape for gmail ("ask my inbox"), notion, confluence, and google-drive (incremental, forget-on-delete). Each package README documents its credentials; always give a connector its own dataset.
Verifying an install
Every package has examples/example.py (run uv run python examples/example.py from the package dir) and a tests/ directory. An LLM API key is still required (LLMAPIKEY, OpenAI by default).
Contributing a package
use a dev branch.
- Branch from main — unlike the core repo, cognee-community does not
with pyproject.toml, a README.md (install + usage), examples/example.py, and tests/ that go beyond the example.
- Follow the existing structure: package dir under packages///
core, expose a register.py, and should run the shared conformance tests in packages/shared/contractsuite/ (vectorcontract.py / graph_contract.py).
- New DB adapters implement VectorDBInterface / GraphDBInterface from
isolate per user+dataset — that's what makes it work with access control on.
- Add a handler via usedatasetdatabase_handler(...) if the backend can
in the repo README. Lint config is the repo-root ruff.toml.
- Name it cognee-community--- and add it to the tables
More skills from topoteretes/cognee
- Acognee-cliUse when the user wants to drive cognee from the terminal with cognee-cli — remember/recall/forget/improve memory commands, managing datasets and config, or database migrations.
- Acognee-dockerUse when the user wants to run cognee with Docker or docker compose — trying it out from the prebuilt image, starting the API server in a container, or bringing up the full stack (UI, MCP, Postgres, Neo4j) with compose profiles.
- Acognee-installUse when the user wants to install cognee and run their first remember → recall flow with the Python SDK — fresh setup, virtual env, extras selection, or a minimal working example.
- Acognee-integrationsUse when the user wants to connect cognee to external services — switching LLM or embedding providers (OpenAI, Azure, Gemini, Anthropic, Ollama, OpenRouter), changing databases (Postgres, PGVector, Neo4j, Neptune, Turso), S3 storage, or the MCP server for IDE integration.
- Acognee-permissionsUse when working with cognee's permission system — understanding or changing how users, roles, and tenants get access to datasets, how ACL grants work, where permissions are enforced in add/cognify/search/delete, and how the grant records surface in the memory-provenance view.
- Acognee-serverUse when the user wants to run the cognee API server (and optional UI) on their own machine — starting it, checking it's healthy, connecting the SDK or other clients to it, and choosing the right auth posture.
- Adiff-risk-explainerUse to briefly explain small code diffs.
- Apr-comment-evaluatorUse to judge whether a PR review comment sounds polite.
- Askill-feedback-writerUse to identify missing instructions in another skill based on its output.