← Back to Skills Marketplace
di5cip1e

File Organizer

by di5cip1e · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ✓ Security Clean
126
Downloads
0
Stars
1
Active Installs
1
Versions
Install in OpenClaw
/install director-file-organizer
Description
Automatically organize, categorize, and clean up files. Use when user wants to (1) organize downloads or folders, (2) sort files by type/date/size, (3) find...
README (SKILL.md)

File Organizer

Automatically organize and manage file collections.

Core Functions

1. Sort by Type

Group files by extension:

/documents/    → .pdf, .doc, .docx, .txt
/images/       → .jpg, .png, .gif, .svg
/videos/       → .mp4, .mov, .avi
/archives/     → .zip, .rar, .7z
/audio/        → .mp3, .wav, .flac
/code/         → .js, .py, .html, .css

2. Sort by Date

Organize by modification time:

/2026/04/07/
/2026/04/06/
/2026/03/

3. Find Duplicates

import hashlib

def find_duplicates(path):
    hashes = {}
    for file in Path(path).rglob('*'):
        if file.is_file():
            h = hashlib.md5(file.read_bytes()).hexdigest()
            hashes.setdefault(h, []).append(file)
    return {h: f for h, f in hashes.items() if len(f) > 1}

4. Bulk Rename

Patterns:

  • prefix_001.jpg, prefix_002.jpg
  • 2026-04-07_description.jpg
  • file_v1.txt, file_v2.txt

5. Cleanup Old Files

from datetime import datetime, timedelta

def cleanup_old(path, days=90):
    threshold = datetime.now() - timedelta(days=days)
    for file in Path(path).rglob('*'):
        if file.is_file() and datetime.fromtimestamp(file.stat().st_mtime) \x3C threshold:
            file.unlink()  # or move to trash

Workflow

  1. Scan - List all files in directory
  2. Analyze - Get metadata (type, date, size, hash)
  3. Plan - Show proposed organization
  4. Execute - Move/copy/rename files
  5. Report - Summary of changes

Safety Rules

  • Always confirm before deleting or moving
  • Use trash instead of permanent delete when possible
  • Backup important files first
  • Log all changes for undo capability
  • Handle conflicts - ask about name collisions
Usage Guidance
This skill appears to do what it says, but it reads and modifies arbitrary files and can permanently delete data. Before installing or running it: (1) restrict it to a specific test folder—do not give it system or home root paths; (2) run in 'scan/plan' or dry-run mode first and review the proposed changes; (3) require explicit confirmations for deletions and prefer moving to Trash/recycle bin rather than unlinking; (4) back up important data before use; (5) be cautious about very large files (the example loads files into memory for hashing) and permission errors; (6) if you need stronger safety, disable autonomous invocation so the agent cannot run it without your explicit approval.
Capability Analysis
Type: OpenClaw Skill Name: director-file-organizer Version: 1.0.0 The skill bundle provides standard file management functionality such as sorting, duplicate detection, and cleanup. The Python logic and instructions in SKILL.md are consistent with the stated purpose and include explicit safety rules for the agent, such as requiring user confirmation before file deletion and suggesting the use of a trash system.
Capability Assessment
Purpose & Capability
The name/description (organize, sort, find duplicates, bulk rename, clean up) matches the instructions: scanning directories, computing hashes, moving/renaming, and deleting files. No unrelated credentials, binaries, or installs are requested.
Instruction Scope
SKILL.md instructs the agent to recursively scan directory trees, read file contents (hashing), move/rename files, and delete old files. Those actions are appropriate for the stated purpose but are inherently destructive and require care: the examples rely on reading entire files into memory (md5 via read_bytes()), use file.unlink() for deletion (the doc suggests using trash but code shows permanent delete), and the safety rules are advisory ("Always confirm") rather than enforced. The code samples also omit some imports (e.g., Path from pathlib) and do not handle large files or permission errors.
Install Mechanism
Instruction-only skill with no install spec or downloaded artifacts. This minimizes supply-chain risk because nothing is written to disk by an installer.
Credentials
The skill requests no environment variables, credentials, or config paths. This is proportionate to a local file-management tool.
Persistence & Privilege
always:false (normal). The skill is allowed to be invoked autonomously by the agent (disable-model-invocation:false). Autonomous invocation combined with arbitrary filesystem operations can be risky if the agent is permitted to act without human confirmation; this is a platform-level consideration rather than an incoherence in the skill itself.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install director-file-organizer
  3. After installation, invoke the skill by name or use /director-file-organizer
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release - organize files, find duplicates, bulk rename, cleanup
Metadata
Slug director-file-organizer
Version 1.0.0
License MIT-0
All-time Installs 1
Active Installs 1
Total Versions 1
Frequently Asked Questions

What is File Organizer?

Automatically organize, categorize, and clean up files. Use when user wants to (1) organize downloads or folders, (2) sort files by type/date/size, (3) find... It is an AI Agent Skill for Claude Code / OpenClaw, with 126 downloads so far.

How do I install File Organizer?

Run "/install director-file-organizer" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is File Organizer free?

Yes, File Organizer is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does File Organizer support?

File Organizer is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created File Organizer?

It is built and maintained by di5cip1e (@di5cip1e); the current version is v1.0.0.

💬 Comments