SuperAPI AI 工具集

typescript-conventions

编程与开发

查看项目

更新于 10-15 23:32

技能介绍

用途:为 TypeScript 项目提供统一的类型安全编码规范,作为代理指令的补充,适用于编写或审查 TypeScript 代码、在 any 与 unknown 之间做选择等场景。

主要能力:

  • 类型安全:禁用 any,动态类型用 unknown 后再收窄;启用 strict、noUncheckedIndexedAccess、verbatimModuleSyntax;使用 Readonly、Pick、Omit、Record;实体 ID 用品牌类型(如 UserId、OrderId);有 Zod schema 时优先 z.infer。
  • interface 与 type:普通对象用 interface(可 extends、声明合并),联合、交叉、映射类型等用 type。
  • 联合与字面量:优先字面量联合而非 enum,仅在需要运行时对象时用 enum。
  • 可辨识联合:加 type/kind 字面量字段,用 assertNever 保证穷尽性。
  • 类型收窄:typeof、in、自定义类型守卫。
  • 泛型:用 extends 约束,可设默认值,参数控制在一到两个。
  • 映射与模板字面量类型、交叉类型组合。
  • 导入:verbatimModuleSyntax 下用 import type,值与类型分开导入。
  • 错误处理:守卫子句提前返回,Fastify 路由抛 httpErrors 或 reply.status().send(),领域错误用自定义错误类。
  • 命名:布尔用 is/has/can/should 前缀,查询用 get/find/list/fetch,变更用 create/update/delete/add/remove。

限制与反模式:避免原始类型偏执、魔法数字、过长参数列表、过早抽象、未收窄就访问联合属性、过宽联合、误以为 readonly 深冻结、简单集合用 enum、无约束泛型、冲突交叉类型(会塌缩为 never)、遗漏穷尽性检查。

资料未提供安装命令、收费与平台信息。