Cortexdb Memory Hermes
liliang-cn/cortexdb
Give a Python agent (such as Hermes Agent by Nous Research) durable, local-first memory plus a queryable SPARQL knowledge graph, backed by CortexDB through its gRPC sidecar and the cortexdb-client…
Explains how cognee stores session memory by session_id and bridges it into the permanent graph with improve(), including the stages, results and settings.
$ npx skills add topoteretes/cognee --skill cognee-improve-sessions -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install topoteretes/cognee cognee-improve-sessions --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/topoteretes/cognee.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/cognee-improve-sessions .claude/skills/cognee-improve-sessions && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "cognee-improve-sessions" agent skill from https://github.com/topoteretes/cognee/tree/main/.agents/skills/cognee-improve-sessions into .claude/skills/cognee-improve-sessions/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cognee-improve-sessions", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/topoteretes/cognee/tree/main/.agents/skills/cognee-improve-sessionsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add topoteretes/cognee --skill cognee-improve-sessions -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install topoteretes/cognee cognee-improve-sessions --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/topoteretes/cognee.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/cognee-improve-sessions .agents/skills/cognee-improve-sessions && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "cognee-improve-sessions" agent skill from https://github.com/topoteretes/cognee/tree/main/.agents/skills/cognee-improve-sessions into .agents/skills/cognee-improve-sessions/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cognee-improve-sessions", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add topoteretes/cognee --skill cognee-improve-sessions -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install topoteretes/cognee cognee-improve-sessions --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/topoteretes/cognee.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/cognee-improve-sessions .cursor/skills/cognee-improve-sessions && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "cognee-improve-sessions" agent skill from https://github.com/topoteretes/cognee/tree/main/.agents/skills/cognee-improve-sessions into .cursor/skills/cognee-improve-sessions/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cognee-improve-sessions", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/topoteretes/cognee.git --path .agents/skills/cognee-improve-sessions--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add topoteretes/cognee --skill cognee-improve-sessions -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install topoteretes/cognee cognee-improve-sessions --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/topoteretes/cognee.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/cognee-improve-sessions .gemini/skills/cognee-improve-sessions && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "cognee-improve-sessions" agent skill from https://github.com/topoteretes/cognee/tree/main/.agents/skills/cognee-improve-sessions into .gemini/skills/cognee-improve-sessions/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cognee-improve-sessions", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install topoteretes/cognee cognee-improve-sessionsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add topoteretes/cognee --skill cognee-improve-sessions -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/topoteretes/cognee.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/cognee-improve-sessions .github/skills/cognee-improve-sessions && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "cognee-improve-sessions" agent skill from https://github.com/topoteretes/cognee/tree/main/.agents/skills/cognee-improve-sessions into .github/skills/cognee-improve-sessions/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cognee-improve-sessions", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add topoteretes/cognee --skill cognee-improve-sessions -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install topoteretes/cognee cognee-improve-sessions --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/topoteretes/cognee.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/cognee-improve-sessions .opencode/skills/cognee-improve-sessions && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "cognee-improve-sessions" agent skill from https://github.com/topoteretes/cognee/tree/main/.agents/skills/cognee-improve-sessions into .opencode/skills/cognee-improve-sessions/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "cognee-improve-sessions", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
cognee-improve-sessionsExplains how cognee stores session memory by session_id and bridges it into the permanent graph with improve(), including the stages, results and settings.
This reference separates cognee's two kinds of memory: a fast session cache of conversation turns, agent traces and feedback keyed by session_id, and the permanent graph that remember() builds without a session. It shows how to write each kind of entry, using remember() with text, a QAEntry, a TraceEntry or a FeedbackEntry, recall() with a completion search type, and cognee.session.get_session() to read a session back.
improve() connects the two, and remember() calls it automatically, so most users never call it directly. It runs nine ordered stages, each gated before it spends any LLM or embedding cost, and returns an ImproveResult with one StageResult per stage. The reference explains why a stage is skipped, already_completed or lock_held, and which stage is the only fatal one. Caching must be on, the backend can be sqlite, postgres, redis, fs or tapes, and sessions expire after seven days by default.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 0ec7a9f. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are python).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Cognee Session Memory and Improve loads about 3.2k tokens when it runs. Until then it costs about 85 tokens; SKILL.md has 1,335 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from topoteretes/cognee at commit 0ec7a9f, republished under its Apache-2.0 licence (© topoteretes). 1,335 words, ~3,174 tokens.
.claude/skills/cognee-improve-sessions/SKILL.md (or your agent's skills folder).cognee has two kinds of memory:
session_id. Writing is instant, with no LLM
extraction.remember() builds without a session.improve() connects them. It bridges session content into the graph and
enriches the graph itself. remember() calls it automatically, so most
users never call it directly.
import cognee
# Session write: returns immediately; improve() bridges it in the background
await cognee.remember("User prefers dark mode.", session_id="chat_1")
# Session-aware query: session cache first, then the graph
results = await cognee.recall("What does the user prefer?", session_id="chat_1")
# Bridge sessions into a dataset's graph explicitly
result = await cognee.improve(dataset="main_dataset", session_ids=["chat_1"])
print(result.status, result.stage_summary())
await cognee.wait_for_background_tasks() # before a script exits| What | How |
|---|---|
| A fact or note | remember(text, session_id=...) (stored as a Q&A entry with the text as the answer) |
| A Q&A turn | recall(query, session_id=...) with a completion search type saves the turn itself; or remember(cognee.QAEntry(question=..., answer=...), session_id=...) |
| An agent step | remember(cognee.TraceEntry(origin_function=..., status="success", ...), session_id=...), or the @cognee.agent_memory(save_session_traces=True) decorator |
| Feedback on an answer | remember(cognee.FeedbackEntry(qa_id=..., feedback_score=...), session_id=...) or cognee.session.add_feedback(session_id, qa_id, feedback_text=..., feedback_score=...) |
| Read a session | cognee.session.get_session(session_id, last_n=...) |
Requirements: CACHING=true (default). The cache backend is
CACHE_BACKEND, one of sqlite (default), postgres, redis, fs,
tapes. Sessions expire after SESSION_TTL_SECONDS (default 7 days).
Every run goes through the same ordered stages
(cognee/modules/improve/registry.py). Each stage checks a gate before it
spends any LLM or embedding cost, and reports one StageResult.
| # | Stage | What it does | Runs when |
|---|---|---|---|
| 1 | feedback_weights | Adjusts the weight of graph elements that rated answers used | session_ids given; adapter supports feedback weights |
| 2 | persist_session_qa | Turns session Q&A into graph content (node set user_sessions_from_cache) | session_ids given. The only fatal stage |
| 3 | persist_agent_traces | Turns agent-trace feedback into graph content | session_ids given |
| 4 | extract_agent_context | Drafts agent-profile lessons from traces | session_ids, CACHING + AUTO_FEEDBACK, an LLM |
| 5 | distill_sessions | Distills session learnings into the graph | session_ids, an LLM |
| 6 | update_user_preferences | Folds rated turns into per-user preferences | session_ids, PERSONALIZATION_ENABLED=true (default false) |
| 7 | build_truth_subspace | Builds the truth subspace from distilled learnings | session_ids, build_truth_subspace=True, a Ladybug graph |
| 8 | triplet_enrichment | Triplet embeddings over the graph (memify) | TRIPLET_EMBEDDING=true (default false), or custom tasks/data passed |
| 9 | global_context_index | Bucket and root summaries for global questions | build_global_context_index=True, an LLM |
Stages 1–7 need session_ids; 8 and 9 work on the graph alone. The order
matters: 4 feeds 5, 5 feeds 7, and 7 runs before 8.
improve() returns an ImproveResult, and so do POST /api/v1/improve, the
CLI, and RememberResult.improve.
result.status: completed, errored (any stage errored), skipped
(every stage skipped), or running (background, not finished).result.stages: one StageResult per stage, with stage, status
(completed / already_completed / skipped / errored), reason,
error, counts, duration_ms.result.stage("distill_sessions"), result.stage_summary(),
result.lock_held, result.rerun_requested, result.rerun_passes.await result.wait() finishes a background run (no-op otherwise).Skip and no-op reasons:
| Reason | Meaning / fix |
|---|---|
no_session_ids | Session stage, no session_ids passed |
disabled_by_config | Listed in IMPROVE_STAGES_DISABLED |
triplet_embedding_disabled | Set TRIPLET_EMBEDDING=true to enable stage 8 |
opt_in_disabled | Pass build_truth_subspace=True / build_global_context_index=True |
personalization_disabled | Set PERSONALIZATION_ENABLED=true |
auto_feedback_disabled | Stage 4 needs CACHING=true and AUTO_FEEDBACK=true |
no_llm_configured | Stages 4, 5, 9 draft text with an LLM; none configured |
backend_unsupported | The graph adapter lacks the feature (feedback weights, truth subspace) |
session_manager_unavailable | The session cache is not reachable |
lock_held | Another improve for the same dataset or session is running (below) |
aborted_by_fatal_stage | Stage 2 failed, so the rest did not run |
budget_exhausted | An earlier stage failed because the LLM budget is exhausted (a 402); the rest would fail the same way. Top up, then run improve again |
no_new_entries, no_new_trace_steps, no_writes_since_last_improve | With status already_completed: nothing new since the last run |
add, then cognify, then a foreground improve().
Its outcome is on result.improve / result.improve_error. A failed
improve never marks the remember as errored.session_id: the text is cached, then a background
improve(dataset, session_ids=[session_id]) starts if the debounce allows
it. result.improve fills in only after await result or
wait_for_background_tasks().self_improvement=False turns it off per call; IMPROVE_AUTO_ENABLED=false
turns it off everywhere and overrides self_improvement=True.cognee.modules.improve.register_auto_improve_admission(check)
registers one async check that remember() awaits on both paths. Returning
a reason string skips the improve and sets result.improve_skipped
(result.improve stays None); the data is stored either way. A check that
raises allows the improve. Explicit improve() calls are never gated.IMPROVE_*, cognee/modules/improve/config.py)| Env var | Default | Meaning |
|---|---|---|
IMPROVE_AUTO_ENABLED | true | Automatic improve after remember() |
IMPROVE_DEBOUNCE_ENTRIES | 1 | Session auto-improve fires after this many new entries |
IMPROVE_DEBOUNCE_SECONDS | 0 | ...or this many seconds since the last one. Seconds alone (entries left at 1) means time-only |
IMPROVE_STAGES_DISABLED | empty | CSV of stage names to skip |
IMPROVE_FEEDBACK_ALPHA | 0.1 | Feedback learning rate, in (0, 1] |
There is no debounce timer: held-back entries wait for the next
remember() with that session, or an explicit improve().
improve(dataset) often does nothing. Without session_ids,
only stages 8 and 9 can run, and both are off by default. Result: every
stage skipped. That is expected, not an error.remember(QAEntry/TraceEntry/ FeedbackEntry, session_id=...) stores the entry but never starts an
improve. Call improve(session_ids=[...]) yourself.lock_held does not wait. Improves for the same dataset or session
run one at a time: a second call returns at once with every stage
skipped: lock_held. If it shares a session with the running one, it sets
rerun_requested=True and the holder runs up to 2 extra passes (3 passes
in total; see rerun_passes). The bound is IMPROVE_MAX_RERUN_PASSES, a
constant in cognee/api/v1/improve/improve.py, not an env var. The lock is per process only; multiple API workers do not
share it.IMPROVE_STAGES_DISABLED is validated. An unknown stage name, or
persist_session_qa (fatal, cannot be disabled), raises ValueError, and
the API server refuses to start.remember(text, session_id=...)
with CACHING=false only logs a warning and stores nothing; typed entries
raise RuntimeError. An explicit improve(session_ids=...) then fails in
the fatal stage.improve() raises (HTTP 409)
and the error carries .improve_result. In background mode it is recorded
on result.error instead. Other stages failing only mark themselves
errored; HTTP still returns 200, so check status.cognee.serve(url), a background improve is
fire-and-forget: status stays running and there is no polling.cognee/modules/session_bridge/ is gone (only stale __pycache__ may be
left). The bridging now lives in the improve stages; some test names still
say "session_bridge".improve() resolves the dataset once (creating it if the name is new),
claims the improve lock for dataset:<id> plus every
session:<user>:<session_id>, probes the graph adapter's capabilities, and
runs the stages with one frozen ImproveRunInputs. Each stage is a gate
plus a call into existing pipelines plus a result mapping. Stages never own
retries or ordering.
Watermarks keep repeat runs cheap:
node_name or custom-task run bypasses that
check.The improve operation row is written when the run finishes: failed if any
stage errored (a retry is never gated off), noop if nothing ran.
cognee/api/v1/improve/improve.py (HTTP:
routers/get_improve_router.py; CLI: cognee/cli/commands/improve_command.py)cognee/modules/improve/ (stages.py,
registry.py, stage.py, result.py, inputs.py, capabilities.py,
config.py, graph_changes.py, constants.py)cognee/infrastructure/locks/session_lock.pycognee/infrastructure/session/
(session_manager.py, session_persist_watermark.py,
feedback_detection.py); cache backends in
cognee/infrastructure/databases/cache/cognee/api/v1/remember/remember.py,
cognee/api/v1/remember/auto_improve_debounce.pycognee/memory/entries.pycognee/infrastructure/background_tasks.pyExamples: examples/guides/improve_quickstart.py, sessions.py,
session_distillation.py, global_context_index.py,
agent_memory_quickstart.py, and
examples/advanced_guides/remember_recall_improve_example.py.
Adding a stage:
BaseStage in cognee/modules/improve/stages.py. Set name,
needs_sessions, and fatal (leave it False; exactly one fatal stage
is enforced at import). Implement gate() (return a skip reason
constant, or None, before any LLM/embedding cost) and run() (call
existing pipeline code, return a StageResult).DEFAULT_STAGES in registry.py at the right position.
The order is pinned by cognee/tests/unit/modules/improve/test_registry_order.py;
update it deliberately.already_completed.WRITE_PIPELINE_NAMES in graph_changes.py, or stage 8 will not notice
the change.cognee/tests/unit/modules/improve/ (gates, results, config) and
cognee/tests/unit/api/v1/improve/ (orchestration, rerun, router).© topoteretes, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/cognee-improve-sessions of topoteretes/cognee.
Open the folder on GitHubat commit 0ec7a9f
Cognee Session Memory and Improve next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Cognee Session Memory and Improve this skilltopoteretes/cognee | 32k | — | ~3.2k | Automated safety check: Pass | Apache-2.0 | |
| Cortexdb Memory Hermesliliang-cn/cortexdb | 274 | — | ~1.7k | Automated safety check: Pass | MIT | |
| Memori Long-Term MemoryMemoriLabs/Memori | 17k | — | ~2k | Automated safety check: Pass | Apache-2.0 | |
| Agent Memorytigerless-labs/agent-memory | 3.4k | — | ~1.3k | Automated safety check: Pass | MIT | |
| Hermes Memory Providersmnemosyne-oss/mnemosyne | 3.4k | — | ~1.8k | Automated safety check: Pass | MIT | |
| Cortexdb Memory Openclawliliang-cn/cortexdb | 274 | — | ~1.6k | Automated safety check: Pass | MIT |
liliang-cn/cortexdb
Give a Python agent (such as Hermes Agent by Nous Research) durable, local-first memory plus a queryable SPARQL knowledge graph, backed by CortexDB through its gRPC sidecar and the cortexdb-client…
MemoriLabs/Memori
Adds structured long-term memory to OpenClaw agents, built automatically from sessions, with tools the agent calls to recall facts, summaries and decisions.
tigerless-labs/agent-memory
Read and write the shared long-term memory store. An agent skill from tigerless-labs/agent-memory.
mnemosyne-oss/mnemosyne
Install and configure Mnemosyne as a Hermes Agent memory provider — local SQLite with vector search, episodic consolidation, and temporal knowledge graphs.
liliang-cn/cortexdb
Give a Node.js agent (such as OpenClaw) durable, local-first memory plus a queryable SPARQL knowledge graph, backed by CortexDB through its gRPC sidecar and the cortexdb-client npm package.
OthmanAdi/planning-with-files
Arabic edition of a file-based planning skill that keeps task_plan.md, findings.md and progress.md on disk so multi-step agent work survives lost context.
topoteretes/cognee
Drives cognee from the terminal with remember, recall, forget and improve memory commands, dataset and config management and database migrations.
topoteretes/cognee
Guide to using and contributing cognee community packages: database adapters, data-source connectors, custom tasks and retrievers, and Keywords AI observability.
topoteretes/cognee
Defines the shape of cognee's knowledge graph with graph_model: DataPoint node classes, identity and index fields, typed edges and fixes for duplicated nodes.
topoteretes/cognee
Shows how to write custom cognee tasks, chain them into pipelines, store custom DataPoints and run enrichment over the existing graph.
topoteretes/cognee
Runs the Cognee AI memory platform in Docker, from a one-file prebuilt image to a full compose stack with UI, MCP server, Postgres and Neo4j.
topoteretes/cognee
Removes data from cognee memory with forget(), finding the right dataset and document first and choosing between one document, a dataset or only the graph and vector memory.
Works with
Categories
Explains how cognee stores session memory by session_id and bridges it into the permanent graph with improve(), including the stages, results and settings. This reference separates cognee's two kinds of memory: a fast session cache of conversation turns, agent traces and feedback keyed by session_id, and the permanent graph that remember() builds without a session.get_session() to read a session back.
Cognee Session Memory and Improve fits situations like: storing conversation turns or agent traces under a session_id in cognee; working out why an improve() stage was skipped or reported lock_held; tuning the IMPROVE settings or the session cache backend and expiry.
Run `npx skills add topoteretes/cognee --skill cognee-improve-sessions -a claude-code`. Or copy the skill folder (.agents/skills/cognee-improve-sessions in topoteretes/cognee) into .claude/skills/cognee-improve-sessions in your project. Claude Code loads it when a task matches its description.
Run `npx skills add topoteretes/cognee --skill cognee-improve-sessions -a codex`. Or copy the skill folder (.agents/skills/cognee-improve-sessions in topoteretes/cognee) into .agents/skills/cognee-improve-sessions in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add topoteretes/cognee --skill cognee-improve-sessions -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/cognee-improve-sessions, .gemini/skills/cognee-improve-sessions, .github/skills/cognee-improve-sessions and .opencode/skills/cognee-improve-sessions in your project.
SKILL.md names no scripts, command-line tools or credentials: Cognee Session Memory and Improve is instructions for the agent only. Our summary lists: cognee installed in a Python project; Session caching enabled (the default).
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Cognee Session Memory and Improve is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.2k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Cognee Session Memory and Improve: Cortexdb Memory Hermes (liliang-cn/cortexdb, 274 stars), Memori Long-Term Memory (MemoriLabs/Memori, 17k stars), Agent Memory (tigerless-labs/agent-memory, 3.4k stars) and Hermes Memory Providers (mnemosyne-oss/mnemosyne, 3.4k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
topoteretes (a GitHub organization) maintains it in topoteretes/cognee, which has 31,919 GitHub stars. The repository holds 19 skills in this directory. The repository was last updated on October 9, 2026.
Source: topoteretes/cognee on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.