finalplace-auto-organize SKILL
finalplace-auto-organize
Section titled “finalplace-auto-organize”Let AI agents auto-organize, archive, clean up, and batch-process Windows files
When to use
Section titled “When to use”The SKILL triggers automatically when the user asks things like:
- “Clean up .tmp files in my Downloads”
- “My desktop is a mess — sort by file type”
- “Archive last week’s logs to D:/Archive by date”
- “Organize all my screenshots by month”
- “Move files over 100MB that I haven’t touched in a while to my backup drive”
- “Unzip everything in Downloads into separate folders”
- “Pull out all my contract files into one place”
Core capabilities:
- Multi-dimensional filters: extension, name, size, create & modify time, content, path
- AND/OR condition grouping: complex rules in one line
- 6 actions: move, copy, compress, unzip, rename, delete
- Path variables:
{Year}/{Month}/{Day}/{FileName}auto-create folder hierarchies - Structured output: JSON envelope with scanned/matched/success/failed/skipped stats
Typical scenarios
Section titled “Typical scenarios”| You say | SKILL does |
|---|---|
| ”Delete .tmp files in Downloads” | Rule: ext:tmp, action:delete → preview → confirm → delete (to Recycle Bin) |
| “Archive last week’s screenshots by month” | Rule: ext:png,jpg, mtime:after:7d, action:move → Pictures/{Year}/{Month} |
| ”Pull out all contract files” | Rule: name:contract, content:contract, action:move → D:/Contracts |
| ”Unzip Downloads/*.zip into their own folders” | Rule: ext:zip, action:unzip → Downloads/{FileName}/ |
| ”Move old large files to backup drive” | Rule: size:>500MB, mtime:before:90d, action:move → E:/Archive |
Command reference
Section titled “Command reference”Top-level commands (10 total)
Section titled “Top-level commands (10 total)”| Command | Purpose |
|---|---|
launch | Start FinalPlace GUI |
status | App state (app_version/is_pro/app_running/logged_in) |
auto-rules | Manage file organization rules (10 subcommands) |
logs | View execution logs + rollback |
watchdog | Manage protection rules (blacklist/whitelist) |
condition-templates | Manage reusable condition templates |
action-templates | Manage reusable action templates |
file-types | Manage custom file type groups |
common-dirs | Manage common destination directories |
feedback | Submit bugs / feature requests |
auto-rules subcommands (core)
Section titled “auto-rules subcommands (core)”| Command | Purpose | Key flags |
|---|---|---|
auto-rules list | List rules | --enabled (enabled only) |
auto-rules show | Show one rule | --uuid <uid> |
auto-rules create | Create rule | --name --source --conditions-file --action --enable |
auto-rules preview | Dry-run single file | --uuid <uid> --path <file> |
auto-rules execute | Execute rule | --uuid <uid> --path/--all-files --confirm |
auto-rules toggle | Enable/disable | --uuid <uid> --enable/--disable |
auto-rules delete | Delete rule | --uuid <uid> --confirm |
auto-rules update | Modify existing rule | --uuid <uid> + same fields as create |
auto-rules reorder | Adjust rule priority | --uuids <uuid1,uuid2,...> |
auto-rules stats | Execution stats | --uuid <uid> |
Fields × valid ops
Section titled “Fields × valid ops”| Field | Valid ops | Value format | Notes |
|---|---|---|---|
ext | contains / equals | Extension without dot | "jpg" |
name | contains / equals / startsWith / endsWith / matches | Filename stem (no extension) | endsWith:".pdf" never matches |
size | greaterThan / lessThan / equals | 10MB / 1KB / 500B | |
ctime | before / after | 1d / 7d | NOT greaterThan/lessThan |
mtime | before / after | 1d / 7d | Same as ctime |
content | contains | Text | |
path | contains / equals | Path | Used for pathExclude |
Three ways to pass conditions
Section titled “Three ways to pass conditions”Mode A: File-based (recommended)
# Write conditions to fileecho '[{"type":"ext","op":"contains","value":"tmp"}]' > /tmp/cond.json
# Pass through to CLIfinalplace.exe auto-rules create \ --name "Clean temp files" \ --source "C:/Downloads" \ --conditions-file /tmp/cond.json \ --action "delete" \ --enableMode B: JSON string directly
finalplace.exe auto-rules create \ --name "Organize images" \ --source "C:/Downloads" \ --conditions-json '[{"type":"ext","op":"contains","value":"jpg"}]' \ --action "move:C:/Pictures/{Year}/{Month}" \ --enableMode C: Shorthand (simplest)
finalplace.exe auto-rules create \ --name "Organize large files" \ --source "C:/Downloads" \ --condition "ext:jpg,png" \ --condition "size:>10MB" \ --action "move:E:/Archive" \ --enablePath variables
Section titled “Path variables”Destination paths support placeholders for auto-bucketing:
{Year}/{Month}/{Day}— by file time{FileName}/{Ext}— preserve name/extension{Date:yyyy-MM-dd}— custom format
Examples:
# By year/month--action "move:D:/Photos/{Year}/{Month}"
# By year/month/day--action "move:D:/Logs/{Year}/{Month}/{Day}"
# With prefix--action "move:D:/Archive/IMG_{FileName}.{Ext}"Safety mechanisms
Section titled “Safety mechanisms”- Read-only, no confirmation needed:
status/list/show/preview/stats/logs list - Config changes need confirmation:
create/update/toggle/reorder/delete - File changes need confirmation:
execute/logs rollback --confirmis a machine-level fail-safe:execute/delete/logs rollbackrequire explicit--confirm— CLI rejects if missing- Delete goes to Recycle Bin: manually recoverable, but still requires confirmation
- Global protection blacklist: auto-blocks
*.tmpand similar sensitive files
Common errors
Section titled “Common errors”| Symptom | Cause | Fix |
|---|---|---|
Err_RuleDisabled | Rule not enabled before execution | Run toggle --enable, or pass --enable on create |
Err_RuleNotFound | uuid/name doesn’t exist | Run list to find the real uuid |
Err_PermissionDenied: blacklist block | Type is globally protected (e.g. *.tmp) | Remove from ignore list in settings |
| Scan count is 0 / too small | Blacklist silently excludes | Run create --dry-run / preview to see would_match |
INVALID_PARAMETER | Missing required flag | execute needs --uuid + target + --confirm |
ok:true but success:false | Per-file failure (permission/file locked) | This is a per-file failure channel; source files preserved |
| Time condition not working | Used greaterThan/lessThan | ctime/mtime use before / after |
| Extension filter misses | Value has a dot | ext value has no dot: "jpg" not ".jpg" |
Full documentation
Section titled “Full documentation”The SKILL package contains 3 markdown files:
SKILL.md— main document (triggers, SOP, safety rules, FAQ)references/cli-reference.md— authoritative command referencereferences/examples.md— natural language → CLI command mappings
Download and extract to view the full content.
Next steps
Section titled “Next steps”- Need help getting started? View Quick Start
- Want to know how to type commands manually? View CLI Integration Guide
- Want more typical scenarios? View News