用途:在创建或审查 NestJS HTTP API 时提供结构化规范,聚焦 modules、依赖注入、控制器、DTO 校验、鉴权、拦截器、异常过滤与 OpenAPI 文档。
主要能力:按领域划分 module(如 orders 下含 module、controller、service、dto、repository);controller 保持轻薄,业务规则放在 service;全局启用 ValidationPipe({ whitelist: true, forbidNonWhitelisted: true, transform: true });输入输出使用 DTO,不直接返回 Prisma/TypeORM 实体;区分认证与授权,使用 JwtAuthGuard 加服务层所有权校验;异常过滤器返回稳定 JSON(如 { statusCode, code, message });启动时用 Joi/Zod 校验配置,密钥仅放环境变量;调用 enableShutdownHooks() 并在 onModuleDestroy 关闭 Prisma/Redis;用 @nestjs/swagger 与 DTO 对齐。
使用方式:按领域组织 src 目录,main.ts 配置全局管道、CORS 与 shutdown hooks;显式声明 imports,避免链式 forwardRef;provider 默认单例,仅请求级状态用 REQUEST 作用域;仓库放在领域 module 内;用 pipes 做解析校验,interceptors 做日志、映射、超时与 x-request-id 关联;测试用 fake 仓库做单元测试,用 INestApplication + supertest 做 e2e。
适用场景:构建或评审 NestJS HTTP API 的模块划分、校验、鉴权、错误契约与文档。
限制:不涉及 Kafka/NATS 等微服务传输层(应使用 nestjs-microservices);不替代 Prisma/Drizzle、i18n、TypeScript 库发布等专项技能;资料未提供具体版本、安装命令、收费与平台信息。反模式包括控制器内写业务逻辑、DTO 使用 any、跨限界上下文复用 forFeature、异常过滤器返回 200、无微服务技能却做混合微服务。