Help us improve
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
Share bugs, ideas, or general feedback.
By nurikk
Runs Python type checking (ty) and formatting/linting (ruff) after file changes
npx claudepluginhub nurikk/claude-plugins --plugin python-qualityA collection of Claude Code plugins.
/plugin marketplace add nurikk/claude-plugins
Note: The GitHub repo is
nurikk/claude-plugins, but the marketplace identifier isnurikk-plugins(used when installing plugins).
| Plugin | Description | Install |
|---|---|---|
| python-quality | Python formatting, linting & type checking with ruff and ty | /plugin install python-quality@nurikk-plugins |
Automatically runs Python quality checks after file changes.
When Claude writes or edits a .py file, this plugin automatically runs:
| Tool | Command | Purpose |
|---|---|---|
| ruff format | uvx ruff format | Auto-formats code (PEP 8 style) |
| ruff check | uvx ruff check --fix | Lints and auto-fixes safe issues |
| ty | uvx ty check | Type checks using Astral's fast type checker |
jq - JSON processor (pre-installed on most systems)Install uv:
# macOS
brew install uv
# Linux/macOS (curl)
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"
/plugin marketplace add nurikk/claude-plugins
/plugin install python-quality@nurikk-plugins
Or add directly to your ~/.claude/settings.json:
{
"enabledPlugins": {
"python-quality@nurikk-plugins": true
}
}
The plugin auto-formats Python files using ruff, which handles:
Safe lint fixes are applied automatically:
Type errors are reported but don't block the operation. You'll see output like:
error[invalid-return-type]: Return type does not match returned value
--> example.py:3:25
|
3 | def greet(name: str) -> int:
| --- Expected `int` because of return type
4 | return "hello"
| ^^^^^^^ expected `int`, found `str`
/hooksEnsure uvx is in your PATH:
which uvx
Both tools are run via uvx (uv's tool runner), so they don't need to be pre-installed.
claude-plugins/
├── .claude-plugin/
│ └── marketplace.json # Marketplace catalog
├── plugins/
│ └── python-quality/ # Python quality plugin
│ ├── .claude-plugin/
│ │ └── plugin.json
│ ├── hooks/
│ │ └── hooks.json
│ └── scripts/
│ └── python-quality.sh
├── README.md
└── LICENSE
MIT
Modifies files
Hook triggers on file write and edit operations
Share bugs, ideas, or general feedback.
Based on adoption, maintenance, documentation, and repository signals. Not a security audit or endorsement.
Automatically format Python files with Ruff after Write/Edit/MultiEdit operations
This skill should be used when the model needs to ensure code quality through comprehensive linting and formatting. It provides automatic linting workflows for orchestrators (format → lint → resolve via concurrent agents) and sub-agents (lint touched files before task completion). Prevents claiming "production ready" code without verification. Includes linting rules knowledge base for ruff, mypy, and bandit, plus the linting-root-cause-resolver agent for systematic issue resolution.
Python development ecosystem - uv, ruff, pytest, packaging, type checking
Comprehensive Pylint skills for Python linting and code quality with configuration, checkers, and CI integration.
Skills for working with Python using Astral tools.
Python-specific development with type hints and idiomatic refactoring
Telegram channel for Claude Code — messaging bridge with built-in access control. Manage pairing, allowlists, and policy via /telegram:access.
Own this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claimOwn this plugin?
Verify ownership to unlock analytics, metadata editing, and a verified badge.
Sign in to claim