File Organizer Skill
Automatically sort, rename, and organize files into structured folders. Reduces chaos in Downloads and any directory with scattered files.
Quick Start
# Install the skill
npx clawhub install file-organizer
# Organize your downloads folder
"Organize my Downloads folder"
# Organize a specific directory
"Organize ~/Documents/projects"
# Undo the last organization
"Undo the last file organization"
Core Features
1. Automatic Sorting
Files are categorized into standard folders:
- Images (
images/) — JPG, PNG, GIF, SVG, WEBP, BMP, TIFF, ICO
- Documents (
documents/) — PDF, DOC, DOCX, TXT, RTF, ODT, PPT, PPTX, XLS, XLSX, PPT, ODP
- Audio (
audio/) — MP3, WAV, FLAC, OGG, AAC, M4A
- Video (
video/) — MP4, MKV, AVI, MOV, WEBM, FLV
- Archives (
archives/) — ZIP, TAR, GZ, 7Z, RAR, BZ2, XZ
- Code (
code/) — PY, JS, TS, HTML, CSS, MD, JSON, YAML, SH, BAT
- Data (
data/) — CSV, JSON, XML, SQL, DB, SQLITE, DAT
- Executables (
installers/) — EXE, MSI, DMG, APP, PKG, DEB, RPM, APK
- Fonts (
fonts/) — TTF, OTF, WOFF, WOFF2, FON
- Other (
other/) — uncategorized files
2. Smart File Renaming
- Extracts dates from filenames (YYYY-MM-DD patterns) and places them in naming
- Converts spaces to underscores for consistency
- Strips special characters (preserving hyphens in compound names)
- Handles duplicate names by appending
_2, _3, etc.
- Preserves original extension case (lowercased for consistency)
3. Undo / Restore
- Generates a
ORGANIZE_LOG.json after each operation
- Stores original path, new path, and timestamp for every move
undo command restores files to their exact original locations
- Safe: only restores if files haven't been modified since
4. Preview Mode
--dry-run shows what would change without moving files
- Reports counts by category and renamed files
- No disk writes in dry-run mode
Configuration
Edit config.yaml to customize:
source_dirs:
- ~/Downloads
target_base: ~/organized-files
auto_sort: true
rename_pattern: "{name}_{date}" # or "none" to skip renaming
max_file_size_mb: 500 # skip files larger than this
exclude_patterns:
- "*.tmp"
- "*.swp"
- ".DS_Store"
- "Thumbs.db"
log_file: ORGANIZE_LOG.json
File Type Patterns
Full mapping is in references/file-patterns.md. You can add custom mappings:
custom_types:
- name: "Design Assets"
folders: "design/"
extensions: [AI, PSD, SKETCH, FIG, INDD]
Safety
- Dry-run first: Always review changes before committing
- Undo-safe: Every move is logged; full restore possible
- Size limits: Skip large files to avoid moving heavy media
- Exclude patterns: Configurable file filters to skip unwanted types
- No data loss: Only moves files; never deletes
Integration
- Works with any directory (Downloads, Documents, Desktop, project roots)
- Integrates with cron-manager for periodic auto-organizing
- Compatible with file-sync workflows
- Output is compatible with cloud storage (consistent naming)
1---2name: case-016143description: File Organizer Skill4---56# File Organizer Skill78Automatically sort, rename, and organize files into structured folders. Reduces chaos in Downloads and any directory with scattered files.910## Quick Start1112```bash13# Install the skill14npx clawhub install file-organizer1516# Organize your downloads folder17"Organize my Downloads folder"1819# Organize a specific directory20"Organize ~/Documents/projects"2122# Undo the last organization23"Undo the last file organization"24```2526## Core Features2728### 1. Automatic Sorting2930Files are categorized into standard folders:3132- **Images** (`images/`) — JPG, PNG, GIF, SVG, WEBP, BMP, TIFF, ICO33- **Documents** (`documents/`) — PDF, DOC, DOCX, TXT, RTF, ODT, PPT, PPTX, XLS, XLSX, PPT, ODP34- **Audio** (`audio/`) — MP3, WAV, FLAC, OGG, AAC, M4A35- **Video** (`video/`) — MP4, MKV, AVI, MOV, WEBM, FLV36- **Archives** (`archives/`) — ZIP, TAR, GZ, 7Z, RAR, BZ2, XZ37- **Code** (`code/`) — PY, JS, TS, HTML, CSS, MD, JSON, YAML, SH, BAT38- **Data** (`data/`) — CSV, JSON, XML, SQL, DB, SQLITE, DAT39- **Executables** (`installers/`) — EXE, MSI, DMG, APP, PKG, DEB, RPM, APK40- **Fonts** (`fonts/`) — TTF, OTF, WOFF, WOFF2, FON41- **Other** (`other/`) — uncategorized files4243### 2. Smart File Renaming4445- Extracts dates from filenames (YYYY-MM-DD patterns) and places them in naming46- Converts spaces to underscores for consistency47- Strips special characters (preserving hyphens in compound names)48- Handles duplicate names by appending `_2`, `_3`, etc.49- Preserves original extension case (lowercased for consistency)5051### 3. Undo / Restore5253- Generates a `ORGANIZE_LOG.json` after each operation54- Stores original path, new path, and timestamp for every move55- `undo` command restores files to their exact original locations56- Safe: only restores if files haven't been modified since5758### 4. Preview Mode5960- `--dry-run` shows what would change without moving files61- Reports counts by category and renamed files62- No disk writes in dry-run mode6364## Configuration6566Edit `config.yaml` to customize:6768```yaml69source_dirs:70 - ~/Downloads7172target_base: ~/organized-files73auto_sort: true74rename_pattern: "{name}_{date}" # or "none" to skip renaming75max_file_size_mb: 500 # skip files larger than this76exclude_patterns:77 - "*.tmp"78 - "*.swp"79 - ".DS_Store"80 - "Thumbs.db"81log_file: ORGANIZE_LOG.json82```8384## File Type Patterns8586Full mapping is in `references/file-patterns.md`. You can add custom mappings:8788```yaml89custom_types:90 - name: "Design Assets"91 folders: "design/"92 extensions: [AI, PSD, SKETCH, FIG, INDD]93```9495## Safety9697- **Dry-run first**: Always review changes before committing98- **Undo-safe**: Every move is logged; full restore possible99- **Size limits**: Skip large files to avoid moving heavy media100- **Exclude patterns**: Configurable file filters to skip unwanted types101- **No data loss**: Only moves files; never deletes102103## Integration104105- Works with any directory (Downloads, Documents, Desktop, project roots)106- Integrates with cron-manager for periodic auto-organizing107- Compatible with file-sync workflows108- Output is compatible with cloud storage (consistent naming)