What problem does it solve?
Manually setting up a Python library for distribution requires configuring dozens of interdependent tools, keeping Python version pins synchronized across multiple files, and setting up CI to test across supported versions—all of which are error-prone and time-consuming to do correctly.
Core Features & Use Cases
- Full library scaffolding: Generates a complete project structure using
uv init --lib with a py.typed marker for PEP 561 compliant type hint distribution.
- Strict tooling baseline: Pre-configures Ruff linting, mypy strict type checking, pytest testing, and ensures all Python version references (
.python-version, requires-python, Ruff target-version, mypy python_version, CI matrix) stay in sync.
- CI and publishing workflow: Sets up a GitHub Actions matrix to test across all supported Python versions, plus a complete build and PyPI publishing workflow.
- Use case: If you are building a utility library to share with other Python developers, this skill handles all boilerplate setup so you can start writing library code immediately instead of configuring tooling.
Quick Start
Use the python-lib-init skill to bootstrap a new Python library project configured for PyPI distribution with synchronized version pins, strict linting, and multi-version CI testing out of the box.