safe-project-organizer

10
4
Source

Safely analyze and reorganize project structure with multi-stage validation, dry-run previews, and explicit user confirmation. Use when projects need cleanup, standardization, or better organization.

Install

mkdir -p .claude/skills/safe-project-organizer && curl -L -o skill.zip "https://mcp.directory/api/skills/download/7487" && unzip -o skill.zip -d .claude/skills/safe-project-organizer && rm skill.zip

Installs to .claude/skills/safe-project-organizer

About this skill

Safe Project Organizer

Overview

This skill enables Claude Code to analyze project structure and suggest safe organizational improvements like moving files, removing unused directories, and restructuring folders. It prioritizes safety through multi-stage validation, dry-run previews, and explicit user confirmation.

Core Safety Principles

1. Read-Only Analysis Phase

  • All analysis operations are read-only
  • No modifications occur during scanning
  • Complete project snapshot before any changes

2. Dry-Run Validation

  • All operations preview changes before execution
  • Show exact file paths being affected
  • Calculate impact metrics (files moved, deleted, created)

3. Explicit User Confirmation

  • Require confirmation for each operation category
  • Display detailed change summary
  • Allow selective approval of suggestions

4. Atomic Operations with Rollback

  • Each operation is reversible
  • Create backup references before modifications
  • Maintain operation log for audit trail

5. Protected File Patterns

Never modify files matching these patterns:

  • .git/, .svn/, .hg/ (version control)
  • node_modules/, vendor/, venv/, .venv/ (dependencies)
  • .env*, secrets.*, credentials.* (sensitive data)
  • package-lock.json, yarn.lock, pnpm-lock.yaml (lock files)
  • dist/, build/, .next/, .nuxt/ (build artifacts)

When to Use This Skill

Use this skill when you encounter any of these scenarios:

Project Cleanup:

  • "My project root is messy with too many files"
  • "I have empty directories that should be cleaned up"
  • "Documentation files are scattered everywhere"

Standardization:

  • "This project doesn't follow standard directory structure"
  • "Source files are mixed with config files in root"
  • "I need to organize files by type for better maintainability"

Migration Preparation:

  • "I'm about to hand off this project and need to clean it up"
  • "This codebase needs better organization before adding new features"
  • "I want to standardize the project structure"

Safety Concerns:

  • "I'm nervous about accidentally breaking something"
  • "I need to see exactly what will change before making changes"
  • "I want a safe way to reorganize without losing data"

Safe Usage Workflow

Step 1: Initial Scan (Read-Only)

Execute the project organizer script with --scan flag:

python3 scripts/project_organizer.py /path/to/project --scan

What it does:

  • Scans entire project structure
  • Identifies file types, counts, sizes
  • Detects empty directories
  • Lists protected files
  • No modifications made

Example Output:

🔍 Scanning project: /path/to/project
📋 This is a READ-ONLY scan. No changes will be made.

✅ Scan complete!
   📁 Directories: 24
   📄 Files: 156
   🔒 Protected items: 42
   📂 Empty directories: 3

Step 2: Generate Suggestions (Still Read-Only)

Use --analyze flag to generate organizational suggestions:

python3 scripts/project_organizer.py /path/to/project --analyze

What it does:

  • Performs full analysis
  • Generates organizational suggestions
  • Displays suggestion count
  • Still no modifications

Step 3: Preview Changes (Detailed Review)

Use --preview flag to see exactly what will change:

python3 scripts/project_organizer.py /path/to/project --preview

What it does:

  • Shows detailed preview of ALL suggestions
  • Groups by action type (move, delete, create)
  • Displays risk levels (🟢 low, 🟡 medium, 🔴 high)
  • Shows safety checks for each operation
  • Lists exact file paths affected
  • Zero modifications

Example Preview Output:

📋 PREVIEW MODE - No changes will be made
============================================================

📊 Total Suggestions: 8

🎯 By Action:
   MOVE: 5
   DELETE: 2
   CREATE_DIR: 1

⚠️  By Risk Level:
   🟢 LOW: 6
   🟡 MEDIUM: 2

📝 Detailed Suggestions:

MOVE Operations (5):
1. 🟢 Documentation/config files organized in docs/ directory
   FROM: CONTRIBUTING.md
   TO:   docs/CONTRIBUTING.md
   Safety Checks:
      ✓ File is not a primary config
      ✓ No imports reference this file path
      ✓ Not in protected patterns

DELETE Operations (2):
1. 🟢 Empty directory with no files or subdirectories
   PATH: old_backup/temp
   Safety Checks:
      ✓ Directory is empty
      ✓ Not a protected path
      ✓ No version control markers

Step 4: Dry Run (Simulation Only)

Use --execute flag for dry-run simulation:

python3 scripts/project_organizer.py /path/to/project --execute

What it does:

  • Simulates ALL operations
  • Shows what WOULD happen
  • Validates all safety checks
  • Reports success/failure/skipped
  • No actual changes made

Step 5: Real Execution (Requires Confirmation)

Use --execute-real flag only after thorough review:

python3 scripts/project_organizer.py /path/to/project --execute-real

What it does:

  • Prompts for explicit confirmation
  • Executes approved changes
  • Creates audit log (.project_organizer.log)
  • Shows real-time progress
  • Actually modifies project

Confirmation Prompt:

⚠️  WARNING: This will make REAL changes. Type 'yes' to confirm: yes

Operation Types and Safety

Move Operations

Low Risk (🟢):

  • Moving documentation files to docs/
  • Moving config files to config/
  • Moving scripts to scripts/

Medium Risk (🟡):

  • Grouping source files by type
  • Creating organizational directories

Safety Checks Performed:

  • Source file exists and is accessible
  • Source is not in protected patterns
  • Destination doesn't already exist
  • Parent directories can be created safely

Delete Operations

Low Risk (🟢):

  • Removing truly empty directories
  • Deleting temporary files

Safety Checks Performed:

  • Target exists
  • Directory is completely empty
  • Not a protected path
  • No version control markers

Create Directory Operations

Low Risk (🟢):

  • Creating standard directories (src/, docs/, tests/)
  • Creating organizational structure

Safety Checks Performed:

  • Target doesn't already exist
  • No naming conflicts
  • Standard directory pattern
  • Parent directories can be created

Protected File Patterns

The skill automatically protects these paths from modification:

Version Control

  • .git/, .git/**
  • .svn/, .svn/**
  • .hg/, .hg/**

Dependencies

  • node_modules/, node_modules/**
  • vendor/, vendor/**
  • venv/, venv/**
  • .venv/, .venv/**

Build Artifacts

  • dist/, dist/**
  • build/, build/**
  • .next/, .next/**
  • .nuxt/, .nuxt/**
  • out/, out/**

Sensitive Data

  • .env*
  • secrets.*
  • credentials.*

Lock Files

  • package-lock.json
  • yarn.lock
  • pnpm-lock.yaml
  • Gemfile.lock
  • Pipfile.lock
  • poetry.lock

Cache Files

  • __pycache__/, __pycache__/**

Best Practices

Before Running the Skill

  1. Commit Changes: Ensure all current work is committed to version control
  2. Backup Important Files: Have a recent backup or git stash available
  3. Review Project: Understand what files and directories are important
  4. Test Access: Verify you have necessary permissions

During Execution

  1. Always Start with Scan: Begin with --scan to understand the project
  2. Review Suggestions Carefully: Look through all generated suggestions
  3. Use Preview Mode: Always use --preview before any execution
  4. Test with Dry Run: Use --execute to simulate changes safely

After Execution

  1. Verify Project Works: Test that your project still builds/runs correctly
  2. Review Operation Log: Check .project_organizer.log for what was changed
  3. Commit Separately: Commit organizational changes separately from functional changes
  4. Update Documentation: Update any documentation that references old file paths

Safety Checklist

Before using --execute-real, verify:

  • Project is committed to version control
  • All suggestions reviewed in preview mode
  • Dry run completed successfully
  • No critical files are being moved
  • Build/test processes still work
  • Team members notified if shared project

Error Handling and Troubleshooting

Common Issues

Permission Denied:

  • Ensure you have write permissions
  • Check file ownership
  • May need appropriate privileges

Path Protected:

  • Review protected patterns
  • Confirm the path should be modified
  • Adjust patterns if needed

Changes Not Appearing:

  • Verify you used --execute-real (not just --execute)
  • Check the operation log
  • Confirm "yes" was entered at confirmation prompt

Recovery Options

Git Recovery:

git status                    # See what changed
git checkout -- .            # Restore all changes
git reset --hard HEAD        # Full reset to last commit

Operation Log Review:

cat .project_organizer.log    # Review detailed operation log

Customization

Adding Custom Protected Patterns

Edit the PROTECTED_PATTERNS list in the script:

PROTECTED_PATTERNS = [
    # Existing patterns...
    'my_important_dir/**',    # Custom protection
    '*.critical',             # Protect critical files
]

Custom Organization Rules

Edit MOVABLE_ROOT_FILES dictionary:

MOVABLE_ROOT_FILES = {
    'assets': ['*.png', '*.jpg', '*.svg'],  # Move images to assets/
    'data': ['*.csv', '*.json', '*.xml'],   # Move data files
}

Custom Safety Validators

Extend the SafeProjectOrganizer class:

def _custom_safety_check(self, path: Path) -> bool:
    """Your custom safety logic"""
    # Return True if safe, False if should be protected
    return True

Integration with Claude Code

As a Skill Tool

This skill integrates naturally with Claude Code's workflow:

  1. User Request: "Organize my project structure"
  2. Skill Activation: Safe Project Organizer loads
  3. Sequential Execution: Follows the 5-step workflow automatically
  4. **User Confirma

Content truncated.

math-tools

ananddtyagi

Deterministic mathematical computation using SymPy. Use for ANY math operation requiring exact/verified results - basic arithmetic, algebra (simplify, expand, factor, solve equations), calculus (derivatives, integrals, limits, series), linear algebra (matrices, determinants, eigenvalues), trigonometry, number theory (primes, GCD/LCM, factorization), and statistics. Ensures mathematical accuracy by using symbolic computation rather than LLM estimation.

12421

plugin-creator

ananddtyagi

Create, validate, and publish Claude Code plugins and marketplaces. Use this skill when building plugins with commands, agents, hooks, MCP servers, or skills.

375

chief-architect

ananddtyagi

PERSONAL APP ARCHITECT - Strategic development orchestrator for personal productivity applications. Analyzes project context, makes architectural decisions for single-developer projects, delegates to specialized skills, and ensures alignment between user experience goals and technical implementation. Optimized for personal apps targeting 10-100 users.

154

document-sync

ananddtyagi

A robust skill that analyzes your app's actual codebase, tech stack, configuration, and architecture to ensure ALL documentation is current and accurate. It never assumes—always verifies and compares the live system with every documentation file to detect code-doc drift and generate actionable updates.

172

skill-creator-doctor

ananddtyagi

Create, repair, maintain, and consolidate skills. This skill should be used when users want to create new skills, fix broken skills that won't load, diagnose skill system issues, maintain skill health, or consolidate duplicate/obsolete skills. Automatically detects and repairs common skill loading problems including missing registry entries, metadata format issues, and structural problems. Provides comprehensive skill ecosystem management including duplicate detection, merge workflows, and archival processes.

71

api-contract-sync-manager

ananddtyagi

Validate OpenAPI, Swagger, and GraphQL schemas match backend implementation. Detect breaking changes, generate TypeScript clients, and ensure API documentation stays synchronized. Use when working with API spec files (.yaml, .json, .graphql), reviewing API changes, generating frontend types, or validating endpoint implementations.

81

You might also like

ui-ux-pro-max

nextlevelbuilder

"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."

1,5601,562

flutter-development

aj-geddes

Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.

1,8271,484

drawio-diagrams-enhanced

jgtolentino

Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.

1,7091,236

godot

bfollington

This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.

1,619905

pdf-to-markdown

aliceisjustplaying

Convert entire PDF documents to clean, structured Markdown for full context loading. Use this skill when the user wants to extract ALL text from a PDF into context (not grep/search), when discussing or analyzing PDF content in full, when the user mentions "load the whole PDF", "bring the PDF into context", "read the entire PDF", or when partial extraction/grepping would miss important context. This is the preferred method for PDF text extraction over page-by-page or grep approaches.

1,899838

nano-banana-pro

garg-aayush

Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.

1,438791