Communitygithub.com

diagram

Utilisez le plus petit visuel lorsque la prose doit porter la structure — flux de contrôle, profondeur d'appel, propriété des modules ou forme du changement : pseudocode, arbre d'appel, arbre de fichiers/composants, diagramme Mermaid ou diff. Ignorez-le lorsque la prose répond déjà à la question.

Qu'est-ce que diagram ?

Ce skill encourage l'utilisation de diagrammes uniquement lorsque la prose oblige le lecteur à maintenir mentalement une forme entière. Il propose un vocabulaire minimal : pseudocode, arbre d'appel, arbre de composants, arbre de fichiers, diagramme Mermaid, diff ou un bloc complet. Pour les cas où le texte ne suffit pas, il autorise la création d'un unique fichier HTML (diagramme, infographie ou diapositives) stylé aux couleurs du produit. L'objectif est de placer chaque visuel à côté des quelques phrases qu'il soutient, en ne gardant que les informations utiles pour répondre à la question courante. Il est compatible avec tout agent capable de rendre du texte, du Mermaid et de créer des artefacts.

Compatible avec~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/clanker25/oh-my-claudecode/tree/HEAD/skills/diagram

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Les diagrammes sont porteurs, pas décoratifs. Utilisez-les seulement lorsque la prose force le lecteur à garder une forme entière en tête en même temps — choisissez alors la vue la plus petite qui lui permet de voir la forme plutôt que de la reconstruire à partir de phrases. Tout ceci s'affiche dans la conversation sous forme de blocs de texte ou de Mermaid ; au maximum un fichier artefact est jamais écrit.

Le vocabulaire

Choisissez une vue ; deux au maximum. Plus est du bruit.

Pseudocode — logique sans bruit de langage. Réduit une décision à sa forme de branchement :

on(request)
  if state file locked by another writer
    queue and return pending
  acquire lock
  write
  release

Arbre d'appel — flux de contrôle à l'exécution. La profondeur montre qui possède le flux ; annotez où se trouve la bordure intéressante :

acquireStateFileLockSync()
  resolveLockPath()
  openExclusive()
  writePid()

Arbre de composants — structure UI ou module, avec les limites importantes annotées en ligne :

<SettingsPage> (src/routes/settings)
  <SessionList> (possède ses propres fetchs)
  <DangerZone>
    <ConfirmButton> (désactivé jusqu'à confirmation tapée)

Arbre de fichiers — où se trouve la responsabilité ; gardez-le peu profond, une annotation par répertoire :

src/
├── hooks/        # registre de hooks + types
├── tools/        # gestionnaires d'outils MCP
└── workflow/     # registre + projections

Mermaid — interaction entre parties, flux de données ou transitions d'état :

sequenceDiagram
    participant CLI
    participant Hook
    participant State
    CLI->>Hook: PreToolUse
    Hook->>State: read mode
    Hook-->>CLI: allow / deny + facts

Diff — la forme d'un changement lorsque la structure environnante existe déjà. Faites correspondre le diff au sujet :

un changement de composant :

 <SettingsPage>
   <SessionList />
   <DangerZone>
+    <ConfirmButton />
   </DangerZone>

un changement de disposition de fichiers :

 src/tools/
-└── state-tools.ts
+└── state-tools/
+   ├── handlers.ts
+   └── schema.ts

un changement de flux de contrôle :

 commit()
   stage()
     hashBlobs()
+  writeObject()
   updateRef()
+    acquireStateFileLock()

un changement de machine d'état :

 on(request)
-  write immediately
+  if locked
+    queue and return pending
+  acquire lock
+  write
+  release

Le bloc complet — lorsque l'élision cacherait qui possède quoi ou l'ordre d'exécution, montrez l'unité complète une fois, copiable :

export function isRegistryEnabled(): boolean {
  const flag = process.env.OMC_WORKFLOW_REGISTRY;
  return flag !== '0' && flag !== 'false';
}

Quand le texte ne suffit pas

Une disposition UI, une comparaison avant/après, ou un concept trop dense pour Mermaid : écrivez un fichier HTML ciblé — un diagramme, une infographie ou quelques diapositives — stylé avec les couleurs, la typographie et les composants du produit, rempli de libellés et de données réels, fonctionnant sur desktop et mobile. Ouvrez-le avec l'ouvreur de la plateforme (start sur Windows, open sur macOS, xdg-open sur Linux) et arrêtez-vous là : un artefact, pas une galerie.

Discipline

  • Placez chaque visuel directement à côté des deux ou trois phrases qu'il soutient.
  • Ne conservez que les appels, fichiers, props, états et limites qui répondent à la question courante — chaque nœud supplémentaire est une taxe de décodage pour le lecteur.
  • Si la réponse honnête tient en une phrase, écrivez la phrase.

Skills associés