@caxerx/oxlint-config-vibeproof

中文文档
0.2.1发布于 2026/10/09MITTypeScriptES Module近 30 天下载 1.1万

非官方的克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克

中文使用文档
文档目录14 节
  1. 安装
  2. 使用量
  3. 选项
  4. 从 Eslint-config- sukka 迁移
  5. 1. 交换依赖关系
  6. 2. 替换配置
  7. 3. 重写禁用注释
  8. 4. 更新脚本、CI和编辑
  9. 5. 格式化和审查
  10. 从0.1升级
  11. 未涵盖的内容
  12. 如何验证端口
  13. 贷项
  14. 许可证

防牛林- 配置- 防活性

一个非官方港口 苏卡W'lint 预设( e)eslint-config-sukka 9.1.0+ (单位:千美元) eslint-plugin-vibe-proof 1.1.0)改为: 奥克林特 财务报告和审定财务报表 氧化剂。 。 。 . 未由Sukka出版或认可;此处报告出问题,而非上游.

  • 大部分规则是牛林的原生(Rust)规则,包括通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通通 oxlint-tsgolint。 。 。 .
  • 规则oxlint没有作为原始的ESLint插件通过oxlint的JS插件支持运行. 检查后报告ESLint的报告内容.
  • 格式化由 oxfmt 代替 @stylistic。 。 。 .

安装

pnpm add -D oxlint @caxerx/oxlint-config-vibeproof
pnpm add -D oxlint-tsgolint   # optional: type-aware rules (recommended for TypeScript projects)
pnpm add -D oxfmt             # optional: formatting

需要节点js 22.18(牛林负载) .ts 配置带有节点类型剥取的文件).

使用量

// oxlint.config.ts
import { defineConfig } from 'oxlint';
import { sukka } from '@caxerx/oxlint-config-vibeproof';

export default defineConfig({
  extends: [sukka()],
  rules: {
    // your overrides
  }
});
// oxfmt.config.ts
import { defineConfig } from 'oxfmt';
import { oxfmt } from '@caxerx/oxlint-config-vibeproof/oxfmt';

export default defineConfig(oxfmt());
npx oxlint            # type-aware rules run automatically when oxlint-tsgolint is installed
npx oxfmt

牛林只发现 oxlint.config.ts (或 .oxlintrc.json自动。 需要其它文件名 -c。 。 。 .

选项

选项和自动检测相同 eslint-config-sukka是因为 sukka()。每个预设接受 true, (中文(简体) ), false,或选项对象;当被忽略时,会根据您的工程已安装的内容启用.

选项默认页:1
jstrue{ disableNoConsoleInCLI, env: { browser, webextensions, greasemonkey, customGlobals } }。 。 。 . module 可从 package.json "type"。 。 。 .
ts若为 typescript 或者说 @types/node 已安装{ allowJs, componentExtensions, typeAware }。 。 。 . typeAware 默认是否 oxlint-tsgolint 已安装.
react若为 react, (中文(简体) ), @types/react 或者说 next 已安装( 需要) ts(中文(简体) ){ files, additionalHooks, additionalHooksWithType, additionalComponents, nextjs, remix, reactRefresh: { allowConstantExport } }
next若为 next 已安装
stylex若为 @stylexjs/stylex 或者说 stylex-webpack 已安装{ opt },转至 @stylexjs/eslint-plugin
node若为 @types/node 或者说 @types/bun 已安装{ strict, module, files }
legacyfalse{ browser, node, files }
ignores内置软块{ customGlobs }。 。 。 . .gitignore 总是被克林特所尊崇.
stylistictrue少有的风格规则不能执行
cwdprocess.cwd()查找安装的软件包

oxfmt({ printWidth })数字 : printWidth 默认为120.

从 Eslint-config- sukka 迁移

使用该工具的项目的分步骤指南 eslint-config-sukka (有无) eslint-plugin-vibe-proof) (中文(简体) ). 选项是 上文;没有覆盖的是 下级。 。 。 .

1. 交换依赖关系

pnpm remove eslint eslint-config-sukka eslint-plugin-vibe-proof   # plus any @eslint-sukka/* packages you added
pnpm add -D oxlint @caxerx/oxlint-config-vibeproof
pnpm add -D oxlint-tsgolint   # type-aware rules; recommended for TypeScript projects
pnpm add -D oxfmt             # formatting, replaces @stylistic

需要22.18节点.

2. 替换配置

// before: eslint.config.js
import { sukka } from 'eslint-config-sukka';

export default sukka({ react: { nextjs: true } }, {
  rules: { 'no-console': 'off' }
});
// after: oxlint.config.ts
import { defineConfig } from 'oxlint';
import { sukka } from '@caxerx/oxlint-config-vibeproof';

export default defineConfig({
  extends: [sukka({ react: { nextjs: true } })],
  rules: { 'no-console': 'off' }
});
// oxfmt.config.ts
import { defineConfig } from 'oxfmt';
import { oxfmt } from '@caxerx/oxlint-config-vibeproof/oxfmt';

export default defineConfig(oxfmt());
  • sukka() 选择相同的选项,自动检测相同的预设.
  • 在选项成为克林特的后通过的额外平面配置对象 rules 财务报告和审定财务报表 overrides。 。 。 . 对象为 files 变成 overrides: [{ files: [...], rules: {...} }]。 。 。 .
  • 规则标识大多保持不变。 奥克林特匹配 @typescript-eslint/x, (中文(简体) ), import-x/x, (中文(简体) ), unicorn/x 和它的原生规则 规则名称. 现在以另一个名字运行的66个列在 data/directive-compat.json,例如 camelcase → sukka-compat/camelcase。 。 。 .
  • 删除 eslint.config.js.牛林只发现 oxlint.config.ts (或 .oxlintrc.json自动;其他名称需要 -c。 。 。 .
  • .gitignore 永远是荣誉,所以大多数 ignores 条目可以去.

3. 重写禁用注释

牛林听得懂吗 eslint-disable* 评论,所以大多数继续工作。 命名一条在新名称下运行的规则的评论需要重写 :

npx oxlint-config-vibeproof-migrate --dry-run   # preview
npx oxlint-config-vibeproof-migrate             # rewrite in place

注释命名一条没有牛林版本的规则,例如 jsonc/* 财务报告和审定财务报表 yml/* 规则或规则 @stylistic/* 规则取而代之的是"牛", 报告为未使用。 手工删除; 代码为您计数 .

4. 更新脚本、CI和编辑

// package.json
"scripts": {
  "lint": "oxlint",               // was: eslint .
  "lint:fix": "oxlint --fix",     // was: eslint . --fix
  "format": "oxfmt",
  "format:check": "oxfmt --check"
}
  • CI: 运行 oxlint --deny-warnings 财务报告和审定财务报表 oxfmt --check添加 npx oxlint-config-vibeproof-migrate --check 当一个禁用注释需要迁移时失败.
  • 阶段/ 承诺前钩: 互换 eslint --fix 页:1 oxlint --fix 财务报告和审定财务报表 oxfmt。 。 。 .
  • VS 代码: 以 oxc 扩展,它同时运行牛林和牛绒.

5. 格式化和审查

运行 npx oxfmt 将结果分开执行,这样重塑就容易跳入 git blame (承诺 .git-blame-ignore-revs) (中文(简体) ). 可见的样式变化是接口和以 ;, (中文(简体) ), function* g() 改为 function *g(),以及一些断行选择;见 文档/stylistic-oxft.md。 。 。 .

然后运行 npx oxlint。期望与ESLint的微小差异;每个已知的差异都按其原因列出于 packages/harness/allowlist.json。 。 。 .

从0.1升级

  • 软件包从 GitHub 软件包移到 npm. 删除 @caxerx:registry=https://npm.pkg.github.com 从 .npmrc 并重新安装.
  • react-hooks/config 财务报告和审定财务报表 react-hooks/gating 不再运行 eslint-plugin-react-hooks 不再是一种依赖. 没有这个预设从未设置的选项, 任何规则都无法报告 。 删除任何 react-hooks-js/* 从您的配置中输入并禁用注释.

未涵盖的内容

为什么
贾森,耶美尔, package.json 财务报告和审定财务报表 pnpm-workspace.yaml 规则jsonc/*, (中文(简体) ), yml/*, (中文(简体) ), pnpm/*(中文(简体) )oxlint只提供JS/TS. oxfmt仍然为JSON和YAML格式.
页:1 @stylistic 格式规则替换为 oxfmt
8个规则需要JS插件内的类型信息,例如. vibe-proof/no-indexof-equality 财务报告和审定财务报表 @eslint-react/no-leaked-conditional-renderingoxlint给JS插件没有类型信息. 已跟踪 文件/规则 每周在CI调查一次.
import-x/no-unresolved, (中文(简体) ), no-relative-packages, (中文(简体) ), no-useless-path-segmentsTypeScript解析器无法从oxlint的JSON设置来配置. tsc已经报告未解决的进口.
n/process-exit-as-throw它补齐了ESLint的密码路径分析, 牛林不使用

已知的与ESLint的区别, 每一个都有记载的克克林特行为或错误, 列在 packages/harness/allowlist.json实例:

  • 导入 : no-unused-vars 还在TS文件中报告未使用的导入.
  • 反应 : react/only-export-components 缺少包含的组件 React.memo(...)。 。 。 .
  • 防风: 7个规则运行时没有对其可选类型进行改进,因此可以报告几个非阵列接收器.

如何验证端口

packages/harness 运行 eslint-config-sukka 并按规则和线条比较他们的报告。 它还:

  • 重播 eslint-plugin-vibe-proof自己的测试套房通过克林特;
  • 检查牛和保存 @stylistic 规则不战斗;
  • 检测漂移时 eslint-config-sukka 变化;
  • 测试哪些旧的已禁用代码仍然匹配 .

贷项

规则选择、规则选项和 ESLint 插件 预设运行是 苏克卡 (苏克瓦)数字 : eslint-config-sukka, (中文(简体) ), eslint-plugin-vibe-proof 财务报告和审定财务报表 eslint-plugin-sukka。这个软件包只让他们适应克林特.

许可证

麻省理工学院. 规则配置从麻省理工学院许可的eslint-config-sukka和eslint-plugin-vibe防伪;见 第三次议会提名(md)。 。 。 .

版本与发布记录

@caxerx/oxlint-config-vibeproof 共发布 3 个版本,首次发布于 2026/10/09;过去 12 个月发布了 3 个版本。

版本发布日期距今
0.2.1latest2026/10/091 个月前
0.0.02026/10/091 个月前
0.0.0-stage2026/10/091 个月前

关于 @caxerx/oxlint-config-vibeproof 的常见问题

@caxerx/oxlint-config-vibeproof 是什么?

非官方的克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克克

如何安装 @caxerx/oxlint-config-vibeproof?

在项目目录运行 npm install @caxerx/oxlint-config-vibeproof,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:oxlint(>=1.87.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。它还提供命令行工具 oxlint-config-vibeproof-migrate,可以用 npx oxlint-config-vibeproof-migrate 直接运行。

@caxerx/oxlint-config-vibeproof 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@caxerx/oxlint-config-vibeproof 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@caxerx/oxlint-config-vibeproof 需要什么版本的 Node.js?

package.json 的 engines 字段要求 Node.js >=22.18.0。版本不符时 npm 默认只给出警告,开启 engine-strict 后会拒绝安装。

@caxerx/oxlint-config-vibeproof 可以商用吗?

@caxerx/oxlint-config-vibeproof 使用 MIT 许可。宽松许可:允许商业使用、修改和再分发,通常只需在分发时保留原版权与许可声明。以上为概括,不构成法律意见,请以许可原文为准。

@caxerx/oxlint-config-vibeproof 的下载量有多少?

根据 npm 官方下载统计,@caxerx/oxlint-config-vibeproof 在 2026/10/09 – 2026/11/07 这 30 天内被下载 11,139 次,日均约 371 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@caxerx/oxlint-config-vibeproof 还在维护吗?

最新版本 0.2.1 发布于 2026/10/09(1 个月前);至今共发布 3 个版本,其中过去 12 个月发布了 3 个;首次发布于 2026/10/09。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。