App Janitor

AppSweep

Snapshot before you install, snapshot after you uninstall. The difference is the leftovers.

Free right now. No account, no card

Get AppSweep free → Windows & Mac · one file, nothing to install

Preview

1 interface design, then a screenshot of it running. Drag, scroll or use the arrows.

Interface design AppSweep, 1 of 1
Screenshot AppSweep running on Windows today

Free while we’re in preview

Get AppSweep

Snapshot before you install, snapshot after you uninstall. The difference is the leftovers.

The Mac button is for Apple Silicon. On an older Intel Mac, get this one instead.

One file, both ways. Double-click it for the window. Run the same file from a command prompt with arguments and it behaves as the command-line tool, because the engine is inside it. Nothing else to download and nothing to keep beside it.

Early preview. The window has been built and run, but not yet on a real Windows PC or Mac, so expect rough edges. The engine underneath it is fully tested.

  • One file, no installer
  • Runs on your machine, offline
  • Source code published below

Free while in preview. It isn’t signed yet, so Windows or macOS will ask you to confirm the first time you open it. here is exactly what to click. At launch, AppSweep is included in every plan along with the rest of the range.

No pattern list, on purpose

Most leftover cleaners ship a rulebook: somebody wrote down that AcmeApp leaves a folder in AppData\Roaming\Acme, so the cleaner looks there. That only ever finds leftovers somebody already knew about.

AppSweep has no rulebook. You run appsweep snapshot "C:\Program Files" "%APPDATA%" --out before.json, install the app, use it, uninstall it later, then snapshot the same roots again. diff sorts every file into ADDED, REMOVED, MODIFIED or UNCHANGED. The ADDED list is what the uninstaller orphaned, including the things nobody anticipated.

The catch, stated clearly

You have to have taken the before snapshot. Point AppSweep at a machine that’s already dirty and it has nothing to compare against. This is a tool you run around an installation, deliberately.

What sweep will and won’t move

Only ADDED files. A file present in both snapshots is yours, even if the installer edited it. Before moving anything it re-checks the file against the after snapshot and skips it if size or mtime drifted. Quarantine mirrors the full directory structure and never overwrites. Dry run unless you pass --apply.

Files only. Registry keys and services aren’t diffed yet.

Questions about AppSweep

What does AppSweep do?

Uninstalling a program hardly ever removes all of it. Settings, caches and stray folders stay behind for years. Cleaners that hunt for known leftovers can only find the ones somebody wrote a rule for; AppSweep works the other way about. You take a note of what is on the computer before you install something, and another after you have uninstalled it, and whatever is in the second note but not the first is what got left behind — including the leftovers nobody anticipated. Nothing is ever deleted: leftovers are moved into a holding folder you can empty at your leisure.

Will AppSweep delete my files?

No. Anything AppSweep takes away is moved into a folder you choose, with its path kept, so you can look through it and put anything back. It also prints the entire plan first and stops until you tell it to go ahead.

Does AppSweep send anything over the internet?

No. There is no network code compiled into AppSweep at all, nothing in the binary can open a socket. 88 of the 100 programs here are like that.

Does AppSweep run on a Mac?

Yes. There are builds for Apple Silicon and for Intel Macs, as well as for Windows and Linux, one file each, with no installer and nothing to uninstall.

Is AppSweep free?

Yes, while Techlosoft is in preview: no account, no card, and nothing switched off. Later it is part of a plan covering all 100 programs rather than sold on its own, and anything you download now carries on working.

Reading on the job itself

Advanced & technical details Command-line builds, source code, checksums and a recorded session, for developers and IT teams

A working CLI prototype of the leftover-detection engine: snapshot the filesystem before an install and again after the uninstall, then diff to find exactly what the uninstaller orphaned — including leftovers no pattern-based cleaner has a rule for. Catches same-size content changes via mtime, and quarantines only the added files, leaving everything present in both snapshots untouched. Registry and service diffing are on the roadmap.

Recorded session

Recorded terminal session showing AppSweep running
A real recorded session, AppSweep’s actual output, captured by running the shipped binary.

Naming status

Working name only — brand verdict **AVOID** (Very High). Collision: AppSweep. Rename completely.

What it draws on

Existing paid software whose best ideas shaped this program: Revo Uninstaller Pro, CCleaner Professional, IObit Software Updater Pro, Driver Easy Pro.

Command line

There is nothing extra to install. The program you download is the command-line tool as well: give it arguments instead of double-clicking it and it runs as one, with its output on your terminal. The standalone builds below are the same engine on its own, for machines where you would rather not ship a window at all.

appsweep: error: no command given

appsweep 1.0.0 — find what an uninstaller left behind, by snapshot diff.

A pattern-based cleaner can only find leftovers somebody wrote a pattern for.
appsweep compares a filesystem snapshot taken BEFORE you installed an app with one
taken AFTER you uninstalled it, so it finds every orphan — including the ones
nobody anticipated.

USAGE
  appsweep <command> [flags]

COMMANDS
  snapshot   record path, size and mtime of every file under one or more roots
  diff       report ADDED / REMOVED / MODIFIED files between two snapshots
  sweep      quarantine the ADDED files (the leftovers). Dry run by default.
  help       show this help, or "help <command>"
  version    print the version

TYPICAL SESSION
  appsweep snapshot ~/AppData /Program\ Files --out before.json
  ... install the app, use it, then uninstall it ...
  appsweep snapshot ~/AppData /Program\ Files --out after.json
  appsweep diff  --before before.json --after after.json
  appsweep sweep --before before.json --after after.json --quarantine ./quarantine
  appsweep sweep --before before.json --after after.json --quarantine ./quarantine --apply

SAFETY
  sweep is a DRY RUN unless you pass --apply.
  sweep only ever touches ADDED files. Anything present in BOTH snapshots is
  left alone. Nothing is ever deleted — files are MOVED into the quarantine
  directory with their directory structure preserved, so you can move them back.

EXIT STATUS
  0  success (including "differences found")
  1  bad invocation, unreadable/corrupt snapshot, or a failed move

Flags may appear before or after positional arguments.

Recorded from the shipped binary, not written by hand.

Source

Every file the program is built from:

console.go · console_test.go · guided.go · main.go

SHA-256 checksums · build instructions & scope notes · full build plan