Cursor精准上下文指定
一:Codebase Indexing 代码库索引
识别项目中目录结构和文件,有些文件是没有意义的是不需要识别的,比如前段的node_modules、dist和后端的target等,可以在.cursorignore文件将需要忽略的配置上即可。
二:Rules规则
MDC
Markdown with Cursor:专门为项目规则设计的一种轻量级语法
前置元数据Frontmatter
用 — 包括的yaml格式配置
定义规则的基本属性(如作用范围、优先级)
2. 规则内容(Markdown正文)
用markdown语法书写具体规则
一般使用标题#和列表的形式分表描述。
定义通用的规则和要求,如命名风格。
项目规则(优先)
.cursor/rules/xxx.mdc
可以添加多个
---
alwaysApply: true
description:"Typescript 项目编码规范”
globs:"src/**/*.ts]
priority:1000
---# 一、基础规范
1. 所有文件必须使用 UTF-8 编码
2. 统一使用2空格缩进# 二、类型约束
1. 禁止使用隐式 any 类型- 示例:`const num:number =123`(显式)- 禁止:'const num =123(隐式)
2. 接口命名必须以“工、开头(如“interface Iuser')# 三、项目约束
- 所有 HTTP 请求必须通过 @fi1e src/uti1s/request.ts 封装的工具
- 状志管理必须使用 Redux Toolkit,禁止直接修改 state
用户规则
~/.cursor/rules
三:@符号
在聊天框中可以通过空格@类型,来提供更详细的信息。
- @Files-引用项目中的特定文件,如 @UserController.java
- @Code. 引用代码库中的特定代码片段或符号,如@addUser
- @Docs- 访问文档和指南,需要先配置文档,然后在文档下搜索内容(知识库),一般是官方的标准权威文档
- @Lint Errors-引用 lint 错误(仅限Chat),也可以先在终端选中报错信息Ctrl+L,然后输入解决允许标错,也可以不用选中错误直接使用@Lint Errors 解决报错,指定特定错误效率更高些,如果不指定也能解决错误,但是会分析很多效率低。
- @Web· 参考外部 Web 资源和文档,从网站上进行搜素
- @Folders-引用整个文件史以获得更广泛的上下文
- @Git- 访问 git 历史记录和更改
- @Past Chats- 使用汇总的 Composer 会话
- @Cursor Rules-使用光标规则