# ms-private tool breakdown ms-private is a local Windows privacy and debloat toolkit. It builds an exact plan from the current machine, shows the plan before mutation, applies supported actions, and records local recovery or outcome data. It does not claim that Windows becomes anonymous or that Microsoft deletes previously collected records. ## Interfaces | Interface | Entry point | Use | | --- | --- | --- | | Single-file Windows release | `ms-private-0.0.5.exe` | Recommended launch path. Requests UAC, verifies and installs the embedded runtime, then opens the graphical wizard. | | Graphical wizard | `ms-private-GUI.ps1` | Tabbed Windows Forms interface with one exact-plan review and final approval. | | Terminal wizard | `ms-private.ps1` | Arrow, Space, Enter and Esc navigation with searchable app selection. | | Complete preset CLI | `Preset.ps1` | Auto-detect or plan/apply EstablishedSafe, FreshInstall, Gentle, Medium, Strong or Maximum without navigating the UI. | | Component CLIs | `Services.ps1`, `Accounts.ps1`, `Manage-Apps.ps1`, `Network.ps1`, `Hardware.ps1`, `Recall.ps1`, `Cleanup.ps1`, `Lock.ps1`, `Security.ps1` | Audit, plan, apply or restore one area. | ## Automatic presets | Preset | Automatic selection | | --- | --- | | Established PC | Selected when Windows or the current profile is older than seven days, or age evidence is unavailable. Applies Standard policy only and keeps apps, accounts, services, devices, Recall, files, network and updates unchanged. | | Fresh Install | Selected only when Windows and the current profile are both no more than seven days old. Runs the complete Strict removal and privacy workflow with Zen/Tor, Mullvad, VeraCrypt and detected sensors. | | Gentle | Standard privacy policies and curated promotional-app removal. Keeps personal apps, Store, Edge, OneDrive, Microsoft app accounts, sensors and networking. | | Medium | Strict policies and eight privacy-service templates, Microsoft app-account purge, Recall deletion/removal where supported, 19 reviewed optional endpoint rules, privacy cleanup, scheduled Temp cleanup, lock handling, Mullvad, VeraCrypt, and every unambiguously removable Microsoft or third-party app including Store, Edge and OneDrive. | | Strong | Medium plus Tor Browser and exact selection of detected cameras, microphones and sensor devices. | | Maximum | Strong plus Zen and Helium and timed default-outbound firewall isolation. The isolation rollback remains scheduled until the user confirms or restores the journal. | Unsupported settings are shown as skipped. Conflicting registry types, stale app identities, forged plans and unavailable recovery mechanisms stop the affected workflow. ## Privacy policy engine The policy catalog contains 56 reviewed controls. Standard and Strict cover diagnostic level, advertising ID, tailored experiences, feedback, Windows Error Reporting, activity history, online speech, typing and inking collection, cloud clipboard, cloud search, Microsoft app authentication, workplace registration, Widgets, search highlights, device metadata, downloadable fonts, Delivery Optimization, location and packaged-app access to camera, microphone, foreground text, screen capture, presence, gaze, motion, notifications, phones, radios and background execution. Update choices are separate: Keep, Automatic, Notify and Manual. The update engine, Update Orchestrator, BITS, Cryptographic Services and servicing infrastructure remain installed. The engine checks Windows edition and build, refuses domain or MDM-managed devices, journals original values before writing, reads back changes, rolls back partial failures and preserves later conflicting edits during restoration. Home can apply seven direct registry controls documented independently of managed-edition CSP support; its remaining CSP policies are explicitly unsupported and linked to the Settings guide. Unreviewed builds remain audit-only. ## Services and GDID-related reduction Strict mode disables and stops these reviewed service templates: - `DiagTrack` - `dmwappushservice` - `CDPSvc` - `CDPUserSvc` - `OneSyncSvc` - `CloudBackupRestoreSvc` - `lfsvc` - `WerSvc` Windows Update, Update Orchestrator, BITS, Cryptographic Services, Defender, firewall, Event Log, identity, licensing and security services are rejected if they enter a service-disable plan. For GDID, ms-private reduces known or suspected transmission paths by disabling CDP and diagnostic services, removing connected applications, purging selected Microsoft app identity state, restricting optional endpoints and supporting packet capture. It does not rewrite the local `IdentityCRL\ExtendedProperties\LID`, rotate identifiers or claim server-side deletion. The accurate project status is **GDID transmission paths reduced; complete suppression unverified**. ## Applications, accounts and browsers Gentle uses the curated package names in `config/debloat.json`. Fresh Install, Medium and stronger enumerate the installed inventory and select every unambiguously removable current-user Appx or registered desktop application. Established PC selects no application action. The removal engine: - Installs and verifies every selected replacement browser before the first removal. - Uses exact Appx package identities or exact desktop product registrations. - Rechecks name, version, publisher, scope and target immediately before removal. - Removes ordinary apps before Store and Edge. - Skips duplicate desktop name/scope registrations because they cannot be delegated safely to WinGet. - Protects WebView2, drivers, firmware, runtimes, servicing, security products, authentication components, browsers, Mullvad, VeraCrypt and recovery infrastructure. Appx removal applies to the current user. It does not silently deprovision packages for every future user. Desktop uninstallers follow their registered user or machine scope. Account purge resets exact current-user Store, Xbox, packaged Microsoft 365/Teams and shared account-broker packages, then deletes only Credential Manager targets matching the reviewed Microsoft allowlist. Reports store action IDs and results without account names, email addresses, credential targets or secrets. The Windows logon identity and existing work/school enrollment remain separate. Available browsers are Tor Browser, Zen and Helium. Tor Browser should remain unmodified and isolated from identifying accounts when unlinkability matters. Zen and Helium are everyday browser choices and do not create a separate identity merely because they are installed. ## Network controls `Observe` changes nothing. `BlockOptionalTelemetry` creates dynamic-FQDN outbound rules for 19 reviewed Windows optional-feature or telemetry endpoints. Catalog validation rejects Windows Update, Defender, SmartScreen, certificate/revocation and WNS families that the project preserves. `Isolate` schedules a local SYSTEM rollback first, then sets the default outbound action to Block for Domain, Private and Public firewall profiles. Existing explicit allow rules can still permit traffic. Confirming isolation removes the timer; restoring the journal returns the saved profile defaults. Pktmon capture is explicit and local. Stop converts the trace to PCAPNG. Captures can expose private addresses and DNS names. Encrypted payloads remain encrypted, and one quiet capture cannot prove that an identifier is never sent. ## Recall and sensors Recall planning checks edition, build, policy type and optional-feature state. Applying the supported disable policy deletes existing snapshots, so the workflow requires the deletion acknowledgement. Feature removal may require a reboot. Unsupported Recall actions are reported and skipped by complete presets; conflicting values remain a hard stop. Hardware control operates on exact PnP instance IDs. Strong and Maximum automatically select detected cameras, microphones and sensors that report an enabled state. Disabling these devices can affect conferencing, Windows Hello and accessibility features. A journal records original device states for restoration. ## Cleanup and lock handling Cleanup uses named allowlisted locations and rejects arbitrary roots. Categories cover aged Temp content, Windows Error Reporting queues and crash dumps, Recent Items and Jump Lists, unlocked thumbnail caches, PowerShell interactive history, known Zen/Tor/Helium cache subdirectories and expired non-journal ms-private reports. It checks reparse points, file age, changes and locks before deletion. Cookies, passwords, bookmarks, sessions, Documents, Downloads, credential stores, recovery journals and Defender, firewall, authentication, update and Windows event logs remain protected. Ordinary deletion cannot guarantee physical erasure from an SSD, backup or synchronized provider. The lock task clears the current clipboard and can request graceful unmount of selected non-system VeraCrypt drive letters. It does not terminate arbitrary applications or claim to wipe all secrets from RAM. ## Security and update preservation `Security.ps1` audits BitLocker or device-encryption state, Defender and cloud protection, firewall profiles, Secure Boot, TPM, VBS/Credential Guard, LSA protection, UAC, SMB/SMB1, remote access and protected services. It does not read recovery keys, account names, Defender exclusions or secrets. Online mode keeps Windows security updates available. A direct update necessarily sends connection and request metadata to Microsoft. The isolated update design uses a separate maintained collector, publisher-signed packages, an offline manifest and local integrity verification. The included verifier does not itself download, authenticate or install updates. ## Reports and recovery Journals and reports are stored below `%LOCALAPPDATA%\MsPrivate`. Policy, service, network and device changes have restoration records. App removal, account-package reset, Recall snapshot deletion, credential deletion and cache deletion are not undone by those journals. A complete preset also writes a run summary below `%LOCALAPPDATA%\MsPrivate\runs`. It records each group as succeeded, failed or skipped because a prerequisite failed. A failure in one group does not suppress unrelated groups; the summary never converts a partial run into a success. Reports are local and have no automatic upload. Installed-app inventories and network captures can still be sensitive and should not be published without review. ## Running a reviewed download For a normal release, verify `ms-private-0.0.5.exe.sha256` and launch `ms-private-0.0.5.exe`. The executable is self-contained for Windows x64 and requests administrator rights through its application manifest. It embeds the source runtime, verifies the archive manifest and every file hash, extracts beneath `%ProgramFiles%\ms-private\runtime`, revalidates that copy at every launch, and repairs modifications or undeclared files. It is not code-signed yet, so the publisher warning is expected until a signing and provenance pipeline is added. The PowerShell implementation remains visible in the source release and inside the hash-manifested payload. Moving the policy, recovery, Appx, WinGet and firewall logic into another language would not itself improve privacy; the native launcher supplies one-file delivery, elevation and runtime integrity while retaining the tested engine. For source development from the extracted ZIP: ```powershell Get-ChildItem -LiteralPath . -Recurse -File | Where-Object { $_.Extension -in '.ps1', '.psm1' } | Unblock-File; Set-ExecutionPolicy -Scope Process -ExecutionPolicy RemoteSigned -Force; .\ms-private-GUI.ps1 ``` The command unblocks scripts below the current reviewed directory, changes execution policy only for that PowerShell process, and starts the GUI. It does not fetch or execute changing network content. Complete preset planning and application: ```powershell .\Preset.ps1 -Mode Plan -Preset Medium .\Preset.ps1 -Mode Apply -Preset Medium -AcknowledgeDestructivePreset ``` ## Validation status The automated suites cover policy transactions, app identity and sequencing, preset validation, Recall applicability, network recovery, protected paths and services, account redaction, offline-bundle integrity, security audits and AME structure in both Windows PowerShell 5.1 and PowerShell 7. Ten native tests cover payload and manifest integrity, exact-file enforcement, tamper repair, traversal refusal and undeclared archive entries. PE inspection checks architecture, GUI subsystem, UAC manifest, version, checksum and signature state. CI also publishes the one-file executable. GUI startup and read-only host preflights are exercised. Automated tests establish code behavior against synthetic backends. Production claims still require destructive testing and recovery on the supported Windows edition/build matrix, reboot testing, real Store and Edge recovery, security-update acceptance, sensor hardware checks and controlled network observation.