I'd rather they give us a programmable AI. It's been done in other games. Though to some extent you don't want the AI too good and players sharing AI scripts that all feel the same.

What I'd do, to avoid exploits, and to a certain extent the game client actually seems to support this idea, is run the AI off the client on a separate thread, so the AI reacts with the same speed the player does, however make the server treat AI as "ticks". So while a player may be able to spam DPS at sub-second intervals, the AI only operates on the same half second ticks the server allows it to. So all AI commands are processed as one tick, and can not take advantage of spell/skill speed buffs.

Then allow the player to attach the AI itself to a macro, eg /aiplayer Nanasomi myarcherai to have the ai player switch to client controlled ai. For flavor you could also make the AI player do thought/speech bubbles and emotes as well. For the Chocobo, Faries, Carbuncles and Egi's you would have the AI have separate "if in party" logic to which the healer pets could be told to prioritize certain party members including themselves. For attacker and tank pets, you could specify a "if distance from player" to cancel combat.

And of course, because we don't want PS4 players left out, the AI scripts should be shareable within-the-game by allowing other players in the party to do "<player name> wishes to train your <pet name>", and the permission on the AI will allow the player to either permanently share it (eg like an open source thing) with "share freely", or "share only while in this party", or "share only while on friend list" , or "share once (will remain available to player until deleted, but can't be shared with others.)" . AI scripts could also be shared on the lodestone.

This would also open the doors to "scripted" AI events that players can write for use inside their houses. So Retainers could do more than just stand around.