Cursor使用经验分享-2

因为第一个帖子已经不能编辑了,特此开第二个帖子继续分享。
本帖基于 0.49.x 编写,低于此版本可能部分功能不可用/找不到

.env之类的文件AI突然无法读取

!!警告!!
虽然已经有一个全局忽略列表,但是Cursor的AI会通过命令查看你的文件。故通过此方法绕过全局忽略文件列表的显示。在没有一个新的解决方法之前,切勿启用YOLO模式。

0.49.x更新了一个全局的忽略文件列表,它大概长下面这个样子:


很明显,一些常见的隐私文件都被包含在了里面。
当AI尝试访问这些文件的时候,会被阻止访问(这没有任何问题)。
如果你需要放行的话,只需要移除这些禁令即可。但是,请注意!我仍然不推荐你移除任意一条规则,他们会访问到一些不应该被访问到的东西。

一些新增的设置选项

QQ_1745804615822
包括项目结构——包含一个简化的目录树,让模型了解代码库布局

这个选项开启之后,可以让模型知道项目的文件地图。但是实际上我没怎么感受出来有啥用,可能还在BETA所以不太稳定吧。

QQ_1745804705185
自动组变更——自动将与 LLM 聊天会话中所做的更改分组,以供您审阅

虽然我也没体验出来这个是干啥的,但是开着总没什么错误不是么?

QQ_1745804804333
网页搜索工具——这将允许在代理/询问模式下聊天以在网络上搜索信息

这个酌情进行关闭,因为现在的网络对AI并不友好。很多资料都会污染AI资料库,导致智商下降之类的问题出现。

自动生成规则

在Cursor的0.49.x版本中,更新了一个新的命令/Generate Cursor Rules
这个命令可以快速的生成一份根据你的指示和项目调教的规则,我们不再需要到处去找对应的.cursorrules文件来协助我们开发。

以下是我生成规则的时候通常会使用的一些提示词,你可以根据你的习惯进行调整。
这里一共需要进行两轮对话才能完成,我目前还没有一个好的办法让他一次性完成这个工作。

第一次对话

1. **开发环境**:
   - 操作系统:Windows
   - 终端工具:Git Shell
   - 代码提交:使用Git进行版本控制
   - 编码规范:UTF-8编码
2. **开发原则**:
   - 遵循SOLID原则
   - 遵循DRY原则
   - 遵循KISS原则
   - 遵循YAGNI原则
   - 遵守OWASP最佳实践
   - 任务分解为最小单元
   - 采用逐步解决问题方式

这里应该描述你对这个项目的要求之类的

第二次对话

请在文件开头对整个文件的描述,方便我后续快速了解这个文件的作用。

如果你发现Cursor这里无法按照要求,可以用Trae来完成这个简单的功能。(Cursor这里好像有限制,不能直接编辑description部分。就无法自动变成让AI自动选择使用的规则,所以这里要借助一下外部工具来完成这一步)

另外,我目前已经更倾向使用.cursor/rules管理规则。
这是一份我会在项目初始化之前选择性使用的固定规则,如果你也需要的话可以下载下来放到.cursor/rules下面。

这个文件被设定为每次都会引用(相当于以前的.cursorrules文件功能)
00-riper-5-model.mdc.gz (2.0 KB)(资源链接之前的失效了,现在补上新的)

模型的选择

目前有三个明星模型值得尝试(排名遵守Cursor中显示顺序,无关模型能力)

  • claude-3.5-sonnet
  • claude-3.7-sonnet
  • gemini-2.5-pro-exp-03-25

在最近一段时间的使用时间上,gemini-2.5-pro-exp-03-25的占比明显已经增加了许多。由于他是一个思考模型,输出的结果准确性上会比指令模型好上一些。但是在规则遵守上,claude-3.7-sonnet和gemini-2.5-pro-exp-03-25明显不如claude-3.5-sonnet效果好。不知道是不是模型有什么自己想法,会碰到自动执行模式的情况(没错,我在使用RIPER-5 模式)。

MCP

目前来说,MCP的功能更像是给模型打了一个DLC。使其可以完成之前无法完成的一些功能,但MCP并不是越多越好。你需要根据你的需要进行选择性配置MCP,不然会出现同功能类型的MCP打架的情况。

一些我使用到的MCP工具

这个MCP需要安装对应的浏览器拓展和运行独立的进程才能完全发挥作用,配置起来有些麻烦。

{
  "mcpServers": {
    "浏览器": {
      "command": "npx",
      "args": [
        "@playwright/mcp@latest",
        "--browser",
        "msedge"
      ]
    }
  }
}
{
  "mcpServers": {
    "请求器": {
      "command": "uvx",
      "args": [
        "mcp-server-fetch"
      ]
    }
  }
}
{
  "mcpServers": {
    "Maven仓库检索": {
      "command": "npx",
      "args": [
        "mcp-maven-deps"
      ]
    }
  }
}

后话

最近也有尝试使用Trae来进行编程,但是这个使用体验一(yi)言(tuo)难(gou)尽(shi)。尽管Trae推出了智能体和规则,但是模型依旧是我行我素,很难遵守约定好的规则。上下文召回也很迷惑,总会召回一些无关的文件。但是,总是要支持国产的。没错,名义上。

45 Likes

前排支持大佬

比起全局配置rule

用佬的方法为每个项目单独加一个项目rule更合适

下载不了 404

我刚刚才重新下载的,不应该下载不了了。换个地区试一试,说不定是什么奇奇怪怪的问题导致的。

感谢分享,尝试一下。

trae体验:一(yi)言(tuo)难(gou)尽(shi)。感谢分享

  1. 开发环境
    • 操作系统:Windows
    • 终端工具:Git Shell
    • 代码提交:使用Git进行版本控制
    • 编码规范:UTF-8编码
  2. 开发原则
    • 遵循SOLID原则
    • 遵循DRY原则
    • 遵循KISS原则
    • 遵循YAGNI原则
    • 遵守OWASP最佳实践
    • 任务分解为最小单元
    • 采用逐步解决问题方式

请在文件结果生成对整个文件的描述,方便我后续快速了解这个文件的作用。 这个是生成项目的规则吗 还是放到用户规则里?

是配合/Generate Cursor Rules命令一块用的

感谢分享,好人一胎十个

1 Like

感谢大佬!

这个是根据当前项目 自动生成对应的编程规范吗? 比如我要是改插件之类的。是不是应该Agent下 执行


/Generate Cursor Rules   
1. **开发环境**:
   - 操作系统:Windows
   - 终端工具:Git Shell
   - 代码提交:使用Git进行版本控制
   - 编码规范:UTF-8编码
2. **开发原则**:
   - 遵循SOLID原则
   - 遵循DRY原则
   - 遵循KISS原则
   - 遵循YAGNI原则
   - 遵守OWASP最佳实践
   - 任务分解为最小单元
   - 采用逐步解决问题方式
3. **智能检测**
   - 自动检测所有触发模型下载的代码。
   - 自动检测所有高位代码,包括执行pip install 安装依赖库的代码

还是这个rule 是随便找个空项目执行一次,可以复制到所有其他项目中使用,我测试好像是对当前代码的描述,如果新加了几个类 要重新执行一次 generate rule吗?

下载不了,不公开的页面,换地区也不行

一般来说,是不需要多次执行的。
应该会根据你的框架自动添加一套规则,之后只需要根据需要调整规则即可。

4.1的规则遵守上海不错

但是4.1会偷懒,不给你输出全

是指RIPER-5 模式下,他不会一口气完成所以规划么?
我还挺喜欢这样的按步骤给回复的。感觉可控性会变强,互动性也可以,不过效率确实低不少

相反,它会在一次回答中进入研究、创意、计划、执行。
这给我一种失控的感觉,我都没有核对计划对不对,它就执行了。

cursor还能薅嘛

站内不是有么?