A single portable Windows admin console: ten tabs of network, system, maintenance,
repair, security and performance actions, each one a real PowerShell / DISM / netsh
command whose full output lands in the pane below. No telemetry, no installer, no
bundled runtime — one 377 KB exe built against the .NET Framework that ships with Windows.
Built for the technician's habit of keeping twenty MMC snap-ins and a folder of scripts open at once. Everything destructive asks first; the maintenance run is dry-run by default.
Grab WinToolkit.exe from the latest release
and run it. It self-elevates (the manifest requests requireAdministrator), so expect a UAC prompt.
The exe is Authenticode-signed with a self-signed certificate, so Windows still reports an unknown publisher — that is expected, not a failure. Verify what you downloaded instead:
| Version | 1.0.2 |
| SHA-256 | E6EB50968B604AC2A52C74186AD5AD89409061C8F4472D27990C2C5231548557 |
| Signer | CN=WinToolkit Self-Signed, thumbprint 9E1F8373AC92AC6C1E13281F21C13CD95B23088E |
If you want the verified-publisher badge on machines you own, Trust-WinToolkitCert.ps1 imports
that public certificate into LocalMachine\Root and LocalMachine\TrustedPublisher, and
-Remove undoes it. Trusting a self-signed root is a real security decision — only do it on
your own machines, and only after checking the thumbprint above.
| Tab | Contents |
|---|---|
| Network | Full wired diagnostic, live link-speed monitor, NIC remediation (EEE + power-saving off, force 1.0 Gbps), flush DNS, release/renew, Winsock and TCP/IP resets, ipconfig /all, routing and ARP tables, listening ports, ping / traceroute / nslookup / port test, public IP + ISP, saved Wi-Fi passwords, adapter restart / disable / enable |
| System | System summary, disk health with SSD life remaining, drivers, installed updates, recent crashes, pending-reboot check, battery report, installed programs, scheduled tasks, environment variables, OS build, driver export, msinfo32, dxdiag, netplwiz |
| Maintenance | Cleanup / repair / extras run with per-section checkboxes, dry-run unless you tick EXECUTE, plus cleanmgr, DISM StartComponentCleanup /ResetBase, and clear-all-event-logs |
| Repair | sfc /scannow, DISM /RestoreHealth and /AnalyzeComponentStore, schedule chkdsk /f, reset Windows Update (SoftwareDistribution + catroot2), re-register Store apps, reset Windows Search, rebuild icon cache, gpupdate /force, restart Explorer, create restore point, full network reset, reset firewall, clear print queue |
| Security | Defender status / signature update / quick + full scan / threat history, firewall status and enable, BitLocker status, activation status, local administrators, Secure Boot + TPM, failed logons |
| Performance | Top CPU and RAM processes, startup programs, stopped automatic services, High performance / Balanced power plan, disable Fast Startup, kill process by name, resmon, mdsched |
| Tools | Launchers for Device Manager, Services, Event Viewer, Disk Management, Task Scheduler, Computer Management, Reliability Monitor, regedit, ncpa.cpl, appwiz.cpl, sysdm.cpl, Task Manager, msconfig, gpedit, lusrmgr, certmgr, Credential Manager, Power Options, Sound, Optional Features, Control Panel, hosts file |
| Report | One-click HTML health report, and a shortcut to the log folder |
| Updates | Check for updates, update history, trigger a scan, open Windows Update settings |
| About | Version and elevation state |
Output from every action is captured into the bottom pane, which has Copy, Save, Clear and Open logs buttons. The network monitor is the one exception — it opens in its own console window because it runs until you stop it.
| Piece | What it is |
|---|---|
WinToolkit.cs |
The WinForms UI: tabs, hand-drawn vector button icons (no image assets), the output pane, and the process plumbing that runs each script elevated and streams its output back. Generated — it is checked in for browsing, but the master copy is the $template here-string inside Build-WinToolkit.ps1, so edit it there or your changes are overwritten on the next build |
Troubleshoot-Network.ps1 |
Wired-NIC diagnostic. Aimed at the 1000 -> 100 Mbps renegotiation problem: cable/pair faults, EEE / Green Ethernet, NIC power management, speed & duplex settings. -Monitor logs every link change to a CSV + transcript; -Remediate fixes the OS-side causes |
Maintain-Windows.ps1 |
Cleanup + repair + extras. Dry-run by default; -Execute makes real changes in a deliberate order — restore point first, then cleanup, then DISM (which repairs the component store) before SFC (which consumes it) |
WinToolkit-Actions.ps1 |
The -Action <Name> dispatcher behind every single-purpose button, including the HTML health report and the SMART / SSD-life query |
Build-WinToolkit.ps1 |
Base64-embeds the three scripts into the C# source, draws the app icon, writes the manifest, compiles with the in-box csc.exe, and signs the result with a self-signed cert |
Trust-WinToolkitCert.ps1 |
Opt-in publisher trust for the self-signed cert, reversible with -Remove |
The three PowerShell scripts are embedded in the exe and re-extracted to
%LOCALAPPDATA%\WinToolkit on every launch, so they always match the running build.
That location is deliberate: %TEMP% would be wiped by temp cleaners and by the toolkit's
own Maintenance > Cleanup. You can also run any script on its own from an elevated prompt.
Everything the toolkit produces goes under that same per-user root, and Report > Open logs folder opens it:
| Path | Contents |
|---|---|
%LOCALAPPDATA%\WinToolkit\maintlogs |
Maintenance run transcripts, and the HTML health report |
%LOCALAPPDATA%\WinToolkit\netlogs |
Network monitor transcript + link-change CSV |
%LOCALAPPDATA%\WinToolkit\driver-backup-<stamp> |
pnputil driver exports |
Folders are created on demand. Running a script directly, -LogDir overrides the first two.
Windows 10/11 with the .NET Framework already present. Nothing to install — the build locates
the in-box csc.exe in the .NET Framework runtime directory
(C:\Windows\Microsoft.NET\Framework64\v4.0.30319 on a current machine) and uses that.
git clone https://github.com/unupunct/Windows-Tech-Toolkit.git
cd Windows-Tech-Toolkit
powershell -ExecutionPolicy Bypass -File .\Build-WinToolkit.ps1That writes WinToolkit.exe, WinToolkit.ico, WinToolkit.manifest and
WinToolkit-codesign.cer next to the sources. Re-run it after editing any .ps1 or the
.cs — the scripts are compiled in, so editing a script alone changes nothing until you
rebuild. -SourceDir and -OutExe override the paths.
- The self-signed signature is not a trust anchor. SmartScreen and Windows will warn. Check the SHA-256 above, or build it yourself.
- Elevation is all-or-nothing. The manifest requests administrator, so the whole app runs elevated. The maintenance script degrades gracefully without admin, but the exe never gets there.
- Destructive actions confirm, they do not undo. "Clear all event logs" erases diagnostic
history,
ResetBaseblocks uninstalling current updates, the Winsock and TCP/IP resets need a reboot, and "Show Wi-Fi passwords" prints saved keys in plain text. Each asks first. - Wired-first. The network diagnostic is built around physical Ethernet; Wi-Fi gets status and saved-password readouts, not the same depth.
- English UI, tested on Windows 11 23H2 (build 22631). Older builds and non-English Windows
are untested — some
netsh/powercfgoutput parsing may differ.
MIT — see LICENSE.
