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
$ 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:
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
- lrcmuxSource: beetbox/beets