Repository navigation
Releases: SeanShaffer88/SetupScope
Release list
SetupScope 1.0.0.0
Windows developer toolkit with five focused tools, CLI support, reviewed dependencies, diagnostic export, recovery and ten translated UI catalogs.
Downloads
- Portable ZIP: extract into a writable folder and run SetupScope.exe. Data stays beside the portable marker.
- Installer EXE: per-user installation, optional shortcuts and Windows Apps uninstaller. No elevation, automatic toolchain installation or PATH changes. Uninstall preserves saved data and unknown files.
- Both include SetupScope-cli.exe. Verify each download using its adjacent .sha256 file. The source receipt records the tested executable hashes; installer-validation.json records the final installer checks.
Validation
534 local tests, 18 packaged checks, 12 isolated-host checks, and 18 installer lifecycle/safety checks plus 543 installed payload checksums passed. Release build and Clippy completed with existing warnings. The installer was built with checksum-verified NSIS 3.13 using zlib compression.
Limits
Unsigned Windows 11 x64 packages. Clean-VM testing skipped at the owner's request. Native ARM64 runtime, broad OS/DPI, actual vendor installations, human native-language certification and interactive installer-page acceptance remain unverified. Details: release validation, installation.
InstallScope 0.1.0 — legacy development build
Legacy development build (InstallScope 0.1.0). These preserved downloads predate the SetupSweep rename and the newer developer-toolkit work shown in the repository. They do not contain those newer capabilities. This is an early preview; current Windows runtime, accessibility, installation, and recovery gates are incomplete.
See the current source and readiness notes before choosing a build. Asset names are intentionally preserved for existing links.
[0.1.0] - 2026-10-20
First public release on GitHub.
Added
- Browser extensions (Tools page): every extension installed in the supported Chromium-based browsers (Chrome, Edge, Brave, Vivaldi, Chromium, Opera, Opera GX) and Firefox-based browsers (Firefox, LibreWolf, Waterfox, Floorp), grouped by browser and profile. An extension can be disabled safely and reversibly: its files are moved into InstallScope's data folder (nothing is deleted, the rest of the profile is untouched) and restored to exactly where they were, with one click each way after a confirmation.
- App Rewind, early prototype (CLI only): rewind one program to a recorded state without touching the rest of the PC.
installscope rewind <log-id> --listshows the program's recorded states;--to <state> --dry-runprints the full plan, and anything that cannot be restored is named — a partial rewind is never presented as complete. Running a rewind (with--yes) takes a backup of the current state first, so the rewind itself can be undone from Backups, and records the moment before the rewind as a new state. File contents come from a new content store (rewindfolder in the data folder, contents kept once each under their SHA-256) fed byrewind <log-id> --capture; the registry is restored from the install log's recorded before-images by the same reviewed machinery that uninstalls. The store has a storage budget (Settings, 2 GiB by default): older file states are evicted first, but a program's before-state and its newest state are never evicted, and every eviction is listed by--list. Not yet included: a graphical interface, and automatic capture of file contents while monitoring (today, capture is explicit with--capture). - Installer Decrapifier (Monitor page, reviewing a recorded installation; CLI
installscope components <log-id>): every service, scheduled task, autorun and Startup shortcut the installation added is listed and judged Required for the program, Optional or Bloatware / telemetry / silent updater, with the reasons. Bloat is ticked to be struck: it is removed (backed up first, unless backups are off in Settings) when the log is saved, and taken out of the log. Judging uses built-in rules; for components they can't judge, a language model running on this PC can be asked (Settings > Installer Decrapifier, any OpenAI-compatible endpoint such as Ollama). Only addresses on this computer are accepted, so nothing leaves it. - Background monitoring waits on Windows' registry change notifications instead of checking every 30 seconds: between changes it uses no processor time at all, apart from the five-minute resource-use sample.
- Faster, leaner snapshots: paths and data are kept in shared pools instead of one allocation per entry, folders are listed with Windows' bulk directory reads, the registry is read with reused buffers, and two snapshots are compared in a single pass. Snapshots are saved in a compact binary format, written atomically and checked when loaded; snapshots saved by earlier versions still open.
- Crash-safe removals: every change is recorded in its backup, flushed to disk and written atomically, before it is made. A removal cut off by a crash or power loss is reported on the dashboard and the Backups page the next time InstallScope starts, with Undo what was done or Keep as it is;
installscope backupsmarks it as interrupted. - Stronger protection of critical locations: paths are compared the way Windows resolves them (
.., trailing dots and spaces,\\?\prefixes, forward slashes), and where a folder really leads (junctions, symbolic links, short names) is checked before it is deleted with its contents; links are removed on their own, never their targets. More folders (everything directly inside Windows, System32 and SysWOW64, every user profile, Windows' folders at the top of the drive) and keys (SAM, SECURITY, HARDWARE, BCD, numbered control sets, Winlogon, IFEO, Policies, per-user class hives) are protected, and the registry layer itself refuses to delete them. - Stress tests: very deep and wide registry trees, thousands of files, paths over 260 characters, links inside removed folders and files held open by another program.
- A note about Windows SmartScreen and checksums in the download instructions.
- Release workflow, ready for signing and scanning: when the repository has a code-signing certificate (
CODESIGN_PFX,CODESIGN_PASSWORD),InstallScope.exefor x64 and Arm64 and the installer are signed and timestamped, with checksums computed afterwards; when it has a VirusTotal key (VIRUSTOTAL_API_KEY), every download is scanned before publishing and the release notes link each report. Both steps are skipped until the secrets are set. - The performance check now also keeps
InstallScope.exeunder 40 MB. - Who is holding a locked file: when a file can't be deleted because it is open, the removal says which program, service or Windows component has it (Windows Restart Manager), instead of only that it will go at the next restart.
- Restart Windows Explorer during a removal (Settings > Safety, on by default; CLI
revert --restart-explorer): if Explorer has the program's shell extensions loaded, it is closed for the removal and started again afterwards, so those DLLs are deleted at once. Only Explorer is ever closed, never another program. - Close the program if it is running (Settings > Safety, on by default; CLI
revert --close-programs): running copies of the program being removed are asked to close, so they can save their work, and its files are then deleted at once. Only processes whose own program file is being removed are closed; an application that merely loaded one of its files (an add-in) is left running. - Try it, then undo (Monitor page, where Windows Sandbox isn't available, such as Windows 11 Home): installs on this PC under monitoring after attempting a restore point, shows the full review, then removes everything the installation added, without Simple mode's trimming since every item came from that installer minutes earlier. Keep it installed saves an ordinary install log instead.
- Locked-file tests on Windows: a file open in another program, a DLL loaded by another process, a running program inside the folder being removed, an add-in host that must not be closed, and a real service that holds its files until its process has exited.
- More installer types in the integration tests: Squirrel (Atom) and a WiX Burn bundle (PowerToys), plus InstallShield and Wise once the
INSTALLSHIELD_URL/WISE_URLrepository variables point to a test installer. - Soak test:
scripts/soak.ps1installs and removes real programs in a loop with background monitoring running, failing on leftovers, background-monitoring misfires and growing handle or memory use; it runs for five hours weekly in CI and can run for days on a test VM. - Shared-component reference counting: every removal review now cross-checks each item against all your install logs. Items are badged Used only by this program, Shared with N other programs (when another program's log also recorded the file, key, value, service or task) or No install log mentions this. Shared and unlogged items are never ticked automatically — including by Select all — and the review shows how many of your programs the reference data covers. The check is fully local; the CLI
revertcommand prints the same labels. - Slowdown Detective history capture (CLI
installscope historyandinstallscope slowdown): InstallScope now keeps a durable, versioned record of the changes behind "why is my PC slower than it was?" — programs installed, updated (with the version change) or removed, and autostart entries added, removed or changed — derived from install logs and from diffs of the installed-program and startup lists, stored ashistory.jsonin the data folder.installscope slowdown --from YYYY-MM-DD --to YYYY-MM-DDreports the period's changes, ranked by measured startup impact where Windows boot diagnostics or the usage tracker have a figure, and says so plainly when they don't. History starts accumulating from first use; early reports show an honest "not enough history yet" instead of invented numbers. - Autostart Gatekeeper (opt-in; CLI
installscope gatekeeper): when turned on (installscope gatekeeper enable, or Settings), each detection pass compares the programs that start with Windows — Run/RunOnce values and Startup-folder shortcuts — against a saved baseline. New or changed entries land in a review queue, attributed to the install log that added them when the evidence supports it (an entry recorded in a log is labeled with that program and the evidence; otherwise unknown origin — attribution is never guessed) and judged by the Installer Decrapifier rules.installscope gatekeeper scanruns one pass,allow <id>keeps an entry,remove <id>deletes it backed up first, exactly like other removals. The Gatekeeper never blocks an installer while it runs and never removes anything without your decision; undecided entries stay in the queue and out of the baseline. - Per-command CLI help:
installscope <command> --help(orinstallscope help <command>) prints that command's usage, flags, what it changes — including its backup and undo story — and how it confirms before destructive actions, then exits ...