Files
Explorer-Workbench/docs/Documentation.md

22 KiB
Raw Blame History

Explorer Workbench

Personal file management workbench for Windows. The goal is to make working with files faster — not to replace the filesystem, and not to silently change Windows configuration.

Mental model:

Open Explorer Workbench → see files → manage files → search immediately → analyze storage.

Windows remains the source of truth. Removing a location from Workbench removes Workbenchs index data for it. It does not disconnect a network drive, unlink OneDrive, or change Explorer settings.

Version documented here: 0.1 (schema 9). This file is the user guide. Edit it in any text editor; Explorer Workbench reloads it when you open Help → Documentation.


What it is (and is not)

Workbench does:

  • Browse live folders (local, removable, network, cloud mounts)
  • Index locations you choose, then search and analyze them
  • Queue copy, move, recycle, rename, archive, convert, sync, and organize work
  • Overlay Git and cloud status without becoming a Git client or a sync engine

Workbench does not:

  • Two-way sync
  • Hydrate online-only cloud files just to look at them
  • Change Windows drive mappings or cloud client folders
  • Replace Git (no stash, branch UI, mergetool, or credential dialog)

Specialized tools still do specialized jobs. 7-Zip compresses. FFmpeg converts a few media kinds. Git reports status, shows diffs, commits selected files, resolves conflicts, and runs fetch, pull, and push. Workbench orchestrates.


First launch

  1. The window starts Explorer.Host.exe if it is not already running, then connects over a named pipe. Locations fill in a moment later — Workbench does not wait for slow network shares.
  2. Browsing works with an empty index.
  3. Folder sizes, search, duplicates, and storage analysis need an index. Use the banner Build index, Tools → Locations → Index this location, or the toolbar Index control.
  4. Data lives under %LocalAppData%\ExplorerWorkbench\ — never beside the executable.
  5. Closing the window leaves the host running (indexing and the queue). A tray icon Explorer Workbench host can open the window again or Quit background host. File → Stop background host… does the same from the window.
Path Contents
%LocalAppData%\ExplorerWorkbench\index.db Index, queue, profiles
%LocalAppData%\ExplorerWorkbench\logs\ Rolling logs
%LocalAppData%\ExplorerWorkbench\ui-preferences.txt Theme, layout, tool paths, organize destinations, favorite folders

Window layout

  • Title bar — Explorer Workbench; minimize / maximize / close.
  • Menu — File (including Stop background host), View, Tools, Settings, Help. Tools is grouped: Storage, Locations, File Operations (including Archives and Convert), Automation, Development, Recycle Bin.
  • Toolbar — navigation, view mode, search.
  • Tree — Favorites, Home, This PC, Network, Cloud (Network/Cloud grouping and tree synchronization are in Settings → Navigation).
  • Folder pane — breadcrumb bar (click the empty space, or Ctrl+L / Alt+D, to type a path), then details, list, or preview. Split pane is optional.
  • Status bar — item count and size for the active folder, or for the current selection; Git badge; queue.
  • Queue — compact status; expand for the full File Operations Queue.

Tabs and panes

Action How
New tab File → New tab, or Ctrl+T
Close tab File → Close tab, or Ctrl+W
Split pane File → Split pane
Details / List / Preview View menu or toolbar
Type a path Click empty space in the tab breadcrumb bar, or Ctrl+L / Alt+D
Refresh View → Refresh, or F5

Tabs, split panes, and the folder shown in each pane are restored the next time you open Workbench.


Locations

Favorites

Pinned folders of your choosing, at the top of the tree. Add a folder with Add to Favorites on the folder or tree context menu, or drop a folder onto the Favorites root. Remove it with Remove from Favorites. Unpinning only removes the pin — it does not delete files, forget a location, or change the index.

Favorites are stored in ui-preferences.txt. A pin that points at a missing folder still appears, marked Offline, so you can unpin it.

The folder pane always shows the real filesystem path. Breadcrumbs stay the same. The locations tree is separate: by default it keeps the branch you are already in. Opening a folder under This PC, Home, Network, or Cloud does not switch the tree to Favorites just because that folder is also pinned. If you opened the folder from a Favorite, the tree stays under Favorites. Settings → Navigation → Prefer Favorites when synchronizing the locations tree selects a matching Favorite pin instead.

Home

Documents, Downloads, Pictures, Videos, and Music from Windows known folders. They have their own root, not under This PC. Folders that do not exist on this PC are omitted.

This PC

Local NTFS volumes and removable disks. Capacity and free space show next to size where Windows reports them.

Network

Add a UNC path with Tools → Locations → Add network… (\\server\share). Mapped Windows drive letters can be imported when Workbench discovers them. Forgetting a Workbench location does not disconnect the Windows mapping.

After a Windows start, shares can show Offline until they answer. Opening a folder or a file on the share marks it online in the tree; sleeping NAS boxes may take a second or two.

Cloud

OneDrive, Google Drive, and Nextcloud appear when you add their mounted Windows folders (Tools → Locations → Add OneDrive… / Google Drive… / Nextcloud…). Workbench browses those paths with Win32 like any other folder. Plugins only overlay status, pin/dehydrate actions, and quota. Cloud folders stay ordinary locations — they are not a separate “cloud filesystem.”

Online-only placeholders are not hydrated to compute size, search content, hash duplicates, or pack archives. Status text on the item tells you when a file is online-only.

Recycle Bin

Open it from Tools → Recycle Bin. Workbench talks to the real Windows Recycle Bin. Emptying it is a queued operation. $RECYCLE.BIN folders on volumes are hidden from normal browsing.

Remove vs restore

  • Remove from Explorer forgets the Workbench location and its index rows.
  • Windows resources stay. You can import them again from discovery.

Browsing and file management

The open folder is always the live filesystem when the location is online. Index data fills in folder sizes, search, and analysis.

Large folders appear as soon as names are known — the previous folder stays on screen until the first new name arrives. Size, date, and type from the directory listing show with the row. Cloud status, indexed folder totals, and Git badges fill in shortly after — blank cells mean that extra metadata has not arrived yet, not that the file is empty. Opening another folder cancels leftover work from the previous one. The status bar shows how many items are in the active folder and their known size; with a selection it switches to how many are selected and the size of that selection. Folder sizes appear in the total once the index has them.

Preview shows a wrapping thumbnail grid. Only the tiles on screen (plus a small prefetch) are decoded, on background threads. Other files keep a generic icon until you scroll to them. Online-only cloud files are never opened just to make a thumbnail. Returning to a folder reuses thumbnails that are still in memory.

Sorting by name or type happens once the listing is in. Sorting by size waits until indexed folder totals are applied, so rows do not jump on every update. Clicking a column sorts immediately with whatever is already known.

Hidden files follow Settings → Navigation. Protected system locations (System Volume Information, Recovery, pagefile, and similar) are hidden unless you turn them on. Recycle Bin folders stay hidden. Access-denied folders show as access denied — never as 0 bytes.

Shortcut Action
Alt+Left / Back Back
Alt+Right Forward
Alt+Up Up
F5 Refresh
Enter Open
F2 Rename (single item, immediate)
Ctrl+A Select all
Ctrl+C / Ctrl+X / Ctrl+V Copy / Cut / Paste
Delete Recycle (queued)
Escape Cancel rubber-band selection
Ctrl+T / Ctrl+W New tab / Close tab

Drag an empty area of the folder list to rubber-band select, as in File Explorer. The rectangle selects every row it touches in Details and List, and every tile it intersects in Preview. Ctrl adds to the current selection; Escape restores the previous one. Right-drag selects, then opens the context menu.

Drag and drop copies by default. Hold Shift to move. Right-drag of selected items offers a menu.

Hidden files follow Settings → Navigation. Protected system locations (System Volume Information, Recovery, pagefile, and similar) are hidden unless you turn them on. Recycle Bin folders stay hidden. Access-denied folders show as access denied — never as 0 bytes.


Indexing is user-triggered, then kept current in the background:

  • Local NTFS: USN journal when Windows allows it; otherwise folder reconcile + watcher
  • Network: scan + watcher (best effort)
  • Archives: optional (Settings → Indexing → include archive contents)
  • Folder sizes in Details come from the index. Opening a folder reconciles that folder only, then probes the largest or visible child folders (child count vs index). A mismatch queues a targeted verify of that child — not a walk of C:. Navigating away cancels further probes. Idle maintenance still verifies whole local drives.
  • After the PC has been idle (Settings → Indexing), the background host checks local indexed drives for folders whose contents no longer match the index. A full rescan still happens only when a drive is marked out of date or has not been indexed for 7 days.
  • Before Delete, Workbench checks that the path still exists and refreshes that folder in the index. Leftovers under Program Files can still fail if Windows needs administrator rights — that is separate from the stale size.
  • Idle maintenance: when the PC has been idle (Settings → Indexing), the background host may hash duplicates, recapture history, and rescan stale local indexes. Copy, move, delete, explicit scans, and sync you started are not idle work and keep running. Cloud files are never hydrated. Network, cloud, and removable locations are not scanned just because the PC is idle.

Default excludes include Windows, recycle bins, node_modules, .git, and similar. Inaccessible paths are skipped.

Search uses the index: name/glob plus size, type, and date filters. Results are paged (500, hard cap 10000). Offline volumes stay searchable from the last index; the live folder listing still needs the volume.

Archive hits can look like:

\\NAS\Archive\2019-backup.7z\Projects\README.md

even when that NAS is currently offline — if the archive was indexed earlier.


Storage analysis

Tools → Storage → Storage analysis (or the toolbar). WinDirStat-style trees, biggest folders/files, by type, by source. Figures come from the index, so build the index first.

Tools → Storage → Run background maintenance now runs the same idle-maintenance pipeline immediately (still skipped while a copy/move/delete is running). The status bar may show Idle maintenance, Scanning a location, or Paused because user is active.


Duplicates

Tools → Storage → Duplicates. Groups are hashed in the background (size → partial hash → full hash only when needed). Workbench distinguishes:

Class Meaning
Accidental Same content, no known reason
Synchronized Created by Folder Sync
Intentional You marked them
Hardlink Same file id on the same volume
Backup Reserved; not auto-tagged yet

Intentional and sync copies are hidden by default. Hardlinks are not wasted space.


File Operations Queue

Almost every change goes through the queue instead of happening silently.

Supported operations today: copy, move, recycle, permanent delete, rename, empty Recycle Bin, extract, compress, add to archive, verify archive, convert.

The queue:

  • Runs one operation at a time
  • Can pause / resume / pause all
  • Lets you reorder, remove, retry, and clear finished items
  • Survives Workbench restarts
  • Waits when the destination is unreachable (network share, USB) and continues when it returns
  • Records append-only history
  • Fails locked files so you can retry

Auto-clear when done is a setting. Failed items stay until you dismiss or retry them.

Undo exists for completed rename batches. Copy and move are not undone from the queue in this build.


Batch rename

Tools → File Operations → Batch rename… (select items first). F2 stays a single immediate rename.

Workflow: configure → preview → validate → queue.

Rules: search/replace, regex, prefix, suffix, counter (with padding), case, extension. Collisions and illegal Windows names are caught before enqueue. Completed batches can be undone (Tools → File Operations → Undo last rename batch).

Metadata placeholders such as {CreatedDate} or {Width} are not implemented yet. {Counter} and {Extension} work.


Archives

Needs 7-Zip on the machine (Settings → File Operations can point at 7z.exe; otherwise Program Files and PATH). 7-Zip is not bundled.

Action Menu
Extract here / Extract to… Tools → File Operations → Archives, or context menu
Compress to ZIP / 7z Tools → File Operations → Archives, or context menu
Add to archive… Tools → File Operations → Archives
Verify archive Tools → File Operations → Archives

Jobs go through the queue. Online-only cloud archives are refused so Workbench will not hydrate them. Formats include ZIP, 7z, RAR, TAR and related containers through 7-Zip.


Convert

Needs ffmpeg.exe on the machine. FFmpeg is usually a zip, not an installer: unpack a Windows build and either put ffmpeg.exe on PATH, under Program Files\ffmpeg\bin\, or point Settings → File Operations at the file. ffprobe / ffplay are not required. FFmpeg is not bundled. This is not HandBrake — a few conversions only.

Kind Output
Video to H.264 MP4 .mp4 next to the source, or in a folder you pick
Extract audio AAC in .m4a
HEIC to JPEG .jpg (depends on the FFmpeg build having a HEIC decoder)

Tools → File Operations → Convert… or Convert… on the item context menu. Select files or a folder, pick a kind and destination, preview names, then Queue. Each file is one queue job on the background host. Online-only cloud files are skipped. Existing names get a unique suffix so nothing is overwritten. Source last-write time is copied onto the output when that is possible.


Folder sync

Tools → Automation → Folder sync…one-way only.

Mode Behavior
Copy / Update Add and overwrite from source. Never deletes. Destination-newer files are skipped with a warning.
Mirror Also deletes destination items that are not in the source. Deletes stay in the preview until you Queue. Mirror AutoRun is disabled.

Copy / Update can AutoRun when the destination volume becomes available (USB, share). Drive letters may change; Workbench stores volume identity. Excludes are one glob per line.

Files copied by sync are tagged as synchronized duplicates.


Operation profiles

Tools → Automation → Operation profiles… — named recipes that plan work, then enqueue it. Steps never touch the filesystem themselves.

Toggles (not a free-form graph): Copy, Rename, Compress, Convert, require a clean Git working tree. Excludes are globs, one per line.

Built-in recipes (seeded when the list is empty):

  1. Archive folder — require clean Git, compress 7z, exclude .git / bin / obj / .vs
  2. Copy to destination — copy; AutoRun when the destination volume connects
  3. Convert videos to MP4 — FFmpeg H.264 MP4 into the destination folder

Run from the window, from Run profile on the context menu (always previews first), or by dropping files onto a profile. AutoRun is Copy-only (no rename, no compress, no convert) and fires on unreachable → reachable, not on a timer while already online.

Dirty or missing Git, missing 7-Zip, missing FFmpeg, or an unreachable destination stops the plan. Nothing is queued.

Not in this build: SHA-256, recycle source after success, GPU tuner, trim editor, scheduled or folder-watcher triggers.


Organize folder

Tools → File Operations → Organize folder… or Organize this folder… on a directory.

Classification suggests moves. Nothing moves until you Preview and Queue.

Category Typical destination
Photos / Video / Audio / Documents Windows Pictures, Videos, Music, Documents
Installers Folder you choose (for example Software)
Archives Folder you choose
Git repositories Folder you choose (Development)
Unknown, system data, backups, build output Left in place

Build output names (node_modules, bin, obj, .vs, and similar) are never moved. Online-only cloud items are skipped. Old installers (older than one year) still propose a move and show a warning. Destinations may sit inside the source folder (Downloads → Downloads\Software). Destinations are remembered in preferences.

Never auto-reorganizes. No MIME/content sniffing (that would hydrate cloud files).


Git

Workbench detects repositories and shows a badge (branch, modified, untracked, ahead/behind, merging/rebasing). Tools → Development (and the folder context menu) offers View changes…, Commit…, Fetch, Pull (fast-forward), Pull (merge), Push, Open terminal here, and Open in Cursor when a folder is in a repository.

View changes lists staged, unstaged, untracked, and unmerged paths from git status. Double-click opens a unified diff (git diff / git diff --cached). Open in Cursor opens the file. Online-only cloud files are not opened or diffed (that would download them). Stage, unstage, and discard call the matching git commands. Discard asks first.

Commit asks for a message and which files to include. Unmerged paths, online-only cloud files, and folders are skipped. A merge, rebase, cherry-pick, or revert in progress blocks a normal commit — use Continue or Abort. Workbench runs git add then git commit --only for the checked paths, so other staged files stay staged.

Merge is conflict resolution, not a mergetool: Use ours, Use theirs, Mark resolved, then Continue (git commit --no-edit / rebase --continue). Abort restores the previous state. Incoming rebase/cherry-pick/revert from a terminal can be finished the same way.

Pull (fast-forward) is git pull --ff-only --no-rebase. If that cannot fast-forward, Workbench offers Pull (merge) (git pull --no-rebase) or a terminal. Fetch and push are the matching git commands. There is no stash, branch UI, mergetool, or credential dialog (GIT_TERMINAL_PROMPT=0).

Missing git.exe means no badge and no Git actions. Path can be set in Settings → Advanced. Git is not bundled. Profiles can require a clean working tree.


Cloud overlays

When a cloud folder is added:

  • Status text on items (available / online-only / syncing)
  • Always keep on this device / Free up space when the provider supports pin/dehydrate
  • Quota in capacity/free space where the provider reports it

Workbench never starts a cloud vendors own two-way sync. It never hydrates a file as a side effect of browse, size, search, hash, archive, or convert.


Settings

Settings opens a window with categories on the left. The last category you opened is remembered until you quit Workbench. Empty categories are omitted.

Category Options
General Start Explorer.Host.exe at Windows sign-in (current-user Startup, no administrator rights)
Appearance Dark / Light theme
Navigation Group network under Network; group cloud under Cloud (independent); prefer Favorites when synchronizing the locations tree (off by default); show hidden files; show protected system locations
File Operations Auto-clear queue when done; path to 7-Zip; path to ffmpeg.exe
Indexing Include archive contents in the index; automatically index removable drives when they appear; enable idle background maintenance; idle threshold (5 / 10 / 30 minutes); only run expensive maintenance on AC power
Advanced Path to git.exe

These options change what Workbench shows and indexes. They do not change Windows Explorer settings. Layout, favorite pins, organize destinations, and open tabs are stored in ui-preferences.txt but are not edited here.


Help

Item What you get
Documentation This guide, shown inside Workbench
About Version, data folder, log folder

The source of this guide is docs/Documentation.md in the project (or Documentation.md next to the executable). Edit the Markdown in any editor, then reopen this window. A copy is also embedded in the app if no file is found.

Press F1 to open Documentation.


What is not in this build

Left open on purpose:

  • Two-way sync and conflict resolution UI
  • Undo for copy/move
  • Concurrent copies across different disks
  • GPU / trim / filter conversion
  • Multi-PC search, sharing, encrypted vaults
  • Robocopy as a second transfer engine
  • Scheduled profiles and folder-watcher triggers
  • MIME/EXIF classification
  • Duplicate “backup copy” auto-tagging
  • Rename placeholders from EXIF or dates

Definition of done

Explorer Workbench is never finished. A feature is useful when it improves the actual workflow of the person using it.