A modular application for safely detecting and removing shader cache files to recover disk space and resolve graphical issues.
Shader Cache Remover cleans temporary shader files generated by graphics drivers and game engines. These files improve performance but can become corrupted or outdated over time. This tool provides a safe, user-friendly interface to manage these caches.
- Comprehensive Detection: Supports 12 distinct cache providers:
- Graphics Drivers: NVIDIA, AMD, Intel
- Game Clients: Steam, Epic Games, GOG Galaxy, EA App
- Engines: Unreal Engine, Unity
- Browsers: Chrome, Edge, Firefox, Brave, Opera
- System: Windows DirectX/OpenGL
- Safety First:
- Dry Run mode to preview deletions
- Automatic backup system with restore functionality
- Protected system paths blocklist
- Modern UI: Dark-themed interface with real-time progress and statistics
- History Tracking: Detailed logs of past cleanup operations
- System Integration: Optional notifications and scheduled cleanup tasks
git clone https://github.com/PatrickJnr/Shader-Cache-Remover.git
cd Shader-Cache-Remover
pip install -e .To install optional system integration features (notifications, tray icon):
pip install -e .[full]Run the application:
python remove_shader_cache.py- Start Cleanup: Deletes detected cache files.
- Dry Run: Simulates cleanup and logs pending deletions without touching files.
- Restore: Recover files from a previous backup.
- History: View statistics of past operations.
- Cache Providers: Toggle specific providers in the main interface.
Settings are stored in .shader_cache_remover_config.json in your user directory.
- Enable/disable auto-backups
- Set backup location
- Add custom cache paths
- Toggle provider scanning
The application follows a modular architecture:
shader_cache_remover/
├── core/
│ ├── providers/ # 12 detection providers
│ ├── detection_service.py
│ ├── cleanup_service.py
│ ├── backup_service.py
│ └── history_service.py
├── gui/
│ ├── main_window.py
│ └── dialogs/ # Restore, history, settings
└── infrastructure/
├── notifications.py
└── scheduler.py
- Python 3.8+
- Windows (primary) or Unix-like OS
Contributions are welcome. Please ensure new providers implement the BaseCacheProvider interface.