Essayer un exemple
Les exemples de cette page sont des extraits, et non des mods complets. Chacun correspond au code d’un élément et de tout ce qui y est imbriqué. Pour voir un exemple dans votre propre terminal, créez le petit mod décrit dans ces étapes et collez-y l’exemple. Le mod ajoute une commande/gallery qui ouvre un panneau et y dessine l’exemple. Un panneau est une barre latérale à côté de la transcription dans un terminal large en plein écran, ou sinon une zone encadrée au-dessus du prompt.
1
Créer le mod
Créez un répertoire nommé Indiquez votre point d’entrée dans Enregistrez le code sous
gallery contenant les répertoires .claude-plugin et hooks. Créer un mod explique les fichiers.Enregistrez le manifeste sous gallery/.claude-plugin/plugin.json :gallery/.claude-plugin/plugin.json
gallery/hooks/hooks.json :gallery/hooks/hooks.json
gallery/hooks/register.js. Il ajoute une commande /gallery qui ouvre un panneau, et dessine Plain text dans ce panneau :gallery/hooks/register.js
2
Exécuter le mod
Dans votre shell, démarrez Claude Code depuis le répertoire qui contient Dans le prompt de Claude Code, exécutez
gallery :/gallery. Un panneau s’ouvre et affiche Plain text.3
Remplacer par un exemple
Copiez un exemple de cette page. Dans
register.js, collez-le à la place de Text({ children: ['Plain text'] }), de sorte qu’il suive return, puis enregistrez le fichier. Claude Code recharge le module à chaque enregistrement : exécutez donc à nouveau /gallery pour voir le nouvel exemple.Choisir un élément
Les exemples sont regroupés selon ce que vous souhaitez afficher à l’écran :- Afficher du texte :
Text,MarkdownetLink - Afficher du code et des modifications :
Code - Disposer des éléments :
Box - Recueillir une saisie :
Button,InputetSelect - Dessiner des images :
Raster,Svg,ImageetClient
Afficher du texte
Trois éléments affichent des mots à l’écran :Text pour votre propre mise en forme, Markdown pour un contenu déjà formaté, et Link pour une URL.
Text
Text dessine une chaîne avec les styles que vous lui donnez. Cet exemple affiche une ligne pour chaque style :


dimColor dessine le texte en gris. backgroundColor ne remplit que la largeur du texte.
Markdown
Markdown met en forme le texte de la même manière que les réponses de Claude. Transmettez le contenu dans text, et non dans children :


#. Le code en ligne s’affiche en couleur sans ses backticks. Une citation s’affiche en italique avec une barre à sa gauche.
Link
Link dessine un libellé suivi de son URL :


Afficher du code et des modifications
Code dessine du texte source avec les couleurs syntaxiques propres à Claude Code, ou un diff.
Code
Indiquez le language, ou transmettez un path à partir duquel Claude Code le déduira. Avec startLine, les lignes sont numérotées à partir de ce nombre :


Code sous forme de diff
Avec format: 'diff', source contient un ou plusieurs blocs de diff unifié :


@@. Lorsqu’une ligne supprimée et une ligne ajoutée se ressemblent, les mots modifiés reçoivent une teinte plus prononcée.
Disposer des éléments
Box
Box dispose son contenu en ligne ou en colonne, et peut dessiner une bordure. Cet exemple place une ligne de mots au-dessus d’une boîte avec bordure :


Recueillir une saisie
Button, Input et Select sont des contrôles : l’utilisateur passe de l’un à l’autre avec Tab et utilise celui qui a le focus. Focus clavier et raccourcis décrit les touches qui leur parviennent.
Ouvrir un panneau avec focus: true donne le focus clavier au panneau. Les lettres saisies parviennent à un Input une fois qu’il a le focus : ajoutez donc autoFocus: true à un champ qui doit recevoir la saisie dès l’ouverture du panneau.
Button
Un bouton exécute onPress. Cet exemple montre la forme par défaut, un bouton plain avec un raccourci, et un bouton atténué :




Input
Un Input est un champ de texte sur une ligne qui exécute onSubmit lorsque l’utilisateur appuie sur Entrée :


submitLabel s’affiche après ⏎ :




Select
Un Select permet à l’utilisateur de choisir une option parmi plusieurs, et exécute onSelect avec la value de l’option :






Dessiner des images
Raster
Un Raster est une grille de cellules de caractères colorées, pour une carte de chaleur, une sparkline ou un plateau de jeu. Le terminal la dessine. Cet exemple utilise la fonction cellsOf du module de départ, qui regroupe les cellules dans la chaîne attendue par un Raster. Dessiner une grille de cellules colorées l’explique :


Raster arrondit chaque couleur à une palette plus restreinte : 0x2e7d32 s’affiche donc en #337733.
Svg
Un Svg dessine un document SVG dans l’application Desktop :
Svg s’ouvre vide. Pour y dessiner autre chose, vérifiez e.surface et renvoyez une arborescence différente.
Image et Client
Deux autres éléments n’ont pas d’exemple ici. Image dessine un PNG ou des pixels bruts dans le terminal. Client est une zone dessinée par un second fichier de votre part, pour l’animation et la saisie au pointeur. La référence des éléments répertorie leurs props.
Voir où un mod peut dessiner
Tous les exemples dessinent dans un panneau. Un mod peut aussi dessiner à d’autres endroits, et appeler Claude Code pour afficher quelque chose à sa place :- Panneau et bandeau : Choisir où dessiner
- Les lignes propres à Claude Code, comme le spinner : Modifier ce que Claude Code dessine déjà
- Toast, barre de statut et ligne de log : Afficher quelque chose sans démarrer un tour
- Boîte de dialogue de question : Suspendre un appel d’outil jusqu’à la décision de l’utilisateur
Étapes suivantes
- Dessiner dans l’interface : créer un panneau avec des onglets, étape par étape
- Tester un dessin : appuyer sur vos boutons depuis un test
- Référence des éléments : les principales props de chaque élément et les applications qui le dessinent