mcpField
O
oxlint

oxlint

github.com/dobroslavradosavljevicテスト・品質347 回インストール2 日前に更新
リポジトリ

oxlint について

Oxlint や Oxc に関わる開発作業向けのワークフロースキルです。設定、ルール、移行、エディター、CI を扱い、リポジトリの現状確認と専用ガイドの参照、プロジェクトのコマンドによる検証を重視します。

主な機能

  1. 01バージョン、設定、ESLint 構成の確認
  2. 02CLI・設定・ルール選択のガイド
  3. 03型情報を使う lint とプラグインの注意点
  4. 04ESLint との併用や移行を支援
  5. 05プロジェクトのコマンドで lint 結果を検証

活用シーン

  1. 01既存リポジトリで Oxlint を設定・調整
  2. 02ルール、プラグイン、型情報を使う lint の問題を調査
  3. 03ESLint と Oxlint の併用や移行を計画
  4. 04エディター設定や CI の lint 変更を検証

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/dobroslavradosavljevic/skills --skill oxlint

インストール後、Claude Code で/oxlintを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

agents/
openai.yaml
references/
eslint-ci-editors.md
rules-plugins-typeaware.md
setup-cli-config.md
source-map.md
usage-guide.md

詳細

Oxlint

Oxlint または Oxc による lint に関わる作業(インストール/設定、日常的な使用方法、ルール/プラグイン、React Compiler の lint ルール、型を考慮した lint、ESLint との併用または移行、エディター、CI)では、このスキルを使用してください。

ワークフロー

  1. コードを変更する前に、ローカルの Oxlint の状況を確認します。
    • oxlint、任意の oxlint-tsgolint、eslint-plugin-oxlint、@oxlint/migrate のパッケージバージョン。
    • 設定:defineConfig を使用する oxlint.config.ts/.mts を優先します。.oxlintrc.json(c) も受け入れます(ディレクトリごとにいずれか一方の形式)。
    • 残っている ESLint の設定、ignore ファイル、スクリプト(lint/lint:fix)、エディターの Oxc 設定。
    • 型を考慮した lint、JS プラグイン、React Compiler ルールが使われているかどうか。
  2. セットアップ、使い方、段階的な導入、診断の反復、ベースライン、トラブルシューティングについては、まずガイド全体に従ってください:usage-guide.md。
  3. バージョンがスナップショットと異なる場合、または型を考慮した lint、JS プラグイン、React Compiler、移行に関わる作業では、最新の公式ドキュメントを確認します。source-map.md から始めてください。
  4. 詳細については、関連するリファレンスを参照してください。
    • インストール、CLI、設定の構造、入れ子の設定、ignore:setup-cli-config.md。
    • カテゴリ、プラグイン、React Compiler、JS プラグイン、ルール、インライン ignore、型を考慮した lint:rules-plugins-typeaware.md。
    • ESLint との併用、移行、エディター、CI:eslint-ci-editors.md。
  5. ユーザーから移行または対象範囲の拡大を依頼されない限り、リポジトリ既存の lint の重大度とプラグインの選択を維持します。
  6. 必要最小限の bunx oxlint/bun run lint コマンドで検証します。

基本的な判断基準

  • Oxlint はデフォルトで correctness カテゴリのみを有効にします。他のカテゴリやプラグインは意図して有効にしてください。
  • plugins: [...] を設定すると、デフォルトのプラグインセットが置き換えられます。引き続き使用する場合は、eslint、typescript、unicorn、oxc を再度列挙してください。
  • 新しい設定には oxlint.config.ts と defineConfig を優先してください(型付けされ、import による共有が可能です)。プロジェクトですでに使用している場合、または Node ランタイムのないスタンドアロンバイナリを使用する場合に限り、.oxlintrc.json を維持または使用してください。CLI のヘルプでは JS/TS 設定の読み込みは引き続き実験的とされていますが、公式の設定ドキュメントでは oxlint.config.ts が正式にサポートされています。
  • 入れ子の設定は親の設定と自動的にマージされません。extends を使用してください(TS:import したオブジェクト、JSON:相対パス)。-c/--config を指定すると、入れ子の設定の検索が無効になります。
  • Vite+(vp lint、Vite+ 1.0 は特定の Oxlint バージョンに固定)は vite.config.* の lint ブロックを読み込みます。Vite+ モード(1.85 以降)では入れ子の設定が常に無効になるため、ルートの lint.overrides を使用してください。
  • エディターと CI の一貫性を保つため、あちこちに ignore ファイルを置くより、設定内の ignorePatterns を優先してください。.gitignore はファイルの走査時の検出に適用されますが、明示的に指定されたファイルは引き続き lint されます。
  • 長期的には oxlint-disable* コメントを優先してください。移行中は eslint-disable* も引き続き動作します(respectEslintDisableDirectives のデフォルトは true)。
  • 型を考慮した lint には、oxlint-tsgolint と --type-aware/options.typeAware が必要です。これらのオプションはルート設定のみで使用できます。型を考慮した lint と --tsconfig を併用しないでください。
  • oxlint と eslint-plugin-oxlint は同じマイナーバージョンにしてください。Oxlint のフラット設定は、重複するルールを無効化できるように、ESLint 設定の最後に置いてください。
  • JS プラグイン(jsPlugins)はアルファ版であり、通常のセマンティックバージョニングの対象外です。必須でない限り使用しないでください。
  • React Compiler の lint ルールは実験的です。1.79 以降はカテゴリごとの react/* ルールであり、react/react-compiler ではありません。デフォルトの correctness を有効にして react プラグインを有効にすると、推奨される Compiler ルールが有効になります。残っている react/react-compiler の指定は削除してください。
  • Vue/Svelte/Astro/Angular:Oxlint が対象とするのはスクリプトブロックのみで、テンプレートは対象外です。
  • Oxlint をフォーマッターとして扱わないでください。フォーマットには、Oxfmt や Prettier など、別のフォーマッターツールを使用します。

検証

リポジトリで管理されているコマンドを優先してください。意味のある Oxlint の作業では、関連する範囲を網羅してください。

  • 変更したパスに対して bunx oxlint(またはプロジェクトの lint スクリプト)を実行します。
  • 自動修正が想定される場合は bunx oxlint --fix を実行し、残りの診断を確認します。
  • 型認識を有効にする場合は、依存先をビルドして .d.ts が存在する状態で bunx oxlint --type-aware を実行します。
  • --deny-warnings または --max-warnings がプロジェクトのポリシーで定められている場合は、CI に準じた実行を行います。
  • ESLint との併用に関する変更後は、oxlint && eslint を実行し、ルールの重複による不要な警告がないことを確認します。
  • Oxc の拡張機能設定または options.typeAware を変更した場合は、エディター/LSP でスモークテストを行います。
  • 1.79+ で react プラグインを有効にした後、実験的なコンパイラルールを有効のままにするかどうかを確認します。

実行したチェックと実行しなかったチェックを報告し、パッケージのバージョン、React Compiler、型認識に関して残っている前提も記載してください。

コメント