memory
Skill4 starsChanged 16 days agoMITView on GitHub
Store and recall durable knowledge in the adaptive memory. Use whenever the user corrects how you work, asks you to remember something, when you infer a non-obvious convention or solve a problem whose reasoning is not in the diff, when a stored memory turns out to be stale, and to expand a memory id from recall.
106 other projects use a version of this.
Adopted by
Most recently taken up by
- XORwell/archeflowtheir own version, first seen Nov 15, 2026
- intelligentcode-ai/skillstheir own version, first seen Nov 15, 2026
- muslim-sec/skillstheir own version, first seen Nov 15, 2026
- thisromanHQ/agent-skillstheir own version, first seen Nov 15, 2026
- Fili999/ai-hubtheir own version, first seen Nov 15, 2026
- dvy1987/agent-loomtheir own version, first seen Nov 15, 2026
Used with
Projects with it also use ecosystem-reference, fractal-delegation and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
naman10parikhSkillecosystem-reference
Quick-access directory of Claude Code ecosystem repos, skills, plugins, MCPs, and patterns. Use when improving the harness.
Also in 5 projects that use this
naman10parikhSkillfractal-delegation
Also in 5 projects that use this
Maliot100XSkillsend-user-message
Send a proactive message to a paired user via their channel (Discord, Telegram, or WhatsApp). Use when the agent needs to notify, alert, or send an unsolicited message to a user — especially during heartbeat invocations, scheduled tasks, or when the agent wants to reach out without a prior user message in the current conversation. Triggers: 'send message to user', 'notify user', 'alert user', 'message the user on discord/telegram/whatsapp', or any need to proactively communicate with a paired sender.
Also in 4 projects that use this
jh941213Skilldocs-ci
문서 CI(링크·OpenAPI lint·breaking 게이트·mermaid 검증)나 문서 드리프트 감지(docs.yaml 신선도 검사)를 설치하거나 돌릴 때 사용. 문서 내용 작성은 docs-architecture·docs-interfaces·docs-manuals.
Also in 3 projects that use this
jh941213Skilldocs-interfaces
API·이벤트 인터페이스 문서(OpenAPI·swagger·AsyncAPI 명세, 엔드포인트 레퍼런스, API 구성도·시퀀스, API CHANGELOG)를 만들거나 코드와 맞출 때 사용. 시스템 구성도는 docs-architecture, API 설계 원칙은 api-design-principles.
Also in 3 projects that use this
- +6 more from naman10parikh
- +1 more from jh941213
Other versions106 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 106
- google-gemini/gemini-cli★ 109ksame name
- jlia0/tinyclaw★ 3.6ksame name
- TinyAGI/tinyagi★ 3.6ksame name
- TinyAGI/tinyclaw★ 3.6ksame name
- Chachamaru127/claude-code-harness★ 3.2ksame name
- codeaholicguy/ai-devkit★ 1.7ksame name
- Muuuun/luxas★ 1.2ksame name
- shobcoder/shob★ 575same name
- boshu2/agentops★ 453same name
- makushingu/harness-maxxing★ 161same name
96 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repositoryOne other file it gives its agents.
- memory-curateSkill
The file
We split this skill into the rules it gives an agent
3 rules. 0 are common, 2 are distinctive, and 1 is very specific to this project.
0
Common
Most of the 89 edited versions we read keep these.
2
Distinctive
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 29
Do not ask the user before saving.
- Very specific: line 51
Read memory/references/authoring.md before you write or edit a memory: it gives each field's limit and form, the namespaces a conflict_key …
- Distinctive: line 75
If recall reports a degraded mode or a session-start notice says memory is off, run the memory doctor and follow the fix it names.
“Common” is measured: kept by at least 6 in 10 of the 89 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Memory capture
One local database serves every project. Hook recall and memory_search surface memories automatically; you are the only author, and storing is always your decision.
When to store, and what
| Moment | Store |
| The user corrects how you work | A pattern right away, before continuing: the rule and the reason. |
| The user asks you to remember something | That fact or rule, now. |
| You inferred a non-obvious project convention | The convention and the evidence for it. |
| You solved a problem | The reasoning a future session cannot read from the diff: why this approach, what was rejected, which constraint forced it. Not the fix itself. |
Rules for every memory:
- Store only what a future session could not re-derive from the code, git history or the project's always-loaded instruction file. The server rejects content that restates a line of the instruction files it reads.
- English, one topic per memory, insight first, then the reason.
- Searchable terms: file paths, module names, commands, error signatures.
questions: 3–6 short prompts a user would type when this memory matters — the task or the symptom, not the answer (How do I run the billing tests?,pytest fails with too many connections). Write them in English and in the language the user writes in. Recall compares every prompt with each question, so they are how a memory is found in any language.- Do not ask the user before saving. Do not store agent, task or system text: write the lesson in your own words.
The hooks never store anything and never flag a correction or a remember request: notice those yourself, in any language, and store them right away. After a failing command later passed, the Stop hook returns a memory checkpoint when you finish the turn without a store: store the durable lesson, or say there is none, then finish.
Acting on recall
Recalled constraints start with Apply —, procedures with Follow —. Apply or follow each one, or say why it does not apply. Then call memory_feedback once per turn with a verdict on every injected id, each id in one list: used when it informed the work, not_applicable when it was irrelevant here, wrong when it was incorrect or outdated — for example {used: [id1], not_applicable: [id2, id3]}. An id you leave out counts as no evidence either way. A wrong memory leaves recall until a used verdict or a store of the same content brings it back; nothing is deleted.
The slot every store names
type:semanticfacts,proceduralhow-tos,episodicevents,patterncorrections and preferences.scope=useronly for what holds across projects (the user, their tools);scope=projectotherwise.kind:constraint,preference,fact,procedureorbelief.conflict_key: a stable lowercase dotted key, the same every time the same question is answered —project.primary_database,test.command.backend,team.reviewers.cardinality:singlewhen the slot holds one current value,multiwhen several coexist.value_text: the slot's value in a few words (PostgreSQL 15); required forsingle.keywordsandanchorshelp recall find it. Before a tool call a memory is recalled only when an anchor matches exactly: before Bash, a command head (pytest,git commit); before Read, Edit or Write, a project-relative path or basename (billing/tax.py), a directory prefix ending in/(migrations/versions/) or an extension starting with.(.vue) of the file.- A lesson tied to a ticket: put the ticket id, upper-case as it appears in the branch (
TOUCH-4945), into bothkeywordsandanchors. Session start on a branch that carries the ticket then recalls it. - A lesson about an error: put its stable tokens — the code, class name or module name (
SQLITE_BUSY,ModuleNotFoundError,express) — intoanchors. A failing Bash command recalls it only through an anchor equal to a token of its error, once per session and command; keywords are not matched there, and a command head alone never recalls it.
Authoring standard
Read memory/references/authoring.md before you write or edit a memory: it gives each field's limit and form, the namespaces a conflict_key may start with, and the anchor forms recall can match, with good and bad examples.
The server rejects an anchor or key that no recall path can hit and names the fix; correct that field and repeat the call.
When the answer is needs_resolution
The server wrote nothing and lists the candidates it found, active ones and hypotheses alike; each names its state. Repeat the same call with resolution:
SUPERSEDE+target— a single-valued fact changed; the old memory is revoked.UPDATE+target— refine the same fact in place.NOOP+target— it is already known; only its support count changes.ADD— a genuinely different memory.
A rejection message names the resolution to use instead. An exact duplicate of an active or hypothesis memory is recorded as noop automatically, and a hypothesis comes back to active. When a candidate in hypothesis holds the lesson you are storing, NOOP or UPDATE it instead of ADD: that brings it back to active rather than leaving a copy beside it; SUPERSEDE targets active memories only.
Reading and curating
- Recall shows abstracts with the full id; read the body with
memory_get. - Hook recall injects active memories only;
memory_searchalso finds memories inhypothesisand names each result'sstate. memory_listbrowses memories newest first, without content, filtered by state, kind, type or scope; pass itsnext_cursorasbeforefor the next page.project: "all"shows every project's memories, read-only.memory_updateedits title, abstract, content, keywords or anchors, and questions in place; keywords, anchors and questions replace the stored value whole. Revoked memories are immutable, and scope or kind cannot change: store the memory again, then delete the old one. Importance is derived from feedback, never typed.- For a full review with the user, use the
memory-curateskill. memory_relateis for load-bearing connections only, at most 20 per memory.memory_statusshows what the memory holds and does for this project: counts, the recall switch, how often recall injects, open capture moments and the last injections.- The user can switch recall off for this project; storing keeps working while it is off.
- If recall reports a degraded mode or a session-start notice says memory is off, run the memory doctor and follow the fix it names.
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.

