🌰 Hazelnut

A beautiful terminal-based file organizer
inspired by Hazel

Watch folders and automatically organize files with flexible rules — all from your terminal with a gorgeous TUI.

brew install ricardodantas/tap/hazelnut
cargo install hazelnut-cli
hazelnut
Hazelnut TUI dashboard

Features

📁

Watch Folders

Monitor directories for new and changed files in real-time. Set up multiple watch locations with different rules.

🎯

Flexible Rules

Create powerful rules with conditions based on file name, type, size, age, and more using glob patterns or regex.

Smart Actions

Move, copy, rename, archive, delete, or run custom scripts on matched files. Chain actions together.

🖥️

Beautiful TUI

Manage rules and monitor activity through an intuitive terminal interface with 15 gorgeous themes.

🔧

Background Daemon

The daemon runs quietly in the background, processing files automatically as they appear.

📝

TOML Config

Human-readable TOML configuration that's easy to version control and share with your team.

Example Rules

📸 Organize Screenshots

[[rule]]
name = "Screenshots"

[rule.condition]
name_matches = "Screenshot*.png"

[rule.action]
type = "move"
destination = "~/Pictures/Screenshots"

🗑️ Clean Old Downloads

[[rule]]
name = "Clean old downloads"

[rule.condition]
age_days_greater_than = 30

[rule.action]
type = "trash"

📄 Sort PDFs

[[rule]]
name = "Move PDFs"

[rule.condition]
extension = "pdf"

[rule.action]
type = "move"
destination = "~/Documents/PDFs"

15 Beautiful Themes

Customize your experience with gorgeous color schemes including Dracula, Nord, Tokyo Night, and more.

Theme picker showing available themes

Quick Start

1

Install

brew install ricardodantas/tap/hazelnut

or cargo install hazelnut-cli

2

Start the Daemon

hazelnutd start
3

Launch the TUI

hazelnut