Understanding External Event Sheets in the context of FSMs

I am making an enemy AI with a finite state machine. I want to place later several instances of the enemy into the scene. The enemies should operate according to the state machine but still “act” independently.

I need to simplify a bit from my actual project, but my setup is at the moment generally that I have an external event sheet “EnemyFSMManager”. This manager loads the sub state, say EnemyFSMIdle, EnemyFSMAttack, … etc. The manager sets the enemy initially to idle, and then has exit-conditions to the various sub states.

In my scene events I call the EnemyFSMManager “for each instance” of the enemy. However - the enemies are not acting independently. For example if I come too close to an enemy, attack for all of them might be triggered. With several sub states things get messy pretty quickly and sometimes it is hard to tell what is going on even.

What is the way to set up the calls for the external event sheets? Would I need to include “for each instance” conditions to all FSM state sheets also or even to all exit conditions?

Thank you!