Cursor AI 深度使用指南:从小白到高手的实战技巧

Cursor AI 深度使用指南:从小白到高手的实战技巧

Cursor 是当前最受开发者欢迎的 AI 编程 IDE 之一。相比传统 IDE,它将 AI 深度融入编辑流程,不只是补全代码,而是能理解整个项目的上下文,主动帮你重构、调试、写测试。

本文从基础到高级,完整覆盖 Cursor 的核心用法,包括自定义规则、项目级 AI 协作、常用快捷键等实战技巧。

一、Cursor 的三种核心模式

Cursor 提供了三种主要的 AI 交互模式,理解它们的差异是高效使用的第一步。

1.1 Ctrl/Cmd + K:内联编辑

这是 Cursor 最核心的功能。按下快捷键后,在输入框中描述你想做什么,AI 会在当前光标位置直接修改代码。你可以选中一段代码后提问,比如”把这段逻辑改成异步的”,AI 会在原地更新。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# 原始代码(同步方式)
def fetch_user_data(user_id):
response = requests.get(f"https://api.example.com/users/{user_id}")
return response.json()

# 用 Ctrl+K 描述:"改成异步函数,处理可能的网络错误"
import asyncio
import aiohttp

async def fetch_user_data(user_id: int) -> dict:
try:
async with aiohttp.ClientSession() as session:
async with session.get(f"https://api.example.com/users/{user_id}") as response:
return await response.json()
except aiohttp.ClientError as e:
print(f"请求失败: {e}")
return {}

1.2 Ctrl/Cmd + L:对话模式

这是 AI 聊天窗口。你可以选中多个文件或文件夹,让 AI 分析整个代码库。比如”解释一下这个项目的架构”,或者”帮我找出所有可能导致内存泄漏的地方”。

1
2
# 在 Cursor 对话中,你可以这样用:
"分析 src/ 目录下所有数据库连接相关的代码,找出连接池配置是否合理"

1.3 Tab:智能补全

Cursor 的 Tab 键不是普通的代码补全。它会根据上下文(当前文件、相关文件、最近修改)预测你要写的下一段代码。对于重复性的模板代码,按 Tab 接受建议比手写快得多。

二、自定义 Rules:让 AI 懂你的代码风格

Cursor 的 .cursor/rules/ 目录(也叫 .cursorrules)是控制 AI 行为的利器。你可以在里面定义项目的代码规范、技术栈要求、甚至团队约定。

2.1 基础规则文件

在项目根目录创建 .cursorrules

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# .cursorrules

## 技术栈
- 语言:Python 3.11+
- Web 框架:FastAPI
- ORM:SQLAlchemy
- 数据库:PostgreSQL

## 代码规范
- 使用类型提示(Type Hints)标注所有函数参数和返回值
- 异步函数统一使用 async/await,避免混用同步异步
- 错误处理:优先使用自定义异常类,不要 bare except
- 日志:使用 structlog,统一日志格式

## API 设计原则
- RESTful URL 使用小写+下划线
- 响应格式:{"code": 0, "data": ..., "message": "success"}
- 所有 API 都需要添加 OpenAPI 文档注释

## 测试要求
- 单元测试覆盖率 > 80%
- 使用 pytest + pytest-asyncio
- Mock 所有外部 API 调用

2.2 多规则文件

当项目变大,可以拆成多个规则文件,放在 .cursor/rules/ 目录下:

1
2
3
4
5
.cursor/rules/
├── backend.md # 后端代码规范
├── frontend.md # 前端代码规范
├── testing.md # 测试规范
└── security.md # 安全规范

Cursor 会自动读取所有规则文件,AI 在生成代码时会严格遵守。

三、Composer:多文件并行编辑

Composer 是 Cursor 的高级功能,特别适合大型重构。按 Ctrl/Cmd + Shift + V 打开 Composer 面板。

3.1 批量修改多个文件

在 Composer 中,你可以描述一个跨文件的修改任务:

1
2
"将所有使用 requests 库的地方迁移到 httpx,保持相同的函数签名,
但改用异步方式处理"

AI 会分析项目中的所有相关文件,生成修改计划,确认后一次性应用所有变更。

3.2 上下文窗口管理

Composer 支持上传整个文件夹作为上下文:

1
2
3
4
5
# 通过命令行快速打开当前项目
cursor --folder . --context-size large

# 限制上下文文件类型
cursor --folder . --include "*.py,*.yaml,*.md"

四、项目级 AI 协作实战

4.1 快速搭建新项目

用 Cursor 初始化一个 FastAPI 项目:

1
2
3
4
5
6
7
8
提示词:"用 FastAPI 搭建一个 Todo API,包含以下功能:
1. CRUD 操作(增删改查)
2. PostgreSQL 数据库
3. SQLAlchemy ORM
4. JWT 认证
5. Docker Compose 本地开发环境
6. pytest 单元测试
目录结构要清晰,按功能模块分层"

Cursor 会生成完整的项目骨架,包括目录结构、配置文件、Docker 设置。

4.2 代码审查

1
2
3
4
5
6
7
提示词:"审查 src/api/ 目录下的所有 API 路由代码,
从以下维度评分并给出具体改进建议:
- 错误处理是否完善
- 输入验证是否严格
- 性能隐患(如 N+1 查询)
- 安全隐患(如 SQL 注入、权限校验)
- RESTful 规范遵守程度"

4.3 自动化测试生成

1
2
3
提示词:"为 src/services/user_service.py 中的所有公开方法
生成 pytest 单元测试,覆盖正常路径、边界条件、异常情况。
使用 pytest-mock mock 外部依赖,不连接真实数据库"

五、常用快捷键速查

操作 macOS Windows/Linux
内联编辑 Cmd+K Ctrl+K
AI 对话 Cmd+L Ctrl+L
Composer Cmd+Shift+V Ctrl+Shift+V
接受补全 Tab Tab
拒绝补全 Esc Esc
打开设置 Cmd+, Ctrl+,
全局搜索 Cmd+P Ctrl+P

六、进阶:Cursor + MCP 扩展

Cursor 支持 MCP(Model Context Protocol)扩展,可以连接外部工具和数据源:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
// .cursor/mcp.json
{
"mcpServers": {
"filesystem": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", "/path/to/workspace"]
},
"github": {
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-github"],
"env": {
"GITHUB_PERSONAL_ACCESS_TOKEN": "your-token-here"
}
}
}
}

配置好后,你可以在 Cursor 对话中直接问:”这个 PR 改了什么内容?”或”查看 /tmp/docs 下的所有文档”。

总结

Cursor 的精髓在于”让 AI 真正理解你的项目”。通过合理配置 Rules、自定义上下文、善用 Composer,你可以把 Cursor 从一个”智能补全工具”升级成真正的 AI 编程搭档。

关键建议:不要只用来写新代码,要多用它做代码审查、重构、测试生成——这些场景才是 AI 价值最大化的方向。