mcpField
R
ruff-integration

ruff-integration

github.com/laurigatesテスト・品質5943 回インストール1 日前に更新
リポジトリ

ruff-integration について

ruff-integrationは、ruffをエディター、pre-commit、CI/CD、ビルド工程に組み込むためのスキルです。Lintルールやフォーマット設定の選定ではなく、連携設定を扱います。

主な機能

  1. 01エディターとVS Codeの設定
  2. 02pre-commitフックの構成
  3. 03GitHub Actions CIの例
  4. 04ruff設定の優先順位
  5. 05CIとコマンドラインの手順

活用シーン

  1. 01保存時にruffを実行する設定
  2. 02pre-commitでLintと整形を実行
  3. 03GitHub Actionsにruffチェックを追加
  4. 04ビルドやDockerにruffを統合

インストール

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

$npx skills add https://github.com/laurigates/claude-plugins --skill ruff-integration

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

同梱ファイルREFERENCE.md

詳細

ruff の統合

ruff をエディター、pre-commit フック、CI/CD パイプラインに統合します。

このスキルを使用するタイミング

次の場合はこのスキルを使用します...次の場合は ruff-linting を使用します...次の場合は ruff-formatting を使用します...
VS Code/エディターをセットアップするlint ルールを設定するフォーマットオプションを設定する
pre-commit フックを追加するルールを選択/無視する引用符のスタイル、行の長さ
ruff を CI/CD に追加するルールのカテゴリを理解するフォーマットの違い
Docker/ビルドを統合するlint 違反を修正するフォーマットへの準拠を確認する

VS Code のセットアップ

// .vscode/settings.json
{
  "[python]": {
    "editor.formatOnSave": true,
    "editor.codeActionsOnSave": {
      "source.fixAll": "explicit",
      "source.organizeImports": "explicit"
    },
    "editor.defaultFormatter": "charliermarsh.ruff"
  },
  "ruff.lint.args": ["--select=E,F,B,I"],
  "ruff.importStrategy": "fromEnvironment"
}
# Install extension
code --install-extension charliermarsh.ruff

pre-commit との統合

# .pre-commit-config.yaml
repos:
  - repo: https://github.com/astral-sh/ruff-pre-commit
    rev: v0.14.0
    hooks:
      - id: ruff-check
        args: [--fix]
      - id: ruff-format
pre-commit install           # Install hooks
pre-commit run --all-files   # Run manually
pre-commit autoupdate        # Update versions

GitHub Actions CI

# .github/workflows/lint.yml
name: Lint
on: [push, pull_request]

jobs:
  ruff:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: astral-sh/ruff-action@v3
        with:
          args: 'check --output-format github'

lint とフォーマットのチェックを個別に実行:

jobs:
  ruff-check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: pip install ruff
      - run: ruff check --output-format github

  ruff-format:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: pip install ruff
      - run: ruff format --check --diff

設定の優先順位

  1. コマンドライン引数(最優先)
  2. エディターの LSP 設定
  3. カレントディレクトリの ruff.toml
  4. カレントディレクトリの pyproject.toml
  5. 親ディレクトリの設定(再帰的)
  6. ユーザー設定:~/.config/ruff/ruff.toml
  7. Ruff のデフォルト(優先度が最も低い)

ベストプラクティス

  • エディター:保存時のフォーマットを有効にし、プロジェクト固有の .vscode/settings.json を使用します
  • pre-commit:最初に ruff-check --fix を実行し、その後 ruff-format を実行します
  • CI/CD:PR の注釈には --output-format github を使用します
  • パフォーマンス:CI で ruff をキャッシュし、pre-commit では変更されたファイルのみを対象にします
  • チーム:エディターと pre-commit の設定をバージョン管理にコミットします

エージェント向けの最適化

コンテキストコマンド
すばやく lint を確認ruff check --output-format github
フォーマットを確認ruff format --check --diff
すべてを自動修正ruff check --fix && ruff format
エラーのみruff check --select E
CI の注釈ruff check --output-format github
JSON 出力ruff check --output-format json
特定のファイルruff check --diff path/to/file.py

クイックリファレンス

# Editor
code --install-extension charliermarsh.ruff

# Pre-commit
pre-commit install && pre-commit run --all-files

# CI (GitHub Actions)
uses: astral-sh/ruff-action@v3

# Docker
docker run -v .:/app ghcr.io/astral-sh/ruff:0.14.0-alpine check /app

エディター設定(Neovim、Zed、Helix)、GitLab/CircleCI/Jenkins CI、ビルドシステムとの統合、Docker のセットアップ、LSP 設定、移行ガイドについては、REFERENCE.md を参照してください。

コメント