Designing Python APIs

Diseño de API de librerías Python: nombres, firmas, deprecación, manejo de errores 'fail-loud'.

Por wdm0006 · wdm0006/python-skills

Probado · Funciona ★ 9.2/10

Designing Python APIs — Diseño de API de librerías Python: nombres, firmas, deprecación, manejo de errores 'fail-loud'.

Qué hace

Guía el diseño de APIs de librerías Python — divulgación progresiva, patrones de argumentos solo por palabra clave, jerarquías de excepciones personalizadas y una lista de verificación detallada de 'fail loud, not silent' para evitar errores enmascarados. Se activa al diseñar una nueva API de librería, revisar una existente o planificar un cambio de deprecación/versionado; enlaza a una habilidad complementaria de gestión de lanzamientos para la mecánica de deprecación.

Informe de la prueba

Ejecutó una tarea real de diseño de API (add_task con priority/due/recurring/notify opcionales): la versión de la habilidad forzó argumentos solo por palabra clave para eliminar un error de trampa booleana que la línea base envió tal cual, además de una jerarquía de excepciones personalizada con sugerencias en lugar de una Exception simple.

Probado el: 2026-07-14 · Claude Code 2.x (agent harness)

Instalación

git clone https://github.com/wdm0006/python-skills
cd python-skills
mkdir -p ~/.claude/skills
cp -r skills/python/api-design ~/.claude/skills/designing-python-apis

Comandos y prompts de ejemplo

  • /designing-python-apisDiseño de API de librerías Python: nombres, firmas, deprecación, manejo de errores 'fail-loud'.

Los skills se activan con peticiones en lenguaje natural, sin comandos que memorizar. Tras instalarlo, prompts como estos lo activan (en inglés):

  • Help me design the public API for a new Python caching library.
  • Review this library's function signatures before we hit v1.0.
  • How should I deprecate a parameter without breaking callers?