python-engineer

Automate Python development guidance for type-safe APIs and CI/CD readiness.

26|1|Updated Jan 6, 2026
One-click install
npx skills add https://github.com/gotar/opencode-config --skill python-engineer
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: python-engineer
Source: https://github.com/gotar/opencode-config/tree/main/skills/python-engineer
Command: npx skills add https://github.com/gotar/opencode-config --skill python-engineer

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This Skill provides authoritative guidance for Python development across code quality, tooling, and workflow decisions, reducing ambiguity and helping teams adopt modern best practices consistently.

Core Features & Use Cases

  • Code quality & formatting: Enforces PEP 8, type hints, and consistent style with tools like Ruff, Black, and Mypy.
  • Testing & reliability: Promotes pytest-based testing, test organization, and CI readiness.
  • Framework & packaging guidance: Helps select frameworks (FastAPI, Django, Flask) and packaging layouts (src layout, pyproject.toml, setuptools_scm).
  • Project scaffolding & templates: Provides templates and starter configurations for new Python projects.
  • Use Case: When starting a new API service, use this Skill to bootstrap the project structure and recommended tooling.

Quick Start

  • Initialize a new Python project with a src layout and pyproject.toml using the recommended tooling.
  • Install essential development dependencies: pytest, ruff, mypy, httpx, and structlog.
  • Set up a starter FastAPI or Django project example with Pydantic models and async database patterns.

Frequently Asked Questions about python-engineer

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

FAQPage Schema
How do I set up a new Python project with modern tooling like uv and ruff?

To set up a modern Python project, initialize a src layout with pyproject.toml and install development dependencies like pytest, ruff, and mypy to enforce type hints and consistent style.

What's the best way to structure a FastAPI project for type-safe APIs?

Structuring FastAPI projects for type-safe APIs requires using Pydantic models, async database patterns, and a modular src layout with pyproject.toml to ensure CI/CD readiness.

How does pyproject.toml replace setup.py for Python packaging?

Pyproject.toml centralizes modern Python packaging by defining project metadata, tool configurations, and setuptools_scm conventions, replacing fragmented setup.py files for robust modular packaging.

Can I use mypy and pytest together in a CI/CD pipeline?

You can use mypy and pytest together in CI/CD pipelines; configuring them via pyproject.toml ensures automated type checking and robust test execution before deployment.

When do I need a src layout instead of a flat layout for Python packaging?

You need a src layout for Python packaging when you want to prevent import errors during testing and ensure clean separation between source code and installed packages.

Does this guidance apply to Django and Flask ecosystems as well as FastAPI?

Yes, this guidance applies to Django and Flask ecosystems as well as FastAPI, providing framework selection advice and enforcing consistent best practices across all three.