Cursor真就越来越难用了,尤其从0.45版本开始,智能肉眼可见的下降,越来越Trae化了。
这段时间以来我就发现Cursor的上下文越来越短,时不时的乱改文件,一个简单问题能盘它好久,明明就是已经提供了报错信息解决方式愣是不解决。
最离谱的是我打开了MCP的功能,结果每次编辑文件他都会去调用MPC的写文件功能,我甚至把配置文件去掉了,他还在调MCP的rite_file。
哎,以前有多智能,现在就有多智障!
最可笑的是官方自己都没有搞清楚Edit还是Agent的定位,现在然后又突然换掉了名字,增加一个不知道所谓的Manual功能。
降智商降得没办法,只能自己本地创文件手把手的教它怎么写了,结果就是.mdc文档比代码还多。用下来还行吧,算是有点部分缓解Cursor目前的不作为。
稍微介绍一下这个新的Cursor特有的.mdc文件。
.mdc(Markdown Cursor)文件是Cursor规则文件格式,它本身就是Markdown语法,只是特别用于定义AI在编码时的行为、约束和上下文的。
你可以它当成给AI助手的"备忘录",告诉它在你的项目中应该遵循什么规则,要怎么做。
而且旧版.cursorrules也马上要废弃了,主要因为太于单一,新的专有.mdc优势:
使用.mdc文件后,AI助手改的代码质量还是有所提升的,把东西都喂到他嘴边了,再不会写,只能骂娘了,而且搞这个文档,公司团队协作也方便了些,不需要再重复告诉AI同样的项目规范,后续项目也可以很方便的迁移过去。
搭配地表最强编程模型:Google Gemini 2.5 Pro超长上下文,简直天作之合。
写这个文件其实特别简单,一个典型的.mdc文件包含两个部分:
创建和使用.mdc文件的话,主要是记住他的位置:
.cursor/rules/文件夹.mdc文件,如ts-rules.mdc,保存后,Cursor会自动应用规则看看这个简单示例:
--- description:TypeScript项目规范 globs:*.ts,*.tsx --- #TypeScript编码规范 -使用严格模式(strict:true) -优先使用函数组件而非类组件 -代码中必须包含完整类型注解
下面这些是我日渐膨胀的.mdc部分案例展示:
全栈TypeScript项目架构与约束
---
description:企业级TypeScript全栈应用架构规范
globs:*.ts,*.tsx
priority:10
---
#TypeScript全栈架构规范
##核心架构原则
-采用**六边形架构**(HexagonalArchitecture)设计模式
-领域逻辑与框架、UI、数据库等基础设施隔离
-依赖关系必须指向领域核心,禁止反向依赖
-接口定义在领域层,实现在基础设施层
##类型系统规范
-禁止使用`any`类型,必须使用`unknown`作为未知类型的默认选择
-对所有函数参数和返回值进行显式类型注解
-对于复杂对象,使用以下模式定义类型:
```typescript
//领域实体基础类型
typeUserProperties={
id:string;
email:string;
firstName:string;
lastName:string;
role:UserRole;
createdAt
ate;
updatedAt
ate;
};
//实体类
exportclassUser{
privateprops:UserProperties;
privateconstructor(props:UserProperties){
this.props=props;
}
//工厂方法
publicstaticcreate(props:Omit<UserProperties,'id'|'createdAt'|'updatedAt'>):Result<User>{
//验证逻辑...
returnResult.ok(newUser({
...props,
id:UUID.generate(),
createdAt:newDate(),
updatedAt:newDate()
}));
}
//访问器方法
getid():string{returnthis.props.id;}
getemail():string{returnthis.props.email;}
//...其他访问器
}微服务的
###微服务架构设计规范
---
description:微服务架构设计规范与最佳实践
globs:*.{ts,js,go,py}
priority:20
---
#微服务架构设计规范
##架构总体原则
-采用**Domain-DrivenDesign(DDD)**思想设计微服务边界
-每个微服务应满足"单一职责"原则
-服务间通信优先考虑异步事件驱动模式
-遵循API优先设计原则,先定义接口再实现
##服务间通信规范
###同步通信
-RESTAPI必须遵循以下规范:
-使用HAL(HypertextApplicationLanguage)表示资源关系
-统一错误响应格式:
```json
{
"error":{
"code":"RESOURCE_NOT_FOUND",
"message":"请求的资源不存在",
"details":{
"resource_id":"12345",
"resource_type":"user"
},
"trace_id":"abcd1234-5678-efgh-ijkl-mnopqrstuvwx",
"timestamp":"2025-03-28T12:34:56Z"
}
}
```
-API版本控制策略:Acceptheader中指定版本,例如`Accept:application/vnd.company.api+json;version=1`
###异步通信
-事件结构规范:
```json
{
"id":"uuid-v4-format",
"type":"user.created",
"version":"1.0",
"source":"user-service",
"time":"2025-03-28T12:34:56Z",
"dataContentType":"application/json",
"data":{
//事件具体数据
},
"correlationId":"related-request-id",
"subject":"users"
}上面这些都是基于Cursor 0.45版本的,如果你也遇到了Cursor降智的行为,不妨也像这样多写两行类似规划文档的东西,或许会有所改观。
| 欢迎光临 链载Ai (https://www.lianzai.com/) | Powered by Discuz! X3.5 |