# Htagcli - a command line audio tagger

**URL:** <https://discourse.haskell.org/t/htagcli-a-command-line-audio-tagger/13280>\
**Category:** Show and Tell\
**Created:** [November 16, 2025, 7:22pm UTC](https://discourse.haskell.org/t/htagcli-a-command-line-audio-tagger/13280 "2025-11-16T19:22:47Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![jecaro](https://sea2.discourse-cdn.com/flex002/user_avatar/discourse.haskell.org/jecaro/32/3836_2.png) [@jecaro](https://discourse.haskell.org/u/jecaro)\
**Post date:** [November 16, 2025, 7:22pm UTC](https://discourse.haskell.org/t/htagcli-a-command-line-audio-tagger/13280/1 "2025-11-16T19:22:47Z")

</div>

Here is a new audio tagger I’ve written:

[https://github.com/jecaro/htagcli/](https://github.com/jecaro/htagcli/)

Over the years, I’ve used countless tools to manage my music library. I’ve finally settled with a mix of [beets](https://github.com/beetbox/beets), [bliss](https://www.blisshq.com/), and [eyeD3](https://github.com/nicfit/eyeD3) (+ some additional tools and scripts to normalize the audio). But I have never really been happy with these.

So, I finally took the time to write my own tool, which behaves exactly as I like. That makes me super happy, and it can be useful for you too 🙂

The main difference with other CLI tools is that `htagcli` can perform various checks on your music collection. It’s inspired by bliss in this regard. One can check, for example, if every audio file has a set of mandatory tags (year, genre …), if the filename matches a specific pattern, if all albums have a cover, etc…
