Everyone who looks after Windows machines has amassed that folder of stray .bat and .ps1 scripts — each solving one thing, none talking to the others. SysDoctor was born from pulling that knowledge into a single, cohesive console utility: Windows diagnostics and optimization in C# 12 / .NET 10, with a terminal interface any technician can use without memorizing commands. This is a walkthrough of the engineering behind it.
Why a console, and why C#
System maintenance calls for a tool that runs on any machine, without installing a world of dependencies and without a heavy interface. A self-contained console app (win-x64) solves that: one executable, zero setup. C# 12 on .NET 10 gives native access to Windows via System.Management (WMI) and a mature ecosystem for asynchronous I/O — and Spectre.Console delivers a TUI with tables, colors, and status that makes the terminal feel like a product, not a raw prompt.
Modular architecture
The core is simple and deliberate: a Program.cs that only orchestrates the menu, and a Scripts/ folder where each operation is an isolated module (InfoMachine.cs, ClearDisk.cs, ClearRAM.cs…). Adding a new function means creating a file and registering an entry — without touching the rest. A GlobalUsings.cs centralizes the namespaces and keeps each module lean.
The 17 operations
The tool organizes seventeen operations into two columns — the split that separates understanding the machine from acting on it:
- Diagnostics — hardware/OS, Windows integrity check, internet speed test, ping, processor temperature, restore points, updates, and a map of network connections.
- Optimization & maintenance — cleaning temporary files, freeing RAM, clearing the network cache, latency optimization, Wi-Fi tweaks, Windows tunings, post-install setup, and running Windows Defender.
Engineering decisions
- Async by default — I/O operations (network, disk, WMI) use
async/await, so the TUI never freezes while a speed test or a cleanup runs. - Privilege under control — the app detects whether it's elevated and shows the status; it works without admin, and the functions that benefit from elevation warn you instead of failing silently.
- Handled failures, not crashes —
UnauthorizedAccessExceptionand the like are caught with a clear message; the user understands what happened rather than seeing a stack trace. - UTF-8 and special characters — the output is designed to render accents and symbols correctly, something most maintenance scripts ignore.
What this has to do with Meta Dados
SysDoctor is an open source project, but it carries the same discipline I apply to Meta Dados' production systems: separating orchestration from execution, treating errors as part of the contract, and designing for whoever operates it — not just whoever writes the code. A good tool is one that disappears so the problem can show itself.
Frequently asked questions
Do you need to be an administrator to use it?
Not for most operations — SysDoctor works without elevation and detects the privilege level, indicating the status visually. Some functions (deeper tunings, certain network tweaks) do more with administrator permission, and the app warns you when that's the case instead of failing without explanation.
Is it open source? What stack does it run on?
Yes, it's open source. It runs as a self-contained console app for win-x64, built in C# 12 on .NET 10, using Spectre.Console for the terminal interface and System.Management (WMI) to access system information. It requires Windows 10+ and PowerShell 5.1+.