5 min read
如何在大型项目使用Cursor

随着“氛围”编码的流行,许多开发者认为 Cursor 和 Claude 仅适用于原型开发。虽然 Cursor 在编写新代码方面表现出色,但它在结构化代码、标准化、重构和维护大型项目方面也非常有效。这令人非常兴奋,因为你可以以 5-30 倍的速度构建软件。
本指南分享了我在 Cursor 中的工作流程,以及如何将其用于大型项目。作为背景,在 Stream,我们为超过十亿的最终用户提供聊天、活动动态 和视频。大约有 80 万行 Go 代码。
工程职位在短期内不会消失。事实上,我们的招聘速度比以往任何时候都快——在阿姆斯特丹/博尔德/远程招聘 Golang 工程师/负责人/员工/主管。
Cursor – 编辑、测试循环
有效使用 AI 的关键在于良好的编辑和测试循环。你通常希望 AI 编写代码、编写测试,然后执行这些测试,同时修复它发现的任何错误。只有在 AI 完成这些步骤后,我才会开始审查。
让我们来看看这个编辑循环的基本步骤。
步骤 1 - Cursor 设置/代理模式
你需要使用代理模式(cmd + I)+ Claude 3.7 模式。(注意左下角的小下拉菜单)。代理模式将持续调用 Claude,直到目标实现。因此,它会搜索文件、查找更多上下文、运行测试、安装包。
步骤 2 - AI 的文档
上面的示例有点简化。通常,你希望有一个文档文件夹,教 AI 你在代码库中常见任务的最佳实践。例如:
- 我该如何编写测试?
- 我该如何设置新的数据库模型并应用迁移?
- 我该如何创建新的控制器/状态层等?
我们为 AI 保留一个单独的文档文件夹。它看起来像这样。
这与训练你的工程团队的方式非常相似。但我们保留单独的 AI 文档,以便在 AI 出错时容易进行纠正。
步骤 3 - 在设置中启用 Yolo 模式
你需要启用 Yolo 模式,以便 Cursor 可以在不询问确认的情况下运行测试。可选地,你可以仅允许你经常使用的命令来运行测试等。
步骤 4 - Cursor/Claude 运行测试(这是关键部分)
这是关键部分。你需要告诉 Cursor 运行测试。因为它正在运行测试,所以它会检测到在生成代码时所犯的错误。
当然,AI 并不完美;它会遗漏一些东西,但通过这个测试循环,结果远比仅仅生成代码要好得多。
对于前端/其他平台
我主要使用 Cursor 来处理 Golang。但你可以设置一个类似于前端开发的系统。查看 BrowserTools 由 @tedx_ai 提供的屏幕截图和控制台集成。你可以在这里找到更多 MCP 选项:https://cursor.directory/mcp。我还没有看到适用于 Android、Swift、Flutter 和 React Native 开发的良好 MCP 选项。
Cursor - 项目文件
编辑/测试循环是有效使用 Cursor 的关键。另一个重要的工作流程是创建项目文件。
项目步骤
以下是创建消息书签/提醒的项目文件示例。
注意每个步骤如何引用相关文档。你也可以使用 Cursor 规则来做到这一点,但我更喜欢大多数时候手动指定正确的文档。
项目验证检查
现在,当你有这个项目文件时。你还可以使用 AI 来检查你的规范是否存在问题。我们的项目检查文件将审查模型,以查看说明是否明确主键。对于控制器步骤,它会要求你澄清所需的权限。因此,你可以使用 AI 来验证对 AI 的指令,这有点疯狂。🙂
生成项目文件
当然,你也可以使用 AI 来生成你的项目描述。你给它一个示例项目描述文件,并要求它为不同的功能生成类似的内容。Grok 可能是目前最好的模型。你还可以将其与深度搜索结合,以进一步澄清你的项目需求。
准备好集成了吗? 我们的团队随时准备帮助你。今天联系我们,明天就可以启动!
Git 是你的检查点 - 重复进行
Cursor 有一个内置的检查点系统,但我更喜欢不使用它。Git 对我来说更有效。要重置你的工作区,你可以使用:
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 默认对其了解不多。
- MCP 与线性或其他工具的集成非常酷。
- / 将打开的文件添加到上下文非常方便。
Goland
Cursor 在其 AI 功能方面非常出色。我并排运行 Goland 进行调试、重构和一般编辑器设计。你可能还需要这样做,例如 iOS/Android 开发等,强大的工具编辑器很难/不可能完全替代。
Cursor 工具
有一个很酷的 Cursor 工具项目 https://github.com/eastlondoner/cursor-tools 由 @EastlondonDev 提供。Cursor 工具支持浏览器使用、大上下文窗口、文档和规划能力。
Cursor 规则
你可以在设置中为 Cursor 添加规则,这使你能够自动包含文档。例如:
代码标准化
如果你使用混淆的名称、重复的实现等,AI 会感到困惑,因此你希望拥有干净、标准化的代码,以便与 AI 达成最高的成功率。
检查一切
如果你将工作分配给一名初级工程师,你会仔细检查每一项工作。你应该以类似的方式对待 AI,并了解代码的每一部分的作用。
重构、文档与搜索
这不仅仅是代码生成。你还可以使用 Cursor 和 Claude 进行文档、搜索和重构。
重构示例
你可以对数百个文件进行复杂的调整。如果是简单的更改,我仍然更喜欢 Goland 的重构工具。但对于复杂的更改,这可以节省数天的工作。
搜索与文档
每个大型代码库最终都有一些难以理解的部分。你可以要求 Cursor 为你编写文档,以帮助解释它。
技术与理解
当你遇到代码库中某个你不理解的底层技术时,你也可以将其用作 Google/Stackoverflow 的替代品。
结论
Cursor 是一个令人惊叹的工具,不仅适用于原型开发,还适用于维护大型项目。要有效使用它:
- 设置生成/测试/运行测试循环。这样 AI 就会自我纠正。
- 创建项目计划,并让 AI 检查和改进该计划。
- 微调你的 Cursor 设置,并适应不同的工作流程。
- 这不仅仅是代码生成。你可以重构、创建文档,并将其用作强大的搜索引擎。
通过正确的设置,你可以工作得快 5-30 倍。我尤其喜欢的是,作为一名工程师,你可以专注于更难的问题,而 AI 生成所有基础内容。希望本指南对你有所帮助。如果你有更多提示,请与 Stream 在 X 上分享联系我,我会将它们添加到文章中。
P.S.—我们正在招聘 Go 工程师。(员工/负责人/主管 Golang,阿姆斯特丹/博尔德/斯科普里/远程)
想获取更多 AI 辅助设计和设计灵感趋势? 欢迎关注我的公众号(设计小站):sjxz 00。