Designing Python APIs

Conception d'API de bibliothèque Python : nommage, signatures, dépréciation, gestion des erreurs explicite (fail-loud).

par wdm0006 · wdm0006/python-skills

Testé · Fonctionne ★ 9.2/10

Designing Python APIs — Conception d'API de bibliothèque Python : nommage, signatures, dépréciation, gestion des erreurs explicite (fail-loud).

Ce que fait

Guide la conception des API de bibliothèque Python — divulgation progressive, modèles d'arguments uniquement par mot-clé, hiérarchies d'exceptions personnalisées et une liste de contrôle détaillée 'fail loud, not silent' pour éviter les erreurs masquées. Se déclenche lors de la conception d'une nouvelle API de bibliothèque, de la révision d'une existante ou de la planification d'un changement de dépréciation/version ; renvoie à une compétence de gestion des versions complémentaire pour les mécanismes de dépréciation.

Rapport de test

J'ai exécuté une tâche de conception d'API réelle (add_task avec priorité/échéance/récurrence/notification optionnelles) : la version de la compétence a imposé des arguments uniquement par mot-clé pour éliminer un bug de piège booléen que la version de base avait livré tel quel, plus une hiérarchie d'exceptions personnalisée avec des indices au lieu d'une simple Exception.

Testé le: 2026-07-14 · Claude Code 2.x (agent harness)

Installation

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

Commandes et exemples de prompts

  • /designing-python-apisConception d'API de bibliothèque Python : nommage, signatures, dépréciation, gestion des erreurs explicite (fail-loud).

Les skills se déclenchent sur des demandes en langage courant — aucune commande à retenir. Après installation, des prompts comme ceux-ci l'activent (en anglais) :

  • 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?