# AGENTS.md

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

## Setup

```
uv sync
```

## Commands

```
ruff check .   # lint
cargo test     # run the test suite
```

## Layout

- `crates/`     4890 source files
- `playground/` 49 source files
- `scripts/`    40 source files
- `python/`     14 source files
- `fuzz/`       7 source files
- `docs/`       1 source file

## Conventions

- Tests live alongside the code they cover, following `crates/ruff/resources/test/fixtures/cache_mutable/.gitignore`.
- CI defines what passing means. See `.github/workflows/build-binaries.yml`, and keep it green.
- TODO: add the two or three conventions a newcomer always gets wrong here.

## Gotchas

- `crates/ty_python_semantic/src/types/infer/builder.rs` is 506KB. It will not fit comfortably in context, so read it in parts.

---

Drafted by agentreadme.com from what is in this repository. Everything marked TODO
needs a human. Check it in as AGENTS.md at the root.
