究竟什么可以传输
逐层剖析 Project,使用 Perplexity 自身对 Project 所包含内容的描述:“您的 Search 对话、您的 Computer 任务、文件、自定义指令、连接的工具,以及 Perplexity 在您工作时建立的上下文”。
文件:可以传输,而且是轻松搞定的部分。 Perplexity 记录了单独的、作为文件夹的以及从连接的文件源导入的持久文件上传,外加 Computer 代表您创建和管理的文件。任何属于真实文档的内容都会作为真实文档导出。在 Codex 侧,这些将成为存储库中或您指向 Codex 的任何目录中的文件 —— 区别在于 Project 的文件附加到工作区,而 Codex 读取磁盘上的内容。
自定义指令:可以传输,但需要注意大小限制。 Perplexity 允许“最多 8,000 个字符”的 Project 指令来“告诉 Computer 如何在此 Project 中工作”,外加设置中的上下文指令“用于项目中运行的每个查询”。自然的目标位置是 AGENTS.md,Codex 自己的文档也说明了将其放在那里的理由,而不是信任记忆来承载它们:“将所需的团队指南保留在 AGENTS.md 或签入的文档中。将记忆视为有用的召回层,而不是必须始终适用的规则的唯一来源。”不过,八千个字符确实很多。该长度的大部分通常是硬性规则和背景解释的混合,而只有硬性规则才属于始终加载的文件。
优先考虑的网页链接和域名:无目标位置。 Project 设置允许您“添加和管理要优先考虑的网页链接和域名”。这是研究工具的检索偏好,Codex 没有等效的控制按钮。如果这些域名编码了某些真实的信息 —— 比如该供应商的文档是权威的,而那个 Stack Overflow 的回答已经过时 —— 请将原因写成笔记,而不是试图复制该机制。
默认模式和编排器模型:无目标位置,且无损失。 Project 可以设置默认模式(Search 对比 Computer)和默认的 Computer 编排器模型。这些是 Perplexity 侧的执行设置。无需迁移。
Brain:无法传输。 这是至关重要的层,也是没有迁移路径的层。Perplexity 记录了 Brain 积累的内容 —— 它从您的会话、连接的工具、文件和制品以及您的纠正中学习,并将结果组织成“Concepts(概念)、Entities(实体)和 Workstreams(工作流)—— 一个可浏览的维基和您世界的图谱”,其中每个条目“都链接回其来源,以便您可以检查或纠正它”。连续的运行会强化仍然正确的内容,更新已更改的内容,并标记过时的内容。这确实不仅仅是一个文档堆:它是结构化的、有来源链接的且自我维护的。其记录的交互界面是在 Settings → Memory 中查看、编辑和删除条目。Perplexity 的文档没有描述任何导出方式。
在我们将 Brain 视为一堵墙之前,有两点关于 Brain 的客观说明。它是受限的 —— 文档指出“Brain 正在作为研究预览版(Research Preview)向使用 Computer 的 Max 和 Enterprise Max 订阅者推出” —— 因此阅读本文的相当一部分人并没有它,可以跳过整个问题。而且它是可以退出的,在 Settings → Memory settings → Brain 下有其专属开关,企业管理员也有组织级别的控制权。如果您的工作区中关闭了 Brain,那么您的 Project 知识就已经只是文件加指令了,这次迁移只需两个小时。
Codex 记忆:存在,但不接收任何内容。 在目标侧,Codex 维护着自己的记忆库:根据文档,~/.codex/memories/ 下的文件包含“来自先前聊天的摘要、持久条目、最近的输入和支持证据”,在聊天变为空闲后在后台生成,并通过 config.toml 中的 [features] memories = true 启用。三个记录的属性塑造了这次迁移。它们是本地的且针对单台机器。它们与 ChatGPT 网页版的记忆是分开的 —— “ChatGPT 网页版使用 ChatGPT 记忆,而本地 Codex 客户端使用单独的本地记忆库”。并且生成是尽力而为的:当剩余速率限制百分比降至配置的阈值以下时,可以跳过记忆传递,且“聊天结束时记忆可能不会立即更新”。您无法通过写入来初始化该层,并且文档建议不要将手动编辑作为您的控制界面。
两份文档中都没有提到的后果。 Perplexity Project 在设计上是协作性的:拥有 Owner(所有者)、Can edit(可编辑)和 Can view(可查看)等角色;访问范围从 Restricted(受限)到组织范围;在非企业版 Project 上最多支持 5 位协作者,在企业拥有的 Project 上最多支持 9,999 位。Codex 记忆是单机和单人的。将一个五人的 Project 迁移到一位工程师的 Codex 设置中,知识不仅改变了格式 —— 还改变了所有者。其他人都将失去对其的访问权限,而且没有人会收到通知。
手动迁移
步骤 1:首先移动持久输入
在触及任何衍生内容之前先完成这部分,因为这是机械性的工作,而且可以让困难的部分变小。
导出文件。导出 Project 的 Files 下的所有内容,包括您在六个月后仍会需要的 Computer 生成的制品。将它们放在 Codex 真正能看到的地方:如果它们属于代码库,就放在存储库中;如果它们是参考资料,就放在已签入的 docs/ 目录中。文件闲置在 Codex 未指向的文件夹中,是人们“迁移”后纳闷为什么什么都没有继承下来的最常见原因。
将指令一分为二。获取 Project 指令和设置级别的上下文,并将每一行分类为“每次都必须遵守”和“有用的背景”。第一堆变成 AGENTS.md,遵循 Codex 自身关于所需团队指南应保存在已签入文档中的指导。第二堆变成您参考的文档,而不是您加载的指令。克制住将所有 8,000 个字符粘贴到 AGENTS.md 中的冲动;一个冗长且始终加载的文件会分散对工作的注意力,而真正重要的规则会被稀释。
将检索偏好写成散文。优先域名列表是对您信任哪些来源的压缩判断。Codex 无法接受该列表,但它可以读取“X 处的供应商文档对 API 具有权威性;Y 上的任何内容都早于版本 3 且具有误导性”。这句话比该设置本身更具可移植性。
明确记录协作边界。在关闭 Project 之前,写一封简短的便签,记录谁拥有访问权限以及谁在做出贡献。您即将从一个拥有角色的工作区转移到一个没有角色的本地存储,了解还有谁依赖于此可以防止您悄无声息地删除团队资源。
步骤 2:重新推导 Brain 整理出的内容 —— 并决定谁拥有它
现在是无法导出的部分。好消息是,Brain 的界面正是为您需要进行的阅读而设计的:打开 Memory,浏览 Concepts、Entities 和 Workstreams,然后点击进入每个条目背后的来源。您无需猜测它学到了什么;它会向您展示,并带有来源。
带着一个过滤器来梳理它:如果该工具消失了,这仍然是真的吗? 保留描述您的项目、您的限制、您的人员、您的未闭环任务(open loops)以及您的决策的条目。跳过描述 Computer 如何执行任务的条目,这些条目与工具的执行有关,而不是与您的世界有关。Perplexity 本身也划定了这条界线 —— 其文档区分了 Memory(“存储您的偏好、兴趣和您分享的事物”)与 Brain(“将您的项目、人员、文档、决策和未闭环任务组织成一个连接的图谱”)。决策和未闭环任务才是您要挖掘的内容。
然后放置它们,这就是所有权决策落地的地方。您有三个选择,而最糟糕的选择是意外滑入第三个选择。
将它们放在已签入的文档中。 编写较慢,但能保留下来。团队保持访问权限,知识在 diff 中可评审,且 Codex 可以读取它,因为它在仓库中。对于任何必须始终适用的内容,这就是 Codex 文档所推荐的做法。
将它们放在共享记忆层中。 比散文文档更容易维护,所有人仍可访问,且可被多个工具读取。下文将对此进行详细介绍。
让 Codex 自身的记忆来积累它们。 这在默认情况下会发生,作为补充也无妨 —— 但要明白您选择了什么:一个本地于单台机器、与 ChatGPT 网页版记忆分开、按尽力而为计划生成且不打算手动编辑的存储。作为团队积累知识的唯一归宿,这是一个没有备份、无法共享的单点故障。Codex 的文档非常直接地指出这不是它的适用场景,而且随着您在一段时间未接触的工作上遇到 Codex 遗忘项目上下文 的情况,这种差距很快就会显现出来。
什么都不做是第四个选择,也是真正的风险。Brain 会标记过时的条目并保持自身最新;而一个装满半记半忘结论的文件夹则不会。不完整的迁移会给您留下看起来已被捕获但实际上并未捕获的知识。
更好的方法:一个记忆层,适用于任一工具
从具体细节中抽身出来,模式显而易见。两个优秀的工具,两个称职的记忆系统,零互操作性 —— 而且所涉及的知识实际上与这两个工具都无关。它关乎您的项目。每次工具发生变化时,知识都必须手动重新推导,因为它被存储在恰好帮助您发现它的工具内部。
MemoryLake 是一个独立于两者的记忆层:一个存放项目持久知识的地方,可供您今天使用的任何助手读取。在 Perplexity 中进行研究,在 Codex 中进行构建,两者都读取相同的记忆,而不是各自维护一份私有的、无法导出的副本。设置只需三个步骤。
步骤 1:创建 API 密钥
登录 MemoryLake 并创建 API 密钥。为您连接的每个工具提供一个凭据,这正是让它在您的下一次迁移中幸存下来的关键所在。

步骤 2:上传您的第一批记忆
上传您在上述步骤 2 中提取的内容 —— 决策、限制、未闭环任务、背后的原因 —— 以及解释项目的参考文件。保持条目简短且事实化,每个条目一个想法,以便检索返回可用内容,而不是一堵文字墙。关于您为什么拒绝某种方法的条目,其价值是您选择什么的条目的两倍,因为拒绝是每个新助手否则都会重新提出的部分。

步骤 3:连接您的 AI 和智能体
连接您的工具。MemoryLake 可通过 MCP 和 API 访问,因此 MCP 原生智能体 —— 包括 Codex、Claude Code 和 OpenClaw —— 通过指向 MCP 服务器进行连接,而其他任何工具则通过 API 读取相同的记忆。Codex 保持其本地记忆做它们擅长的事,即召回该机器上的近期工作;持久知识则保存在您的团队成员和其他工具也可以访问的地方。

坦率的局限性:MemoryLake 不会导入 Brain,因为 Brain 没有记录在案的导出方式 —— 您需要手动重新陈述一次结论,这就是实际的成本。它也不是一个研究工具。它不会取代 Perplexity 的功能;它保存的是在 Perplexity 帮助您找到之后您所总结出的结论。
这在实践中改变了什么
迁移不再是重新推导。 这次迁移中成本最高的部分不是文件或指令 —— 那些只需要一个小时。而是阅读记忆图谱并重新输入其结论。将这些内容输入到独立于工具的层中,意味着下一次迁移也只需一个小时。
团队知识依然是团队知识。 这是无声的胜利。一个 Project 在企业版上支持多达 9,999 位协作者;而 Codex 记忆仅支持单台机器。将内容放入共享层,可以保留最初使 Project 具有价值的属性。
研究和构建不再是独立的记忆。 大多数人实际面临的模式是在一个工具中进行研究,在另一个工具中进行实现,并且相同的上下文需要解释两次。一个两者都能读取的层消除了第二次解释 —— 同样的问题在如何停止向您的 AI 重新解释上下文中有所讨论。
供应商的变化不再是重大事件。 Spaces 变成了 Projects。Brain 推出了研究预览版。Codex 记忆是可配置的,除非启用否则处于关闭状态。如果您的知识存在于工具之外,那么其中的每一次变化都只是文档更新;如果不是,那就是一场手忙脚乱。
迁出 Perplexity Project 的最佳实践
在取消任何订阅之前先阅读 Brain。 对图谱的访问权限随着对计划的访问权限结束而结束。在两者都还拥有时进行阅读,并在同一次操作中检查 Project 的文件 —— 在 Space 中感觉丢失的内容通常仍然存在,只是没有被检索到。
使用来源链接。 每个 Brain 条目都链接到其背后的会话、文件或来源。当某个条目看起来很重要但很模糊时,点击进去 —— 来源通常包含值得保留的具体版本。
将必需的规则保留在已签入的文件中。 Codex 的文档直接指出了这一点,并且无论您采用哪个记忆层,它都适用:必须始终适用的规则属于 AGENTS.md 或文档,而不是召回层。
不要指望 Codex 记忆会按需立即出现。 生成是在聊天变为空闲后在后台进行的,在速率限制压力下可能会被跳过,且文档指出记忆“在聊天结束时可能不会立即更新”。会话结束后立即缺失是正常现象,而不是错误。
在依赖机器边界之前先检查它。 Codex 记忆是本地的且针对单台机器,IDE 扩展使用连接的主机的存储。如果您在两台电脑上工作,请假设存在两个独立的记忆。
告知您的协作者。 如果 Project 拥有协作者,迁移会移除他们对正在使用的知识库的访问权限。这是一个需要公开做出的决定,而不是一个副作用。
结论
这种迁移的旧版本是“导出您的 Spaces 内容并将其粘贴到某处”。这不再是全部工作,因为旅程的两端现在都维护着双方都不会交出的衍生记忆。文件和指令在一小时内即可移动。Brain 的结论移动速度取决于您阅读和重新输入它们的速度,而 Codex 的记忆根本无法进行初始化。
因此,只需阅读一次,并将输出放在不属于任何一个工具的地方 —— 已签入的文档、共享记忆层,理想情况下两者兼有,根据规则是否必须始终保持来划分。这样,下一次重命名、下一次研究预览和下一个工具都将成为您读到的事件,而不是您需要安排的项目。如果您的目标是不同的智能体,将 Perplexity Spaces 迁移到 Claude Code 涵盖了该路线,而 将 ChatGPT 记忆迁移到 Codex 则涵盖了同一目标的另一个常见来源。