mcpField
B
biome-tooling

biome-tooling

github.com/laurigates开发5941 次安装1 天前更新
代码仓库

关于 biome-tooling

biome-tooling 是一项介绍如何在 JavaScript、TypeScript 等 Web 语言项目中使用 Biome 的技能,涵盖配置、格式化、检查、导入整理及从 ESLint 和 Prettier 迁移。

主要功能

  1. 01格式化、代码检查与导入整理
  2. 02支持 JavaScript、TypeScript、JSX、TSX、JSON 和 CSS
  3. 03零配置使用与项目配置
  4. 04CI 和诊断输出命令
  5. 05ESLint 与 Prettier 迁移指导

适用场景

  1. 01为新的 JS/TS 项目设置检查
  2. 02在 CI 中运行格式化和检查
  3. 03迁移 ESLint 与 Prettier 配置

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/laurigates/claude-plugins --skill biome-tooling

安装后在 Claude Code 中输入/biome-tooling确认已加载。

附带文件REFERENCE.md

详细介绍

Biome 工具链

Biome 是一款面向 JavaScript、TypeScript 及相关 Web 语言的现代化高性能工具链。它将格式化、代码检查和导入排序整合到一个工具中,速度比 ESLint/Prettier 快 15-20 倍。

何时使用此技能

在以下情况下使用此技能……在以下情况下采用其他方案……
开始一个新的 JS/TS 项目需要特定的 ESLint 插件(React hooks、a11y)
希望实现零配置的格式化和代码检查有复杂的自定义 ESLint 规则
需要快速的 CI/CD 流水线需要框架专属规则(Next.js、Nuxt)
从 ESLint+Prettier 迁移旧代码库高度依赖 ESLint 自定义配置

混合方案:使用 Biome 进行格式化,使用 ESLint 进行专门的代码检查。

核心专长

什么是 Biome?

  • 一体化工具链:代码检查器 + 格式化程序 + 导入排序器
  • 零配置:开箱即用,采用合理的默认设置
  • 快速:使用 Rust 编写,可并行处理文件
  • 兼容:与 Prettier 的格式化结果有 97% 以上一致
  • 支持:JavaScript、TypeScript、JSX、TSX、JSON、CSS

安装

# Project-local (recommended)
bun add --dev @biomejs/biome

# Verify installation
bunx biome --version

# Initialize configuration
bunx biome init

基本命令

# Format files
bunx biome format --write src/

# Lint with fixes
bunx biome lint --write src/

# Check everything (format + lint + organize imports)
bunx biome check --write src/

# Check without changes (CI mode)
bunx biome check src/

# CI mode (exits with error on issues)
bunx biome ci src/

# Migrate from ESLint/Prettier
bunx biome migrate eslint --write
bunx biome migrate prettier --write

# Explain a rule
bunx biome explain noUnusedVariables

配置(biome.json)

最小配置(零配置)

Biome 无需配置即可使用。若要进行基本自定义:

{
  "$schema": "https://biomejs.dev/schemas/1.9.4/schema.json",
  "vcs": {
    "enabled": true,
    "clientKind": "git",
    "useIgnoreFile": true
  },
  "files": {
    "ignoreUnknown": false,
    "ignore": ["dist", "build", "node_modules", ".next", "coverage"]
  },
  "formatter": {
    "enabled": true,
    "indentStyle": "space",
    "indentWidth": 2,
    "lineWidth": 100
  },
  "linter": {
    "enabled": true,
    "rules": {
      "recommended": true
    }
  },
  "organizeImports": {
    "enabled": true
  }
}

规则类别

类别用途规则示例
recommended所有人都应启用的基本规则大多数标记为“recommended”的规则
correctness防止缺陷和逻辑错误noUnusedVariables、noUnreachable
suspicious检测可能有误的代码noExplicitAny、noDoubleEquals
style强制统一代码风格useConst、noVar
complexity降低代码复杂度noForEach、useFlatMap
performance优化性能noAccumulatingSpread
a11y无障碍最佳实践noSvgWithoutTitle、useAltText
security安全漏洞noDangerouslySetInnerHtml

常见模式

忽略文件和目录

通过 biome.json:

{
  "files": {
    "ignore": [
      "dist",
      "build",
      "node_modules",
      "**/*.config.js",
      "scripts/legacy/**"
    ]
  }
}

通过 .gitignore(自动):

{
  "vcs": {
    "enabled": true,
    "useIgnoreFile": true
  }
}

性能对比

工具耗时(1000 个文件)说明
Biome0.5sRust,并行处理
ESLint8-10sNode.js,单线程
Prettier3-5sNode.js,仅格式化
ESLint + Prettier11-15s顺序执行

Agent 优化

场景命令
快速检查bunx biome check src/
修复所有问题bunx biome check --write src/
仅格式化bunx biome format --write src/
仅代码检查bunx biome lint --write src/
CI 模式bunx biome ci src/
仅显示错误bunx biome check --diagnostic-level=error src/
限制输出bunx biome check --max-diagnostics=10 src/
GitHub 报告器bunx biome check --reporter=github src/
JSON 输出bunx biome check --reporter=json src/
迁移 ESLintbunx biome migrate eslint --write
迁移 Prettierbunx biome migrate prettier --write

快速参考

标志说明
--write应用修复/格式化
--reporter=githubGitHub 注释格式
--reporter=jsonJSON 输出
--diagnostic-level=error仅显示错误
--max-diagnostics=N限制输出数量
--verbose显示详细诊断信息
--no-errors-on-unmatched忽略未匹配的文件
ciCI 模式(检查 + 退出代码)

如需查看详细示例、高级模式和最佳实践,请参阅 REFERENCE.md。

参考资料

评论

支持 Markdown