Execute Befehle laufen anders also warte ich zeig dir ein beispiel /execute as @e[type=bee] run say Test in deinem Fall also "/execute as @a[tag=!has_compass] run give @s minecraft:compass 1"
Ps: ich habe die drei Wellen : ~ ~ ~ entfernt weiß nicht ob man die brauch hoffe funktioniert jetzt