بنقرة واحدة
code-review
基于 CodeSpirit 项目规范进行系统化代码审查。检查安全、数据库、异步编程、多语言、DTO、控制器、服务类等规范。当用户需要审查代码、检查代码质量、或准备提交代码时使用。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
القائمة
基于 CodeSpirit 项目规范进行系统化代码审查。检查安全、数据库、异步编程、多语言、DTO、控制器、服务类等规范。当用户需要审查代码、检查代码质量、或准备提交代码时使用。
التثبيت باستخدام Codex أو Claude انسخ هذا Prompt والصقه في Codex أو Claude أو مساعد آخر ليراجع صفحة Skill ويثبّتها لك.
استنادا إلى تصنيف SOC المهني
BMAD AI 工作流与 CodeSpirit 项目规范的集成技能。引导用户使用 BMAD 工作流,确保 BMAD 生成的文档和代码符合 CodeSpirit 规范。当用户提到 BMAD 工作流、需要完整开发流程管理、或执行 BMAD 命令时使用。
提交前综合验证审阅。执行静态代码审查、运行时错误检查和功能验证。包括代码质量检查、Aspire应用日志分析、租户后台登录测试。当用户准备提交代码、需要全面验证、或要求提交前审查时使用。
指导在 CodeSpirit 项目中集成 AI 功能的完整开发流程。包括 AI 表单填充、AI 长任务处理、LLM 集成和提示词工程。当用户需要添加 AI 功能、集成 LLM、或开发 AI 驱动的业务功能时使用。
指导从 Entity 到 Controller 的完整 CRUD 功能开发流程。包括实体创建、DTO设计、服务实现、控制器开发、数据库配置和迁移。当用户需要开发新的 CRUD 功能、创建 API 接口、或添加新的业务模块时使用。
指导同时为 MySQL 和 SQL Server 创建数据库迁移。使用数据库特定的 DbContext,处理数据库差异,配置雪花ID。当用户需要创建迁移、修改实体、或遇到迁移错误时使用。
| name | code-review |
| description | 基于 CodeSpirit 项目规范进行系统化代码审查。检查安全、数据库、异步编程、多语言、DTO、控制器、服务类等规范。当用户需要审查代码、检查代码质量、或准备提交代码时使用。 |
CodeSpirit 代码审查采用三级优先级体系:
明确需要审查的文件列表(通过 git status、文件列表等方式)。
按优先级依次检查,发现严重问题立即标记:
安全与数据保护 → 📖 详细规范
[JsonIgnore])数据库与迁移 → 📖 详细规范
ValueGeneratedNever() 配置IMultiTenant 接口异步编程 → 📖 详细规范
Task.Result 或 Task.Wait() 阻塞调用反射调用(新增)
依赖注入 → 📖 详细规范
包管理 → 📖 详细规范
多语言国际化 → 📖 详细规范
_localizer)[Display] 特性DTO 规范 → 📖 详细规范
[Required]、[StringLength])QueryDtoBase控制器规范 → 📖 详细规范
[DisplayName] 特性ActionResult<ApiResponse<T>>服务类规范 → 📖 详细规范
BaseCRUDService 或实现 IBaseCRUDServiceEF Core 查询优化
AsNoTracking()Include())使用 report-template.md 生成结构化审查报告:
CodeSpirit 采用自动权限生成,大部分情况无需配置 [Permission] 特性。
[RequirePermission](框架自动生成)[Permission] 配置[AllowAnonymous]示例:
// ✅ 自动生成权限(无需配置)
[HttpPost]
[DisplayName("创建用户")]
public async Task<ActionResult> Create(CreateDto dto) { }
// ✅ 需要权限继承时才配置
[HttpPut("{id}")]
[Permission(AllowInheritedPermissions = new[] { "users_manage" })]
[DisplayName("更新用户")]
public async Task<ActionResult> Update(long id, UpdateDto dto) { }
// ❌ 错误
method?.Invoke(null, new object[] { services, configuration });
// ✅ 正确:使用回调委托
this.ConfigureStandardInfrastructureServices(services, configuration, (s, c) =>
{
s.AddCodeSpiritMultiTenant(c);
});
// ❌ 错误
return SuccessResponse("操作成功!");
// ✅ 正确
return SuccessResponse(message: _localizer["Common.Save"].Value);
// ❌ 错误
var result = _repository.GetListAsync().Result;
// ✅ 正确
var result = await _repository.GetListAsync();
// ❌ 错误
public class Question : AuditableEntityBase<long> { }
// ✅ 正确
public class Question : AuditableEntityBase<long>, IMultiTenant
{
public string TenantId { get; set; } = string.Empty;
}
Task.Result、Task.Wait()、method.Invoke、硬编码字符串