# ๐Ÿ“ Filesystem Management Advanced filesystem operations for AI agents. Comprehensive file and directory operations with intelligent filtering, searching, and batch processing capabilities. [![Version](https://img.shields.io/badge/version-1.0.0-blue)](https://clawdhub.com/unknown/clawdbot-filesystem) [![License](https://img.shields.io/badge/license-MIT-green)](LICENSE) [![Node.js](https://img.shields.io/badge/node-%3E%3D14.0.0-brightgreen)](https://nodejs.org/) ## ๐Ÿš€ Features ### ๐Ÿ“‹ **Smart File Listing** - **Advanced Filtering** - Filter by file types, patterns, size, and date - **Recursive Traversal** - Deep directory scanning with depth control - **Rich Formatting** - Table, tree, and JSON output formats - **Sort Options** - By name, size, date, or type ### ๐Ÿ” **Powerful Search** - **Pattern Matching** - Glob patterns and regex support - **Content Search** - Full-text search within files - **Multi-criteria** - Combine filename and content searches - **Context Display** - Show matching lines with context ### ๐Ÿ”„ **Batch Operations** - **Safe Copying** - Pattern-based file copying with validation - **Dry Run Mode** - Preview operations before execution - **Progress Tracking** - Real-time operation progress - **Error Handling** - Graceful failure recovery ### ๐ŸŒณ **Directory Analysis** - **Tree Visualization** - ASCII tree structure display - **Statistics** - File counts, size distribution, type analysis - **Space Analysis** - Identify large files and directories - **Performance Metrics** - Operation timing and optimization ## ๐Ÿ“ฆ Installation ### Via ClawdHub (Recommended) ```bash clawdhub install filesystem ``` ### Manual Installation ```bash # Clone the skill git clone https://github.com/gtrusler/clawdbot-filesystem.git cd clawdbot-filesystem # Make executable chmod +x filesystem # Optional: Install globally npm install -g . ``` ## ๐Ÿ› ๏ธ Usage ### Basic Commands ```bash # List files in current directory filesystem list # List with details and filtering filesystem list --path ./src --recursive --filter "*.js" --details # Search for content filesystem search --pattern "TODO" --path ./src --content # Copy files safely filesystem copy --pattern "*.log" --to ./backup/ --dry-run # Show directory tree filesystem tree --path ./ --depth 3 # Analyze directory filesystem analyze --path ./logs --stats --largest 10 ``` ### Advanced Examples #### Development Workflow ```bash # Find all JavaScript files in project filesystem list --path ./src --recursive --filter "*.js" --sort size # Search for TODO comments with context filesystem search --pattern "TODO|FIXME|HACK" --content --context 3 # Copy all configuration files filesystem copy --pattern "*.config.*" --to ./backup/configs/ --preserve # Analyze project structure filesystem tree --depth 2 --size ``` #### System Administration ```bash # Find large log files filesystem analyze --path /var/log --sizes --largest 15 # Search for error patterns in logs filesystem search --pattern "ERROR|FATAL" --path /var/log --content --include "*.log" # List recent files filesystem list --path /tmp --sort date --details # Clean analysis before deletion filesystem list --path /tmp --filter "*.tmp" --details ``` ## โš™๏ธ Configuration The skill uses a `config.json` file for default settings: ```json { "defaultPath": "./", "maxDepth": 10, "excludePatterns": ["node_modules", ".git", ".DS_Store"], "outputFormat": "table", "colorOutput": true, "performance": { "maxFileSize": 52428800, "maxFiles": 10000 }, "safety": { "requireConfirmation": true, "preventSystemPaths": true } } ``` ## ๐Ÿ“– Command Reference ### `filesystem list` List files and directories with advanced filtering. | Option | Description | Default | |--------|-------------|---------| | `--path, -p` | Target directory | Current directory | | `--recursive, -r` | Include subdirectories | false | | `--filter, -f` | Filter by pattern | `*` | | `--details, -d` | Show file details | false | | `--sort, -s` | Sort by field | name | | `--format` | Output format | table | ### `filesystem search` Search files by name patterns or content. | Option | Description | Default | |--------|-------------|---------| | `--pattern` | Search pattern | Required | | `--path, -p` | Search directory | Current directory | | `--content, -c` | Search file contents | false | | `--context` | Context lines | 2 | | `--include` | Include patterns | All files | | `--exclude` | Exclude patterns | None | ### `filesystem copy` Batch copy files with pattern matching. | Option | Description | Default | |--------|-------------|---------| | `--pattern` | Source pattern | `*` | | `--to` | Destination directory | Required | | `--dry-run` | Preview only | false | | `--overwrite` | Allow overwrites | false | | `--preserve` | Preserve timestamps | false | ### `filesystem tree` Display directory structure as a tree. | Option | Description | Default | |--------|-------------|---------| | `--path, -p` | Root directory | Current directory | | `--depth, -d` | Maximum depth | 3 | | `--dirs-only` | Show directories only | false | | `--size` | Show file sizes | false | | `--no-color` | Disable colors | false | ### `filesystem analyze` Analyze directory structure and statistics. | Option | Description | Default | |--------|-------------|---------| | `--path, -p` | Target directory | Current directory | | `--stats` | Show statistics | true | | `--types` | Analyze file types | false | | `--sizes` | Size distribution | false | | `--largest` | Show N largest files | 10 | ## ๐Ÿ›ก๏ธ Safety Features - **Path Validation** - Prevents directory traversal attacks - **Permission Checks** - Verifies access before operations - **Dry Run Mode** - Preview destructive operations - **Protected Paths** - Blocks system directory access - **Size Limits** - Prevents processing huge files - **Timeout Protection** - Prevents infinite operations ## ๐Ÿ”ง Integration ### With Other Clawdbot Skills ```bash # Use with security skill security validate-command "filesystem list --path /etc" # Pipe to analysis tools filesystem list --format json | jq '.[] | select(.size > 1000000)' # Integration with Git workflows filesystem list --filter "*.js" --format json | git-analyze-changes ``` ### Automation Examples ```bash # Daily log analysis filesystem analyze --path /var/log --stats --largest 5 # Code quality checks filesystem search --pattern "TODO|FIXME" --content --path ./src # Backup preparation filesystem copy --pattern "*.config*" --to ./backup/$(date +%Y%m%d)/ ``` ## ๐Ÿงช Testing Test the installation: ```bash # Basic functionality filesystem help filesystem list --path . --details # Search capabilities echo "TODO: Test this function" > test.txt filesystem search --pattern "TODO" --content # Tree visualization filesystem tree --depth 2 --size # Analysis features filesystem analyze --stats --types ``` ## ๐Ÿ› Troubleshooting ### Common Issues **Permission Denied** ```bash # Check file permissions ls -la filesystem chmod +x filesystem ``` **Large Directory Performance** ```bash # Use filtering to narrow scope filesystem list --filter "*.log" --exclude "node_modules/*" # Limit depth for tree operations filesystem tree --depth 2 ``` **Memory Issues with Large Files** ```bash # Files larger than 50MB are skipped by default # Check current limits node -e "console.log(require('./config.json').performance)" ``` ## ๐Ÿ“ˆ Performance Tips - Use `--filter` to narrow file scope - Set appropriate `--depth` limits for tree operations - Enable exclusion patterns for common build directories - Use `--dry-run` first for batch operations - Monitor output with `--stats` for large directories ## ๐Ÿค Contributing 1. **Report Issues** - Submit bugs and feature requests 2. **Add Patterns** - Contribute common file patterns 3. **Performance** - Submit optimization improvements 4. **Documentation** - Help improve examples and guides ## ๐Ÿ“„ License MIT License - Free for personal and commercial use. See [LICENSE](LICENSE) file for details. ## ๐Ÿ”— Links - **ClawdHub** - [clawdhub.com/unknown/clawdbot-filesystem](https://clawdhub.com/unknown/clawdbot-filesystem) - **Issues** - [GitHub Issues](https://github.com/gtrusler/clawdbot-filesystem/issues) - **Documentation** - [Clawdbot Docs](https://docs.clawd.bot) ## ๐Ÿ“ข Updates & Community **Stay informed about the latest Clawdbot skills and filesystem tools:** - ๐Ÿฆ **Follow [@LexpertAI](https://x.com/LexpertAI)** on X for skill updates and releases - ๐Ÿ› ๏ธ **New filesystem features** and enhancements - ๐Ÿ“‹ **Best practices** for file management automation - ๐Ÿ’ก **Tips and tricks** for productivity workflows Get early access to new skills and improvements by following @LexpertAI for: - **Skill announcements** and new releases - **Performance optimizations** and feature updates - **Integration examples** and workflow automation - **Community discussions** on productivity tools --- **Built with โค๏ธ for the Clawdbot community**