使用 Cursor 管理大型项目的教程与案例分析

juejin.cn/aicoding AI编程板块了解更多AI编程干货

作者:Thierry S.

发布时间:2025年3月5日

阅读时长:5分钟

随着"氛围编码"(vibe coding)的流行,许多开发者认为 Cursor 和 Claude 仅适用于原型开发。然而,Cursor 不仅擅长编写新代码,还能高效地进行代码结构化、标准化、重构以及维护大型项目。借助它,你可以以5-30倍的速度构建软件,这令人兴奋。

本教程将分享我使用 Cursor 的工作流程,以及如何将其应用于大型项目。为了提供背景信息,我们在 Stream 公司为超过10亿终端用户提供聊天、活动动态和视频服务,代码库包含约80万行 Go 代码。

工程岗位并未消失,相反,我们的招聘速度比以往任何时候都要快------目前在阿姆斯特丹、博尔德及远程地区招聘 Go 语言工程师、领导、资深工程师和总监。


Cursor 的编辑与测试循环

高效使用 AI 的关键在于建立一个良好的"编辑-测试循环"。通常,你希望 AI 编写代码、生成测试用例,然后运行测试并修复发现的错误。只有在 AI 完成这些步骤后,我才会开始审查代码。

以下是编辑循环的基本步骤:

第一步:配置 Cursor 和 Agent 模式

你需要使用 Agent 模式(快捷键 Cmd + I)并选择 Claude 3.7 Sonnet(注意左下角的小下拉菜单)。Agent 模式会持续调用 Claude,直到目标实现为止。它会自动搜索文件、查找更多上下文、运行测试、安装依赖包等。

第二步:为 AI 准备文档

上文中的示例稍显简化。通常,你需要在项目中创建一个 docs 文件夹,向 AI 传授代码库中常见任务的最佳实践,例如:

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

我们为 AI 单独维护一个文档文件夹,大致结构如下:

css 复制代码
docs/
  ├── how-to-write-tests.md
  ├── how-to-create-models.md
  ├── how-to-build-controllers.md

这类似于培训工程团队的方式。但我们将 AI 文档单独存放,以便在 AI 出错时更容易纠正。

第三步:在设置中启用 Yolo 模式

启用 Yolo 模式,让 Cursor 无需确认即可运行测试。你也可以选择仅允许常用的测试运行命令。

第四步:让 Cursor/Claude 运行测试(核心步骤)

这是关键部分。你需要指示 Cursor 运行测试。因为它会检测生成代码中的错误并尝试修复,从而显著提高代码质量。

当然,AI 并非完美无缺,可能会遗漏一些问题,但通过这个测试循环,结果远比单纯生成代码要好得多。

前端及其他平台

我主要用 Cursor 处理 Go 语言开发。但对于前端开发,也可以建立类似系统。推荐查看

@tedx_ai

开发的 BrowserTools,它集成了截图和控制台功能。更多 MCP(多步骤命令提示)选项可参考:cursor.directory/mcp。目前针对 Android、Swift、Flutter 和 React Native 开发的 MCP 选项尚未成熟。


Cursor 项目文件

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

项目步骤示例

以下是一个为消息添加书签/提醒功能的项目文件示例:

bash 复制代码
1. 创建数据库模型(参考 docs/how-to-create-models.md)
2. 编写控制器逻辑(参考 docs/how-to-build-controllers.md)
3. 添加测试用例(参考 docs/how-to-write-tests.md)

每个步骤都引用了相关文档。你也可以使用 Cursor 规则自动完成,但手动指定文档通常更精准。

项目验证检查

有了项目文件后,还可以用 AI 检查规范中的问题。例如,我们的项目检查文件会:

  • 检查模型定义是否明确指定主键;
  • 对于控制器步骤,询问你所需的权限。

用 AI 验证 AI 的指令,这种方式颇为新奇。

生成项目文件

你还可以让 AI 生成项目描述。提供一个示例项目文件,让它为新功能生成类似内容。目前,Grok 是最适合此任务的模型,结合 deepsearch 功能可进一步明确项目需求。


Git 作为检查点 - 重置与重试

Cursor 内置了检查点系统,但我更喜欢使用 Git。以下是重置工作区的常用命令:

shell

perl 复制代码
git stash --include-untracked  # 暂存所有更改,包括未跟踪的文件
git stash pop                  # 恢复最近的暂存
git clean -fd                  # 删除所有未提交的文件(谨慎使用)

如果 Claude 的生成偏离预期,只需重置并重试。这也是保留项目文件的好处,它便于基于不同文档或最佳实践重新开始。


Cursor 和 Claude 的其他技巧

在使用 Cursor 时,我们发现特定步骤和技巧能显著提升生成代码的质量。

限制 Composer 窗口的步骤

在单个 Composer 窗口中运行5-7个步骤时,Claude 可能会遗忘部分指令。因此,适时创建新的 Agent 窗口。

Cursor 设置技巧

  • 在设置中添加文档,特别适用于 Claude 默认不太熟悉的较少使用的包;
  • MCP 与 Linear 等工具的集成非常实用;
  • /add open files to context 功能方便地将打开的文件加入上下文。

与 Goland 配合

Cursor 的 AI 功能很强大,但我会同时使用 Goland 进行调试、重构和常规编辑。对于 iOS/Android 开发等场景,强工具支持的编辑器也难以完全替代。

Cursor Tools推荐

@EastlondonDev的 cursor-tools 项目(github.com/eastlondone...

Cursor 规则

在设置中添加规则,可自动引入文档。例如:

bash 复制代码
当创建新模型时,始终参考 docs/how-to-create-models.md

常见规则目录可供参考。

代码标准化

如果代码命名混乱或存在重复实现,AI 容易出错。因此,保持干净、标准化的代码能提高 AI 的成功率。

检查所有内容

就像检查初级工程师的工作一样,你应仔细审查 AI 生成的每一行代码,确保理解其功能。


重构、文档与搜索

Cursor 和 Claude 不仅限于代码生成,还可用于文档编写、搜索和重构。

重构示例

可以一次性对数百个文件进行复杂调整。简单更改我仍偏好 Goland 的重构工具,但复杂变更可节省数天时间。

搜索与文档

对于大型代码库中难以理解的部分,可让 Cursor 生成文档加以解释。

技术理解

遇到不熟悉的技术时,Cursor 可替代 Google 或 Stack Overflow,提供快速解答。


结论

Cursor 不仅是原型工具,也是维护大型项目的利器。要高效使用它:

  1. 建立生成/测试/运行测试的循环,让 AI 自我纠正;
  2. 创建项目计划,并用 AI 检查和改进;
  3. 调整 Cursor 设置,适应其独特的工作流程;
  4. 不仅限于代码生成,还可用于重构、文档编写和搜索。

通过合理配置,你的工作效率可提升5-30倍。作为工程师,我尤其喜欢它让我能专注于更复杂的问题,而 AI 处理基础工作。希望本指南对你有所帮助!

相关推荐
不浪brown9 小时前
cursor!还钱!
ai编程·cursor·trae
飞哥数智坊11 小时前
Cursor替代方案整理,附模型不可用进阶解决方案
人工智能·claude·cursor
waynaqua12 小时前
Claude Code 最新版已经支持 Windows 安装使用!
ai编程·claude
用户66769403763013 小时前
生产力升级:将ERNIE 4.5-VL模型封装为可随时调用的API服务
ai编程
元元的飞14 小时前
Spring AI Alibaba示例代码(其他平台模型及vllm-chat 400错误解决)
ai编程
mortimer16 小时前
当AI配音遇上视频:实现音画同步的自动化工程实践
python·ffmpeg·ai编程
懿瑾16 小时前
破除Cursor区域限制 This model provider doesn't serve your region
cursor
大模型真好玩18 小时前
深入浅出LangChain AI Agent智能体开发教程(二)—LangChain接入大模型
人工智能·python·ai编程
特立独行的猫a18 小时前
AI编程神器 Claude Code 安装及使用体验
ide·ai编程·claude·ai ide·claude code
葫芦和十三21 小时前
SuperClaude 硬核指南:将你的 AI 助手锻造成专业开发战友
后端·ai编程·claude