405 lines
8.7 KiB
Plaintext
405 lines
8.7 KiB
Plaintext
---
|
||
description: "全局规则"
|
||
globs: ["**/*"]
|
||
alwaysApply: true
|
||
---
|
||
|
||
# AI助手开发工作流程指南 🤖
|
||
|
||
## 快速开始
|
||
|
||
当你需要我帮你开发新功能时,请按照以下格式提供信息:
|
||
|
||
```
|
||
功能:[功能名称]
|
||
模块:[模块名,如 user、product]
|
||
接口:[接口列表,如 创建用户、查询用户列表]
|
||
认证:[是否需要JWT认证]
|
||
特殊要求:[任何特殊要求]
|
||
```
|
||
|
||
## 我的工作流程
|
||
|
||
### 1. 分析阶段(30秒内)
|
||
- 理解功能需求
|
||
- 分析现有代码结构
|
||
- 确定模块依赖关系
|
||
- 制定开发计划
|
||
|
||
### 2. 设计阶段(按优先级)
|
||
1. **Schema设计**(最优先)
|
||
- 定义请求参数Schema
|
||
- 定义响应数据Schema
|
||
- 导出TypeScript类型
|
||
|
||
2. **Response格式设计**
|
||
- 成功响应格式
|
||
- 错误响应格式
|
||
- 组合响应定义
|
||
|
||
3. **Service层设计**
|
||
- 业务逻辑接口
|
||
- 数据访问逻辑
|
||
- 错误处理逻辑
|
||
|
||
4. **Controller层设计**
|
||
- 路由定义
|
||
- 参数验证
|
||
- 错误处理
|
||
|
||
5. **测试用例设计**
|
||
- 正常流程测试
|
||
- 异常流程测试
|
||
- 边界条件测试
|
||
|
||
### 3. 实现阶段(批量操作)
|
||
|
||
我会同时创建/修改多个文件:
|
||
|
||
```typescript
|
||
// 1. 同时读取相关文件了解现状
|
||
// 2. 并行创建所有必需的文件
|
||
// 3. 更新路由和导出文件
|
||
// 4. 验证代码完整性
|
||
```
|
||
|
||
### 4. 验证阶段
|
||
|
||
- 检查类型安全性
|
||
- 确认错误处理完整性
|
||
- 验证响应格式一致性
|
||
- 检查测试覆盖率
|
||
|
||
## 交互模式
|
||
|
||
### 快速开发模式 ⚡
|
||
适用于:标准CRUD操作、常见业务场景
|
||
|
||
**你只需要说:**
|
||
```
|
||
"帮我实现用户模块的CRUD接口"
|
||
"添加产品管理功能"
|
||
"实现订单状态查询"
|
||
```
|
||
|
||
**AI会自动:**
|
||
- 按照规范创建完整的5个文件
|
||
- 集成到现有路由系统
|
||
- 提供完整的类型安全
|
||
- 包含基础测试用例
|
||
|
||
### 定制开发模式 🔧
|
||
适用于:复杂业务逻辑、特殊需求
|
||
|
||
**你需要提供:**
|
||
- 详细的业务规则
|
||
- 特殊的验证要求
|
||
- 复杂的数据关联
|
||
- 性能要求
|
||
|
||
**AI会:**
|
||
- 详细分析需求
|
||
- 提供设计方案
|
||
- 征求确认后实现
|
||
- 优化性能和安全性
|
||
|
||
## 我擅长处理的场景
|
||
|
||
### ✅ 高效处理
|
||
- 标准REST API开发
|
||
- CRUD操作实现
|
||
- 数据验证和类型安全
|
||
- 错误处理和响应格式
|
||
- JWT认证集成
|
||
- 数据库操作(Drizzle ORM)
|
||
- Redis缓存集成
|
||
- 测试用例编写
|
||
- API文档生成
|
||
|
||
### ⚡ 批量操作
|
||
- 多文件同时创建/修改
|
||
- 路由批量注册
|
||
- 类型定义批量导出
|
||
- 测试用例批量生成
|
||
|
||
### 🔍 代码分析
|
||
- 现有代码结构理解
|
||
- 依赖关系分析
|
||
- 潜在问题识别
|
||
- 优化建议提供
|
||
|
||
## 沟通最佳实践
|
||
|
||
### 清晰描述需求
|
||
```
|
||
❌ "做一个用户功能"
|
||
✅ "实现用户注册、登录、个人信息查询和修改功能,需要JWT认证"
|
||
|
||
❌ "这个接口有问题"
|
||
✅ "用户登录接口返回401错误,但是用户名密码正确"
|
||
```
|
||
|
||
### 提供上下文信息
|
||
```
|
||
✅ "在现有的用户模块基础上添加头像上传功能"
|
||
✅ "这个接口需要管理员权限才能访问"
|
||
✅ "数据需要缓存到Redis,缓存时间1小时"
|
||
```
|
||
|
||
### 明确期望结果
|
||
```
|
||
✅ "创建完整的用户CRUD接口,包含测试"
|
||
✅ "只需要修改现有的查询接口,添加分页功能"
|
||
✅ "优化这个接口的性能,响应时间控制在100ms内"
|
||
```
|
||
|
||
## 错误处理和调试
|
||
|
||
### 当代码出现问题时
|
||
|
||
1. **我会主动分析**
|
||
- 检查类型错误
|
||
- 验证语法正确性
|
||
- 确认导入导出关系
|
||
|
||
2. **提供修复方案**
|
||
- 直接修复简单问题
|
||
- 解释复杂问题的原因
|
||
- 提供多种解决方案
|
||
|
||
3. **验证修复结果**
|
||
- 确保修复后代码可运行
|
||
- 检查是否引入新问题
|
||
- 验证功能完整性
|
||
|
||
### 性能优化建议
|
||
|
||
我会在适当时候提供:
|
||
- 数据库查询优化
|
||
- 缓存策略建议
|
||
- 并发处理优化
|
||
- 内存使用优化
|
||
|
||
## 质量保证
|
||
|
||
### 代码质量检查
|
||
- [ ] 类型安全性
|
||
- [ ] 错误处理完整性
|
||
- [ ] 响应格式一致性
|
||
- [ ] 命名规范符合标准
|
||
- [ ] 注释文档完整
|
||
|
||
### 功能完整性检查
|
||
- [ ] Schema定义完整
|
||
- [ ] Response格式正确
|
||
- [ ] Service逻辑完整
|
||
- [ ] Controller路由正确
|
||
- [ ] 测试用例覆盖
|
||
|
||
### 安全性检查
|
||
- [ ] 参数验证到位
|
||
- [ ] 认证授权正确
|
||
- [ ] 敏感信息保护
|
||
- [ ] SQL注入防护
|
||
- [ ] XSS攻击防护
|
||
|
||
记住:我的目标是让你专注于业务逻辑,而我来确保代码的规范性、安全性和可维护性! 🎯 # AI助手开发工作流程指南 🤖
|
||
|
||
## 快速开始
|
||
|
||
当你需要我帮你开发新功能时,请按照以下格式提供信息:
|
||
|
||
```
|
||
功能:[功能名称]
|
||
模块:[模块名,如 user、product]
|
||
接口:[接口列表,如 创建用户、查询用户列表]
|
||
认证:[是否需要JWT认证]
|
||
特殊要求:[任何特殊要求]
|
||
```
|
||
|
||
## 我的工作流程
|
||
|
||
### 1. 分析阶段(30秒内)
|
||
- 理解功能需求
|
||
- 分析现有代码结构
|
||
- 确定模块依赖关系
|
||
- 制定开发计划
|
||
|
||
### 2. 设计阶段(按优先级)
|
||
1. **Schema设计**(最优先)
|
||
- 定义请求参数Schema
|
||
- 定义响应数据Schema
|
||
- 导出TypeScript类型
|
||
|
||
2. **Response格式设计**
|
||
- 成功响应格式
|
||
- 错误响应格式
|
||
- 组合响应定义
|
||
|
||
3. **Service层设计**
|
||
- 业务逻辑接口
|
||
- 数据访问逻辑
|
||
- 错误处理逻辑
|
||
|
||
4. **Controller层设计**
|
||
- 路由定义
|
||
- 参数验证
|
||
- 错误处理
|
||
|
||
5. **测试用例设计**
|
||
- 正常流程测试
|
||
- 异常流程测试
|
||
- 边界条件测试
|
||
|
||
### 3. 实现阶段(批量操作)
|
||
|
||
我会同时创建/修改多个文件:
|
||
|
||
```typescript
|
||
// 1. 同时读取相关文件了解现状
|
||
// 2. 并行创建所有必需的文件
|
||
// 3. 更新路由和导出文件
|
||
// 4. 验证代码完整性
|
||
```
|
||
|
||
### 4. 验证阶段
|
||
|
||
- 检查类型安全性
|
||
- 确认错误处理完整性
|
||
- 验证响应格式一致性
|
||
- 检查测试覆盖率
|
||
|
||
## 交互模式
|
||
|
||
### 快速开发模式 ⚡
|
||
适用于:标准CRUD操作、常见业务场景
|
||
|
||
**你只需要说:**
|
||
```
|
||
"帮我实现用户模块的CRUD接口"
|
||
"添加产品管理功能"
|
||
"实现订单状态查询"
|
||
```
|
||
|
||
**AI会自动:**
|
||
- 按照规范创建完整的5个文件
|
||
- 集成到现有路由系统
|
||
- 提供完整的类型安全
|
||
- 包含基础测试用例
|
||
|
||
### 定制开发模式 🔧
|
||
适用于:复杂业务逻辑、特殊需求
|
||
|
||
**你需要提供:**
|
||
- 详细的业务规则
|
||
- 特殊的验证要求
|
||
- 复杂的数据关联
|
||
- 性能要求
|
||
|
||
**AI会:**
|
||
- 详细分析需求
|
||
- 提供设计方案
|
||
- 征求确认后实现
|
||
- 优化性能和安全性
|
||
|
||
## 我擅长处理的场景
|
||
|
||
### ✅ 高效处理
|
||
- 标准REST API开发
|
||
- CRUD操作实现
|
||
- 数据验证和类型安全
|
||
- 错误处理和响应格式
|
||
- JWT认证集成
|
||
- 数据库操作(Drizzle ORM)
|
||
- Redis缓存集成
|
||
- 测试用例编写
|
||
- API文档生成
|
||
|
||
### ⚡ 批量操作
|
||
- 多文件同时创建/修改
|
||
- 路由批量注册
|
||
- 类型定义批量导出
|
||
- 测试用例批量生成
|
||
|
||
### 🔍 代码分析
|
||
- 现有代码结构理解
|
||
- 依赖关系分析
|
||
- 潜在问题识别
|
||
- 优化建议提供
|
||
|
||
## 沟通最佳实践
|
||
|
||
### 清晰描述需求
|
||
```
|
||
❌ "做一个用户功能"
|
||
✅ "实现用户注册、登录、个人信息查询和修改功能,需要JWT认证"
|
||
|
||
❌ "这个接口有问题"
|
||
✅ "用户登录接口返回401错误,但是用户名密码正确"
|
||
```
|
||
|
||
### 提供上下文信息
|
||
```
|
||
✅ "在现有的用户模块基础上添加头像上传功能"
|
||
✅ "这个接口需要管理员权限才能访问"
|
||
✅ "数据需要缓存到Redis,缓存时间1小时"
|
||
```
|
||
|
||
### 明确期望结果
|
||
```
|
||
✅ "创建完整的用户CRUD接口,包含测试"
|
||
✅ "只需要修改现有的查询接口,添加分页功能"
|
||
✅ "优化这个接口的性能,响应时间控制在100ms内"
|
||
```
|
||
|
||
## 错误处理和调试
|
||
|
||
### 当代码出现问题时
|
||
|
||
1. **我会主动分析**
|
||
- 检查类型错误
|
||
- 验证语法正确性
|
||
- 确认导入导出关系
|
||
|
||
2. **提供修复方案**
|
||
- 直接修复简单问题
|
||
- 解释复杂问题的原因
|
||
- 提供多种解决方案
|
||
|
||
3. **验证修复结果**
|
||
- 确保修复后代码可运行
|
||
- 检查是否引入新问题
|
||
- 验证功能完整性
|
||
|
||
### 性能优化建议
|
||
|
||
我会在适当时候提供:
|
||
- 数据库查询优化
|
||
- 缓存策略建议
|
||
- 并发处理优化
|
||
- 内存使用优化
|
||
|
||
## 质量保证
|
||
|
||
### 代码质量检查
|
||
- [ ] 类型安全性
|
||
- [ ] 错误处理完整性
|
||
- [ ] 响应格式一致性
|
||
- [ ] 命名规范符合标准
|
||
- [ ] 注释文档完整
|
||
|
||
### 功能完整性检查
|
||
- [ ] Schema定义完整
|
||
- [ ] Response格式正确
|
||
- [ ] Service逻辑完整
|
||
- [ ] Controller路由正确
|
||
- [ ] 测试用例覆盖
|
||
|
||
### 安全性检查
|
||
- [ ] 参数验证到位
|
||
- [ ] 认证授权正确
|
||
- [ ] 敏感信息保护
|
||
- [ ] SQL注入防护
|
||
- [ ] XSS攻击防护
|
||
|
||
记住:我的目标是让你专注于业务逻辑,而我来确保代码的规范性、安全性和可维护性! 🎯 |