astral-sh/ruff

GitHub
https://github.com/astral-sh/ruff

An extremely fast Python linter and code formatter, written in Rust.

Stars:
50.4k
Language:
Rust
Default branch:
main
Last scored:
Overall

At a glance

Rank
#17 of 401
Top 4% · #3 of 45 Rust repos
Checks passed
11 of 17
Full list below
Best set up for
Kimi Code CLI
Score 92.1
Needs most work for
Aider
Biggest fix: .aider.conf.yml (+14.1 pts)

What it has

What it's missing

What to fix first

Pick an AI agent

Showing fixes for Claude Code

  1. 1
    Manageable size
    If possible, split into smaller modules or carve out a focused entry path. Document where to start in AGENTS.md.
    +5.3 pts
  2. 2
    Test suite
    Add a tests/ (or test/, __tests__/, spec/) directory with runnable tests. Document how to run them in AGENTS.md.
    +3.9 pts

Score for each AI agent

Each agent weighs the checks by its own docs. Under each score are its top three. How each agent is scored →

Kimi Code CLI
#7 of 401
92.1
  • ✓AGENTS.md / CLAUDE.md
  • ~Test suite
  • ✓Dependency manifest
Codex
#9 of 401
91.9
  • ✓AGENTS.md / CLAUDE.md
  • ✓README
  • ~Test suite
Pi
#13 of 401
91.1
  • ✓AGENTS.md / CLAUDE.md
  • ~Test suite
  • ✓Linter / formatter config
Claude Code
#26 of 401
90.8
  • ✓AGENTS.md / CLAUDE.md
  • ~Test suite
  • ✓Reproducible dev env
Devin
#12 of 401
87.5
  • ✓Reproducible dev env
  • ✓Dependency manifest
  • ~Test suite
Cursor
#17 of 401
82.4
  • ✗Cursor rules (.cursor/rules)
  • ✓README
  • ✓Type configuration
Gemini CLI
#14 of 401
81.8
  • ✗GEMINI.md
  • ✓README
  • ~Test suite
OpenHands
#10 of 401
81.7
  • ✓CI configuration
  • ✓Dependency manifest
  • ✓Reproducible dev env
Aider
#46 of 401
77.2
  • ✗.aider.conf.yml
  • ✓Linter / formatter config
  • ~Test suite

Does astral-sh/ruff have agent instructions?

An AGENTS.md (or CLAUDE.md) at the root tells AI coding agents how to build, test and work in the repo. A few agents also read a file of their own.

AGENTS.md / CLAUDE.md
AGENTS.md (new tab) · 20,377 characters
Agent-specific files
.agents/skills (new tab) (6 skills)No GEMINI.md, .cursor/rules, .openhands/setup.sh or .aider.conf.yml
Repos that have one
24 of 45 Rust repos · 221 of 401 repos on the leaderboard · See examples →

All 17 checks · 11 passed

Substantive (20,377 characters)
.aider.conf.yml· 0% pass
No .aider.conf.yml at repo root
CI configuration· 100% pass
26 GitHub Actions workflows
CONTRIBUTING guide· 100% pass
Guide present
No .cursor/rules/*.mdc or .cursorrules
Manifest present
2 env artifacts (.devcontainer/devcontainer.json, Dockerfile)
GEMINI.md· 0% pass
No GEMINI.md at repo root
License file· 100% pass
License present
Config detected
No .openhands/setup.sh
Hook framework configured
README· 100% pass
README detailed (19,605 characters)
Manageable size· 20% pass
10000+ files — very large
Test suite· 70% pass
Test files detected (crates/ruff/tests/integration_test.rs)
Type configuration· 100% pass
Typed language (Rust)

How astral-sh/ruff compares

vs leaderboard average
19.5 pts above
Average 66.8
vs Rust average
15.7 pts above
Average 70.6
Stars among Rust repos
#17 of 45

Missing here, and how many repos have it

  • Cursor rules (.cursor/rules) · passed by 4% of leaderboard repos, 2% of Rust repos

Passes checks most repos miss

  • Skills (.agents/skills) · only 17% of repos pass it
  • Reproducible dev env · only 22% of repos pass it
  • Pre-commit / git hooks · only 29% of repos pass it

One fix for the most agents: Manageable size would raise the score for all 9 agents, by up to 5.7 points.

Similar repos

Same language and host as this repo, closest in overall score.

All Rust repos →

Same topics, any language

Repos tagged with the same GitHub topics, most shared first.

Add a badge to your README

Paste this at the top of the README. It shows the score, and links back to this page.

Agent friendly score for github/astral-sh/ruff
[![Agent Friendly](https://agentfriendlycode.com/api/badge/github/astral-sh/ruff.svg)](https://agentfriendlycode.com/repo/github/astral-sh/ruff)

Check the score on every pull request

A GitHub Action posts one comment per pull request with how the score changed and why.