PyCharm 2026.2 Help

Python tools support

PyCharm supports several tools to improve code quality, maintainability, and workflow efficiency:

  • Ruff: a high-performance linter and formatter that detects errors and enforces coding standards.

  • Pyright, basedpyright, and ty: fast type checkers providing real-time type analysis.

  • Black: an automatic code formatter that helps maintain a consistent style.

When a Python file is open, PyCharm shows the active tools at the bottom toolbar:

Python LSP tools displayed in a toolbar

If Python tools are detected in your project interpreter, PyCharm displays a notification suggesting to enable the tool. Click the notification to enable the tool without opening the settings.

External Tools settings page

You configure all supported external tools on a single page: Python | Tools | External Tools. The page shows a table with every tool currently supported by PyCharm (linters, type checkers, formatters).

For each tool, the table displays the same set of controls:

  • The ON/OFF switch to enable or disable the tool integration.

  • A per-tool Configure <tool> dialog with the Features checkboxes, where you select the capabilities that the tool provides in the editor (for example, inspections, completions, inlay hints, formatting, or import optimization). The list of available features depends on the tool.

    To open the dialog, enable the required tool and click the gear icon (Configure <tool>) in its row.

    The ty row with the Configure ty tooltip on the gear icon, the selected features, and the lookup chain
  • The Lookup column, which controls how PyCharm locates the tool executable. Select one of the methods:

    • Sdk: PyCharm tries the tool package installed in the module interpreter first, then an executable on $PATH, and then runs the tool through uvx.

    • Path: PyCharm tries an executable on $PATH first, and then runs the tool through uvx.

    • uvx: PyCharm runs the tool through uv without installing it.

    The uvx method requires uv. If uv is not installed, the page shows a hint with the Install uv button.

  • The Executable Path field with the the Browse for executable icon (Browse for executable) icon. If the tool is not installed yet, an Install the latest version icon appears next to the path. PyCharm installs the tool with uv tool install, or with pip through a system Python if uv is not available. It does not install the tool into the project interpreter.

Ruff

Ruff can highlight issues as you type, suggest fixes, and help maintain consistent code quality across your project. It runs quickly and provides real-time feedback directly in your editor.

Ruff support in PyCharm includes:

  • Formatting

  • Import optimization

  • Quick fixes

  • Configuration file validation

  • Inlay hints for rule codes

    View inlay hints for rule codes
  • Completions for rule codes and configuration options

    Use auto-complete
  • Web links for rule codes and configuration options

    Press Ctrl (⌘ on macOS) and click a rule code or configuration option to open its page in the Ruff documentation.

  • In-editor documentation preview for rule codes and configuration options

    Preview documentation in the editor

You can enable the following Ruff options:

Pyrefly

Pyrefly is a type checker and language server for Python.

You can enable the following Pyrefly options:

Pyright

Pyright is a static type checker for Python.

You can enable the following Pyright options:

basedpyright

basedpyright is a fork of Pyright with various type checking improvements.

You can enable the following basedpyright options:

Write new errors to baseline

A baseline is a way to save the current set of type-checking errors so you can prevent new ones from being introduced while you gradually improve type coverage.

To use a baseline in PyCharm:

  1. Enable basedpyright.

  2. Open a file in your project that contains a basedpyright type-checking error.

  3. Go to Help | Find Action (or press Ctrl+Shift+A), search for basedpyright: Write new errors to baseline, and select it.

    basedpyright creates a baseline.json file in the .basedpyright directory. It ignores the errors listed in this file and continues to report new type errors.

ty

ty is a fast Python type checker, written in Rust. It is currently in preview and could be incomplete.

You can enable the following ty options:

Black

You can use Black to format your Python code in PyCharm.

You can configure the settings of the Black formatter in a pyproject.toml file. For more information, refer to the Black documentation.

For more information, refer to the Black CLI reference.

14 October 2026