用途:面向 TypeScript 类型系统的高级辅助技能,帮助编写严格类型、可用于生产环境的 TypeScript 代码,在提升类型安全的同时兼顾可读性与可维护性。
主要能力:支持泛型(含约束与默认值)、类型守卫与收窄、可辨识联合、条件类型与 infer、映射类型与键重映射、模板字面量类型,以及 Partial、Required、Pick、Omit、Record、Extract、Exclude、NonNullable、Parameters、ReturnType、Awaited 等内置工具类型的深入用法。可修复类型错误并解释编译器信息,把 JavaScript 转换为严格类型代码,设计类型安全的 API 接口与数据模型,审查类型安全问题,并提供严格 tsconfig 基线。
核心原则:不用 any 逃逸,改用 unknown、泛型或类型收窄;类型应服务于编译期查错与 IDE 补全;复杂类型加注释保证可读;strict 为必选项;优先类型推断与收窄,而非断言。
使用方式:描述要类型化的数据形状、函数签名或约束即可。技能按理解问题、设计类型、给出方案、审查优化四步展开,输出通常分为类型方案、工作原理、用法示例、可捕获的错误、权衡取舍。支持继续追问,如简化类型、类型层测试、JS 转严格 TS、解释报错、优化类型计算性能等。
适用场景:高级类型编写、类型报错修复、严格模式迁移、类型安全接口与数据建模、tsconfig 强化、代码类型安全审查。
限制:不编写运行时业务逻辑,不调试与类型无关的运行时错误,不配置 tsconfig 之外的构建工具(webpack、vite、esbuild),不编写单元、集成或端到端测试,不处理 React、Vue、Angular 等框架特有的类型模式。