SuperAPI AI 工具集

ts-lint-format

编程与开发

查看项目

更新于 10-26 16:22

技能介绍

用途

本技能用于在 TypeScript 项目中做代码检查与格式化工具的选择和配置,适合以下情形:为新项目挑选 linter/formatter 组合;配置 Biome 2.x(biome.json、biome check、domains、类型感知规则);配置 ESLint 10 扁平配置与 typescript-eslint 类型感知检查;从 ESLint+Prettier 迁移或为 CI 增加 lint 关卡。它不用于运行时执行(见 ts-runtime-node / ts-runtime-bun)、框架自有风格规则,也不用于类型检查本身——linter 是对 tsc --noEmit 的补充而非替代。

主要能力与选型要点

资料给出的 2026 年选型取向:新项目默认用 Biome,单二进制、启动快、零配置起步;成熟或类型密集型代码库倾向 ESLint 10 + typescript-eslint 类型感知检查;Oxlint 作为挑战者被提及。关键规则包括:只选一个格式化器,Biome 同时负责格式化和检查,不要在同一批文件上再跑 Prettier;类型感知检查需要类型检查器,因此会比纯语法规则慢;Biome 不会通过 lint 规则报告格式化问题,格式化决策由格式化器负责;ESLint 10 只支持扁平配置,使用 eslint.config.mjs 与 typescript-eslint 的 tseslint.configs.,v10 已移除 .eslintrc. / .eslintignore 支持(ESLint 9 自 2026-08-06 起 EOL);typescript-eslint 8.x 的 peer 依赖为 typescript <6.1.0,若项目使用 TS 7.0,需要将 typescript 别名指向 @typescript/typescript6 供 linter 使用。资料指出 Biome 的类型感知规则覆盖约 75% 的类型检查需求,完整的跨文件收窄与 no-unsafe-* 仍需 typescript-eslint。

使用方式

资料描述的工作流要求:实现前并行启动三个 agent,分别是 fuse-ai-pilot:explore-codebase(检测现有 lint/format 配置、项目年龄、框架)、fuse-ai-pilot:research-expert(通过 Context7/Exa 核实最新 Biome 2.x 与 typescript-eslint 信息)、mcp__context7__query-docs(查阅 Biome 与 typescript-eslint 文档);实现后运行 fuse-ai-pilot:sniper 做验证。项目结构上,Biome 路线使用 biome.json;ESLint 路线使用 eslint.config.mjs,并保留 .prettierrc(仅 ESLint 路线,Biome 替代 Prettier);两条路线都需要 tsconfig.json 以支持类型感知检查。具体配置模板见 config-examples.md。

适用场景与限制

最佳实践建议:新项目默认 Biome 2.x;成熟/类型密集代码库用 ESLint 10 + typescript-eslint;在 CI 中以 error 级别运行 linter 以拦截合并。避免:在同一批文件上同时运行 Biome 和 Prettier;开启类型感知检查后又抱怨速度——那是类型检查器的成本;假设 Biome 覆盖全部 typescript-eslint 规则,应先确认差距。资料未提供具体配置代码内容、性能数据或迁移步骤细节,这些需参阅其参考文档。