If you're making the bot from scratch, this should be easy to do. Just see if the light is mounted to the player, if it is then using some vector math it's pretty easy.
%ppos = getWords(%player.getPosition(), 0, 1) SPC "0"; //get the player's position, make z = 0 because we're not interested
%bpos = getWords(%bot.getPosition(), 0, 1) SPC "0"; //get the bot's position
%vec = VectorNormalize(VectorSub(%bpos, %ppos)); //get the vector between the player and bot plus make it as small as it can be so we only have direction
%disp = VectorScale(%vec, 8); //Scale the vector 8 units so the bot will stay 8 units away, this is the displacement the bot will be at
%pos = VectorAdd(%ppos, %disp); //get the new position by adding the original and displacement
%bot.setMoveDestination(%pos); //make the bot go there
Pop that into a schedule and activate it when the player has a light, it should work but I haven't tested it.