diff --git a/book/src/cli.md b/book/src/cli.md
index 80d0a41f10a7b44a371bac5f71ce51066c228f19..20c22f4d3de02577983a029f69f7bc023beac262 100644
--- a/book/src/cli.md
+++ b/book/src/cli.md
@@ -4,9 +4,16 @@
 
 Les concepts abordés dans cet exemple sont:
 
-1. [L'interface en ligne de commande et l'utilisation de librairies externes.](#linterface-à-la-ligne-de-commande-et-lutilisation-de-librairies-externes)
-2. [Les entrées / sorties.](#les-entrées--sorties)
-3. Une gestion des erreurs plus ergonomique.
+- [Interface en ligne de commande et entrées / sorties](#interface-en-ligne-de-commande-et-entrées--sorties)
+  - [Concepts](#concepts)
+  - [Discussion](#discussion)
+  - [L'interface à la ligne de commande et l'utilisation de librairies externes](#linterface-à-la-ligne-de-commande-et-lutilisation-de-librairies-externes)
+    - [Le `builder` pattern](#le-builder-pattern)
+      - [Gestion d'erreur un peu simplifiée](#gestion-derreur-un-peu-simplifiée)
+    - [Le `derive` pattern](#le-derive-pattern)
+  - [Les entrées / sorties](#les-entrées--sorties)
+    - [Lecture de fichier](#lecture-de-fichier)
+    - [Écriture dans un fichier](#écriture-dans-un-fichier)
 
 ## Discussion