Back to skills
extension
Category: Development & EngineeringNo API key required

python-code-quality

Python code quality with ruff (linting & formatting) and ty (type checking). Covers pyproject.toml configuration, pre-commit hooks, and type hints. Use when user mentions ruff, ty, linting, formatting, type checking, code style, or Python code quality.

personAuthor: jakexiaohubgithub

Python Code Quality

Orchestration index for the Python quality stack. This skill routes to the focused skills that own each tool — it does not restate their commands. Reach for it when setting up or reasoning about the whole stack (lint + format + type-check + tests) at once; reach for a focused skill when tuning one tool.

When to Use This Skill

| Use this skill when... | Use a focused sibling instead when... | |---|---| | Standing up a complete quality stack for a new project | Tuning only ruff lint rule selection — use ruff-linting | | Reasoning about how the tools fit together / comparing them | Configuring only ruff formatter quirks — use ruff-formatting | | Wiring lint + type-check into pre-commit and CI together | Configuring strict type-checker rules — use ty-type-checking or basedpyright-type-checking |

Routing Table

| Concern | Focused skill | |---------|---------------| | Lint rules, rule selection, auto-fix | python-plugin:ruff-linting | | Code formatting (quote style, line length) | python-plugin:ruff-formatting | | Editor / pre-commit / CI / Docker wiring for ruff | python-plugin:ruff-linting → its REFERENCE.md | | Type checking with ty | python-plugin:ty-type-checking | | Type checking with basedpyright | python-plugin:basedpyright-type-checking | | Dead-code detection | python-plugin:vulture-dead-code | | Test quality / coverage | python-plugin:python-testing, python-plugin:pytest-advanced | | Modern type-hint syntax and idioms | python-plugin:python-development | | Adding the tools to a project | python-plugin:uv-project-management |

Full Stack at a Glance

The one thing this index owns: the tools running together in pre-commit. For each tool's flags and config, follow the routing table above.

# .pre-commit-config.yaml — ruff (lint + format) and ty together
repos:
  - repo: https://github.com/astral-sh/ruff-pre-commit
    rev: v0.14.0
    hooks:
      - id: ruff-check
        args: [--fix]
      - id: ruff-format
  - repo: https://github.com/astral-sh/ty
    rev: v0.0.10
    hooks:
      - id: ty

A typical CI quality gate runs the same three steps: ruff check, ruff format --check, ty check. See ruff-linting § CI/CD Integration and ty-type-checking for the runnable forms.

References