Dirule – a CLI for organizing files and enforcing naming rules

Wait 5 sec.

Hey everyone! I've been working on a little project called Dirule, an open-source CLI for organizing files and keeping naming conventions consistent. I started it because I wanted an easier way to organize personal folders, like Downloads, while also being able to enforce stricter naming rules in coding projects without writing a bunch of separate scripts. Here's what Dirule currently supports: Sorting files by type or custom categories, along with different naming styles. Reusable global presets and project-specific TOML rules. Previewing changes, detecting conflicts, and undoing operations. Checking naming conventions in CI, including GitHub Actions support. Optional LSP integration to update source references when renaming files. One thing worth mentioning is that LSP-backed previews can take a bit longer because the configured language server needs to initialize. I've also added an experimental dirule ask feature for interacting with the tool using natural language. Dirule is currently at v0.5.0, and there's still plenty I'd like to improve. I'd love to hear what you think, whether it's feedback, feature suggestions, or things I could do differently. GitHub: https://github.com/Slyverr/dirule AI disclosure: I used AI assistance while developing Dirule, including help with implementing and refining some features. Similar tools: rename and mmv already handle batch renaming and moving files. Dirule takes a more rule-based approach, combining personal file organization, reusable presets, project naming checks, CI integration, and undo in one tool. https://reddit.com/link/1xculbj/video/o6yef9f213xh1/player   submitted by   /u/Slyverr_ [link]   [comments]