原创 阳凯 2025-06-23 18:32 上海
随着AI辅助编程工具的普及,Cursor IDE已经成为越来越多开发者的选择,如何让AI真正理解项目需求并生成一致高质的代码?本文将分享Cursor Rules优化过程中的实践经验,展示如何从混乱的规范体系演进到清晰、高效的AI协作规范架构
💡 旧版规范存在规则冗余、提示词冲突和维护困境等问题,影响了AI代码生成的质量和效率。
🔨 新版规范采用分层架构,包括基础层、模块层和流程层,每层都有明确的职责和边界,提高了规范的一致性和可维护性。
⚙️ 基础层对项目基础规范、代码质量、TypeScript规范、注释规范、命名规范、样式规范和代码检查进行了精细化设计,确保了代码的规范性。
🧱 模块层遵循前端分层架构思想,将应用拆分为表现层、业务逻辑层、数据服务层和路由层,规范了API接口的开发流程。
🚀 流程层针对具体业务场景定制化规范,例如curd页面开发流程,提高了开发效率和代码质量。
原创 阳凯 2025-06-23 18:32 上海
随着AI辅助编程工具的普及,Cursor IDE已经成为越来越多开发者的选择,如何让AI真正理解项目需求并生成一致高质的代码?本文将分享Cursor Rules优化过程中的实践经验,展示如何从混乱的规范体系演进到清晰、高效的AI协作规范架构
※ 该格式优势结构清晰:每个部分的职责明确,便于AI理解。可执行性:强制/禁止行为都有明确的操作指导。示例驱动:用实际代码代替抽象描述。AI协作执行协议为了确保AI能够正确理解和执行规范,我们设计了一个明确的AI协作协议提示词:# 规则名称
## 基础规范
- 明确的技术要求和实现标准
## 强制行为
- 必须执行的具体操作和约束
## 禁止行为
- 严格禁止的操作和做法,需要避免的常见错误
## 示例代码
- 具体的代码示例和最佳实践
- 也通过 [文件名](mdc:路径) 引用外部示例
# AI协作执行规则
## 规则分类
- basic/下的通用规则: 必须调用,通用基础规范
- modules/下的模块规则: 按需调用,架构分层规范
- workflow/下的流程规则: 按需调用,业务场景规范
## 执行流程
1. 识别场景 → 调用相关规则
2. 读取示例代码 → 作为生成参考
3. 执行强制/禁止行为 → 确保代码质量
4. 应用设计原则 → 组件化、单一职责、分层设计
## 质量保障
- 所有规则必须100%执行,重点关注强制行为和禁止行为
# 代码质量分规范(通用规则)
## 强制行为
- 所有请求必须采用 HTTPS 协议
- 确保第三方库安全可靠
## 禁止行为
- 代码复杂度限制
- 单个文件不得超过 500 行
- 条件复杂度不得超过 10
- 单个函数不得超过 199 行
- 超过限制时,应优先按功能模块拆分为多个函数或文件
- 禁止使用非得物域名的外部 CDN 资源
- 禁止在代码中包含明文密码或硬编码 token
- 禁止出现敏感词
- 避免重复代码块
- 不允许单词拼写错误或不符合命名规范
- 避免在前端直接进行金额计算(导致精度丢失)
- 禁止使用魔数(如 a === '3'),应使用常量(如 a === statusMap.login)
# API接口生成规范(模块规则)
## 存放位置规范(按优先级)
- [p0] 页面级API:src/pages/{pageName}/services/{modules}.ts
- [p1] 全局API:src/services/{modules}.ts
- 类型文件:对应的 .interface.ts 文件
## 标准代码模板
```
import { request } from '@/utils/request';
import { UniversalResp } from '@/utils/request-operation';
import { IUserListReq, IUserListDataRes } from './interface';
/**
* 获取用户列表
* @param data 请求参数
*/
export const fetchUserListApi = async (data: IUserListReq) => {
return request.post<UniversalResp<IUserListDataRes>>(
'/api/user/list',
data
);
};
```
## 强制行为
- 使用MCP Server的mooncake_get_api_details工具获取接口详情
- 响应数据必须使用UniversalResp<T>泛型包装
- 接口命名采用fetch{ApiFileName}Api格式
- 类型定义必须完整,包含完整字段注释
curd-page.mdc | curd页面开发 | curd页面完整使用流程 |
log.mdc | 错误监控 | APM监控和错误日志处理流程 |
sendBuried.mdc | 数据埋点 | 用户行为埋点的标准流程 |
...... |
# pro-table生成新页面(流程规则)
深入研究代码并理解[insert feature]是如何工作的。一旦你明白了,让我知道,我将提供我的任务给你。
## 工作流程
按以下流程进行任务执行,如果评估存在非必须流程,可跳过。
- MCP读取接口信息
- 从用户输入中提取以下信息:
- 列表名称
- 筛选项(需标记hideInTable)
- 展示项(需标记hideInSearch)
- 操作项
- 工具栏按钮
- 评估完整的需求内容复杂度,考虑未来的扩展性,合理设计分层目录结构
- 各个模块保持单一职责,考虑合理的业务组件拆分,避免大量代码都在页面主入口文件
- 使用命令行批量创建目录文件(包含各类文件ts、tsx、less等)
- 文件暂不生成代码
- 配置页面的路由信息
- 生成类型文件,确保所有类型定义清晰
- 生成constants文件,定义所需常量
- 生成services文件,实现数据服务
- 生成所需的 hooks 文件
- 生成页面(必需)和components(如需)文件 完成UI层
## 强制行为
- 使用pro-table进行开发,包括筛选表单,符合最佳实践
- 筛选项和列表项配置创建useColumns.tsx声明,筛选项(需标记hideInTable)、展示项(需标记hideInSearch)
- 左侧字段按需固定,操作项右侧固定,最多显示两个,超出折叠显示
- 文本左对齐,数字右对齐,状态枚举居中显示
- 分页设置支持10、20、50、100
- .....
# 禁止行为
.....
.cursor/rules/
├── ai.mdc # AI协作总纲
├── basic/ # 基础规范目录
│ ├── basic.mdc
│ ├── code-quality.mdc
│ ├── ts.mdc
│ ├── style.mdc
│ ├── comment.mdc
│ ├── code-names.mdc
│ └── lint.mdc
├── modules/ # 模块规范目录
│ ├── components.mdc
│ ├── pages.mdc
│ ├── hooks.mdc
│ ├── service.mdc
│ ├── constants.mdc
│ ├── utils.mdc
│ └── route.mdc
└── workflow/ # 流程规范目录
├── curd-page.mdc
├── log.mdc
└── send-buried.mdc
└── ......
# AI协作执行规则
## 规则分类
- basic/下的通用规则: 必须调用,通用基础规范
- modules/下的模块规则: 按需调用,架构分层规范
- workflow/下的流程规则: 按需调用,业务场景规范
## 执行流程
1. 识别场景 → 调用相关规则
2. 读取示例代码 → 作为生成参考
3. 执行强制/禁止行为 → 确保代码质量
4. 应用设计原则 → 组件化、单一职责、分层设计
## 质量保障
所有规则必须100%执行,重点关注强制行为和禁止行为
试点阶段 | 验证规范有效性 | 选择1-2个项目试点,收集反馈 |
优化阶段 | 完善规范内容 | 根据试点反馈优化规范,开发工具 |
标准化阶段 | 形成团队标准 | 制定团队级标准,持续改进机制 |
AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。
鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑