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

如何在不丢失上下文的情况下将 ChatGPT 项目迁移到 Codex(2026年)

运行了数月的 ChatGPT 项目是一个上下文中心。它包含您上传的文件、您优化的指令,以及一系列记录了真正决策的对话。当工作转化为代码,或者您希望智能体在计算机文件夹中构建的任何内容时,Codex 就是顺理成章的下一步。Codex 位于同一个桌面应用程序中,并登录了同一个账户。看起来项目应该直接同步过来。

但事实并非完全如此。OpenAI 的文档将 ChatGPT 项目和 Codex 的本地项目描述为两种不同类型的项目,它们并排显示在同一个“项目”(Projects)视图中。ChatGPT 项目在云端保存上传的源文件和指令。而 Codex 则基于文件夹运行,从该文件夹中的文件读取指令,并保留自己的记忆。OpenAI 的文档并未提供将前者转换为后者的方法。

本指南将介绍双方各自包含的内容、它们的交汇点,以及如何将 ChatGPT 项目重构为 Codex 可以运行的文件夹。如果您关心的是 ChatGPT 保存的记忆而不是项目,请先阅读我们关于将 ChatGPT 记忆迁移到 Codex 的指南。如果您仍在使用旧版应用,我们关于新版 ChatGPT 桌面应用的指南会先为您解答相关问题。

实际迁移了什么

ChatGPT 项目包含什么

OpenAI 的帮助中心指出:“项目将相关的对话、文件和指令整合在一起。”在实践中,这包含四个方面:

  • 源文件(Sources)。 您上传的文件、来自 Google Drive 或 Slack 的链接,以及您通过“保存到项目”选项保存的对话回复。
  • 指令(Instructions)。 “项目指令仅在该项目内适用,并会覆盖您的全局自定义指令。”
  • 对话(Chats)。 在项目中发起的所有对话,它们可以相互引用。
  • 项目记忆(Project memory)。 根据设置,对话会借鉴项目中的其他对话;在默认记忆设置下,还会借鉴您保存的记忆。

最后一点是最难迁移的,因为您无法直接看到它。帮助中心的常见问题解答(FAQ)中问道:“我可以查看我的项目记忆列表吗?”并回答道:“不能。项目记忆不会像个人记忆那样显示记忆列表。”项目所学到的内容分散在各个对话中。我们关于 ChatGPT 项目记忆模式的指南详细解释了默认和仅限项目(project-only)的设置。

Codex 读取什么

Codex 从文件夹开始运行。在桌面应用中,“本地项目允许对话访问您计算机上的一个或多个文件夹,例如源文件集合或代码库。”在终端中,“Codex CLI 将您启动它的目录视为该对话的项目。”

指令来自文件,而不是设置字段。“Codex 在执行任何工作之前都会读取 AGENTS.md 文件”,并且“Codex 在启动时会构建一个指令链(每次运行构建一次;在 TUI 中,这通常意味着每次启动会话构建一次)”。该指令链有大小限制:Codex “一旦合并大小达到 project_doc_max_bytes(默认 32 KiB)定义的限制,就会停止添加文件”。我们关于 Codex 忽略 AGENTS.md 规则的指南介绍了超出限制时会发生什么。

可重用的程序可以转化为技能。“技能是一个包含 SKILL.md 文件以及可选脚本和参考资料的目录”,并且“对于代码仓库,Codex 会扫描从当前工作目录一直到仓库根目录的每个目录中的 .agents/skills。”

OpenAI 官方指南对于任何需要长期保留的内容也给出了相同的建议:“将持久的项目指南保存在 AGENTS.md 或已提交的文档中,以便后续对话使用。”

两者在桌面应用中的交汇点

桌面应用将这两种项目并排显示。“ChatGPT 桌面应用中的项目(Projects)视图包括 ChatGPT 项目以及连接到您计算机文件夹的本地项目。”这很方便,但在同一个视图中显示并不意味着它们是同一种东西。

文档在它们之间划清了界限:

  • “ChatGPT 项目不提供对您计算机上文件夹的直接访问,因此请上传或连接您希望 ChatGPT 使用的源文件。”
  • 在 Codex 中,“ChatGPT 对话不会出现在 Codex 侧边栏中,侧边栏仅包含您的 Codex 对话和项目。”
  • “工作对话历史记录与 Codex 历史记录保持独立。”
  • 在桌面应用之外,“CLI 不会公开 ChatGPT 项目视图”,且 IDE 插件“不会公开 Web 或桌面应用中的 ChatGPT 项目视图”。

OpenAI 还将这两种智能体体验描述为有所重叠。其在 ChatGPT Work 和 Codex 的对比中提到:“如果您更喜欢 Codex,可以继续使用它进行研究、文档、演示文稿和其他知识性工作。”它列出的差异主要在于呈现方式:Codex 可以“查看开发者详情,包括 diff 和 review 视图”,而桌面应用中的 ChatGPT 可以“隐藏 Git 或 shell 命令等技术细节”。因此,将项目迁移到 Codex 不仅仅是为了代码。它适用于任何您希望智能体在您控制的文件上运行的工作。

对于单个对话,有一个桥梁。“通过新对话(New chat),您可以打开现有的 ChatGPT 对话并将其添加到 Codex 对话中。”这对于将特定讨论引入 Codex 任务非常有用。这是一种引用对话的方法,而不是迁移项目的方法。

双方的记忆机制

双方保持独立的记忆。OpenAI 的记忆页面指出:“ChatGPT 网页版使用 ChatGPT 记忆,而本地 Codex 客户端使用独立的本地记忆存储和控制。”Codex 在后台从其自身的对话中构建本地记忆:它“跳过活跃或短期的会话,从生成的记忆字段中脱敏敏感信息,并在后台更新记忆”。我们关于开启 Codex 本地记忆的指南详细介绍了这些控制选项。

OpenAI 的文档中没有任何内容表明 Codex 可以读取 ChatGPT 项目从其对话中学到的内容。如果您开启了 Codex 记忆,它们将在您启动后从您的 Codex 对话中构建。

开始前需要检查的事项

共享项目。 如果项目是共享的,其记忆仅限项目内部,并且“无法访问项目外部单个成员的记忆或上下文”。其他成员的文件和对话也可能不属于您可以复制的范围。在迁移共享工作之前,请先询问所有者。

仅限项目的记忆。 如果您的项目使用仅限项目的记忆,帮助中心指出“ChatGPT Work 在该项目中不可用”。如果您希望智能体处理这些材料,Codex 本地项目是实现这一目标的一种方式。

删除原项目。 在完成之前不要清理原项目。“删除项目将永久移除其对话和指令,以及仅存储在项目中的文件。”

链接的文件。 Google Drive 和 Slack 源是链接,而不是副本。请下载您所需文件的当前版本,而不要指望链接会自动迁移。

手动迁移

Step 1: 盘点项目并下载 Codex 所需的内容

打开项目并列出其中的内容。对于每个源文件,决定它是否属于新文件夹。帮助中心指出,您可以“从项目源文件列表中打开项目文件以进行预览、下载或删除”,因此请下载重要的文件并将其保存在一起。

将项目指令复制到文本文件中。然后浏览对话。您需要寻找决策、约束和约定,即项目记忆默默保留的那些内容。用简单的句子写下每一条,并附上日期。

如果某个特定对话包含您在 Codex 任务中需要的上下文,请做好记录。稍后,您可以在 Codex 的“新对话”中打开该对话并将其添加到 Codex 对话中,而无需手动粘贴。

在复制任何内容之前,请删除不应迁移的信息:凭据、个人详细信息,以及属于您尚未确认其政策的客户或雇主的任何内容。

Step 2: 将项目重构为 Codex 可读取的文件夹

创建一个文件夹,或使用您的代码仓库,并将其设为本地项目的主文件夹。OpenAI 指出:“新对话在主文件夹中开始。Codex 还将该文件夹用作 Git 操作以及自动发现 AGENTS.md、技能和 config.toml 的默认文件夹。”它还增加了一个值得提前规划的限制:“Codex 不会自动从次级文件夹中发现这些项目文件。”请将您的指令文件放在主文件夹中。

然后转换 ChatGPT 项目的每个部分:

  • 指令转化为 AGENTS.md。 保持简短且具有程序性。Codex 会自根目录向下追加文件,32 KiB 的上限适用于所有这些文件的总和。
  • 源文件转化为文件夹中的文件。 将参考文档放入名为 docs 的文件夹中,并使用描述性的名称,以便 Codex 可以通过普通的文件搜索找到它们。
  • 决策转化为决策文件。 单个文件,按日期记录,最新内容排在最上面。在 AGENTS.md 中指向它。
  • 重复的程序转化为技能。 如果您经常要求项目执行相同的多步骤任务,请将其编写为 .agents/skills 中的技能。

在新项目中启动 Codex 对话,并让它总结其指令和决策文件。如果有些内容缺失或过时,请修改文件,而不是在对话中进行纠正。在对话中进行的修改仅存在于该对话中。如果您还将在云端运行 Codex,我们关于准备 Codex 云环境的指南介绍了其中哪些文件会传输到云端。

更好的方法:将项目决策保存在双方均可使用的统一位置

手动迁移之所以有效,是因为它将隐藏的项目记忆转化为了您可以阅读的文件。该决策文件是您产出的最有价值的东西。但它也是最容易发生偏差的东西,因为 ChatGPT 项目和 Codex 文件夹都会继续运行。

MemoryLake 是一个记忆层,用于将这些决策保存在您维护的统一列表中,供 ChatGPT、Codex 以及您使用的其他助手使用。

您可以用自己的语言亲自编写这些记录。不会从您的 ChatGPT 项目、Codex 记忆或任何供应商的存储中读取、写入或删除任何内容。在将工作内容复制到任何地方之前,请先检查您所在组织的政策。

Step 1: 创建 API 密钥

登录并从控制面板生成密钥。该密钥属于您的 MemoryLake 工作区,与您的 OpenAI 账户独立。

MemoryLake 控制台显示 API 密钥屏幕,在此创建并复制新密钥以供智能体使用
MemoryLake 控制台显示 API 密钥屏幕,在此创建并复制新密钥以供智能体使用

Step 2: 上传您的第一批记忆

从您在手动迁移步骤 1 中写下的决策开始。每条记录包含一个决策,附带日期、原因以及其来源项目。

已上传首批文档的 MemoryLake 工作区,列出了每个文件转化为可搜索记忆的过程
已上传首批文档的 MemoryLake 工作区,列出了每个文件转化为可搜索记忆的过程

Step 3: 连接您的 AI 和智能体

连接 ChatGPT、Codex 以及您使用的其他助手。无论您是在 ChatGPT 项目中还是在 Codex 文件夹中,都可以使用相同的决策。

MemoryLake 集成屏幕,列出了可以连接到记忆层的 AI 客户端和智能体框架
MemoryLake 集成屏幕,列出了可以连接到记忆层的 AI 客户端和智能体框架

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

第一个改变是项目的知识变得可见。OpenAI 的帮助中心指出,项目记忆不会显示记忆列表;而决策文件可以被阅读、审查和纠正。

第二个改变是为每个 Codex 对话带来了更好的起点。AGENTS.md 在启动时加载,参考文件保存在文件夹中,并且 Codex 不再依赖于 CLI 和 IDE 插件无法显示的“项目”视图。

第三个改变是减少了重复劳动。当 ChatGPT 项目继续用于研究和规划,而 Codex 用于构建时,两者都可以基于相同的决策运行,而不是使用两个逐渐产生偏差的版本。

第四个改变是后续迁移更加容易。如果项目的一部分需要迁移到其他地方,相同的文件和决策依然适用,正如我们关于将 ChatGPT 项目迁移到 Claude 项目的指南所示。

将 ChatGPT 项目迁移到 Codex 的最佳实践

复制前先盘点。 源文件、指令、对话和决策是四项不同的工作。

写下项目记忆所了解的内容。 帮助中心指出它不会显示列表,因此请自行提取。

使用主文件夹。 Codex 会在其中发现指令和技能。

保持 AGENTS.md 大小在限制之内。 详细内容应放入链接的文档中。

下载链接的文件。 Drive 和 Slack 链接并不是副本。

在迁移共享项目前先询问。 这些工作成果可能不完全属于您个人。

不要过早删除原项目。 删除会移除其对话、指令和仅限项目的文件。

结论

ChatGPT 项目 and Codex 本地项目虽然显示在同一个“项目”视图中,但它们是不同的东西。ChatGPT 项目保存上传的源文件、指令、对话以及不显示列表的项目记忆。Codex 则基于文件夹运行,从中读取 AGENTS.md 和技能,并保留独立的本地记忆。CLI 和 IDE 插件根本不会显示 ChatGPT 项目。

行之有效的迁移方式是重构。下载源文件,将指令转化为 AGENTS.md,写下项目对话中保留的决策,并将所有内容放入本地项目的主文件夹中。

保持该决策文件的最新状态。这是您的 ChatGPT 项目中在 Codex 以及您下一步使用的任何工具中都非常有用的部分。

常见问题

我可以将 ChatGPT 项目导入到 Codex 中吗?

OpenAI 的文档中没有描述导入方法。ChatGPT 项目和本地项目都显示在桌面应用的“项目”视图中,但 ChatGPT 项目不提供 Codex 访问文件夹的权限。请使用文件和指令将其重构为本地项目。

ChatGPT 对话会显示在 Codex 中吗?

不会出现在 Codex 侧边栏中。OpenAI 表示 ChatGPT 对话不会显示在那里,不过您可以通过“新对话”打开现有的 ChatGPT 对话并将其添加到 Codex 对话中。

ChatGPT 项目指令在 Codex 中放在哪里?

放入项目主文件夹中的 AGENTS.md 中。Codex 在执行任何工作之前都会读取 AGENTS.md 文件,并会从主文件夹中发现它们。

Codex 会使用我的 ChatGPT 记忆吗?

不会。OpenAI 表示 ChatGPT 网页版使用 ChatGPT 记忆,而本地 Codex 客户端使用独立的本地记忆存储和控制。

我可以查看我的 ChatGPT 项目记住了什么吗?

不能。OpenAI 的帮助中心指出,项目记忆不会像个人记忆那样显示记忆列表。请浏览项目的对话并自行写下决策。

Codex CLI 可以打开我的 ChatGPT 项目吗?

不能。OpenAI 的文档指出,CLI 不会公开 ChatGPT 项目视图。它将您启动它的目录视为项目。