使用 Cursor 进行 AI 辅助开发,用于配置或约束 Cursor 遵循的各种规则的文件及位置如下

src/
├── AGENTS.md             # 项目规范
├── .cursor/
│   ├── mcp.json          # mcp 配置文件
│   └── rules/
│       ├── code.mdc      # 编码规则
│       └── workflow.mdc  # 工作流程规则
├── docs_ai/
│   ├── summaries/        # AI开发计划文档
│   └── requirements/     # AI开发需求文档
├── docs/                 # 项目文档
├── finance/              # 财务系统功能文件,所有二次开发的功能文件目录
│   ├── xxx.php           # xxx 功能文件
│   └── xxx_json.php      # 对应 xxx 功能文件的 API 接口
└── config/               # 数据库等配置参数

Cursor 规则文件优先级

Cursor按以下优先级读取规则:

  1. .cursor/rules/*.mdc - 最高优先级(项目特定规则),即 Cursor 编辑器菜单下的 Settings - Rules & Memories - Project Rules规则
  2. .cursorrules - 次优先级(项目根目录规则)
  3. 全局设置 - 最低优先级,即 Cursor 编辑器菜单下的 Settings - Rules & Memories - User Rules 规则。注:对话回复没有权限获取此规则内容。

也可以直接在对话进行临时约束。

配置好规则文件后,也可以直接在对话说,同步最新的规则文件并严格遵循,AI 会输出在项目中当前遵循的编码规则,可以对着确认一遍。

Cursor 约束相关文件

目前在用的约束文件

  1. 项目规范 AGENTS.md

     # 项目开发规范
    
    
     ## 项目信息
     - **项目名称**:FinanceProject
     - **项目类型**:中小微企业代账系统
    
    
     ## 文档结构
     ```bash
     src/
     ├── AGENTS.md             # 项目规范
     ├── .cursor/
     │   ├── mcp.json          # mcp 配置文件
     │   └── rules/
     │       ├── code.mdc      # 编码规则
     │       └── workflow.mdc  # 工作流程规则
     ├── docs_ai/
     │   ├── summaries/        # AI开发计划文档
     │   └── requirements/     # AI开发需求文档
     ├── docs/                 # 项目文档
     ├── finance/              # 财务系统功能文件,所有二次开发的功能文件目录
     │   ├── xxx.php           # xxx 功能文件
     │   └── xxx_json.php      # 对应 xxx 功能文件的 API 接口
     └── config/               # 数据库等配置参数
     ```
    
    
     ## 技术栈
     - 前端:Vue `3.5.2` + Element Plus `2.11.2` + Axios `1.11.0` + icons-vue `2.3.2`
     - 后端:兼容 PHP `5.3`及 PHP `7.4` + PDO MySQL
     - PHP 文件禁止使用操作符 `??`
     - PHP 文件必须使用 `array()` 代替短数组 `[]`
     - 数据库:MySQL `5.7.26`
     - 所有 JS 和 CSS 引入方式必须与现有页面保持一致(参考 `finance/system_prompt.php`)
     - 数据返回格式为 JSON,接口规范与 `finance/system_prompt_json.php` 保持一致
    
    
     ## UI 要求
     - 使用 Element Plus 组件
     - 列表用 el-table,新增/编辑用 el-drawer,详情用 el-dialog
     - 支持响应式布局,避免横向滚动条
     - 状态用 el-tag 显示,时间格式 `YYYY-MM-DD HH:mm:ss`
    
    
     ## 开发规范
     - 前端代码导入 `Vue`、`Element Plus` 等前端框架,参考 `finance/system_prompt.php`,保持一致的结构和引用方式
     - 后端代码数据库连接和接口输出,参考 `finance/system_prompt_json.php`,保持一致的接口风格
     - 所有 SQL 必须考虑 **SQL 注入防护**(使用 `mysqli_real_escape_string` 或 `PDO 参数绑定`)
     - 所有接口返回 JSON 数据,需包含 `success` 和 `msg` 字段
     - 前端 axios 请求需处理 `success=false` 的情况,并在页面上提示 `msg` 内容
     - 所有 Element 标签使用闭合写法,如 `<el-option></el-option>`,禁止直接 `<el-option />`
     - 列表 Element 表格,如果单元格内容为空,默认显示 `-`
     - API 接口规范,所有 API 返回格式示例:
    
         - **成功接口示例**
         ```json
         {
             "code": 0,
             "success": true,
             "msg": "操作成功",
             "data": { ... }
         }
         ```
         - **失败接口示例**
         ```json
         {
             "code": 1,
             "success": false,
             "msg": "用户名不能为空",
         }
     ```
    
    
     ## 本地测试
     1. **使用域名及账号密码**
    
     | 环境名称 | 测试环境值 | 备注描述 |
     |------|----------|----------|
     | 测试域名/地址 | http://192.168.81.129:58001 | 
     | 登录用户名 | admin |  |
     | 登录密码 | 123456 |  |
    
     2. **接口测试方法**
    
     比如测试项目文件 `finance/system_prompt_json.php`,使用`域名 + 文件`测试:
    
     ```bash
     curl "http://192.168.81.129:58001/finance/system_prompt_json.php?ajax=1&action=list"
     ```
    
    
     ## 数据字典
    
     **项目数据字典文件`sql/finance.sql`,获取具体表结构查看文件对应建表语句查询**。
    
    
     ## 前端模板
    
     保留 Element Plus 和 Vue 导入的方法,实现功能,最终输出一个可运行的单个前端文件。
    
     ```php
    
     ```
    
     ## 后端模板
     ```php
    
     ```
  2. 工作流程规则 .cursor/rules/workflow.mdc

     ---
     alwaysApply: true
     ---
    
    
     # 项目开发规则
    
    
     ## 角色
     你是 Cursor IDE 的 AI 编程助手,遵循核心工作流(研究->构思->计划->执行->评审)用中文协助用户,面向专业程序员,交互应简洁专业,避免不必要解释。
    
    
     ## 项目信息
     - **项目名称**:FinanceProject
     - **项目类型**:中小微企业代账系统
     - **详细规范**:参考 `AGENTS.md` 文件
    
    
     ## 沟通守则
     1. 始终使用简体中文回复 `Always respond in Chinese-simplified`。
     2. 响应以模式标签 `[模式:X]` 开始,初始为 `[模式:研究]`。
     3. 核心工作流严格按 `研究->构思->计划->执行->评审` 顺序流转,用户可指令跳转。
    
    
     ## 核心工作流
     1. [模式:研究] - 分析需求,理解现有代码
     2. [模式:构思] - 提供至少两种可行方案及评估(例如:`方案1:描述`)
     3. [模式:计划] - 创建文档框架,制定详细实施计划将选定方案细化为详尽、有序、可执行的步骤清单(含原子操作:文件、函数/类、逻辑概要;预期结果;新库用 `Context7` 查询)。不写完整代码。
     4. [模式:执行] - 必须用户批准方可执行。严格按计划编码执行。计划简要(含上下文和计划)存入`./docs_ai/summaries/YYYYMMDD_任务名_summary.md`。关键步骤后及完成时反馈。
     5. [模式:评审] - 对照计划评估执行结果,报告问题与建议。完善文档,确保完整性。
    
    
     ## 快速模式
     [模式:快速]:跳过核心工作流,快速响应。
    
    
     ## 文档要求
     * **任务计划**:计划阶段必须将详细计划存入 `./docs_ai/summaries/YYYYMMDD_任务名_summary.md`
     * **文档结构**:包含任务背景、实施计划、代码变更、数据表变更SQL、预期结果、执行状态
     * **状态跟踪**:使用复选框跟踪执行进度
     * **版本控制**:文档与代码同步提交
    
    
     ## 技术规范
     - **编码规范**:参考 `.cursor/rules/code.mdc`
     - **项目规范**:参考 `AGENTS.md`
     - **工作流程**:严格遵循 `研究->构思->计划->执行->评审` 流程
  3. 编码规则 .cursor/rules/code.mdc

     ---
     alwaysApply: true
     ---
    
    
     rules:
     - description: PHP 5.3–7.4 兼容性规则
         language: php
         patterns:
         - "*.php"
         guidelines:
         - 所有 PHP 代码必须兼容 PHP 5.3 和 PHP 7.4。
         - 使用 `array()` 代替短数组 `[]`。
         - 禁止使用操作符 `??`
         - 禁止使用类型声明、trait、命名空间、match。
         - SQL 必须使用 PDO 参数绑定防注入。
    
     - description: Vue 3.5 + Element Plus 前端规范
         language: javascript
         patterns:
         - "*.vue"
         - "*.js"
         guidelines:
         - 所有组件基于 Vue 3.5.2 + Element Plus 2.11.2。
         - Axios 请求需处理 success=false。
         - Element 标签使用闭合写法。
         - 列表使用 el-table,新增/编辑使用 el-drawer,详情使用 el-dialog。
  4. MCP 配置文件 .cursor/mcp.json

{
  "mcpServers": {
    "Context7": {
      "url": "https://mcp.context7.com/mcp",
      "headers": {}
    },
    "interactive_feedback": {
      "command": "uvx",
      "args": ["mcp-feedback-enhanced@latest"],
      "timeout": 600,
      "env": {
        "MCP_DESKTOP_MODE": "true",
        "MCP_WEB_HOST": "127.0.0.1",
        "MCP_WEB_PORT": "8765",
        "MCP_DEBUG": "false"
      },
      "autoApprove": ["interactive_feedback"]
    }
  }
}