lang-py

Standardize Python code style, typing, testing, and concurrency practices.

Updated Mar 19, 2026
One-click install
npx skills add https://github.com/dragoscirjan/opencode-config --skill lang-py
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: lang-py
Source: https://github.com/dragoscirjan/opencode-config/tree/main/skills/lang-py
Command: npx skills add https://github.com/dragoscirjan/opencode-config --skill lang-py

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill gives Python projects a consistent development standard so code stays readable, typed, testable, and easier to maintain across teams.

Core Features & Use Cases

  • Style Guidance: Aligns Python code with Google Python Style and PEP 8 conventions for clear, idiomatic structure.
  • Tooling Expectations: Establishes a practical workflow around ruff for linting and formatting, mypy for type checking, pytest for tests, and uv for dependency management.
  • Safe and Scalable Patterns: Encourages explicit exception handling, generator-based processing for larger data sets, and asyncio TaskGroup for structured concurrency in I/O-heavy code.
  • Use Case: Apply it when reviewing or writing a Python service, CLI, or automation script that must meet strong consistency, typing, and testing standards.

Quick Start

Use the lang-py skill to review this Python codebase and rewrite the module to follow its style, typing, testing, and concurrency standards.

Frequently Asked Questions about lang-py

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I standardize Python code to follow Google style and PEP 8 conventions?

To standardize Python code, apply guidelines enforcing Google Python Style and PEP 8. It aligns code structure, typing, and testing practices, ensuring your Python services and scripts remain readable and maintainable across teams.

What's the best way to configure ruff, mypy, and pytest for a Python project?

Configure ruff, mypy, and pytest using this Skill's tooling expectations. It establishes a practical workflow using ruff for linting, mypy for type checking, pytest for tests, and uv for dependency management to keep projects consistent.

Does this Skill support asyncio TaskGroup for structured concurrency in Python?

Yes, it supports asyncio TaskGroup for structured concurrency. This Skill mandates safe, scalable patterns for I/O-heavy code, explicitly requiring asyncio TaskGroup usage to manage structured concurrency in Python services and automation workflows.

Are mandatory type hints required when writing Python modules with this Skill?

Yes, mandatory type hints are required. This Skill enforces strict typing standards for Python modules, scripts, and services, requiring explicit type hints and mypy type checking to ensure code remains testable and easier to maintain.

How do I handle large data sequences in Python without consuming too much memory?

To handle large data sequences efficiently, use generator-based processing. This Skill encourages idiomatic generator usage for large datasets, alongside explicit exception handling, ensuring scalable and memory-safe data processing in Python.

Can I use uv for dependency management in Python services following these standards?

Yes, you can use uv for dependency management. This Skill establishes a practical workflow around uv-aligned development patterns, integrating it with ruff, mypy, and pytest to maintain consistent tooling expectations across Python projects.