mem0-memory
Skill7 starsChanged 5 months agoMITView on GitHub
Use optional Mem0 memory tools for focused cross-session recall and short verified durable facts. Use when the user asks to remember or forget something, when resuming work that may need prior context, or after verified progress creates a stable fact worth retaining.
In this repository19 other files it gives its agents.
- AGENTS.mdAGENTS.md
- compactSkill
- assistant-notebookSkill
- brainstormingSkill
- dispatching-parallel-agentsSkill
- executing-plansSkill
- finishing-a-development-branchSkill
- next-level-agentSkill
- planning-parallel-workSkill
- receiving-code-reviewSkill
- requesting-code-reviewSkill
- subagent-driven-developmentSkill
- systematic-debuggingSkill
- test-driven-developmentSkill
- using-git-worktreesSkill
- verification-before-completionSkill
- writing-acceptance-testsSkill
- writing-plansSkill
- writing-skillsSkill
The file
We split this skill into the rules it gives an agent
10 rules. About 0 are common, 1 is distinctive, and 9 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈1
Distinctive · estimate
This author's own choices. Worth a look.
9
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 12
If memory_* tools are absent or a call fails, continue the primary task.
- Very specific: line 19
Use memory_search with a focused query and normally limit: 3 to 5.
- Very specific: line 20
Do not bulk-dump memory. Avoid memory_list unless focused search cannot identify a record.
- Very specific: line 22
Use memory_get only to inspect an identified record exactly.
- Distinctive: line 33
Never store secrets, credentials, tokens, private keys, raw transcripts, large logs, source files, whole documents, guesses, or transient …
- Very specific: line 35
Before memory_add, run a precise duplicate memory_search with a small limit.
- Very specific: line 40
When the user explicitly asks to remember something, write synchronously and verify it with memory_get using the returned ID or a focused …
- Very specific: line 43
Use memory_delete only for the exact identified record the user asked to forget or that is confirmed obsolete.
- Very specific: line 47
Do not invent or pass user_id, namespace, agent_id, or any other scope override.
- Very specific: line 52
Use only the available NLA tools: memory_search, memory_list, memory_get, memory_add, memory_update, memory_delete, and memory_history.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Mem0 Memory
Mem0 is an optional associative-memory layer. Current task context, current repository evidence and documentation, and the NLA private ledger are primary. Mem0 can supply a useful lead, but it is not authoritative live state.
If memory_* tools are absent or a call fails, continue the primary task. When
the user explicitly requested persistence or deletion, say that it could not be
confirmed. Never treat an empty or failed search as proof that a fact is false
or never existed.
Retrieve narrowly
- Use
memory_searchwith a focused query and normallylimit: 3to5. - Do not bulk-dump memory. Avoid
memory_listunless focused search cannot identify a record; if listing is necessary, keep its limit small. - Use
memory_getonly to inspect an identified record exactly. Usememory_historyonly when how that record changed matters. - Recheck paths, commits, repository behavior, and service state in their canonical sources before relying on them.
Bounded retrieval matters especially for 4B models: return only records needed for the current decision.
Store, update, or delete carefully
- Accept only a short, atomic, self-contained, confirmed, durable fact.
- Never store secrets, credentials, tokens, private keys, raw transcripts, large logs, source files, whole documents, guesses, or transient reasoning.
- Before
memory_add, run a precise duplicatememory_searchwith a small limit. Update the matching record withmemory_updateinstead of creating a near-duplicate. - For exact technical facts, identifiers, paths, commits, or explicit wording,
call
memory_addwithinfer: false. - When the user explicitly asks to remember something, write synchronously and
verify it with
memory_getusing the returned ID or a focusedmemory_search. Report honestly if verification fails. - Use
memory_deleteonly for the exact identified record the user asked to forget or that is confirmed obsolete.
The namespace is configured outside the agent and owned by the server/plugin.
Do not invent or pass user_id, namespace, agent_id, or any other scope
override; those are not memory-tool arguments.
Tool surface
Use only the available NLA tools: memory_search, memory_list, memory_get,
memory_add, memory_update, memory_delete, and memory_history.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

