goal-focused-folder-organization
Skill1 starsChanged 4 months agoMITView on GitHub
Organizes files and folders based on user's goals and projects. Two modes: (1) Interactive for first-time setup - asks about goals, proposes structure, gets approval. (2) Autonomous for scheduled runs - uses saved config to sort new files. Triggers on "organize files", "clean up folder", "sort my downloads", or "auto-organize".
In this repository4 other files it gives its agents.
- exec-materials-reviewSkill
- fallacy-finderSkill
- feynman-learningSkill
- book-reviewSkill
The file
We split this skill into the rules it gives an agent
10 rules. About 0 are common, 7 are distinctive, and 3 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈7
Distinctive · estimate
This author's own choices. Worth a look.
3
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 63
Wait for user approval before proceeding.
- Very specific: line 75
Create .goal-org-config.yaml in the folder:
- Distinctive: line 89
Ask: "Want to automate this regularly?"
- Distinctive: line 92
Ask: "How often? (daily, weekly, weekdays)"
- Distinctive: line 95
Update config with schedule settings
- Distinctive: line 118
If no config exists, switch to Interactive mode.
- Distinctive: line 128
If confident match → move to that folder
- Very specific: line 129
If ambiguous → move to _To-Review/
- Very specific: line 142
Never hard delete: - always move to _To-Review/
- Distinctive: line 144
Never modify existing files: - only move
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Goal-Focused Folder Organization
Your folder structure should mirror your priorities. When files are organized by goals, not file types, your digital environment actively supports what you're trying to achieve.
Modes
| Mode | Trigger | Behavior |
| Interactive | First run or no config file | Asks goals → proposes plan → gets approval → executes → offers automation |
| Autonomous | Config file exists + "auto" in prompt | Reads config → sorts new files → logs changes |
Interactive Mode (First Run)
Inputs Required
- Folder path to organize
- User's goals/projects (asked during session)
- Approval before executing
Outputs
- Goal-based folder structure created
- Files moved to appropriate folders
- Cleanup candidates in
_To-Review/ - Config file saved (
.goal-org-config.yaml) - Option to set up automation
Workflow
Step 1: Understand Goals
Ask 2-3 questions:
- "What are your main projects or goals right now?"
- "What do you use this folder for most often?"
Skip if goals are known from context.
Step 2: Analyze Files
ls -la "/path/to/folder"For ambiguous files, inspect contents. Identify duplicates, installers, incomplete downloads.
Step 3: Propose Plan
Present folder structure organized by goals:
01-Goal-Name/
02-Another-Goal/
03-Admin/
04-Personal/
_To-Review/Wait for user approval before proceeding.
Step 4: Execute
After approval:
- Create folders
- Move files to appropriate locations
- Move duplicates/installers to
_To-Review/ - Never hard delete
Step 5: Save Config
Create .goal-org-config.yaml in the folder:
goals:
- "Learning AI"
- "Building startup"
folders:
01-Learning-AI: "Courses, research, tutorials"
02-Building-Startup: "Product docs, code, data"
schedule:
enabled: falseStep 6: Offer Automation
Ask: "Want to automate this regularly?"
If yes:
- Ask: "How often? (daily, weekly, weekdays)"
- Ask: "What time?"
- Run:
scripts/setup-automation.sh <folder> <time> <frequency> - Update config with schedule settings
Autonomous Mode (Scheduled Runs)
Inputs Required
- Folder path with existing
.goal-org-config.yaml - Prompt containing "auto" (e.g., "auto-organize", "--auto")
Outputs
- New files sorted into existing goal folders
- Ambiguous files moved to
_To-Review/ - Log entry in
.goal-org.log
Workflow
Step 1: Read Config
cat .goal-org-config.yamlIf no config exists, switch to Interactive mode.
Step 2: Identify New Files
Find files not in any goal folder (sitting in root).
Step 3: Sort Files
For each new file:
- Match to existing goal folder based on content/name
- If confident match → move to that folder
- If ambiguous → move to
_To-Review/
Step 4: Log Results
Append to .goal-org.log:
[2025-02-02 23:30] Sorted 5 files: 3 to 01-Learning-AI, 1 to 02-Building, 1 to _To-ReviewSafety Rules
- Never hard delete - always move to
_To-Review/ - Never create new top-level folders in autonomous mode
- Never modify existing files - only move
- Log all actions in autonomous mode
Scripts
setup-automation.sh
Sets up scheduled runs via cron.
./scripts/setup-automation.sh <folder_path> <time> <frequency>
# Example: ./scripts/setup-automation.sh ~/Downloads 23:30 dailyFrequencies: daily, weekly, weekdays
Examples
Interactive first run:
User: "Organize my Downloads folder"
Claude: Asks about goals → proposes structure → waits for approvalAutonomous scheduled run:
User: "Auto-organize my Downloads"
Claude: Reads config → sorts new files → logs resultsAmbiguous file:
Found: mystery-file-abc123.pdf
Action: Move to _To-Review/ (user reviews later)Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

