paquets autonomes
Paquets
Chaque outil ici est une seule implémentation qu’on atteint de six façons. Laquelle vous convient dépend de ce que vous faites : envoyer un fichier unique à un collègue, importer une fonction, taper une commande, l’appeler depuis un autre langage, la confier à un agent, ou laisser Claude lire le skill. Aucune de ces situations ne devrait exiger un outil différent.
Chaque paquet est sous licence BSD-3-Clause, local d’abord, et versionné séparément. Les dix sont publiés sur PyPI : un simple pip install suffit.
Six portes d’entrée
La règle : ce sont des surfaces, jamais des réimplémentations. Une route, une description d’outil et une ligne de commande appellent la même fonction ; quand elles divergent, c’est un bug, pas une variante. Cinq de ces six sont le contrat que tient chaque paquet — librairie, ligne de commande, HTTP, outils d’agent, skill. Le kit zip est une façon de livrer l’une d’elles, pas une sixième implémentation.
zip
Un kit autonome
Un dossier qui tourne sur une machine où rien n’est installé : le générateur, le moteur de dessin en un seul fichier, les données, une page qui ouvre le résultat, et un mode d’emploi. Sans réseau, sans clone, sans compte. C’est la forme qui s’attache à un courriel.
bibliothèque
Des fonctions Python
On les importe et on les appelle. Typées, documentées, et sans la moindre dépendance à une bibliothèque graphique : le SVG est écrit directement, donc vous n’installez que ce que vous avez demandé.
cli
Deux lignes de commande sur un seul moteur
Chaque paquet livre une porte argparse et sa jumelle Click — make-a11y et sprezzature-accessibility, make-colors et sprezzature-colors, et ainsi de suite. argparse parce qu’elle est dans la bibliothèque standard et donc toujours là ; Click parce que ceux qui l’utilisent s’y attendent. Quand un paquet a plusieurs outils, les deux portes lisent un seul catalogue : aucune ne peut proposer une commande qui manque à l’autre. Là où Click n’est pas déjà nécessaire, c’est un extra et l’import est gardé : un paquet dont l’audit tourne sur la bibliothèque standard seule le reste.
api
En HTTP, via FastAPI
Les mêmes fonctions en HTTP, pour que n’importe quel langage capable d’émettre une requête puisse s’en servir. Avec la documentation OpenAPI sur /docs — c’est aussi ce qui garde les noms d’arguments honnêtes : ils sont engendrés depuis les signatures, pas écrits à la main.
mcp
Outils d’agent, via FastAPI MCP
Les routes HTTP republiées en outils Model Context Protocol, pour qu’un assistant les appelle comme de vrais outils au lieu de deviner une ligne de commande. Volontairement une enveloppe au-dessus des routes existantes : un serveur MCP écrit à la main serait une seconde copie de la surface, libre de diverger.
skills
Skills, pour Claude et pour OpenCode
Le jugement qui n’est pas dans le code : quand choisir un type de graphique, ce qui rend un titre honnête, quelle vérification lancer avant de livrer. MCP donne à un agent la capacité ; un skill lui donne le goût. Les deux runtimes lisent la même matière.
Où chaque surface existe vraiment
Cinq surfaces, c’est le contrat, et les dix paquets le tiennent. Chacun porte au-dessus de sa bibliothèque une API HTTP et une surface MCP : les mêmes fonctions, jamais une seconde copie. Le zip est la sixième porte et le contrat ne le doit pas — cinq paquets livrent une boîte à outils (accessibility, cli-gui, colors, maps, ux-laws), figures en livre une par figure à la place (160) et maps douze plaques en plus de la sienne ; audio, publish et ui n’en ont pas encore. Les skills n’ont pas besoin d’une seconde version pour OpenCode : les deux runtimes lisent le même SKILL.md.
| Paquet | Zip | Bibliothèque | CLI | API | MCP | Skill Claude | Skill OpenCode |
|---|---|---|---|---|---|---|---|
| sprezzature-figures | 161 kits | yes | oui | oui | oui | oui | oui |
| sprezzature-maps | 1 kit | yes | oui | oui | oui | oui | oui |
| sprezzature-colors | 1 kit | yes | oui | oui | oui | oui | oui |
| sprezzature-accessibility | 1 kit | yes | oui | oui | oui | oui | oui |
| sprezzature-audio | pas encore | yes | oui | oui | oui | oui | oui |
| sprezzature-cli-gui | 1 kit | yes | oui | oui | oui | oui | oui |
| sprezzature-ux-laws | 1 kit | yes | oui | oui | oui | oui | oui |
| sprezzature-ui | not yet | yes | yes | yes | yes | yes | yes |
| sprezzature-publish | not yet | yes | yes | yes | yes | yes | yes |
| sprezzature-video | pas de kit | yes | yes | yes | yes | yes | yes |
Chaque ligne est sur PyPI, et pip install sprezzature, sans option à choisir, installe les dix. Chaque paquet demande Python 3.10 ou plus ; le hub et les paquets dont les dépendances plafonnent la version s'arrêtent à Python 3.13. sprezzature-ui et sprezzature-publish ont été les deux dernières à y arriver, le 19 octobre 2026.
Outils déterministes
sprezzature-figures
Figures
+150 types de graphiques en SVG écrit à la main, plus la boucle Ralph Eyeball, l’explicabilité et les graphes causaux.
pip install sprezzature-figures
Dépôt →
sprezzature-maps
Cartes
Cartographie SVG écrite à la main, séparée de sprezzature-figures : une choroplèthe Equal Earth à rampe OKLCH, et des cartes de situation en conique conforme de Lambert, toutes deux avec un relief chaud/froid à partir d'une élévation réelle.
pip install sprezzature-maps
Dépôt →
sprezzature-colors
Couleurs
Audit de contraste WCAG avec corrections par voisinage OKLCH, simulation des déficiences de la vision des couleurs, une palette choisie et un export Tailwind.
pip install sprezzature-colors
Dépôt →
sprezzature-accessibility
Accessibilité
Un linter d’accessibilité HTML statique : des règles WCAG/WAI décidables depuis la source, sans navigateur ni DOM. Une barrière pre-commit rapide.
pip install sprezzature-accessibility
Dépôt →
sprezzature-cli-gui
CLI → interface web
Génère une interface HTML d’un seul fichier depuis n’importe quel CLI Python : introspection d’argparse, Click ou Typer, sans étape de build.
pip install sprezzature-cli-gui
Dépôt →
sprezzature-ux-laws
Lois de l’UX
Un auditeur statique des lois de l’UX pour le HTML : Hick, Miller, Fitts, Jakob, Tesler et d’autres, décidables depuis la source.
pip install sprezzature-ux-laws
Dépôt →
sprezzature-audio
Audio
Sous-titres locaux (whisper.cpp), diarisation et qui-est-qui, narration et traduction. Les moteurs ML sont des extras optionnels.
pip install sprezzature-audio
Dépôt →
sprezzature-publish
Publish
Un dossier de Markdown devient un site que quelqu’un peut trouver : pages, balises, favicons, les index que robots et modèles de langue vont chercher — et une narration avec un suivi qui surligne la phrase prononcée.
pip install sprezzature-publish
Dépôt →
sprezzature-ui
UI
La moitié déterministe d’un skill d’interface : trouver les chaînes qui ont leur place dans un catalogue de traduction, et échafauder ce catalogue. Écrire l’interface est le travail du modèle.
pip install sprezzature-ui
Dépôt →
sprezzature-video
Affirmations d'un film
Vérifie ce qu'un film affirme sur le code dont il parle : affirmations déclarées vérifiées, nombres non déclarés attrapés, sous-titres depuis l'audio mesuré.
pip install sprezzature-video
Repository →
Vous cherchez plutôt les skills pour l’agent ? La couche SKILL.md se distribue ensemble sous forme de bundle, dans la section Pour commencer.
Questions fréquentes
Faut-il installer les dix paquets sprezzature ?
Non : chaque paquet sprezzature s'installe seul, par exemple pip install sprezzature-colors, sans option à choisir. pip install sprezzature est le raccourci qui installe les dix d'un coup, avec la commande sprezzature-skills.
Comment installer les skills sprezzature pour mon agent ?
Installez le hub sprezzature avec pip install sprezzature, puis lancez sprezzature-skills --install pour copier les skills dans ~/.claude/skills pour Claude Code, ou sprezzature-skills --install --agent opencode pour OpenCode.
Comment mettre à jour sprezzature ?
Mettez à jour tous les paquets sprezzature d'un coup avec pip install --upgrade sprezzature, puis relancez sprezzature-skills --install pour que les copies lues par votre agent suivent les paquets installés.
Peut-on appeler un paquet sprezzature depuis un autre agent que Claude Code ?
Oui : chaque paquet sprezzature fournit un serveur MCP, par exemple sprezzature-figures-mcp, que tout client du Model Context Protocol peut appeler. Chaque paquet a aussi une bibliothèque Python, une ligne de commande et une API HTTP avec image Docker.
Où est le code source de chaque paquet sprezzature ?
Chaque paquet sprezzature a son propre dépôt sur GitHub, lié depuis sa ligne dans le tableau de cette page, sous licence BSD 3-Clause.