SuperAPI AI 工具集

npm-package

编程与开发

查看项目

更新于 10-16 07:58

技能介绍

用途:在搭建或修复 npm 包时提供一套有明确主张的 TypeScript ESM 包规范,覆盖 package.json、tsconfig、构建发布、bin、exports/imports、测试与 Agent Skill 布局。

主要能力与规则:package.json 必须设 "type": "module",填写 description、GitHub 元数据(repository/homepage/bugs)、keywords,导出 ./package.json;exports 中 types 放最前,运行时入口指向 dist,./src 与 ./src/* 指向 .ts 源文件,并包含 default。files 至少含 src、dist 及运行时必需文件,若随包发布 Agent Skill 则含 skills/。不创建包级 README,工作区只在仓库根保留一个 README。

构建与发布:scripts.build 为 tsc && chmod +x dist/cli.js(无 bin 时省略 chmod),不做打包,默认不删除 dist。prepublishOnly 固定为 rimraf dist "*.tsbuildinfo" && pnpm build。bin 用字符串指向 dist/cli.js,源文件首行加 #!/usr/bin/env node。

tsconfig:rootDir 为 src、outDir 为 dist,module/moduleResolution 用 nodenext,target ESNext,开启 declaration、declarationMap、strict、noUncheckedIndexedAccess 等;源码导入使用 .ts/.tsx 扩展名,由 rewriteRelativeImportExtensions 重写为 .js,需 TypeScript 5.7+。其他根级目录应各自建最小 tsconfig 做类型检查,测试放在 src 内。

运行时技巧:用 createRequire 读取 package.json 版本;用 import.meta.url 推导 __dirname 解析相对路径;以 import.meta.url 是否以 .ts/.tsx 结尾判断开发模式。imports 内部别名以 # 开头,types 指向 dist 而非 src,依赖 rootDir/outDir 自动重映射。

工作区与 CI:pnpm workspaces 使用 ./* 扁平路径,共享 devDependencies 只装在根;跨包依赖用 workspace:^;CI 用 pnpm/action-setup@v4,必要时递归检出子模块。

限制:资料未提供具体版本兼容范围、性能数据或收费信息;部分内容(如 CI 工作流)在资料中被截断。