ferraus tags

Read and write metadata tags and cover art

Synopsis

ferraus tags <input> [options] [-o <output>]

What it does

With no options, prints the file's tags and embedded pictures. --set key=value (repeatable), --remove key, --art cover.jpg, and --clear modify tags; writing needs --in-place (keeps <file>.bak) or -o for a tagged copy. Keys: title, artist, album, album_artist, date, year, genre, track, track_total, disc, disc_total, comment, composer, bpm, copyright, encoder, lyrics, label, publisher, isrc, conductor, lyricist, language, key, mood.

Examples

Show title, artist, album and embedded art

ferraus tags song.mp3

Edit tags in place (song.flac.bak is kept)

ferraus tags song.flac --set title="Blue Hour" --set artist=Nadia --in-place

Write a copy with cover art

ferraus tags song.m4a --art cover.jpg -o tagged.m4a

Options

FlagTypeDefaultMeaning
--settext—Set a tag: key=value (repeatable); an empty value removes the key Repeatable.
--removetext—Remove a tag key (repeatable) Repeatable.
--artpath—Embed a JPEG/PNG image as the front cover
--clearflag—Remove all existing tags first [default: off]

Global options

Every command also accepts the global options (-o, --json, --dry-run, --overwrite, --progress, ...). See Global options.

Exit codes

CodeMeaning
0Success
1Processing failed
2Usage or parameter error
3Input missing or unreadable
4Unsupported format or codec
8Cancelled
70Internal error (bug)

Common mistakes

  • Forgetting that outputs are never overwritten: pass --overwrite or a new -o path when re-running.

For models

  • MCP tool: ferraus_tags
  • Schema: ferraus schema tags
  • Pipeline: { op: tags, args: { ... } } (flag names with _ instead of -)
  • fx stage: no
{"command": "tags", "defaults": {}}