Commencer

Le plugin frontend-design de Claude Code : installation, fonctionnalités et limites

La compétence de design frontend d'Anthropic est réellement performante, alors que la plupart des articles à son sujet ne sont que des compilations rédigées par des personnes qui ne l'ont jamais installée. Voici ce qu'elle modifie, ce qu'elle ne fait manifestement pas, et l'élément unique que vous devez ajouter vous-même.

Mis à jour 2026-08-04

Installation : deux commandes

Anthropic livre la compétence de design frontend via le plugin frontend-design, distribué sur la marketplace officielle de plugins Claude Code (vérifié par Anthropic, avec plus d'un million d'installations). Les termes peuvent prêter à confusion : le *plugin* est l'unité d'installation, la *skill* (compétence) est ce qu'il contient et ce qui s'active lors de travaux d'UI. L'installation nécessite deux commandes slash dans une session Claude Code :

  1. 1

    Ajouter la marketplace officielle

    Configuration unique ; elle enregistre le catalogue de plugins d'Anthropic.

    /plugin marketplace add anthropics/claude-code
  2. 2

    Installer le plugin

    Dès lors, la compétence se charge automatiquement dès que votre demande concerne le frontend ; il n'y a rien à invoquer manuellement.

    /plugin install frontend-design@claude-code-plugins

Ce que vous obtenez ne sont ni des scripts ni des composants : l'intégralité du contenu du plugin est un fichier SKILL.md de 55 lignes dans le dépôt public d'Anthropic. Nous l'avons analysé, c'est pourquoi la suite de cette page décrit le fichier réel, et non son résumé marketing.

Ce que la compétence modifie réellement

Une compétence est un ensemble d'instructions qui se charge lorsqu'elle est pertinente plutôt qu'à chaque requête : c'est la partie à la demande de la pile agent-file. Celle-ci s'active quand votre demande concerne l'UI (sa description couvre la « création d'une nouvelle UI ou la refonte d'une existante ») et place le modèle dans un rôle spécifique : celui d'un lead design dans un petit studio dont le client a déjà rejeté les propositions basées sur des templates. Les instructions qui suivent sont inhabituellement concrètes :

  • Elle identifie les standards de l'IA pour les interdire. Le fichier décrit les trois styles autour desquels le design par IA a tendance à « s'agglutiner » : crème chaud proche de #F4F1EA avec une police serif et un accent terracotta, presque noir avec un accent vert acide ou vermillon, et mise en page type journal à lignes fines sans arrondis. Le modèle est instruit de traiter ces styles comme des défauts à éviter, et non comme des choix. C'est l'équipe d'Anthropic elle-même qui confirme pourquoi les sites web générés par IA se ressemblent tous.
  • Elle impose un plan avant le code. Deux étapes : d'abord, brainstormer un système de tokens compact (4 à 6 valeurs hexadécimales nommées, deux rôles typographiques ou plus, un concept de mise en page, un « élément signature » pour lequel la page sera mémorisée), puis critiquer ce plan par rapport au brief en se demandant si le même résultat apparaîtrait pour n'importe quel prompt similaire, et seulement alors, coder.
  • Elle traite la typographie et la structure comme des vecteurs de sens. L'association typographique doit porter la personnalité de la page, et les dispositifs structurels comme la numérotation 01 / 02 / 03 ne sont autorisés que lorsque le contenu est réellement une séquence.
  • Elle fixe un seuil de qualité. Responsive jusqu'au mobile, focus clavier visible, respect de la réduction des mouvements, ainsi qu'une section entière sur la rédaction d'interface (voix active, « Enregistrer les modifications » plutôt que « Valider », erreurs expliquant ce qui s'est passé).

C'est un brief de design véritablement solide, et c'est la raison pour laquelle le plugin vaut la peine d'être installé. Notez cependant ce que le processus produit : un nouveau système de tokens, inventé pour chaque brief. C'est là que s'arrête son champ d'action, et le fichier lui-même le suggère : « Les créateurs humains ont une mémoire et essaient toujours de faire quelque chose de nouveau ». La compétence n'a pas de mémoire. La vôtre doit résider ailleurs.

La lacune : le goût n'est pas la même chose que les valeurs

Une compétence définit *comment décider*. Elle ne définit pas *ce qui a été décidé*. Cette distinction semble académique jusqu'à ce que l'on compare deux sessions côte à côte.

Relisez le processus en deux étapes : la compétence demande au modèle d' *inventer* un système de tokens de 4 à 6 couleurs et un élément signature pour chaque brief, et de rejeter tout plan ressemblant à ce qu'il produirait pour un prompt similaire. Par session, c'est exactement la bonne instruction ; c'est ce qui rend les écrans uniques. D'une session à l'autre, c'est un moteur de divergence : la compétence n'a aucun moyen de savoir que votre couleur primaire est oklch(0.55 0.19 45), car vous ne lui avez jamais dit et il n'y a aucun endroit dans le fichier pour stocker cette information. Son propre processus pousse chaque nouvelle session vers un système différent, justifiable et inédit.

Deux sessions, deux boutons de qualité, deux bleus différents. Aucun n'est une erreur. Ensemble, ils constituent un problème de marque.
Compétence de designDESIGN.md + tokens
RessourcesJugement : comment déciderValeurs : ce qui a été décidé
EspacementUtilise une échelleDéfinit quelle échelle
CouleurChoisit un contraste suffisantNomme votre palette exacte
Persiste d'une session à l'autreOui, en tant que comportementOui, en tant que valeurs identiques
Deux écrans concordentUniquement par coïncidencePar construction
La responsabilité réelle de chaque couche.

Reproduisez-le vous-même

Ne nous croyez pas sur parole. Le test est court et le résultat sans ambiguïté.

  1. 1

    Demandez une carte de tarification dans une nouvelle session

    Avec la compétence active et sans design system présent. Conservez le résultat.

  2. 2

    Démarrez une session réellement nouvelle

    Pas un nouveau message : une nouvelle session, afin que rien ne soit conservé.

    claude
  3. 3

    Demandez un panneau de paramètres pour le même produit

    Même formulation concernant le produit, sans référence au premier composant.

  4. 4

    Comparez les deux (diff)

    Comparez la couleur primaire, le border radius, la taille de police de base et l'espacement vertical entre le label et le contrôle.

  5. 5

    Analysez le résultat objectivement

    Les deux paraîtront professionnels. Dans nos tests, trois ou quatre de ces quatre valeurs divergent, bien que chacune soit individuellement un choix raisonnable.

Si vos deux résultats concordent étroitement, vérifiez si un autre élément fournit des constantes : un fichier de thème existant, une bibliothèque de composants déjà présente dans le repo, ou une session prolongée. C'est là tout l'enjeu : des résultats concordants signifient que les valeurs proviennent d'une source durable, et non de la compétence.

Combler la lacune

Gardez la compétence. Elle remplit une fonction qu'aucun autre outil ne remplace. Ajoutez la couche qu'elle ne peut contenir : un ensemble de tokens plus un fichier DESIGN.md dans le repo, que l'agent lit au début de chaque session.

La division du travail est claire une fois les deux éléments en place. Le fichier répond à la question : *quel* bleu, *quel* radius, *quelle* échelle typographique. La compétence répond à la question : comment les composer pour créer un écran lisible. L'un ne remplace pas l'autre, et l'erreur courante est de supposer que la compétence rend le fichier inutile.

  1. 1

    Installez un kit dans le repo

    Ceci génère le fichier DESIGN.md ainsi que les fichiers de tokens que votre agent lira.

    npx --yes identityforge@latest install --client claude-code
  2. 2

    Appliquez le kit souhaité

    Les kits gratuits ne nécessitent aucun compte.

    identityforge apply ambient-sage
  3. 3

    Liez AGENTS.md à celui-ci

    Une seule ligne, pour que le contrat de design soit découvrable plutôt qu'accidentel.

    Never hardcode theme colors. Use the semantic tokens in DESIGN.md.
  4. 4

    Relancez le test des deux sessions

    Même procédure que précédemment. Les valeurs devraient maintenant concorder exactement, car elles sont lues et non redécidées.

Preview unavailable here. Browse complete kits in the kit gallery.

Donner à la compétence une base de cohérence

Un kit installe les tokens et le fichier DESIGN.md que la compétence de design ne peut pas transporter. La compétence apporte le savoir-faire ; le fichier apporte votre image de marque.

Respectera-t-elle une base de code et un thème existants, ou fera-t-elle à sa guise ?

C'est la question que les gens posent réellement sur les compétences de design, et presque rien de ce qui est écrit ne permet d'y répondre. La réponse honnête : une compétence ne respecte votre thème que dans la mesure où celui-ci existe sous forme de valeurs qu'elle peut lire. Une compétence est un ensemble d'instructions sur la manière de travailler. Elle n'est pas la source de vos valeurs.

Cette distinction détermine le résultat dans une base de code existante :

Le thème existe sous forme de tokens + DESIGN.mdLe thème existe dans Figma et dans la tête des gens
Ce que la compétence litVos valeurs réellesRien. Elle n'a aucune source
Ce qu'elle produitDes composants conformes à votre systèmeDes composants plausibles basés sur les défauts de la bibliothèque
D'une session à l'autreStable : relu à chaque foisDiverge, puis continue de diverger
Ce qu'il faut corriger en prioritéRienLes valeurs manquantes, pas la compétence
La même compétence, dans deux bases de code différentes. La différence ne vient pas de la compétence.

Une compétence ne peut pas fournir des valeurs qui ne lui ont jamais été données

Si une compétence produit un résultat hors-charte dans une base de code thémée, la cause habituelle est que le thème n'est pas lisible depuis le dépôt. Ajouter une meilleure compétence ne règlera pas le problème. Ajouter les valeurs, oui.

Il existe une version mesurable de ce phénomène. Nous avons analysé 299 fichiers DESIGN.md publics et avons constaté que sur les 72 décrivant un système visuel, 86 % n'utilisent aucun nom de rôle de couleur sémantique : ils listent des codes hexadécimaux ou nomment les couleurs par leur teinte. Une compétence à laquelle on donne --primary peut appliquer votre système à un composant que personne n'a décrit. Une compétence à laquelle on donne un tableau de codes hexadécimaux ne peut que copier, et c'est là qu'elle commence à improviser.

  1. 1

    Vérifiez si votre thème est lisible

    Cherchez un fichier DESIGN.md ou un fichier de tokens à la racine du dépôt. Si la seule source est Figma, la compétence n'a aucune base de travail.

  2. 2

    Rendre les valeurs sémantiques

    Utilisez des rôles plutôt que des teintes, afin que la compétence puisse les placer correctement dans des cas que vous n'avez jamais spécifiés.

  3. 3

    Les pointer depuis AGENTS.md comme une interdiction

    Never hardcode theme colors, spacing or radii. Use the tokens in DESIGN.md.
  4. 4

    Relancer le même build dans une nouvelle session

    Même couleur primaire, même rayon : cela signifie que le modèle lit les instructions. Des approximations signifient qu'il s'appuie sur sa mémoire, et que celle-ci s'estompe.

Skill, plugin ou fiche sur une marketplace ?

La plupart des articles à ce sujet sont des comparatifs qui utilisent ces trois termes indifféremment. Ils ne désignent pas la même chose, et cette différence détermine si l'élément que vous avez installé peut même être chargé.

Ce que c'estComment il atteint le modèle
Un skillUn répertoire contenant un fichier SKILL.md : une description accompagnée d'instructionsLe modèle le charge lorsque la description correspond à votre demande
Un pluginUn package capable de regrouper des skills, des commandes, des sous-agents et des hooksVous l'installez une seule fois ; tout ce qu'il regroupe devient alors disponible
Une fiche marketplaceUne entrée d'index pointant vers un plugin publié par un tiersRien n'est chargé depuis une fiche. C'est une page de catalogue
Trois termes utilisés pour une seule chose dans la plupart des comparatifs, et leur définition réelle.

La conséquence concrète réside dans la condition de chargement. Un skill est sélectionné par le modèle d'après sa description ; il n'intervient donc que si votre requête ressemble à un travail de design. Demandez « une page de paramètres » et il s'active. Demandez de « corriger le padding à la ligne 40 » et il se peut qu'il ne le fasse pas, car cela ressemble à une édition plutôt qu'à une tâche de design, et vous obtiendrez une modification ordinaire sans le soin pour lequel vous avez installé le skill.

Une méthode simple pour savoir s'il s'est activé

Lancez la même requête deux fois dans des sessions distinctes : une fois formulée comme une tâche de design et une fois comme une édition mécanique. Si les résultats diffèrent par le rythme des espacements et la couverture des états plutôt que par la simple formulation, vous observez l'activation et la désactivation du skill. C'est ce dysfonctionnement que les utilisateurs décrivent en disant « ça marche parfois ».

Quand le skill et votre fichier DESIGN.md sont en contradiction

C'est la question que les comparatifs ignorent totalement, et c'est pourtant celle qui importe une fois que vous possédez les deux. Ils entrent en conflit car ils sont écrits par des personnes différentes pour des objectifs différents. Votre fichier indique que la couleur primaire est oklch(0.55 0.19 45). Le jugement du skill indique qu'une couleur primaire doit respecter un seuil de contraste avec la surface sur laquelle elle repose. Sur une carte claire, ils sont d'accord. Sur votre surface sombre surélevée, ce n'est peut-être plus le cas.

Aucune des deux couches n'a tort, et il n'y a pas d'arbitre intégré : le modèle tranche, et par défaut, il privilégie l'instruction la plus spécifique et la plus récemment lue. C'est pourquoi la résolution doit être consignée par écrit plutôt que supposée :

  1. Les valeurs ne sont pas négociables ; la composition, si. Précisez-le ainsi dans AGENTS.md. Le hex, le rayon et l'échelle typographique proviennent du fichier. La manière dont ils sont agencés sur un écran relève du skill.
  2. Offrez au fichier la porte de sortie dont le skill a besoin. Le conflit mentionné ci-dessus n'existe que parce que le système n'a qu'une seule couleur primaire. Proposez une couleur primaire lisible également sur vos surfaces sombres, ou un couple documenté, et le désaccord disparaît au lieu d'être arbitré session après session.
  3. Rédigez des interdictions, pas des préférences. « Préférer les tokens sémantiques » perd face à un argument de contraste spécifique. « Ne jamais coder en dur les couleurs du thème » ne perd pas, car cela ne laisse aucune place à l'interprétation.
  4. Attendez-vous à un silence en cas de conflit. Le modèle ne vous préviendra pas qu'il a outrepassé votre token. La seule détection fiable consiste à passer un grep sur le diff pour rechercher des valeurs littérales de couleur et d'espacement.
# the only conflict detector that actually fires: literals in the diff
git diff | grep -nE '#[0-9a-fA-F]{3,8}|oklch\(|rgb\(|[0-9]+px'

Faites cela sur chaque diff généré par un agent. Un résultat vide signifie que les valeurs ont été respectées. Tout résultat indique un endroit où un jugement a discrètement remplacé une décision que vous aviez déjà prise ; c'est la même dérive que celle du test des deux sessions, mais arrivant par une autre porte.

Le skill vaut-il vraiment la peine d'être installé ?

Oui. Il améliore sensiblement la qualité d'exécution des écrans individuels et ne coûte rien à essayer. L'argument ici est de ne pas le considérer comme une solution complète, et non de rejeter le skill lui-même.

Un design system rend-il le skill redondant ?

Non, et c'est l'erreur symétrique. Les tokens indiquent à un agent quelles valeurs utiliser ; ils ne disent rien sur la composition d'un écran pour qu'il soit lisible. Des projets dotés d'un système solide mais sans directives de design produisent des mises en page respectant la marque, mais avec une hiérarchie visuelle faible.

Un prompt plus long corrigera-t-il l'incohérence entre les sessions ?

Seulement au sein d'une même session, et de moins en moins à mesure que celle-ci s'allonge. Une nouvelle session repart de zéro ; tout ce que vous voulez pérenniser doit donc résider dans un fichier.

Si je ne peux en choisir qu'un, le skill de design ou un DESIGN.md ?

Le fichier, sans hésitation. Sans lui, chaque session redéfinit votre image de marque et le résultat diverge durablement. Sans le skill, vous obtenez des écrans conformes à la marque mais avec une hiérarchie plus faible, ce qui constitue un plafond de qualité plutôt qu'un problème cumulatif. Réglez d'abord le problème cumulatif.

Cela s'applique-t-il aussi à Cursor et aux autres agents ?

Ce skill spécifique appartient à Claude Code, mais la nature de la lacune est universelle. Tout mécanisme apportant un jugement de design sans valeurs de design produit la même incohérence entre les sessions.