Python coding conventions and workflows for Tenzir projects. Covers uv-based tooling, Ruff formatting, strict Mypy type checking, and naming conventions.
Features
Section titled “Features”- 🐍 Coding Conventions: uv-based tooling, Ruff formatting, strict Mypy, naming conventions
- 🔍 Pyright LSP Integration: Pre-configured language server for enhanced type checking and IDE support
Installation
Section titled “Installation”Use the plugin manager UI in Claude Code.
- Run
/pluginin Claude Code Enter - Go to Marketplaces Tab
- Select + Add Marketplace Enter
- Type
tenzir/claude-pluginsEnter - Install python from the plugin list
Run the CLI command with your preferred scope.
# Install to user scope (default)claude plugin install python@tenzir
# Install to project scope (shared with team)claude plugin install python@tenzir --scope project
# Install to local scope (gitignored)claude plugin install python@tenzir --scope localAdd the marketplace and plugin to your settings file.
{ "extraKnownMarketplaces": { "tenzir": { "source": { "source": "github", "repo": "tenzir/claude-plugins" } } }, "enabledPlugins": { "python@tenzir": true }}Capabilities
Section titled “Capabilities”| Type | Name | Description |
|---|---|---|
| Skill | following-conventions | Tenzir Python coding standards and tooling setup. Use when editing .py files, running ruff/mypy/pytest, encountering pyproject.toml/uv.lock, or setting up a new Python project. |
Skill: python:following-conventions
Section titled “Skill: python:following-conventions”The skill activates automatically when editing .py files, running Ruff/Mypy/pytest, or working with pyproject.toml. It provides guidance on:
Type Annotations - Strict Mypy settings require explicit types:
# Before: Mypy rejects implicit Any and untyped definitionsdef process(data, config=None): return data.get("value")
# After: Explicit types, no implicit optionaldef process(data: dict[str, str], config: Config | None = None) -> str: return data.get("value", "")Naming and Style - Enforces snake_case functions, PascalCase classes, CONSTANT_CASE constants. Uses Click for CLIs with kebab-case flags (--output-file).
Quality Gates - Run before committing:
uv run ruff check && uv run ruff format --check && uv run mypy && uv run pytestProject Setup - For new projects, the skill provides ready-to-use pyproject.toml templates with Tenzir metadata, Hatchling build config, and standard tool configurations.