#7019·beets

beet modify uses an object string representation instead of the user-defined value when using the 'select' option

Author: elysio2Created Sep 11, 2026Updated Sep 11, 2026

Hi! New to beets. Tried renaming a bunch of album artists at once, the search results were too broad however. Using the 'select' option after to narrow down the albums resulted in a stringified object being used as the album artist name. I can't re-do this command since I accepted the changes thinking it was just a bug on the UI side, but it did in fact change the artist in the data as well.

Problem

bash
$ beet modify -a 'Ye' albumartist='Kanye West'

Led to this problem:

[...]
Ye - 808s & Heartbreak
  albumartist: Ye -> Kanye West

[...]
Really modify, move and write tags? (Yes/no/select) select

[...]
Ye - 808s & Heartbreak
  albumartist: Ye -> ModifyOperation(operator=None, value='Kanye West')

Setup

  • OS: macOS Tahoe
  • Python version: 3.14.7
  • beets version: 2.13.1
  • Turning off plugins made problem go away (yes/no): no

My configuration (output of beet config) is:

yaml
directory: ~/music-beets
# --------------- Main ---------------

library: ~/beets-data/musiclibrary.db

import:
    move: yes

# --------------- Plugins ---------------

plugins:
- musicbrainz
- chroma
- autobpm
- fromfilename
- lyrics
disabled_plugins: []
musicbrainz:
    search_limit: 5
    data_source_mismatch_penalty: 0.5
    search_query_ascii: no
    genres: no
    genres_tag: genre
    external_ids:
        discogs: no
        bandcamp: no
        spotify: no
        deezer: no
        tidal: no
    extra_tags: []
    aliases_as_credits: no
chroma:
    search_limit: 5
    data_source_mismatch_penalty: 0.5
    auto: yes
autobpm:
    auto: yes
    force: no
    quiet: no
    beat_track_kwargs: {}
lyrics:
    auto: yes
    auto_ignore:
    translate:
        api_key: REDACTED
        from_languages: []
        to_language:
    dist_thresh: 0.11
    google_API_key: REDACTED
    google_engine_ID: REDACTED
    genius_api_key: REDACTED
    lrcmux:
        url: https://api.lrcmux.dev
        sources: []
    fallback:
    force: no
    keep_synced: no
    local: no
    print: no
    rest_directory:
    synced: no
    sources:
    - lrclib
    - google
    - genius
    - lrcmux