Memori MCP Memory Usage
MemoriLabs/Memori
Teaches an MCP-connected agent when and how to call Memori's recall, summary, compaction, augmentation, feedback and quota tools to keep context across sessions.
Understand the MCP server session lifecycle: proxy supervision, daemon watch loop, session state machine, rejoin/reconnect races, and room eviction.
$ npx skills add nteract/nteract --skill mcp-session-lifecycle -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install nteract/nteract mcp-session-lifecycle --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/nteract/nteract.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/mcp-session-lifecycle .claude/skills/mcp-session-lifecycle && 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 "mcp-session-lifecycle" agent skill from https://github.com/nteract/nteract/tree/main/.agents/skills/mcp-session-lifecycle into .claude/skills/mcp-session-lifecycle/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mcp-session-lifecycle", 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/nteract/nteract/tree/main/.agents/skills/mcp-session-lifecycleType 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 nteract/nteract --skill mcp-session-lifecycle -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install nteract/nteract mcp-session-lifecycle --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nteract/nteract.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/mcp-session-lifecycle .agents/skills/mcp-session-lifecycle && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "mcp-session-lifecycle" agent skill from https://github.com/nteract/nteract/tree/main/.agents/skills/mcp-session-lifecycle into .agents/skills/mcp-session-lifecycle/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mcp-session-lifecycle", 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 nteract/nteract --skill mcp-session-lifecycle -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install nteract/nteract mcp-session-lifecycle --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nteract/nteract.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/mcp-session-lifecycle .cursor/skills/mcp-session-lifecycle && 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 "mcp-session-lifecycle" agent skill from https://github.com/nteract/nteract/tree/main/.agents/skills/mcp-session-lifecycle into .cursor/skills/mcp-session-lifecycle/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mcp-session-lifecycle", 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/nteract/nteract.git --path .agents/skills/mcp-session-lifecycle--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 nteract/nteract --skill mcp-session-lifecycle -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install nteract/nteract mcp-session-lifecycle --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nteract/nteract.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/mcp-session-lifecycle .gemini/skills/mcp-session-lifecycle && 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 "mcp-session-lifecycle" agent skill from https://github.com/nteract/nteract/tree/main/.agents/skills/mcp-session-lifecycle into .gemini/skills/mcp-session-lifecycle/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mcp-session-lifecycle", 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 nteract/nteract mcp-session-lifecycleInstalls 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 nteract/nteract --skill mcp-session-lifecycle -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/nteract/nteract.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/mcp-session-lifecycle .github/skills/mcp-session-lifecycle && 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 "mcp-session-lifecycle" agent skill from https://github.com/nteract/nteract/tree/main/.agents/skills/mcp-session-lifecycle into .github/skills/mcp-session-lifecycle/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mcp-session-lifecycle", 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 nteract/nteract --skill mcp-session-lifecycle -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install nteract/nteract mcp-session-lifecycle --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/nteract/nteract.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/mcp-session-lifecycle .opencode/skills/mcp-session-lifecycle && 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 "mcp-session-lifecycle" agent skill from https://github.com/nteract/nteract/tree/main/.agents/skills/mcp-session-lifecycle into .opencode/skills/mcp-session-lifecycle/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "mcp-session-lifecycle", 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.
mcp-session-lifecycleUnderstand the MCP server session lifecycle: proxy supervision, daemon watch loop, session state machine, rejoin/reconnect races, and room eviction.
MCP Session Lifecycle is an agent skill from nteract/nteract. Understand the MCP server session lifecycle: proxy supervision, daemon watch loop, session state machine, rejoin/reconnect races, and room eviction. Use when working on runt-mcp, runt-mcp-proxy, daemonwatch.rs, or any code that reads/writes the session Arc<RwLock<Option<NotebookSession.
Its SKILL.md is about 3.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Agent Workflows, covering MCP servers and Session handoff. It works with Model Context Protocol. The repository describes itself as: We're back! Now firing notebooks out of a t-shirt gun. The licence is BSD-3-Clause.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 414222e. 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.
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.
MCP Session Lifecycle loads about 3.5k tokens when it runs. Until then it costs about 78 tokens; SKILL.md has 1,677 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 nteract/nteract at commit 414222e, republished under its BSD-3-Clause licence (© nteract). 1,677 words, ~3,475 tokens.
.claude/skills/mcp-session-lifecycle/SKILL.md (or your agent's skills folder).Use this skill when debugging session state, changing reconnection logic, working on the proxy, or reasoning about races between background rejoin and user-initiated tool calls.
Source checkpoint: 2026-09-04 at 6bff3e7b. The decision record is
docs/adr/mcp-session-lifecycle.md. Read the source functions below rather
than copying an abbreviated session struct or reconnect algorithm.
nteract-mcp and development
mcp-supervisor use the runt-mcp-proxy library to supervise a runt mcp
child. The library is not an executable entrypoint.NotebookSession, a bounded
map of parked sessions, explicit activation generations, and the daemon
watch loop.runtimed owns notebook rooms, runtime state, kernels,
recovery, and peer accounting. Kernel teardown and room reaping are separate.The shipped MCP entrypoints use stdio. Multiple MCP clients can run separate children against the same daemon, including the same notebook room. Concurrent requests on one stdio connection share that child's active slot; they are not independent MCP clients. The daemon's multiplexed notebook frames are a separate protocol, not an HTTP MCP endpoint.
Entry points: crates/runt/src/lib.rs,
crates/nteract-mcp/src/lib.rs, and
crates/mcp-supervisor/src/main.rs.
McpProxy::track_session and session::extract_session_id track one preferred
restart target, despite the field name last_notebook_id:
save_notebook promotes a local UUID target to the saved path.NTERACT_MCP_REJOIN_NOTEBOOK. It does not reconstruct the parked map.ServerInfo.server_info.title, not binary SHA. A banner says rejoin was
requested; it does not prove that notebook readiness has completed.reconnect tool restarts the child, not the daemon.See crates/runt-mcp-proxy/src/session.rs:17,
crates/runt-mcp-proxy/src/proxy.rs:310, :962, and :1268.
A closed-child forwarding failure is retried once; this is not an exactly-once
mutation guarantee (proxy.rs:658).
NteractMcp holds the active slot and parked map in
crates/runt-mcp/src/lib.rs:119. NotebookSession in
crates/runt-mcp/src/session.rs carries the handle, target, activation identity,
readiness evidence, and local daemon incarnation when applicable.
Switching targets parks the previous peer instead of immediately disconnecting
it. MAX_PARKED_SESSIONS is eight; overflow removes an entry by arbitrary
HashMap iteration order. Parked peers keep their rooms from reaching zero
peers, so they can keep kernels alive. Local switch-back establishes a fresh
activation and removes the old parked peer after successful publication;
parked-handle reuse is not a universal reconnect contract.
Most notebook tools operate on the active target. Exceptions include explicit parked-session disconnect and notebook-ID resource reads against connected or parked local sessions. A parked map does not provide independent active tool contexts for multiple MCP clients.
See park_session, install_activated_session, and disconnect_notebook in
crates/runt-mcp/src/tools/session.rs:74, :742, and :949, and
handle_for_notebook in crates/runt-mcp/src/resources.rs:285.
crates/runt-mcp/src/daemon_watch.rs:238 reconciles session ownership against a
live daemon incarnation (pid + started_at), not a disconnect latch:
query_daemon_info(socket_path);
it does not decide from DaemonConnection's cached heartbeat info.Disconnected event, defer reconciliation and retain the handles.Hosted proxy handoffs are attempted immediately at watcher entry, without a local daemon event or incarnation. Failed hosted recovery has a bounded retry timer independent of the local event stream. Both paths retain the explicit session intent epoch and publication slot guards; local recovery still checks daemon incarnation before and after connection/readiness.
A same-incarnation heartbeat leaves healthy bindings alone. A same-version
restart changes incarnation and invalidates old local handles even if a
Disconnected event was missed. Removing parked local handles does not enqueue
recovery for every parked notebook.
See RecoveryState, reconcile_sessions, and watch. Focused tests in the
same file cover same-incarnation heartbeats, lagged delivery, failed identity
queries, stale parked handles, and tool-installed replacements.
Background rejoin connects outside the session lock. Local rejoin samples the
expected daemon incarnation before and after connection/readiness. Then
publish_rejoined_session checks the captured session_intent_epoch and slot
emptiness under the same write lock that installs the session. Any already
installed session wins, including one for the same notebook. Explicit
disconnect advances the epoch under that lock so a completed background
connection cannot resurrect the disconnected session.
Explicit connect/create activation has a separate generation owner:
SessionActivation. Same-target in-flight connects share a result. Selecting a
different canonical target supersedes the older attempt; A→B→A must not join
stale A work. ActivationLease::install_in_slot_recovering rechecks ownership
under the slot lock and restores the previous occupant if the installation
commit is refused. A failed replacement does not invalidate the healthy
installed session.
Use these production helpers, not a read-lock check followed by a separate
write. See crates/runt-mcp/src/daemon_watch.rs:365, :493, :567,
crates/runt-mcp/src/session_activation.rs:76, :225, and
crates/runt-mcp/src/tools/session.rs:977.
An installed session is not a readiness guarantee. Acquire access through
require_session_access! or require_handle! with the appropriate
SessionRequirement. NteractMcp::session_access checks installed activation
identity and delegates to NotebookSession::access; the returned handle is
owned, so the slot lock is released before async work.
| Requirement | Gate |
|---|---|
ProjectionRead | Retained projection or interactive document; use the bounded projection before interactivity |
DocumentRead, DocumentMutation | Interactive local document with the required readiness evidence |
KernelControl | Interactive document; a running kernel is not required to launch or restart it |
RuntimeRead | Connected, ready local RuntimeStateDoc |
Execute | Interactive document and ready runtime; execution keeps its causal required_heads gate |
Retained projection reads do not authorize mutations or execution. Local sync
failure, source degradation, runtime unreadiness, and superseded activation
have distinct error paths. Use ensure_session_access_current after async work
before continuing an operation on the captured active target. Do not keep a
session lock across connection, file loading, projection, or sync waits.
See crates/runt-mcp/src/tools/mod.rs:18, crates/runt-mcp/src/lib.rs:273,
crates/runt-mcp/src/session.rs:323, :485, and :595.
Local connect_notebook returns a retained control-plane projection while
peers converge. create_notebook and background local rejoin still await
session readiness. Do not apply the progressive-connect contract to all three
paths. The response fields and historical API sketch are distinguished in
docs/memos/mcp-connect-initial-projection.md.
Prefer a saved file path for automatic rejoin. The watcher verifies that the
source file exists and calls connect_open(path). UUID-only attachment is
also recoverable when the daemon has a resident room, a persistent UUID/path
registry binding with available source, or a persisted untitled document.
The registry is identity, not content: a missing source file is not permission
to load a stale mirror or invent an empty notebook.
For a UUID target, call connect(uuid) and trust the daemon's attach-only
admission. SyncError::NotebookUnavailable is definitive and records
Evicted without retry. Do not use list_rooms as an existence precheck; an
unlisted room may still be recoverable. Transient failures retain the recovery
target for later attempts.
Daemon authority is not an atomic check-and-load guarantee. The legacy snapshot
existence check at crates/runtimed/src/daemon.rs:3122 precedes awaited room
creation. If that snapshot disappears and no journal is recovered,
crates/runtimed/src/notebook_sync_server/room.rs:1945–1955 can create a fresh
document. Keep this limitation distinct from the already-absent UUID refusal.
Persisted untitled notebooks are not the same as explicitly ephemeral
notebooks. MCP create_notebook defaults to ephemeral=true; do not promise
recovery after loss of its content merely because a UUID is known.
See crates/runtimed/src/daemon.rs:3041,
crates/runt-mcp/src/daemon_watch.rs:485, :506, :615, and
crates/runt-mcp/src/tools/session.rs:1602. The daemon integration tests at
crates/runtimed/tests/integration.rs:4015 and :4054 cover refusal without a
phantom room and saved-path recovery by UUID across restart.
Only the last peer leaving schedules kernel teardown, after keep_alive_secs
(default 30 seconds). Room state, autosave, and file watchers remain resident.
Teardown revalidates peer count and connection generation before destructive
work; the destructive latch tells reconnecting peers not to reuse a doomed
kernel.
The ghost-room reaper separately sweeps eligible peerless, kernel-less rooms every five minutes, with a 24-hour TTL and soft cap of 32. Removal requires the durability barrier and final admission checks; reconnects and reservations protect rooms from stale reaping decisions.
See crates/runtimed/src/notebook_sync_server/peer_eviction.rs:107, :269,
and crates/runtimed/src/daemon.rs:484, :5834. Kernel teardown is not proof
that a notebook has become unavailable.
last_session_drop is best-effort recovery context, not another session:
Switched: the old target was replaced and may still be parked.Disconnected: stale local ownership was removed, recovery failed, or the
user explicitly disconnected. Explicit disconnect cancels automatic rejoin.Evicted: rejoin received a definitive unavailable refusal or found a missing
saved source. It does not mean every kernel keepalive timeout deletes a room.SessionDropInfo retains notebook ID, path, and rejoin target for
no_session_error. See crates/runt-mcp/src/session.rs:636 and the recording
sites in daemon_watch.rs and tools/session.rs.
Separate MCP children sharing a daemon are implemented. Each child has its own
active selection; the room can have multiple peers. The upstream handshake
supplies the display label and an agent:<slug>:<session> operator suffix.
The proxy preserves the suffix across child restarts. Attribution is not a
separate authorization boundary for every same-user local client.
Multiple independently routed MCP clients inside one child are not implemented
by the shipped stdio entrypoints. Neither concurrent request IDs nor parked
notebooks provide that routing. See crates/runt-mcp/src/lib.rs:48, :119,
:464, and crates/runt-mcp-proxy/src/proxy.rs:180, :227.
crates/mcp-transport/src/lib.rs supports both legacy initialize-based
sessions and native MCP 2026-07-28 per-request negotiation. The first valid
native request opens the lifecycle; invalid metadata must not start recovery
or runtime setup. require_protocol, ProtocolSession::wait_for_native, and
server_with_protocol keep the two modes distinct. A legacy initialized
session cannot switch to native negotiation in place. Read this source and
its wire tests before changing transport admission; support for the native
lifecycle is not a blanket claim of complete protocol conformance.
© nteract, BSD-3-Clause. 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/mcp-session-lifecycle of nteract/nteract.
Open the folder on GitHubat commit 414222e
MCP Session Lifecycle 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 |
|---|---|---|---|---|---|---|
| MCP Session Lifecycle this skillnteract/nteract | 179 | — | ~3.5k | Automated safety check: Pass | BSD-3-Clause | |
| Memori MCP Memory UsageMemoriLabs/Memori | 17k | — | ~3.8k | Automated safety check: Pass | MIT | |
| Engraphis MemoryCoding-Dev-Tools/engraphis | 179 | — | ~3.7k | Automated safety check: Pass | Apache-2.0 | |
| MemorixAVIDS2/memorix | 835 | — | ~516 | Automated safety check: Pass | Apache-2.0 | |
| Engram MemoryPatdolitse/piia-engram | 162 | — | ~1.3k | Automated safety check: Pass | AGPL-3.0-or-later | |
| Prism Startup Contextdcostenco/prism-coder | 157 | — | ~1.4k | Automated safety check: Pass | Apache-2.0 |
MemoriLabs/Memori
Teaches an MCP-connected agent when and how to call Memori's recall, summary, compaction, augmentation, feedback and quota tools to keep context across sessions.
Coding-Dev-Tools/engraphis
Give the agent durable, scoped, explainable memory across sessions and repositories through the Engraphis MCP tools.
AVIDS2/memorix
A skill your agent uses when Claude Code needs Memorix shared memory, reasoning, Git Memory, mini-skills, session handoff, orchestration coordination, or integration troubleshooting.
Patdolitse/piia-engram
Routes continuity and recall requests to Engram, a local-first MCP memory and identity layer that saves user-approved lessons, decisions and playbooks.
dcostenco/prism-coder
Loads Prism session memory on the first user turn, greets the developer by their configured name and shows recent-session context at the configured depth.
qualixar/superlocalmemory
Cross-session peer coordination via the SLM mesh network. An agent skill from qualixar/superlocalmemory.
nteract/nteract
Automerge sync protocol internals, document model (OpSet, ChangeGraph, fork/merge, save/load lifecycle), and higher-level protocol design patterns.
nteract/nteract
Develop, debug, and manage the runtimed daemon, Python bindings, and build system.
nteract/nteract
The end-to-end cell execution pipeline from MCP tool call through daemon to kernel and back.
nteract/nteract
Pull and triage submitted nteract diagnostics archives from Cloudflare using a diagnostics id/token.
nteract/nteract
Use nteract notebooks as a persistent Python REPL. An agent skill from nteract/nteract.
nteract/nteract
Run tests, verify changes, and collect diagnostics. An agent skill from nteract/nteract.
Works with
Categories
Understand the MCP server session lifecycle: proxy supervision, daemon watch loop, session state machine, rejoin/reconnect races, and room eviction. MCP Session Lifecycle is an agent skill from nteract/nteract. Understand the MCP server session lifecycle: proxy supervision, daemon watch loop, session state machine, rejoin/reconnect races, and room eviction.
MCP Session Lifecycle fits situations like: working on runt-mcp; any code that reads/writes the session Arc<RwLock<Option<NotebookSession.
Run `npx skills add nteract/nteract --skill mcp-session-lifecycle -a claude-code`. Or copy the skill folder (.agents/skills/mcp-session-lifecycle in nteract/nteract) into .claude/skills/mcp-session-lifecycle in your project. Claude Code loads it when a task matches its description.
Run `npx skills add nteract/nteract --skill mcp-session-lifecycle -a codex`. Or copy the skill folder (.agents/skills/mcp-session-lifecycle in nteract/nteract) into .agents/skills/mcp-session-lifecycle 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 nteract/nteract --skill mcp-session-lifecycle -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/mcp-session-lifecycle, .gemini/skills/mcp-session-lifecycle, .github/skills/mcp-session-lifecycle and .opencode/skills/mcp-session-lifecycle in your project.
SKILL.md names no scripts, command-line tools or credentials: MCP Session Lifecycle is instructions for the agent only.
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.
MCP Session Lifecycle is published under the BSD-3-Clause licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.5k tokens (SKILL.md is roughly 14k 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 MCP Session Lifecycle: Memori MCP Memory Usage (MemoriLabs/Memori, 17k stars), Engraphis Memory (Coding-Dev-Tools/engraphis, 179 stars), Memorix (AVIDS2/memorix, 835 stars) and Engram Memory (Patdolitse/piia-engram, 162 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
nteract (a GitHub organization) maintains it in nteract/nteract, which has 179 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 7, 2026.
Source: nteract/nteract on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.