Organize files from the Downloads folder into appropriate local directories.
Run:
bash
python3 ~/.claude/skills/organize/organizer.py --scan 2>&1
If the output contains "error": "config_missing", first run setup interactively:
bash
python3 ~/.claude/skills/organize/organizer.py --setup
Default target root is ~/Documents, default downloads dir is ~/Downloads.
Then re-run --scan.
Parse the JSON array returned by --scan and display it as a table:
FilenameDestinationReasonNotes.........Renamed (if conflict)
target_subdir is the subdirectory relative to target rootrenamed: true means the file will be renamed to avoid conflictSay: "The plan above covers N file(s). Reply confirm to proceed, or tell me what to adjust."
target_subdir and final_target fields accordingly), show the updated table, and ask againPass the (possibly modified) plan JSON back to the script:
bash
python3 ~/.claude/skills/organize/organizer.py --execute '<JSON>'
Display results:
~/.claude/skills/organize/logs/ and the index is updated at ~/.claude/skills/organize/index.mdAsk: "Would you like to enable watch mode? New files in your downloads folder will be organized automatically (stops when the terminal is closed)."
If yes:
bash
python3 ~/.claude/skills/organize/organizer.py --watch
~/.claude/skills/organize/organizer.py~/.claude/skills/organize/config.json~/.claude/skills/organize/logs/YYYY-MM-DD.log~/.claude/skills/organize/index.mdwatchdog for watch mode: pip install watchdogFieldDescriptiontarget_rootRoot directory where files are moved intodownloads_dirDirectory to scan for new filesrulesKeyword-based classification rules (array of {keywords, target, reason})extension_fallbacksExtension-based fallback rules (array of {extensions, target, reason})ignored_filenamesFilenames to skip (case-insensitive), e.g. desktop.ini``ignored_prefixesFilename prefixes to skip, e.g. . and $``skip_dirsDirectories excluded from index generation