Skip to content
 
 

Repository files navigation

Linux-Mole

Deep clean and optimize your system.

Features

  • All-in-one toolkit: Unified cleanup, optimization, installer scanning, and system status in a single binary
  • Deep cleaning: Removes caches, logs, and browser leftovers to reclaim gigabytes of space
  • Disk insights: Visualizes usage, finds large files, rebuilds caches, and refreshes system services
  • Live monitoring: Shows real-time CPU, GPU, memory, disk, and network stats

Quick Start

Install (stable release):

curl -fsSL https://raw.githubusercontent.com/SpreadSheets600/linux-mole/main/install.sh | MOLE_REPO="SpreadSheets600/linux-mole" bash

Install latest main branch (nightly/edge):

curl -fsSL https://raw.githubusercontent.com/SpreadSheets600/linux-mole/main/install.sh | MOLE_REPO="SpreadSheets600/linux-mole" bash -s -- latest

Install a specific version:

curl -fsSL https://raw.githubusercontent.com/SpreadSheets600/linux-mole/main/install.sh | MOLE_REPO="SpreadSheets600/linux-mole" bash -s -- 1.27.0

Linux/WSL support: mo clean, mo optimize, mo installer, mo analyze, mo purge, and mo status are optimized for Linux and WSL.

Run:

mo                           # Interactive menu
mo clean                     # Deep cleanup
mo optimize                  # Refresh caches & services
mo analyze                   # Visual disk explorer
mo status                    # Live system health dashboard
mo purge                     # Clean project build artifacts
mo installer                 # Find and remove installer files

mo completion                # Set up shell tab completion
mo update                    # Update Linux-Mole
mo update --nightly          # Update to latest unreleased main build, script install only
mo remove                    # Remove Linux-Mole from system
mo --help                    # Show help
mo --version                 # Show installed version

mo clean --dry-run           # Preview the cleanup plan
mo clean --whitelist         # Manage protected caches
mo clean --dry-run --debug   # Detailed preview with risk levels and file info

mo optimize --dry-run        # Preview optimization actions
mo optimize --debug          # Run with detailed operation logs
mo optimize --whitelist      # Manage protected optimization rules
mo purge --paths             # Configure project scan directories
mo analyze /mnt              # Analyze mounted external drives

Command Snapshots

Snapshots captured from this repo on Linux/WSL:

$ ./mole --help
__  __       _
|  \/  | ___ | | ___
| |\/| |/ _ \| |/ _ \
| |  | | (_) | |  __/  https://github.com/SpreadSheets600/linux-mole
|_|  |_|\___/|_|\___|  Deep clean and optimize your Linux system.
...
  mo analyze /mnt              Analyze external drives only
$ ./mole --version
Linux-Mole version 1.27.0
OS: Debian GNU/Linux 13 (trixie)
Architecture: x86_64
Kernel: 6.6.87.2-microsoft-standard-WSL2
SIP: Unknown
Disk Free: 938G
Install: Manual
Shell: /usr/bin/zsh
$ ./mole clean --help
Usage: mo clean [OPTIONS]

Clean up disk space by removing caches, logs, and temporary files.

Options:
  --dry-run, -n     Preview cleanup without making changes
  --whitelist       Manage protected paths
  --debug           Show detailed operation logs
  -h, --help        Show this help message

Linux/WSL targets:
  ~/.cache, ~/.local/share/Trash/files, ~/.npm/_cacache, ~/.cargo/registry/cache, /tmp (user-owned only)

Tips

  • Video tutorial: Watch the Linux-Mole tutorial video, thanks to PAPAYA ้›ป่…ฆๆ•™ๅฎค.
  • Safety first: Deletions are permanent. Review carefully and preview with mo clean --dry-run. See Security Audit.
  • Debug and logs: Use --debug for detailed logs. Combine with --dry-run for a full preview. File operations are logged to ~/.config/mole/operations.log. Disable with MO_NO_OPLOG=1.
  • Navigation: Linux-Mole supports arrow keys and Vim bindings h/j/k/l.

Features in Detail

Deep System Cleanup

$ mo clean

Scanning cache directories...

  โœ“ User app cache                                           45.2GB
  โœ“ Browser cache (Chrome, Safari, Firefox)                  10.5GB
  โœ“ Developer tools (Xcode, Node.js, npm)                    23.3GB
  โœ“ System logs and temp files                                3.8GB
  โœ“ App-specific cache (Spotify, Dropbox, Slack)              8.4GB
  โœ“ Trash                                                    12.3GB

====================================================================
Space freed: 95.5GB | Free space now: 223.5GB
====================================================================

Note: Linux/WSL cleanup targets include user caches, package caches, trash files, and temporary directories.

System Optimization

$ mo optimize

System: 5/32 GB RAM | 333/460 GB Disk (72%) | Uptime 6d

  โœ“ Rebuild system databases and clear caches
  โœ“ Reset network services
  โœ“ Refresh package/runtime caches
  โœ“ Clean diagnostic and crash logs
  โœ“ Remove swap files and restart dynamic pager
  โœ“ Rebuild launch services and spotlight index

====================================================================
System optimization completed
====================================================================

Use `mo optimize --whitelist` to exclude specific optimizations.

Disk Space Analyzer

By default, Linux-Mole skips external drives under /mnt and /media for faster startup. To inspect them, run mo analyze /mnt or a specific mount path.

$ mo analyze

Analyze Disk  ~/Documents  |  Total: 156.8GB

 โ–ถ  1. โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  48.2%  |  ๐Ÿ“ Library                     75.4GB  >6mo
    2. โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  22.1%  |  ๐Ÿ“ Downloads                   34.6GB
    3. โ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  14.3%  |  ๐Ÿ“ Movies                      22.4GB
    4. โ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  10.8%  |  ๐Ÿ“ Documents                   16.9GB
    5. โ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘   5.2%  |  ๐Ÿ“„ backup_2023.zip              8.2GB

  โ†‘โ†“โ†โ†’ Navigate  |  O Open  |  F Show  |  โŒซ Delete  |  L Large files  |  Q Quit

Live System Status

Real-time dashboard with health score, hardware info, and performance metrics.

$ mo status

Linux-Mole Status  Health โ— 92  Linux Host ยท 32GB ยท Kernel 6.x

โš™ CPU                                    โ–ฆ Memory
Total   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  45.2%       Used    โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  58.4%
Load    0.82 / 1.05 / 1.23 (8 cores)     Total   14.2 / 24.0 GB
Core 1  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘  78.3%       Free    โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  41.6%
Core 2  โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  62.1%       Avail   9.8 GB

โ–ค Disk                                   โšก Power
Used    โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–‘โ–‘โ–‘โ–‘โ–‘โ–‘  67.2%       Level   โ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆโ–ˆ  100%
Free    156.3 GB                         Status  Charged
Read    โ–ฎโ–ฏโ–ฏโ–ฏโ–ฏ  2.1 MB/s                  Health  Normal ยท 423 cycles
Write   โ–ฎโ–ฎโ–ฎโ–ฏโ–ฏ  18.3 MB/s                 Temp    58ยฐC ยท 1200 RPM

โ‡… Network                                โ–ถ Processes
Down    โ–โ–โ–ˆโ–‚โ–โ–โ–โ–โ–โ–โ–โ–โ–‡โ–†โ–…โ–‚  0.54 MB/s      Code       โ–ฎโ–ฎโ–ฎโ–ฎโ–ฏ  42.1%
Up      โ–„โ–„โ–„โ–ƒโ–ƒโ–ƒโ–„โ–†โ–†โ–‡โ–ˆโ–โ–โ–โ–โ–  0.02 MB/s      Chrome     โ–ฎโ–ฎโ–ฎโ–ฏโ–ฏ  28.3%
Proxy   HTTP ยท 192.168.1.100             Terminal   โ–ฎโ–ฏโ–ฏโ–ฏโ–ฏ  12.5%

Health score is based on CPU, memory, disk, temperature, and I/O load, with color-coded ranges.

Shortcuts: In mo status, press k to toggle the cat and save the preference, and q to quit.

Project Artifact Purge

Clean old build artifacts such as node_modules, target, build, and dist to free up disk space.

mo purge

Select Categories to Clean - 18.5GB (8 selected)

โžค โ— my-react-app       3.2GB | node_modules
  โ— old-project        2.8GB | node_modules
  โ— rust-app           4.1GB | target
  โ— next-blog          1.9GB | node_modules
  โ—‹ current-work       856MB | node_modules  | Recent
  โ— django-api         2.3GB | venv
  โ— vue-dashboard      1.7GB | node_modules
  โ— backend-service    2.5GB | node_modules

We recommend installing fd for faster scans. Debian/Ubuntu: sudo apt install fd-find (fd may be named fdfind)

Use with caution: This permanently deletes selected artifacts. Review carefully before confirming. Projects newer than 7 days are marked and unselected by default.

Custom Scan Paths

Run mo purge --paths to configure scan directories, or edit ~/.config/mole/purge_paths directly:

~/Documents/MyProjects
~/Work/ClientA
~/Work/ClientB

When custom paths are configured, Linux-Mole scans only those directories. Otherwise, it uses defaults like ~/Projects, ~/GitHub, and ~/dev.

Installer Cleanup

Find and remove large installer files across Downloads, Desktop, cache, trash, and temp paths. Each file is labeled by source.

mo installer

Select Installers to Remove - 3.8GB (5 selected)

โžค โ— ubuntu-24.04.iso           5.3GB | Downloads
  โ— code_1.95.2_amd64.deb      110MB | Downloads
  โ— docker-desktop.rpm         505MB | Downloads
  โ— appimage-tool.AppImage      75MB | Desktop
  โ— cache_bundle.tar.gz        940MB | Cache
  โ—‹ legacy-installer.zip       410MB | Downloads

Quick Launchers

Launch Linux-Mole commands from Raycast or Alfred:

curl -fsSL https://raw.githubusercontent.com/SpreadSheets600/linux-mole/main/scripts/setup-quick-launchers.sh | bash

Adds 5 commands: Linux-Mole Clean, Linux-Mole Uninstall, Linux-Mole Optimize, Linux-Mole Analyze, Linux-Mole Status.

License

MIT License. Feel free to use Linux-Mole and contribute.

About

๐Ÿน Deep clean and optimize your Linux

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages