Midjourney操作界面

Cursor 0.51 全网首个新功能深度体验:Generate Memories 让 AI 编程助手拥有"记忆"

4.8
0热度

🎯 写在前面首先,cursor 0.51对UI设计界面做了重大更新:各个配置条目更为合理,看上去不再是草台班子的感觉。官方0.51changelog暂未发布,先体验一下BETA的Memories能力。你是否遇到过这样的困扰:每次开启新的 Cursor 对话,都要重新向 AI 解释项目背景、技术栈、架构设计?或者当对话内容过多时,AI 就"忘记"了之前讨论的重要信息?如果你有过这样的经历,那么 C

🎯 写在前面


首先,cursor 0.51对UI设计界面做了重大更新:各个配置条目更为合理,看上去不再是草台班子的感觉。官方0.51changelog暂未发布,先体验一下BETA的Memories能力。


Cursor 0.51 全网首个新功能深度体验:Generate Memories 让 AI 编程助手拥有


你是否遇到过这样的困扰:每次开启新的 Cursor 对话,都要重新向 AI 解释项目背景、技术栈、架构设计?或者当对话内容过多时,AI 就"忘记"了之前讨论的重要信息?


如果你有过这样的经历,那么 Cursor 0.51 版本新推出的 Generate Memories 功能绝对是你的救星!这个功能就像给 AI 装上了"大脑",让它能够记住项目的关键信息,真正成为你的得力编程伙伴。


今天我就来和大家分享一下这个令人兴奋的新功能的实际使用体验。虽然官方的changelog还没有详细介绍,但通过实际测试,我发现这个功能的潜力远超想象!


⚠️ 使用前必读


在开始体验之前,有个重要提醒:目前 Generate Memories 功能还处于 BETA 测试阶段,只有在关闭隐私模式(privacy mode)的情况下才能使用。


这意味着你的一些项目信息会被分享给 Cursor 服务器。如果你正在处理敏感项目或公司代码,建议先评估一下风险再决定是否启用。对于个人学习项目或开源项目来说,这个功能绝对值得一试!


Cursor 0.51 全网首个新功能深度体验:Generate Memories 让 AI 编程助手拥有


cursor的隐私模式,要求所有文件内容共享给cursor。


💡 什么是 Memories?让 AI 拥有"记忆"的神奇功能


想象一下,如果你的编程助手能够记住你们之前所有的对话内容,记住项目的技术栈、架构设计、编码规范,甚至是你的个人偏好,那该多好?Memories 功能就是为了解决这个痛点而生的。


简单来说,Memories 就是一个智能的知识库,它会自动将对话中的重要信息提取出来,形成结构化的文档保存起来。这样,无论你什么时候开始新的对话,AI 都能立即"回忆起"这些关键信息,就像一个真正了解你项目的资深开发者一样。


这个概念其实并不新鲜。之前 Cline 就在其中详细介绍过 Memory Bank 的实现方法。Cursor 社区的开发者们也一直在滚放社区中热烈讨论这个功能的必要性。现在,Cursor 官方终于将这个呼声很高的功能内置到了编辑器中,这对所有用户来说都是一个巨大的福音。


🔧 轻松上手:Generate Memories 的设置


设置 Generate Memories 功能简单得让人意外!你只需要打开 Cursor Settings,然后找到 Rules 选项,就能看到这个新功能的开关。


Cursor 0.51 全网首个新功能深度体验:Generate Memories 让 AI 编程助手拥有


记住前面提到的注意事项,确保隐私模式已经关闭,然后一键启用就完成了!是不是比想象中简单多了?


🚀 实战体验:用 Go 语言创建 MCP Server


为了真正测试 Generate Memories 的威力,我决定做一个实际的项目。我选择用 Go 语言创建一个时间服务器,这个项目既有一定的技术含量,又不会太复杂,正好适合测试 AI 的记忆能力。


实验环境准备


在开始之前,让我先介绍一下我的测试环境:


我使用的是 Cursor 0.51.1 版本,选择了 claude-4-sonnet 模型,这是目前性能最强的模型之一。为了确保测试的纯净性,我没有设置任何用户规则或项目规则,就是一个最基础的 Git 仓库。聊天模式选择了 Agent 模式,这样 AI 可以更主动地进行操作。


我的目标很明确:创建一个能够获取当前时间,并且可以根据传入参数计算未来或过去时间的 MCP Server。


与 AI 的精彩对话


接下来就是见证奇迹的时刻了!我向 Cursor 提出了我的需求:


我说:"使用 golang 创建一个可以获取当前时间或传入参数指定分钟数后时间的 MCP server"


Cursor 的回应让我眼前一亮:


它首先分析了项目的当前状态,发现这是一个全新的项目,然后开始规划整个实现方案。最有趣的是,它发现 Go 语言还没有现成的 MCP SDK,于是决定基于 JSON-RPC 协议从零开始实现。


经过一番"思考"和编码,Cursor 成功创建了一个功能完整的 MCP 时间服务器。让我来给大家介绍一下这个项目的亮点:


核心功能方面:


第一个功能是获取当前时间,支持多种时间格式,默认使用 RFC3339 标准格式,这是一个很专业的选择。第二个功能更有趣,可以在当前时间基础上加减指定的分钟数,这意味着你既可以查看未来的时间,也可以回溯到过去的某个时刻。


项目结构方面:


整个项目的组织非常清晰,主要的服务器逻辑都在 main.go 文件中,go.mod 文件定义了模块信息,还贴心地生成了详细的 README 文档和测试客户端代码。


技术特色方面:


最让我印象深刻的是,整个实现完全基于 Go 的标准库,没有引入任何外部依赖,这大大降低了部署的复杂度。同时支持 20 多种时间格式,包括 RFC3339、Kitchen、JST 等,完全符合 MCP 协议规范,使用标准的 JSON-RPC 2.0 协议,错误处理也很完善。


使用起来也很简单:


# 构建项目

go build -o time-mcp main.go


# 启动服务器

./time-mcp


# 运行测试

cd test && go run client.go


测试结果显示一切都运行得很完美,时间获取和计算功能都按预期工作,完全符合 MCP 协议标准。


关键时刻:触发记忆生成


项目完成后,我故意问了一个关键问题:


我问:"到目前为止的实现中,有需要保存到内存的内容吗?"


Cursor 的回答很有意思:


它立即意识到这个项目中确实有很多值得记住的技术要点,特别是 MCP 协议的实现模式和技术决策,这些对未来的项目开发很有参考价值。


Cursor 0.51 全网首个新功能深度体验:Generate Memories 让 AI 编程助手拥有


🧠 AI 的"记忆"诞生了!看看它都记住了什么


在我明确询问是否需要保存记忆后,Generate Memories 功能开始发挥作用。让我们来看看 AI 都从这次对话中提取了哪些关键信息:


技术实现的核心要点


AI 首先总结了用 Go 语言实现 MCP 服务器的关键模式。它记住了仅使用标准库就能实现完整功能的方法,这对于追求简洁和可维护性的开发者来说是个宝贵的经验。同时,它还记录了必需的 MCP 方法,包括初始化、工具列表和工具调用这三个核心接口。


最佳实践的沉淀


除了技术实现,AI 还提取了一些最佳实践,比如如何使用 JSON Schema 来定义输入参数,如何实现多语言支持,以及如何设计灵活的参数系统。这些都是在实际开发中非常实用的经验。


自动生成的记忆内容


最让人惊喜的是,Generate Memories 功能自动生成了一段结构化的记忆内容:


Golang 实现 MCP(Model Context Protocol)服务器的重要模式:


1. **仅使用标准库的实现**:无外部依赖,可实现基于 JSON-RPC 2.0 的 MCP 服务器。通过 bufio.Scanner + os.Stdin/Stdout 实现标准输入输出通信。


2. **必需的 MCP 方法**:initialize(协议版本 2024-11-05、capabilities、serverInfo)、tools/list(可用工具列表)、tools/call(工具执行)这 3 个是基本方法。


3. **响应结构**:MCPResponse 必须包含 jsonrpc:"2.0"、id、result/error 字段。工具执行结果在 content 数组内以 type:"text" 和 text 字段返回。


4. **错误处理**:使用 JSON-RPC 标准错误代码(-32601: Method not found, -32602: Invalid params)。


5. **时间格式支持**:活用 Go 的 time 常量(time.RFC3339、time.Kitchen 等),也可添加自定义格式(JST 等)。


这段记忆内容非常精炼,涵盖了从基础架构到具体实现细节的各个方面,真正做到了"一次学习,终身受用"。


🤔 使用体验的深度思考


通过这次实际测试,我发现了一些有趣的现象,也有一些需要改进的地方。


需要主动触发的记忆机制


有一个细节值得注意:当 AI 完成 MCP Server 的实现后,并没有自动生成记忆。只有当我明确询问"有需要保存到内存的内容吗?"时,它才开始创建记忆。这和 Cline 的 Memory Bank 有所不同,后者会根据预设规则自动判断并保存重要信息。


这种设计有利有弊。好处是避免了信息过载,用户可以主动控制哪些内容需要记住。但缺点是可能会遗漏一些重要信息,特别是对于新手来说,他们可能不知道什么时候应该触发记忆生成。


记忆存储的技术细节


还有一个技术细节需要了解:Generate Memories 功能实际上是将记忆内容保存为 User Rules。这意味着如果你之前有自己的项目级别规则设置,想要分享这些自动生成的记忆时,需要手动从设置中的 User Rules 部分复制内容到项目文件中。


这个设计让记忆管理变得更加灵活,你可以选择将某些记忆设为全局生效,或者只在特定项目中使用。


🎉 总结:AI 编程的新纪元


经过这次深度体验,我对 Generate Memories 功能充满了期待!虽然它还处于 BETA 阶段,但已经展现出了巨大的潜力。


这个功能的价值在哪里?


想象一下,当你在开发一个复杂项目时,AI 能够记住你的编码风格、项目架构、技术选型的原因,甚至是你遇到过的坑和解决方案。这样的编程助手不再是一个"健忘"的工具,而是一个真正了解你和你项目的伙伴。


对开发效率的提升


以前我们每次开始新对话都要重新解释项目背景,现在这些信息都被智能地保存起来了。这不仅节省了时间,更重要的是让 AI 能够提供更加精准和个性化的建议。


未来的发展方向


虽然目前还需要手动触发记忆生成,但我相信随着功能的完善,AI 会变得更加智能,能够自动识别和保存重要信息。同时,记忆的管理和分享机制也会更加完善。


给初学者的建议


如果你是编程新手,我强烈建议你尝试这个功能。每当完成一个小项目或学会一个新技术时,记得问问 AI:"这次的学习有什么需要记住的吗?"让 AI 帮你总结和沉淀知识,这样你的编程之路会走得更加顺畅。


Generate Memories 功能的推出,标志着 AI 编程助手正在从"工具"向"伙伴"转变。虽然还有改进的空间,但这个方向绝对是正确的。让我们一起期待 Cursor 在这个领域带来更多惊喜吧!


文章来自于“小橘子AIGC”,作者“小橘子AIGC”。


Cursor 0.51 全网首个新功能深度体验:Generate Memories 让 AI 编程助手拥有

点赞(0)
顶部