nest-boot-module-design
Installation
SKILL.md
概览
先从宿主代码库识别真实模块根目录和现有边界,再扩展同一套结构。Nest Boot 不要求固定 monorepo 包名或源码路径;目录设计应服务于职责、运行时元数据和稳定导入,而不是机械套模板。
开发流程
- 发现宿主约定。 检查相邻模块、
nest-cli.json、tsconfig路径映射、ORM/GraphQL 配置和构建脚本,确认业务模块、数据库工件与公共基础设施的位置。 - 划定领域边界。 明确模块拥有的实体、入口、业务服务、持久化和公开契约;跨领域协调放在有明确所有权的 service,不建立平行目录体系。
- 按运行时职责拆分。 Entity、Service、Resolver/Controller、Module 与需要装饰器元数据的 Input/Args/DTO 使用独立 class 文件;局部短小辅助类型可就近保留。
- 提取稳定共享定义。 跨文件复用的 interface/type 和 enum 使用稳定路径;只在单点使用的简单定义不要为了形式制造空文件夹。
- 检查模块表面。 imports/providers/controllers/exports 只暴露实际消费者需要的内容,避免循环依赖、重复 provider 和无语义 re-export。
- 验证结构与契约。 运行类型检查、相关单元测试和真实框架生成/启动验证;若涉及 GraphQL、MikroORM 或 RLS,继续使用对应专项技能。