Skills Agentes

Python Packaging

Crea paquetes Python distribuibles con estructura de proyecto adecuada, setup.py/pyproject.toml y publicación en PyPI.

Reemplaza a: setup.py manual, Configuración manual de setup.cfg

Estrellas
39.8k

en todo el repo

Actividad
43

0–100, la ruta de este skill

Actualizado
hace 4 meses

último commit aquí

Commits
0

últimos 90 días

Contexto
983 tok

51 tok en reposo

Paquete
3 archivos

18 KB

Instalar

Funciona con cualquier agente que lea SKILL.md

npx -y skills add wshobson/agents --skill python-packaging --agent claude-code

Se instala solo en este repositorio.

Qué hace

  • Guía la creación de estructura de proyecto Python (source layout o flat layout) con pyproject.toml
  • Configura sistemas de build (setuptools, hatchling, flit, poetry) y metadatos según PEP 517/518/621
  • Explica cómo generar wheels y source distributions y publicarlas en PyPI/TestPyPI o repositorios privados
  • Ayuda a definir entry points para herramientas CLI y dependencias opcionales

Úsalo cuando

  • Crear librerías Python para distribución
  • Construir herramientas de línea de comandos con entry points
  • Publicar paquetes en PyPI o repositorios privados
  • Configurar estructura de proyecto Python o versionar/lanzar paquetes

No lo uses cuando

    Qué lo activa

    Di cualquiera de estas frases y el agente debería cargar este skill.

    • “Ayúdame a estructurar mi librería Python para publicarla en PyPI”
    • “Necesito un pyproject.toml para mi paquete con entry points de CLI”
    • “Quiero migrar mi setup.py a pyproject.toml”

    SKILL.md

    En inglés

    Python Packaging

    Comprehensive guide to creating, structuring, and distributing Python packages using modern packaging tools, pyproject.toml, and publishing to PyPI.

    When to Use This Skill

    • Creating Python libraries for distribution
    • Building command-line tools with entry points
    • Publishing packages to PyPI or private repositories
    • Setting up Python project structure
    • Creating installable packages with dependencies
    • Building wheels and source distributions
    • Versioning and releasing Python packages
    • Creating namespace packages
    • Implementing package metadata and classifiers

    Core Concepts

    1. Package Structure

    • Source layout: src/package_name/ (recommended)
    • Flat layout: package_name/ (simpler but less flexible)
    • Package metadata: pyproject.toml, setup.py, or setup.cfg
    • Distribution formats: wheel (.whl) and source distribution (.tar.gz)

    2. Modern Packaging Standards

    • PEP 517/518: Build system requirements
    • PEP 621: Metadata in pyproject.toml
    • PEP 660: Editable installs
    • pyproject.toml: Single source of configuration

    3. Build Backends

    • setuptools: Traditional, widely used
    • hatchling: Modern, opinionated
    • flit: Lightweight, for pure Python
    • poetry: Dependency management + packaging

    4. Distribution

    • PyPI: Python Package Index (public)
    • TestPyPI: Testing before production
    • Private repositories: JFrog, AWS CodeArtifact, etc.

    Quick Start

    Minimal Package Structure

    my-package/
    ├── pyproject.toml
    ├── README.md
    ├── LICENSE
    ├── src/
    │   └── my_package/
    │       ├── __init__.py
    │       └── module.py
    └── tests/
        └── test_module.py
    

    Minimal pyproject.toml

    [build-system]
    requires = ["setuptools>=61.0"]
    build-backend = "setuptools.build_meta"
    
    [project]
    name = "my-package"
    version = "0.1.0"
    description = "A short description"
    authors = [{name = "Your Name", email = "you@example.com"}]
    readme = "README.md"
    requires-python = ">=3.8"
    dependencies = [
        "requests>=2.28.0",
    ]
    
    [project.optional-dependencies]
    dev = [
        "pytest>=7.0",
        "black>=22.0",
    ]
    

    Package Structure Patterns

    Pattern 1: Source Layout (Recommended)

    my-package/
    ├── pyproject.toml
    ├── README.md
    ├── LICENSE
    ├── .gitignore
    ├── src/
    │   └── my_package/
    │       ├── __init__.py
    │       ├── core.py
    │       ├── utils.py
    │       └── py.typed          # For type hints
    ├── tests/
    │   ├── __init__.py
    │   ├── test_core.py
    │   └── test_utils.py
    └── docs/
        └── index.md
    

    Advantages:

    • Prevents accidentally importing from source
    • Cleaner test imports
    • Better isolation

    pyproject.toml for source layout:

    [tool.setuptools.packages.find]
    where = ["src"]
    

    Pattern 2: Flat Layout

    my-package/
    ├── pyproject.toml
    ├── README.md
    ├── my_package/
    │   ├── __init__.py
    │   └── module.py
    └── tests/
        └── test_module.py
    

    Simpler but:

    • Can import package without installing
    • Less professional for libraries

    Pattern 3: Multi-Package Project

    project/
    ├── pyproject.toml
    ├── packages/
    │   ├── package-a/
    │   │   └── src/
    │   │       └── package_a/
    │   └── package-b/
    │       └── src/
    │           └── package_b/
    └── tests/
    

    Detailed patterns and worked examples

    Detailed pattern documentation lives in references/details.md. Read that file when the navigation tier above is insufficient.

    Reproducido de wshobson/agents bajo licencia MIT. Leer esta página en markdown.

    Archivos

    3 archivos en el paquete. Solo se lee SKILL.md al activarse — las referencias se cargan si el skill decide que las necesita.

    Antes de instalar

    Para casos detallados, consulta el archivo references/details.md incluido en el skill.

    Detalles

    Creador
    wshobson
    Licencia
    MIT
    Recursos incluidos
    referencias
    Repositorio
    wshobson/agents
    Código fuente
    Ver SKILL.md

    Etiquetas

    Más de wshobson/agents

    Este repo incluye 183 skills. Si instalas uno, normalmente ya tienes los demás. Ver el pack agents entero y su comando de instalación

    Instala y opera Hermes Tweet, un plugin de Hermes Agent para investigar X/Twitter, leer timelines, analizar tweets y ejecutar operaciones privadas o de cambio de estado con aprobación previa.

    Costo de contexto al activarse
    1.4k tok
    Tamaño del paquete
    3 archivos
    Última actualización
    el mes pasado
    redes sociales

    Úsalo para mantener un almacén Markdown de conocimiento donde cada afirmación compilada se rastrea hasta una fuente inmutable y el drift se detecta con git diff sin gastar tokens.

    Costo de contexto al activarse
    1.4k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 24 días
    documentos

    Úsalo al diseñar o revisar un esquema específico de PostgreSQL: buenas prácticas, tipos de datos, indexación, restricciones, patrones de rendimiento y funciones avanzadas.

    Costo de contexto al activarse
    2k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 24 días
    bases de datos

    Úsalo cuando un proyecto guarda su estado en Superself: lee `self context` al iniciar sesión, vincula el trabajo a una work unit, reporta con evidencia y registra decisiones confirmadas.

    Costo de contexto al activarse
    1.3k tok
    Tamaño del paquete
    1 archivo
    Última actualización
    hace 24 días
    productividad

    Úsalo cuando pidan optimizar un prompt, mejorar su rendimiento, diseñar una plantilla, aplicar chain-of-thought, few-shot prompting o técnicas avanzadas de prompt engineering para producción.

    Costo de contexto al activarse
    1.3k tok
    Tamaño del paquete
    10 archivos
    Última actualización
    el mes pasado
    herramientas desarrollo

    Audita y reescribe prosa para que deje de sonar generada por máquina. Incluye modo solo-detección, modo reescritura y modo edición en el lugar, con perfiles opcionales de voz y contexto.”

    Costo de contexto al activarse
    1.9k tok
    Tamaño del paquete
    4 archivos
    Última actualización
    el mes pasado
    redaccion contenido

    Skills relacionados

    Migra de AngularJS a Angular usando modo híbrido, reescritura incremental de componentes y actualización de la inyección de dependencias.

    Costo de contexto al activarse
    1.8k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 4 meses
    herramientas desarrollo

    Implementa patrones de arquitectura backend probados: Clean Architecture, Hexagonal Architecture y Domain-Driven Design, para construir sistemas mantenibles, testeables y escalables.

    Costo de contexto al activarse
    2k tok
    Tamaño del paquete
    3 archivos
    Última actualización
    hace 4 meses
    herramientas desarrollo

    Domina asyncio, programación concurrente y patrones async/await para apps de alto rendimiento con operaciones no bloqueantes.

    Costo de contexto al activarse
    1.9k tok
    Tamaño del paquete
    2 archivos
    Última actualización
    hace 4 meses
    herramientas desarrollo