1
0
mirror of https://github.com/tw93/Mole.git synced 2026-02-04 14:26:46 +00:00
Bhadra b8d8771878 fix: update go.mod and go.sum with all dependencies
Run go mod tidy to add missing indirect dependencies required for CI build.
This fixes the 'missing go.sum entry' errors in the test workflow.
2026-01-12 11:03:37 +05:30
2025-10-12 20:49:10 +08:00
2026-01-08 10:20:42 +02:00
2025-12-06 00:18:57 +08:00
2025-09-23 14:35:26 +08:00

Mole for Windows

Windows support for Mole - A system maintenance toolkit.

Requirements

  • Windows 10/11
  • PowerShell 5.1 or later (pre-installed on Windows 10/11)
  • Go 1.24+ (for building TUI tools)

Installation

Quick Install

# Clone the repository
git clone https://github.com/tw93/Mole.git
cd Mole/windows

# Run the installer
.\install.ps1 -AddToPath

Manual Installation

# Install to custom location
.\install.ps1 -InstallDir C:\Tools\Mole -AddToPath

# Create Start Menu shortcut
.\install.ps1 -AddToPath -CreateShortcut

Uninstall

.\install.ps1 -Uninstall

Usage

# Interactive menu
mole

# Show help
mole -ShowHelp

# Show version
mole -Version

# Commands
mole clean              # Deep system cleanup
mole clean -DryRun      # Preview cleanup without deleting
mole uninstall          # Interactive app uninstaller
mole optimize           # System optimization
mole purge              # Clean developer artifacts
mole analyze            # Disk space analyzer
mole status             # System health monitor

Commands

Command Description
clean Deep cleanup of temp files, caches, and logs
uninstall Interactive application uninstaller
optimize System optimization and health checks
purge Clean project build artifacts (node_modules, etc.)
analyze Interactive disk space analyzer (TUI)
status Real-time system health monitor (TUI)

Environment Variables

Variable Description
MOLE_DRY_RUN=1 Preview changes without making them
MOLE_DEBUG=1 Enable debug output
MO_ANALYZE_PATH Starting path for analyze tool

Directory Structure

windows/
├── mole.ps1          # Main CLI entry point
├── install.ps1       # Windows installer
├── Makefile          # Build automation for Go tools
├── go.mod            # Go module definition
├── go.sum            # Go dependencies
├── bin/
│   ├── clean.ps1     # Deep cleanup orchestrator
│   ├── uninstall.ps1 # Interactive app uninstaller
│   ├── optimize.ps1  # System optimization
│   ├── purge.ps1     # Project artifact cleanup
│   ├── analyze.ps1   # Disk analyzer wrapper
│   └── status.ps1    # Status monitor wrapper
├── cmd/
│   ├── analyze/      # Disk analyzer (Go TUI)
│   │   └── main.go
│   └── status/       # System status (Go TUI)
│       └── main.go
└── lib/
    ├── core/
    │   ├── base.ps1      # Core definitions and utilities
    │   ├── common.ps1    # Common functions loader
    │   ├── file_ops.ps1  # Safe file operations
    │   ├── log.ps1       # Logging functions
    │   └── ui.ps1        # Interactive UI components
    └── clean/
        ├── user.ps1      # User cleanup (temp, downloads, etc.)
        ├── caches.ps1    # Browser and app caches
        ├── dev.ps1       # Developer tool caches
        ├── apps.ps1      # Application leftovers
        └── system.ps1    # System cleanup (requires admin)

Building TUI Tools

The analyze and status commands require Go to be installed:

cd windows

# Build both tools
make build

# Or build individually
go build -o bin/analyze.exe ./cmd/analyze/
go build -o bin/status.exe ./cmd/status/

# The wrapper scripts will auto-build if Go is available

Configuration

Mole stores its configuration in:

  • Config: ~\.config\mole\
  • Cache: ~\.cache\mole\
  • Whitelist: ~\.config\mole\whitelist.txt
  • Purge paths: ~\.config\mole\purge_paths.txt

Development Phases

Phase 1: Core Infrastructure

  • install.ps1 - Windows installer
  • mole.ps1 - Main CLI entry point
  • lib/core/* - Core utility libraries

Phase 2: Cleanup Features

  • bin/clean.ps1 - Deep cleanup orchestrator
  • bin/uninstall.ps1 - App removal with leftover detection
  • bin/optimize.ps1 - System optimization
  • bin/purge.ps1 - Project artifact cleanup
  • lib/clean/* - Cleanup modules

Phase 3: TUI Tools

  • cmd/analyze/ - Disk usage analyzer (Go)
  • cmd/status/ - Real-time system monitor (Go)
  • bin/analyze.ps1 - Analyzer wrapper
  • bin/status.ps1 - Status wrapper

Phase 4: Testing & CI (Planned)

  • tests/ - Pester tests
  • GitHub Actions workflows
  • scripts/build.ps1 - Build automation

License

Same license as the main Mole project.

Languages
Shell 80.2%
Go 19.7%
Makefile 0.1%