Dos herramientas, dos modelos de caché
npm mantiene una caché direccionable por contenido en %LOCALAPPDATA%\npm-cache: cada tarball descargado alguna vez, más logs y la caché _npx para ejecuciones puntuales de paquetes. Ninguna de esas cosas hace falta para que los proyectos instalados funcionen: la caché existe solo para acelerar instalaciones futuras y trabajar sin conexión. pnpm lo resuelve distinto: un único almacén (en versiones recientes, %LOCALAPPDATA%\pnpm\store) guarda los archivos reales, y cada carpeta node_modules de cada proyecto se construye con enlaces físicos hacia él. Por eso los proyectos de pnpm no multiplican el consumo de disco como los de npm — y por eso el store crece sin límite: cada versión nueva de paquete queda ahí para siempre hasta que limpies.
De ahí la sorpresa conocida: borras un proyecto viejo y el espacio no vuelve, porque los enlaces físicos del store siguen manteniendo los datos vivos. Lo que hay que vigilar es el store, no las carpetas de proyectos.
Los comandos de limpieza que valen la pena
Todo lo que sigue es seguro por diseño: las cachés son cachés, y las herramientas las reconstruyen bajo demanda:
- npm cache clean --force — vacía toda la caché de npm; las próximas instalaciones re-descargan lo que necesiten
- npm cache verify — la opción suave: recolecta basura y verifica integridad en vez de arrasar
- pnpm store prune — elimina del almacén los paquetes a los que ningún proyecto ya enlaza
- Borrar %LOCALAPPDATA%\npm-cache\_npx — cachés desechables de ejecuciones npx, siempre seguro
- npm config set cache D:\dev\npm-cache — muda la caché del SSD a un disco de datos, para siempre
- Mide antes: un escaneo de tamaños de AppData gana al borrado a ciegas — npm-cache y el store de pnpm son los dos sospechosos habituales
La trampa de los enlaces físicos en NTFS
Ahora la parte que confunde a todo el mundo: en NTFS, los datos de un archivo solo se liberan cuando desaparece el último enlace físico. Borrar el store de pnpm justo después de limpiar node_modules devuelve el espacio esperado. Borrar el store mientras los proyectos siguen enlazando a sus archivos no libera nada: los bytes se quedan en el disco mientras exista node_modules, y el Explorador sigue mostrando entradas del store que en la práctica son cáscaras vacías. El orden importa: primero elimina los proyectos (o sus node_modules), después ejecuta pnpm store prune. Los runners de CI y las máquinas que atraviesan muchos repositorios son las que más se benefician de hacerlo cada mes; en un portátil con un solo proyecto, el store rara vez merece la atención.
Preguntas y respuestas
¿Se puede borrar la carpeta npm-cache de AppData?
Sí. Solo contiene tarballs descargados y logs; npm vuelve a descargar lo que necesite en la siguiente instalación. Usa npm cache clean --force o borra la carpeta directamente.
¿Dónde está el store de pnpm en Windows?
En versiones recientes de pnpm, en %LOCALAPPDATA%\pnpm\store — la ruta exacta la da pnpm store path. Límpialo con pnpm store prune, no borrando carpetas a mano.
Consulta qué incluye antes de comprar.
La prueba única de 30 minutos incluye las funciones básicas. Las funciones marcadas PRO permanecen bloqueadas hasta activar una licencia de pago.
Sigue leyendo
Escríbenos: [email protected]