Install
openclaw skills install @xuxinyuan2019/downloaded-file-organizerOrganize files from the Downloads folder into appropriate local directories
openclaw skills install @xuxinyuan2019/downloaded-file-organizerOrganize files from the Downloads folder into appropriate local directories.
Run:
python3 ~/.claude/skills/organize/organizer.py --scan 2>&1
If the output contains "error": "config_missing", first run setup interactively:
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:
| Filename | Destination | Reason | Notes |
|---|---|---|---|
| ... | ... | ... | 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:
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:
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 watchdog| Field | Description |
|---|---|
target_root | Root directory where files are moved into |
downloads_dir | Directory to scan for new files |
rules | Keyword-based classification rules (array of {keywords, target, reason}) |
extension_fallbacks | Extension-based fallback rules (array of {extensions, target, reason}) |
ignored_filenames | Filenames to skip (case-insensitive), e.g. desktop.ini |
ignored_prefixes | Filename prefixes to skip, e.g. . and $ |
skip_dirs | Directories excluded from index generation |