# Respect existing tags on import but run plugins

**URL:** <https://discourse.beets.io/t/respect-existing-tags-on-import-but-run-plugins/1936>\
**Category:** Help\
**Created:** [November 15, 2021, 8:37pm UTC](https://discourse.beets.io/t/respect-existing-tags-on-import-but-run-plugins/1936 "2021-11-15T20:37:39Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![cpelz](https://avatars.discourse-cdn.com/v4/letter/c/db5fbb/32.png) [@cpelz](https://discourse.beets.io/u/cpelz)\
**Post date:** [November 15, 2021, 8:37pm UTC](https://discourse.beets.io/t/respect-existing-tags-on-import-but-run-plugins/1936/1 "2021-11-15T20:37:39Z")

</div>

I want beets to:

- respect my file’s existing tags,
- move and organize them based on those tags and
- run the fetchart, embedart and extrafiles plugins.

My config file is below.

When I set “autotag: no” beets organizes my files based on the existing tags, but doesn’t run the plugins (to the best of my knowledge).

When I set “autotag: yes” beets organizes my files based on the new tags, not the existing ones, but processes the art and moves the extra files as expected.

Am I missing something obvious or is there a config.yaml or bash shell workaround to achieve this? Thanks!

_ **config.yaml** _  
directory: /volume1/Media/Beets/TEST/Lossless  
library: /volume1/Media/Beets/musiclibrary-TEST.db  
art\_filename: %if{$albumartist,$albumartist,$artist} - $album

import:  
write: no  
copy: yes  
autotag: yes  
group\_albums: yes #Use tags to group albums.

paths:  
default: $albumartist/$album%aunique{}/%if{$disc,$disc-}$track $title

plugins:  
fetchart  
embedart  
info

fetchart:  
cover\_names: cover front folder  
minwidth: 300  
maxwidth: 1500  
sources: google  
google\_key: \*\*\*\*\*  
google\_engine: \*\*\*\*\*

embedart:  
ifempty: yes

---

<div class="post-metadata">

**Author:** ![adrian](https://yyz1.discourse-cdn.com/flex029/user_avatar/discourse.beets.io/adrian/32/4_2.png) [@adrian](https://discourse.beets.io/u/adrian)\
**Post date:** [November 16, 2021, 1:23pm UTC](https://discourse.beets.io/t/respect-existing-tags-on-import-but-run-plugins/1936/2 "2021-11-16T13:23:56Z")

</div>

No, I don’t think you’re missing anything—that is indeed how it works! If you want `autotag: no`, you might consider running those plugins separately. Most (all?) such plugins have a command you can run after importing, such as `beet fetchart`.

---

<div class="post-metadata">

**Author:** ![cpelz](https://avatars.discourse-cdn.com/v4/letter/c/db5fbb/32.png) [@cpelz](https://discourse.beets.io/u/cpelz)\
**Post date:** [November 16, 2021, 8:27pm UTC](https://discourse.beets.io/t/respect-existing-tags-on-import-but-run-plugins/1936/3 "2021-11-16T20:27:07Z")

</div>

Thanks for your help Adrian!

Looks like beets-extrafiles is one plugin that can’t run from the command line…I was hoping to avoid manually moving Artwork directories.

So, import has nothing like zero’s keep\_fields whitelist?

PS: Would it be possible to reject all matches and accept the tags asis?  
Something like this:

* * *

autotag: yes  
match:  
strong\_rec\_thresh: 1.0  
default\_action: asis

* * *

I also see [this](https://github.com/mattbarnicle/beetsplug) has a selectivetagging function. I’ll try to get that to work.
