OpenClaw 失忆怎么办?上下文超限、会话断链的完整解决手册(2026)
核心结论: OpenClaw「失忆」有三种完全不同的原因,对应三套不同的解决方案。盲目重启只能解决其中一种。读完本文,你能区分症状、精准施药,而不是每次都从头喂一遍背景。

什么是「OpenClaw 失忆」?
在中文 AI 圈,「虾失忆了」指 OpenClaw(基于 Claude Code 架构的 AI Agent)在工作过程中忘记了你之前说过的话、设置过的规则或交代过的背景。这不是 Bug,而是大语言模型的结构性特征:
Claude Code 每个会话都从一个全新的上下文窗口开始。
换言之,虾天生是「鱼的记忆」——你关掉终端,它忘;上下文塞满,它也忘。理解这一点,才能从根本上解决问题。
三种「失忆」症状,三套不同方案
不同原因的失忆,处理方式完全不同:
| 症状 | 触发原因 | 核心特征 | 解决方向 |
|---|---|---|---|
| 症状 A:回复越来越差 | 上下文窗口即将满 | 回复变短、开始重复、逻辑混乱 | /compact 压缩上下文 |
| 症状 B:新开会话什么都不记得 | 会话关闭,上下文清零 | 重新打开终端后完全陌生 | --continue 接续 / CLAUDE.md 预加载 |
| 症状 C:一直记不住我说过的规则 | 规则只在对话里说,未写入持久化文件 | 每次都要重新交代同一件事 | 写入 CLAUDE.md 或 Auto Memory |
诊断第一步: 先确认你属于哪种症状,再对应操作。
急救方案:失忆了怎么立刻恢复
症状 A 急救:上下文即将爆满 → /compact
当虾开始答非所问、回复越来越短,说明上下文窗口接近上限。
/compact
/compact 会将当前对话智能压缩成摘要,释放上下文空间,同时保留对话的关键信息。执行后 Claude 会重新读取你的 CLAUDE.md,从压缩后的起点继续工作。
重要:/compact 之后,CLAUDE.md 里的内容完整保留;但只在对话中口头交代的规则(没写进 CLAUDE.md 的)会丢失。这是症状 A 转变为症状 C 的常见陷阱。
症状 B 急救:会话关闭后接续 → --continue / --resume
方式一:接上最近一次会话
claude --continue
在同一项目目录下运行,自动恢复最近的会话,完整的消息历史、工具调用记录、上下文一并还原。
方式二:从会话列表选择
claude --resume
打开交互式会话选择器,显示所有保存的会话(含时间、消息数、git 分支),支持搜索和预览,用方向键选择后回车恢复。
方式三:从 PR 恢复关联会话
claude --from-pr 123
如果你创建过与 PR 关联的会话,可通过 PR 编号直接恢复。
会话选择器快捷键:
P预览会话内容R重命名会话/搜索过滤B只显示当前 git 分支的会话
症状 C 急救:规则总被遗忘 → 写入 CLAUDE.md
口头交代的规则 = 写在沙上的字。唯一的解法是把它写进 CLAUDE.md。
# 快速生成初始 CLAUDE.md
/init
/init 会分析你的代码库,自动生成包含构建命令、测试规范和项目约定的 CLAUDE.md。之后手动补充你需要虾永久记住的规则:
# 我的项目规则
- 代码缩进用 2 个空格,不用 Tab
- 提交前必须运行 `npm test`
- API handlers 放在 `src/api/handlers/` 目录
- 回答时用中文,代码注释用英文
CLAUDE.md 文件优先级:
| 位置 | 路径 | 作用域 |
|---|---|---|
| 企业级 | /Library/Application Support/ClaudeCode/CLAUDE.md |
所有用户 |
| 个人级 | ~/.claude/CLAUDE.md |
所有项目 |
| 项目级 | ./CLAUDE.md 或 ./.claude/CLAUDE.md |
当前项目(可提交 Git) |
更具体的位置优先级更高。常用做法:项目规范写进项目级,个人偏好写进个人级。
预防失忆的两大机制

机制一:CLAUDE.md(你来写)
CLAUDE.md 是你主动写给虾的「长期记忆手册」。每次会话开始时自动加载到上下文。
写好 CLAUDE.md 的四条原则:
- 保持在 200 行以内:超出会消耗过多上下文,降低规则遵守率
- 具体可验证:写「用 2 空格缩进」不要写「格式规范」
- 消除矛盾:多个 CLAUDE.md 之间的冲突指令会让虾随机选一条执行
- 用
@引用大文件:参考文档太长,用@docs/reference.md按需引入
# 推荐的 CLAUDE.md 结构
## 项目背景
- 这是一个 React + TypeScript 的 SaaS 项目
- 后端 API 文档见 @docs/api-spec.md
## 编码规范
- 使用 2 空格缩进
- 函数命名用驼峰式
## 工作流程
- 修改前先用 `git status` 检查
- 提交前运行 `npm run test && npm run lint`
机制二:Auto Memory(虾自己写)
Auto Memory 是 Claude Code v2.1.59+ 的内置功能(默认开启),让虾根据你的纠正和偏好自动记笔记。
存储位置: ~/.claude/projects/<项目>/memory/MEMORY.md
每次会话开始时,自动加载 MEMORY.md 的前 200 行。当虾「学到」新东西(比如你纠正了它的某个习惯),它会自动写入这个文件。
查看和管理 Auto Memory:
/memory
运行 /memory 可以:
- 查看当前会话加载了哪些 CLAUDE.md 和规则文件
- 开关 Auto Memory
- 浏览 Auto Memory 存储的内容
如果不想让虾自作主张记什么,可以关闭:
// ~/.claude/settings.json
{
"autoMemoryEnabled": false
}
CLAUDE.md vs Auto Memory:如何配合使用
| 维度 | CLAUDE.md | Auto Memory |
|---|---|---|
| 谁来写 | 你 | 虾自动写 |
| 内容类型 | 规则和规范 | 学到的偏好和模式 |
| 适合写什么 | 项目架构、代码规范、工作流程 | 构建命令、调试经验、习惯偏好 |
| 作用范围 | 项目/个人/组织 | 当前项目的工作区 |
| 控制粒度 | 完全由你掌控 | 自动积累,可随时编辑 |
最佳实践: 把「硬性规则」写进 CLAUDE.md(如代码风格、提交流程),让 Auto Memory 自然积累「软性偏好」(如你喜欢什么格式的回答、常用的调试方法)。
进阶:命名会话,彻底告别「找不到上次对话」
# 开始时给会话命名
claude -n auth-refactor
# 或中途命名
/rename feature-payment-v2
# 之后精准恢复
claude --resume auth-refactor
命名会话的价值在于:处理多个并行任务时,「payment-integration」比「解释这段代码」容易找到 100 倍。
七牛云的 LinClaw(桌面版 OpenClaw)在此基础上还提供多轮记忆智能压缩功能,在上下文接近上限时自动执行压缩并保留关键信息,适合需要长时间持续运行 Agent 的企业场景。
常见问题 Q&A
Q:/compact 之后虾还记得我们之前说过的话吗?
A:记得大意,但不记得细节。/compact 会生成一份对话摘要,保留任务进展和关键决策,但逐字逐句的对话历史会被压缩掉。写进 CLAUDE.md 的规则不受影响,每次 /compact 后都会重新完整加载。
Q:Auto Memory 会记住敏感信息吗?
A:Auto Memory 的文件是纯文本 Markdown,存在本地 ~/.claude/projects/ 目录,不上传到云端。你可以随时用 /memory 查看和删除内容。建议避免在对话中输入 API Key 等敏感信息,因为它们有可能被记入记忆文件。
Q:团队协作时 CLAUDE.md 怎么用?
A:把 ./CLAUDE.md 或 ./.claude/CLAUDE.md 提交到 Git,团队所有成员自动共享同一套指令。个人特有的偏好放到 ~/.claude/CLAUDE.md,不影响他人。
Q:CLAUDE.md 写了但虾好像没遵守?
A:先运行 /memory 确认文件是否被正确加载(文件会出现在列表中)。若已加载但不遵守,通常是指令太模糊或存在互相矛盾的规则。将指令改为具体可验证的表述(「使用 2 空格」而不是「规范代码格式」),并检查不同 CLAUDE.md 文件之间是否有冲突。
Q:我的 CLAUDE.md 要写多详细?
A:目标是200 行以内。规则越多,虾遵守的概率越低——这是 token 竞争的现实限制。把最重要的 5–10 条规则写进去,其他细节按需用 @ 引用外部文件,或分解到 .claude/rules/ 目录,按文件类型按需加载。
总结
OpenClaw 失忆问题按场景处理,三步定位:
- 诊断:是上下文满了(症状 A)、会话关了(症状 B)、还是规则没写进持久化文件(症状 C)?
- 急救:症状 A 用
/compact,症状 B 用--continue/--resume,症状 C 立即写 CLAUDE.md。 - 预防:CLAUDE.md 写硬规则 + 开启 Auto Memory 让虾自学,两者配合,失忆概率降至最低。
核心心法: 对话里说过的话 = 忘记;写进 CLAUDE.md 的规则 = 永远记得。
本文基于 Claude Code 2026 年 3 月官方文档(code.claude.com/docs)整理,Auto Memory 功能要求 Claude Code v2.1.59 或更高版本。
延伸资源
- Claude Code Memory 官方文档:https://code.claude.com/docs/en/memory
- Claude Code 会话管理:https://code.claude.com/docs/en/sessions
- LinClaw(桌面版 OpenClaw):https://linclaw.qnlinking.com/

**核心结论:** OpenClaw「失忆」有三种完全不同的原因,对应三套不同的解决方案。盲目重启只能解决其中一种。读完本文,你能区分症状、精准施药,而不是每次都从头喂一遍背景。**核心解决心法:** 对话里说过的话 = 忘记;写进 CLAUDE.md 的规则 = 永远记得。
浙公网安备 33010602011771号