Aller au contenu

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-figures161 kitsyesouiouiouiouioui
sprezzature-maps1 kityesouiouiouiouioui
sprezzature-colors1 kityesouiouiouiouioui
sprezzature-accessibility1 kityesouiouiouiouioui
sprezzature-audiopas encoreyesouiouiouiouioui
sprezzature-cli-gui1 kityesouiouiouiouioui
sprezzature-ux-laws1 kityesouiouiouiouioui
sprezzature-uinot yetyesyesyesyesyesyes
sprezzature-publishnot yetyesyesyesyesyesyes
sprezzature-videopas de kityesyesyesyesyesyes

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.