v0.2.0 · .NET 8 · WPF · Plugin-ready

Your Windows.
Your Rules.

Audit, harden, and revert Windows 10/11 privacy settings with full rollback. Every action has a diff. Every change is reversible. No black boxes.

⬇ Download .exe View Source
70
Privacy Score
— estimated default Windows 11 score —

Try the Interface

This is a faithful simulation of the WPF desktop app. Scan, select a finding, apply a fix, and roll it back.

SentinelWin — Privacy & Security Agent
Click "Scan Now" to run the privacy audit
Privacy Score
Snapshots
No snapshots yet
[system] Ready — awaiting scan...

Known Findings

SentinelWin checks for these privacy and security issues across services, registry, and scheduled tasks.

Architecture

Clean separation between core logic, UI, and plugins. Add new scanners without touching the core.

🔍
IScanner
Each scanner implements a single interface: ScanAsync() returns an immutable list of ScanItems. Fully testable with mocks.
Core/Abstractions
IAction
ApplyAsync() changes system state and persists a Snapshot. RollbackAsync() reverts using that snapshot — no fragile string parsing.
Core/Actions
💾
SnapshotStore
Saves every applied change as a JSON file in %LOCALAPPDATA%\SentinelWin\snapshots. Testable via constructor injection of custom path.
Core/Services
🔌
PluginLoader
Discovers IScanner implementations in external DLLs via AssemblyLoadContext (isCollectible: true — no memory leak on hot-reload).
Core/Services
🖥️
WPF UI
MVVM pattern with a clean ViewModel. DataGrid with per-row risk coloring. Apply/Rollback buttons, action log, snapshot list — all data-bound.
SentinelWin.UI
🧪
xUnit Tests
ScanEngine score logic, SnapshotStore round-trips, and cancellation handling are covered. Moq for scanner isolation. CI runs on every push.
SentinelWin.Tests

vs Traditional Tweakers

Feature O&O ShutUp10
typical tweaker
SentinelWin
Shows exact change before applying
Granular per-item rollback
Snapshot JSON log
Plugin/extension system
Dry-run modepartial✓ always
Privacy score
Open source✓ MIT
Scheduled task scannerlimited
Unit tested core

Roadmap

Phase 1 — complete
Foundation
ServiceScanner RegistryScanner TaskScanner SnapshotStore WPF UI PluginLoader Unit Tests
Phase 2 — in progress
Visibility & Control
Visual Diff Firewall Rules Profile Presets Batch Rollback
Phase 3 — planned
Real-time Monitoring
ETW Watcher System Tray ProcessScanner Alerts
Phase 4 — future
Intelligence
ML.NET detection Signed plugins Enterprise mode
Plugin API
// Drop any DLL in plugins/ — it's auto-discovered public sealed class MyScanner : IScanner { public string Name => "My Scanner"; public Task<IReadOnlyList<ScanItem>> ScanAsync(CancellationToken ct) { return Task.FromResult<...>( [ new ScanItem( Id: "mycheck:001", Name: "Suspicious Process", Type: "Process", Status: "Running", Risk: Risk.High, Recommendation: "Terminate" ) ]); } }

Install & Build

Requires Windows 10/11 · .NET SDK 8.0.300+ · Visual Studio 2022 (17.8+) or VS Code.

STEP 01
Clone and restore
git clone https://github.com/hevkyr/sentinelwin cd sentinelwin dotnet restore
STEP 02
Build and run
dotnet build -c Release # Launch as Administrator for real actions dotnet run --project SentinelWin.UI
STEP 03
Run tests
dotnet test --logger "trx" # Results in TestResults/
STEP 04
Single-file publish
dotnet publish SentinelWin.UI \ -c Release -r win-x64 \ --self-contained \ -p:PublishSingleFile=true \ -o artifacts/