温馨提示:本文提到的各个数量是截止到 2025-07-12 的数量,后续可能有变化。
Oxlint 在不提供任何自定义配置的情况下,默认开启的规则是 87 条,其中 50 条是从 eslint 官方拿过来的规则,剩余的 37 条是从第三方的 eslint plugin 拿过来的规则,这 37 条 plugin 规则分别来自 typescript、unicorn、oxc 这三个 plugin,因为这三个 plugin 默认开启。
❯ npx oxlint .
Found 0 warnings and 0 errors.
Finished in 3ms on 61 files with 87 rules using 8 threads.
创建 .oxlintrc.json
配置文件,使用 "plugins": []
配置即可关闭所有第三方 eslint plugin 规则,此时运行 npx oxlint
就只使用 50 条来自 eslint 官方的规则。
❯ npx oxlint . -c .oxlintrc-no-plugins.json
Found 0 warnings and 0 errors.
Finished in 2ms on 61 files with 50 rules using 8 threads.
如果不想创建 .oxlintrc.json
配置文件,也可使用命令行停用默认开启的三个 plugin:
❯ npx oxlint . --disable-typescript-plugin --disable-unicorn-plugin --disable-oxc-plugin
Found 0 warnings and 0 errors.
Finished in 2ms on 61 files with 50 rules using 8 threads.
如果开启所有 plugins
,则会开启 176 条规则。
❯ npx oxlint . -c .oxlintrc-all-plugins.json
Found 0 warnings and 0 errors.
Finished in 27ms on 61 files with 176 rules using 8 threads.
目前 Oxlint 支持的规则有 500 多条,那为什么所有 plugin 都开启了才 176 条规则?因为各 plugin 默认只开启那些被归类为 correctness
的规则,各 plugin 所有 correctness
规则加起来就是 176 条,剩下的都是非 correctness
规则。
plugin 的非 correctness
规则可通过 .oxlintrc.json
配置文件中的 categories
字段开启,也可以使用命令行开启。例如下面这条命令同时开启了 eslint、typescript、unicorn、oxc 中那些归类为 correctness
或 suspicious
的规则,开启的规则数量比只使用 correctness
的 87 条多了 19 条。
❯ npx oxlint -D correctness -W suspicious
Found 0 warnings and 0 errors.
Finished in 13ms on 61 files with 106 rules using 8 threads.
不建议使用 correctness
之外的 categories
,因为 categories
是用来批量开启规则的,可能会开启很多你不需要的规则。如果想使用非 correctness
规则,建议根据实际情况通过 "rules"
字段开启你需要的某些规则。
在 vscode 下可安装 oxc 插件,有自定义配置需求的话建议使用 .oxlintrc.json
而不是命令行,这样 oxc 插件会自动应用配置对代码进行检查。建议根据项目的实际需求启用相应的 plugin,比如 node 项目可考虑启用 node 插件,nextjs 项目可考虑启用 nextjs 插件,react 项目可考虑启用 react 插件,使用 jest 进行测试的话可开启 jest 插件等等。
Oxlint 的 plugin 大多数还未完成移植,事实上只有 2 个 plugin 完成了移植,所以说虽然 Oxlint 1.0 正式版在 6 月就发布了,但其实还不够完善。你可以在 oxc 仓库 的 issues 中查看各 plugin 的适配进度。
比如 eslint 官方规则共有 198 条,其中 61 条是 recommended
规则,这 61 条规则中还有 2 条没有移植到 Oxlint。再比如 node plugin 的 recommended
规则是 14 条,目前只移植了 1 条。移植第三方 plugin 时,经常会把各 plugin 的 recommended
规则分类为 correctness
规则,但不一定。
Oxlint 默认忽略 .gitignore
中的文件,如果还想忽略其他文件,可以配置 "ignorePatterns"
字段。