关于 nestjs-best-practices
面向 NestJS 开发者和编码 Agent 的实践指南,按优先级将 40 条规则分为 10 类,适用于代码生成、审查与重构。
主要功能
- 01涵盖 10 类、40 条规则
- 02按优先级排序
- 03架构与依赖注入指导
- 04安全、性能与测试指导
- 05数据库、API 与微服务指导
适用场景
- 01设计 NestJS 模块与服务
- 02审查架构和安全问题
- 03重构现有 NestJS 代码
- 04优化查询与性能
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ kadajett/ agent-nestjs-skills --skill nestjs-best-practices安装后在 Claude Code 中输入/nestjs-best-practices确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
rules/_sections.md_template.mdapi-use-dto-serialization.mdapi-use-interceptors.mdapi-use-pipes.mdapi-versioning.mdarch-avoid-circular-deps.mdarch-feature-modules.mdarch-module-sharing.mdarch-single-responsibility.mdarch-use-events.mdarch-use-repository-pattern.mddb-avoid-n-plus-one.mddb-use-migrations.mddb-use-transactions.mddevops-graceful-shutdown.mddevops-use-config-module.mddevops-use-logging.mddi-avoid-service-locator.mddi-interface-segregation.mddi-liskov-substitution.mddi-prefer-constructor-injection.mddi-scope-awareness.mddi-use-interfaces-tokens.mderror-handle-async-errors.mderror-throw-http-exceptions.mderror-use-exception-filters.mdmicro-use-health-checks.mdmicro-use-patterns.mdmicro-use-queues.md详细介绍
NestJS 最佳实践
NestJS 应用的全面最佳实践指南。包含 10 个类别的 40 条规则,并按影响优先级排序,以指导自动化重构和代码生成。
适用场景
在以下情况下请参考这些指南:
- 编写新的 NestJS 模块、控制器或服务
- 实现身份验证和授权
- 检查代码中的架构和安全问题
- 重构现有 NestJS 代码库
- 优化性能或数据库查询
- 构建微服务架构
按优先级划分的规则类别
| 优先级 | 类别 | 影响 | 前缀 |
|---|---|---|---|
| 1 | 架构 | CRITICAL | arch- |
| 2 | 依赖注入 | CRITICAL | di- |
| 3 | 错误处理 | HIGH | error- |
| 4 | 安全 | HIGH | security- |
| 5 | 性能 | HIGH | perf- |
| 6 | 测试 | MEDIUM-HIGH | test- |
| 7 | 数据库和 ORM | MEDIUM-HIGH | db- |
| 8 | API 设计 | MEDIUM | api- |
| 9 | 微服务 | MEDIUM | micro- |
| 10 | DevOps 和部署 | LOW-MEDIUM | devops- |
快速参考
1. 架构(CRITICAL)
arch-avoid-circular-deps- 避免循环模块依赖arch-feature-modules- 按功能组织,而非按技术层组织arch-module-sharing- 正确导出/导入模块,避免重复提供程序arch-single-responsibility- 优先使用职责明确的服务,避免“全能服务”arch-use-repository-pattern- 抽象数据库逻辑,以便进行测试arch-use-events- 使用事件驱动架构实现解耦
2. 依赖注入(CRITICAL)
di-avoid-service-locator- 避免服务定位器反模式di-interface-segregation- 接口隔离原则(ISP)di-liskov-substitution- 里氏替换原则(LSP)di-prefer-constructor-injection- 优先使用构造函数注入,而非属性注入di-scope-awareness- 理解单例、请求和瞬态作用域di-use-interfaces-tokens- 为接口使用注入令牌
3. 错误处理(HIGH)
error-use-exception-filters- 集中处理异常error-throw-http-exceptions- 使用 NestJS HTTP 异常error-handle-async-errors- 正确处理异步错误
4. 安全(HIGH)
security-auth-jwt- 确保 JWT 身份验证安全security-validate-all-input- 使用 class-validator 验证输入security-use-guards- 使用身份验证和授权守卫security-sanitize-output- 防止 XSS 攻击security-rate-limiting- 实施速率限制
5. 性能(HIGH)
perf-async-hooks- 正确使用异步生命周期钩子perf-use-caching- 实施缓存策略perf-optimize-database- 优化数据库查询perf-lazy-loading- 延迟加载模块,以加快启动速度
6. 测试(MEDIUM-HIGH)
test-use-testing-module- 使用 NestJS 测试工具test-e2e-supertest- 使用 Supertest 进行 E2E 测试test-mock-external-services- 模拟外部依赖
7. 数据库和 ORM(MEDIUM-HIGH)
db-use-transactions- 管理事务db-avoid-n-plus-one- 避免 N+1 查询问题db-use-migrations- 使用迁移处理架构变更
8. API 设计(MEDIUM)
api-use-dto-serialization- 使用 DTO 和响应序列化api-use-interceptors- 处理横切关注点api-versioning- 制定 API 版本管理策略api-use-pipes- 使用管道转换输入
9. 微服务(MEDIUM)
micro-use-patterns- 使用消息和事件模式micro-use-health-checks- 为编排添加运行状况检查micro-use-queues- 处理后台任务
10. DevOps 和部署(LOW-MEDIUM)
devops-use-config-module- 配置环境devops-use-logging- 使用结构化日志记录devops-graceful-shutdown- 实现零停机部署
使用方法
阅读各个规则文件,了解详细说明和代码示例:
rules/arch-avoid-circular-deps.md
rules/security-validate-all-input.md
rules/_sections.md
每个规则文件都包含:
- 简要说明其重要性
- 错误代码示例及说明
- 正确代码示例及说明
- 补充背景信息和参考资料
完整汇编文档
如需查看包含所有规则的完整指南(已汇编为单个文档),请参阅 仓库中的 AGENTS.md。
评论
支持 Markdown