Find the root cause. Not the symptom.
A Windows stability and performance intelligence dashboard. Instead of dumping raw Event Viewer noise or Reliability Monitor codes at you, CrashSight Pro explains why your PC is misbehaving in plain English, scores each subsystem, and rolls it all up into one overall stability score.
Single portable .exe. No installer. No telemetry. No subscription.
This is a milestone toward a much larger planned platform (see Roadmap below). It's a real, working app with a real architecture — not a mockup — with 10 of the many planned subsystem engines implemented so far:
- Windows — edition/build/UBR, activation status, uptime, pending-reboot detection, and pending/stale Windows Update detection (registry + the Windows Update COM API, with a hard timeout so a slow update search never blocks the UI).
- CPU — live usage/interrupt/DPC sampling (feeds the dashboard's real-time sparkline), plus checks for background CPU abuse, thermal throttling, and high interrupt/DPC load (a common cause of audio crackle and stutter).
- GPU — driver age via
Win32_VideoController, live usage via the built-in Windows "GPU Engine" performance counters (no vendor SDK needed). - Memory — physical/commit pressure via
GlobalMemoryStatusEx/GetPerformanceInfo, plus a fast-process-growth check that flags likely memory leaks. - Storage — SMART failure prediction, drive wear/temperature/error counters via the Storage Management API, and free-space checks across all fixed drives.
- Drivers — unsigned and stale (5+ year old) driver detection, plus devices currently in a Device Manager error state with plain-English explanations per error code.
- Security — Defender, firewall (all three network profiles), Secure Boot, TPM, BitLocker (across every fixed volume), Memory Integrity/HVCI, and UAC.
- Battery — charge% and AC status live, wear (design vs. full-charge capacity) on demand; reports cleanly as "not applicable" on desktops instead of faking a result.
- Network — adapter status, IPv4/IPv6, gateway and DNS configuration, plus latency/packet-loss/DNS-resolution checks.
- Audio — audio device presence and error/disabled state.
Every finding explains what happened, why it happened, how confident the detector is, and what to do about it — never just a bare error code.
| Dark (default) | Light | After a scan |
|---|---|---|
![]() |
![]() |
![]() |
Grab the latest portable .exe from the Releases page. No installation,
no admin rights required for the CPU/Windows checks — just download and run.
Requires the .NET 8 SDK.
git clone https://github.com/unupunct/CrashSightPro.git
cd CrashSightPro
dotnet build CrashSight.sln
dotnet test CrashSight.sln
dotnet run --project src/CrashSight.AppRuns every engine and dumps the results as JSON, without opening the window — useful for scripting or CI:
dotnet run --project src/CrashSight.App -- --scan-json out.json./publish.ps1Produces a single self-contained CrashSight Pro.exe under publish/win-x64/.
CrashSight.sln
src/
CrashSight.Core Models + interfaces only, zero platform dependencies
CrashSight.Infrastructure Engines, WMI/registry access, SQLite, DI composition root
CrashSight.App WPF shell (MVVM via CommunityToolkit.Mvvm), theming, controls
tests/
CrashSight.Core.Tests
CrashSight.Infrastructure.Tests
publish.ps1 Single-file portable win-x64 publish script
Every subsystem is an IDiagnosticEngine (deep, on-demand health check) and, optionally,
an IMetricsSource (cheap live sampling for the dashboard). The overall stability score is a
weighted average across subsystem categories, renormalized to whichever engines are
currently registered — new engines slot in without any rebalancing. History is stored in a
local SQLite file next to the executable (falling back to %LOCALAPPDATA%\CrashSight if
that folder isn't writable), and logs are written the same way via Serilog.
Stack: C# / .NET 8 / WPF / MVVM (CommunityToolkit.Mvvm) / Microsoft.Extensions.Hosting (DI) / Serilog / SQLite.
Planned features, each designed to slot in as one more IDiagnosticEngine/IMetricsSource
(or, for the platform-level items, a self-contained new module) without touching the shell:
- Deep Windows internals: BSOD/minidump analysis, Reliability Monitor correlation, Event Analyzer (cross-log grouping/dedup), DPC/ISR latency tracing (LatencyMon-style).
- Third-party app integration: OBS Studio, SplitCam, and webcam monitoring.
- Platform features: AI-assisted root-cause ranking, interactive timeline, session recording, service dependency visualizer, ETW trace recording, performance regression detection, plugin SDK, multi-PC dashboard, diagnostic package export, PDF/HTML/CSV/JSON reporting.
Known limitations worth knowing about: GPU VRAM capacity isn't checked (Win32_VideoController .AdapterRAM is a documented-buggy 32-bit field that misreports for 4GB+ cards — this needs
DXGI's IDXGIAdapter3.QueryVideoMemoryInfo to do properly, planned for a later pass);
Wi-Fi signal/channel/RSSI isn't read yet (would need the Native WiFi API);
Windows Hello enrollment isn't checked (no reliable check without the Windows Biometric
Framework API); live audio buffer/dropout monitoring isn't implemented (would need
WASAPI/CoreAudio interop).
Issues and pull requests are welcome. If you're adding a new engine, implement
IDiagnosticEngine (and IMetricsSource if it has live data) in CrashSight.Infrastructure,
register it in DependencyInjection.cs, and add tests under
CrashSight.Infrastructure.Tests.
MIT — see LICENSE.


