← Tous les articles

~/Library/Caches : le dossier unique derrière la moitié de ce blog

Presque tous les caches d'un Mac vivent sous ~/Library/Caches. Voici comment lire ce dossier et classer les applications par taille.

· Mis à jour le 14 septembre 2026
macOSStorageCacheLibrary

D’autres guides de ce type sont pour l’instant disponibles uniquement en anglais. Voir tous les articles


Si vous avez lu plus d’un article sur ce blog, vous avez remarqué un motif : DerivedData, caches de navigateurs, caches d’applications Electron, CocoaPods, index JetBrains — une part énorme d’entre eux vivent quelque part sous un seul et même répertoire. Ça vaut la peine de regarder ce répertoire directement, une fois, plutôt qu’application par application.

open ~/Library/Caches

Le Finder masque ~/Library par défaut — maintenez Option en cliquant sur le menu Aller du Finder pour le révéler, ou utilisez la commande open ci-dessus, qui contourne entièrement le réglage des dossiers masqués.

Pourquoi ce dossier existe et pourquoi il est sûr par conception

~/Library/Caches est l’emplacement désigné par Apple lui-même exactement pour cet usage — des données que n’importe quelle application peut régénérer ou retélécharger, que le système d’exploitation est explicitement autorisé à purger sous pression de l’espace disque. Ce n’est pas une convention inventée par des développeurs ; c’est une partie documentée de l’organisation du système de fichiers d’Apple, et toute application Mac bien conçue est censée l’utiliser pour tout ce qui n’est pas essentiel.

Ce seul fait est ce qui rend ce dossier exceptionnellement sûr à vider en bloc, comparé à presque n’importe où ailleurs sur votre disque : par la conception même d’Apple, rien ici n’est censé être la seule copie de quoi que ce soit d’important. Les exceptions pratiques — une poignée d’applications qui détournent le dossier Caches pour des données qui ne sont pas vraiment jetables — sont assez rares pour valoir la peine d’être nommées précisément, ce que cet article fait plus bas.

Le lire directement, classé par taille

du -sh ~/Library/Caches/* 2>/dev/null | sort -hr | head -30

Sur presque n’importe quel Mac utilisé depuis plus d’un an, cette seule commande fait remonter exactement les mêmes noms couverts dans les autres guides de ce blog : com.apple.Safari, Google/Chrome, org.swift.swiftpm, Homebrew, CocoaPods, pip, JetBrains, plus des dizaines d’entrées plus petites provenant d’applications que vous ne penseriez jamais à vérifier individuellement.

Les noms de dossiers sont presque toujours des identifiants de paquet en DNS inversé (com.company.AppName) ou de simples noms de paquets (pip, Homebrew) — si vous en voyez un que vous ne reconnaissez pas, mdfind "kMDItemCFBundleIdentifier == '<the-name>'" vous dira généralement à quelle application installée il appartient.

L’approche « tout supprimer en bloc, sans risque »

Pour la plupart des gens, la plupart du temps, c’est vraiment sans problème :

rm -rf ~/Library/Caches/*

Chaque application bien conçue reconstruit ce dont elle a besoin depuis ce dossier la prochaine fois qu’elle se lance — c’est toute la raison d’être de ce répertoire. Le coût visible est la somme de chaque coût individuel couvert ailleurs sur ce blog : les navigateurs retéléchargent leurs ressources, les gestionnaires de paquets retéléchargent à la prochaine installation, l’index d’Xcode se reconstruit, et ainsi de suite — rien ne casse, plusieurs choses sont brièvement plus lentes.

Les exceptions à connaître par leur nom

Un petit nombre d’applications utilisent leur sous-dossier Caches pour des données plus coûteuses à perdre que le mot « cache » ne le laisse penser, couvertes plus en détail dans leurs propres articles :

  • L’IndexedDB de Slack peut contenir des brouillons de messages non envoyés — voir le guide Slack et Discord.
  • L’IndexedDB de n’importe quelle application utilisé comme stockage local-first (certaines PWA, certaines applications de prise de notes) — voir le guide des caches de navigateur.
  • Le cache de Docker vit techniquement entièrement en dehors de ce dossier — il se trouve à l’intérieur d’une image disque de VM sous ~/Library/Containers, pas ~/Library/Caches, ce qui vaut la peine d’être su pour qu’un nettoyage en bloc de Caches ne crée pas un faux sentiment d’avoir aussi traité Docker. Voir le guide de l’espace disque Docker.

Tout le reste couvert sur ce blog — DerivedData vit techniquement sous ~/Library/Developer, pas ~/Library/Caches, un autre dossier qu’il vaut la peine de connaître, situé juste en dehors du rayon d’action de celui-ci — est soit directement à l’intérieur de ~/Library/Caches, soit régi par le même principe « sûr à régénérer », même quand Apple l’a classé sous un répertoire de premier niveau légèrement différent.

Pourquoi un scan bat quand même une suppression en bloc

rm -rf ~/Library/Caches/* est sûr, mais c’est aussi aveugle — ça ne peut pas vous dire quelles trois applications sont responsables de 40 des 45 Go présents, et ça ne peut pas vous avertir de l’exception IndexedDB de Slack évoquée plus haut avant qu’elle ne se produise. Une répartition octet par octet, triée et nommée, transforme « vider le dossier de cache et espérer » en « voici les quatre choses qui valent réellement la peine d’être connues, dans l’ordre ».

DevCruft, une application Mac gratuite pour développeurs, est en cours de création. Elle est conçue pour lire exactement ce dossier — plus DerivedData, le stockage des conteneurs de Docker, et tout le reste qui vit juste à côté — et vous montrer la même répartition classée que produit la commande du ci-dessus, sauf que chaque entrée sera étiquetée avec ce qu’elle est réellement et si elle est sûre, plutôt qu’un identifiant de paquet que vous devez rechercher à la main. Inscrivez-vous sur la liste d’attente pour savoir quand elle sortira.

Ceci est le dernier de dix guides ajoutés dans cette série. Pour le tour d’horizon original, plus large, de tout ce qui remplit le Mac d’un développeur, commencez par le guide complet du stockage pour développeurs.

Une application gratuite pour cela est en préparation.

Nous développons DevCruft pour trouver chaque cache évoqué dans des guides comme celui-ci et montrer ce que chacun vous coûte. Rejoignez la liste d’attente pour être prévenu du lancement.

Un seul e-mail au lancement, rien d’autre. Vous pouvez nous demander à tout moment de vous retirer de la liste. Politique de confidentialité