真正可以迁移的内容
您的 Skills,几乎无需改动。 这是最核心的部分。一个 Manus Skill 是一个 SKILL.md 加上"可选的捆绑资源,如 Python 脚本、参考文档或模板",Manus 将它们导出为 ".skill 文件、.zip 压缩包或直接的 GitHub 仓库链接。" Cursor 在启动时会自动从四个目录中发现 skills —— 项目范围的 .agents/skills/ 和 .cursor/skills/,以及用户范围的 ~/.agents/skills/ 和 ~/.cursor/skills/ —— 并且其文档中增加了一行值得注意的内容:"为了兼容性,Cursor 还会从 Claude 和 Codex 目录加载 skills:.claude/skills/、.codex/skills/、~/.claude/skills/ 和 ~/.codex/skills/。"
因此,解压过程就是复制到一个文件夹中。双方甚至描述了相同的加载行为:Manus Skills 使用"‘渐进式披露’(Progressive Disclosure)来高效管理智能体的上下文窗口",而 Cursor 的 skill 属性列表中包含"渐进式:Skills 按需加载资源,保持上下文使用的高效性。"
您的项目指令,作为内容。 您在 Manus 项目级指南中放入的任何内容,都会变成代码库根目录下的 AGENTS.md 或 .cursor/rules 文件。Cursor 的 rules 是 .mdc 文件,其 frontmatter 决定了它们何时适用,文档中将 AGENTS.md 描述为".cursor/rules 的简单替代方案。"
您的文件,作为仓库文件。 Manus 作为项目文件保存的、属于代码库的任何内容,直接提交即可。这是迁移中最无趣的部分,也是人们花费时间最多的部分。
没有其他内容了。以下是具体清单。
知识库在 Cursor 中没有对应的容器。 Manus 对其进行了严格限制:"专业版用户的用户知识库限制为 100 条,免费版用户限制为 50 条。" Cursor 完全没有条目式的知识存储。它的持久化机制是 rules 和 skills —— 这些是始终开启或被调用的文件,而不是可查询的事实集。这意味着您积累的 40 或 80 条记录要么被扁平化为 rule 散文,要么就无法迁移。
这个上限值得多读几遍,因为它也告诉了您 Manus 认为这个容器是用来做什么的。当您达到上限时,它给出的建议是"根据您最重要和最近的需求过滤知识库中的条目,并删除一些不必要的条目",并警告说"条目过多可能会影响系统的响应质量。" 100 条是一个精心策划的集合,而不是一个存档。
任务历史记录无法迁移。 您的任务数据备份可能是过去运行的数十 GB 数据。Cursor 没有针对这些数据的导入路径,即使有,它也不会呈现出任何有用的形式。它是一个记录,而不是上下文。
MCP 连接器和项目凭据留在原地。 Manus 支持具有"共享项目级凭据"的连接器。Cursor 也有 MCP,但这些是每个工具的配置,您需要重新构建而不是迁移,凭据应该重新签发,而不是复制到任何地方。
自主调用改变了形式。 在 Manus 中,Skill 是您将"您的智能体从通用助手转变为专业专家"的方式。在 Cursor 中,智能体"会看到可用的 skills,并根据上下文决定它们何时相关",您也可以通过输入 / 来调用。需要注意的一个细节是:"以这种方式调用的 skill 会附加到单条消息中。要在整个会话中保持 skill 开启,请使用 Option+Enter (Mac) 或 Alt+Enter (Windows) 将其作为自定义模式(Custom Mode)使用。" 从头到尾运行的 Manus 工作流变成了编码智能体在任务中途可能会或可能不会采用的 skills。
您应该单独处理的账户级别事项。 Manus 指出"服务变更后将无法使用 Facebook 登录",并且某些用户"将来必须使用此文件来恢复其账户。" 这些是账户琐事,而不是上下文,不应该与您的迁移放在同一个会话中处理。
手动迁移
步骤 1:将您的存档拆分为其包含的三种内容
在复制任何内容之前,先进行分类。几乎所有人都会尝试将存档作为一个整体进行迁移,结果却停滞不前,因为其中三分之二的内容根本没有去处。
打开您的导出文件并将其拆分为:Skills(.skill 文件或 .zip 压缩包,或您推送它们的 GitHub 仓库)、知识库条目(关于您、您的工作、您的限制条件的简短事实陈述)以及任务历史记录(其他所有内容 —— 占用了大部分字节)。
如果您还没有干净地提取出 Skills,Manus 提供了一个快捷方式:告诉它"将此工作流打包为 Skill",它"将生成必要的 SKILL.md 文件和任何关联的脚本。" 如果您有一个只存在于您不断重复的对话中的工作流,这就是它如何变成一个可移植文件,而不是您重新输入的段落。
对于大型导出,请使用 Manus 推荐的途径:"我们强烈建议通过 OAuth 授权直接导出到 Google Drive 或 OneDrive",而不是尝试通过电子邮件或浏览器下载来移动数十 GB 的数据。
在决定如何处理知识库条目之前,先阅读它们。在专业版最多 100 条的情况下,这是一个普通人花 15 分钟就能读完的列表,也是整个迁移过程中价值最高的 15 分钟。它也是唯一没有其他工具能够理解的文件格式的部分。
步骤 2:安置 Skills,然后决定知识的去向
将 Skills 放入 Cursor 读取的目录中。 对于属于单个仓库的 skills,放入 .agents/skills/<name>/SKILL.md 并提交它们。对于您希望在所有地方都可用的 skills,放入 ~/.agents/skills/。Cursor 会在启动时发现它们,因此复制后请重启。
如果导出给您的是 GitHub 链接而不是文件,那也行 —— Cursor 的 skills "作为文件存储,可以在您的仓库中进行跟踪,或者通过 GitHub 仓库链接进行安装。"
检查每个 skill 的 frontmatter 描述。 Cursor 根据它来决定相关性。一个描述中假设是通用智能体(例如"处理研究请求")的 Manus skill 很少会在编码会话中触发。请用您实际要进行的工作的词汇重写描述。
转换项目指令,并选择一种格式。 保留 AGENTS.md 是零工作量的选择,通常也是正确的。只有在您想要条件加载时,才转换为 .cursor/rules —— .mdc frontmatter 为您提供了“始终应用”(Always Apply)、“智能应用”(Apply Intelligently,"当智能体根据描述决定其相关时")、“应用到特定文件”(Apply to Specific Files)和“手动应用”(Apply Manually)。
在操作时注意扩展名:".cursor/rules 中的普通 .md 文件会被 rules 系统忽略,因为它没有 frontmatter 来指定 description、globs 和 alwaysApply。如果您更喜欢普通 markdown,请改用 AGENTS.md。" 将您的 Manus 指令作为 .md 粘贴到该文件夹中,是迁移到“空无一物”最悄无声息的方式。
然后是知识库条目,这是人们卡住的地方。 Cursor 官方的指南并不赞成显而易见的做法。它在 rules 中要避免的事项列表中包括"重复代码库中已有的内容",其最佳实践建议"引用文件而不是复制其内容 —— 这可以保持 rules 简短,并防止它们随着代码更改而过时。" 将 80 条知识条目粘贴到始终开启的 rule 中,意味着每个请求都会附带该文档,而 Cursor 建议将 rules 保持在 500 行以下。
使 rules 真正起作用的机制在跨会话携带 Cursor 上下文中有所提及,而反向操作 —— 迁出 Cursor 形式的配置 —— 则在从 Claude Code 迁移到 Cursor中进行了介绍。
更好的方法:让知识库保持为知识库
看看刚刚发生了什么。您的 Skills 成功迁移了,因为这两个工具在文件格式上达成了一致。您的知识库没有迁移,因为 Cursor 没有那个容器 —— 而且 Manus 自身 100 条的上限也告诉您,它从来就不是为了做存档而设计的。
这才是这次迁移真正的教训。流程现在是可移植的,Agent Skills 标准解决了这个问题。但事实不是。每个工具都以不同的形式保存它们,限制在不同的数量,并在您离开时丢失它们。
这正是 MemoryLake 的用武之地:将您的持久知识保存为您可以阅读、纠正和删除的条目,保存在您的工具可以查询的层中,而不是保存在它们随每个请求发送的文件中。设置只需三个步骤。
步骤 1:创建 API 密钥
登录到 MemoryLake 并创建一个 API 密钥。一个凭据即可跨您连接的所有工具使用。

步骤 2:上传您的第一批记忆
简短的条目,每条只包含一个主张。您的 Manus 知识库就是您的源材料,而且它已经大致呈现出正确的形状:

附带原因的限制条件。 "报告在周四发出,因为财务结算在周三晚上完成。" 指令只说明了截止日期,而只有附带原因的信息才能在有人质疑时幸存下来。
已被排除的方法及其原因。 这一类别不适合放在任何 rule 文件中,但每次有新的智能体加入时都会被重新提议。
没有任何通知的环境事实。 在未记录的限制处限制速率的 API、有两天滞后的数据集、不接受 PDF 的客户。
您自己的工作上下文。 角色、技术栈、约定 —— 通用智能体过去了解您但新的编码智能体不了解的那些条目。
步骤 3:连接您的 AI 和智能体
连接您使用的工具。MemoryLake 可以通过 MCP 和 API 访问,因此 MCP 原生智能体(包括 Claude Code、Codex 和 OpenClaw)通过指向 MCP 服务器进行连接,而其他助手则通过 API 读取相同的记忆。实际效果是,下一次工具切换只是配置更改,而不是知识迁移。

三个坦诚的限制。MemoryLake 不会读取您的 Manus 备份存档,也不会导入您的任务历史记录 —— 步骤 1 仍然是手动分类,存档是您应该保存在安全地方的记录。它只保存您或您的智能体放入其中的内容,因此步骤 2 是手动的。而且它不是凭据存储库:连接器和项目级凭据应该在新的工具中重新签发,而不是复制。
这在实践中改变了什么
存档不再是阻碍。 一旦您知道其中三分之二的内容没有去处,迁移就变成了 15 分钟的分类,而不是一下午的困惑。
Skills 不再是特定于工具的工作。 同一个 SKILL.md 可以被 Cursor、Claude Code 和 Codex 读取。您编写过一次的工作流现在完全属于您。
条目上限不再是您的天花板。 专业版上的 100 条限制是一种强制精选的机制,而不是存储决定。保留精选,打破上限。
新工具中的 rule 文件保持简短。 rule 变长的原因在于它承担了两个职责 —— 引导和记忆。将它们分开,Cursor 的 500 行指南就不再重要了。
“它还不了解我的工作”得到了真正的答案。 不是“编写更多 rules”,而是“事实从来不在 rules 中” —— 这一普遍情况在为什么 RAG 不是记忆中有所讨论。
从 Manus 切换到 Cursor 的最佳实践
首先将 Skills 导出为文件。 它们是真正有去处的部分,.skill、.zip 和 GitHub 链接都适用。
对于大型导出,使用指向 Google Drive 或 OneDrive 的 OAuth 途径。 Manus 专门推荐这样做,因为任务数据可能达到数十 GB。
手动阅读您的知识库条目。 最多 100 条,这是一个可读的列表,也是唯一没有文件格式的部分。
针对新的上下文重写 skill 描述。 Cursor 根据描述选择 skills;为通用智能体编写的描述不会在编码会话中触发。
切勿在 .cursor/rules 中留存普通的 .md 文件。 它会被默默忽略。请使用带有 frontmatter 的 .mdc,或使用 AGENTS.md。
为了可移植性,优先选择 .agents/skills/。 Cursor、Claude Code 和 Codex 都会从重叠的目录中读取 skills;选择共享目录可以避免二次复制。
复制 skills 后重启 Cursor。 发现过程发生在启动时。
重新签发凭据,而不是迁移它们。 来自您要离开的平台的连接器凭据应该进行轮换,而不是移动。
将事实保留在 rule 文件之外。 Rules 是方向和指针;推理才是让智能体处理您没有写下来的情况的关键 —— 这一形式在为什么智能体忽略您编写的指令文件中有所讨论。
结论
从 Manus 到 Cursor 的迁移在一条大多数人走到一半才看清的界线上清晰地分开了。Skills 可以迁移,因为这两个工具都实现了 Agent Skills 标准,并且都读取 SKILL.md —— 为了兼容性,Cursor 甚至会从 .claude/skills/ 和 .codex/skills/ 加载,因此复制文件夹并重启确实就完成了大部分工作。项目指令通过格式决策和避开一个扩展名陷阱,转换为 AGENTS.md 或 .cursor/rules。
无法迁移的是知识库。Manus 在专业版上将其限制为 100 条,在免费版上限制为 50 条,并告诉您要修剪而不是增加它;Cursor 完全没有等效的容器,其自身的文档也反对将该内容粘贴到始终开启的 rule 中。任务历史记录也不会迁移,而且也不应该迁移。
因此,在复制任何内容之前,先将存档分类为 Skills、条目和历史记录。将 Skills 安置在 .agents/skills/ 中,转换指令,并将条目 —— 限制条件、被排除的方法、没有任何通知的事实 —— 放在您的工具可以查询的地方。这样,下一次迁移就只是目录复制和配置更改,而这本应是这次迁移该有的样子。