remember
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseAI has no memory between sessions. Every new session starts blank. This skill fixes that.
Run it at the end of a session to save. Run it at the start of a new session to restore. That is all it does — but done consistently, it means nothing ever gets lost.
AI在不同会话之间没有记忆功能。每次新会话开始时都是空白状态。本Skill解决了这个问题。
在会话结束时运行它来保存内容,在新会话开始时运行它来恢复内容。它的功能仅此而已——但持续使用的话,意味着不会丢失任何信息。
How to Invoke
调用方式
To save at end of session:
/remember saveTo restore at start of new session:
/remember restoreIf the developer just runs without specifying — ask them which one they need.
/remember会话结束时保存:
/remember save新会话开始时恢复:
/remember restore如果开发者只运行而未指定操作——询问他们需要哪种功能。
/rememberSave Mode
保存模式
When the developer runs :
/remember save当开发者运行时:
/remember saveWhat to capture
需要捕获的内容
Read the entire session. Extract only what a developer would genuinely need to continue this work in a completely fresh context. Not a transcript. Not a summary of everything that happened. The essential state.
Think like someone handing off a project to a colleague who is equally skilled but knows nothing about what happened today. What would they need to know to continue without losing anything?
Capture:
What was built — specific files created or modified, features completed, components added. Be precise. Not "built the auth flow" — "created app/(auth)/login/page.tsx, app/(auth)/callback/page.tsx, and middleware.ts. OAuth with Google and GitHub working end to end."
Decisions made — choices that would be hard to reverse or that future work depends on. Not implementation details — architectural choices. "Chose to use server-side data fetching over client-side — avoids loading states and keeps sensitive logic off the client."
Problems solved — any issue that took time to figure out. So the next session does not solve the same problem twice. "Third party auth callback requires a trailing slash in the redirect URL — fixed in the callback handler."
Current state — exactly where things stand right now. What works, what is partial, what is known to be broken.
What comes next — the very next thing that needs to happen. Specific enough that the next session can start immediately without figuring out where to begin.
Open questions — anything unresolved that the next session needs to address.
读取整个会话内容。仅提取开发者在全新环境中继续工作真正需要的信息。不是会话记录,也不是所有事件的总结,而是核心状态。
想象一下,你要把项目交接给一位同样熟练但对当前工作一无所知的同事。他们需要知道哪些信息才能无缝接续工作而不遗漏任何内容?
需要捕获:
已完成的工作——创建或修改的具体文件、完成的功能、添加的组件。要精准。不要写“构建了认证流程”——而要写“创建了app/(auth)/login/page.tsx、app/(auth)/callback/page.tsx和middleware.ts。Google与GitHub的OAuth认证已实现端到端运行。”
已做出的决策——难以逆转或后续工作依赖的选择。不是实现细节,而是架构层面的选择。比如“选择使用服务端数据获取而非客户端数据获取——避免加载状态,并将敏感逻辑保留在服务端。”
已解决的问题——任何需要花费时间解决的问题。这样下一次会话就不会重复解决同一问题。比如“第三方认证回调要求重定向URL末尾带有斜杠——已在回调处理程序中修复。”
当前状态——当前工作的精确进展。哪些功能可用,哪些是半成品,哪些已知存在问题。
下一步计划——接下来最优先要做的事情。要足够具体,让下一次会话可以立即开始,无需再确定从何处着手。
待解决问题——任何未解决且需要在下一次会话中处理的事项。
What not to capture
无需捕获的内容
- Implementation details that are visible in the code
- Decisions already documented in context files
- Anything that can be inferred by reading the codebase
- The process of how something was built — only what was built and what was decided
- 代码中可见的实现细节
- 已在上下文文件中记录的决策
- 可通过阅读代码库推断出的信息
- 构建过程——仅需记录已完成的工作和已做出的决策
Where to save
保存位置
Write the memory to in the project root. Overwrite it completely — do not append. This file always contains only the most recent session state.
memory.md将记忆内容写入项目根目录下的文件。完全覆盖原有内容——不要追加。该文件始终仅包含最新的会话状态。
memory.mdFormat
格式
markdown
undefinedmarkdown
undefinedMemory — [Feature or Session Name]
Memory — [功能或会话名称]
Last updated: [date and time]
Last updated: [日期和时间]
What was built
What was built
[Specific files, components, features completed this session]
[本次会话完成的具体文件、组件、功能]
Decisions made
Decisions made
[Architectural and implementation decisions that future work depends on]
[后续工作依赖的架构和实现决策]
Problems solved
Problems solved
[Issues resolved this session — so they are not solved again]
[本次会话解决的问题——避免重复解决]
Current state
Current state
[Exactly where things stand — what works, what is partial, what is broken]
[当前精确进展——可用功能、半成品、存在问题的部分]
Next session starts with
Next session starts with
[The very first thing to do in the next session — specific and actionable]
[下一次会话的首要任务——具体且可执行]
Open questions
Open questions
[Anything unresolved that needs addressing]
After writing the file, confirm to the developer:
Memory saved to memory.md.
Next session: run /remember restore to pick up from here.
---[需要处理的未解决事项]
写入文件后,向开发者确认:
Memory saved to memory.md.
Next session: run /remember restore to pick up from here.
---Restore Mode
恢复模式
When the developer runs at the start of a new session:
/remember restore当开发者在新会话开始时运行时:
/remember restoreStep 1 — Find the memory
步骤1 — 查找记忆文件
Look for in the project root. If it does not exist, tell the developer:
memory.mdNo memory.md found in this project.
Either this is the first session, or the file was not saved.
To save memory at the end of a session, run /remember save.在项目根目录下查找。如果不存在,告知开发者:
memory.mdNo memory.md found in this project.
Either this is the first session, or the file was not saved.
To save memory at the end of a session, run /remember save.Step 2 — Read everything available
步骤2 — 读取所有可用内容
Read first. Then read any other context files that exist — CLAUDE.md, context files, whatever is available. Build the most complete picture possible of where this project is and where it is going.
memory.md首先读取,然后读取所有其他可用的上下文文件——CLAUDE.md、上下文文件等。尽可能全面地了解项目的当前状态和发展方向。
memory.mdStep 3 — Confirm what was restored
步骤3 — 确认已恢复的内容
Do not start building. Do not assume the developer wants to continue immediately. Summarise what was restored so the developer can verify Claude understood correctly.
Memory restored. Here is where we are:
**Last session:** [what was built]
**Current state:** [what works right now]
**Decisions in place:** [key decisions that are locked]
**Next up:** [what the next session should start with]
Is this correct? Say yes to continue, or correct anything
that does not look right before we proceed.Only after the developer confirms does the session continue.
不要立即开始工作。不要假设开发者想要立即继续。总结已恢复的内容,让开发者可以验证Claude是否正确理解。
Memory restored. Here is where we are:
**Last session:** [已完成的工作]
**Current state:** [当前可用功能]
**Decisions in place:** [已确定的关键决策]
**Next up:** [下一次会话应从何处开始]
Is this correct? Say yes to continue, or correct anything
that does not look right before we proceed.只有在开发者确认后,会话才继续进行。
If memory is incomplete or unclear
如果记忆内容不完整或不清晰
If exists but is missing important context, say so honestly:
memory.mdI found memory.md but some context seems missing —
[what is unclear or absent].
Should we continue with what we have, or do you want
to fill in the gaps before we start?Do not guess. Do not assume. Surface the gap and let the developer decide.
如果存在但缺少重要上下文,如实告知:
memory.mdI found memory.md but some context seems missing —
[不清晰或缺失的内容].
Should we continue with what we have, or do you want
to fill in the gaps before we start?不要猜测,不要假设。指出缺失的部分,让开发者决定。
The Rule
规则
Every session ends with .
Every session starts with .
/remember save/remember restoreThat is the whole system. Consistent use is what makes it work.
A skill used sometimes is a skill that cannot be relied on.
每次会话结束时运行。
每次会话开始时运行。
/remember save/remember restore这就是整个系统。持续使用才能发挥作用。
偶尔使用的Skill无法被依赖。