What Tag Cool Actually Does
Tag Cool is a lightweight tagging utility that lets you attach metadata labels to files directly from the command line or through a minimal GUI. It stores those tags as extended attributes on the filesystem, which means they persist across reboots and survive most file operations. The whole thing runs locally on your machine — no cloud sync, no account creation, no background daemons eating RAM. I picked it up because I was tired of renaming files with underscores and dashes just to remember what they were. A lot of people start with the assumption that you need a database or some heavier tool to do this kind of thing. Tag Cool skips all that. It writes tags directly onto the file's xattr namespace and calls it done.
How Tag Cool Works in Practice
The install is straightforward. If you're on macOS you can grab it from the GitHub releases page and drop the binary into /usr/local/bin, or use Homebrew if you prefer that route. On Linux it works if your filesystem supports extended attributes, which means ext4, XFS, and btrfs are all fine. NTFS on Windows is a different story — it doesn't play well with xattrs by default, so don't bother trying to force it there unless you're running WSL2 with a Linux filesystem. Once it's installed, the basic workflow looks like this: Tag a file by running tagcool add myfile.pdf design final. That attaches two tags, design and final, to the file. You can chain them out — there's no limit on how many you throw at a single file. To search later, you run something like tagcool search design and it returns every file on your system with that label attached.
The real convenience kicks in when you combine tagcool with your shell. I added a small function to my .zshrc that lets me type "tc find" anywhere and get a live list of tagged files. It takes about three seconds for a full system scan on my 256GB SSD, but only because I have roughly 40,000 files spread across several directories. A typical home user with maybe 5,000 files will see that drop to under a second.
Get the Full Details

Common Pitfalls and Where It Falls Apart
Here's the part most tutorial-style writeups leave out. Tag Cool is useful until it isn't. The main failure mode I hit was when I tried syncing tagged files across devices using a cloud storage service. Tags stored as xattrs don't travel with the file through standard cloud sync. If you move a file to Google Drive or Dropbox, the tags vanish from the synced copy. They're still attached to the local version, but the remote side only sees the filename and nothing else. I ran into this when I was sharing a folder of marked-up images with a colleague. I'd tagged everything with review-pending and client-name so we could sort through the batch. He got the files, saw nothing. Took me about twenty minutes to explain that the tags lived in metadata the cloud service wasn't carrying over. The workaround I ended up using was a hybrid approach — keep the Tag Cool tags on my local copy for personal organization, then use a separate convention like prefixing filenames with a short code before sharing. It's not elegant, but it gets the job done. Another edge case worth mentioning. If you rename a file using a GUI file manager instead of the terminal, some systems strip extended attributes during the rename operation. I lost about two hundred tags on a project directory just because I bulk-reordered some files in Finder. Command-line renames preserve the xattrs fine, but GUI tools vary. The rule of thumb is simple: if you're tagging something, manage it through the terminal or at least verify the tags survived after any rename operation.
Alternatives When Tag Cool Doesn't Fit
There are other options if you outgrow this tool. Everything Mac, which has built-in tagging support, handles tags at the OS level so they survive cloud sync and app switching. But that locks you to macOS. For cross-platform work, I've used a SQLite-backed tag manager called Tagify. It's heavier but more flexible, and it keeps its own database so tags don't depend on filesystem capabilities. Tag Cool itself is fast, simple, and completely free. It's just not going to solve every problem you have with file organization. If you need tags to sync across devices or work with a team, you'll need a different strategy. But for solo use on a local machine where the filesystem supports extended attributes, it does exactly what it promises without asking for much in return.