python-packaging
Compila y publica paquetes de Python con PyPI
También disponible en: ActiveInferenceInstitute,wshobson
Los desarrolladores de Python luchan con flujos de trabajo de empaquetado complejos y estructuras de proyecto inconsistentes. Esta habilidad proporciona orientación completa para crear paquetes de Python profesionales utilizando estándares modernos como pyproject.toml y setuptools.
Descargar el ZIP de la skill
Subir en Claude
Ve a Configuración → Capacidades → Skills → Subir skill
Activa y empieza a usar
Pruébalo
Usando "python-packaging". Crea un pyproject.toml para un paquete llamado 'data-utils' con dependencias de Click y pandas, pytest para desarrollo, y un punto de entrada CLI
Resultado esperado:
Un pyproject.toml completo con configuración del sistema de compilación, metadatos del proyecto, dependencias con restricciones de versión, dependencias opcionales de desarrollo, puntos de entrada de scripts CLI, y configuraciones de herramientas para black, ruff y pytest.
Usando "python-packaging". ¿Cómo publico mi paquete primero en TestPyPI?
Resultado esperado:
Instrucciones paso a paso: (1) Instala twine, (2) Compila el paquete con python -m build, (3) Valida con twine check, (4) Carga a TestPyPI con twine upload --repository testpypi, (5) Prueba la instalación desde TestPyPI, (6) Publica en PyPI de producción cuando esté listo.
Auditoría de seguridad
Riesgo bajoThis skill consists entirely of markdown documentation teaching Python packaging best practices. Static analyzer flagged 118 patterns (backticks, URLs, config examples) that are documentation content, not executable code. All findings are false positives from code examples in fenced markdown blocks. No actual security risks detected.
Problemas de riesgo medio (1)
Problemas de riesgo bajo (2)
Factores de riesgo
⚙️ Comandos externos (4)
🌐 Acceso a red (3)
📁 Acceso al sistema de archivos (1)
Puntuación de calidad
Lo que puedes crear
Publicación de Autor de Biblioteca
Crea una nueva biblioteca Python para distribución en PyPI con estructura de proyecto adecuada, metadatos y flujos de trabajo de publicación automatizados.
Distribución de Herramientas CLI
Empaqueta herramientas de línea de comandos con puntos de entrada, haciéndolas fácilmente instalables vía pip con comandos ejecutables.
Gestión Empresarial de Paquetes
Configura índices de paquetes privados y paquetes de espacio de nombres para organizar código en múltiples equipos y repositorios.
Prueba estos prompts
Ayúdame a crear un nuevo paquete Python llamado 'my-tool' con un diseño src, pyproject.toml usando setuptools, y una estructura de módulos básica. Quiero incluir pytest para pruebas.
Tengo un paquete Python existente con funciones de utilidad. Muéstrame cómo agregar puntos de entrada CLI usando Click para que los usuarios puedan ejecutar 'mytool' desde la línea de comandos después de la instalación.
Crea un flujo de trabajo de GitHub Actions que compile y publique mi paquete Python en PyPI cuando cree un nuevo lanzamiento. Incluya validación de paquete y pasos de prueba en TestPyPI.
Necesito dividir la base de código de mi empresa en múltiples paquetes (company-core, company-api, company-utils) que compartan un espacio de nombres. Muéstrame la estructura completa del proyecto y las configuraciones pyproject.toml.
Mejores prácticas
- Usa el diseño src/ para prevenir importaciones accidentales desde el directorio fuente no instalado
- Define todos los metadatos en pyproject.toml siguiendo PEP 621 para empaquetado moderno
- Prueba la instalación del paquete en un entorno virtual limpio antes de publicar en PyPI
Evitar
- No uses setup.py como configuración principal - migra a pyproject.toml
- Evita el diseño plano para bibliotecas ya que permite importar sin instalación
- Nunca confirmes tokens de API ni credenciales - usa variables de entorno para autenticación PyPI