Full parameter documentation for all notepad-cleanup commands. For a quick overview, see the README.
Extract text from all open Notepad windows and tabs.
notepad-cleanup extract [OPTIONS]| Option | Short | Description |
|---|---|---|
--output-dir PATH |
-o |
Output directory (default: .../nc-TIMESTAMP) |
--silent-only |
Only extract loaded tabs (no focus stealing) | |
--yes |
-y |
Skip Phase 2 confirmation prompt |
--dry-run |
Preview what would be extracted without saving |
Examples:
notepad-cleanup extract # Extract to default output folder
notepad-cleanup extract -o ./my-backup # Custom output directory
notepad-cleanup extract --silent-only # Skip unloaded tabs (safe)
notepad-cleanup extract --dry-run # Preview without saving
notepad-cleanup extract -y # Auto-confirm Phase 2Notes:
- Phase 1 silently reads loaded tabs via
WM_GETTEXT(no focus changes) - Phase 2 switches through unloaded tabs using UI Automation (steals focus briefly)
- After extraction, the output path is saved to the MRU (
...-1) and the parent folder is auto-registered as a search dir
Compare extracted files against previous sessions to find duplicates.
notepad-cleanup compare [OPTIONS] [FOLDER]| Option | Short | Description |
|---|---|---|
FOLDER |
Path to extraction folder (supports ... notation) |
|
--last |
Use the most recent extraction automatically | |
--search PATH |
-s |
Search only these directories (overrides saved dirs) |
--search-add PATH |
-ss |
Search these directories AND saved dirs (additive) |
--no-search-parent |
-nsp |
Exclude parent of extraction folder from search |
--fuzzy MODE |
Fuzzy matching mode (see below) | |
--no-fuzzy |
Exact matches only | |
--link STRATEGY |
Create links for duplicates: auto, symlink, hardlink, dazzlelink |
|
--link-near |
Also link near-matches (default: only exact) | |
--diff |
-d |
Open near-matches in external diff tool |
--diff-tool NAME |
Diff tool executable (auto-detected if not set) | |
--show-threshold |
Display the fuzzy threshold curve and exit | |
--cache / --no-cache |
Hash index caching (default: enabled) |
| Mode | Meaning |
|---|---|
small |
Default. Fuzzy match files <50KB only |
all |
Fuzzy match all files (slow for large files) |
none |
Exact matches only (same as --no-fuzzy) |
lte 100KB |
Fuzzy match files up to 100KB |
gt 50KB |
Fuzzy match only files larger than 50KB |
Size operators: lt, lte, gt, gte, eq. Size units: B, KB, MB, GB, TB.
The threshold formula scales with file size -- stricter for small files, more generous for large. See fuzzy-matching.md for the full derivation.
| Flags | Parent dir | Saved search dirs | Explicit paths |
|---|---|---|---|
| (none) | included | included | -- |
-ss <path> |
included | included | added |
-s <path> |
excluded | excluded | only these |
-nsp |
excluded | included | -- |
-s <path> -ss <path2> |
included | included | both added |
Examples:
notepad-cleanup compare --last # Saved dirs + parent
notepad-cleanup compare "...-2" # Specific past extraction
notepad-cleanup compare --last --no-fuzzy # Exact matches only
notepad-cleanup compare --last --link auto # Compare and link
notepad-cleanup compare --last -s "D:\archive" # Search only this dir
notepad-cleanup compare --last -ss "D:\archive" # This + saved dirs
notepad-cleanup compare --last --show-threshold # Show threshold curveOrganize extracted files into named categories using AI.
If compare --link was run first, linked files become symlinks in organized/ pointing to their canonical provenance root instead of being copied. Claude still sees and categorizes all files for a consistent naming scheme, but duplicates don't consume disk space.
notepad-cleanup organize [OPTIONS] [FOLDER]| Option | Short | Description |
|---|---|---|
FOLDER |
Path to extraction folder (supports ... notation) |
|
--last |
Use the most recent extraction | |
--backend |
claude (default) or prompt-only |
|
--dry-run |
Show prompt without executing | |
--verbose |
-v |
Stream Claude CLI output in real-time |
Examples:
notepad-cleanup organize --last # Organize most recent
notepad-cleanup organize --last --verbose # Stream output
notepad-cleanup organize --last --dry-run # Preview prompt
notepad-cleanup organize --last --backend prompt-only # Save prompt onlyOpen the generated diff script to spot-check compare results.
notepad-cleanup diff [OPTIONS] [FOLDER]| Option | Short | Description |
|---|---|---|
FOLDER |
Path to extraction folder (supports ... notation) |
|
--last |
Use the most recent extraction |
After compare runs, it generates _compare_diffs.cmd (Windows) or _compare_diffs.sh (Unix) that opens each matched pair in your diff tool. The diff command finds and runs that script.
notepad-cleanup diff --lastSeparate or rejoin linked files in organized/.
notepad-cleanup links {separate|join} [OPTIONS] [FOLDER]| Action | Description |
|---|---|
separate |
Move linked files from organized/ into a parallel tree |
join |
Move linked files back from the parallel tree into organized/ |
| Option | Description |
|---|---|
FOLDER |
Path to extraction folder (supports ... notation) |
--last |
Use the most recent extraction |
--dir-name |
Name for the links directory (default: organized-links) |
--dry-run |
Preview without moving files |
After organize runs, linked files (duplicates from previous sessions) appear as symlinks in organized/. Use separate to move them into their own tree so you can see only genuinely new content. Use join to put them back.
Both operations preserve relative directory structure. You can rename categories in either tree before rejoining.
Examples:
notepad-cleanup links separate --last # Split out linked files
notepad-cleanup links separate --last --dry-run # Preview the split
notepad-cleanup links join --last # Rejoin linked files
notepad-cleanup links join --last --dry-run # Preview the rejoin
notepad-cleanup links separate --last --dir-name linked-archiveView or modify settings. See config.md for the full reference.
notepad-cleanup config [ACTION] [KEY] [VALUE]| Action | Description |
|---|---|
show |
Show all settings (default) |
show <...ref> |
Resolve a specific ... reference |
add <path> |
Register a folder |
remove <ref> |
Remove a folder by path or ... reference |
set <key> <value> |
Set a value |
unset <key> [value] |
Remove a value |
| Key | Description |
|---|---|
output |
Set which folder receives new extractions |
search |
Add a folder to the search list |
diff_tool |
Diff tool executable name |
mru |
Push a path onto the MRU list |
mru_depth |
Max recent extractions (default: 10) |
| Token | Meaning |
|---|---|
... |
Output folder (always first in registry) |
...1, ...2 |
Other registered folders by index |
...-1 |
Most recent extraction (same as --last) |
...-2 |
Second most recent extraction |
Examples:
notepad-cleanup config show # All settings
notepad-cleanup config show ... # What ... resolves to
notepad-cleanup config add "C:\path" # Register a folder
notepad-cleanup config set output "C:\new-output" # Change output folder
notepad-cleanup config set search "...1" # Add to search list
notepad-cleanup config set diff_tool bcomp # Set diff toolExtract all Notepad tabs and organize with AI in one step.
notepad-cleanup run [OPTIONS]| Option | Short | Description |
|---|---|---|
--output-dir PATH |
-o |
Custom output directory |
--yes |
-y |
Skip confirmations |
--backend |
claude (default) or prompt-only |
|
--verbose |
-v |
Stream Claude output |
notepad-cleanup run # Extract + organize
notepad-cleanup run --verbose # With real-time output
notepad-cleanup run -y --verbose # Skip confirmations