JSDoc 类型定义提取器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md 的指引,将规范名 @user_3c6cb52e/jsdoc-type-definition-extractor 对应的技能安装到当前 AI 助手中。
技能介绍
问题:JSDoc 注释里的类型信息很难真正用起来
在纯 JavaScript 项目中,开发者通常会用 JSDoc 的 @typedef 和 @param 标签标注类型。这些注释能被 IDE 识别,也能通过 jsdoc 命令生成 HTML 文档,但它们本质上是文档,不是代码资产:
- TypeScript 无法直接消费这些定义,想迁移到 TS 时只能手工重建
.d.ts文件; - 团队想查「项目里到底有哪些自定义类型」时,只能翻文档站或全文搜索,没有结构化清单;
@typedef散布在多个文件里,重复定义、命名冲突、引用失效难以及时发现。
核心能力与工作方式
这个技能通过 jsdoc-api 解析器在代码库上运行 JSDoc 解析,完成两件事:
- 提取与索引:扫描代码库中的 JSDoc 类型注解,包括
@typedef定义和@param标签,建立类型目录; - 产出声明文件:生成 TypeScript 风格的
.d.ts声明文件,让注释里描述的类型变成可被类型系统消费的结构化产物。
工作流大致是:定位代码库 → 解析 JSDoc 注解 → 收集类型定义 → 写出 .d.ts 文件与可搜索的类型目录。输出是稳定、可检索的格式,适合接入 CI 检查或团队知识库,而不是一次性的文档生成。
适用边界与注意点
- 输入是 JavaScript 代码库中的 JSDoc 注释;如果项目已是 TypeScript,直接用 tsc 更合适。
- 能力依赖上游 JSDoc 工具链,要求 Node.js 8.15.0 及以上的稳定版本。
- JSDoc 语法本身有局限:复杂推导类型、泛型约束等表达可能无法完整映射到
.d.ts,迁移后仍需人工核对。 - 解析结果是从注释重建的类型信息,不改变运行时行为,也不做类型检查——它只是把文档里的类型转写成声明文件。
使用场景
- 在纯JavaScript项目中,手工把散落的`@typedef`整理成`.d.ts`容易遗漏,需要自动提取全部JSDoc类型注解生成声明文件。
- 团队想盘点项目里定义了哪些自定义类型,不想逐个翻文档站,需要一个可搜索的类型目录。
- 准备把JS项目迁移到TypeScript时,希望先从现有JSDoc注释里批量重建`.d.ts`文件作为起点。
- CI流水线中需要检查`@param`和`@typedef`是否存在命名冲突或失效引用,需要一个结构化类型索引。
适合人员
- 维护大型JavaScript项目的开发者,需要在迁移TypeScript前系统梳理现有JSDoc类型定义。
- 负责代码库文档基础设施的工程师,希望把JSDoc注释中的类型信息转成可检索的结构化清单。
- 编写前端工具链的开发者,需要在CI中对`@typedef`和`@param`标签做自动化一致性检查。
- 接手遗留JavaScript项目的团队,想要快速盘点散落在各文件中的自定义类型与参数注解。