Skip to content

Changelog

All notable changes to NeatCLI will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased


0.7.3 - 2026-02-20

Added

  • Show All Files Flag: --show-all-files flag for organize command to display all files in preview instead of truncating after 5 (contributed by @djanatyn in #1)

[0.7.0] - 2025-12-31

Added

  • Primary Artist Extraction: Music files now organize by primary artist only, ignoring featuring artists
  • "Artist feat. Guest" → organized under "Artist"
  • Supports: feat., ft., featuring, &, commas, (with ...)

Changed

  • Duplicate Detection Optimization: 8x faster duplicate detection
  • Switched from SHA256 to xxHash3 (60x faster hashing)
  • Added memory-mapped file access for large files
  • Quick hash first 4KB for fast grouping (O(n) instead of O(n²))
  • Removed unused sha2 dependency

[0.6.0] - 2025-12-29

Added

  • PDF Content Extraction: --content flag now works with PDF files (built-in, no external tools needed)
  • Uses pdf-extract crate with optional pdf feature (enabled by default)
  • Disable with: cargo install neatcli --no-default-features

0.5.0 - 2025-12-26

Added

  • Shell Hooks: post_action field in config rules to execute shell commands after file operations
  • Variable substitution: {file}, {dest}, {name}, {ext}, {dir}
  • Content Filtering: --content flag to filter files by text content (TXT, MD, JSON, etc.)
  • TUI Conflict Resolver: Interactive conflict resolution view with keyboard shortcuts
  • s skip, o overwrite, r rename, k keep both, ←/→ navigate

0.4.0 - 2025-12-23

Added

  • Template Variables: Custom destination paths with --template flag
  • Variables: {year}, {month}, {day}, {category}, {filename}, {ext}
  • EXIF variables: {camera}, {taken.year}, {taken.month}
  • Audio variables: {artist}, {album}
  • Preset templates: photos, music, by-type, by-date
  • Profile System: Save and reuse organize command configurations
  • profile save, profile list, profile run, profile delete, profile show
  • Quick Actions: Shortcut commands for common workflows
  • quick downloads, quick desktop, quick photos, quick music, quick cleanup

Changed

  • Improved documentation with MkDocs Material theme
  • Added comprehensive filter options (startswith, endswith, contains, regex, mime)

0.3.0 - 2025-12-18

Added

  • Interactive TUI: Visual file browser with ratatui
  • Similar Images Detection: Perceptual hashing to find visually similar images
  • Conflict Strategies: skip, overwrite, rename, ask, deduplicate, backup
  • Watch Mode: Auto-organize new files as they appear
  • Shell Completions: Bash, Zsh, Fish, PowerShell support

0.2.0 - 2025-12-15

Added

  • EXIF Metadata: Organize photos by camera model or date taken
  • Audio Metadata: Organize music by artist or album (ID3 tags)
  • Size Filters: --min-size, --max-size options
  • Date Filters: --after, --before options
  • Ignore Patterns: .neatignore file and -I flag
  • Export Formats: JSON and CSV export for duplicates
  • Trash Support: --trash flag for safe deletion

0.1.0 - 2025-12-12

Added

  • Initial release
  • Organize by Type: Sort files into Images, Documents, Videos, Audio, Archives, Code, Data
  • Organize by Date: Create YYYY/MM folder structure
  • Organize by Extension: Group files by extension
  • Duplicate Detection: SHA256 content hashing
  • Clean Command: Remove old files
  • Stats Command: Show directory statistics
  • Undo/History: Rollback operations
  • Safe by Default: Dry-run mode for preview