Aller au contenu

Sprezzature

au sens large
Créer et auditer des figures, des visualisations pour app et contenu web,
fidèles à une exigence d'accessibilité, de rigueur chromatique et d'ergonomie.

Une minute

Ce que fait la suite, et la seule chose que personne d'autre ne fait : elle refuse de croire une figure qu'elle n'a pas regardée. Français de bout en bout — à l'écran, dans la voix, dans les sous-titres.

Dix autres films, un par paquet →

Premiers pas

Sprezzature, ce sont des skills pour Claude Code ou OpenCode. Installez ceux que vous voulez, puis demandez en français. Le skill produit l'artefact et l'audite.

1 · Installer

Récupérez la dernière release, copiez les skills voulus dans votre environnement.

VERSION=$(curl -fsSL https://api.github.com/repos/warith-harchaoui/sprezzature/releases/latest \
  | sed -n 's/.*"tag_name": *"v\([^"]*\)".*/\1/p')    # la dernière release, résolue
curl -L https://github.com/warith-harchaoui/sprezzature/releases/download/v${VERSION}/sprezzature-skills-${VERSION}.tar.gz | tar xz

mkdir -p ~/.claude/skills          # OpenCode : ~/.opencode/skills
cp -r sprezzature-ui sprezzature-figures ~/.claude/skills/

Vous ne voulez qu’un seul outil, sans agent ? Chaque outil déterministe existe aussi en paquet pip autonome. Voir Paquets.

2 · Demander, en français

Les phrases déclencheuses aiguillent la demande ; le skill la produit, puis l'audite selon les règles.

  • « rends cette page accessible » → sprezzature-accessibility audite le HTML et liste quoi corriger.
  • « fais une figure de ce CSV » → sprezzature-figures la dessine, puis audite le graphique.
  • « transforme ce CLI en interface » → sprezzature-cli-gui échafaude une interface utilisable.

Toutes les options d'installation (sommes de contrôle, OpenCode + Ollama local, mises à jour) →

L'écosystème d'outils

Les scripts de chaque skill sont aussi disponibles comme paquet autonome, qu’on atteint de cinq façons : un zip autonome, une bibliothèque Python, une API HTTP, des outils MCP pour un agent, ou le skill lui-même. La même implémentation derrière toutes.

Les dix skills

Ce qui sort de l'ordinaire

Produit et audite

Construire de zéro ou sur une base de code existante, puis auditer le résultat selon les règles.

Les modèles peuvent tourner sur votre machine

Le texte, l'audio et la vision pourraient tourner en local si vous le demandez ; rien n'a besoin de quitter la machine.

Choix graphiques assumés

Les skills couvrent l'accessibilité, les couleurs, la typographie, les langues, le référencement naturel (SEO) et l'optimisation pour moteurs génératifs (GEO).

Portable entre environnements d'exécution

Les skills servent Claude Code et OpenCode ou entièrement en local et gratuitement.

Points forts

👁️ Regardez la figure avant de la livrer

Un texte, on le relit. Une figure, non : ce qui cloche est dans les pixels, pas dans le code. La Ralph Eyeball Loop prend donc ce que vous avez fait (une figure SVG, une figure TikZ, une page entière) et en fait une image avec un outil déterministe, sans aucun modèle. Ensuite, quelqu'un la regarde pour de vrai : par défaut l'agent lui-même, celui qui a écrit le code ou bien, entièrement hors ligne, un modèle de vision local optionnel. Il repère ce qu'aucun contrôle du code ne verra : une étiquette coupée au bord, une légende partie hors cadre, deux nœuds l'un sur l'autre, des couleurs qui disparaissent pour un daltonien. Vous corrigez la source, vous refaites l'image, vous regardez encore. C'est une boucle de revue prescrite, pas un critique autonome. Les autres réservent l'astuce aux pages web. Nous, on l'applique aussi aux graphiques et aux diagrammes.

Comment fonctionne la Ralph Eyeball Loop →

📐 La figure est un vrai SVG, pas une image

Une figure se livre en scalable vector graphics (SVG, graphiques vectoriels) écrit avec soin. Les générateurs produisent le balisage directement, chacun avec son viewBox, si bien que le graphique s'adapte à toute taille sans un pixel flou et que le texte reste sélectionnable. Le générateur écrit le SVG directement : il n'y a donc pas de spec de description séparée à exporter et le Portable Network Graphics (PNG) n'est qu'un export pour les endroits qui ne prennent pas le vectoriel. Le livrable, c'est le SVG.

Remerciements

Un grand merci à Audrey DEJOUX, Laurent PANTANACCE, Auguste BAUM, Julien BOYER et Jérôme GOMBERT pour les discussions fructueuses.

Palettes de couleurs depuis deraison.ai/colors, livrées ici dans le skill couleurs.

Les trois familles Roboto sont fournies sous la licence SIL Open Font.

Nous nous sommes aussi appuyés sur les Human Interface Guidelines, Google Material Design et les Laws of UX.

Questions fréquentes

Qu'est-ce que sprezzature ?

sprezzature est une suite de dix paquets Python open source, chacun aussi skill pour Claude Code et OpenCode, qui fabriquent puis auditent le soin autour du code : interfaces, figures, cartes, couleurs, accessibilité, sous-titres, narration, publication, lois de l'UX et ce qu'affirme un film. Tout ce qu'un outil fabrique est vérifié contre des règles écrites avant d'être livré.

Comment installer sprezzature ?

Lancez pip install sprezzature (Python 3.10 à 3.13) : il installe les dix paquets, sans option à choisir. Puis sprezzature-skills --install copie les skills dans ~/.claude/skills, ou sprezzature-skills --install --agent opencode pour OpenCode.

Faut-il Claude Code ou un agent IA pour s'en servir ?

Non : chaque paquet sprezzature fonctionne aussi seul, comme bibliothèque Python, ligne de commande, API HTTP avec image Docker et serveur MCP pour tout client MCP ; la skill pour agent n'est qu'une des cinq portes d'entrée. Chaque paquet a son propre pip install, listé sur la page des paquets.

sprezzature est-il gratuit ?

Oui. Tous les paquets sont open source sous licence BSD 3-Clause, sans compte, sans clé d'API ni offre payante, et le code est sur GitHub.

Mes données quittent-elles ma machine ?

Pas à moins de les envoyer vous-même ailleurs : les outils de sprezzature tournent en local. Ceux qui emploient un modèle (texte alternatif, réécriture en langage clair, traduction, relecture visuelle locale) appellent un modèle servi par Ollama sur votre machine, la transcription tourne avec whisper.cpp en local et les voix sont synthétisées en local. Quand vous les employez comme skills, l'agent lui-même suit la politique de données de son fournisseur.

Que veut dire « fabriquer et auditer » ?

Chaque paquet sprezzature produit quelque chose (une page, un graphique, une carte, des sous-titres, une narration) et l'audite, ou audite ce que vous avez déjà, contre des règles écrites, avec un rapport JSON et un code de sortie qu'une CI peut faire échouer. La plupart des audits appliquent aussi avec --fix les réparations dont ils sont sûrs.

Avec quels agents IA fonctionne-t-il ?

Les skills de sprezzature sont écrites pour Claude Code et OpenCode, et chaque paquet lance aussi un serveur MCP (par exemple sprezzature-figures-mcp) : tout agent qui parle le Model Context Protocol peut appeler les mêmes outils.

Comment signaler un problème ou contribuer ?

Pour signaler un problème de sprezzature ou proposer une modification, ouvrez une issue ou une pull request sur GitHub ; chaque paquet vit dans son propre dépôt, lié depuis sa page sur ce site. Une étoile sur le dépôt aide d'autres personnes à trouver la suite.