实际迁移了什么
Warp 在开头就写下了大多数迁移指南都会刻意隐藏的一句话:“Warp 没有一键式 Cursor 导入工具。”
它给出的理由在技术上是正确且合理的:“Cursor 是基于 VS Code 代码库构建的,因此其终端设置保存在 settings.json 中,对应的键值如 terminal.integrated.fontFamily 和 terminal.integrated.defaultProfile.*。由于该文件是可读的,Warp 的 Agent 可以将匹配的终端值翻译并写入 Warp 的 settings.toml。”
因此,自动化确实存在且有效——只是它仅限于外观设置。在智能体方面,该页面同样直截了当:“Cursor 的 Composer 和 Agent 功能没有一一对应的迁移路径;它们映射到了不同的 Warp 概念。”
以下是源自 Warp 官方等效对照表的重要映射关系:
| 源自 Cursor | 在 Warp 中 |
|---|---|
| Composer / Agent 面板 | 任何标签页中的 Agent Mode |
| Agent 标签页 | 跨标签页并行运行的多个 Agent |
.cursorrules | 项目根目录下的 AGENTS.md / WARP.md,会被识别为规则 |
| MCP 服务器 | MCP |
| 每次对话的模型选择 | 模型选择器 |
| 代码库索引 | Codebase Context |
| 行内差异评审 | Code Review |
需要重点关注的是 .cursorrules 这一行。Warp 的说明非常直接:“在 Agent Mode 中运行 /init 以生成 AGENTS.md,或者直接复制你的 .cursorrules 内容。”
这只涵盖了 Cursor 四种指令作用域中的一种。Cursor 的文档列出了:.cursor/rules 中的项目规则(Project Rules)、“全局适用于你的 Cursor 环境”的用户规则(User Rules)、在团队和企业版方案中“通过仪表盘管理”的团队规则(Team Rules),以及作为“.cursor/rules 的简单替代方案”的 AGENTS.md。
Warp 只有两种作用域:全局规则(Global Rules)和项目规则(Project Rules)。因此,这种映射在特定方向上是有损的——在仪表盘上集中管理的 Cursor 团队规则在 Warp 中没有可以直接对应的功能。它们要么变成每个人机器上的全局规则,要么变成提交到版本控制中的 AGENTS.md,而只有后者才能自动保持同步。
在大家寄予厚望之前,还有一件事值得说明。Warp 确实拥有一个持久化记忆系统——Agent Memory,而且它确实是跨工具通用的——文档中描述该记忆“在每个受支持的智能体工具之间共享,包括内置的 Warp Agent、Claude Code、Codex 以及后续添加的其他工具”。但关于其可用性的说明非常明确:“Agent Memory 目前处于研究预览阶段(research preview),仅针对设计合作伙伴团队按团队启用”,并设有申请加入的候补名单。如果你的团队不是设计合作伙伴,请在规划此次迁移时假设该功能尚不可用,因为对你而言确实如此。
手动迁移步骤
分为两步。第一步是盘点 Cursor 实际向智能体输入了什么;第二步是将这些内容放置在 Warp 能够读取的地方。
步骤 1:盘点所有四种 Cursor 作用域,而不仅仅是你记得的那一个
Cursor 的文档直接将规则定义为持久化机制:“大语言模型在多次补全之间不会保留记忆。规则在提示词层面上提供了持久且可复用的上下文。”这意味着你的规则文件就是你的上下文,你需要保留所有的规则文件。
打开每个作用域并复制其中的内容:
- 项目规则:位于
.cursor/rules中,格式为.mdc文件。请注意这里的一个陷阱:“.cursor/rules中的普通.md文件会被规则系统忽略,因为它没有前置元数据(frontmatter)。”如果你之前在该目录下保存的是.md格式的笔记,Cursor 其实从未读取过它们,因此也没有必要将它们作为规则进行迁移。 - 用户规则:全局适用于你的 Cursor 环境。这些规则保存在你本地,而不是代码仓库中,也是最容易被遗忘的规则。
- 团队规则:来自仪表盘(如果你使用的是团队或企业版方案)。在失去访问权限之前,请先导出这些规则。
AGENTS.md:如果你已经在使用它。这是最省心的一部分,可以直接原样迁移。
在复制时,记录下每个规则的激活类型。Cursor 的类型包括 Always Apply(始终应用)、Apply Intelligently(智能应用,即“当 Agent 根据描述判定其相关时触发”)以及 Apply to Specific Files(应用于特定文件,通过模式匹配)。你在 Warp 端会需要这些信息,因为 Warp 的模型更简单,你的一些规则将不得不更改类别。
另外,请注意有哪些内容没有出现在任何文件中:你在过去六个月的聊天中做出的纠正。Cursor 的文档明确指出,模型在多次补全之间不会保留记忆,因此如果某个偏好从未被写入规则,那么它在每次会话中都是重新建立的,没有任何内容可以导出。现在就把这些写下来——这是迁移过程中唯一需要依赖你自身记忆的部分。如果你曾疑惑为什么 Cursor 会忘记你的项目规则或在多台机器之间遗忘,这四种作用域的分裂通常就是原因所在。
步骤 2:将内容放入 Warp 的两种作用域,并注意文件名规则
Warp 仅支持两种规则类型:“全局规则(Global Rules)适用于所有项目和上下文”,以及“项目规则(Project Rules)存在于你的代码库中,并在该项目内工作时自动应用。它们存储在 AGENTS.md 文件中(或为了向后兼容而使用 WARP.md)。”
映射关系如下:具有 Always Apply 的 Cursor 项目规则将成为根目录下的 AGENTS.md 内容。针对特定文件的 Cursor 项目规则将成为目录级的 AGENTS.md 文件,因为“Warp 会自动应用根目录和当前目录中的 AGENTS.md(或 WARP.md)”。Cursor 用户规则将成为 Warp 全局规则。Cursor 团队规则将成为提交到版本控制中的 AGENTS.md 内容,这是保持共享的唯一形式。
如果你忽略了以下三个文件名规则,它们会给你带来麻烦:
- “文件名必须全部大写,Warp 才能识别它(例如
AGENTS.md,而不是agents.md或Agents.md)。” - “如果同一个目录下同时存在
WARP.md和AGENTS.md,WARP.md将优先适用。”因此,早期实验遗留下来的WARP.md会悄无声息地覆盖你刚刚编写的文件。 - Warp 推荐在新项目中使用
AGENTS.md,并继续支持现有的WARP.md文件,你可以随时重命名它而无需进行其他更改。
依赖 Cursor 的 Apply Intelligently 模式的规则需要做出取舍,因为 Warp 的项目规则是根据位置自动应用的,而不是根据模型的判断。你要么将它们设为无条件应用,要么将它们的作用域限制在特定目录下。如果保持含糊并寄希望于它们根据相关性触发,迁移后的规则集很容易被悄悄忽略——这与为什么智能体会忽略你的指令文件背后的失效模式相同。
不要跳过 /init。在 Agent Mode 中运行它会生成一个符合 Warp 预期格式的 AGENTS.md,这比直接粘贴 .cursorrules 文件是一个更好的起点。
更好的方法:将学习层放在不属于任何编辑器的地方
按照上述两个步骤操作,你将获得一个正确的 Warp 配置。但你也证明了一个令人尴尬的事实:这次迁移的自动化部分只移动了你的字体,而手动部分则移动了所有真正重要的内容。
这种不对称性既不是 Warp 的错,也不是 Cursor 的错。当一个项目积累的知识存在于某一个工具的文件格式中时,必然会发生这种情况。Warp 自身对此给出的解决方案——Agent Memory——是一个正确的方向,但目前仅限于设计合作伙伴团队。而一个外部记忆层今天就能为你提供相同的特性,且无需排队等待。MemoryLake 只需三步即可完成设置。
步骤 1:创建 API 密钥
登录并在你的仪表盘中生成一个 API 密钥。该凭据属于你的团队,而不是某个编辑器,这使得相同的知识在今天可以被 Warp 读取,在下个季度也可以被你评估的任何其他工具读取。

步骤 2:上传你的第一批记忆
将你在步骤 1 中记录的、没有文件可存放的内容放进去:架构决策及其原因、你在聊天中反复强调的规范、客户和特定领域的细节、以及特定临时解决方案存在的原因。如果你看重集中管理,也可以将团队规则(Team Rules)的内容放在这里——这是你在 Warp 端能获得的最接近仪表盘管理作用域的方案。

让 AGENTS.md 专注于它所擅长的事情:必须始终应用的规则,并提交到代码库中以便进行审查。
步骤 3:连接你的 AI 和智能体
将 Warp 的 Agent 指向该存储。如果团队的一部分人在试用期内仍留在 Cursor 上(这是进行迁移的稳妥方式),那么两个编辑器都将读取相同的层,而不是分叉成两个不同的规则集,免去了日后人工协调的麻烦。

这在实践中带来了什么改变
第一个改变是,试用期不再昂贵。大多数从 Cursor 到 Warp 的评估之所以停滞不前,是因为保持两套规则集同步非常繁琐,导致人们要么过早做出决定,要么放弃试用。有了独立于两者的持久层,并存运行不会带来额外的成本。
第二个改变是,团队规则(Team Rules)的缺失不再是问题。Warp 的两种作用域很清晰,但都不像仪表盘那样可以进行集中管理;共享存储恢复了这一特性,而无需让每个人都手动维护相同的全局规则。
第三个改变是,你不再需要争夺提示词空间。始终应用的规则每次都会被拼接进上下文中,这对于十条规范来说完全没问题,但对于两百个关于你领域的业务事实来说就不合适了。将“智能体必须遵守的规则”与“智能体应该了解的事情”分离开来,是编码智能体实际读取的内容中所阐述的区别的实际应用。
从 Cursor 迁移到 Warp 的最佳实践
- 先运行设置移植,然后就不用管它了。 让 Warp 的 Agent 使用
modify-settings技能翻译settings.json并查看差异。它只处理外观,不要期望更多。 - 在卸载任何内容之前,盘点所有四种 Cursor 作用域。 用户规则和团队规则是人们最容易丢失的。
- 删除
.cursor/rules中零散的.md文件,而不是迁移它们。 Cursor 之前一直忽略了它们;迁移它们只是在搬运无用的累赘。 - 检查是否有遗留的
WARP.md。 在同一个目录下,它比AGENTS.md具有更高的优先级,这会导致非常令人困惑的调试过程。 - 使用全大写的文件名。
agents.md无法被识别。 - 将
Apply Intelligently规则转换为始终启用或目录作用域。 Warp 根据位置应用项目规则,而不是根据相关性判断。 - 除非你已获得访问权限,否则不要围绕 Agent Memory 进行规划。 它目前处于针对设计合作伙伴团队的研究预览阶段,并设有候补名单。请根据你本周可以实际使用的功能来规划你的迁移。
- 不要将决策和领域知识放在规则文件中。 规则是用来规范行为的;不断增长的上下文应该放在能够容纳它持续增长的地方。
结论
Warp 值得称赞,因为它的迁移页面在第一段就写明了“没有一键式导入工具”。这种坦诚告诉你工作量在哪里:终端设置会自动迁移,.cursorrules 会复制到 AGENTS.md 中,而你的智能体学到的关于项目的所有知识,都必须由记得这些知识的人来重写。
在这次迁移中,你将进行一次重写。至于下次迁移时是否还要再重写一次,取决于你这次把这些内容放在了哪里。