MemoryLake
返回全部文章
Tutorial2026 年 10 月 22 日·10 分钟阅读

如何在不丢失上下文的情况下将 Claude 聊天迁移到 Claude Code (2026)

许多编码工作都是从 Claude 中的对话开始的。您讨论架构、确定命名方案、找出迁移不断失败的原因,并就第一版本应该做什么和不应该做什么达成一致。然后,您在仓库中打开 Claude Code,会话开始时却没有任何这些内容。

这是意料之中的。Claude 聊天和 Claude Code 使用相同的模型和相同的账户,但它们将上下文保存在不同的地方。聊天将记忆和历史记录保存在您的 Claude 账户中。Claude Code 将指令保存在仓库的文件中,将笔记保存在您机器上的文件夹中。从一个过渡到另一个意味着将对话中得出的结论移动到 Claude Code 读取的位置。

本指南涵盖了对话本身的这种迁移:您在聊天中达成的决策、限制和规范。如果您主要想迁移 Claude 保存的记忆和项目知识,我们关于将 Claude 记忆迁移到 Claude Code 的指南涵盖了这方面的内容。

为什么会话开始时没有您的聊天记录

Claude Code 的文档在其记忆页面开头做出了简明陈述:“每个 Claude Code 会话都从一个全新的上下文窗口开始。有两种机制可以跨会话传递知识”。它命名了它们:

  • “CLAUDE.md 文件:您编写的用于为 Claude 提供持久上下文的指令。”
  • “自动记忆:Claude 根据您的纠正和偏好自己编写的笔记”

两者都是文件。CLAUDE.md 存在于您的仓库或主文件夹中,而自动记忆存在于您计算机上的目录中。文档描述了每个文件的加载来源,而这两个位置都在 Claude Code 这一侧。

Claude 聊天的记忆工作方式不同。Anthropic 的记忆文章指出“当您聊天时,Claude 会将记忆保存为一组独立的主题”,并描述了在聊天和云端的 Claude Cowork 之间共享的一个记忆。Claude Code 的记忆文档描述了 CLAUDE.md 和自动记忆,但没有描述将您的聊天记忆或聊天历史记录加载到会话中。在您复制内容之前,请将两者视为独立的。

项目也是如此。Claude Code 现在拥有自己用于云端工作的 Projects 功能,其文档将其与旧功能区分开来:“claude.ai 聊天和 Cowork 中的 Projects:早期的 Projects 体验,它将对话和参考文件分组,没有线程或协调器。”您在聊天中构建的项目与 Claude Code 中的项目是不同的东西。

两者确实共享的是您的计划。Anthropic 关于将 Claude Code 与 Pro 或 Max 结合使用的文章指出:“这些限制在 Claude 和 Claude Code 之间共享,这意味着这两个工具中的所有活动都计入相同的限制。”

聊天的每个部分在 Claude Code 中存放在哪里

一个有用的聊天包含几种上下文。每种在 Claude Code 中都有其自然归宿。

代码库的决策和规范

这些内容保存在项目 CLAUDE.md 中,位于 ./CLAUDE.md 或 ./.claude/CLAUDE.md。文档将其描述为“项目的团队共享指令”,并给出的示例是“项目架构、编码标准、常见工作流”。如果您的聊天确定了如何处理错误、使用哪个库来处理日期,或者文件夹布局的含义,那么这就是项目 CLAUDE.md 的素材。

Anthropic 关于什么属于那里的建议:“将 CLAUDE.md 视为您写下否则需要重新解释的内容的地方。”关于大小,“目标是每个 CLAUDE.md 文件控制在 200 行以内。”

您的个人偏好

适用于您所有项目的偏好设置保存在 ~/.claude/CLAUDE.md 中,文档称其为“所有项目的个人偏好”。您不想提交的单个项目的偏好设置保存在 ./CLAUDE.local.md 中,描述为“个人特定于项目的偏好;添加到 .gitignore”。

如果您的聊天记忆知道您更喜欢小的提交,或者您希望在代码之前获得解释,这就是它的去处。

Claude 无法从代码中获取的背景信息

您讨论的一些内容不会显示在仓库中:为什么您拒绝了某种方法、截止日期、谁拥有某项服务。Claude Code 的自动记忆就是为这种笔记而构建的。文档列出了它保存的类型,包括“项目:Claude 无法从代码或 git 历史记录中推导出的正在进行的工作、截止日期和决策”。

您也可以告诉 Claude Code 记住某些内容。当您要求它记住一个事实时,它会将其保存到自动记忆中。要在 CLAUDE.md 中放入指令,请直接提出要求或自己编辑该文件。

自动记忆有限制,在依赖它之前有必要了解:

  • “自动记忆是机器本地的。”它存储在 ~/.claude/projects/<project>/memory/ 下,并且“文件不会跨机器或云环境共享。”
  • “在每次对话开始时,会加载 MEMORY.md 的前 200 行或前 25KB(以先到者为准)。”主题文件在 Claude 需要时读取。
  • “Claude 会跳过任何它可以从代码库中推导出的内容,例如架构、文件路径或调试修复。它还会跳过您的 CLAUDE.md 文件中已经说明的任何内容。”

因此,如果您在多台计算机上或在云端会话中工作,请将任何重要内容放入 CLAUDE.md 而不是自动记忆中。我们关于为什么 Claude Code 会跨机器遗忘的指南涵盖了这一差距。

长篇参考资料

聊天中的规范、研究笔记和长篇解释更适合作为仓库中的文件(例如 docs/ 下的文档),而不是作为 CLAUDE.md 的内容。Claude 可以在需要时读取它们,并且 CLAUDE.md 可以指向它们。文档指出“CLAUDE.md 文件可以使用 @path/to/import 语法导入其他文件”,并且这些文件在启动时与导入它们的 CLAUDE.md 一起加载,因此仅导入每个会话所需的内容。

如果您使用工作区(worktrees)、其他计算机或云端会话

您运行 Claude Code 的位置会改变会话看到这些文件中的哪一个。项目 CLAUDE.md 随仓库一起移动,因此每个克隆和每个工作区都拥有它。自动记忆在单台计算机上的单个仓库中共享:“同一 git 仓库中的所有工作区和子目录共享一个自动记忆目录。”

CLAUDE.local.md 是最容易让人困惑的地方。文档指出“被 git 忽略的 CLAUDE.local.md 仅存在于您创建它的工作区中。”如果您在多个工作区中工作,请将个人指令保存在您的用户文件中。我们关于每个 Claude Code 工作区会话加载什么的指南涵盖了详细信息。

如果您的仓库已经为其他编码工具使用了 AGENTS.md,Claude Code 可以读取它。我们关于将 CLAUDE.md 迁移到 AGENTS.md 的指南解释了这两个文件如何协同工作。

人们首先尝试的方法

将整个聊天内容粘贴到第一条消息中。 该会话拥有上下文。但下一个会话会从全新的上下文窗口开始,而粘贴的内容仅存在于旧的转录中。

要求 Claude Code 查找您的 Claude 记忆。 它有文档记录的记忆是 CLAUDE.md 和自动记忆。将您需要的内容复制到其中之一。

将整个记忆导出复制到 CLAUDE.md 中。 CLAUDE.md 会加载到每个会话中,Anthropic 建议将每个文件保持在 200 行以内。只移动仓库需要的内容。

等待自动记忆来获取它。 文档指出“Claude 不会在每个会话中都保存内容。它会根据这些信息在未来的对话中是否有用来决定什么值得记住。”如果某个决策很重要,请将其写入 CLAUDE.md 或要求 Claude 记住它。

将 CLAUDE.md 视为 Claude 必须遵守的规则。 Anthropic 表示“Claude 将它们视为上下文,而不是强制配置。”具体、简短的指令比长指令执行得更一致。

在 Claude Code 的 Projects 中寻找聊天项目。 它们是不同的功能。根据项目的指令和文件重建您需要的内容。

手动迁移

步骤 1:从 Claude 聊天中提取上下文

从您仍然依赖的对话开始。打开每一个对话,并写下它所确立内容的简短摘要:决策、原因以及任何限制。您可以在该聊天中要求 Claude 起草摘要,然后对其进行编辑,使其符合您实际达成的一致意见。

然后导出 Claude 保存的关于您的内容。关于记忆导出的文章提供了一个在聊天中使用的提示词:“逐字写下你对我的记忆,完全按照它们在你的记忆中出现的样子。”将结果保存到文本文件中。您也可以在“设置” > “记忆”中读取您的记忆,Anthropic 表示“Claude 记住的所有内容都列在‘主题’下”。

要获取历史记录的完整副本,请使用数据导出。Anthropic 表示:“个人 Claude 用户可以从 Web 应用或 Claude Desktop 上的‘设置’ > ‘隐私’导出用户信息和聊天历史记录。无法从 iOS 或 Android 版 Claude 运行导出。”下载链接将通过电子邮件发送,并且“将在送达后 24 小时内过期”。我们关于阅读您的 Claude 数据导出的指南涵盖了其中的内容。

如果工作是在聊天项目中进行的,请将项目的指令复制到文本文件中,并确保您拥有知识文件。

步骤 2:将每个部分放入 Claude Code 读取的位置

浏览您的摘要并对每个要点进行分类:

  • 适用于代码库和团队: 将其添加到项目 CLAUDE.md 中。保持每行简短且具体。
  • 适用于您无处不在: 将其添加到 ~/.claude/CLAUDE.md 中。
  • 仅在此仓库中适用于您: 将其添加到 ./CLAUDE.local.md 中。
  • Claude 无法从代码中推导出的背景信息: 告诉 Claude Code 记住它,或者如果您在每台机器上都需要它,请将其添加到 CLAUDE.md 中。
  • 长篇参考资料: 将其作为文档提交,并从 CLAUDE.md 指向它。

省去 Claude 可以从代码中读取的内容。然后开始一个新会话并运行 /memory。文档指出它“列出了您的 CLAUDE.md、CLAUDE.local.md 以及跨用户和项目范围的其他记忆文件位置”。询问 Claude 它对您移动的一个决策了解多少,并检查回答是否匹配。

更好的方法:将聊天中的决策保存在双方都可以使用的一个列表中

手动迁移对于一次性移动很有效。问题在于它无法一劳永逸。您会继续在聊天中讨论事情,因为那是大声思考最容易的地方,而每个新决策都必须再次复制到仓库中。与此同时,自动记忆保留在单台计算机上,而聊天记忆保留在您的账户中。

MemoryLake 是一个记忆层,用于将这些决策保存在您维护的一个列表中,供 Claude Code 以及您连接的其他助手(如 ChatGPT 和 Codex)使用。

您可以用自己的语言自己编写条目。不会从您的 Claude 聊天、您的 Claude 记忆、您的 CLAUDE.md 文件、您的自动记忆文件夹或任何供应商的存储中读取、写入或删除任何内容。对于工作仓库,请遵守您组织关于在仓库之外保留什么的政策。

步骤 1:创建 API 密钥

登录并从控制面板生成一个密钥。该密钥属于您的 MemoryLake 工作区,与您的 Claude 账户是分开的。

显示 API 密钥屏幕的 MemoryLake 控制台,在此创建并复制新密钥以供代理使用
显示 API 密钥屏幕的 MemoryLake 控制台,在此创建并复制新密钥以供代理使用

步骤 2:上传您的第一批记忆

从手动迁移步骤 1 中的摘要开始:您的聊天确定的决策、限制和规范。每个条目一个要点,注明日期,并标记其适用的仓库。

已上传首批文档的 MemoryLake 工作区,列出了每个文件,使其成为可搜索的记忆
已上传首批文档的 MemoryLake 工作区,列出了每个文件,使其成为可搜索的记忆

步骤 3:连接您的 AI 和代理

连接 Claude Code 和您使用的其他助手。在您运行 Claude Code 的每台计算机上,以及在您连接的其他工具中,都可以使用相同的条目。

列出了可连接到记忆层的 AI 客户端和代理框架的 MemoryLake 集成屏幕
列出了可连接到记忆层的 AI 客户端和代理框架的 MemoryLake 集成屏幕

这在实践中带来了什么改变

第一个区别是,您在仓库中的第一个 Claude Code 会话就知道您在聊天中做出的决定。架构、规范和限制都在那里,无需重新发现。

第二个区别是,您知道哪个文件保存了什么。团队规则在项目 CLAUDE.md 中,您的偏好在您的用户文件中,背景信息在自动记忆或您自己的列表中。

第三个区别是,聊天中的下一个决策不会被遗忘。您添加一次,下次打开仓库时它就在那里了。

将 Claude 聊天工作移动到 Claude Code 的最佳实践

在移动之前总结对话。 决策及其原因比聊天记录更有用。

将团队规则放在项目 CLAUDE.md 中。 它通过版本控制进行共享。

将个人偏好放在您的用户文件中。 ~/.claude/CLAUDE.md 适用于您的所有项目。

将 CLAUDE.local.md 用于未提交的偏好。 将其添加到 .gitignore 中。

不要跨计算机依赖自动记忆。 它是机器本地的。我们关于为什么 Claude Code 会遗忘项目上下文的指南涵盖了其他差距。

保持 CLAUDE.md 简短。 Anthropic 建议每个文件控制在 200 行以内。

移动后使用 /memory 进行检查。 确认列出了您期望的文件。

结论

Claude 聊天和 Claude Code 共享一个账户和计划,但它们将上下文保存在不同的地方。聊天将记忆保存在您的账户中。Claude Code 读取 CLAUDE.md 文件和它自己的自动记忆,并且每个会话都从一个全新的上下文窗口开始。

要移动您的聊天,请总结它们确立的内容,导出您的记忆,并将每个要点放入 Claude Code 读取的位置:项目 CLAUDE.md 中的团队规则、用户文件中的偏好,以及自动记忆或您提交的文件中的背景信息。使用 /memory 检查结果。

常见问题

Claude Code 能看到我的 Claude 聊天吗?

Claude Code 的记忆文档描述了两种跨会话传递上下文的机制:CLAUDE.md 文件和自动记忆。它没有描述读取您的聊天历史记录或聊天记忆,因此请将您需要的内容复制到这些文件中。

如何将 Claude 对话移动到 Claude Code 中?

总结对话确立的内容,然后将每个要点添加到正确的文件中:项目 CLAUDE.md 用于团队规则,~/.claude/CLAUDE.md 用于您的偏好,自动记忆用于 Claude 无法从代码中推导出的背景信息。

Claude Code 会使用我的 Claude 记忆吗?

Claude Code 的文档描述了它自己的记忆:您编写的 CLAUDE.md 文件和 Claude 编写的自动记忆笔记。使用 Anthropic 记忆导出文章中的提示词导出您的聊天记忆,并添加您需要的内容。

Claude Code 将自动记忆存储在哪里?

存储在 ~/.claude/projects/<project>/memory/ 中,带有一个 MEMORY.md 索引。Anthropic 表示自动记忆是机器本地的,不会跨机器或云环境共享。

Claude 聊天项目可以在 Claude Code 中使用吗?

Claude Code 拥有自己用于云端工作的 Projects 功能。其文档将聊天和 Cowork 项目描述为早期的 Projects 体验。将聊天项目的指令和文件复制到您的仓库中。

Claude 和 Claude Code 共享使用限制吗?

是的。Anthropic 表示,在 Pro 和 Max 计划中,限制在 Claude 和 Claude Code 之间共享。