macOS · Windows · Linux

Mole

Głębokie czyszczenie, odinstalowywanie, optymalizacja, analiza dysku i monitorowanie Twojego Maca. Darmowe CLI open source, a do tego aplikacja na Maca.

English · 中文 · 繁體 · 日本語 · 한국어 · Deutsch · Français · Polski · Українська · Русский

Stars Version License Commits Twitter Telegram

Wyniki czyszczenia Mole

> 💡 To repozytorium zawiera darmowe CLI open source (`mo`). Wolisz natywną aplikację? [Mole for Mac](https://mole.fit/) to osobna aplikacja do pobrania: czyszczenie z podglądem przed usunięciem, sprawdzone pozostałości dla ponad 800 aplikacji, konserwacja, szczegółowa analiza dysku, bieżący stan systemu i sterowanie wentylatorami na obsługiwanych Macach. Na Windowsie natywną aplikacją jest [Mole for Windows](https://mole.fit/windows). `brew install mole` instaluje tylko CLI. ## Funkcje - **Kompletny zestaw narzędzi CLI**: łączy w jednym poleceniu terminala funkcje w stylu CleanMyMac, AppCleaner, DaisyDisk i iStat Menus - **Głębokie czyszczenie**: usuwa pamięci podręczne, logi, pozostałości i osierocone dane aplikacji, odzyskując miejsce na dysku - **Inteligentny deinstalator**: usuwa aplikacje razem z LaunchAgents, preferencjami i pozostałościami - **Analizator dysku**: wizualizuje zajętość dysku w interaktywnym TUI, wyszukuje duże pliki i pozwala przeglądać katalogi - **Konserwacja systemu**: czyści pamięć DNS, odświeża QuickLook i ikony oraz optymalizuje bazy danych systemu - **Monitorowanie na żywo**: pokazuje w czasie rzeczywistym CPU, pamięć, operacje dyskowe, ruch sieciowy i procesy ## Szybki start Mole wymaga macOS 12 lub nowszego i obsługuje Maki z procesorami Intel oraz Apple Silicon. Jeśli Homebrew nie obsługuje już Twojej wersji macOS, użyj instalacji skryptem. **Instalacja przez Homebrew** ```bash brew install mole ``` **Lub skryptem** ```bash curl -fsSL https://raw.githubusercontent.com/tw93/mole/main/install.sh | bash ``` **Za pomocą agenta AI** Napisz do swojego agenta: > Install Mole for me by reading https://raw.githubusercontent.com/tw93/Mole/main/llms.txt Możesz też samodzielnie zainstalować skill. Dzięki niemu Claude Code, Codex, Cursor i inne agenty pokazują każde czyszczenie z `--dry-run`, zanim cokolwiek zostanie usunięte, a odinstalowywanie aplikacji i kroki wymagające uprawnień administratora zostawiają Tobie. Aktualizacja: `npx skills update -g -y`. ```bash npx skills add tw93/Mole -a claude-code codex cursor -g -y ``` Jako plugin: w Claude Code `/plugin marketplace add tw93/Mole`, a potem `/plugin install mole@mole`; w Codex `codex plugin marketplace add tw93/Mole`, a potem `codex plugin add mole@mole`; w DeepSeek Harness `dsh plugin --profile add dsh-mole`. **Polecenia** ```bash mo # Menu interaktywne mo clean # Głębokie czyszczenie + pozostałości po odinstalowanych aplikacjach mo uninstall # Usuwanie zainstalowanych aplikacji + ich pozostałości mo optimize # Odświeżenie pamięci podręcznych i usług mo analyze # Wizualny eksplorator dysku (lub 'mo analyse') mo status # Bieżący panel stanu systemu mo purge # Czyszczenie artefaktów budowania projektów mo installer # Wyszukiwanie i usuwanie plików instalatorów mo slim # Usuwanie kodu Intel z aplikacji uniwersalnych mo touchid # Konfiguracja Touch ID dla sudo mo completion # Konfiguracja autouzupełniania w powłoce mo update # Aktualizacja Mole mo update --nightly # Aktualizacja do najnowszej niewydanej wersji z main, tylko instalacja skryptem mo remove # Usunięcie Mole z systemu mo --help # Wyświetlenie pomocy mo --version # Wyświetlenie zainstalowanej wersji ``` **Bezpieczny podgląd** ```bash mo clean --dry-run mo uninstall --dry-run mo optimize --dry-run mo purge --dry-run mo installer --dry-run mo slim --dry-run mo history mo history --json mo clean --dry-run --debug # Podgląd + szczegółowe logi mo optimize --whitelist # Zarządzanie chronionymi regułami optymalizacji mo clean --whitelist # Zarządzanie chronionymi pamięciami podręcznymi mo purge --paths # Konfiguracja katalogów skanowania projektów mo analyze /Volumes # Analiza tylko dysków zewnętrznych mo analyze /private/tmp # Przegląd katalogów tymczasowych użytkownika ```
Inne sposoby instalacji Aby zainstalować konkretne wydanie, podaj dowolny tag ze [strony wydań](https://github.com/tw93/mole/releases), z początkowym `V` lub bez niego. Aby śledzić gałąź rozwojową, podaj `main`: ```bash curl -fsSL https://raw.githubusercontent.com/tw93/mole/main/install.sh | bash -s -- 1.51.0 curl -fsSL https://raw.githubusercontent.com/tw93/mole/main/install.sh | bash -s -- main ``` `main` instaluje niewydany kod z domyślnej gałęzi, więc mogą pojawić się niedoróbki. `latest` nadal działa jako starszy alias dla `main`; wbrew nazwie nie instaluje najnowszego stabilnego wydania. Skrypt domyślnie instaluje do `/usr/local/bin`, co może wymagać hasła administratora. Zainstaluj do katalogu należącego do użytkownika, jeśli chcesz, aby kolejne `mo update` nie pytały o hasło: ```bash mkdir -p "$HOME/.local/bin" curl -fsSL https://raw.githubusercontent.com/tw93/mole/main/install.sh | bash -s -- --prefix "$HOME/.local/bin" export PATH="$HOME/.local/bin:$PATH" ``` Dodaj ten sam eksport `PATH` do `~/.zshrc` lub profilu powłoki, aby działał w nowych terminalach. Mole aktualizuje tę instalację, z której zostało uruchomione, więc nadal będzie korzystać z tego katalogu. Polecenia zmieniające pliki należące do systemu mogą nadal prosić o uprawnienia administratora. **Nix** Na macOS użytkownicy Nix mogą zainstalować flake z `main`, który zawiera niewydane zmiany: ```bash nix profile install github:tw93/mole/main#mole nix profile upgrade mole nix profile remove mole ``` W instalacji deklaratywnej dodaj `github:tw93/mole/main` jako wejście flake i użyj jego pakietu `packages.${system}.mole`. Aktualizuj i usuwaj Mole przez Nix; `mo update` i `mo remove` nie zmieniają instalacji zarządzanych przez Nix.
**Na Windowsie** ([Windows CLI](https://github.com/tw93/Mole/tree/windows#readme)) ```powershell iwr -useb https://raw.githubusercontent.com/tw93/Mole/windows/quick-install.ps1 | iex ``` **Na Linuksie** ([Linux CLI](https://github.com/tw93/Mole/tree/linux#readme)) ```bash curl -fsSL https://raw.githubusercontent.com/tw93/Mole/linux/install.sh | bash ``` Mole jest dystrybuowane wyłącznie przez Homebrew, to repozytorium i [mole.fit](https://mole.fit/). `molemac.com`, `moleapp.net` i `molefit.com` nie są Mole, a aplikacja na Windowsa pod adresem `mole.bluecatbot.com` to osobny projekt społeczności. ## Bezpieczeństwo Mole może usuwać pliki, dlatego weryfikuje ścieżki, chroni lokalizacje współdzielone i należące do systemu oraz prosi o potwierdzenie, gdy dana akcja tego wymaga. Gdy Mole nie może udowodnić, że zmiana elementu jest bezpieczna, pomija go lub odmawia wykonania. - `clean`, `uninstall`, `purge`, `installer`, `slim` i `remove` mogą usuwać pliki, więc najpierw sprawdź je z `--dry-run`, a w razie potrzeby dodaj `--debug` - Uruchamiaj Mole bez `sudo`; poprosi o uprawnienia administratora tylko wtedy, gdy będą potrzebne - `mo uninstall`, `mo analyze` i `mo slim` po potwierdzeniu domyślnie przenoszą usuwane elementy do Kosza; `clean`, `purge` i `installer` usuwają trwale. `mo uninstall --permanent` pomija Kosz - Aktywność czyszczenia jest zapisywana w `~/Library/Logs/mole/operations.log`; przejrzysz ją przez `mo history`, a wyłączysz przez `MO_NO_OPLOG=1` - Chroń pamięci podręczne przez `mo clean --whitelist`, a elementy konserwacji przez `mo optimize --whitelist` - Jeśli pliku whitelisty nie da się odczytać, `clean`, `purge` i `optimize` zatrzymują się zamiast działać bez niego Wskazówki dotyczące zgłaszania problemów, granice bezpieczeństwa i obecne ograniczenia opisują [SECURITY.md](SECURITY.md) i [SECURITY_AUDIT.md](SECURITY_AUDIT.md). ## Konfiguracja Mole działa bez konfiguracji. Te zmienne środowiskowe dostosowują go do wolnych dysków oraz zawieszonych zasobów sieciowych lub chmurowych; zwiększaj limit czasu tylko wtedy, gdy Mole zgłosi, że któryś krok przekroczył limit czasu (`timed out`). - `MOLE_TIMEOUT_QUICK_DETECT_SEC` (2): sprawdzanie dostępności poleceń - `MOLE_TIMEOUT_SHORT_QUERY_SEC` (3): lekkie zapytania, takie jak `df` i `tmutil status` - `MOLE_TIMEOUT_MEDIUM_PROBE_SEC` (5): sondy przeglądające drzewo katalogów lub korzystające z sieci - `MOLE_TIMEOUT_PKG_LIST_SEC` (10): listowanie pakietów, np. `brew list` - `MOLE_TIMEOUT_PKG_CLEANUP_SEC` (20): czyszczenie pamięci podręcznych, które przegląda dysk - `MOLE_TIMEOUT_DISK_VERIFY_SEC` (30): weryfikacja i naprawa systemu plików - `MOLE_TIMEOUT_HINT_SCAN_SEC` (15): nieograniczone skanowanie katalogów użytkownika - `MOLE_CLOUD_OFFICE_SECTION_BUDGET_SEC` (300): łączny limit czasu dla sekcji czyszczenia chmury i pakietu Office Liczba w nawiasie to wartość domyślna w sekundach. Na przykład, aby dać skanowaniu więcej czasu na wolnym dysku: ```bash MOLE_TIMEOUT_HINT_SCAN_SEC=60 MOLE_TIMEOUT_MEDIUM_PROBE_SEC=15 mo clean ``` ## Funkcje w szczegółach Poniższe przykłady są skrócone. Dostępne elementy, rozmiary i powody pominięcia zależą od Twojego Maca. ### Czyszczenie `mo clean` przegląda znane jako bezpieczne pamięci podręczne, logi, pliki tymczasowe, artefakty narzędzi deweloperskich i pozostałości po aplikacjach, które nie są już zainstalowane. Domyślnie opróżnia `~/.Trash`; aby go zachować, zaznacz Trash w `mo clean --whitelist`, czyli w tym samym menu, które chroni pamięci podręczne, które chcesz zatrzymać. Kosze woluminów, takie jak `/Volumes/*/.Trashes`, nie są przy tym opróżniane. Wybór zapisuje się w `~/.config/mole/whitelist`. Zanim dodasz własne ścieżki, otwórz menu i naciśnij Enter, aby zapisać wybór, a potem dopisz po jednej ścieżce w wierszu. Istniejący plik zastępuje opcjonalne ustawienia domyślne; wbudowane zabezpieczenia nadal obowiązują. ```text $ mo clean Clean Your Mac ⚙ Apple Silicon | Free space: 219.0GB ➤ User essentials ✓ User app cache · 18 items, 2.4GB ✓ User app logs · 7 items, 12.8MB ✓ Trash · emptied, 9 items ➤ App caches ✓ App Store cache · 8 items, 248.5MB ➤ Browsers ✓ Safari cache · 24 items, 642.1MB ✓ Chrome cache · 31 items, 1.2GB ➤ Developer tools ✓ npm cache · cleaned ◎ pnpm cache · skipped (pnpm busy) ====================================================================== Cleanup complete Removed: 4.5GB · 97 items Free space: 223.5GB (+4.5GB) ====================================================================== ``` ### Odinstalowywanie `mo uninstall` usuwa zainstalowaną aplikację razem z powiązanymi plikami, które Mole potrafi jednoznacznie przypisać do tej aplikacji. Zachowuje dane współdzielone, jeśli korzysta z nich inna zainstalowana kopia. Jeśli aplikacji już nie ma, użyj `mo clean`, aby poszukać pozostałości. Dane osobiste, w tym ustawienia i wtyczki, są domyślnie zachowywane. Naciśnij `D` w podglądzie usuwania, aby wybrać poszczególne ścieżki danych. `mo uninstall --with-data` zaczyna z zaznaczonymi danymi, z wyjątkiem profili przeglądarek i kontenerów App Group; podgląd wymienia je osobno, a `D` nadal pozwala zachować dowolną ścieżkę. Po usunięciu odwołania w konfiguracji powłoki, Hooków lub MCP są wymieniane tylko z nazwą pliku i numerem wiersza; Mole nie edytuje tych konfiguracji. ```text $ mo uninstall Select Apps to Remove 1/3 selected ➤ ● Photoshop 2024 4.20GB | 2mo ago ○ IntelliJ IDEA 2.80GB | 3d ago ○ Premiere Pro 3.40GB | 2w ago Files to be removed: ✓ Photoshop 2024, 4.20GB ✓ /Applications/Adobe Photoshop 2024/Adobe Photoshop 2024.app Personal data kept: ~/Library/Application Support/Adobe/Adobe Photoshop 2024 ~/Library/Preferences/com.adobe.Photoshop.plist D choose personal data ====================================================================== Uninstall complete Removed 1 app, freed 4.20GB: Photoshop 2024 ====================================================================== ``` ### Optymalizacja `mo optimize` wykonuje ograniczoną konserwację obsługiwanych usług Findera, sieci, baz danych i macOS. Zadania niepotrzebne, w danej chwili niebezpieczne lub niedostępne są pomijane z podaniem powodu. Użyj `mo optimize --whitelist`, aby wykluczyć zadania lub wzorce ścieżek, na przykład długo zamontowany obraz dysku w `/Volumes/mail`, który nie powinien pojawiać się jako kandydat do odłączenia. ```text $ mo optimize Optimize ⚙ System 18/32 GB RAM | 616/926 GB Disk | Uptime 6d PERFORMANCE DIAGNOSIS ✓ No sustained high-CPU bottleneck detected ➤ Finder Cache Refresh ✓ QuickLook thumbnails refreshed ✓ Icon services cache rebuilt ➤ Network Cache Refresh ✓ DNS cache refreshed ➤ Database Optimization ◎ Close these apps before database optimization: Safari ➤ Disk Health ✓ Disk verify skipped ====================================================================== Optimization Complete Applied 2 optimizations 13 unchanged | 3 skipped | 1 unavailable ====================================================================== ``` ### Analiza `mo analyze` otwiera eksplorator dysku w terminalu. Obsługuje nawigację strzałkami i klawiszami Vima, filtrowanie, zaznaczanie wielu elementów, podgląd w Finderze i potwierdzone przenoszenie do Kosza. Dyski zewnętrzne są pomijane w domyślnym przeglądzie; sprawdzisz je przez `mo analyze /Volumes` lub konkretną ścieżkę montowania. Użyj `mo analyze /private/tmp`, aby przejrzeć pliki tymczasowe użytkownika bez czynienia z nich celów automatycznego czyszczenia. Skanowanie plik po pliku liczy jednokrotnie klony APFS, które współdzielą wszystkie bloki; szybkie szacunki folderów mogą nadal liczyć współdzielone bloki więcej niż raz. Rozmiar zakończony `+` zawiera bajty zmierzone podczas częściowego skanowania; `unknown` oznacza, że rozmiaru nie udało się zmierzyć. Wyniki przerwane przez chwilowe błędy, takie jak przekroczenie limitu czasu, nie zastępują kompletnych pomiarów z pamięci podręcznej, a późniejsze odświeżenie może uzupełnić brakujące dane. Foldery, których macOS nie pozwala terminalowi odczytać, pozostają częściowe, dopóki dostęp się nie zmieni. Lista w terminalu zawiera 30 największych pozycji, więc nieczytelna pozycja może znaleźć się poza nią; suma nadal wskazuje częściowe skanowanie. Wyjście JSON katalogu obejmuje wszystkie przeskanowane pozycje. `mo analyze --json /path` zawiera `scan_status` dla wyniku i każdej pozycji: `complete`, `partial` lub `unavailable`. Rozmiary liczbowe zawierają zmierzone bajty; zero ze statusem `unavailable` nie oznacza pustego katalogu. Częściowe skanowanie nadal kończy się sukcesem, więc automatyzacja powinna sprawdzać `scan_status`. Kompletność dotyczy zakresu w ramach istniejących wykluczeń skanowania Mole i nie gwarantuje atomowej migawki systemu plików. ```text $ mo analyze Analyze Disk (302.1GB free) Select a location to explore: ▶ 1. ████████████████████████ 47.9% | Home 75.4GB 2. ███████████ 22.0% | User Library 34.6GB 3. ███████ 14.2% | Applications 22.4GB 4. █████ 10.7% | System Library 16.9GB 5. ███ 5.2% | Old Downloads (90d+) 8.2GB >3mo ``` ### Status `mo status` to panel tylko do odczytu pokazujący sprzęt, obciążenie systemu, aktywność dysku, ruch sieciowy, zasilanie i procesy. Gdy domyślna trasa IPv4 prowadzi przez tunel, wykresy sieci używają przepustowości tego interfejsu, aby nie liczyć drugi raz tego samego ruchu na jego fizycznym nośniku. JSON zachowuje przepustowość każdego interfejsu, w tym tunelu, przez który biegnie trasa; nieaktywne tunele niebędące trasą domyślną pozostają ukryte. ```text $ mo status Mole Status Health ● 92 MacBook Pro · M4 Pro · 32GB · macOS 26 ⚙ CPU ▦ Memory Total ████████████░░░░░░░ 45.2% Used ███████████░░░░░░░ 58.4% Load 0.82 / 1.05 / 1.23 (8 cores) Total 18.7 / 32.0 GB Core 1 ███████████████░░░░ 78.3% Free ████████░░░░░░░░░░ 41.6% Core 2 ████████████░░░░░░░ 62.1% Avail 13.3 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 Zombies 3 · Chrome (4242) ×3 Up ▄▄▄▃▃▃▄▆▆▇█▁▁▁▁▁ 0.02 MB/s Code ▮▮▮▮▯ 42.1% Proxy HTTP · 192.168.1.100 Chrome ▮▮▮▯▯ 28.3% ``` Wskaźnik zdrowia łączy CPU, pamięć, zajętość dysku, status SMART, operacje wejścia/wyjścia, temperatury, stan baterii i czas pracy, z zakresami oznaczonymi kolorami. Naciśnij `k`, aby pokazać lub ukryć kota, `c`, aby zmienić liczbę wyświetlanych rdzeni CPU, lub `q`, aby wyjść; preferencje wyświetlania są zapisywane.
JSON, NDJSON i alerty procesów - `mo analyze --json ~/Documents` zwraca jednorazowy raport dysku w formacie JSON - `mo status --json` zwraca jednorazową migawkę stanu w formacie JSON - `mo status | jq '.health_score'` automatycznie przełącza się na JSON, gdy wyjście jest przekazywane potokiem - `mo status --watch --interval 2s` strumieniuje JSON rozdzielany znakami nowej linii z działającego w tle kolektora - `mo history --json` zwraca aktywność czyszczenia w formacie JSON. Sesje zawierają `run_id` (nieprzezroczysty ciąg znaków, pusty, gdy nie zapisano identyfikatora) oraz `attribution`: `run` dla zidentyfikowanych uruchomień, `command` dla starszego grupowania według poleceń lub `ambiguous`, gdy starsze znaczniki nie pozwalają odróżnić przerwania od nakładających się uruchomień. Zapisane akcje pozostają dostępne; niejednoznacznych liczników nie da się wiarygodnie przypisać do poszczególnych uruchomień. Puste `ended_at` oznacza, że nie zapisano znacznika zakończenia - `mo uninstall --list` zwraca zainstalowane aplikacje w formacie JSON z polami `name`, `bundle_id`, `source`, `uninstall_name`, `path` i `size` ```text $ mo analyze --json ~/Documents { "path": "/Users/you/Documents", "overview": false, "entries": [ { "name": "Library", "path": "...", "size": 80939438080, "is_dir": true } ], "large_files": [ { "name": "backup.zip", "path": "...", "size": 8796093022 } ], "total_size": 168393441280, "total_files": 42187 } $ mo status --json { "host": "MacBook-Pro", "health_score": 92, "cpu": { "usage": 45.2, "logical_cpu": 8 }, "memory": { "total": 34359738368, "used": 20078972109, "used_percent": 58.4 }, "disks": [], "process_collected_at": "2026-08-29T12:30:00Z", "process_stale": false, "zombie_count": 3, "zombie_parents": [ { "pid": 4242, "name": "Google Chrome for Testing", "count": 3 } ], "zombie_parents_complete": true, "uptime": "3d 12h 45m" } ``` Diagnostyka procesów zombie działa tylko do odczytu i nie wpływa na wskaźnik zdrowia ani nie kończy procesów. Zanim Mole uzyska pierwszą udaną próbkę procesów, pola `process_collected_at`, `process_stale`, `zombie_count` i `zombie_parents_complete` są pomijane, a `zombie_parents` ma wartość `null`. Późniejsze migawki trybu szybkiego i `--watch` używają ostatniej udanej próbki z jej pierwotnym `process_collected_at` i ustawiają `process_stale: true`; bieżąca próbka procesów ustawia `false`. Licznik `0` oznacza, że Mole nie wykryło procesów zombie. Podsumowania procesów nadrzędnych zawierają najwyżej trzech znanych właścicieli; `zombie_parents_complete: false` oznacza, że przypisanie było niedostępne, niepełne lub obcięte. Jeśli jeden z kolektorów zawiedzie, `mo status --json` nadal wypisuje zebrane metryki, zgłasza błąd na stderr i kończy się sukcesem, tak samo jak `--watch` nadal strumieniuje dane. Kończy się kodem 1, gdy niedostępna jest żadna z metryk CPU, pamięci, dysku ani procesów albo gdy zapis JSON się nie powiedzie. Status obsługuje też alerty tylko do odczytu dla procesów, które przez dłuższy czas przekraczają próg CPU. Użyj `--proc-cpu-threshold`, `--proc-cpu-window` lub `--proc-cpu-alerts=false`, aby je dostroić lub wyłączyć.
### Purge `mo purge` wyszukuje artefakty projektów, które można odtworzyć, takie jak `node_modules`, `target`, `.build`, `build` i `dist`. Grupuje je według projektów i trwale usuwa tylko elementy, które potwierdzisz. Artefakty z aktywnością plików w ciągu ostatnich 7 dni lub z aktywnością, której Mole nie może zweryfikować, są domyślnie odznaczone. Mole używa `fd`, jeśli jest dostępne, a w przeciwnym razie `find`, i chroni katalogi zawierające pliki par kluczy wdrożeniowych, zagnieżdżone repozytoria Git lub pliki śledzone przez Git. Uruchomienia nieinteraktywne wymagają `mo purge --yes`; najpierw przejrzyj kandydatów przez `mo purge --dry-run`. Klawisze Page Up/Down lub `h`/`l` przewijają o stronę, `[`/`]` przeskakują między projektami, a `X` pomija projekt i przechodzi dalej. `/` przeszukuje ścieżki projektów i nazwy artefaktów, `n` znajduje kolejne dopasowanie bez zmiany zaznaczenia, a Enter otwiera końcowy przegląd ścieżek. Podawane miejsce jest szacunkowe; niezmierzone artefakty i niepełne skanowania są wyraźnie oznaczone.
Przykładowe wyjście purge ```text $ mo purge Purge Project Artifacts Select Artifacts to Purge 6.00GB, 2 selected ➤ ● ┌ ~/Projects/website 3.80GB | node_modules | 28d ○ └ ~/Projects/website 186MB | dist | <1d ● ┌ ~/Projects/rust-app 2.20GB | target | 2mo ○ └ ~/Projects/rust-app 22MB | dist | <7d ====================================================================== Purge complete Estimated space freed: 6.00GB | Items: 2 | Free: 223.5GB ====================================================================== ```
Własne ścieżki skanowania Uruchom `mo purge --paths`, aby skonfigurować katalogi skanowania, lub edytuj bezpośrednio `~/.config/mole/purge_paths`: ```shell ~/Documents/MyProjects ~/Work/ClientA ~/Work/ClientB ``` Gdy skonfigurowano własne ścieżki, Mole skanuje tylko te katalogi. W przeciwnym razie używa domyślnych, takich jak `~/Projects`, `~/GitHub`, `~/dev` i obsługiwane kontenery worktree agentów. Wyszukiwanie nie zapisuje niepełnego wyniku. Skanowanie artefaktów sięga sześć poziomów poniżej każdego skonfigurowanego katalogu głównego; dla głębiej położonych projektów dodaj bliższy katalog główny. Purge usuwa odtwarzalne artefakty wewnątrz worktree, nigdy same worktree.
### Instalatory `mo installer` wyszukuje pliki DMG, PKG, MPKG, ISO, XIP i archiwa ZIP z instalatorami w Pobranych, na Biurku, w pamięci podręcznej Homebrew, iCloud, Mail, Telegramie i innych obsługiwanych lokalizacjach, a przed usunięciem pokazuje rozmiar i źródło każdego elementu. Wyszukiwanie ma łączny limit czasu: jeśli skanowanie lub odczyt metadanych zawiedzie albo przekroczy limit czasu, Mole odrzuca listę i kończy działanie bez zaznaczania plików. Uszkodzone i nieczytelne archiwa ZIP są pomijane, katalogi skanowania będące dowiązaniami symbolicznymi są obsługiwane, ale dowiązania wewnątrz nich nie są śledzone, a zaznaczone pliki są ponownie sprawdzane względem potwierdzonej tożsamości tuż przed usunięciem.
Przykładowe wyjście installer ```text $ mo installer Select Installers to Remove, 3.83GB, 5 selected ➤ ● Photoshop_2024.dmg 1.20GB | Downloads ● IntelliJ_IDEA.dmg 850.6MB | Downloads ● Illustrator_Setup.pkg 920.4MB | Downloads ● PyCharm_Pro.dmg 640.5MB | Homebrew ● Acrobat_Reader.dmg 220.4MB | Downloads ○ AppCode_Legacy.zip 410.6MB | Downloads ====================================================================== Installers cleaned Removed 5 installers, freed 3.83GB ====================================================================== ```
### Slim `mo slim` usuwa kod Intel, który aplikacje uniwersalne przenoszą na Makach z Apple Silicon. Wyświetla należące do Ciebie aplikacje podpisane Developer ID wraz z rozmiarem kodu Intel w każdej z nich i zmienia tylko wybrane aplikacje. Każda aplikacja jest odchudzana na kopii, przy czym zmieniane są tylko główne pliki wykonywalne i zagnieżdżony kod z własnym podpisem; kopia zastępuje aplikację dopiero wtedy, gdy zachowuje kod Apple Silicon i przechodzi weryfikację podpisu kodu oraz Gatekeepera, a oryginał trafia do Kosza. Aplikacje z App Store, aplikacje Apple, aplikacje ustawione do otwierania przez Rosettę, aplikacje należące do innego użytkownika i uruchomione aplikacje pozostają nietknięte. Nie wymaga narzędzi deweloperskich, a aktualizacja aplikacji przywraca kod Intel. ## Szybkie uruchamianie
Konfiguracja Raycast i Alfred Zainstaluj pięć skrótów dla Clean, Uninstall, Optimize, Analyze i Status: ```bash curl -fsSL https://raw.githubusercontent.com/tw93/Mole/main/scripts/setup-quick-launchers.sh | bash ``` Skrypt dodaje polecenia Raycast oraz, jeśli istnieją preferencje Alfreda, odpowiadające im workflow Alfreda ze słowami kluczowymi `clean`, `uninstall`, `optimize`, `analyze` i `status`. Raycast wymaga jednego kroku ręcznego: 1. Otwórz **Raycast Settings > Extensions > Script Commands**. 2. Dodaj `~/Library/Application Support/Raycast/script-commands` jako katalog skryptów. 3. Uruchom w Raycast **Reload Script Directories**. Skróty automatycznie wykrywają Terminal, iTerm2, Alacritty, kitty, WezTerm, Ghostty, Hyper, WindTerm i Warp. Ustaw `MO_LAUNCHER_APP=`, aby wybrać jeden z nich; Mole możesz też uruchamiać bezpośrednio w [Kaku](https://github.com/tw93/Kaku).
## Społeczność Dziękuję wszystkim, którzy pomogli zbudować Mole. Zaobserwuj ich. ❤️ Współtwórcy Mole

Prawdziwe opinie użytkowników, którzy polecali Mole na 𝕏. Opinie społeczności o Mole Obejrzyj [film instruktażowy o Mole](https://www.youtube.com/watch?v=UEe9-w4CcQ0) przygotowany przez PAPAYA 電腦教室. ## Wsparcie - Zakup [Mole for Mac](https://mole.fit) to najbardziej bezpośredni sposób wsparcia rozwoju Mole - Jeśli Mole Ci pomogło, daj gwiazdkę, [udostępnij je](https://x.com/intent/tweet?url=https://github.com/tw93/Mole&text=Mole%20-%20Deep%20clean%20and%20optimize%20your%20Mac.) albo otwórz issue lub PR - Mam dwa koty, TangYuan i Coke; jeśli Mole choć trochę ułatwia Ci życie, możesz postawić im puszkę karmy 🥩 Te wspaniałe osoby już to zrobiły 🐱 Wspierający Mole ## Licencja Mole jest projektem open source na licencji GPL-3.0; szczegóły w [LICENSE](LICENSE). Każda udostępniana zmodyfikowana wersja musi pozostać na tej samej licencji. Jeśli tworzysz fork Mole, użyj innej nazwy i wskaż Mole jako źródło upstream. [Mole for Mac](https://mole.fit) to osobna, zamknięta aplikacja, a Mole zostaje na długo.