03 · Utility Forge · Files

Tidy

In development

How do I organise Downloads without losing anything?

Safely organise messy folders such as Downloads, with a preview and an undo.

Tidy sorts the files directly inside one folder into category folders by extension. It shows the complete move plan first, detects name collisions, moves nothing until you approve that exact plan, records every move in a journal and can move files back. It never deletes, copies or overwrites a file.

Release
None yet
Status
In development
Model
Free
Windows
Windows 11 (tested on x64)
Architecture
x64
Packaging
Portable ZIP (planned)
Licence
To be announced
Changes your system
Only after preview

Worked example · illustrative values

The path it makes visible.

The question-to-answer path Tidy follows, with illustrative values. Tidy is implemented and tested internally but not released, so nothing here can be downloaded yet.

Tidy · from question to answer

Illustrative example

How do I organise Downloads without losing anything?

  1. 01 Files 1,284 files in Downloads Scanned and classified by extension. Nothing moves yet.
  2. 02 Proposed organisation Installers · Documents · Images · Archives Category folders inside Downloads itself.
  3. 03 Preview 1,201 ready · 3 names taken · 80 left alone Every move listed, with each held-back file and its reason.
  4. 04 Confirmed operation Applied and journaled Each move recorded; files can be moved back while unchanged.

Answer Organised on your explicit go. Nothing deleted or overwritten, and every move recorded so it can be reversed.

Capabilities

What it does

  • A complete plan before anything moves

    Every file that would move and where, every folder that would be created, and every item left alone with its reason. Making the plan changes nothing.

  • Collision detection, never an overwrite

    A file whose name is already taken in the destination is held back, or given a free name such as "holiday (2).jpg" if you choose. Even a name taken after planning cannot be overwritten, because the rename itself refuses.

  • Approval of the exact plan

    Applying requires the plan you reviewed. If anything in the folder changed since, Tidy shows the new plan instead of applying the old one.

  • Careful about what it touches

    Subfolders, links, cloud placeholders, hidden and system files, unfinished downloads, temporary files and unusual names are left where they are. Each file is checked again immediately before it moves.

  • Journal and undo

    Each move is recorded before and after it happens. Undo moves a file back only if it is the same, unchanged file and its original name is free; anything else is reported as a conflict and left alone.

  • Desktop application and command line

    The desktop app shows the plan in Will move, Need attention and Left alone tabs, asks for confirmation and keeps a History page; the command line does the same for scripts, with JSON output.

Deliberately out of scope

  • It never deletes, copies or overwrites a file, and never opens or runs one.
  • It is not a duplicate finder, a disk cleaner or a storage analyser.
  • It does not look inside files. Classification is by extension only, so a file named .pdf goes to Documents whatever it contains.
  • It does not enter subfolders or organise several folders at once.
  • A run of many moves is not a transaction. If it stops part-way, the files already moved stay moved and are listed; undo can move them back.

Explanation

How it works

The problem

Downloads fills up with installers, invoices, photos and archives until finding anything takes longer than downloading it again. The usual fixes are risky: a “cleanup” tool that decides what to delete, a script found online that moves everything with -Force and silently replaces files with the same name, or an afternoon of dragging files around with no record of where anything went. The guide Organise Downloads safely without a cleanup utility shows how to do the job carefully by hand in PowerShell.

What Tidy does

Tidy follows the order the Blueprint requires for anything that changes files: preview, validation, explicit execution, a journal, and undo where it is technically possible.

  1. Scan. Lists the files directly inside the folder you chose. Subfolders are never entered; links, cloud placeholders, hidden and system files, unfinished downloads and temporary files are left alone, each with its reason.
  2. Plan. Classifies each file by its extension into Documents, Images, Videos, Audio, Archives or Installers inside the same folder, and checks every destination name. Unrecognised files stay put unless you ask for an Other folder. Scripts and shortcuts are deliberately never filed beside documents.
  3. Approve. You review the whole plan. The approval is tied to that exact plan, so a folder that changed in the meantime is planned again rather than applied blindly.
  4. Apply. Each file is opened so that no other program can change it, checked against what was planned, and renamed into its folder by a call that cannot replace an existing file. The journal records the move before and after it happens.
  5. Undo. History lists each operation. Undo moves files back only when it can do so without changing or replacing anything you touched since.

On the command line a session looks like this:

PS> tidy plan "$env:USERPROFILE\Downloads"
Plan for C:\Users\me\Downloads
Plan ID: 6101670615e4a9b240c6e35e8810fc71

Folders to create: Documents, Installers

Moves (2 ready, 1 blocked):
   m0001  Invoice 2026.pdf  ->  Documents\Invoice 2026.pdf
 x m0002  holiday.jpg  ->  Images\holiday.jpg
           blocked: Images already has a file named holiday.jpg. Nothing will be overwritten, so this file stays where it is.
   m0003  setup.exe  ->  Installers\setup.exe

Left where they are (2):
    Images  - folder (not entered)
    big.iso.crdownload  - download in progress

This was a preview: nothing was changed.

That example comes from the command-line documentation.

Where the guarantees stop

Tidy’s safety model is documented with its limits, and the product page should say them too:

  • A batch of moves is not a transaction. Each single move is atomic, but a run that is stopped or interrupted leaves some files moved and others not; Tidy reports exactly which.
  • Classification trusts the name. invoice.pdf.exe is an .exe and goes to Installers, never Documents, but Tidy never checks that a .pdf really is a PDF.
  • The journal keeps the last 100 operations. Older ones can no longer be undone.

Current status

Part State
Engine, journal, undo and tidy command line Implemented, tested on Windows CI
Tidy.exe desktop application Implemented, tested internally
Portable ZIP packaging and verifier Implemented; unsigned internal builds only
Signing decision and public release Open. Nothing is downloadable

Internal packages have been run only on Windows 11 x64.

Datasheet

What it touches, and what it does not

Project publisher
RedLine Final legal publisher name pending.
Code signature
Not decided yet Each release states whether it is signed before you download it.
SHA-256
Published with each release
Packaging
Portable ZIP
Telemetry
None
Account
Not required
Administrator rights
Not required Runs as a standard user and requests no privileges. System locations such as Windows, Program Files, AppData and drive roots are refused.
Network access
None No network connections. Network locations are refused before anything is opened.
Changes your system
Only after preview and confirmation Scan and plan are read-only. Applying needs the plan you reviewed; every move is a rename that the file system refuses if the name is taken, and is recorded before and after it happens.

Implemented and tested internally. There is no public release and nothing to download yet.

Revision block · status today
Rev Part Status
A1 Scan, classification and move planner Extension rules, collision detection and a plan identifier that changes whenever the folder does. Implemented
A2 Journal, recovery and undo Private per-user journal of the last 100 operations; interrupted runs are recognised and checked. Implemented
A3 Command line (tidy) scan, plan, apply with an approval ID, history, show, undo and recover. Implemented
A4 WPF desktop application (Tidy.exe) Scan, review, confirm, result and History with undo. Tested internally; not released. Implemented
A5 Packaging and release verification Reproducible portable ZIPs with SHA-256 sums, a manifest, an independent verifier and tamper tests. Every package so far is an unsigned internal build. Implemented
C1 Release signing decision and public release Nothing is published or downloadable. No code-signing certificate exists; an unsigned Tidy release would need its own policy decision. Planned
Implemented
Merged into the main branch and covered by automated tests on Windows. Implemented is not the same as released.
Planned
Not started.
Released
Nothing yet. No part of this product has been signed or published, and nothing can be downloaded.

Quick start

The common task, before you need a manual.

  1. Build the command line

    No build is published yet. Until the first public release, Tidy is built from source with the .NET SDK pinned in global.json.

    Needs access to the source repository, which is private during development.

    cd apps/tidy && dotnet build Tidy.Engine.slnx -c Release
  2. Preview the plan

    Read-only. Prints every move, every blocked move with its reason, and the plan ID you approve with.

    tidy plan "$env:USERPROFILE\Downloads"
  3. Apply exactly what you reviewed

    Re-plans the folder and applies only if the plan ID still matches. Nothing is applied without --approve.

    tidy apply --folder "$env:USERPROFILE\Downloads" --approve <plan-id>
  4. Undo an operation

    The operation ID comes from the apply output or tidy history.

    tidy undo <operation-id>

Documentation

Reference

Security and privacy Safety, security and privacy

Release history

Versions

No releases published yet

Every release will appear here with its version, date, checksums and notes. Published versions are immutable.

Guides

Problems Tidy answers

How-to · 8 min · updated

Organise Downloads safely without a cleanup utility

Sort a cluttered Downloads folder into category folders with PowerShell, without losing or overwriting anything: inventory the files, build and review a move plan, catch name collisions, confirm each move, keep a record and undo it if needed.

FAQ

Questions people ask

Can Tidy delete or overwrite my files?

No. It has no code path that deletes a file, and every move is a rename that Windows refuses if the target name exists. The only thing it removes is a category folder it created itself, and only when that folder is empty after an undo.

Is undo guaranteed?

No, and Tidy says so. Undo moves a file back only if it is still the same, unchanged file where Tidy put it and its original name is free. If you renamed, edited or moved the file, or something else now has its old name, that file is reported as a conflict and left exactly where it is. The journal keeps the most recent 100 operations.

Why does it refuse my OneDrive folder or USB stick?

Tidy checks every file's identity before and after it moves, and undo depends on that. Cloud-synchronised folders, network shares and FAT32, exFAT or ReFS drives cannot give it the guarantees it needs, so it refuses them instead of working less safely.

Does Tidy look inside my files?

No. It sorts by the extension of the name only and never opens, reads or runs a file. To find out what a file really is, use FileScope or the manual inspection guide.

Can I download it today?

Not yet. The engine, command line and desktop app are implemented and tested internally, and the packaging pipeline produces unsigned internal builds, but nothing is published. A public release will be published here with SHA-256 checksums and will say before download whether it is signed. Free signing is being evaluated; an unsigned release of this product would first need its own policy decision.