Cursor-用于大型项目

展示 Cursor 界面的头图

随着"氛围"编程的流行,许多开发者认为 CursorClaude 只适合做原型。虽然 Cursor 确实擅长编写新代码,但它在结构化代码、标准化、重构和维护大型项目方面也非常有效。这非常令人兴奋,因为你可以以 5-30 倍的速度构建软件。

本指南分享我使用 Cursor 的工作流程以及如何将其用于大型项目。作为背景介绍,在 Stream,我们为超过十亿终端用户提供聊天活动流视频服务。约 80 万行 Go 代码。

工程师岗位在短期内不会消失。事实上,我们正在比以往更快地招聘------在阿姆斯特丹/博尔德/远程工作的 Golang 工程师/主管/资深工程师/总监

Cursor -- 编辑、测试循环

有效使用 AI 的关键是良好的编辑和测试循环。通常你希望 AI 编写代码,编写测试,然后执行这些测试并修复它发现的任何错误。只有在 AI 完成这些步骤后,我才会开始审查。

让我们来看看这个编辑循环的基础知识。

步骤 1 - Cursor 设置/代理模式

你需要使用代理模式(cmd + I)+ Claude 3.7 sonnet(注意左下角的小下拉菜单)。代理模式将持续调用 Claude 直到目标实现。因此,它会搜索文件,查找更多上下文,运行测试,安装包等。

Cursor 代理模式截图

步骤 2 - AI 文档

上面的例子有点简化了。通常,你需要一个文档文件夹,教导 AI 在你的代码库上执行常见任务的最佳实践。例如:

  • 如何编写测试?
  • 如何设置新的数据库模型并应用迁移?
  • 如何创建新的控制器/状态层等?

我们为 AI 保留一个单独的文档文件夹。它看起来像这样。

AI 文档文件夹结构

这与你培训工程团队的方式非常相似。但我们保持单独的 AI 文档,这样当 AI 出错时,很容易纠正它。

步骤 3 - 在设置中启用 Yolo 模式

你需要启用 Yolo 模式,这样 Cursor 可以在不请求确认的情况下运行测试。你也可以选择只允许你经常使用的命令来运行测试等。

Yolo 模式设置

步骤 4 - Cursor/Claude 运行测试(这是关键部分)

这是关键部分。你需要告诉 Cursor 运行测试。因为它正在运行测试,它将检测到在生成代码时所犯的错误。

Cursor 运行测试

当然,AI 并不完美;它会遗漏一些东西,但有了这个测试循环,结果比仅仅生成代码要好得多。

对于前端/其他平台

我主要将 Cursor 用于 Golang。但你可以为前端开发设置类似的系统。查看 @tedx_aiBrowserTools,了解截图和控制台集成。你可以在这里找到更多 MCP 选项:cursor.directory/mcp。我还没有看到适用于 Android、Swift、Flutter 和 React Native 开发的好的 MCP 选项。

Cursor - 项目文件

编辑/测试循环是有效使用 Cursor 的关键。另一个重要的工作流程是创建项目文件。

项目步骤

这是一个创建消息书签/提醒功能的项目文件示例

项目文件示例

注意每个步骤如何引用相关文档。你也可以使用 Cursor 规则来做这件事,但我更喜欢大多数时候手动指定正确的文档。

项目验证检查

现在当你有了这个项目文件,你也可以使用 AI 来检查你的规范是否有问题。我们的项目检查文件将审查模型,看看说明是否明确了主键。对于控制器步骤,它会要求你明确所需的权限。所以你可以使用 AI 来验证给 AI 的指令,这有点疯狂。

生成项目文件

当然,你也可以使用 AI 来生成你的项目描述。你给它一个示例项目描述文件,并要求它为不同的功能生成类似的内容。目前 Grok 可能是这方面最好的模型。你也可以将其与深度搜索结合起来,进一步明确你的项目需求。

准备好集成了吗? 我们的团队随时准备帮助你。立即联系我们,明天就可以启动!

Git 是你的检查点 - 重复使用

Cursor 有一个内置的检查点系统,但我更喜欢不使用它。Git 对我来说效果更好。要重置你的工作区,你可以使用:

perl 复制代码
git stash --include-untracked # 暂存所有更改,包括未跟踪的文件
git stash pop # 恢复最后一次暂存
git clean -fd # 删除所有未提交的文件(使用这个命令要小心)

所以,如果 Claude 偏离了轨道,只需重置并再试一次。这也是为什么你要保留一个项目文件。它使得用不同的文档/最佳实践等重新开始变得非常容易。

其他 Cursor 和 Claude 技巧

在使用 Cursor 时,我们了解到采取特定步骤和应用某些技巧可以显著提高 Cursor 生成的输出质量。

限制 Cursor Composer 窗口中的步骤

有时,我会在单个 composer 窗口中运行 5-7 个步骤。对话持续的时间越长,Claude 忘记部分指令的可能性就越大。所以有时创建一个新的 Cursor 代理窗口。

Cursor 设置技巧

  • 在 Cursor 设置中,你可以添加文档。这对于 Claude 默认不太了解的不常用包特别有用

  • 与 linear 或其他工具的 MCP 集成非常酷

  • /add open files to context 非常方便

Cursor 设置

Goland

Cursor 的 AI 功能令人惊叹。我并排运行 Goland 用于调试、重构和一般编辑器设计。你可能也需要这样做,比如 iOS/Android 开发等,在这些领域,一个具有强大工具的编辑器很难/不可能完全替代。

Cursor 工具

有一个很酷的 cursor tools 项目 github.com/eastlondone...,由 @EastlondonDev 开发。Cursor tools 启用浏览器使用、大型上下文窗口、文档和规划功能。

Cursor 规则

你可以在设置中为 Cursor 添加规则,这使你能够自动包含文档。例如:

Cursor 规则示例

这里有一个常见 Cursor 规则的目录

代码标准化

它感觉几乎像人类,因为如果你使用混乱的名称、重复的实现等,AI 会感到困惑。所以,你需要有干净、标准化的代码,以获得 AI 最高的成功率。

检查一切

如果你将工作分配给初级工程师,你会仔细检查一切。你应该类似地对待 AI,并了解代码的每一部分是做什么的。

重构、文档和搜索

不仅仅是代码生成。你还可以使用 Cursor 和 Claude 进行文档编写、搜索和重构。

重构示例

你可以一次对数百个文件进行复杂的调整。如果是简单的更改,我仍然更喜欢使用 Goland 的重构工具。但对于复杂的更改,这可以节省数天的工作。

重构示例

搜索和文档

每个大型代码库最终都会有难以理解的部分。你可以要求 Cursor 为你编写文档来帮助解释它。

搜索和文档示例

技术和理解

当你遇到代码库中不理解底层技术的部分时,你也可以将其作为 Google/Stackoverflow 的替代品

技术理解示例

结论

Cursor 不仅是一个用于原型的惊人工具,也适用于维护大型项目。要有效使用它:

  • 设置生成/测试/运行测试循环。这样 AI 可以自我纠正
  • 创建项目计划,并让 AI 检查和改进这个计划
  • 微调你的 Cursor 设置,并适应不同的工作流程
  • 不仅仅是代码生成。你可以重构、创建文档并将其用作强大的搜索引擎

通过正确的设置,你可以以 5-30 倍的速度工作。我特别喜欢的是,作为一名工程师,你可以更专注于更难的问题,而 AI 生成所有基础部分。希望这个指南有所帮助。如果你有更多技巧,在 X 上与 Stream 分享,我会将它们添加到文章中。


参考资料:

  1. 中文文档:学习核心概念,访问 mcp.vyagent.com
  2. GitHub 仓库:探索源码和示例,地址 github.com/modelcontex...
  3. 社区讨论:提问、交流灵感,加入 github.com/modelcontex...
相关推荐
Json_2 小时前
Cursor 编辑器使用文档,一款AI 代码编辑器, 人人都可以写代码!!!Tab,Tab,再来一次 Tab
人工智能·openai·cursor
phper86 小时前
Python项目在 Cursor 编辑器中 Conda 环境配置问题
python·conda·cursor
tommyrunner8 小时前
Cursor rule文件测试 一秒了解AI行为规则文件
前端·cursor
Caitouer8 小时前
AI代理的计算机使用原理
cursor·ai 编程
ivygeek8 小时前
Cursor:使用 Cursor 创建 Spring Boot Maven 项目
人工智能·cursor
AI编程产品人9 小时前
Trae AI 编程最佳实践
cursor·trae·ai 编程
我不吃饼干1 天前
【AI初体验】用cursor复刻一个掘金网站
前端·cursor
孟健1 天前
普通程序员 vs 提示词高手:同样的 AI,差距竟有 10 倍
aigc·cursor·ai 编程
yaocheng的ai分身1 天前
glama上线了mcp汇总板块
mcp