ruff-integration
SKILL.md
ruff Integration
Integrate ruff into editors, pre-commit hooks, and CI/CD pipelines.
When to Use This Skill
| Use this skill when... | Use ruff-linting instead when... | Use ruff-formatting instead when... |
|---|---|---|
| Setting up VS Code / editor | Configuring lint rules | Configuring format options |
| Adding pre-commit hooks | Selecting/ignoring rules | Quote style, line length |
| Adding ruff to CI/CD | Understanding rule categories | Format differences |
| Docker/build integration | Fixing lint violations | Checking format compliance |
VS Code Setup
// .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 Integration
# .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'
Separate lint + format checks:
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
Configuration Hierarchy
- Command-line arguments (highest priority)
- Editor LSP settings
ruff.tomlin current directorypyproject.tomlin current directory- Parent directory configs (recursive)
- User config:
~/.config/ruff/ruff.toml - Ruff defaults (lowest priority)
Best Practices
- Editor: Enable format-on-save, use project-specific
.vscode/settings.json - Pre-commit: Run
ruff-check --fixfirst, thenruff-format - CI/CD: Use
--output-format githubfor PR annotations - Performance: Cache ruff in CI, run on changed files only in pre-commit
- Team: Commit editor/pre-commit configs to version control
Agentic Optimizations
| Context | Command |
|---|---|
| Quick lint check | ruff check --output-format github |
| Format check | ruff format --check --diff |
| Auto-fix all | ruff check --fix && ruff format |
| Errors only | ruff check --select E |
| CI annotations | ruff check --output-format github |
| JSON output | ruff check --output-format json |
| Specific files | ruff check --diff path/to/file.py |
Quick Reference
# 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
For editor configs (Neovim, Zed, Helix), GitLab/CircleCI/Jenkins CI, build system integration, Docker setup, LSP configuration, and migration guides, see REFERENCE.md.
Weekly Installs
32
Repository
laurigates/clau…-pluginsGitHub Stars
13
First Seen
Feb 27, 2026
Security Audits
Installed on
cline32
github-copilot32
codex32
kimi-cli32
gemini-cli32
cursor32