Ctrl K
ComunidadGuías…

README_PL.md

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
<p align="right"><b>macOS</b> · <a href="https://github.com/tw93/Mole/tree/windows#readme">Windows</a> · <a href="https://github.com/tw93/Mole/tree/linux#readme">Linux</a></p>

<div align="center">
  <h1>Mole</h1>
  <p><b>Głębokie czyszczenie, odinstalowywanie, optymalizacja, analiza dysku i monitorowanie Twojego Maca. Darmowe CLI open source, a do tego aplikacja na Maca.</b></p>
  <p><a href="README.md">English</a> · <a href="README_CN.md">中文</a> · <a href="README_TW.md">繁體</a> · <a href="README_JA.md">日本語</a> · <a href="README_KR.md">한국어</a> · <a href="README_DE.md">Deutsch</a> · <a href="README_FR.md">Français</a> · Polski · <a href="README_UA.md">Українська</a> · <a href="README_RU.md">Русский</a></p>
  <a href="https://github.com/tw93/mole/stargazers"><img src="https://img.shields.io/github/stars/tw93/mole?style=flat-square" alt="Stars"></a>
  <a href="https://github.com/tw93/mole/releases"><img src="https://img.shields.io/github/v/release/tw93/mole?label=version&style=flat-square" alt="Version"></a>
  <a href="LICENSE"><img src="https://img.shields.io/badge/license-GPL_v3-blue.svg?style=flat-square" alt="License"></a>
  <a href="https://github.com/tw93/mole/commits"><img src="https://img.shields.io/github/commit-activity/m/tw93/mole?style=flat-square" alt="Commits"></a>
  <a href="https://x.com/HiTw93"><img src="https://img.shields.io/badge/follow-Tw93-red?style=flat-square&logo=x" alt="Twitter"></a>
  <a href="https://t.me/+9f9gf4ZrFSQ2OWVl"><img src="https://img.shields.io/badge/chat-Telegram-blueviolet?style=flat-square&logo=Telegram" alt="Telegram"></a>
</div>

<p align="center">
  <img src="./docs/img/big-mole.png" alt="Wyniki czyszczenia Mole" width="1000" />
</p>

> 💡 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 <name> 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
```

<details>
<summary><strong>Inne sposoby instalacji</strong></summary>

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.

</details>

**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.

<details>
<summary><strong>JSON, NDJSON i alerty procesów</strong></summary>

- `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ć.

</details>

### 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.

<details>
<summary><strong>Przykładowe wyjście purge</strong></summary>

```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
======================================================================
```

</details>

<details>
<summary><strong>Własne ścieżki skanowania</strong></summary>

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.

</details>

### 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.

<details>
<summary><strong>Przykładowe wyjście installer</strong></summary>

```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
======================================================================
```

</details>

### 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

<details>
<summary><strong>Konfiguracja Raycast i Alfred</strong></summary>

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=<name>`, aby wybrać jeden z nich; Mole możesz też uruchamiać bezpośrednio w [Kaku](https://github.com/tw93/Kaku).

</details>

## Społeczność

Dziękuję wszystkim, którzy pomogli zbudować Mole. Zaobserwuj ich. ❤️

<a href="https://github.com/tw93/Mole/graphs/contributors">
  <img src="./CONTRIBUTORS.svg?v=2" alt="Współtwórcy Mole" width="1000" />
</a>

<br/><br/>
Prawdziwe opinie użytkowników, którzy polecali Mole na 𝕏.

<img src="./docs/img/mole-love.png" alt="Opinie społeczności o Mole" width="1000" />

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 <a href="https://cats.tw93.fun?name=Mole" target="_blank">puszkę karmy 🥩</a>

Te wspaniałe osoby już to zrobiły 🐱

<a href="https://cats.tw93.fun?name=Mole"><img src="https://raw.githubusercontent.com/tw93/sponsors/main/assets/sponsors.svg" alt="Wspierający Mole" width="1000" loading="lazy" /></a>

## 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.