A clean, minimal maintenance tool for Windows 11. It checks your PC's health first and repairs only what needs repairing.
Türkçe: README.tr.md
- No third-party software — no programs, drivers or components from anyone else; only tools that ship with Windows
- Portable, no installation — extract the ZIP to any folder and run
WinCare.exe; everything stays in that one folder - No background service — no service, scheduled task or startup entry. Open it, do what you need, close it; nothing keeps running after you close it
- No registry writes — settings and run history are small files in the
datafolder next toWinCare.exe. Run history is kept per computer, so a copy carried to another PC gives each PC advice about itself - Nothing is sent anywhere — the connection checks only ping your router and Cloudflare (
1.1.1.1); the speed test runs only when you start it - Free and open source (MIT), in English and Turkish
Only Windows' own tools. Every check, cleanup and repair is done by tools that already ship with Windows: DISM, SFC, chkdsk, winmgmt, netsh, ipconfig, Windows Storage cmdlets and Windows' own Delivery Optimization cleanup. WinCare installs nothing, runs no background service, uses no third-party cleaners or drivers and never writes to the registry. Nothing is sent anywhere — the connection checks only ping your router and Cloudflare (1.1.1.1), and the optional internet speed test runs only when you start it and exchanges nothing but test data with Cloudflare's public speed test (speed.cloudflare.com). Your Windows settings are left alone; the only exceptions are the two network resets, which run only when you choose them and say so before they start.
The common repair commands, one click away. The commands people usually look up and type into an elevated command prompt — sfc /scannow, DISM /RestoreHealth, chkdsk /f, netsh winsock reset and the rest — are each a button. The exact command is shown next to the button. While it runs, a small live panel shows the command, the elapsed time, a real progress bar (read from the tool's own percentage output) and its latest output lines, so a long DISM /RestoreHealth never looks frozen. The full output is kept on the Activity page.
It tells you when a command last ran and whether you need it. WinCare remembers when each command was last run and how it ended, and gives a short recommendation for every one of them:
- Recommended - never run / Recommended - last run 40 days ago for periodic checks
- Not needed now when a check ran recently and found nothing
- Recommended - a check found a problem for a repair, only after a check reported damage
- Recommended - Windows was updated on ... for removing old update files, and Not needed - Windows did this itself when Windows' own cleanup task already ran after the last update
- Only needed if you have connection problems for the network resets
So you run what is useful, not everything every time.
| Command | What it does | Recommended when |
|---|---|---|
DISM /Online /Cleanup-Image /CheckHealth |
Reads Windows' corruption flag (instant, read-only) | Not run in the last 7 days |
DISM /Online /Cleanup-Image /ScanHealth |
Scans the component store for damage (read-only) | Not run in the last 30 days |
sfc /verifyonly |
Verifies protected system files without changing them | Not run in the last 30 days |
winmgmt /verifyrepository |
Checks the WMI repository | Not run in the last 90 days |
winget upgrade |
Lists apps with newer versions | Not run in the last 7 days |
DISM /Online /Cleanup-Image /RestoreHealth |
Repairs the Windows image | A check found damage |
sfc /scannow |
Repairs protected system files | Verification failed, or right after an image repair |
sfc /scanfile=<file> |
Repairs a single system file | A specific file is reported damaged |
winmgmt /salvagerepository |
Rebuilds an inconsistent WMI repository | The WMI check failed |
DISM /Online /Cleanup-Image /StartComponentCleanup |
Removes update files replaced by newer updates | Windows was updated after the last cleanup |
Read-only file system scan (Repair-Volume -Scan) |
Checks the system drive without a restart | Not run in the last 30 days |
chkdsk X: /f · /r · /f /r /x |
Repairs the file system / finds bad sectors | The file system scan found a problem |
| Drive optimization (TRIM / defrag) | TRIM for SSDs, defrag for hard disks only | Windows has not optimized the drives for 7 days |
ipconfig /flushdns, adapter restart |
Fixes stale DNS entries and adapters without an IP | The connection has a problem |
netsh winsock reset, netsh int ip reset |
Resets the network stack (needs a restart) | The connection has a problem |
bootrec / bcdboot |
Startup repair | Windows does not start (shown for the recovery environment) |
mdsched.exe (Windows Memory Diagnostic) |
Tests the RAM during a restart (it asks first) | Programs crash or the PC restarts on its own |
| Before you play check (read-only) | Looks for busy background programs, memory pressure, a pending restart, battery power and full drives | Before you start a game |
Run history is stored in the data folder next to WinCare.exe, one file per computer.
- Overview — one glance tells you whether your PC is healthy, plus a short list of anything that needs attention, the last speed test and the before you play check
- Quick care (1-2 min) — safe cleanup and an instant integrity check, no questions asked
- Deep care (10-20 min) — adds DISM repair (only when needed), SFC, a read-only file system scan and SSD TRIM
- Cleanup — every location is measured first; only what you select is removed
- System health — check first, repair only when needed:
DISM /CheckHealth/ScanHealth/RestoreHealth,sfc /verifyonly/scannow/scanfile,winmgmt /verifyrepository/salvagerepository, app update check (winget) - After Windows Update —
DISM /StartComponentCleanupremoves superseded update files - Startup problems — restart into the recovery environment with the right
bootrec/bcdbootcommands for your firmware - Disks — free space, SMART health (temperature, wear, errors), read-only file system scan,
chkdsk /f/r/f /r /x, media-aware optimization (TRIM for SSD, defrag for HDD only) - Internet speed test — on the Overview and Network pages: download, upload, ping and jitter (4 parallel connections, warm-up ignored, ping via ICMP); the last result is kept, and a failed attempt never hides it
- Network — connection diagnosis,
ipconfig /flushdns, adapter restart,netsh winsock resetandnetsh int ip reset(opt-in, with warnings) - Performance — an honest memory check: what is really available, what programs have reserved, cache, driver memory, RAM speed and the programs using the most memory. Deliberately no "free up RAM" button: Windows uses spare memory as a cache and gives it back instantly, so emptying it only slows things down
- Before you play — a read-only check of what could get in the way of a game right now: programs keeping the processor busy (with hints such as Windows Update is installing), memory, a pending restart, battery power, nearly full drives, Game Mode, background recording and ping. No services are stopped and no "game booster" tweaks are applied. A busy program can be closed on request — exactly like its X button, so it can still ask you to save
- Live output — the running command, elapsed time, real progress percentage and latest output lines, in a panel you can hide
- Run history — when each command last ran, how it ended, and whether it is needed now
- Multilingual — English and Turkish included; adding a language is one JSON file
- Follows the Windows light/dark theme and accent color
| Rule | Why |
|---|---|
| SSDs are never defragmented, only trimmed | Defragmentation writes data and wears flash memory |
| Read-only checks first, changes second | You always see the result before anything is modified |
| Irreversible actions always ask | Recycle Bin, image repair, component cleanup |
| Safety lock on every delete | Drive roots, Windows and profile folders can never be targets |
No /ResetBase, no Prefetch deletion, no registry "cleaning" |
Harmful or irreversible |
fsutil dirty set is never used |
It does not clear NTFS repair records and causes endless "disk error" loops |
| Network resets are never automatic | Winsock / TCP-IP resets remove VPN and custom IP settings |
| Thumbnail, icon, GPU shader, Prefetch and font caches are never cleaned | They make Windows and games faster; deleting them only forces a slow rebuild |
| No "free RAM" button, no service stopping, no "game booster" tweaks | Emptying the memory cache only makes Windows read the same files from disk again; stopping services and changing settings rarely helps a modern PC and can break things |
| Programs are never killed | Closing a program sends the same request as its X button, so unsaved work still prompts; Windows, the shell and app hosts cannot be closed from WinCare |
| Culture-invariant path checks | On Turkish Windows culture-aware matching breaks on the letter I |
- Windows 11 (Windows 10 21H2+ should work)
- Administrator rights
- Windows PowerShell 5.1 (built in)
Download: get WinCare-<version>.zip from Releases, extract it anywhere and run WinCare.exe. Windows asks for administrator rights; WinCare needs them for DISM, SFC and chkdsk.
SmartScreen: the executable is not code-signed yet, so Windows may show "Windows protected your PC". Choose More info > Run anyway.
WinCare.exeis a tiny launcher; its full source is inlauncher/and all maintenance logic is plain PowerShell insrc/.
Verify your download: every release package is built from the tagged source code by GitHub Actions, not on a personal computer, and carries a signed build provenance attestation. With the GitHub CLI:
gh attestation verify WinCare-<version>.zip --repo borasavkar/WinCare
From source: clone the repository and run WinCare.bat, or build the executable (see below).
git clone https://github.com/borasavkar/WinCare.git
Every command WinCare runs is shown next to its button, and its output is written to the Activity page.
| Cleanup | System health |
|---|---|
![]() |
![]() |
Live output while a command runs:
WinCare.bat script launcher (elevation + STA)
launcher/ source of WinCare.exe (C#) and its UAC manifest
src/Core.psm1 UI-independent engine
src/WinCare.ps1 WPF user interface
lang/*.json translations
assets/ icon (generated by build/New-Icon.ps1)
build/ icon, executable and release package builders
docs/screenshots/ images used in this README
tests/ automated checks
Only tools that ship with Windows are needed (the .NET Framework 4.x C# compiler):
powershell -NoProfile -STA -File build\New-Icon.ps1 # regenerate assets\ (optional)
powershell -NoProfile -File build\Build-Exe.ps1 -Package # WinCare.exe + dist\WinCare-<version>.zip
powershell -NoProfile -STA -File tests\Test-WinCare.ps1 # automated checks
To publish a new version (sets the version everywhere, runs the checks, builds, tags, pushes and creates the GitHub release with a verified ZIP):
powershell -NoProfile -STA -File build\Release.ps1 -Version 1.1.0 [-NotesFile notes.md] [-DryRun]
The screenshots are produced by the app itself, in a read-only mode:
powershell -STA -File src\WinCare.ps1 -ScreenshotDir docs\screenshots -Language en -Theme dark
- Copy
lang/en.jsontolang/<code>.json(for examplede.json). - Update the
_metablock (code,name,nativeName,culture). - Translate the values. Keep
{0},{1}placeholders and\nline breaks. - Run
tests/Test-WinCare.ps1— it reports missing or extra keys.
The new language appears in Settings automatically.
src/*.ps1andsrc/*.psm1are kept ASCII-only; all text lives inlang/. This avoids code page problems with Windows PowerShell 5.1.- All work runs in a background runspace; the UI thread only updates controls.
- Output of
dism,sfcandwingetis language dependent, so the code relies on exit codes and structure, never on parsing localized text.
This program will not transfer any information to other networked systems unless specifically requested by the user. The connection checks send only pings to your router and to Cloudflare (1.1.1.1). The optional internet speed test, which you start yourself, exchanges only test data with Cloudflare's public speed test (speed.cloudflare.com, see Cloudflare's privacy policy). Settings and run history stay in the data folder next to WinCare.exe.
Free code signing provided by SignPath.io, certificate by SignPath Foundation.
- Committers and reviewers: borasavkar
- Approvers: borasavkar
Privacy policy: see Privacy. This program will not transfer any information to other networked systems unless specifically requested by the user or the person installing or operating it.
WinCare installs nothing and registers no service. To remove it:
- If you pinned it, right-click the taskbar icon and choose Unpin from taskbar.
- Delete the WinCare folder.
- Versions before 1.7 kept settings and run history in
%APPDATA%\WinCare; if that folder exists, you can delete it too.



